aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Support for foreign keys in create tableRyuta Kamizono2015-09-203-17/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | If foreign keys specified in create table, generated SQL is slightly more efficient. Definition: ``` create_table :testings do |t| t.references :testing_parent, foreign_key: true end ``` Before: ``` CREATE TABLE "testings" ("id" serial primary key, "testing_parent_id" integer); ALTER TABLE "testings" ADD CONSTRAINT "fk_rails_a196c353b2" FOREIGN KEY ("testing_parent_id") REFERENCES "testing_parents" ("id"); ``` After: ``` CREATE TABLE "testings" ("id" serial primary key, "testing_parent_id" integer, CONSTRAINT "fk_rails_a196c353b2" FOREIGN KEY ("testing_parent_id") REFERENCES "testing_parents" ("id")); ```
* Merge pull request #17696 from kamipo/unsigned_integer_supportJeremy Daer2015-09-195-9/+144
|\ | | | | | | Add `unsigned` support for numeric data types in MySQL
| * Add `unsigned` types for numeric data types in MySQLRyuta Kamizono2015-09-184-0/+56
| | | | | | | | | | | | | | | | | | | | | | In the case of using `unsigned` as the type: create_table :foos do |t| t.unsigned_integer :unsigned_integer t.unsigned_bigint :unsigned_bigint t.unsigned_float :unsigned_float t.unsigned_decimal :unsigned_decimal, precision: 10, scale: 2 end
| * Add `unsigned` support for numeric data types in MySQLRyuta Kamizono2015-09-185-9/+91
| | | | | | | | | | | | | | | | | | | | | | Example: create_table :foos do |t| t.integer :unsigned_integer, unsigned: true t.bigint :unsigned_bigint, unsigned: true t.float :unsigned_float, unsigned: true t.decimal :unsigned_decimal, unsigned: true, precision: 10, scale: 2 end
* | Merge pull request #19086 from kamipo/move_explain_into_abstract_mysql_adapterJeremy Daer2015-09-194-78/+113
|\ \ | | | | | | | | | Move `explain` into `AbstractMysqlAdapter`
| * | Move `explain` into `AbstractMysqlAdapter`Ryuta Kamizono2015-03-014-78/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Common methods in both mysql adapters are should be added to `AbstractMysqlAdapter`, but some methods had been added to `Mysql2Adapter`. (8744632f, 0306f82e, #14359) Some methods already moved from `Mysql2Adapter` to `AbstractMysqlAdapter`. (#17601, #17998) Common methods in both mysql adapters are remaining only the `explain` method in `Mysql2Adapter`.
* | | Merge pull request #20645 from kamipo/fix_mysql_set_type_bugJeremy Daer2015-09-192-1/+10
|\ \ \ | | | | | | | | Fix undesired type lookup with `SET` in MySQL
| * | | Fix infinite loop and lookup miss when `SET` type includes other typesRyuta Kamizono2015-06-201-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit fixes the following problems: * cause infinit type lookup loop when SET includes aliased types * For example: when SET('set') includes aliased type `set`, then aliased `varchar('set')` by type lookup, but type lookup infinit matching same rule. * cause type lookup miss when SET includes registered types * For example: when SET('time') includes registered type `time`, then aliased `varchar('time')` by type lookup, then matching `time` type.
| * | | Fix the MySQL column type `SET` registration bugTaishi Kasuga2015-06-201-0/+4
| | | |
* | | | Merge pull request #21589 from ↵Jeremy Daer2015-09-192-16/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | kamipo/eliminate_duplicated_visit_table_definition Eliminate the duplication code of `visit_TableDefinition`
| * | | | Eliminate the duplication code of `visit_TableDefinition`Ryuta Kamizono2015-09-162-18/+13
| | | | |
* | | | | Merge pull request #21609 from kamipo/do_not_dump_view_as_tableJeremy Daer2015-09-197-1/+102
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | Do not dump a view as a table in sqlite3, mysql and mysql2 adapters
| * | | | | Do not dump a view as a table in sqlite3, mysql and mysql2 adaptersRyuta Kamizono2015-09-132-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now in sqlite3, mysql and mysql2 adapters, SchemaDumper dump a view as a table. It is incorrect behavior. This change excludes a view in schema.rb.
| * | | | | Add `#views` and `#view_exists?` methods on connection adaptersRyuta Kamizono2015-09-136-0/+88
| | | | | |
* | | | | | Merge pull request #21607 from kamipo/remove_unnecessary_display_widthJeremy Daer2015-09-197-15/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | Remove unnecessary display width
| * | | | | | Remove unnecessary display widthRyuta Kamizono2015-09-167-15/+16
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The **(11)** does not affect the storage size of the data type, which for an INT will always be 4 bytes. It affects the **display width**. http://www.tocker.ca/2015/07/02/proposal-to-deprecate-mysql-integer-display-width-and-zerofill.html
* | | | | | Merge pull request #21608 from ↵Jeremy Daer2015-09-192-10/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | kamipo/eliminate_duplicated_options_include_default_method Eliminate the duplicated `options_include_default?` method
| * | | | | | Eliminate the duplicated `options_include_default?` methodRyuta Kamizono2015-09-132-10/+8
| | |/ / / / | |/| | | | | | | | | | | | | | | | Follow up 7ba2cd06.
* | | | | | Merge pull request #21664 from kamipo/reduce_call_create_table_infoJeremy Daer2015-09-191-2/+7
|\ \ \ \ \ \ | | | | | | | | | | | | | | Reduce the calling `create_table_info` query
| * | | | | | Reduce the calling `create_table_info` queryRyuta Kamizono2015-09-181-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently in schema dumping, `create_table_info` query is called twice for each tables. It means if 100 tables exists, the query is called 200 times. This change is that the query is called once for each tables in schema dumping.
* | | | | | | Merge pull request #21681 from kamipo/should_test_both_mysql_adaptersJeremy Daer2015-09-194-22/+18
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Should test both mysql adapters
| * | | | | | | Should test both mysql adaptersRyuta Kamizono2015-09-204-22/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some test cases are testing only mysql adapter. We should test mysql2 adapter also.
* | | | | | | | Merge pull request #21677 from ronakjangir47/send_file_headers_testJeremy Daer2015-09-191-1/+12
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Added test for `send_file_headers` called with nil content type
| * | | | | | | | Added test for `send_file_headers` called with nil content typeRonak Jangir2015-09-191-1/+12
| | | | | | | | |
* | | | | | | | | Merge pull request #21683 from hmistry/aj_travisJeremy Daer2015-09-192-1/+6
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Run Beanstalkd integration tests in ActiveJob
| * | | | | | | | | Added new lines to run title for easy log readinghiren mistry2015-09-191-1/+1
| | | | | | | | | |
| * | | | | | | | | Added beanstalkd to Travis so ActiveJob integration tests for beanstalkd can runhiren mistry2015-09-191-0/+5
| | |/ / / / / / / | |/| | | | | | |
* | | | | | | | | Merge pull request #21614 from kamipo/correctly_dump_composite_primary_keyJeremy Daer (Kemper)2015-09-1910-37/+114
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Correctly dump composite primary key
| * | | | | | | | | Correctly dump composite primary keyRyuta Kamizono2015-09-2010-37/+114
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Example: create_table :barcodes, primary_key: ["region", "code"] do |t| t.string :region t.integer :code end
* | | | | | | | | Merge pull request #21682 from vlado/obsolete_require_removedKasper Timm Hansen2015-09-201-2/+0
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | String#strip_heredocs doesn't need Object#try anymore
| * | | | | | | | String#strip_heredocs doesn't need Object#tryVlado Cingel2015-09-191-2/+0
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | Call to Object#try was removed with this pull request https://github.com/rails/rails/pull/21596
* | | | | | | | s/seperator/separator/gAkira Matsuda2015-09-201-3/+3
| | | | | | | |
* | | | | | | | Merge pull request #21680 from kamipo/remove_connection_in_statement_poolAkira Matsuda2015-09-206-10/+8
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Remove `@connection` in `StatementPool`
| * | | | | | | | Remove `@connection` in `StatementPool`Ryuta Kamizono2015-09-206-10/+8
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `@connection` in `StatementPool` is only used for PG adapter. No need for abstract `StatementPool` class.
* | | | | | | | Merge pull request #21679 from jdantonio/replace-thread-safeKasper Timm Hansen2015-09-1918-43/+45
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Replaced `ThreadSafe::Map` with successor `Concurrent::Map`.
| * | | | | | | | Replaced `ThreadSafe::Map` with successor `Concurrent::Map`.Jerry D'Antonio2015-09-1918-43/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The thread_safe gem is being deprecated and all its code has been merged into the concurrent-ruby gem. The new class, Concurrent::Map, is exactly the same as its predecessor except for fixes to two bugs discovered during the merge.
* | | | | | | | | Merge pull request #21669 from amitsuroliya/improve_docsYves Senn2015-09-191-2/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Correcting `NameError` error message in `mattr_reader` method. [ci skip]
| * | | | | | | | | Correcting `NameError` error message in `mattr_reader` method. Since this ↵amitkumarsuroliya2015-09-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit https://github.com/rails/rails/commit/7dfbd91b0780fbd6a1dd9bfbc176e10894871d2d, `NameError` includes attribute_name also in error message [ci skip]
* | | | | | | | | | Merge pull request #21676 from amitsuroliya/correct_resultYves Senn2015-09-191-2/+2
|\ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / |/| | | | | | | | | Corrected numeric conversions output [ci skip]
| * | | | | | | | | Corrected numeric conversions output [ci skip]amitkumarsuroliya2015-09-191-2/+2
|/ / / / / / / / /
* | | | | | | | | Merge pull request #21674 from amitsuroliya/comment_fixCarlos Antonio da Silva2015-09-193-4/+4
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Replace `#=>` with `# =>` [ci skip]
| * | | | | | | | | Replace `#=>` with `# =>` [ci skip]amitkumarsuroliya2015-09-193-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | @rafaelfranca suggested in https://github.com/rails/rails/commit/f7c7bcd9c2a8b0e8c2840295d001d2d4dfd4cfae that code examples should display the result after `# =>` and not after `#=>`.
* | | | | | | | | | Merge pull request #21675 from y-yagi/fix_test_method_nameKasper Timm Hansen2015-09-191-1/+1
|\ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / |/| | | | | | | | | change test method name to the appropriate name
| * | | | | | | | | change test method name to the appropriate nameyuuji.yaginuma2015-09-191-1/+1
|/ / / / / / / / /
* | | | | | | | | Merge pull request #21673 from ronakjangir47/kindle_guideXavier Noria2015-09-192-6/+6
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | Fixed unclosed tags in kindle guide source [ci skip]
| * | | | | | | | Fixed unclosed tags in kindle guide source [ci skip]Ronak Jangir2015-09-192-6/+6
|/ / / / / / / /
* | | | | | | | Merge pull request #21650 from mcfiredrill/nodoc-raw-write-attributeArthur Nogueira Neves2015-09-191-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | nodoc raw_write_attribute
| * | | | | | | | nodoc raw_write_attributeTony Miller2015-09-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Is this supposed to be public API? If so, I can document it instead. :memo:
* | | | | | | | | mostly remove the ParamsParser middlewareAaron Patterson2015-09-188-16/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can still be added to the middleware stack, but is really not necessary. I'll follow up with a commit that deprecates the constant
* | | | | | | | | Merge branch 'pp'Aaron Patterson2015-09-185-56/+67
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * pp: remove outdated comment all parameter parsing is done through the request object now. let the request object handle parsing XML posts remove setting request parameters for JSON requests remove the request parameter from `parse_formatted_parameters` do not instantiate a param parser middleware push the parameter parsers on to the class stop eagerly parsing parameters only wrap the strategy with exception handling pull `normalize_encode_params` up remove the `default` parameter from the parser method move parameter parsing to the request object