- 27 10月, 2017 1 次提交
-
-
由 pavel 提交于
-
- 26 10月, 2017 13 次提交
-
-
由 Rafael França 提交于
Allow passing a Proc or Symbol as an argument to length validator values
-
由 Matt Rohrer 提交于
This brings the Length validator in line with the Numericality validator, which currently supports Proc & Symbol arguments
-
由 Ryuta Kamizono 提交于
Remove mention about Evented Redis [ci skip]
-
由 yuuji.yaginuma 提交于
Evented Redis adapter was removed in 48766e32.
-
由 Ryuta Kamizono 提交于
remove incorrect comment about serializable transactions [ci skip]
-
由 Joe Van Dyk 提交于
using serializable isolation would prevent the duplicate insert as done in the example from happening
-
由 Ryuta Kamizono 提交于
Remove unused `secrets.yml` template
-
由 Ryuta Kamizono 提交于
-
由 Ryuta Kamizono 提交于
Move `extensions` to `PostgreSQL::SchemaDumper`
-
由 प्रथमेश Sonpatki 提交于
- Backport commit: https://github.com/rails/rails/commit/7122a2cdc3634e170129f8b6cabd1e8fbed13c3d
-
由 Rafael Mendonça França 提交于
Wrap accepted nested attributes params
-
由 Kelton Manzanares 提交于
-
由 Ryan Perez 提交于
to properly wrap all attributes, including those which are nested.
-
- 25 10月, 2017 15 次提交
-
-
由 Yasuo Honda 提交于
and abstract `SchemaDumper#extensions` is now an empty method. Since #30337, every database adapter has its own `SchemaDumper`. `extensions` are only supported by PostgreSQL database and postgresql database adapter.
-
由 Rafael França 提交于
Save index order :desc to schema.rb (sqlite). Fixes #30902
-
由 Rafael França 提交于
[ci skip]Add space before closing curly brace
-
由 Rafael Mendonça França 提交于
-
由 Akira Matsuda 提交于
Does not include disabled element in params
-
由 Paul Kuruvilla 提交于
-
由 willnet 提交于
-
由 George Claghorn 提交于
Change `VENDOR_PATH` to `APP_ROOT` in `bin/yarn`
-
由 yuuji.yaginuma 提交于
This variable was initially used to hold the vendor directory. https://github.com/rails/rails/commit/3dac36b Therefore, the variable name `VENDOR_PATH` was appropriate. However, `package.json` is now placed in the root of the project. https://github.com/rails/rails/commit/8e9e943 Therefore, like other bin scripts, I think the variable name `APP_ROOT` is appropriate. https://github.com/rails/rails/blob/2c845f6b03ddf2aa233b00385d24d769a4a34fa6/railties/lib/rails/generators/rails/app/templates/bin/setup.tt#L5 https://github.com/rails/rails/blob/2c845f6b03ddf2aa233b00385d24d769a4a34fa6/railties/lib/rails/generators/rails/app/templates/bin/update.tt#L5
-
由 Rafael França 提交于
`supports_extensions?` return always true since PostgreSQL 9.1
-
由 Yasuo Honda 提交于
since the minimum version of PostgreSQL currently Rails supports is 9.1, there is no need to handle if `supports_extensions?` Refer https://www.postgresql.org/docs/9.1/static/sql-createextension.html "CREATE EXTENSION"
-
由 Rafael França 提交于
Simplify API documentation of methods that return a Duration
-
由 bogdanvlviv 提交于
Related to #30972
-
由 Rafael França 提交于
Make clear that Time core extensions are split between Numeric and Integer
-
由 Paul Kuruvilla 提交于
Although the sqlite adapter supports index sort orders, they weren't being written to db/schema.rb.
-
- 24 10月, 2017 11 次提交
-
-
由 Rafael França 提交于
Space between { and | missing.
-
由 João Fernandes 提交于
The documentation wrongly suggests that Time extensions to Numeric include methods months and years, when these belong to Integer. Update both classes and guides.
-
由 Renan Gurgel 提交于
-
由 Ryuta Kamizono 提交于
Currently alias tracker only refer a table name, doesn't respect an alias name. Should use `join.left.name` rather than `join.left.table_name`.
-
由 Renan Gurgel 提交于
Improve a code style recommendation following Rubocop instructions https://codeclimate.com/github/rails/rails/issues
-
由 Ryuta Kamizono 提交于
Remove `supports_disable_referential_integrity?`
-
由 Yasuo Honda 提交于
`supports_disable_referential_integrity?` used to handle if PostgreSQL database supports `ALTER TABLE <table name> DISABLE/ENABLE TRIGGER` statements. Refer https://github.com/rails/rails/commit/9a947af0e79cfb8692eb7e5ae94c1b8c40756f49 These statements have been documented since 8.1. https://www.postgresql.org/docs/8.1/static/sql-altertable.html > DISABLE/ENABLE TRIGGER Now Rails supports PostgreSQL 9.1 or higher only. No need to handle `supports_disable_referential_integrity?` anymore. Also, this method does not exist in any other adapters including AbstractAdapter.
-
由 Rafael França 提交于
Performance improvements for acts_like? method
-
由 Rafael Mendonça França 提交于
Fix #to_json for IO objects, fixes #26132
-
由 Dillon Welch 提交于
activesupport/lib/active_support/core_ext/object/acts_like.rb acts_like? Add a case statement to use direct symbols instead of string interpolation for the three scenarios I found in the Rails codebase: time, date, and string. For time/date/string, this change prevents two string allocations for each time the method is called and speeds up the method by ~2.7x. For other arguments, there is no memory difference and performance difference is within margin of error. begin require "bundler/inline" rescue LoadError => e $stderr.puts "Bundler version 1.10 or later is required. Please update your Bundler" raise e end gemfile(true) do source "https://rubygems.org" gem "rails", github: "rails/rails" gem "arel", github: "rails/arel" gem "benchmark-ips" end def allocate_count GC.disable before = ObjectSpace.count_objects yield after = ObjectSpace.count_objects after.each { |k,v| after[k] = v - before[k] } after[:T_HASH] -= 1 # probe effect - we created the before hash. GC.enable result = after.reject { |k,v| v == 0 } GC.start result end class Object def fast_acts_like?(duck) case duck when :time respond_to? :acts_like_time? when :date respond_to? :acts_like_date? when :string respond_to? :acts_like_string? else respond_to? :"acts_like_#{duck}?" end end end puts puts " acts_like? ".center(80, '=') puts obj = ''.freeze %i(time date string super_hacka).each do |type| puts " #{type} ".center(80, '=') puts " Memory Usage ".center(80, "=") puts puts "value.acts_like?" puts allocate_count { 1000.times { obj.acts_like?(type) } } puts "value.fast_acts_like?" puts allocate_count { 1000.times { obj.fast_acts_like?(type) } } puts puts " Benchmark.ips ".center(80, "=") puts Benchmark.ips do |x| x.report("acts_like?") { obj.acts_like?(type) } x.report("fast_acts_like?") { obj.fast_acts_like?(type) } x.compare! end end ================================== acts_like? ================================== ===================================== time ===================================== ================================= Memory Usage ================================= value.acts_like? {:FREE=>-1983, :T_STRING=>2052, :T_IMEMO=>1} value.fast_acts_like? {:FREE=>-1} ================================ Benchmark.ips ================================= Warming up -------------------------------------- acts_like? 104.281k i/100ms fast_acts_like? 155.523k i/100ms Calculating ------------------------------------- acts_like? 1.688M (±10.7%) i/s - 8.342M in 5.003804s fast_acts_like? 4.596M (±12.1%) i/s - 22.551M in 5.000124s Comparison: fast_acts_like?: 4596162.4 i/s acts_like?: 1688163.8 i/s - 2.72x slower ===================================== date ===================================== ================================= Memory Usage ================================= value.acts_like? {:FREE=>-2001, :T_STRING=>2000} value.fast_acts_like? {:FREE=>-1} ================================ Benchmark.ips ================================= Warming up -------------------------------------- acts_like? 85.372k i/100ms fast_acts_like? 166.097k i/100ms Calculating ------------------------------------- acts_like? 1.720M (± 8.3%) i/s - 8.537M in 5.001003s fast_acts_like? 4.695M (±10.1%) i/s - 23.254M in 5.010734s Comparison: fast_acts_like?: 4695493.1 i/s acts_like?: 1719637.9 i/s - 2.73x slower ==================================== string ==================================== ================================= Memory Usage ================================= value.acts_like? {:FREE=>-2001, :T_STRING=>2000} value.fast_acts_like? {:FREE=>-1} ================================ Benchmark.ips ================================= Warming up -------------------------------------- acts_like? 100.221k i/100ms fast_acts_like? 182.841k i/100ms Calculating ------------------------------------- acts_like? 1.706M (± 7.3%) i/s - 8.519M in 5.022331s fast_acts_like? 3.968M (±22.8%) i/s - 18.650M in 5.006762s Comparison: fast_acts_like?: 3967972.9 i/s acts_like?: 1705773.7 i/s - 2.33x slower ================================= super_hacka ================================== ================================= Memory Usage ================================= value.acts_like? {:FREE=>-2004, :T_STRING=>2002, :T_SYMBOL=>1} value.fast_acts_like? {:FREE=>-2003, :T_STRING=>2001, :T_SYMBOL=>1} ================================ Benchmark.ips ================================= Warming up -------------------------------------- acts_like? 100.344k i/100ms fast_acts_like? 101.690k i/100ms Calculating ------------------------------------- acts_like? 1.617M (± 7.5%) i/s - 8.128M in 5.055285s fast_acts_like? 1.534M (±10.1%) i/s - 7.627M in 5.031052s Comparison: acts_like?: 1617390.7 i/s fast_acts_like?: 1533897.3 i/s - same-ish: difference falls within error
-
由 Rafael França 提交于
specify minimum capybara version for system tests
-