Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

debug test connection pool starts reaper in fork #2

Closed
wants to merge 428 commits into from

Conversation

jjb
Copy link
Owner

@jjb jjb commented May 23, 2024

  • Improve STI documentation
  • Replace :disabled with nil
  • Preserve --asset-pipeline when running app:update
  • Add more examples to #in_order_of [ci-skip]
  • Document autosave validation behavior
  • [ci skip] fixed rubocop spacing issue
  • simplify in_order_of documentation
  • Add a basic railtie integration test for Active Storage
  • Enable Hash#compact_blank inside ActiveSupport::LogSubscriber
  • Ensure image_processing is installed with Trix
  • Fix destroy_async job for owners with composite primary keys
  • Bump mysql2 to fix build error with mysql-client 8.3
  • Emit deprecation warning about inverse_of inference only for valid reflections
  • Remove node_modules from the final image
  • Fix an error for apply_rubocop_autocorrect_after_generate! with --pretend
  • Don't preload Selenium browser when remote
  • Fix "no anonymous block parameter" in ruby 3.1
  • Restore to: option with an implicit controller
  • Wrap YJIT guard clause in parentheses
  • Remove rubocop and lint workflows
  • Add node and yarn to devcontainer when creating a project with Javascript
  • test: fix flaky schema dump test to prefer YAML to Marshal
  • ruby-head: handle unused block warnings
  • TestCase#create_fixtures no longer takes a block
  • Change devcontainer.json to forward used ports for the project
  • Pin sqlite3 version in bug_report_templates
  • Correct typo for ActiveJob::Enqueuing::ClassMethods doc
  • Allow sqlite3 to float to version 2
  • Fix unused block warnings for template methods
  • Remove outdated mathn related test
  • Action View Caching code sample syntax [ci skip]
  • Add print styles to Rails guides (New print styles and generator to add to build rails/rails#51458)
  • test: update karma npm from 3.1.4 to 6.4.2
  • Add save_and_open_page helper to IntegrationTest
  • Don't silently execute statements on migrations when they can't be reversed
  • Remove unused variable assignment in test
  • Action View Tests: Use #with_routing helper
  • Revert "Don't silently execute statements on migrations when they can't be reversed"
  • Strict loading using :n_plus_one_only does not eagerly load child associations.
  • Fix some more ignored block warnings
  • Arel: only wrap SELECT statements in UNION if they involve ORDER BY, LIMIT or OFFSET
  • Fix indentation on save_and_open_page tests
  • Fix typo in page_dump_helper.rb
  • [Fix Missing view template error page example does not account for nested controller paths rails/rails#51095] Missing template error page showing incorrect view path example for nested controller path
  • Refactor code to make it more clear
  • Copy edit documentation
  • docs: Fix ActiveSupport::TimeWithZone#change example [skip ci]
  • Filter internal frames in deprecation warnings for Ruby 3.4
  • Encourage #lease_connection over #connection on AR model #inspect without connection
  • Fix ActiveSupport configurations deprecations
  • SerializedAttributeTest: use decorate_attribute
  • Update comments for helper method generation
  • Update builder doc links to point to the rails repo [ci skip]
  • Remove reference to BlankSlate
  • Fix Mime::Type.parse for HTTP Accept with parameters
  • Improve migration.rb documentation consistency
  • Deprecate ActiveSupport::ProxyObject
  • Let Action Cable's autoloader ignore the version file
  • Use Module#include rather than prepend since we don't need prepend semantics here and include leads to faster method lookups.
  • Fix ActionView backtrace filtering on Ruby 3.4+
  • Ensure pre-7.1 migrations use legacy index names when using rename_table
  • Support hexBinary format in XML
  • Rename method to keep it consistent with others parse* versions
  • Join association built from string join should not retry
  • Update guides: Replace filter with action callback
  • Fix PostgreSQL Cidr#change? when changed address prefix. Fix [ActiveRecord] PostgreSQL Adapter skips update on CIDR column when only netmask is changed rails/rails#51582
  • Document the use of nopush for asset tags
  • Use Ruby's official documentation
  • Upgrade devcontainer to use 3.3.1
  • Fix building guides outside ./guides directory
  • Create preview tarball from directory
  • Remove outdated comment
  • Fix Ruby 3.4 internal frame cleaner test
  • Fix count queries on includes+references for models with composite primary keys
  • Add more gem docs in Rails Application Templates guide
  • add navbar highlighting to guides
  • Skip selenium-webdriver version 4.20.0
  • Fix Rake :preview_docs tarball
  • Resolve deprecation warning in latest selenium-webdriver
  • Allow assertionless tests to be reported
  • Unsilence BacktraceCleaner with BACKTRACE without removing silencers
  • Upgrade the docker-login and checkout action versions
  • Update production.rb template to provide example to exclude healthcheck from force_ssl redirect
  • Fix ActiveSupport::TestCase being loaded too early
  • No need to recommend spring any more as a common option
  • Rails 8 will target Ruby 3.3+ only for new apps
  • Usage not common enough to warrant top-line recommendation
  • Raise when a block is passed to ActiveRecord::Relation#with
  • Remove unnecessary to_a conversion for readonly_attributes method call
  • Add period to end of comment sentences in env templates for consistency ([ci skip]Add period to end of comment sentences for consistency rails/rails#51677)
  • Add a Date decoder to the pg adapter to type cast dates at the connection level
  • Fix minor typo in ActiveSupport::ProxyObject deprecation logs (Fix minor typo in ActiveSupport::ProxyObject deprecation logs rails/rails#51688)
  • Add require: "debug/prelude" after debug's Gemfile entry
  • Deduplicate watched filenames in FileUpdateChecker
  • Update Doc for ActiveRecord::RecordNotSaved to be consistent
  • Replace — with : in instrumentation subheadings
  • Revert "Rails 8 will target Ruby 3.3+ only for new apps"
  • Remove configuration to control what we do with tests without assertions
  • Document buildkite/docs-preview pipeline
  • Ignore tarball from rake preview_docs
  • Fix tests without assertions in the framework
  • Add rake guides:lint task to raise error on broken anchor links
  • Avoid seed data execution in CI by replacing db:setup with db:test:prepare
  • docs: Update FormHelper comments to use form_with instead of form_for
  • Remove deprecated config.active_storage.replace_on_assign_to_many
  • Remove deprecated config.active_storage.silence_invalid_content_types_warning
  • Remove deprecated support for the pre-Ruby 2.4 behavior of to_time
  • Remove deprecated :pool_size and :pool_timeout options for the cache storage
  • Remove deprecated support for config.active_support.cache_format_version = 6.1
  • Remove deprecated constants ActiveSupport::LogSubscriber::CLEAR and ActiveSupport::LogSubscriber::BOLD
  • Remove deprecated support to bolding log text with positional boolean in ActiveSupport::LogSubscriber#color
  • Remove deprecated config.active_support.disable_to_s_conversion
  • Remove deprecated config.active_support.remove_deprecated_time_with_zone_name
  • Remove deprecated config.active_support.use_rfc4122_namespaced_uuids
  • Remove deprecated support to passing Dalli::Client instances to MemCacheStore
  • Remove deprecated #to_default_s from Array, Date, DateTime and Time
  • Update deprecator horizon for 7.3
  • Remove deprecated SafeBuffer#clone_empty
  • Remove deprecated ActiveSupport::Deprecation delegation to instance
  • Remove deprecated support to call the following methods without passing a deprecator
  • Remove deprecated ActiveSupport::Notifications::Event#children and ActiveSupport::Notifications::Event#parent_of?
  • Remove unnecessary deprecation silencing in cache_store_compression_behavior.rb
  • Upgrade prism
  • Remove deprecation on calling assert_equal with nil
  • Remove deprecated Rails.application.secrets
  • Remove deprecated Rails.config.enable_dependency_loading
  • Remove deprecated find_cmd_and_exec console helper
  • Remove deprecated Rails::Generators::Testing::Behaviour
  • Pass validate(_check)_constraint through change_table
  • Register Rails console commands/helpers with its latest extension APIs
  • Document .devcontainer to the file/folder structure of new application
  • Add support for recursive CTE in Active Record
  • Fix typo from Changelog [ci skip]
  • WithChain does not exist in the codebase
  • Don't cast stale_state to String
  • Update guides/source/getting_started.md
  • Turn app:update Rake tasks into a Command
  • Inline AppUpdater into App::UpdateCommand
  • Pass App::UpdateCommand options to AppGenerator
  • Add runtime options from Thor::Actions to app:update
  • Don't mess with Minitest unless RAILS_ENV is set
  • Remove extra line generation from devecontainer compose.yaml
  • Fix: guides styling issue on light mode
  • Eliminate missed lease_connection calls
  • Use symbols as keys for _reflections
  • Update Getting Start With Rails guide to account for Dev Containers
  • Fix documentation
  • Fix typo in configuring guide
  • Support duration in ActiveSupport::XmlMini
  • [FIX] Remove warning: literal string will be frozen in the future from render_test
  • Fix console_test to work with both IRB's RelineInputMethod and StdioInputMethod
  • Fix config.read_encrypted_secrets deprecation warning quoting
  • Avoid allocating a column_type Hash when unnecessary
  • [FIX] Sqlite3 Should create db for missing parent directories as well
  • Devcontainer: Use SQLite3 feature.
  • Improve db_system_change_generator_test.rb
  • Avoid setting fixed app name in console prompt
  • Add ENV["SKIP_TEST_DATABASE_TRUNCATE"] flag to speed up multi-process test runs (Add ENV["SKIP_TEST_DATABASE_TRUNCATE"] flag to speed up multi-process test runs rails/rails#51686)
  • Explain that the default Dockerfile is intended for production
  • Simplify ActiveRecord::Result#hash_rows
  • Revise the autoloading guide for middleware and friends
  • Reduce allocations in BelongsToAssociation#replace_keys
  • Remove extraneous array wrapping
  • Continue including Rails::ConsoleMethods to IRB's internal
  • Warn about changing query_constraints: behavior
  • Replace allocations count by GC time in request logs
  • Defer route drawing to the first request, or when url_helpers called.
  • Active Job: Correctly use the desired test adapter in tests
  • Add index_errors: :nested_attributes_order mode
  • Fix test
  • Fix .with_connection to not set current scope
  • Example requires delimiter
  • Remove debug require from guides generator
  • Fix test runner --fail-fast test flake
  • Fix ActiveRecord::Relation#touch_all with custom attribute aliased as attribute for update
  • Add support for :if_not_exists and :force options to create_schema
  • This isnt needed as a default (Autocorrecting with rubocop by default is not proportionate rails/rails#51782)
  • Fix RuboCop autocorrect for Windows
  • Remove package litter after each install to shrink layer sizes (Remove package litter after each install to shrink layer sizes rails/rails#51792)
  • Show how to use the Dockerfile directly
  • Correct typo in activerecord changelog [ci skip]
  • Support touch_all in batches
  • Refactor ActiveRecord::SignedId to not rely on relation delegation
  • Do not trigger devcontainer tests on pull requests
  • Refactor ActiveRecord::TokenFor to not rely on relation delegation
  • Fix: batch test assertion order
  • Enable Lint/Debugger
  • Move ActiveRecord::Base.delete in Relation
  • Move ActiveRecord::Base.destroy in Relation
  • Move ActiveRecord::Base.insert in Relation
  • Suppress RuboCop output when there are no offenses in code generation
  • Use foreign_key option for destroy_async test models
  • Development of Rails 8.0 starts now
  • Reapply "Rails 8 will target Ruby 3.3+ only for new apps"
  • Clean CHANGELOG for 8.0
  • Add name to DevContainer compose file
  • Fix rubocop
  • Remove support for oracle, sqlserver and JRuby specific database adapters from the new and db:system:change commands. The supported options are sqlite3, mysql, postgresql and trilogy.
  • Refactoring Database generators
  • Point user to devcontainer for containerized dev environment
  • This will be released in 7.2
  • Merge pull request Revert "Merge pull request #50941 from andrewn617/actionable-cli" rails/rails#51766 from Shopify/revert-actionable-errors-retry
  • Add Highlights section in the Rails 7.1 release notes
  • Remove jruby and oracle related gems from Gemfile
  • Change BatchEnumerator#destroy_all to return the total number of affected rows
  • Fix PostgreSQL Cidr#change?: NoMethodError: undefined method prefix for nil
  • Add Kamal by default to Rails 8 (Add Kamal by default to Rails 8 rails/rails#51798)
  • Only serialize associations that were loaded
  • Eliminate lease_connection call in cached_find_by
  • Appease the linter
  • Remove deprecated problem from local dev guide
  • Memoize queue_adapter_for_test
  • Fix outdated Gemfile.lock
  • Add regression test for memoized queue adapter
  • This will be released in 7.2, not 8
  • Install kamal as a development gem
  • Remove support for SQLServerAdapter, OracleAdapter and JBDC adapters in tests
  • Remove Oracle, SQLServer and Jbdc templates
  • Don't require Kamal
  • Refactor change generator database implementation
  • Remove default .env from Kamal and just rely on .env.erb (Closes procfile causes failure on Rails 8.0 rails/rails#51829)
  • Pass options to write_entry in handle_expired_entry method
  • Missing CR for style
  • Fix console tests
  • Remove 7.2 release changes from Rails 8.0 release note
  • Point 7-2-stable branch CHANGELOGS in rails 7-2 release note
  • Update link to i18n gem repository [ci-skip]
  • Add active_record.postgresql_adapter_decode_dates to toggle automatic decoding of dates column with the PostgresqlAdapter.
  • By definition, new apps wont have any deprecations to worry about. So dont expose those controls for new apps by default (Don't expose deprecation controls for new apps rails/rails#51831)
  • Revert "Pin minitest version to 5.21"
  • Allow test command invocations to exit failure
  • Clarify contributing doc to not ping maintainers
  • Upgrade Trix to 2.1.1 to fix [CVE-2024-34341][1]
  • Don’t create storage/ directory if not needed
  • Address Layout/IndentationWidth cop offenses
  • Restore unused block warnings condition for Ruby 3.4
  • Add rubocop and GitHub Actions to plugin generator
  • Improve Rails console helper methods' descriptions
  • Don’t configure Kamal storage volume if not needed
  • Fix exception raised from template should not show compiled code
  • ActiveRecord -> Active Record
  • Temporarily fix multi-paragraph definition lists
  • Make public method for schema_cache_ignored_tables?
  • Add test and fix changelog for schema_cache_ignored_table?
  • Fix typo
  • Document the transaction.active_record event
  • Revert "Merge pull request [FIX] Fix Activesupport json encode for hash with duplicate keys rails/rails#50489 from maniSHarma7575/50481-fix-activesupport-json-encode"
  • Upgrade rdoc to get Allow rich definition list labels for Markdown ruby/rdoc#1096
  • fix Inconsistency in Documentation: Mismatch Between revert Code Example and Subsequent Steps rails/rails#50189 docs section reverting previous migrations mismatch code example
  • Use rails fork for rdoc gem
  • [Fix Association with the same name as the demodularized model name is incorrectly inferred rails/rails#51720] Infer association klass as top level if model has same demodularized name
  • chore(deps-dev): update eslint from 4.3.0 to 8.40.0
  • Revert "Merge pull request [ci skip] Add warning about deduplication of after_xxx_commit shortcuts rails/rails#51184 from ConfusedVorlon/document_after_commit_deduplication"
  • Revert RuboCop workaround
  • chore: update Brewfile per renaming postgresql Formula
  • update sqlite3 adapter tests to accept error messages from v3.46.0
  • Enable Rails minitest plugin in our rake tasks
  • Point to the right executable when warning about --profile
  • chore: remove webpack from yarn dependencies in Rails dev
  • Look up route from requirements (Look up route from requirements rails/rails#51850)
  • timeouts for debugging

Motivation / Background

This Pull Request has been created because [REPLACE ME]

Detail

This Pull Request changes [REPLACE ME]

Additional information

Checklist

Before submitting the PR make sure the following are checked:

  • This Pull Request is related to one change. Unrelated changes should be opened in separate PRs.
  • Commit message has a detailed description of what changed and why. If this PR fixes a related issue include it in the commit message. Ex: [Fix #issue-number]
  • Tests are added or updated if you fix a bug or add a feature.
  • CHANGELOG files are updated for the changed libraries if there is a behavior change or additional feature. Minor bug fixes and documentation changes should not be included.

skipkayhil and others added 30 commits May 1, 2024 12:57
…_with-in-form_helper

docs: Update FormHelper comments to use `form_with` instead of `form_for` [ci skip]
When `to_time_preserves_timezone` was set to `false`, `to_time`
would return a `Time` object with local timezone. This behavior
has been removed.
This change was never released on 7.1, so we can't remove it on 7.2.
…ng a deprecator

  - `deprecate`
  - `deprecate_constant`
  - `ActiveSupport::Deprecation::DeprecatedObjectProxy.new`
  - `ActiveSupport::Deprecation::DeprecatedInstanceVariableProxy.new`
  - `ActiveSupport::Deprecation::DeprecatedConstantProxy.new`
  - `assert_deprecated`
  - `assert_not_deprecated`
  - `collect_deprecations`
…`ActiveSupport::Notifications::Event#parent_of?`
…tion-in-ci

Avoid seed data execution in CI by replacing `db:setup` with `db:test:prepare`
…e_table

Pass validate(_check)_constraint through change_table
This will greatly increase the visibility of Rails console commands and helpers,
and stop rely on IRB's internal components.

Extension API reference: https://github.com/ruby/irb/blob/master/EXTEND_IRB.md

And because we need to create new classes to use the new APIs, I also
moved all the IRB-specific code to a new file, `irb_console.rb`.

Use IRB.conf[:BACKTRACE_FILTER] for backtrace filtering in console

This change uses the new `IRB.conf[:BACKTRACE_FILTER]` to inject the backtrace
filtering logic into IRB. This avoids the need to patch IRB's internal
WorkSpace class.

Update changelog
eileencodes and others added 29 commits May 21, 2024 16:32
…gelog-for-51878

Add test and fix changelog for `schema_cache_ignored_table?`
…record

Document the transaction.active_record event
…activesupport-json-encode"

This reverts commit 7b9e9ee, reversing
changes made to 590a675.

Reason: rails#50489 (comment)
Temporarily fix multi-paragraph definition lists [ci skip]
This allow us to actually get a working gem from github.
…atch-between-revert-code-example-and-subsequent-steps

Adjusted an example to align with the documentation section on reversing a previous migration.
…me-as-demodularized-model-name

[Fix rails#51720] Infer association klass as top level if model has same demodularized name
Also update eslint-plugin-import from 2.27.5 to 2.29.0.

Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
…fter_commit_deduplication"

This reverts commit 2abee30, reversing
changes made to e34a0ee.

A warning on each method is excessive and the warning should already be covered under the guide:
https://edgeguides.rubyonrails.org/active_record_callbacks.html#transaction-callbacks
Revert "Merge pull request rails#51184 from ConfusedVorlon/document_after_commit_deduplication"
Was done in 3e08223 to work around a RuboCop bug.
The newest version has this fixed.
postgresql was renamed to postgresql@14 in the Homebrew upstream
and now postgresql@16 is the latest stable, so we can use
postgresql@16 in the development environment.

cf.
Homebrew/homebrew-core@8060df9

Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
Upstream sqlite updated the error messages to be more descriptive
starting in v3.46.0. Where the error message might look like this in
earlier versions:

    no such column: non_existent

in 3.46.0 it looks like:

    no such column: "non_existent" - should this be a string literal in single-quotes?

The tests have been updated to accept either style of message.

The sqlite3-ruby gem will release a version with this vendored version
shortly, see sparklemotion/sqlite3-ruby#536
chore: update Brewfile per renaming postgresql Formula
…to-8.40.0

chore(deps-dev): update eslint from 4.19.1 to 8.40.0
This dependency was originally introduced in PR 33079 in
Rails 6.0 (2018).

Follows up PR 43172, which replaced webpacker 6 with
jsbundling-rails in Rails 7.0 (2021).

Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
…lite3-test-messages

update sqlite3 adapter tests to accept error messages from v3.46.0
chore: remove webpack from yarn dependencies in Rails dev
Add rubocop and GitHub Actions to plugin generator
* Lookup route from requirements

* Add docs

* Strings instead of symbols

S

* Update actionpack/lib/action_dispatch/routing/route_set.rb

Co-authored-by: Rafael Mendonça França <rafael@franca.dev>

* Update actionpack/lib/action_dispatch/routing/route_set.rb

Co-authored-by: Rafael Mendonça França <rafael@franca.dev>

* Update actionpack/lib/action_dispatch/routing/route_set.rb

Co-authored-by: Rafael Mendonça França <rafael@franca.dev>

* Update actionpack/lib/action_dispatch/routing/route_set.rb

Co-authored-by: Rafael Mendonça França <rafael@franca.dev>

---------

Co-authored-by: Andy Waite <andyw8@users.noreply.github.com>
Co-authored-by: Rafael Mendonça França <rafael@franca.dev>
@jjb jjb closed this May 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment