Skip to content

Bump railties, activemodel, activerecord, actionpack, actionmailer, actionview and activesupport - #741

Merged
andrew merged 1 commit into
mainfrom
dependabot/bundler/multi-8ccaf0b280
Nov 4, 2026
Merged

andrew merged 1 commit into
mainfrom
dependabot/bundler/multi-8ccaf0b280

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 4, 2026

Copy link
Copy Markdown
Contributor

Bumps railties, activemodel, activerecord, actionpack, actionmailer, actionview and activesupport. These dependencies needed to be updated together.
Updates railties from 8.1.4 to 8.1.4.1

Release notes

Sourced from railties's releases.

8.1.4.1

Active Support

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Active Model

  • No changes.

Active Record

  • No changes.

Action View

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

... (truncated)

Changelog

Sourced from railties's changelog.

Rails 8.1.4.1 (November 03, 2026)

  • No changes.
Commits
  • 3f290b7 Preparing for 8.1.4.1 release
  • 468aa9a Ship an ImageMagick security policy for every MiniMagick process
  • 3b1f262 Restrict the formats ffmpeg and ffprobe may open
  • See full diff in compare view

Updates activemodel from 8.1.4 to 8.1.4.1

Release notes

Sourced from activemodel's releases.

8.1.4.1

Active Support

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Active Model

  • No changes.

Active Record

  • No changes.

Action View

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

... (truncated)

Changelog

Sourced from activemodel's changelog.

Rails 8.1.4.1 (November 03, 2026)

  • No changes.
Commits

Updates activerecord from 8.1.4 to 8.1.4.1

Release notes

Sourced from activerecord's releases.

8.1.4.1

Active Support

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Active Model

  • No changes.

Active Record

  • No changes.

Action View

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

... (truncated)

Changelog

Sourced from activerecord's changelog.

Rails 8.1.4.1 (November 03, 2026)

  • No changes.
Commits

Updates actionpack from 8.1.4 to 8.1.4.1

Release notes

Sourced from actionpack's releases.

8.1.4.1

Active Support

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Active Model

  • No changes.

Active Record

  • No changes.

Action View

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

... (truncated)

Changelog

Sourced from actionpack's changelog.

Rails 8.1.4.1 (November 03, 2026)

  • Apply config.action_dispatch.cookies_same_site_protection to every session store.

    ActionDispatch::Session::CacheStore, MemCacheStore and third-party stores built on AbstractStore or the session mixins sent session cookies with no SameSite attribute. Only CookieStore applied the configured default.

    [GHSA-gmj8-hvj3-49mw]

    Jean Boussier

  • Prevent ActionController::Live streams from blocking when a full buffer is closed or aborted.

    [GHSA-rwvh-fw6r-pwvp]

    Jeremy Daer

  • Set and extend the Vary header for rendered responses according to the request headers used in format negotiation.

    Vary: Accept was only added when the request carried a usable Accept header. A response to a request without one, negotiated to HTML or JavaScript, could be stored by a shared cache and served to later clients that requested a different representation.

    Responses now vary on Accept and X-Requested-With whenever the format is not given by the URL. XHR requests without Accept also vary on Content-Type, which Rails uses as a legacy format fallback. When config.action_dispatch.ignore_accept_header is enabled, responses vary only on X-Requested-With.

    These fields are appended to an existing Vary value without duplicating fields case-insensitively. Vary: * remains unchanged.

    [GHSA-r9jg-fmfx-2gv6]

    Jeremy Daer

  • Skip writing a CacheStore session that another request deleted while this one ran.

    A request that loaded a session from ActionDispatch::Session::CacheStore wrote it back when it finished, even after a concurrent reset_session or a server-side delete had removed it, so the old session ID worked again.

    [GHSA-2586-8ghr-69fj]

... (truncated)

Commits
  • 3f290b7 Preparing for 8.1.4.1 release
  • 2d9f502 Apply cookies_same_site_protection to every session store
  • ccbfc09 Avoid blocking Live buffer termination
  • 7a955ca Vary rendered responses by negotiation headers
  • d479192 Skip writing a CacheStore session deleted mid-request
  • 849a6c3 Don't write upgraded cookies to a response that skips the session
  • 2a01a5a Detect conflicts in Forwarded and X-Forwarded-For in ActionDispatch::RemoteIp
  • 8ba746e Return self from Parameters#each_key with a block
  • See full diff in compare view

Updates actionmailer from 8.1.4 to 8.1.4.1

Release notes

Sourced from actionmailer's releases.

8.1.4.1

Active Support

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Active Model

  • No changes.

Active Record

  • No changes.

Action View

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

... (truncated)

Changelog

Sourced from actionmailer's changelog.

Rails 8.1.4.1 (November 03, 2026)

  • No changes.
Commits

Updates actionview from 8.1.4 to 8.1.4.1

Release notes

Sourced from actionview's releases.

8.1.4.1

Active Support

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Active Model

  • No changes.

Active Record

  • No changes.

Action View

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

... (truncated)

Changelog

Sourced from actionview's changelog.

