Skip to content
This repository was archived by the owner on Mar 10, 2026. It is now read-only.

Commit bf4ac4e

Browse files
committed
Add Ruby 3.4 support and update requirements
- Drop Ruby 2.7 support, require Ruby 3.0+ - Add Ruby 3.4 to CI test matrix - Add syslog and syslog-logger dependencies for Ruby 3.4+ compatibility (both gems removed from standard library in Ruby 3.4) - Configure CI with fail-fast: false to test all Ruby versions independently - Update development dependencies (RuboCop 1.60+, RSpec 3.13) - Add rubygems_mfa_required metadata for security - Update CHANGELOG with all changes
1 parent b257530 commit bf4ac4e

3 files changed

Lines changed: 24 additions & 10 deletions

File tree

.github/workflows/ci.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,9 @@ on:
99
jobs:
1010
test:
1111
strategy:
12+
fail-fast: false
1213
matrix:
13-
ruby-version: ['2.7', '3.0', '3.1', '3.2', '3.3']
14+
ruby-version: ['3.0', '3.1', '3.2', '3.3', '3.4']
1415
runs-on: ubuntu-latest
1516

1617
steps:

CHANGELOG.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88
## [Unreleased]
99

1010
### Changed
11-
- Updated Ruby version requirement to 2.7+
11+
- Updated Ruby version requirement to 3.0+ (dropped Ruby 2.7 support)
1212
- Updated development dependencies to latest versions
1313
- Added GitHub Actions for CI/CD
14+
- CI now tests all Ruby versions independently (fail-fast: false)
1415

1516
### Added
16-
- Automated testing on multiple Ruby versions (2.7, 3.0, 3.1, 3.2, 3.3)
17+
- Automated testing on multiple Ruby versions (3.0, 3.1, 3.2, 3.3, 3.4)
18+
- Ruby 3.4 compatibility: added syslog and syslog-logger gem dependencies for non-Windows platforms
1719
- Dependabot configuration for automated dependency updates
1820
- GitHub Actions release workflow for automatic gem publishing
1921
- Release documentation (RELEASING.md)
2022

23+
### Fixed
24+
- Multiple RuboCop violations
25+
- Code quality improvements (frozen constants, removed redundant requires)
26+
2127
## [Previous versions history would go here]
2228

2329
When you release a version, move the "Unreleased" section below to the appropriate version header.

steno.gemspec

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@ require File.expand_path('lib/steno/version', __dir__)
33
Gem::Specification.new do |gem|
44
gem.authors = ['mpage']
55
gem.email = ['mpage@rbcon.com']
6-
gem.description = 'A thread-safe logging library designed to support' \
7-
+ ' multiple log destinations.'
6+
gem.description = 'A thread-safe logging library designed to support multiple log destinations.'
87
gem.summary = 'A logging library.'
98
gem.homepage = 'http://www.cloudfoundry.org'
109

11-
gitignore = File.readlines('.gitignore').grep(/^[^#]/).map { |s| s.chomp }
10+
gitignore = File.readlines('.gitignore').grep(/^[^#]/).map(&:chomp)
1211

1312
# Ignore Gemfile, this is a library
1413
gitignore << 'Gemfile*'
@@ -23,18 +22,26 @@ Gem::Specification.new do |gem|
2322
gem.require_paths = ['lib']
2423
gem.version = Steno::VERSION
2524

25+
gem.required_ruby_version = '>= 3.0', '< 4'
26+
2627
gem.add_dependency('fluent-logger')
2728
gem.add_dependency('yajl-ruby', '~> 1.0')
2829

2930
gem.add_development_dependency('rack-test')
3031
gem.add_development_dependency('rake')
31-
gem.add_development_dependency('rspec', '~>3.13.0')
32-
gem.add_development_dependency('rubocop', '~> 1.62.0')
33-
gem.add_development_dependency('rubocop-rake', '~> 0.6.0')
34-
gem.add_development_dependency('rubocop-rspec', '~> 2.27.0')
32+
gem.add_development_dependency('rspec', '~> 3.13.0')
33+
gem.add_development_dependency('rubocop', '~> 1.60')
34+
gem.add_development_dependency('rubocop-rake', '~> 0.6')
35+
gem.add_development_dependency('rubocop-rspec', '~> 3.0')
36+
37+
unless RUBY_PLATFORM =~ /mswin|mingw|cygwin/
38+
gem.add_dependency('syslog')
39+
gem.add_dependency('syslog-logger')
40+
end
3541

3642
if RUBY_PLATFORM =~ /mswin|mingw|cygwin/
3743
gem.platform = Gem::Platform::CURRENT
3844
gem.add_dependency('win32-eventlog', '~> 0.6.0')
3945
end
46+
gem.metadata['rubygems_mfa_required'] = 'true'
4047
end

0 commit comments

Comments
 (0)