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
7 changes: 3 additions & 4 deletions .cspell.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
{
"ignorePaths": [
"reference/**",
"terraform-provider-logstruct/**",
"sorbet/rbi/annotations/**",
"sorbet/rbi/dsl/**",
"sorbet/rbi/gems/**",
Expand All @@ -24,8 +26,5 @@
"addWords": false
}
],
"dictionaries": [
"project-words",
"lockfile-words-root"
]
"dictionaries": ["project-words", "lockfile-words-root"]
}
2 changes: 1 addition & 1 deletion .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ jobs:
persist-credentials: false

- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'
bundler-cache: true
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rails-main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
run: rm -f Gemfile.lock .ruby-version

- name: Setup Ruby 4.0.1
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '4.0.1'
bundler-cache: true
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ jobs:

# No bundler cache in release jobs: a cache is shared with other runs, and gem build needs no bundle
- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'

Expand Down Expand Up @@ -171,7 +171,7 @@ jobs:
name: gem

- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: ruby

Expand All @@ -196,7 +196,7 @@ jobs:

# No bundler cache in release jobs: a cache is shared with other runs
- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'

Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
persist-credentials: false

- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'
# Install all gems (both test and development)
Expand Down Expand Up @@ -107,7 +107,7 @@ jobs:
persist-credentials: false

- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'
bundler-cache: true
Expand All @@ -134,7 +134,7 @@ jobs:
persist-credentials: false

- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'
bundler-cache: true
Expand Down Expand Up @@ -183,7 +183,7 @@ jobs:
persist-credentials: false

- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'
bundler-cache: true
Expand Down Expand Up @@ -242,7 +242,7 @@ jobs:
run: rm -f Gemfile.lock

- name: Setup Ruby 4.0.1
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '4.0.1'
bundler-cache: true
Expand Down Expand Up @@ -297,15 +297,15 @@ jobs:

- name: 'Ruby 3.4 / Rails 7.2'
ruby: '3.4'
rails: '7.2.3'
rails: '7.2.4'

- name: 'Ruby 3.4 / Rails 8.0'
ruby: '3.4'
rails: '8.0.4'
rails: '8.0.5.2'

- name: 'Ruby 4.0 / Rails 8.1'
ruby: '4.0.1'
rails: '8.1.2'
rails: '8.1.4.1'

# NOTE: Latest Ruby/Rails is tested in the 'pilot' job above with coverage.

Expand All @@ -325,7 +325,7 @@ jobs:
run: rm -f Gemfile.lock

- name: Setup Ruby ${{ matrix.ruby }}
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
Expand All @@ -346,7 +346,7 @@ jobs:
persist-credentials: false

- name: Setup Ruby
uses: ruby/setup-ruby@651ff0d62c5c79bed6d53ec518387aae20e72c1a # v1.329.0
uses: ruby/setup-ruby@7f797815d8adceb1c412e7abefdd1ab4abc47a5f # v1.335.0
with:
ruby-version: '.ruby-version'

Expand Down
2 changes: 2 additions & 0 deletions .jscpd.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
"**/docs/.next/**",
"**/docs/out/**",
"**/docs/.vercel/**",
"**/docs/public/yard/**",
"bin/**",
"**/docspring/**",
"**/terraform-provider-logstruct/**",
"**/terraform-aws-logstruct/**",
Expand Down
9 changes: 9 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
require:
- standard

plugins:
- rubocop-minitest
- rubocop-performance
- rubocop-sorbet
Expand All @@ -21,6 +23,7 @@ AllCops:
- coverage_rails/**/*
- docs/public/**/*
- docspring/**/*
- reference/**/*
- convox_racks_terraform/**/*
- terraform-aws-logstruct/**/*
- terraform-example/**/*
Expand All @@ -39,6 +42,12 @@ Layout/MultilineMethodArgumentLineBreaks:
Bundler/DuplicatedGem:
Enabled: false # ignore duplicated gem errors because we have duplicated gems for testing

# Tests build their doubles with Class.new, which needs real method definitions: define_method can't use implicit
# super, and the cop's autocorrect doesn't produce code that parses for all of them
Sorbet/BlockMethodDefinition:
Exclude:
- test/**/*

# We use UTC for all timestamps, no timezones required for logs
# Rails/TimeZone:
# Enabled: false
Expand Down
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

### Changed

- **Dependencies**: Requires `sorbet-runtime` 0.6.12698 or later, the first version with `T::Module`, which `LogStruct::SemanticLogger::Logger`'s signature uses.
- **Type checking**: Log structs mark the props that implement their interfaces with `override: true`, which current versions of Sorbet require. A custom log struct needs the same on its `level`, `timestamp` and `additional_data` props, with the interfaces included above them.

## [0.3.0] - 2026-10-23

### Changed
Expand Down
2 changes: 1 addition & 1 deletion DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ And you always need to check for any third-party gems that are not part of Rails
- Ensure all tests pass before submitting a pull request
- Regular tests: `scripts/test.rb`
- Rails integration tests: `scripts/rails_tests.sh`
- You can specify Rails version for integration tests: `RAILS_VERSION=7.2.3 scripts/rails_tests.sh`
- You can specify Rails version for integration tests: `RAILS_VERSION=7.2.4 scripts/rails_tests.sh`
- Run `task ci` before submitting changes, and `cd docs && pnpm check` for changes to the docs site.

## Working with Sorbet and Tapioca
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ gem "sorbet-typescript"

# Essential testing gems that don't have Ruby version restrictions
group :test do
gem "dalli", "~> 3.2.13"
gem "dalli", "~> 3.2.15"
gem "bundler-audit", require: false
gem "minitest", "~> 5.20"
gem "minitest-reporters", "~> 1.6"
Expand Down
Loading