- 17 2月, 2018 16 次提交
-
-
由 Rafael Mendonça França 提交于
-
由 Rafael Mendonça França 提交于
-
由 Rafael Mendonça França 提交于
References 89bcca59
-
由 Rafael França 提交于
Use SuppressedSummaryReporter and Rails::TestUnitReporter only if needed
-
由 Rafael França 提交于
Fix array routing constraints
-
由 Rafael Mendonça França 提交于
Make sure that when transforming the keys of a HashWithIndifferentAccess we can still access with indifferent access in Ruby 2.5. Closes #32007.
-
由 Rafael França 提交于
Remove needless requiring 'active_support/core_ext/string/strip'
-
由 Yoshiyuki Hirano 提交于
-
由 Jeremy Daer 提交于
References 89bcca59
-
由 yuuji.yaginuma 提交于
It seems to debug print.
-
由 fatkodima 提交于
-
由 Rafael Mendonça França 提交于
Some places we can't remove because Ruby still don't have a method equivalent to strip_heredoc to be called in an already existent string.
-
由 Rafael Mendonça França 提交于
-
由 Rafael Mendonça França 提交于
Rails 6 will only support Ruby >= 2.3.
-
由 Eileen M. Uchitelle 提交于
PERF: reduce retained objects in Journey
-
由 Eileen M. Uchitelle 提交于
ActiveStorage file cleanup in Integration Tests
-
- 16 2月, 2018 11 次提交
-
-
由 Eileen M. Uchitelle 提交于
Parallel testing
-
由 Sam 提交于
Before: Total allocated: 209050523 bytes (2219202 objects) Total retained: 36580305 bytes (323462 objects) After: Total allocated: 209180253 bytes (2222455 objects) Total retained: 36515599 bytes (321850 objects) --- Modest saving of 1612 RVALUEs in the heap on Discourse boot The larger the route file the better the results. Saving will only be visible on Ruby 2.5 and up.
-
由 eileencodes 提交于
Provides both a forked process and threaded parallelization options. To use add `parallelize` to your test suite. Takes a `workers` argument that controls how many times the process is forked. For each process a new database will be created suffixed with the worker number; test-database-0 and test-database-1 respectively. If `ENV["PARALLEL_WORKERS"]` is set the workers argument will be ignored and the environment variable will be used instead. This is useful for CI environments, or other environments where you may need more workers than you do for local testing. If the number of workers is set to `1` or fewer, the tests will not be parallelized. The default parallelization method is to fork processes. If you'd like to use threads instead you can pass `with: :threads` to the `parallelize` method. Note the threaded parallelization does not create multiple database and will not work with system tests at this time. parallelize(workers: 2, with: :threads) The threaded parallelization uses Minitest's parallel exector directly. The processes paralleliztion uses a Ruby Drb server. For parallelization via threads a setup hook and cleanup hook are provided. ``` class ActiveSupport::TestCase parallelize_setup do |worker| # setup databases end parallelize_teardown do |worker| # cleanup database end parallelize(workers: 2) end ``` [Eileen M. Uchitelle, Aaron Patterson]
-
由 Sam 提交于
-
由 Rafael Mendonça França 提交于
This reverts commit f282f375.
-
由 Jeremy Prevost 提交于
Documents ActiveStorage file cleanup in Integration Tests which is similar but slightly different than the existing docs for System Tests.
-
由 Rafael Mendonça França 提交于
This reverts commit 9f65d2a0, reversing changes made to 96684373. This broken a lot of tests.
-
由 Rafael França 提交于
Bump mysql2 version
-
由 Aaron Patterson 提交于
PERF: dedupe scanned route fragments
-
由 Aaron Patterson 提交于
PERF: symbolize ivar, to reduce dupes
-
由 utilum 提交于
Skip 0.4.8 and 0.4.9, which had [Compilation failures against MariaDB Connector/C 3.0.2](https://github.com/brianmario/mysql2/releases/tag/0.4.10).
-
- 15 2月, 2018 13 次提交
-
-
由 Kevin Robatel 提交于
-
由 Sam 提交于
I noticed this in my memory profiler report. ``` 153 "@default_url_options" 152 /home/sam/.rbenv/versions/2.5.0/lib/ruby/gems/2.5.0/gems/activesupport-5.1.4/lib/active_support/core_ext/class/attribute.rb:84 ``` 152 copies of the string `@default_url_options` are retained on the heap in Discourse post boot. Since this is just used for ivar lookups there is no need to use a string.
-
由 Arun Agrawal 提交于
Missing backquote, extra end keyword [ci skip]
-
由 Yauheni Dakuka 提交于
-
由 Sam 提交于
Per: https://bugs.ruby-lang.org/issues/13077 String @- will dedupe strings. This takes advantage of this by deduping route fragments that are full of duplication usually. For Discourse: Before: Total allocated: 207574305 bytes (2214916 objects) Total retained: 36470010 bytes (322194 objects) After Total allocated: 207556847 bytes (2214711 objects) Total retained: 36327973 bytes (318627 objects) <- object that GC can not collect So we save 3500 or so RVALUES this way, not the largest saving in the world, but worth it especially for large route files.
-
由 David Heinemeier Hansson 提交于
Add #create_or_find_by to lean on unique constraints
-
由 Rafael França 提交于
Use require_dependency inside Active Storage
-
由 Rafael Mendonça França 提交于
Add support for connection pooling on RedisCacheStore
-
由 Eugene Kenny 提交于
Active Storage is an engine which means its models, jobs and controllers are autoloaded by Rails rather than Ruby. Unfortunately this means it's subject to the same gotchas as applications, including this one: http://guides.rubyonrails.org/v5.1.4/autoloading_and_reloading_constants.html#when-constants-aren-t-missed-qualified-references On Ruby < 2.5, constants nested under classes can't be autoloaded by Rails if a top level constant already exists with the same name. To avoid clashing with constants defined in users' applications or gems, we can use `require_dependency` to ensure that the nested constants are loaded before they're used.
-
由 Rafael França 提交于
Introduce custom serializers to ActiveJob arguments
-
由 Rafael Mendonça França 提交于
-
由 Rafael Mendonça França 提交于
This will make easier to be backwards compatible when changing the serialization implementation.
-
由 Rafael Mendonça França 提交于
We can speed up things for the supported types by keeping the code in the way it was. We can also avoid to loop trough all serializers in the deserialization by trying to access the class already in the Hash. We could also speed up the custom serialization if we define the class that is going to be serialized when registering the serializers, but that will remove the possibility of defining a serialzer for a superclass and have the subclass serialized using it.
-