Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-actionpack-8.0 for 
openSUSE:Factory checked in at 2026-07-07 21:04:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-actionpack-8.0 (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-actionpack-8.0.new.1982 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-actionpack-8.0"

Tue Jul  7 21:04:52 2026 rev:6 rq:1364219 version:8.0.5

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/rubygem-actionpack-8.0/rubygem-actionpack-8.0.changes
    2025-10-10 17:13:55.084779238 +0200
+++ 
/work/SRC/openSUSE:Factory/.rubygem-actionpack-8.0.new.1982/rubygem-actionpack-8.0.changes
  2026-07-07 21:07:43.351676030 +0200
@@ -1,0 +2,6 @@
+Tue Jul  7 08:59:21 UTC 2026 - Aleksei Burlakov <[email protected]>
+
+- Update to version 8.0.5:
+  
https://rubyonrails.org/2026/3/24/Rails-Versions-8-0-5-and-8-1-3-have-been-released
 
+
+-------------------------------------------------------------------

Old:
----
  actionpack-8.0.3.gem

New:
----
  actionpack-8.0.5.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-actionpack-8.0.spec ++++++
--- /var/tmp/diff_new_pack.7RmUq9/_old  2026-07-07 21:07:43.891694652 +0200
+++ /var/tmp/diff_new_pack.7RmUq9/_new  2026-07-07 21:07:43.895694789 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-actionpack-8.0
 #
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,7 +24,7 @@
 #
 
 Name:           rubygem-actionpack-8.0
-Version:        8.0.3
+Version:        8.0.5
 Release:        0
 %define mod_name actionpack
 %define mod_full_name %{mod_name}-%{version}

++++++ actionpack-8.0.3.gem -> actionpack-8.0.5.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md    1980-01-02 01:00:00.000000000 +0100
+++ new/CHANGELOG.md    1980-01-02 01:00:00.000000000 +0100
@@ -1,3 +1,36 @@
+## Rails 8.0.5 (March 24, 2026) ##
+
+*   Add `config.action_controller.live_streaming_excluded_keys` to control 
execution state sharing in ActionController::Live.
+
+    When using ActionController::Live, actions are executed in a separate 
thread that shares
+    state from the parent thread. This new configuration allows applications 
to opt-out specific
+    state keys that should not be shared.
+
+    This is useful when streaming inside a `connected_to` block, where you may 
want
+    the streaming thread to use its own database connection context.
+
+    ```ruby
+    # config/application.rb
+    config.action_controller.live_streaming_excluded_keys = 
[:active_record_connected_to_stack]
+    ```
+
+    By default, all keys are shared.
+
+    *Eileen M. Uchitelle*
+
+
+## Rails 8.0.4.1 (March 23, 2026) ##
+
+*   No changes.
+
+
+## Rails 8.0.4 (October 28, 2025) ##
+
+*   Submit test requests using `as: :html` with `Content-Type: 
x-www-form-urlencoded`
+
+    *Sean Doyle*
+
+
 ## Rails 8.0.3 (September 22, 2025) ##
 
 *   URL helpers for engines mounted at the application root handle 
`SCRIPT_NAME` correctly.
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/abstract_controller/helpers.rb 
new/lib/abstract_controller/helpers.rb
--- old/lib/abstract_controller/helpers.rb      1980-01-02 01:00:00.000000000 
+0100
+++ new/lib/abstract_controller/helpers.rb      1980-01-02 01:00:00.000000000 
+0100
@@ -90,7 +90,7 @@
       #--
       # Implemented by Resolution#modules_for_helpers.
 
-      # :method: # all_helpers_from_path
+      # :method: all_helpers_from_path
       # :call-seq: all_helpers_from_path(path)
       #
       # Returns a list of helper names in a given path.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/action_controller/metal/live.rb 
new/lib/action_controller/metal/live.rb
--- old/lib/action_controller/metal/live.rb     1980-01-02 01:00:00.000000000 
+0100
+++ new/lib/action_controller/metal/live.rb     1980-01-02 01:00:00.000000000 
+0100
@@ -53,9 +53,50 @@
   #       response.headers["Last-Modified"] = Time.now.httpdate # Add this 
line if your Rack version is 2.2.x
   #       ...
   #     end
+  #
+  # ## Streaming and Execution State
+  #
+  # When streaming, the action is executed in a separate thread. By default, 
this thread
+  # shares execution state from the parent thread.
+  #
+  # You can configure which execution state keys should be excluded from being 
shared
+  # using the `config.action_controller.live_streaming_excluded_keys` 
configuration:
+  #
+  #   # config/application.rb
+  #   config.action_controller.live_streaming_excluded_keys = 
[:active_record_connected_to_stack]
+  #
+  # This is useful when using ActionController::Live inside a `connected_to` 
block. For example,
+  # if the parent request is reading from a replica using `connected_to(role: 
:reading)`, you may
+  # want the streaming thread to use its own connection context instead of 
inheriting the read-only
+  # context:
+  #
+  #   # Without configuration, streaming thread inherits read-only connection
+  #   ActiveRecord::Base.connected_to(role: :reading) do
+  #     @posts = Post.all
+  #     render stream: true # Streaming thread cannot write to database
+  #   end
+  #
+  #   # With configuration, streaming thread gets fresh connection context
+  #   # config.action_controller.live_streaming_excluded_keys = 
[:active_record_connected_to_stack]
+  #   ActiveRecord::Base.connected_to(role: :reading) do
+  #     @posts = Post.all
+  #     render stream: true # Streaming thread can write to database if needed
+  #   end
+  #
+  # Common keys you might want to exclude:
+  # - `:active_record_connected_to_stack` - Database connection routing and 
roles
+  # - `:active_record_prohibit_shard_swapping` - Shard swapping restrictions
+  #
+  # By default, no keys are excluded to maintain backward compatibility.
   module Live
     extend ActiveSupport::Concern
 
+    mattr_accessor :live_streaming_excluded_keys, default: []
+
+    included do
+      class_attribute :live_streaming_excluded_keys, instance_accessor: false, 
default: Live.live_streaming_excluded_keys
+    end
+
     module ClassMethods
       def make_response!(request)
         if (request.get_header("SERVER_PROTOCOL") || 
request.get_header("HTTP_VERSION")) == "HTTP/1.0"
@@ -282,7 +323,7 @@
           # Since we're processing the view in a different thread, copy the 
thread locals
           # from the main thread to the child thread. :'(
           locals.each { |k, v| t2[k] = v }
-          ActiveSupport::IsolatedExecutionState.share_with(t1)
+          ActiveSupport::IsolatedExecutionState.share_with(t1, except: 
self.class.live_streaming_excluded_keys)
 
           begin
             super(name)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/action_controller/railtie.rb 
new/lib/action_controller/railtie.rb
--- old/lib/action_controller/railtie.rb        1980-01-02 01:00:00.000000000 
+0100
+++ new/lib/action_controller/railtie.rb        1980-01-02 01:00:00.000000000 
+0100
@@ -31,6 +31,10 @@
       ActionController::Helpers.helpers_path = app.helpers_paths
     end
 
+    initializer "action_controller.live_streaming_excluded_keys" do |app|
+      ActionController::Live.live_streaming_excluded_keys = 
app.config.action_controller.live_streaming_excluded_keys
+    end
+
     initializer "action_controller.parameters_config" do |app|
       options = app.config.action_controller
 
@@ -80,6 +84,7 @@
           :action_on_unpermitted_parameters,
           :always_permitted_parameters,
           :wrap_parameters_by_default,
+          :live_streaming_excluded_keys
         )
 
         filtered_options.each do |k, v|
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/action_dispatch/middleware/debug_exceptions.rb 
new/lib/action_dispatch/middleware/debug_exceptions.rb
--- old/lib/action_dispatch/middleware/debug_exceptions.rb      1980-01-02 
01:00:00.000000000 +0100
+++ new/lib/action_dispatch/middleware/debug_exceptions.rb      1980-01-02 
01:00:00.000000000 +0100
@@ -65,7 +65,7 @@
             content_type = Mime[:text]
           end
 
-          if request.head?
+          if request.raw_request_method == "HEAD"
             render(wrapper.status_code, "", content_type)
           elsif api_request?(content_type)
             render_for_api_request(content_type, wrapper)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/action_dispatch/testing/integration.rb 
new/lib/action_dispatch/testing/integration.rb
--- old/lib/action_dispatch/testing/integration.rb      1980-01-02 
01:00:00.000000000 +0100
+++ new/lib/action_dispatch/testing/integration.rb      1980-01-02 
01:00:00.000000000 +0100
@@ -184,7 +184,7 @@
       # Returns `true` if the session is mimicking a secure HTTPS request.
       #
       #     if session.https?
-      #       ...
+      #       # ...
       #     end
       def https?
         @https
@@ -203,7 +203,7 @@
       # *   `env`: Additional env to pass, as a Hash. The headers will be 
merged into
       #     the Rack env hash.
       # *   `xhr`: Set to `true` if you want to make an Ajax request. Adds 
request
-      #     headers characteristic of XMLHttpRequest e.g. 
HTTP_X_REQUESTED_WITH. The
+      #     headers characteristic of `XMLHttpRequest`, e.g. 
`HTTP_X_REQUESTED_WITH`. The
       #     headers will be merged into the Rack env hash.
       # *   `as`: Used for encoding the request with different content type. 
Supports
       #     `:json` by default and will set the appropriate request headers. 
The
@@ -218,9 +218,10 @@
       # This method returns the response status, after performing the request.
       # Furthermore, if this method was called from an 
ActionDispatch::IntegrationTest
       # object, then that object's `@response` instance variable will point to 
a
-      # Response object which one can use to inspect the details of the 
response.
+      # ActionDispatch::TestResponse object which one can use to inspect the 
details of the response.
       #
       # Example:
+      #
       #     process :get, '/author', params: { since: 201501011400 }
       def process(method, path, params: nil, headers: nil, env: nil, xhr: 
false, as: nil)
         request_encoder = RequestEncoder.encoder(as)
@@ -621,7 +622,7 @@
   #         end
   #
   #         assert_response :success
-  #         assert_equal({ id: Article.last.id, title: "Ahoy!" }, 
response.parsed_body)
+  #         assert_equal({ "id" => Article.last.id, "title" => "Ahoy!" }, 
response.parsed_body)
   #       end
   #     end
   #
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/action_dispatch/testing/request_encoder.rb 
new/lib/action_dispatch/testing/request_encoder.rb
--- old/lib/action_dispatch/testing/request_encoder.rb  1980-01-02 
01:00:00.000000000 +0100
+++ new/lib/action_dispatch/testing/request_encoder.rb  1980-01-02 
01:00:00.000000000 +0100
@@ -3,6 +3,7 @@
 # :markup: markdown
 
 require "nokogiri"
+require "action_dispatch/http/mime_type"
 
 module ActionDispatch
   class RequestEncoder # :nodoc:
@@ -15,9 +16,9 @@
 
     @encoders = { identity: IdentityEncoder.new }
 
-    attr_reader :response_parser
+    attr_reader :response_parser, :content_type
 
-    def initialize(mime_name, param_encoder, response_parser)
+    def initialize(mime_name, param_encoder, response_parser, content_type)
       @mime = Mime[mime_name]
 
       unless @mime
@@ -27,10 +28,7 @@
 
       @response_parser = response_parser || -> body { body }
       @param_encoder   = param_encoder   || :"to_#{@mime.symbol}".to_proc
-    end
-
-    def content_type
-      @mime.to_s
+      @content_type    = content_type    || @mime.to_s
     end
 
     def accept_header
@@ -50,11 +48,13 @@
       @encoders[name] || @encoders[:identity]
     end
 
-    def self.register_encoder(mime_name, param_encoder: nil, response_parser: 
nil)
-      @encoders[mime_name] = new(mime_name, param_encoder, response_parser)
+    def self.register_encoder(mime_name, param_encoder: nil, response_parser: 
nil, content_type: nil)
+      @encoders[mime_name] = new(mime_name, param_encoder, response_parser, 
content_type)
     end
 
-    register_encoder :html, response_parser: -> body { 
Rails::Dom::Testing.html_document.parse(body) }
+    register_encoder :html, response_parser: -> body { 
Rails::Dom::Testing.html_document.parse(body) },
+                            param_encoder: -> param { param },
+                            content_type: Mime[:url_encoded_form].to_s
     register_encoder :json, response_parser: -> body { JSON.parse(body, 
object_class: ActiveSupport::HashWithIndifferentAccess) }
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/action_pack/gem_version.rb 
new/lib/action_pack/gem_version.rb
--- old/lib/action_pack/gem_version.rb  1980-01-02 01:00:00.000000000 +0100
+++ new/lib/action_pack/gem_version.rb  1980-01-02 01:00:00.000000000 +0100
@@ -11,7 +11,7 @@
   module VERSION
     MAJOR = 8
     MINOR = 0
-    TINY  = 3
+    TINY  = 5
     PRE   = nil
 
     STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        1980-01-02 01:00:00.000000000 +0100
+++ new/metadata        1980-01-02 01:00:00.000000000 +0100
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: actionpack
 version: !ruby/object:Gem::Version
-  version: 8.0.3
+  version: 8.0.5
 platform: ruby
 authors:
 - David Heinemeier Hansson
@@ -15,14 +15,14 @@
     requirements:
     - - '='
       - !ruby/object:Gem::Version
-        version: 8.0.3
+        version: 8.0.5
   type: :runtime
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - '='
       - !ruby/object:Gem::Version
-        version: 8.0.3
+        version: 8.0.5
 - !ruby/object:Gem::Dependency
   name: nokogiri
   requirement: !ruby/object:Gem::Requirement
@@ -127,28 +127,28 @@
     requirements:
     - - '='
       - !ruby/object:Gem::Version
-        version: 8.0.3
+        version: 8.0.5
   type: :runtime
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - '='
       - !ruby/object:Gem::Version
-        version: 8.0.3
+        version: 8.0.5
 - !ruby/object:Gem::Dependency
   name: activemodel
   requirement: !ruby/object:Gem::Requirement
     requirements:
     - - '='
       - !ruby/object:Gem::Version
-        version: 8.0.3
+        version: 8.0.5
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - '='
       - !ruby/object:Gem::Version
-        version: 8.0.3
+        version: 8.0.5
 description: Web apps on Rails. Simple, battle-tested conventions for building 
and
   testing MVC web applications. Works with any Rack-compatible server.
 email: [email protected]
@@ -349,10 +349,10 @@
 - MIT
 metadata:
   bug_tracker_uri: https://github.com/rails/rails/issues
-  changelog_uri: 
https://github.com/rails/rails/blob/v8.0.3/actionpack/CHANGELOG.md
-  documentation_uri: https://api.rubyonrails.org/v8.0.3/
+  changelog_uri: 
https://github.com/rails/rails/blob/v8.0.5/actionpack/CHANGELOG.md
+  documentation_uri: https://api.rubyonrails.org/v8.0.5/
   mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
-  source_code_uri: https://github.com/rails/rails/tree/v8.0.3/actionpack
+  source_code_uri: https://github.com/rails/rails/tree/v8.0.5/actionpack
   rubygems_mfa_required: 'true'
 rdoc_options: []
 require_paths:
@@ -369,7 +369,7 @@
       version: '0'
 requirements:
 - none
-rubygems_version: 3.6.9
+rubygems_version: 4.0.6
 specification_version: 4
 summary: Web-flow and rendering framework putting the VC in MVC (part of 
Rails).
 test_files: []

Reply via email to