Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions content/blog/20261026_fluentd-v1.20.1-has-been-released.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Fluentd v1.20.1 has been released

Hi users!

We released v1.20.1 on October 26, 2026.
ChangeLog is [here](https://github.com/fluent/fluentd/blob/master/CHANGELOG.md#release-v1201---20261026).

This release is a maintenance release for the v1.20 series.
It removes `yajl-ruby` from the runtime dependencies of Fluentd, so that Fluentd can be installed on Ruby 4.1.

<div markdown="span" class="alert alert-danger" role="alert">
<b>Note for plugin developers and users:</b>
<p>
Fluentd no longer installs <code>yajl-ruby</code>.
A plugin that uses <code>require 'yajl'</code> without declaring <code>yajl-ruby</code> in its gemspec fails to load.
Please see the "yajl-ruby is no longer a dependency" section below.
</p>
</div>

## yajl-ruby is no longer a dependency

In the v1.20.0 announcement, we said that Fluentd keeps `yajl-ruby` as a dependency for a while.
We kept it because some third-party plugins `require 'yajl'` without declaring it in their gemspec.

However, `yajl-ruby` cannot be built on Ruby 4.1, which is under development.
The gemspec of Fluentd v1.20.0 adds the dependency only for Ruby 4.0 or earlier.
This condition is evaluated only when the gem is built, so the released gem always depends on `yajl-ruby`.
As a result, `gem install fluentd` fails on Ruby 4.1.

Fluentd itself has not used `yajl-ruby` since v1.20.0.
So we removed it from the dependencies in this release. ([#5574](https://github.com/fluent/fluentd/pull/5574))

### For plugin developers

If your plugin uses `require 'yajl'`, please migrate to the `json` gem.
If you keep using `yajl-ruby`, please add it to the dependencies of your gemspec.

```ruby
spec.add_runtime_dependency("yajl-ruby", "~> 1.4")
```

Note that `yajl-ruby` cannot be installed on Ruby 4.1 at the moment.

### For users

If you see the following error after upgrading Fluentd, one of your plugins uses `yajl-ruby` without declaring it.

```
LoadError: cannot load such file -- yajl
```

You can avoid it by adding `yajl-ruby` to your Gemfile, or by running `gem install yajl-ruby`.
This works only on Ruby 4.0 or earlier.

`fluent-package` already bundles `yajl-ruby`, so its users are not affected.

Enjoy logging!

### Follow us on X

We have been posting information about Fluentd in Japanese on [@fluentd_jp](https://x.com/fluentd_jp).
We would appreciate it if you followed the X account.

TAG: Fluentd Announcement
AUTHOR: clearcode
3 changes: 2 additions & 1 deletion content/blog/tag/announcement
Original file line number Diff line number Diff line change
Expand Up @@ -166,4 +166,5 @@
/blog/20260814_fluent-package-v7-scheduled-lifecycle
/blog/20260929_fluent-package-v6.0.5-has-been-released
/blog/20260929_fluentd-v1.19.4-has-been-released
/blog/20261023_fluentd-v1.20.0-has-been-released
/blog/20261023_fluentd-v1.20.0-has-been-released
/blog/20261026_fluentd-v1.20.1-has-been-released
3 changes: 2 additions & 1 deletion content/blog/tag/fluentd
Original file line number Diff line number Diff line change
Expand Up @@ -175,4 +175,5 @@
/blog/20260814_fluent-package-v7-scheduled-lifecycle
/blog/20260929_fluent-package-v6.0.5-has-been-released
/blog/20260929_fluentd-v1.19.4-has-been-released
/blog/20261023_fluentd-v1.20.0-has-been-released
/blog/20261023_fluentd-v1.20.0-has-been-released
/blog/20261026_fluentd-v1.20.1-has-been-released
Loading