radiant 0.9.0.rc2 → 0.9.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of radiant might be problematic. Click here for more details.
- data/CHANGELOG +18 -6
- data/CONTRIBUTORS +7 -1
- data/INSTALL +0 -5
- data/README +21 -0
- data/app/controllers/admin/layouts_controller.rb +1 -0
- data/app/controllers/admin/preferences_controller.rb +4 -3
- data/app/controllers/admin/resource_controller.rb +62 -8
- data/app/controllers/admin/snippets_controller.rb +1 -0
- data/app/controllers/admin/users_controller.rb +1 -0
- data/app/controllers/application_controller.rb +0 -17
- data/app/controllers/site_controller.rb +6 -4
- data/app/helpers/application_helper.rb +19 -0
- data/app/models/standard_tags.rb +212 -18
- data/app/models/status.rb +1 -1
- data/app/models/user.rb +2 -2
- data/app/views/admin/extensions/index.html.haml +1 -1
- data/app/views/admin/layouts/_form.html.haml +4 -4
- data/app/views/admin/layouts/index.html.haml +2 -2
- data/app/views/admin/page_parts/_page_part.html.haml +2 -2
- data/app/views/admin/pages/_fields.html.haml +5 -5
- data/app/views/admin/preferences/edit.html.haml +3 -3
- data/app/views/admin/snippets/_form.html.haml +5 -5
- data/app/views/admin/snippets/index.html.haml +3 -3
- data/app/views/admin/users/_form.html.haml +3 -4
- data/app/views/admin/users/index.html.haml +2 -1
- data/app/views/layouts/application.html.haml +1 -1
- data/config/environment.rb +2 -2
- data/config/environments/cucumber.rb +3 -3
- data/config/locales/en.yml +10 -10
- data/config/locales/en_available_tags.yml +80 -1
- data/db/migrate/20081203140407_add_indexes.rb +10 -10
- data/db/schema.rb +1 -1
- data/features/admin/resource_pagination.feature +27 -0
- data/features/admin/user_preferences.feature +17 -0
- data/features/step_definitions/admin/pagination_steps.rb +46 -0
- data/features/step_definitions/web_steps.rb +13 -3
- data/features/support/env.rb +7 -3
- data/features/support/paths.rb +1 -1
- data/lib/generators/instance/templates/instance_environment.rb +2 -2
- data/lib/generators/language_extension/templates/lang.yml +6 -6
- data/lib/plugins/active_record_extensions/lib/active_record_extensions.rb +0 -29
- data/lib/radiant.rb +3 -3
- data/lib/radiant/admin_ui.rb +1 -1
- data/lib/radiant/extension/script.rb +20 -5
- data/lib/radiant/extension_loader.rb +1 -1
- data/lib/radiant/initializer.rb +9 -3
- data/lib/radiant/pagination/controller.rb +34 -0
- data/lib/radiant/pagination/link_renderer.rb +7 -4
- data/lib/task_support.rb +6 -1
- data/lib/tasks/cucumber.rake +1 -1
- data/lib/tasks/framework.rake +1 -2
- data/lib/tasks/release.rake +11 -3
- data/lib/tasks/rspec.rake +1 -1
- data/public/images/admin/shadow.png +0 -0
- data/public/images/admin/shadow_grey.png +0 -0
- data/public/javascripts/admin/application.js +4 -1
- data/public/javascripts/admin/cookie.js +2 -2
- data/public/javascripts/admin/validationerror.js +18 -0
- data/public/stylesheets/admin/main.css +110 -37
- data/public/stylesheets/sass/admin/main.sass +3 -2
- data/public/stylesheets/sass/admin/modules/_grid.sass +56 -0
- data/public/stylesheets/sass/admin/partials/_actions.sass +74 -34
- data/public/stylesheets/sass/admin/partials/{_depreciated.sass → _deprecated.sass} +1 -1
- data/public/stylesheets/sass/admin/partials/_popup.sass +1 -1
- data/public/stylesheets/sass/admin/partials/_validations.sass +21 -0
- data/spec/controllers/admin/paginated_controller_spec.rb +26 -0
- data/spec/controllers/admin/preferences_controller_spec.rb +14 -0
- data/spec/controllers/application_controller_spec.rb +1 -11
- data/spec/controllers/site_controller_spec.rb +9 -0
- data/spec/datasets/users_dataset.rb +1 -1
- data/spec/generators/instance_generator_spec.rb +1 -1
- data/spec/helpers/application_helper_spec.rb +38 -0
- data/spec/lib/radiant/extension/script_spec.rb +5 -1
- data/spec/lib/radiant/initializer_spec.rb +7 -0
- data/spec/lib/radiant_spec.rb +1 -1
- data/spec/lib/task_support_spec.rb +14 -0
- data/spec/matchers/render_matcher.rb +14 -1
- data/spec/models/layout_spec.rb +3 -3
- data/spec/models/page_part_spec.rb +3 -3
- data/spec/models/page_spec.rb +8 -9
- data/spec/models/snippet_spec.rb +3 -3
- data/spec/models/standard_tags_spec.rb +99 -5
- data/spec/models/user_spec.rb +11 -11
- data/vendor/extensions/archive/app/models/archive_finder.rb +5 -0
- data/vendor/extensions/french_language_pack/config/locales/fr.yml +31 -25
- data/vendor/extensions/german_language_pack/README +2 -1
- data/vendor/extensions/german_language_pack/config/locales/de.yml +47 -45
- data/vendor/extensions/german_language_pack/config/locales/de_available_tags.yml +375 -304
- data/vendor/extensions/german_language_pack/german_language_pack_extension.rb +2 -2
- data/vendor/extensions/markdown_filter/README +1 -1
- data/vendor/extensions/markdown_filter/lib/markdown_filter.rb +4 -4
- data/vendor/extensions/markdown_filter/lib/markdown_tags.rb +0 -15
- data/vendor/extensions/markdown_filter/markdown_filter_extension.rb +1 -10
- data/vendor/extensions/markdown_filter/spec/models/markdown_filter_spec.rb +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/CONTRIBUTERS +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/ChangeLog +1332 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/README +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/Rakefile +97 -38
- data/vendor/extensions/markdown_filter/vendor/kramdown/VERSION +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/generate_data.rb +6 -4
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-jruby-1.4.0.dat +7 -7
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.8.6.dat +7 -7
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.8.7.dat +7 -7
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.9.1p243.dat +7 -7
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.9.2dev.dat +7 -7
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/testing.sh +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/bin/kramdown +11 -4
- data/vendor/extensions/markdown_filter/vendor/kramdown/data/kramdown/document.html +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/data/kramdown/document.latex +43 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/default.less.css +510 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/default.template +26 -33
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/documentation.page +72 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/index.page +21 -49
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/installation.page +6 -6
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/links.markdown +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/news.page +3 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/quickref.page +140 -127
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/syntax.page +501 -431
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/tests.page +3 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown.rb +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/compatibility.rb +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter.rb +8 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/base.rb +40 -4
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/html.rb +99 -27
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/latex.rb +57 -18
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/document.rb +32 -13
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/error.rb +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/options.rb +34 -14
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser.rb +9 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/base.rb +95 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/html.rb +387 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown.rb +74 -65
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/abbreviation.rb +65 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/attribute_list.rb +3 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/autolink.rb +8 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/blank_line.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/blockquote.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/codeblock.rb +3 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/codespan.rb +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/emphasis.rb +4 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/eob.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/escaped_chars.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/extension.rb +47 -55
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/footnote.rb +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/header.rb +3 -18
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/horizontal_rule.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/html.rb +69 -149
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/html_entity.rb +4 -4
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/line_break.rb +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/link.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/list.rb +12 -9
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/math.rb +53 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/paragraph.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/smart_quotes.rb +5 -4
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/table.rb +4 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/typographic_symbol.rb +7 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/version.rb +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/man/man1/kramdown.1 +222 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/run_tests.rb +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/test_files.rb +68 -7
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_id_prefix.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_id_prefix.options +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_id_prefix.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/item_ial.html +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/item_ial.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/mixed.html +9 -3
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/special_cases.html +49 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/special_cases.text +29 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/comment.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/comment.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/tables.html +2 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/code.html +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/code.text +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/comment.html +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/comment.text +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/emphasis.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/emphasis.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/entity.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/entity.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/header.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/header.options +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/header.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_dl.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_dl.text +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ol.html +15 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ol.text +17 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ul.html +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ul.text +22 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/paragraph.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/paragraph.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_normal.html +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_normal.text +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_simple.html +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_simple.text +14 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/typography.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/typography.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.html +3 -5
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.text +0 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.html +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.text +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/simple.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/simple.text +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/comment.text +5 -5
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/ignored.html +0 -2
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/ignored.text +3 -6
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/nomarkdown.text +4 -4
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options.html +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options.text +5 -6
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options2.text +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options3.text +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/15_math/normal.html +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/15_math/normal.text +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/errors.html +1 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/nesting.html +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/nesting.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/definitions.latex +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.latex +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/markers.latex +32 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/invalid.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/invalid.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev.text +15 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev_defs.html +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev_defs.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/autolinks/url_links.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/autolinks/url_links.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/comment.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/comment.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/ignored.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/ignored.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/nomarkdown.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/nomarkdown.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/options.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/options.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/ial/simple.html +2 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/ial/simple.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/math/normal.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/math/normal.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/typography.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/typography.text +3 -0
- data/vendor/extensions/smarty_pants_filter/README +1 -0
- data/vendor/extensions/smarty_pants_filter/Rakefile +136 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/lib/smarty_pants_filter.rb +0 -0
- data/vendor/extensions/smarty_pants_filter/lib/smarty_pants_tags.rb +18 -0
- data/vendor/extensions/smarty_pants_filter/lib/tasks/smarty_pants_filter_extension_tasks.rake +28 -0
- data/vendor/extensions/smarty_pants_filter/smarty_pants_filter_extension.rb +18 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/smartypants.html +0 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/spec/models/smarty_pants_filter_spec.rb +0 -0
- data/vendor/extensions/smarty_pants_filter/spec/spec.opts +6 -0
- data/vendor/extensions/smarty_pants_filter/spec/spec_helper.rb +36 -0
- data/vendor/extensions/smarty_pants_filter/test/test_helper.rb +19 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/test/unit/smarty_pants_filter_test.rb +0 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/vendor/rubypants/README +0 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/vendor/rubypants/Rakefile +0 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/vendor/rubypants/install.rb +0 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/vendor/rubypants/rubypants.rb +0 -0
- data/vendor/extensions/{markdown_filter → smarty_pants_filter}/vendor/rubypants/test_rubypants.rb +0 -0
- data/vendor/plugins/haml/Rakefile +84 -52
- data/vendor/plugins/haml/VERSION +1 -1
- data/vendor/plugins/haml/doc-src/HAML_CHANGELOG.md +77 -0
- data/vendor/plugins/haml/doc-src/SASS_CHANGELOG.md +60 -0
- data/vendor/plugins/haml/extra/haml-mode.el +15 -12
- data/vendor/plugins/haml/extra/sass-mode.el +2 -2
- data/vendor/plugins/haml/haml.gemspec +16 -7
- data/vendor/plugins/haml/init.rb +3 -1
- data/vendor/plugins/haml/lib/haml.rb +1 -0
- data/vendor/plugins/haml/lib/haml/filters.rb +14 -2
- data/vendor/plugins/haml/lib/haml/helpers.rb +34 -14
- data/vendor/plugins/haml/lib/haml/helpers/action_view_extensions.rb +6 -4
- data/vendor/plugins/haml/lib/haml/helpers/action_view_mods.rb +74 -34
- data/vendor/plugins/haml/lib/haml/helpers/xss_mods.rb +37 -8
- data/vendor/plugins/haml/lib/haml/html.rb +1 -1
- data/vendor/plugins/haml/lib/haml/precompiler.rb +3 -2
- data/vendor/plugins/haml/lib/haml/railtie.rb +18 -0
- data/vendor/plugins/haml/lib/haml/template.rb +15 -4
- data/vendor/plugins/haml/lib/haml/template/plugin.rb +37 -2
- data/vendor/plugins/haml/lib/haml/util.rb +56 -2
- data/vendor/plugins/haml/lib/haml/version.rb +29 -14
- data/vendor/plugins/haml/lib/sass/files.rb +10 -2
- data/vendor/plugins/haml/lib/sass/plugin.rb +7 -2
- data/vendor/plugins/haml/lib/sass/plugin/rack.rb +2 -2
- data/vendor/plugins/haml/lib/sass/plugin/rails.rb +2 -1
- data/vendor/plugins/haml/lib/sass/script/number.rb +2 -2
- data/vendor/plugins/haml/lib/sass/tree/if_node.rb +1 -0
- data/vendor/plugins/haml/lib/sass/tree/rule_node.rb +9 -1
- data/vendor/plugins/haml/test/haml/engine_test.rb +24 -2
- data/vendor/plugins/haml/test/haml/helper_test.rb +60 -9
- data/vendor/plugins/haml/test/haml/template_test.rb +80 -3
- data/vendor/plugins/haml/test/haml/templates/helpers.haml +26 -0
- data/vendor/plugins/haml/test/haml/templates/partial_layout.haml +6 -2
- data/vendor/plugins/haml/test/sass/engine_test.rb +6 -1
- data/vendor/plugins/haml/test/test_helper.rb +16 -1
- data/vendor/radius/LICENSE +19 -0
- data/vendor/radius/QUICKSTART.rdoc +7 -7
- data/vendor/radius/README.rdoc +9 -25
- data/vendor/radius/Rakefile +4 -27
- data/vendor/radius/VERSION +1 -0
- data/vendor/radius/lib/radius/parser.rb +4 -4
- data/vendor/radius/lib/radius/parser/scan.rb +371 -940
- data/vendor/radius/lib/radius/parser/scan.rl +2 -1
- data/vendor/radius/lib/radius/version.rb +5 -11
- data/vendor/radius/radius.gemspec +55 -22
- data/vendor/radius/tasks/jeweler.rake +21 -0
- data/vendor/radius/tasks/rdoc.rake +13 -0
- data/vendor/radius/tasks/test.rake +7 -0
- data/vendor/radius/test/parser_test.rb +5 -0
- data/vendor/radius/test/test_helper.rb +1 -0
- data/vendor/rails/actionmailer/CHANGELOG +18 -0
- data/vendor/rails/actionmailer/MIT-LICENSE +1 -1
- data/vendor/rails/actionmailer/Rakefile +1 -1
- data/vendor/rails/actionmailer/lib/action_mailer.rb +1 -1
- data/vendor/rails/actionmailer/lib/action_mailer/base.rb +2 -2
- data/vendor/rails/actionmailer/lib/action_mailer/quoting.rb +1 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail.rb +1 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/Makefile +18 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/address.rb +4 -38
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/attachments.rb +65 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/base64.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/compat.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/config.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/core_extensions.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/encode.rb +9 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/header.rb +4 -2
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/index.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/interface.rb +33 -1
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/loader.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/mail.rb +1 -1
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/mailbox.rb +3 -2
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/main.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/mbox.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/net.rb +3 -1
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/obsolete.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/parser.rb +1060 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/parser.y +416 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/port.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/quoting.rb +47 -1
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/require_arch.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/scanner.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/scanner_r.rb +2 -1
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/stringio.rb +0 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/utils.rb +50 -25
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/COPYING +504 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/README +12 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet.rb +67 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/big5freq.rb +927 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/big5prober.rb +42 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/chardistribution.rb +238 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/charsetgroupprober.rb +112 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/charsetprober.rb +75 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/codingstatemachine.rb +64 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/constants.rb +42 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/escprober.rb +89 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/escsm.rb +244 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/eucjpprober.rb +88 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/euckrfreq.rb +596 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/euckrprober.rb +42 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/euctwfreq.rb +430 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/euctwprober.rb +42 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/gb2312freq.rb +474 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/gb2312prober.rb +42 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/hebrewprober.rb +289 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/jisfreq.rb +570 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/jpcntx.rb +229 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/langbulgarianmodel.rb +229 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/langcyrillicmodel.rb +330 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/langgreekmodel.rb +227 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/langhebrewmodel.rb +202 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/langhungarianmodel.rb +226 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/langthaimodel.rb +201 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/latin1prober.rb +147 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/mbcharsetprober.rb +89 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/mbcsgroupprober.rb +45 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/mbcssm.rb +542 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/sbcharsetprober.rb +124 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/sbcsgroupprober.rb +56 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/sjisprober.rb +88 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/universaldetector.rb +168 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.7/tmail/vendor/rchardet-1.3/lib/rchardet/utf8prober.rb +87 -0
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.2.3 → tmail-1.2.7}/tmail/version.rb +1 -1
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail.rb +2 -2
- data/vendor/rails/actionmailer/lib/action_mailer/version.rb +1 -1
- data/vendor/rails/actionmailer/test/abstract_unit.rb +4 -4
- data/vendor/rails/actionmailer/test/fixtures/helpers/example_helper.rb +1 -1
- data/vendor/rails/actionmailer/test/mail_service_test.rb +66 -2
- data/vendor/rails/actionmailer/test/quoting_test.rb +10 -4
- data/vendor/rails/actionpack/CHANGELOG +55 -0
- data/vendor/rails/actionpack/MIT-LICENSE +1 -1
- data/vendor/rails/actionpack/README +7 -7
- data/vendor/rails/actionpack/Rakefile +2 -2
- data/vendor/rails/actionpack/lib/action_controller.rb +2 -2
- data/vendor/rails/actionpack/lib/action_controller/assertions/response_assertions.rb +18 -9
- data/vendor/rails/actionpack/lib/action_controller/base.rb +14 -14
- data/vendor/rails/actionpack/lib/action_controller/caching/fragments.rb +6 -6
- data/vendor/rails/actionpack/lib/action_controller/cookies.rb +96 -0
- data/vendor/rails/actionpack/lib/action_controller/failsafe.rb +1 -0
- data/vendor/rails/actionpack/lib/action_controller/flash.rb +42 -0
- data/vendor/rails/actionpack/lib/action_controller/integration.rb +5 -1
- data/vendor/rails/actionpack/lib/action_controller/polymorphic_routes.rb +1 -1
- data/vendor/rails/actionpack/lib/action_controller/rack_lint_patch.rb +1 -1
- data/vendor/rails/actionpack/lib/action_controller/rescue.rb +2 -2
- data/vendor/rails/actionpack/lib/action_controller/response.rb +4 -7
- data/vendor/rails/actionpack/lib/action_controller/routing/route_set.rb +1 -0
- data/vendor/rails/actionpack/lib/action_controller/session/abstract_store.rb +6 -0
- data/vendor/rails/actionpack/lib/action_controller/session/cookie_store.rb +6 -0
- data/vendor/rails/actionpack/lib/action_controller/templates/rescues/_trace.erb +2 -2
- data/vendor/rails/actionpack/lib/action_controller/url_rewriter.rb +4 -1
- data/vendor/rails/actionpack/lib/action_pack.rb +1 -1
- data/vendor/rails/actionpack/lib/action_pack/version.rb +1 -1
- data/vendor/rails/actionpack/lib/action_view.rb +3 -3
- data/vendor/rails/actionpack/lib/action_view/helpers/active_record_helper.rb +11 -11
- data/vendor/rails/actionpack/lib/action_view/helpers/asset_tag_helper.rb +2 -2
- data/vendor/rails/actionpack/lib/action_view/helpers/capture_helper.rb +2 -2
- data/vendor/rails/actionpack/lib/action_view/helpers/date_helper.rb +12 -11
- data/vendor/rails/actionpack/lib/action_view/helpers/debug_helper.rb +2 -2
- data/vendor/rails/actionpack/lib/action_view/helpers/form_helper.rb +49 -12
- data/vendor/rails/actionpack/lib/action_view/helpers/form_options_helper.rb +3 -4
- data/vendor/rails/actionpack/lib/action_view/helpers/form_tag_helper.rb +7 -4
- data/vendor/rails/actionpack/lib/action_view/helpers/javascript_helper.rb +1 -1
- data/vendor/rails/actionpack/lib/action_view/helpers/number_helper.rb +1 -1
- data/vendor/rails/actionpack/lib/action_view/helpers/prototype_helper.rb +2 -2
- data/vendor/rails/actionpack/lib/action_view/helpers/raw_output_helper.rb +2 -2
- data/vendor/rails/actionpack/lib/action_view/helpers/sanitize_helper.rb +2 -10
- data/vendor/rails/actionpack/lib/action_view/helpers/tag_helper.rb +6 -5
- data/vendor/rails/actionpack/lib/action_view/helpers/text_helper.rb +5 -5
- data/vendor/rails/actionpack/lib/action_view/helpers/translation_helper.rb +37 -9
- data/vendor/rails/actionpack/lib/action_view/helpers/url_helper.rb +9 -11
- data/vendor/rails/actionpack/lib/action_view/partials.rb +2 -1
- data/vendor/rails/actionpack/lib/action_view/paths.rb +8 -0
- data/vendor/rails/actionpack/lib/action_view/renderable.rb +16 -2
- data/vendor/rails/actionpack/lib/action_view/template_handlers/erb.rb +7 -4
- data/vendor/rails/actionpack/lib/action_view/test_case.rb +1 -1
- data/vendor/rails/actionpack/test/abstract_unit.rb +8 -8
- data/vendor/rails/actionpack/test/active_record_unit.rb +1 -1
- data/vendor/rails/actionpack/test/controller/action_pack_assertions_test.rb +3 -1
- data/vendor/rails/actionpack/test/controller/assert_select_test.rb +6 -5
- data/vendor/rails/actionpack/test/controller/caching_test.rb +16 -2
- data/vendor/rails/actionpack/test/controller/capture_test.rb +1 -1
- data/vendor/rails/actionpack/test/controller/cookie_test.rb +37 -1
- data/vendor/rails/actionpack/test/controller/flash_test.rb +28 -1
- data/vendor/rails/actionpack/test/controller/helper_test.rb +1 -1
- data/vendor/rails/actionpack/test/controller/integration_test.rb +0 -1
- data/vendor/rails/actionpack/test/controller/localized_templates_test.rb +24 -0
- data/vendor/rails/actionpack/test/controller/output_escaping_test.rb +19 -0
- data/vendor/rails/actionpack/test/controller/rack_test.rb +1 -4
- data/vendor/rails/actionpack/test/controller/render_test.rb +11 -2
- data/vendor/rails/actionpack/test/controller/rescue_test.rb +8 -2
- data/vendor/rails/actionpack/test/controller/routing_test.rb +1 -0
- data/vendor/rails/actionpack/test/controller/send_file_test.rb +1 -1
- data/vendor/rails/actionpack/test/controller/session/cookie_store_test.rb +2 -2
- data/vendor/rails/actionpack/test/controller/url_rewriter_test.rb +10 -6
- data/vendor/rails/actionpack/test/fixtures/localized/hello_world.de.html +1 -0
- data/vendor/rails/actionpack/test/fixtures/localized/hello_world.en.html +1 -0
- data/vendor/rails/actionpack/test/fixtures/test/_customer_counter_with_as.erb +1 -0
- data/vendor/rails/actionpack/test/fixtures/test/_utf8_partial.html.erb +1 -0
- data/vendor/rails/actionpack/test/fixtures/test/_utf8_partial_magic.html.erb +2 -0
- data/vendor/rails/actionpack/test/fixtures/test/array_translation.erb +1 -0
- data/vendor/rails/actionpack/test/fixtures/test/capturing.erb +2 -2
- data/vendor/rails/actionpack/test/fixtures/test/scoped_array_translation.erb +1 -0
- data/vendor/rails/actionpack/test/fixtures/test/translation.erb +1 -0
- data/vendor/rails/actionpack/test/fixtures/test/utf8.html.erb +4 -2
- data/vendor/rails/actionpack/test/fixtures/test/utf8_magic.html.erb +5 -0
- data/vendor/rails/actionpack/test/fixtures/test/utf8_magic_with_bare_partial.html.erb +5 -0
- data/vendor/rails/actionpack/test/template/active_record_helper_i18n_test.rb +9 -2
- data/vendor/rails/actionpack/test/template/asset_tag_helper_test.rb +0 -1
- data/vendor/rails/actionpack/test/template/date_helper_test.rb +118 -0
- data/vendor/rails/actionpack/test/template/erb_util_test.rb +12 -0
- data/vendor/rails/actionpack/test/template/form_helper_test.rb +57 -3
- data/vendor/rails/actionpack/test/template/form_tag_helper_test.rb +21 -9
- data/vendor/rails/actionpack/test/template/render_test.rb +47 -8
- data/vendor/rails/actionpack/test/template/text_helper_test.rb +26 -1
- data/vendor/rails/actionpack/test/template/translation_helper_test.rb +72 -9
- data/vendor/rails/actionpack/test/template/url_helper_test.rb +20 -1
- data/vendor/rails/actionpack/test/view/test_case_test.rb +2 -2
- data/vendor/rails/activerecord/CHANGELOG +43 -0
- data/vendor/rails/activerecord/Rakefile +1 -1
- data/vendor/rails/activerecord/examples/performance.sql +85 -0
- data/vendor/rails/activerecord/lib/active_record.rb +1 -2
- data/vendor/rails/activerecord/lib/active_record/association_preload.rb +9 -2
- data/vendor/rails/activerecord/lib/active_record/associations.rb +48 -38
- data/vendor/rails/activerecord/lib/active_record/associations/association_collection.rb +15 -11
- data/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb +16 -6
- data/vendor/rails/activerecord/lib/active_record/associations/belongs_to_association.rb +11 -1
- data/vendor/rails/activerecord/lib/active_record/associations/belongs_to_polymorphic_association.rb +34 -10
- data/vendor/rails/activerecord/lib/active_record/associations/has_many_association.rb +5 -0
- data/vendor/rails/activerecord/lib/active_record/associations/has_many_through_association.rb +5 -5
- data/vendor/rails/activerecord/lib/active_record/associations/has_one_association.rb +10 -1
- data/vendor/rails/activerecord/lib/active_record/attribute_methods.rb +5 -1
- data/vendor/rails/activerecord/lib/active_record/autosave_association.rb +66 -35
- data/vendor/rails/activerecord/lib/active_record/base.rb +77 -36
- data/vendor/rails/activerecord/lib/active_record/batches.rb +13 -9
- data/vendor/rails/activerecord/lib/active_record/calculations.rb +6 -3
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb +3 -3
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_limits.rb +57 -0
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb +1 -1
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb +3 -7
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb +1 -1
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb +64 -10
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb +2 -0
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb +31 -1
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb +31 -66
- data/vendor/rails/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb +5 -5
- data/vendor/rails/activerecord/lib/active_record/dirty.rb +2 -2
- data/vendor/rails/activerecord/lib/active_record/fixtures.rb +1 -0
- data/vendor/rails/activerecord/lib/active_record/locking/optimistic.rb +34 -1
- data/vendor/rails/activerecord/lib/active_record/migration.rb +5 -0
- data/vendor/rails/activerecord/lib/active_record/nested_attributes.rb +64 -52
- data/vendor/rails/activerecord/lib/active_record/reflection.rb +66 -1
- data/vendor/rails/activerecord/lib/active_record/schema.rb +5 -1
- data/vendor/rails/activerecord/lib/active_record/schema_dumper.rb +3 -0
- data/vendor/rails/activerecord/lib/active_record/serializers/json_serializer.rb +1 -1
- data/vendor/rails/activerecord/lib/active_record/validations.rb +13 -1
- data/vendor/rails/activerecord/lib/active_record/version.rb +1 -1
- data/vendor/rails/activerecord/test/cases/active_schema_test_mysql.rb +22 -0
- data/vendor/rails/activerecord/test/cases/associations/belongs_to_associations_test.rb +13 -0
- data/vendor/rails/activerecord/test/cases/associations/eager_load_nested_include_test.rb +8 -7
- data/vendor/rails/activerecord/test/cases/associations/eager_test.rb +7 -1
- data/vendor/rails/activerecord/test/cases/associations/has_many_associations_test.rb +26 -0
- data/vendor/rails/activerecord/test/cases/associations/inverse_associations_test.rb +566 -0
- data/vendor/rails/activerecord/test/cases/associations_test.rb +10 -0
- data/vendor/rails/activerecord/test/cases/autosave_association_test.rb +86 -10
- data/vendor/rails/activerecord/test/cases/base_test.rb +29 -0
- data/vendor/rails/activerecord/test/cases/batches_test.rb +20 -0
- data/vendor/rails/activerecord/test/cases/calculations_test.rb +2 -3
- data/vendor/rails/activerecord/test/cases/encoding_test.rb +6 -0
- data/vendor/rails/activerecord/test/cases/finder_test.rb +19 -3
- data/vendor/rails/activerecord/test/cases/fixtures_test.rb +5 -0
- data/vendor/rails/activerecord/test/cases/json_serialization_test.rb +14 -0
- data/vendor/rails/activerecord/test/cases/locking_test.rb +48 -3
- data/vendor/rails/activerecord/test/cases/migration_test.rb +115 -0
- data/vendor/rails/activerecord/test/cases/modules_test.rb +28 -0
- data/vendor/rails/activerecord/test/cases/named_scope_test.rb +1 -1
- data/vendor/rails/activerecord/test/cases/nested_attributes_test.rb +239 -7
- data/vendor/rails/activerecord/test/cases/query_cache_test.rb +7 -1
- data/vendor/rails/activerecord/test/cases/reflection_test.rb +47 -7
- data/vendor/rails/activerecord/test/cases/schema_test_postgresql.rb +2 -2
- data/vendor/rails/activerecord/test/cases/validations_i18n_test.rb +6 -36
- data/vendor/rails/activerecord/test/cases/validations_test.rb +33 -1
- data/vendor/rails/activerecord/test/cases/yaml_serialization_test.rb +11 -0
- data/vendor/rails/activerecord/test/fixtures/faces.yml +11 -0
- data/vendor/rails/{pkg/rails-3.0.pre.gem → activerecord/test/fixtures/fixture_database.sqlite} +0 -0
- data/vendor/rails/activerecord/test/fixtures/fixture_database.sqlite3 +0 -0
- data/vendor/rails/activerecord/test/fixtures/fixture_database_2.sqlite +0 -0
- data/vendor/rails/activerecord/test/fixtures/fixture_database_2.sqlite3 +0 -0
- data/vendor/rails/activerecord/test/fixtures/interests.yml +33 -0
- data/vendor/rails/activerecord/test/fixtures/men.yml +5 -0
- data/vendor/rails/activerecord/test/fixtures/zines.yml +5 -0
- data/vendor/rails/activerecord/test/models/author.rb +3 -0
- data/vendor/rails/activerecord/test/models/bird.rb +6 -0
- data/vendor/rails/activerecord/test/models/company_in_module.rb +17 -0
- data/vendor/rails/activerecord/test/models/event_author.rb +5 -0
- data/vendor/rails/activerecord/test/models/face.rb +7 -0
- data/vendor/rails/activerecord/test/models/interest.rb +5 -0
- data/vendor/rails/activerecord/test/models/invoice.rb +4 -0
- data/vendor/rails/activerecord/test/models/line_item.rb +3 -0
- data/vendor/rails/activerecord/test/models/man.rb +9 -0
- data/vendor/rails/activerecord/test/models/parrot.rb +6 -0
- data/vendor/rails/activerecord/test/models/pirate.rb +10 -0
- data/vendor/rails/activerecord/test/models/ship.rb +10 -1
- data/vendor/rails/activerecord/test/models/ship_part.rb +3 -1
- data/vendor/rails/activerecord/test/models/zine.rb +3 -0
- data/vendor/rails/activerecord/test/schema/schema.rb +41 -0
- data/vendor/rails/activeresource/CHANGELOG +15 -0
- data/vendor/rails/activeresource/Rakefile +1 -1
- data/vendor/rails/activeresource/lib/active_resource/base.rb +11 -2
- data/vendor/rails/activeresource/lib/active_resource/http_mock.rb +2 -2
- data/vendor/rails/activeresource/lib/active_resource/validations.rb +3 -3
- data/vendor/rails/activeresource/lib/active_resource/version.rb +1 -1
- data/vendor/rails/activeresource/test/abstract_unit.rb +2 -2
- data/vendor/rails/activeresource/test/base_errors_test.rb +13 -0
- data/vendor/rails/activeresource/test/base_test.rb +49 -0
- data/vendor/rails/activeresource/test/debug.log +80350 -0
- data/vendor/rails/activesupport/CHANGELOG +37 -0
- data/vendor/rails/activesupport/lib/active_support.rb +1 -0
- data/vendor/rails/activesupport/lib/active_support/buffered_logger.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/cache/memory_store.rb +7 -1
- data/vendor/rails/activesupport/lib/active_support/cache/strategy/local_cache.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/array/conversions.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/array/random_access.rb +11 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb +35 -28
- data/vendor/rails/activesupport/lib/active_support/core_ext/date/calculations.rb +14 -4
- data/vendor/rails/activesupport/lib/active_support/core_ext/date_time/conversions.rb +14 -3
- data/vendor/rails/activesupport/lib/active_support/core_ext/enumerable.rb +6 -0
- data/vendor/rails/activesupport/lib/active_support/core_ext/file/atomic.rb +2 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/kernel/reporting.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/module/aliasing.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/module/attr_accessor_with_default.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/module/attribute_accessors.rb +33 -26
- data/vendor/rails/activesupport/lib/active_support/core_ext/module/synchronization.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/numeric/conversions.rb +2 -2
- data/vendor/rails/activesupport/lib/active_support/core_ext/object.rb +1 -0
- data/vendor/rails/activesupport/lib/active_support/core_ext/object/blank.rb +20 -2
- data/vendor/rails/activesupport/lib/active_support/core_ext/object/metaclass.rb +6 -5
- data/vendor/rails/activesupport/lib/active_support/core_ext/object/singleton_class.rb +13 -0
- data/vendor/rails/activesupport/lib/active_support/core_ext/string.rb +0 -1
- data/vendor/rails/activesupport/lib/active_support/core_ext/string/output_safety.rb +108 -44
- data/vendor/rails/activesupport/lib/active_support/core_ext/string/starts_ends_with.rb +2 -4
- data/vendor/rails/activesupport/lib/active_support/core_ext/time.rb +8 -4
- data/vendor/rails/activesupport/lib/active_support/core_ext/time/calculations.rb +12 -3
- data/vendor/rails/activesupport/lib/active_support/deprecation.rb +3 -2
- data/vendor/rails/activesupport/lib/active_support/inflections.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/inflector.rb +5 -2
- data/vendor/rails/activesupport/lib/active_support/json/backends/yajl.rb +40 -0
- data/vendor/rails/activesupport/lib/active_support/json/backends/yaml.rb +10 -7
- data/vendor/rails/activesupport/lib/active_support/json/decoding.rb +16 -1
- data/vendor/rails/activesupport/lib/active_support/json/encoding.rb +11 -2
- data/vendor/rails/activesupport/lib/active_support/memoizable.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/multibyte/unicode_database.rb +2 -2
- data/vendor/rails/activesupport/lib/active_support/multibyte/utils.rb +6 -7
- data/vendor/rails/activesupport/lib/active_support/ordered_hash.rb +28 -11
- data/vendor/rails/activesupport/lib/active_support/testing/assertions.rb +14 -0
- data/vendor/rails/activesupport/lib/active_support/values/time_zone.rb +84 -76
- data/vendor/rails/activesupport/lib/active_support/vendor.rb +10 -2
- data/vendor/rails/activesupport/lib/active_support/vendor/{i18n-0.1.3/lib → i18n-0.3.7}/i18n.rb +175 -39
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend.rb +19 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/active_record.rb +66 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/active_record/missing.rb +67 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/active_record/store_procs.rb +38 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/active_record/translation.rb +88 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/base.rb +266 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/cache.rb +76 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/cascade.rb +58 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/chain.rb +75 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/cldr.rb +100 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/fallbacks.rb +69 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/fast.rb +69 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/gettext.rb +75 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/helpers.rb +68 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/interpolation_compiler.rb +119 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/links.rb +34 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/metadata.rb +73 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/pluralization.rb +57 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/backend/simple.rb +22 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/core_ext/hash/except.rb +8 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/core_ext/hash/slice.rb +8 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/core_ext/object/meta_class.rb +5 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/core_ext/string/interpolate.rb +99 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/{i18n-0.1.3/lib → i18n-0.3.7}/i18n/exceptions.rb +15 -7
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/gettext.rb +25 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/gettext/po_parser.rb +329 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/helpers.rb +5 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/helpers/gettext.rb +65 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/locale.rb +6 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/locale/fallbacks.rb +98 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/locale/tag.rb +28 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/locale/tag/parents.rb +24 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/locale/tag/rfc4646.rb +76 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/locale/tag/simple.rb +41 -0
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.3.7/i18n/version.rb +3 -0
- data/vendor/rails/activesupport/lib/active_support/version.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/whiny_nil.rb +1 -1
- data/vendor/rails/activesupport/lib/active_support/xml_mini/libxml.rb +23 -83
- data/vendor/rails/activesupport/lib/active_support/xml_mini/libxmlsax.rb +74 -0
- data/vendor/rails/activesupport/lib/active_support/xml_mini/nokogiri.rb +25 -22
- data/vendor/rails/activesupport/lib/active_support/xml_mini/nokogirisax.rb +73 -0
- data/vendor/rails/railties/CHANGELOG +18 -2
- data/vendor/rails/railties/MIT-LICENSE +1 -1
- data/vendor/rails/railties/Rakefile +5 -5
- data/vendor/rails/railties/bin/rails +6 -5
- data/vendor/rails/railties/builtin/rails_info/rails/info.rb +1 -1
- data/vendor/rails/railties/configs/initializers/cookie_verification_secret.rb +7 -0
- data/vendor/rails/railties/guides/source/getting_started.textile +2 -2
- data/vendor/rails/railties/lib/commands/dbconsole.rb +1 -1
- data/vendor/rails/railties/lib/commands/runner.rb +1 -1
- data/vendor/rails/railties/lib/dispatcher.rb +1 -1
- data/vendor/rails/railties/lib/rails/gem_dependency.rb +11 -4
- data/vendor/rails/railties/lib/rails/vendor_gem_source_index.rb +1 -1
- data/vendor/rails/railties/lib/rails/version.rb +1 -1
- data/vendor/rails/railties/lib/rails_generator.rb +5 -2
- data/vendor/rails/railties/lib/rails_generator/generated_attribute.rb +7 -6
- data/vendor/rails/railties/lib/rails_generator/generators/applications/app/app_generator.rb +3 -0
- data/vendor/rails/railties/lib/rails_generator/generators/components/model/templates/fixtures.yml +9 -5
- data/vendor/rails/railties/lib/rails_generator/generators/components/plugin/plugin_generator.rb +2 -2
- data/vendor/rails/railties/lib/rails_generator/generators/components/scaffold/templates/controller.rb +2 -4
- data/vendor/rails/railties/lib/rails_generator/generators/components/scaffold/templates/layout.html.erb +1 -1
- data/vendor/rails/railties/lib/tasks/databases.rake +14 -14
- data/vendor/rails/railties/lib/tasks/framework.rake +4 -1
- data/vendor/rails/railties/lib/tasks/rails.rb +6 -1
- metadata +276 -321
- data/config/initializers/pagination.rb +0 -1
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/default.css +0 -293
- data/vendor/plugins/haml/FAQ +0 -138
- data/vendor/plugins/haml/README.rdoc +0 -319
- data/vendor/plugins/haml/REVISION +0 -1
- data/vendor/plugins/haml/lib/sass/constant.rb +0 -216
- data/vendor/plugins/haml/lib/sass/constant/color.rb +0 -101
- data/vendor/plugins/haml/lib/sass/constant/literal.rb +0 -54
- data/vendor/plugins/haml/lib/sass/constant/nil.rb +0 -9
- data/vendor/plugins/haml/lib/sass/constant/number.rb +0 -87
- data/vendor/plugins/haml/lib/sass/constant/operation.rb +0 -30
- data/vendor/plugins/haml/lib/sass/constant/string.rb +0 -22
- data/vendor/plugins/haml/lib/sass/tree/attr_node.rb +0 -57
- data/vendor/plugins/haml/lib/sass/tree/value_node.rb +0 -20
- data/vendor/plugins/haml/test/sass/results/constants.css +0 -16
- data/vendor/plugins/haml/test/sass/templates/constants.sass +0 -100
- data/vendor/radius/Manifest.txt +0 -21
- data/vendor/rails/Rakefile +0 -81
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/attachments.rb +0 -46
- data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/parser.rb +0 -1478
- data/vendor/rails/actionmailer/pkg/actionmailer-3.0.pre.gem +0 -0
- data/vendor/rails/actionpack/lib/action_view/erb/util.rb +0 -44
- data/vendor/rails/actionpack/lib/action_view/safe_buffer.rb +0 -28
- data/vendor/rails/actionpack/pkg/actionpack-3.0.pre.gem +0 -0
- data/vendor/rails/actionpack/test/view/safe_buffer_test.rb +0 -36
- data/vendor/rails/activemodel/CHANGES +0 -12
- data/vendor/rails/activemodel/README +0 -21
- data/vendor/rails/activemodel/Rakefile +0 -24
- data/vendor/rails/activemodel/lib/active_model.rb +0 -5
- data/vendor/rails/activemodel/lib/active_model/base.rb +0 -8
- data/vendor/rails/activemodel/lib/active_model/callbacks.rb +0 -7
- data/vendor/rails/activemodel/lib/active_model/core.rb +0 -7
- data/vendor/rails/activemodel/lib/active_model/deprecated_error_methods.rb +0 -38
- data/vendor/rails/activemodel/lib/active_model/errors.rb +0 -82
- data/vendor/rails/activemodel/lib/active_model/observing.rb +0 -98
- data/vendor/rails/activemodel/lib/active_model/state_machine.rb +0 -68
- data/vendor/rails/activemodel/lib/active_model/state_machine/event.rb +0 -64
- data/vendor/rails/activemodel/lib/active_model/state_machine/machine.rb +0 -78
- data/vendor/rails/activemodel/lib/active_model/state_machine/state.rb +0 -47
- data/vendor/rails/activemodel/lib/active_model/state_machine/state_transition.rb +0 -40
- data/vendor/rails/activemodel/lib/active_model/validations.rb +0 -126
- data/vendor/rails/activemodel/lib/active_model/validations/acceptance.rb +0 -45
- data/vendor/rails/activemodel/lib/active_model/validations/associated.rb +0 -46
- data/vendor/rails/activemodel/lib/active_model/validations/confirmation.rb +0 -44
- data/vendor/rails/activemodel/lib/active_model/validations/exclusion.rb +0 -37
- data/vendor/rails/activemodel/lib/active_model/validations/format.rb +0 -39
- data/vendor/rails/activemodel/lib/active_model/validations/inclusion.rb +0 -37
- data/vendor/rails/activemodel/lib/active_model/validations/length.rb +0 -95
- data/vendor/rails/activemodel/lib/active_model/validations/numericality.rb +0 -80
- data/vendor/rails/activemodel/lib/active_model/validations/presence.rb +0 -42
- data/vendor/rails/activemodel/lib/active_model/validations/uniqueness.rb +0 -104
- data/vendor/rails/activemodel/pkg/activemodel-3.0.pre.gem +0 -0
- data/vendor/rails/activemodel/test/observing_test.rb +0 -121
- data/vendor/rails/activemodel/test/state_machine/event_test.rb +0 -49
- data/vendor/rails/activemodel/test/state_machine/machine_test.rb +0 -43
- data/vendor/rails/activemodel/test/state_machine/state_test.rb +0 -72
- data/vendor/rails/activemodel/test/state_machine/state_transition_test.rb +0 -84
- data/vendor/rails/activemodel/test/state_machine_test.rb +0 -312
- data/vendor/rails/activemodel/test/test_helper.rb +0 -21
- data/vendor/rails/activerecord/MIT-LICENSE +0 -20
- data/vendor/rails/activerecord/lib/active_record/i18n_interpolation_deprecation.rb +0 -26
- data/vendor/rails/activerecord/pkg/activerecord-3.0.pre.gem +0 -0
- data/vendor/rails/activeresource/MIT-LICENSE +0 -20
- data/vendor/rails/activeresource/pkg/activeresource-3.0.pre.gem +0 -0
- data/vendor/rails/activesupport/MIT-LICENSE +0 -20
- data/vendor/rails/activesupport/Rakefile +0 -175
- data/vendor/rails/activesupport/bin/generate_tables +0 -147
- data/vendor/rails/activesupport/install.rb +0 -30
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/MIT-LICENSE +0 -20
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/README.textile +0 -20
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/Rakefile +0 -5
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/i18n.gemspec +0 -27
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/lib/i18n/backend/simple.rb +0 -214
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/test/all.rb +0 -5
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/test/i18n_exceptions_test.rb +0 -99
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/test/i18n_test.rb +0 -124
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/test/locale/en.rb +0 -1
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/test/locale/en.yml +0 -3
- data/vendor/rails/activesupport/lib/active_support/vendor/i18n-0.1.3/test/simple_backend_test.rb +0 -567
- data/vendor/rails/activesupport/pkg/activesupport-3.0.pre.gem +0 -0
- data/vendor/rails/activesupport/test/abstract_unit.rb +0 -36
- data/vendor/rails/activesupport/test/autoloading_fixtures/a/b.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/a/c/d.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/a/c/e/f.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/application.rb +0 -1
- data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder.rb +0 -3
- data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/class_folder_subclass.rb +0 -3
- data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/inline_class.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/nested_class.rb +0 -7
- data/vendor/rails/activesupport/test/autoloading_fixtures/conflict.rb +0 -1
- data/vendor/rails/activesupport/test/autoloading_fixtures/counting_loader.rb +0 -5
- data/vendor/rails/activesupport/test/autoloading_fixtures/cross_site_dependency.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/e.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/inline_class.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/nested_class.rb +0 -4
- data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/nested_sibling.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/module_with_custom_const_missing/a/b.rb +0 -1
- data/vendor/rails/activesupport/test/autoloading_fixtures/multiple_constant_file.rb +0 -2
- data/vendor/rails/activesupport/test/autoloading_fixtures/raises_name_error.rb +0 -3
- data/vendor/rails/activesupport/test/autoloading_fixtures/raises_no_method_error.rb +0 -3
- data/vendor/rails/activesupport/test/buffered_logger_test.rb +0 -146
- data/vendor/rails/activesupport/test/caching_test.rb +0 -348
- data/vendor/rails/activesupport/test/callbacks_test.rb +0 -188
- data/vendor/rails/activesupport/test/clean_backtrace_test.rb +0 -47
- data/vendor/rails/activesupport/test/clean_logger_test.rb +0 -57
- data/vendor/rails/activesupport/test/core_ext/array_ext_test.rb +0 -363
- data/vendor/rails/activesupport/test/core_ext/base64_ext_test.rb +0 -8
- data/vendor/rails/activesupport/test/core_ext/bigdecimal.rb +0 -10
- data/vendor/rails/activesupport/test/core_ext/blank_test.rb +0 -24
- data/vendor/rails/activesupport/test/core_ext/cgi_ext_test.rb +0 -14
- data/vendor/rails/activesupport/test/core_ext/class/attribute_accessor_test.rb +0 -31
- data/vendor/rails/activesupport/test/core_ext/class/class_inheritable_attributes_test.rb +0 -224
- data/vendor/rails/activesupport/test/core_ext/class/delegating_attributes_test.rb +0 -115
- data/vendor/rails/activesupport/test/core_ext/class_test.rb +0 -46
- data/vendor/rails/activesupport/test/core_ext/date_ext_test.rb +0 -278
- data/vendor/rails/activesupport/test/core_ext/date_time_ext_test.rb +0 -359
- data/vendor/rails/activesupport/test/core_ext/duplicable_test.rb +0 -22
- data/vendor/rails/activesupport/test/core_ext/duration_test.rb +0 -121
- data/vendor/rails/activesupport/test/core_ext/enumerable_test.rb +0 -97
- data/vendor/rails/activesupport/test/core_ext/exception_test.rb +0 -68
- data/vendor/rails/activesupport/test/core_ext/file_test.rb +0 -67
- data/vendor/rails/activesupport/test/core_ext/float_ext_test.rb +0 -25
- data/vendor/rails/activesupport/test/core_ext/hash_ext_test.rb +0 -1014
- data/vendor/rails/activesupport/test/core_ext/integer_ext_test.rb +0 -37
- data/vendor/rails/activesupport/test/core_ext/kernel_test.rb +0 -43
- data/vendor/rails/activesupport/test/core_ext/load_error_test.rb +0 -16
- data/vendor/rails/activesupport/test/core_ext/module/attr_accessor_with_default_test.rb +0 -30
- data/vendor/rails/activesupport/test/core_ext/module/attr_internal_test.rb +0 -52
- data/vendor/rails/activesupport/test/core_ext/module/attribute_accessor_test.rb +0 -33
- data/vendor/rails/activesupport/test/core_ext/module/attribute_aliasing_test.rb +0 -58
- data/vendor/rails/activesupport/test/core_ext/module/model_naming_test.rb +0 -27
- data/vendor/rails/activesupport/test/core_ext/module/synchronization_test.rb +0 -85
- data/vendor/rails/activesupport/test/core_ext/module_test.rb +0 -363
- data/vendor/rails/activesupport/test/core_ext/name_error_test.rb +0 -20
- data/vendor/rails/activesupport/test/core_ext/numeric_ext_test.rb +0 -162
- data/vendor/rails/activesupport/test/core_ext/object_and_class_ext_test.rb +0 -282
- data/vendor/rails/activesupport/test/core_ext/object_ext_test.rb +0 -8
- data/vendor/rails/activesupport/test/core_ext/pathname_test.rb +0 -9
- data/vendor/rails/activesupport/test/core_ext/proc_test.rb +0 -11
- data/vendor/rails/activesupport/test/core_ext/range_ext_test.rb +0 -63
- data/vendor/rails/activesupport/test/core_ext/string_ext_test.rb +0 -369
- data/vendor/rails/activesupport/test/core_ext/symbol_test.rb +0 -9
- data/vendor/rails/activesupport/test/core_ext/time_ext_test.rb +0 -744
- data/vendor/rails/activesupport/test/core_ext/time_with_zone_test.rb +0 -845
- data/vendor/rails/activesupport/test/core_ext/uri_ext_test.rb +0 -12
- data/vendor/rails/activesupport/test/dependencies/check_warnings.rb +0 -2
- data/vendor/rails/activesupport/test/dependencies/conflict.rb +0 -1
- data/vendor/rails/activesupport/test/dependencies/cross_site_depender.rb +0 -3
- data/vendor/rails/activesupport/test/dependencies/mutual_one.rb +0 -4
- data/vendor/rails/activesupport/test/dependencies/mutual_two.rb +0 -4
- data/vendor/rails/activesupport/test/dependencies/raises_exception.rb +0 -3
- data/vendor/rails/activesupport/test/dependencies/requires_nonexistent0.rb +0 -1
- data/vendor/rails/activesupport/test/dependencies/requires_nonexistent1.rb +0 -1
- data/vendor/rails/activesupport/test/dependencies/service_one.rb +0 -5
- data/vendor/rails/activesupport/test/dependencies/service_two.rb +0 -2
- data/vendor/rails/activesupport/test/dependencies_test.rb +0 -782
- data/vendor/rails/activesupport/test/deprecation_test.rb +0 -167
- data/vendor/rails/activesupport/test/flush_cache_on_private_memoization_test.rb +0 -43
- data/vendor/rails/activesupport/test/gzip_test.rb +0 -7
- data/vendor/rails/activesupport/test/i18n_test.rb +0 -98
- data/vendor/rails/activesupport/test/inflector_test.rb +0 -298
- data/vendor/rails/activesupport/test/inflector_test_cases.rb +0 -252
- data/vendor/rails/activesupport/test/json/decoding_test.rb +0 -73
- data/vendor/rails/activesupport/test/json/encoding_test.rb +0 -160
- data/vendor/rails/activesupport/test/memoizable_test.rb +0 -247
- data/vendor/rails/activesupport/test/message_encryptor_test.rb +0 -46
- data/vendor/rails/activesupport/test/message_verifier_test.rb +0 -31
- data/vendor/rails/activesupport/test/multibyte_chars_test.rb +0 -606
- data/vendor/rails/activesupport/test/multibyte_conformance.rb +0 -129
- data/vendor/rails/activesupport/test/multibyte_test_helpers.rb +0 -19
- data/vendor/rails/activesupport/test/multibyte_unicode_database_test.rb +0 -22
- data/vendor/rails/activesupport/test/multibyte_utils_test.rb +0 -137
- data/vendor/rails/activesupport/test/option_merger_test.rb +0 -85
- data/vendor/rails/activesupport/test/ordered_hash_test.rb +0 -201
- data/vendor/rails/activesupport/test/ordered_options_test.rb +0 -53
- data/vendor/rails/activesupport/test/rescuable_test.rb +0 -75
- data/vendor/rails/activesupport/test/secure_random_test.rb +0 -19
- data/vendor/rails/activesupport/test/string_inquirer_test.rb +0 -15
- data/vendor/rails/activesupport/test/test_test.rb +0 -148
- data/vendor/rails/activesupport/test/time_zone_test.rb +0 -266
- data/vendor/rails/activesupport/test/whiny_nil_test.rb +0 -50
- data/vendor/rails/activesupport/test/xml_mini/jdom_engine_test.rb +0 -153
- data/vendor/rails/activesupport/test/xml_mini/nokogiri_engine_test.rb +0 -168
- data/vendor/rails/activesupport/test/xml_mini/rexml_engine_test.rb +0 -15
- data/vendor/rails/ci/ci_build.rb +0 -119
- data/vendor/rails/ci/ci_setup_notes.txt +0 -131
- data/vendor/rails/ci/cruise_config.rb +0 -9
- data/vendor/rails/ci/geminstaller.yml +0 -24
- data/vendor/rails/ci/site.css +0 -13
- data/vendor/rails/ci/site_config.rb +0 -72
- data/vendor/rails/doc/template/horo.rb +0 -613
- data/vendor/rails/pushgems.rb +0 -14
- data/vendor/rails/railties/pkg/railties-3.0.pre.gem +0 -0
- data/vendor/rails/railties/test/abstract_unit.rb +0 -27
- data/vendor/rails/railties/test/backtrace_cleaner_test.rb +0 -61
- data/vendor/rails/railties/test/boot_test.rb +0 -178
- data/vendor/rails/railties/test/console_app_test.rb +0 -42
- data/vendor/rails/railties/test/fcgi_dispatcher_test.rb +0 -266
- data/vendor/rails/railties/test/fixtures/about_yml_plugins/bad_about_yml/about.yml +0 -1
- data/vendor/rails/railties/test/fixtures/about_yml_plugins/bad_about_yml/init.rb +0 -1
- data/vendor/rails/railties/test/fixtures/about_yml_plugins/plugin_without_about_yml/init.rb +0 -1
- data/vendor/rails/railties/test/fixtures/eager/zoo.rb +0 -3
- data/vendor/rails/railties/test/fixtures/eager/zoo/reptile_house.rb +0 -2
- data/vendor/rails/railties/test/fixtures/environment_with_constant.rb +0 -1
- data/vendor/rails/railties/test/fixtures/lib/generators/missing_class/missing_class_generator.rb +0 -0
- data/vendor/rails/railties/test/fixtures/lib/generators/working/working_generator.rb +0 -2
- data/vendor/rails/railties/test/fixtures/metal/multiplemetals/app/metal/metal_a.rb +0 -5
- data/vendor/rails/railties/test/fixtures/metal/multiplemetals/app/metal/metal_b.rb +0 -5
- data/vendor/rails/railties/test/fixtures/metal/pluralmetal/app/metal/legacy_routes.rb +0 -5
- data/vendor/rails/railties/test/fixtures/metal/singlemetal/app/metal/foo_metal.rb +0 -5
- data/vendor/rails/railties/test/fixtures/metal/subfolders/app/metal/Folder/metal_a.rb +0 -7
- data/vendor/rails/railties/test/fixtures/metal/subfolders/app/metal/Folder/metal_b.rb +0 -7
- data/vendor/rails/railties/test/fixtures/plugins/alternate/a/generators/a_generator/a_generator.rb +0 -4
- data/vendor/rails/railties/test/fixtures/plugins/default/gemlike/init.rb +0 -1
- data/vendor/rails/railties/test/fixtures/plugins/default/gemlike/lib/gemlike.rb +0 -2
- data/vendor/rails/railties/test/fixtures/plugins/default/gemlike/rails/init.rb +0 -7
- data/vendor/rails/railties/test/fixtures/plugins/default/plugin_with_no_lib_dir/init.rb +0 -0
- data/vendor/rails/railties/test/fixtures/plugins/default/stubby/about.yml +0 -2
- data/vendor/rails/railties/test/fixtures/plugins/default/stubby/generators/stubby_generator/stubby_generator.rb +0 -4
- data/vendor/rails/railties/test/fixtures/plugins/default/stubby/init.rb +0 -7
- data/vendor/rails/railties/test/fixtures/plugins/default/stubby/lib/stubby_mixin.rb +0 -2
- data/vendor/rails/railties/test/fixtures/plugins/engines/engine/app/controllers/engine_controller.rb +0 -2
- data/vendor/rails/railties/test/fixtures/plugins/engines/engine/app/metal/engine_metal.rb +0 -10
- data/vendor/rails/railties/test/fixtures/plugins/engines/engine/app/models/engine_model.rb +0 -2
- data/vendor/rails/railties/test/fixtures/plugins/engines/engine/config/locales/en.yml +0 -2
- data/vendor/rails/railties/test/fixtures/plugins/engines/engine/config/routes.rb +0 -3
- data/vendor/rails/railties/test/fixtures/plugins/engines/engine/init.rb +0 -3
- data/vendor/rails/railties/test/fixtures/public/foo/bar.html +0 -1
- data/vendor/rails/railties/test/fixtures/public/foo/index.html +0 -1
- data/vendor/rails/railties/test/fixtures/public/index.html +0 -1
- data/vendor/rails/railties/test/gem_dependency_test.rb +0 -219
- data/vendor/rails/railties/test/generator_lookup_test.rb +0 -40
- data/vendor/rails/railties/test/generators/generator_test_helper.rb +0 -310
- data/vendor/rails/railties/test/generators/rails_controller_generator_test.rb +0 -44
- data/vendor/rails/railties/test/generators/rails_helper_generator_test.rb +0 -36
- data/vendor/rails/railties/test/generators/rails_mailer_generator_test.rb +0 -29
- data/vendor/rails/railties/test/generators/rails_model_generator_test.rb +0 -96
- data/vendor/rails/railties/test/generators/rails_resource_generator_test.rb +0 -29
- data/vendor/rails/railties/test/generators/rails_scaffold_generator_test.rb +0 -151
- data/vendor/rails/railties/test/generators/rails_template_runner_test.rb +0 -216
- data/vendor/rails/railties/test/initializer_test.rb +0 -416
- data/vendor/rails/railties/test/metal_test.rb +0 -72
- data/vendor/rails/railties/test/mocks/routes.rb +0 -6
- data/vendor/rails/railties/test/plugin_loader_test.rb +0 -172
- data/vendor/rails/railties/test/plugin_locator_test.rb +0 -62
- data/vendor/rails/railties/test/plugin_test.rb +0 -162
- data/vendor/rails/railties/test/plugin_test_helper.rb +0 -29
- data/vendor/rails/railties/test/rack_static_test.rb +0 -46
- data/vendor/rails/railties/test/rails_generator_test.rb +0 -145
- data/vendor/rails/railties/test/rails_info_controller_test.rb +0 -52
- data/vendor/rails/railties/test/rails_info_test.rb +0 -99
- data/vendor/rails/railties/test/secret_key_generation_test.rb +0 -38
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-a-0.4.0/lib/dummy-gem-a.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-b-0.4.0/lib/dummy-gem-b.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-b-0.6.0/lib/dummy-gem-b.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-c-0.4.0/lib/dummy-gem-c.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-c-0.6.0/lib/dummy-gem-c.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-d-1.0.0/lib/dummy-gem-d.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-e-1.0.0/lib/dummy-gem-e.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-f-1.0.0/lib/dummy-gem-f.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-g-1.0.0/lib/dummy-gem-g.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-h-1.0.0/lib/dummy-gem-h.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-i-1.0.0/ext/dummy-gem-i/Makefile +0 -0
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-i-1.0.0/lib/dummy-gem-i.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-j-1.0.0/lib/dummy-gem-j.rb +0 -1
- data/vendor/rails/railties/test/vendor/gems/dummy-gem-k-1.0.0/lib/dummy-gem-k.rb +0 -1
- data/vendor/rails/release.rb +0 -25
@@ -220,20 +220,20 @@ module ActiveRecord
|
|
220
220
|
SQL
|
221
221
|
|
222
222
|
execute(sql, name).map do |row|
|
223
|
-
row[
|
223
|
+
row['name']
|
224
224
|
end
|
225
225
|
end
|
226
226
|
|
227
227
|
def columns(table_name, name = nil) #:nodoc:
|
228
228
|
table_structure(table_name).map do |field|
|
229
|
-
SQLiteColumn.new(field['name'], field['dflt_value'], field['type'], field['notnull'] ==
|
229
|
+
SQLiteColumn.new(field['name'], field['dflt_value'], field['type'], field['notnull'].to_i == 0)
|
230
230
|
end
|
231
231
|
end
|
232
232
|
|
233
233
|
def indexes(table_name, name = nil) #:nodoc:
|
234
234
|
execute("PRAGMA index_list(#{quote_table_name(table_name)})", name).map do |row|
|
235
235
|
index = IndexDefinition.new(table_name, row['name'])
|
236
|
-
index.unique = row['unique'] !=
|
236
|
+
index.unique = row['unique'].to_i != 0
|
237
237
|
index.columns = execute("PRAGMA index_info('#{index.name}')").map { |col| col['name'] }
|
238
238
|
index
|
239
239
|
end
|
@@ -244,8 +244,8 @@ module ActiveRecord
|
|
244
244
|
column ? column['name'] : nil
|
245
245
|
end
|
246
246
|
|
247
|
-
def remove_index(table_name,
|
248
|
-
execute "DROP INDEX #{quote_column_name(index_name
|
247
|
+
def remove_index!(table_name, index_name) #:nodoc:
|
248
|
+
execute "DROP INDEX #{quote_column_name(index_name)}"
|
249
249
|
end
|
250
250
|
|
251
251
|
def rename_table(name, new_name)
|
@@ -167,13 +167,13 @@ module ActiveRecord
|
|
167
167
|
|
168
168
|
module ClassMethods
|
169
169
|
def self.extended(base)
|
170
|
-
base.
|
170
|
+
base.singleton_class.alias_method_chain(:alias_attribute, :dirty)
|
171
171
|
end
|
172
172
|
|
173
173
|
def alias_attribute_with_dirty(new_name, old_name)
|
174
174
|
alias_attribute_without_dirty(new_name, old_name)
|
175
175
|
DIRTY_SUFFIXES.each do |suffix|
|
176
|
-
module_eval <<-STR, __FILE__, __LINE__+1
|
176
|
+
module_eval <<-STR, __FILE__, __LINE__ + 1
|
177
177
|
def #{new_name}#{suffix}; self.#{old_name}#{suffix}; end # def subject_changed?; self.title_changed?; end
|
178
178
|
STR
|
179
179
|
end
|
@@ -23,6 +23,16 @@ module ActiveRecord
|
|
23
23
|
# p2.first_name = "should fail"
|
24
24
|
# p2.save # Raises a ActiveRecord::StaleObjectError
|
25
25
|
#
|
26
|
+
# Optimistic locking will also check for stale data when objects are destroyed. Example:
|
27
|
+
#
|
28
|
+
# p1 = Person.find(1)
|
29
|
+
# p2 = Person.find(1)
|
30
|
+
#
|
31
|
+
# p1.first_name = "Michael"
|
32
|
+
# p1.save
|
33
|
+
#
|
34
|
+
# p2.destroy # Raises a ActiveRecord::StaleObjectError
|
35
|
+
#
|
26
36
|
# You're then responsible for dealing with the conflict by rescuing the exception and either rolling back, merging,
|
27
37
|
# or otherwise apply the business logic needed to resolve the conflict.
|
28
38
|
#
|
@@ -39,6 +49,7 @@ module ActiveRecord
|
|
39
49
|
base.lock_optimistically = true
|
40
50
|
|
41
51
|
base.alias_method_chain :update, :lock
|
52
|
+
base.alias_method_chain :destroy, :lock
|
42
53
|
base.alias_method_chain :attributes_from_column_definition, :lock
|
43
54
|
|
44
55
|
class << base
|
@@ -86,7 +97,7 @@ module ActiveRecord
|
|
86
97
|
end_sql
|
87
98
|
|
88
99
|
unless affected_rows == 1
|
89
|
-
raise ActiveRecord::StaleObjectError, "Attempted to update a stale object"
|
100
|
+
raise ActiveRecord::StaleObjectError, "Attempted to update a stale object: #{self.class.name}"
|
90
101
|
end
|
91
102
|
|
92
103
|
affected_rows
|
@@ -98,6 +109,28 @@ module ActiveRecord
|
|
98
109
|
end
|
99
110
|
end
|
100
111
|
|
112
|
+
def destroy_with_lock #:nodoc:
|
113
|
+
return destroy_without_lock unless locking_enabled?
|
114
|
+
|
115
|
+
unless new_record?
|
116
|
+
lock_col = self.class.locking_column
|
117
|
+
previous_value = send(lock_col).to_i
|
118
|
+
|
119
|
+
affected_rows = connection.delete(
|
120
|
+
"DELETE FROM #{self.class.quoted_table_name} " +
|
121
|
+
"WHERE #{connection.quote_column_name(self.class.primary_key)} = #{quoted_id} " +
|
122
|
+
"AND #{self.class.quoted_locking_column} = #{quote_value(previous_value)}",
|
123
|
+
"#{self.class.name} Destroy"
|
124
|
+
)
|
125
|
+
|
126
|
+
unless affected_rows == 1
|
127
|
+
raise ActiveRecord::StaleObjectError, "Attempted to delete a stale object: #{self.class.name}"
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
freeze
|
132
|
+
end
|
133
|
+
|
101
134
|
module ClassMethods
|
102
135
|
DEFAULT_LOCKING_COLUMN = 'lock_version'
|
103
136
|
|
@@ -381,6 +381,7 @@ module ActiveRecord
|
|
381
381
|
def migrate(migrations_path, target_version = nil)
|
382
382
|
case
|
383
383
|
when target_version.nil? then up(migrations_path, target_version)
|
384
|
+
when current_version == 0 && target_version == 0 then # noop
|
384
385
|
when current_version > target_version then down(migrations_path, target_version)
|
385
386
|
else up(migrations_path, target_version)
|
386
387
|
end
|
@@ -408,6 +409,10 @@ module ActiveRecord
|
|
408
409
|
self.new(direction, migrations_path, target_version).run
|
409
410
|
end
|
410
411
|
|
412
|
+
def migrations_path
|
413
|
+
'db/migrate'
|
414
|
+
end
|
415
|
+
|
411
416
|
def schema_migrations_table_name
|
412
417
|
Base.table_name_prefix + 'schema_migrations' + Base.table_name_suffix
|
413
418
|
end
|
@@ -184,6 +184,8 @@ module ActiveRecord
|
|
184
184
|
# the parent model is saved. This happens inside the transaction initiated
|
185
185
|
# by the parents save method. See ActiveRecord::AutosaveAssociation.
|
186
186
|
module ClassMethods
|
187
|
+
REJECT_ALL_BLANK_PROC = proc { |attributes| attributes.all? { |_, value| value.blank? } }
|
188
|
+
|
187
189
|
# Defines an attributes writer for the specified association(s). If you
|
188
190
|
# are using <tt>attr_protected</tt> or <tt>attr_accessible</tt>, then you
|
189
191
|
# will need to add the attribute writer to the allowed list.
|
@@ -208,39 +210,40 @@ module ActiveRecord
|
|
208
210
|
# nested attributes array exceeds the specified limit, NestedAttributes::TooManyRecords
|
209
211
|
# exception is raised. If omitted, any number associations can be processed.
|
210
212
|
# Note that the :limit option is only applicable to one-to-many associations.
|
213
|
+
# [:update_only]
|
214
|
+
# Allows you to specify that an existing record may only be updated.
|
215
|
+
# A new record may only be created when there is no existing record.
|
216
|
+
# This option only works for one-to-one associations and is ignored for
|
217
|
+
# collection associations. This option is off by default.
|
211
218
|
#
|
212
219
|
# Examples:
|
213
220
|
# # creates avatar_attributes=
|
214
221
|
# accepts_nested_attributes_for :avatar, :reject_if => proc { |attributes| attributes['name'].blank? }
|
222
|
+
# # creates avatar_attributes=
|
223
|
+
# accepts_nested_attributes_for :avatar, :reject_if => :all_blank
|
215
224
|
# # creates avatar_attributes= and posts_attributes=
|
216
225
|
# accepts_nested_attributes_for :avatar, :posts, :allow_destroy => true
|
217
226
|
def accepts_nested_attributes_for(*attr_names)
|
218
|
-
options = { :allow_destroy => false }
|
227
|
+
options = { :allow_destroy => false, :update_only => false }
|
219
228
|
options.update(attr_names.extract_options!)
|
220
|
-
options.assert_valid_keys(:allow_destroy, :reject_if, :limit)
|
229
|
+
options.assert_valid_keys(:allow_destroy, :reject_if, :limit, :update_only)
|
230
|
+
options[:reject_if] = REJECT_ALL_BLANK_PROC if options[:reject_if] == :all_blank
|
221
231
|
|
222
232
|
attr_names.each do |association_name|
|
223
233
|
if reflection = reflect_on_association(association_name)
|
224
|
-
type = case reflection.macro
|
225
|
-
when :has_one, :belongs_to
|
226
|
-
:one_to_one
|
227
|
-
when :has_many, :has_and_belongs_to_many
|
228
|
-
:collection
|
229
|
-
end
|
230
|
-
|
231
234
|
reflection.options[:autosave] = true
|
232
|
-
|
235
|
+
add_autosave_association_callbacks(reflection)
|
236
|
+
nested_attributes_options[association_name.to_sym] = options
|
237
|
+
type = (reflection.collection? ? :collection : :one_to_one)
|
233
238
|
|
234
239
|
# def pirate_attributes=(attributes)
|
235
|
-
# assign_nested_attributes_for_one_to_one_association(:pirate, attributes
|
240
|
+
# assign_nested_attributes_for_one_to_one_association(:pirate, attributes)
|
236
241
|
# end
|
237
|
-
class_eval
|
242
|
+
class_eval <<-EOS, __FILE__, __LINE__ + 1
|
238
243
|
def #{association_name}_attributes=(attributes)
|
239
244
|
assign_nested_attributes_for_#{type}_association(:#{association_name}, attributes)
|
240
245
|
end
|
241
|
-
|
242
|
-
|
243
|
-
add_autosave_association_callbacks(reflection)
|
246
|
+
EOS
|
244
247
|
else
|
245
248
|
raise ArgumentError, "No association found for name `#{association_name}'. Has it been defined yet?"
|
246
249
|
end
|
@@ -257,46 +260,41 @@ module ActiveRecord
|
|
257
260
|
marked_for_destruction?
|
258
261
|
end
|
259
262
|
|
260
|
-
# Deal with deprecated _delete.
|
261
|
-
#
|
262
|
-
def _delete #:nodoc:
|
263
|
-
ActiveSupport::Deprecation.warn "_delete is deprecated in nested attributes. Use _destroy instead."
|
264
|
-
_destroy
|
265
|
-
end
|
266
|
-
|
267
263
|
private
|
268
264
|
|
269
265
|
# Attribute hash keys that should not be assigned as normal attributes.
|
270
266
|
# These hash keys are nested attributes implementation details.
|
271
|
-
|
272
|
-
# TODO Remove _delete from UNASSIGNABLE_KEYS when deprecation warning are
|
273
|
-
# removed.
|
274
|
-
UNASSIGNABLE_KEYS = %w( id _destroy _delete )
|
267
|
+
UNASSIGNABLE_KEYS = %w( id _destroy )
|
275
268
|
|
276
269
|
# Assigns the given attributes to the association.
|
277
270
|
#
|
278
|
-
# If the given attributes include an <tt>:id</tt>
|
279
|
-
# record’s id, then the existing record will be
|
280
|
-
# record
|
271
|
+
# If update_only is false and the given attributes include an <tt>:id</tt>
|
272
|
+
# that matches the existing record’s id, then the existing record will be
|
273
|
+
# modified. If update_only is true, a new record is only created when no
|
274
|
+
# object exists. Otherwise a new record will be built.
|
281
275
|
#
|
282
|
-
# If the given attributes include a matching <tt>:id</tt> attribute
|
283
|
-
# <tt>:_destroy</tt> key set to a truthy value,
|
284
|
-
# will be marked for destruction.
|
276
|
+
# If the given attributes include a matching <tt>:id</tt> attribute, or
|
277
|
+
# update_only is true, and a <tt>:_destroy</tt> key set to a truthy value,
|
278
|
+
# then the existing record will be marked for destruction.
|
285
279
|
def assign_nested_attributes_for_one_to_one_association(association_name, attributes)
|
286
|
-
options =
|
280
|
+
options = nested_attributes_options[association_name]
|
287
281
|
attributes = attributes.with_indifferent_access
|
282
|
+
check_existing_record = (options[:update_only] || !attributes['id'].blank?)
|
288
283
|
|
289
|
-
if
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
284
|
+
if check_existing_record && (record = send(association_name)) &&
|
285
|
+
(options[:update_only] || record.id.to_s == attributes['id'].to_s)
|
286
|
+
assign_to_or_mark_for_destruction(record, attributes, options[:allow_destroy])
|
287
|
+
|
288
|
+
elsif attributes['id']
|
289
|
+
raise_nested_attributes_record_not_found(association_name, attributes['id'])
|
290
|
+
|
291
|
+
elsif !reject_new_record?(association_name, attributes)
|
292
|
+
method = "build_#{association_name}"
|
293
|
+
if respond_to?(method)
|
294
|
+
send(method, attributes.except(*UNASSIGNABLE_KEYS))
|
295
|
+
else
|
296
|
+
raise ArgumentError, "Cannot build association #{association_name}. Are you trying to build a polymorphic one-to-one association?"
|
297
297
|
end
|
298
|
-
elsif (existing_record = send(association_name)) && existing_record.id.to_s == attributes['id'].to_s
|
299
|
-
assign_to_or_mark_for_destruction(existing_record, attributes, options[:allow_destroy])
|
300
298
|
end
|
301
299
|
end
|
302
300
|
|
@@ -328,7 +326,7 @@ module ActiveRecord
|
|
328
326
|
# { :id => '2', :_destroy => true }
|
329
327
|
# ])
|
330
328
|
def assign_nested_attributes_for_collection_association(association_name, attributes_collection)
|
331
|
-
options =
|
329
|
+
options = nested_attributes_options[association_name]
|
332
330
|
|
333
331
|
unless attributes_collection.is_a?(Hash) || attributes_collection.is_a?(Array)
|
334
332
|
raise ArgumentError, "Hash or Array expected, got #{attributes_collection.class.name} (#{attributes_collection.inspect})"
|
@@ -342,15 +340,27 @@ module ActiveRecord
|
|
342
340
|
attributes_collection = attributes_collection.sort_by { |index, _| index.to_i }.map { |_, attributes| attributes }
|
343
341
|
end
|
344
342
|
|
343
|
+
association = send(association_name)
|
344
|
+
|
345
|
+
existing_records = if association.loaded?
|
346
|
+
association.to_a
|
347
|
+
else
|
348
|
+
attribute_ids = attributes_collection.map {|a| a['id'] || a[:id] }.compact
|
349
|
+
attribute_ids.present? ? association.all(:conditions => {association.primary_key => attribute_ids}) : []
|
350
|
+
end
|
351
|
+
|
345
352
|
attributes_collection.each do |attributes|
|
346
353
|
attributes = attributes.with_indifferent_access
|
347
354
|
|
348
355
|
if attributes['id'].blank?
|
349
356
|
unless reject_new_record?(association_name, attributes)
|
350
|
-
|
357
|
+
association.build(attributes.except(*UNASSIGNABLE_KEYS))
|
351
358
|
end
|
352
|
-
elsif existing_record =
|
359
|
+
elsif existing_record = existing_records.detect { |record| record.id.to_s == attributes['id'].to_s }
|
360
|
+
association.send(:add_record_to_target_with_callbacks, existing_record) unless association.loaded?
|
353
361
|
assign_to_or_mark_for_destruction(existing_record, attributes, options[:allow_destroy])
|
362
|
+
else
|
363
|
+
raise_nested_attributes_record_not_found(association_name, attributes['id'])
|
354
364
|
end
|
355
365
|
end
|
356
366
|
end
|
@@ -367,8 +377,7 @@ module ActiveRecord
|
|
367
377
|
|
368
378
|
# Determines if a hash contains a truthy _destroy key.
|
369
379
|
def has_destroy_flag?(hash)
|
370
|
-
ConnectionAdapters::Column.value_to_boolean(hash['_destroy'])
|
371
|
-
ConnectionAdapters::Column.value_to_boolean(hash['_delete']) # TODO Remove after deprecation.
|
380
|
+
ConnectionAdapters::Column.value_to_boolean(hash['_destroy'])
|
372
381
|
end
|
373
382
|
|
374
383
|
# Determines if a new record should be build by checking for
|
@@ -379,14 +388,17 @@ module ActiveRecord
|
|
379
388
|
end
|
380
389
|
|
381
390
|
def call_reject_if(association_name, attributes)
|
382
|
-
callback =
|
383
|
-
|
384
|
-
case callback
|
391
|
+
case callback = nested_attributes_options[association_name][:reject_if]
|
385
392
|
when Symbol
|
386
393
|
method(callback).arity == 0 ? send(callback) : send(callback, attributes)
|
387
394
|
when Proc
|
388
|
-
callback.
|
395
|
+
callback.call(attributes)
|
389
396
|
end
|
390
397
|
end
|
398
|
+
|
399
|
+
def raise_nested_attributes_record_not_found(association_name, record_id)
|
400
|
+
reflection = self.class.reflect_on_association(association_name)
|
401
|
+
raise RecordNotFound, "Couldn't find #{reflection.klass.name} with ID=#{record_id} for #{self.class.name} with ID=#{id}"
|
402
|
+
end
|
391
403
|
end
|
392
404
|
end
|
@@ -212,6 +212,15 @@ module ActiveRecord
|
|
212
212
|
end
|
213
213
|
|
214
214
|
def check_validity!
|
215
|
+
check_validity_of_inverse!
|
216
|
+
end
|
217
|
+
|
218
|
+
def check_validity_of_inverse!
|
219
|
+
unless options[:polymorphic]
|
220
|
+
if has_inverse? && inverse_of.nil?
|
221
|
+
raise InverseOfAssociationNotFoundError.new(self)
|
222
|
+
end
|
223
|
+
end
|
215
224
|
end
|
216
225
|
|
217
226
|
def through_reflection
|
@@ -225,10 +234,64 @@ module ActiveRecord
|
|
225
234
|
nil
|
226
235
|
end
|
227
236
|
|
237
|
+
def has_inverse?
|
238
|
+
!@options[:inverse_of].nil?
|
239
|
+
end
|
240
|
+
|
241
|
+
def inverse_of
|
242
|
+
if has_inverse?
|
243
|
+
@inverse_of ||= klass.reflect_on_association(options[:inverse_of])
|
244
|
+
end
|
245
|
+
end
|
246
|
+
|
247
|
+
def polymorphic_inverse_of(associated_class)
|
248
|
+
if has_inverse?
|
249
|
+
if inverse_relationship = associated_class.reflect_on_association(options[:inverse_of])
|
250
|
+
inverse_relationship
|
251
|
+
else
|
252
|
+
raise InverseOfAssociationNotFoundError.new(self, associated_class)
|
253
|
+
end
|
254
|
+
end
|
255
|
+
end
|
256
|
+
|
257
|
+
# Returns whether or not this association reflection is for a collection
|
258
|
+
# association. Returns +true+ if the +macro+ is one of +has_many+ or
|
259
|
+
# +has_and_belongs_to_many+, +false+ otherwise.
|
260
|
+
def collection?
|
261
|
+
if @collection.nil?
|
262
|
+
@collection = [:has_many, :has_and_belongs_to_many].include?(macro)
|
263
|
+
end
|
264
|
+
@collection
|
265
|
+
end
|
266
|
+
|
267
|
+
# Returns whether or not the association should be validated as part of
|
268
|
+
# the parent's validation.
|
269
|
+
#
|
270
|
+
# Unless you explicitely disable validation with
|
271
|
+
# <tt>:validate => false</tt>, it will take place when:
|
272
|
+
#
|
273
|
+
# * you explicitely enable validation; <tt>:validate => true</tt>
|
274
|
+
# * you use autosave; <tt>:autosave => true</tt>
|
275
|
+
# * the association is a +has_many+ association
|
276
|
+
def validate?
|
277
|
+
!options[:validate].nil? ? options[:validate] : (options[:autosave] == true || macro == :has_many)
|
278
|
+
end
|
279
|
+
|
280
|
+
def dependent_conditions(record, base_class, extra_conditions)
|
281
|
+
dependent_conditions = []
|
282
|
+
dependent_conditions << "#{primary_key_name} = #{record.send(name).send(:owner_quoted_id)}"
|
283
|
+
dependent_conditions << "#{options[:as]}_type = '#{base_class.name}'" if options[:as]
|
284
|
+
dependent_conditions << klass.send(:sanitize_sql, options[:conditions]) if options[:conditions]
|
285
|
+
dependent_conditions = dependent_conditions.collect {|where| "(#{where})" }.join(" AND ")
|
286
|
+
dependent_conditions << extra_conditions if extra_conditions
|
287
|
+
dependent_conditions = dependent_conditions.gsub('@', '\@')
|
288
|
+
dependent_conditions
|
289
|
+
end
|
290
|
+
|
228
291
|
private
|
229
292
|
def derive_class_name
|
230
293
|
class_name = name.to_s.camelize
|
231
|
-
class_name = class_name.singularize if
|
294
|
+
class_name = class_name.singularize if collection?
|
232
295
|
class_name
|
233
296
|
end
|
234
297
|
|
@@ -300,6 +363,8 @@ module ActiveRecord
|
|
300
363
|
unless [:belongs_to, :has_many, :has_one].include?(source_reflection.macro) && source_reflection.options[:through].nil?
|
301
364
|
raise HasManyThroughSourceAssociationMacroError.new(self)
|
302
365
|
end
|
366
|
+
|
367
|
+
check_validity_of_inverse!
|
303
368
|
end
|
304
369
|
|
305
370
|
def through_reflection_primary_key
|
@@ -28,6 +28,10 @@ module ActiveRecord
|
|
28
28
|
class Schema < Migration
|
29
29
|
private_class_method :new
|
30
30
|
|
31
|
+
def self.migrations_path
|
32
|
+
ActiveRecord::Migrator.migrations_path
|
33
|
+
end
|
34
|
+
|
31
35
|
# Eval the given block. All methods available to the current connection
|
32
36
|
# adapter are available within the block, so you can easily use the
|
33
37
|
# database definition DSL to build up your schema (+create_table+,
|
@@ -44,7 +48,7 @@ module ActiveRecord
|
|
44
48
|
|
45
49
|
unless info[:version].blank?
|
46
50
|
initialize_schema_migrations_table
|
47
|
-
assume_migrated_upto_version
|
51
|
+
assume_migrated_upto_version(info[:version], migrations_path)
|
48
52
|
end
|
49
53
|
end
|
50
54
|
end
|