Rails 8.1.4.1 (November 03, 2026)

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

  • Fix strip_tags to encode " and ' in its output.

    strip_tags returns an html_safe string, but was not encoding quotation marks. The method now encodes all five HTML-significant characters (&, <, >, ", '), consistent with the existing html_safe convention.

    Output used outside HTML, such as in a text template or JSON, now contains &quot; and &[#39](https://github.com/rails/rails/issues/39); where it contained " and '. CGI.unescapeHTML decodes them.

    [GHSA-rq8q-p985-fjq7]

    Mike Dalessio

  • Escape the matched phrase before substituting it into highlight's :highlighter.

    A match was copied into each \1 of the highlighter as it appeared in the sanitized text, which keeps " and ' as they are, so a match containing a quote ended a quoted attribute value such as the documented '<a href="search?q=\1">\1</a>' and added attributes of its own. Each substituted group now goes through ERB::Util.html_escape_once, so quotes in a match render as &quot; and &[#39](https://github.com/rails/rails/issues/39);. Only the numbered placeholders \0 to \9 are expanded, and a match never replaces the > that closes a tag.

    [GHSA-v6rj-xm57-3p59]

    Jeremy Daer

  • Require rails-html-sanitizer 1.7.2 or later.

    With the HTML5 sanitizer, Nokogiri before 1.19.5 left < and > unescaped in attribute values. highlight and simple_format, which edit the sanitized HTML as a string, could then turn markup inside an attribute value into live elements. rails-html-sanitizer 1.7.2 requires

... (truncated)

Commits
  • 3f290b7 Preparing for 8.1.4.1 release
  • 9190210 Skip tag attribute names that are blank once converted to a string
  • 568b19c Fix strip_tags to encode " and ' in its output
  • 0693819 Escape the phrase substituted into highlight's :highlighter
  • adc3a32 Require rails-html-sanitizer 1.7.2 or later
  • See full diff in compare view

Updates activesupport from 8.1.4 to 8.1.4.1

Release notes

Sourced from activesupport's releases.

8.1.4.1

Active Support

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Active Model

  • No changes.

Active Record

  • No changes.

Action View

  • Skip attribute names in tag helpers that are blank once converted to a string.

    A Symbol such as :" " is not blank, because Symbol#blank? is Symbol#empty?, so it reached the escaping step and produced an attribute with no name. The asset helpers symbolize their keys, so an ordinary String key reached the same place.

    [GHSA-68p9-83h6-5wpj]

    Mike Dalessio

... (truncated)

Changelog

Sourced from activesupport's changelog.

Rails 8.1.4.1 (November 03, 2026)

  • ActiveSupport::MessagePack no longer deserializes an unsafe ActiveSupport::SafeBuffer as html_safe.

    A SafeBuffer that was no longer html_safe?, for example after an in-place gsub!, was deserialized as an html_safe SafeBuffer. It is now serialized with an unsafe marker and deserialized as a String. Earlier versions of Rails cannot read an unsafe buffer serialized this way.

    [GHSA-2w9f-fxwj-w2qf]

    Jean Boussier

  • ActiveSupport::Inflector#safe_constantize matches the constant name in a LoadError message as a literal string instead of building a Regexp from it.

    The name's segments were interpolated unescaped into the pattern, so input that reaches safe_constantize, such as the channel identifier in an Action Cable subscribe command, chose the source passed to the regexp compiler.

    [GHSA-8474-xrp6-wh69]

    Jeremy Daer

Commits
  • 3f290b7 Preparing for 8.1.4.1 release
  • 4ca0906 ActiveSupport::MessagePack preserve SafeBuffer html_safe status
  • 95aa9e4 Avoid dynamic regexp in safe_constantize LoadError handling
  • See full diff in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

…ctionview and activesupport

Bumps [railties](https://github.com/rails/rails), [activemodel](https://github.com/rails/rails), [activerecord](https://github.com/rails/rails), [actionpack](https://github.com/rails/rails), [actionmailer](https://github.com/rails/rails), [actionview](https://github.com/rails/rails) and [activesupport](https://github.com/rails/rails). These dependencies needed to be updated together.

Updates `railties` from 8.1.4 to 8.1.4.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.4.1/railties/CHANGELOG.md)
- [Commits](rails/rails@v8.1.4...v8.1.4.1)

Updates `activemodel` from 8.1.4 to 8.1.4.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.4.1/activemodel/CHANGELOG.md)
- [Commits](rails/rails@v8.1.4...v8.1.4.1)

Updates `activerecord` from 8.1.4 to 8.1.4.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.4.1/activerecord/CHANGELOG.md)
- [Commits](rails/rails@v8.1.4...v8.1.4.1)

Updates `actionpack` from 8.1.4 to 8.1.4.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.4.1/actionpack/CHANGELOG.md)
- [Commits](rails/rails@v8.1.4...v8.1.4.1)

Updates `actionmailer` from 8.1.4 to 8.1.4.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.4.1/actionmailer/CHANGELOG.md)
- [Commits](rails/rails@v8.1.4...v8.1.4.1)

Updates `actionview` from 8.1.4 to 8.1.4.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.4.1/actionview/CHANGELOG.md)
- [Commits](rails/rails@v8.1.4...v8.1.4.1)

Updates `activesupport` from 8.1.4 to 8.1.4.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.4.1/activesupport/CHANGELOG.md)
- [Commits](rails/rails@v8.1.4...v8.1.4.1)

---
updated-dependencies:
- dependency-name: railties
  dependency-version: 8.1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: activemodel
  dependency-version: 8.1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: activerecord
  dependency-version: 8.1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: actionpack
  dependency-version: 8.1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: actionmailer
  dependency-version: 8.1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: actionview
  dependency-version: 8.1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: activesupport
  dependency-version: 8.1.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file ruby Pull requests that update Ruby code labels Nov 4, 2026
@andrew
andrew merged commit f08ad14 into main Nov 4, 2026
4 checks passed
@andrew
andrew deleted the dependabot/bundler/multi-8ccaf0b280 branch November 4, 2026 08:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file ruby Pull requests that update Ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant