Skip to content

v1.1.0

Choose a tag to compare

@Halvanhelv Halvanhelv released this 07 Sep 14:27
· 105 commits to main since this release
4bd59bb

Dependency and Ruby modernization. Every runtime dependency was unversioned and the development dependencies were pinned to Ruby 2.3-era releases; everything is now current with explicit constraints, and the gem requires Ruby >= 3.2.

Dependencies

gem before after
connection_pool unversioned >= 2.4, < 4.0
deepl-rb unversioned ~> 3.9
dry-initializer unversioned ~> 3.2
ox unversioned ~> 2.14
punkt-segmenter unversioned ~> 0.9
ratelimit unversioned ~> 1.1
redis unversioned >= 5.0, < 7.0
redis-namespace unversioned ~> 1.11
rake ~> 10.0 ~> 13.0
rspec ~> 3.0 ~> 3.13
rubocop unversioned ~> 1.90
simplecov unversioned ~> 1.2
bundler ~> 1.14 removed
codeclimate-test-reporter ~> 1.0.0 removed (unmaintained)

Compatibility fixes

  • Require cgi/escape, digest/md5, forwardable and stringio explicitly. They used to be pulled in transitively, which no longer holds.
  • Pass the DeepL options as a positional hash. deepl-rb declares translate(text, source_lang, target_lang, options = {}), so the **options splat passed nothing when the hash was empty.
  • Replace OpenStruct in the request spec with a Struct; OpenStruct is no longer available without an explicit require.
  • Rename Chunker::Chunk members values/size to texts/bytesize so they stop shadowing Struct#values and Struct#size.
  • Move the Tokenizer constants above the private section, where they are actually reachable.

CI and lint

  • Replace Travis with GitHub Actions: the suite runs against Ruby 3.2, 3.3, 3.4 and 4.0, plus a RuboCop job.
  • Update .rubocop.yml for RuboCop 1.90 — TargetRubyVersion, NewCops: enable, and Metrics/LineLength renamed to Layout/LineLength.

Full changelog: v1.0.1...v1.1.0