From a25d2c901490e839a5fa057fd96eb4d9f7862b81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edgar=20Gonz=C3=A1lez?= Date: Thu, 5 Dec 2024 10:46:54 -0500 Subject: [PATCH] Bump version to `2.5.1` (#84) - Update `CHANGELOG.md` - Move local-only gems to `:local` group and do `require: false` by default --- CHANGELOG.md | 299 ++++++++++++++++++++++++++++------- Dockerfile.benchmark | 2 +- Gemfile | 31 ++-- README.md | 2 +- lib/rambling/trie/version.rb | 2 +- 5 files changed, 265 insertions(+), 71 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fe0d678d..1c793961 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,20 +1,143 @@ # CHANGELOG -## 2.5.1 [compare][compare_v2_5_0_and_main] +## 2.5.2 [compare][compare_v2_5_1_and_main] + +## 2.5.1 [compare][compare_v2_5_0_and_v2_5_1] + +### Enhancements + +#### Major + +- Use `Array#shift` instead of `Array#slice!` for slight performance improvement ([#69][github_pull_69]) + by [@gonzedge][github_user_gonzedge] + + For performance improvements in all operations on a compressed `Rambling::Trie`. Now ≈3% faster. + +- Use `String#chars` + `Array#map` instead of `String#each_char` + `Array#<<` ([#70][github_pull_70]) + by [@gonzedge][github_user_gonzedge] + + For performance improvements in `Rambling::Trie#create`. Now ≈7% faster. + +- Use `Array#slice(i, slice_size)` instead `Array#slice(i..j)` for `Container#words_within` ([#71][github_pull_71]) by [@gonzedge][github_user_gonzedge] + + For performance improvements in `Container#words_within` lookups, particularly for compressed tries. Now ≈7% faster. +- _As part of Reek addition ([#67][github_pull_67])_ + - Assign `child.parent` to `self` in all of `children_tree` during + `Nodes::Compressed#initialize` + - Simplify `Compressor#merge` + - Rename `Compressor#compress{,_only}_child_and_merge` +- Add rbs types and corresponding lint check ([#57][github_pull_57]) by [@gonzedge][github_user_gonzedge] + + First: + - Add `rbs` gem and all `rbs` types in `sig/` directory + - Add `steep` gem for easier rbs type checking, with basic configuration + only checking `lib` for now + - Add `rubyzip` types as they are not defined + + Then: + - Add `|| raise` for places where we expect to always have a value, but + that rbs/steep are not smart enough to autodetect + - Add `EMPTY_ENUMERATOR` to be returned when there is no iteration to + perform + - Add `_Nilable` interface to allow for `nil?` check on generic type for + `ProviderCollection#contains?` + - Expand `ProviderCollection#resolve` to `key?` check to prevent + rbs/steep from complaining about `Cannot have body method` + - Add `children_match_prefix` `partial_word_chars?` `word_chars?` + `closest_node` private abstract methods to `Nodes::Node`, so that both + `Nodes::Raw` and `Nodes::Compressed` have it without duplication + - Make `yardoc` match `rbs` types + + Finally: + - Rename `char_symbols` to `reversed_char_symbols` for clarity + - Rename `Nodes::Raw#add`'s param `chars` to `reversed_chars` for + clarity + - Add `lint-rbs-steep` action + - Rename `lint` => `lint-rubocop` + - Bump lint and coverage ruby versions to `3.3.6` + +- Ensure `rbs` type signatures are included with the gem on release ([#77][github_pull_77]) by [@gonzedge][github_user_gonzedge] + +#### Minor + +- Add CodeClimate Semgrep plugin ([#68][github_pull_68]) by [@gonzedge][github_user_gonzedge] +- Add Reek + CodeClimate plugin + GitHub action ([#67][github_pull_67]) by [@gonzedge][github_user_gonzedge] + + Code smells addressed: + - Use `return unless variable` instead of `return if variable.nil?` where appropriate, since nil check is a type check + - Extract `size` variable for `chars.length - 1` in `Container#words_within_root` + - Extract `entry_name` for `entry.name` in `Serializers::Zip` + - Use longer variable names within blocks + - `char` in `Container#words_within_root` + - `extension`, `provider` in `ProviderCollection#reset` + - Remove `p` in `ProviderCollection#contains?` + +- Use rake tasks for all lint actions ([#72][github_pull_72]) by [@gonzedge][github_user_gonzedge] +- Add `yard` lint and use `redcarpet` for proper Markdown rendering ([#73][github_pull_73]) + by [@gonzedge][github_user_gonzedge] +- Add new guards: reek, rubocop, yard ([#74][github_pull_74]) by [@gonzedge][github_user_gonzedge] +- Add git pre-push hook suggestion ([#75][github_pull_75]) by [@gonzedge][github_user_gonzedge] +- Add `markdownlint` GitHub action ([#78][github_pull_78]) by [@gonzedge][github_user_gonzedge] +- Add `markdownlint` to pre-push script ([#79][github_pull_79]) by [@gonzedge][github_user_gonzedge] +- Add Dockerfile for consistent isolated benchmark runs ([#80][github_pull_80]) by [@gonzedge][github_user_gonzedge] + - Add top-level `Dockerfile` with all relevant files, including `sig/` + and `spec/` to run any commands + - Add minimal `Dockerfile.benchmark` with only what is required to run a + benchmark (minimal `Gemfile` and minimal `Rakefile`) and with the + ability to run on a specific `rambling-trie` version, even from the git + repo(!) + - Require `pathname` explicitly in `tasks/helpers/path.rb` so that the + benchmark can actually run with the minimal config +- Disable garbage collection in benchmarks and add script to rapidly run benchmarks ([#81][github_pull_81]) + by [@gonzedge][github_user_gonzedge] + + 1. Add a benchmarking script leveraging the new `Dockerfile.benchmark` + added in #80 + 2. Ensure all benchmarks are run with garbage collection stopped via + ```ruby + ::GC.start # <= trigger garbage collection + ::GC.disable # disable before executing benchmark + yield + ::GC.enable # enable after executing benchmark + ``` + so that it doesn't interfere with benchmark calculations. + +- Add GC-free benchmark reports for versions back to `v2.1.1` ([#82][github_pull_82]) by [@gonzedge][github_user_gonzedge] + + Use: + - ruby `3.3.6` for rambling-trie `2.5.0`, `2.4.0`, `2.3.1`, `2.3.0` + benchmarks + - ruby `3.0.0` for rambling-trie `2.2.1`, `2.2.0` benchmarks + - ruby `2.7.8` for rambling-trie `2.1.1` benchmarks + +- Disable garbage collection during ips benchmarks ([#83][github_pull_83]) by [@gonzedge][github_user_gonzedge] ## 2.5.0 [compare][compare_v2_4_0_and_v2_5_0] -- Bump version to `2.5.0` by [@gonzedge][github_user_gonzedge] -- Remove support for `2.7.x` and `3.0.x` (EOL'd) by [@gonzedge][github_user_gonzedge] +### Enhancements + +#### Major + +- Add explicit support for Ruby `3.3.x` ([#56][github_pull_56]) by [@gonzedge][github_user_gonzedge] +- Fix missing params for enumerator for `Readers::PlainText` ([#59][github_pull_59]) by [@gonzedge][github_user_gonzedge] +- Add `Container#push` to mirror `Array#push` interface ([#60][github_pull_60]) by [@gonzedge][github_user_gonzedge] +- Ensure only non-root nodes are marked as terminal ([#63][github_pull_63]) by [@gonzedge][github_user_gonzedge] +- Ensure self is returned during call to `Nodes::Raw#add` ([#64][github_pull_64]) by [@gonzedge][github_user_gonzedge] +- Remove support for `2.7.x` and `3.0.x` (EOL'd) ([#66][github_pull_66]) by [@gonzedge][github_user_gonzedge] - Update all doc links to point to `3.3.0` docs - Update min supported version to `3.1.0` - Update `rubocop` target version to `3.1.0` - Add new `rubocop` plugin cops (`performance`, `rake`, `rspec`) - Apply new `rubocop` corrections -- Remove now-invalid cops from rubocop by [@gonzedge][github_user_gonzedge] -- Ensure self is returned during call to `Nodes::Raw#add` by [@gonzedge][github_user_gonzedge] -- Ensure only non-root nodes are marked as terminal by [@gonzedge][github_user_gonzedge] -- Upgrade `rubocop` rules and fix new rule offenses by [@gonzedge][github_user_gonzedge] + +#### Minor + +- Update `ma{ster => in}` branch references ([#58][github_pull_58]) by [@gonzedge][github_user_gonzedge] + - Use `main` branch for `.github/workflows` + - Change `ma{ster => in}` branch in `changelog_uri` in gemspec + - Change `ma{ster => in}` branch in `README`, `CONTRIBUTING` and `CHANGELOG` + - Upgrade `paambaati/codeclimate-action` to `v5.0.0` +- Upgrade `rubocop` rules and fix new rule offenses ([#62][github_pull_62]) by [@gonzedge][github_user_gonzedge] - Fix newer offenses; remove deprecated rules - Explicitly disable `RSpec/Rails`, `Capybara` and `Factorybot` rules - Enable new `Lint`, `Style` and `Rspec` rules @@ -25,61 +148,86 @@ - Use `be_empty` instead of `match_array []` - Prefer `FileUtils.rm_f path` instead of `File.delete if path File.exist?` - Prefer `contain_exactly` over `match_array` -- Add `Container#push` to mirror `Array#push` interface by [@gonzedge][github_user_gonzedge] -- Fix missing params for enumerator for `Readers::PlainText` by [@gonzedge][github_user_gonzedge] -- Update `ma{ster => in}` branch references by [@gonzedge][github_user_gonzedge] - - Use `main` branch for `.github/workflows` - - Change `ma{ster => in}` branch in `changelog_uri` in gemspec - - Change `ma{ster => in}` branch in `README`, `CONTRIBUTING` and `CHANGELOG` - - Upgrade `paambaati/codeclimate-action` to `v5.0.0` -- Add explicit support for Ruby `3.3.x` by [@gonzedge][github_user_gonzedge] +- Remove now-invalid cops from rubocop ([#65][github_pull_65]) by [@gonzedge][github_user_gonzedge] ## 2.4.0 [compare][compare_v2_3_1_and_v2_4_0] -- Handle code inspections in `lib/` - use `%w` and `https` in gemspec by [@gonzedge][github_user_gonzedge] +### Enhancements + +#### Major + +- _As part of `RSpec::Config` changes ([#43][github_pull_43])_ by [@gonzedge][github_user_gonzedge] + - Use non-reserved words for file format and method name so that we are not accidentally shadowing important + built-ins (`:format` => `:file_format`, `:method` => `:method_name`) +- Use `@return [self]` in `Node#terminal!` rubydoc ([#42][github_pull_42]) by [@gonzedge][github_user_gonzedge] + - Also fix typos in `CHANGELOG.md` and `CONTRIBUTING.md` + +#### Minor + +- Handle code inspections in `lib/` - use `%w` and `https` in gemspec ([#45][github_pull_45]) + by [@gonzedge][github_user_gonzedge] - And add explicit RubyMine `noinspection` comments for things that RuboCop already takes care of. -- Handle code inspections in `tasks/` by [@gonzedge][github_user_gonzedge] +- Handle code inspections in `tasks/` ([#44][github_pull_44]) by [@gonzedge][github_user_gonzedge] - Rename `Helpers::{GC => GarbageCollection}` (and corresponding files) - Use symbols for hash `key?`/`has_key?`/`!![]` ips benchmark comparison -- Use `RSpec::Config`'s `filter_run_when_matching` instead of deprecated `run_all_when_everything_filtered` - by [@gonzedge][github_user_gonzedge] - - Use non-reserved words for file format and method name so that we are not accidentally shadowing important - built-ins (`:format` => `:file_format`, `:method` => `:method_name`) +- Use `RSpec::Config`'s `filter_run_when_matching` instead of deprecated + `run_all_when_everything_filtered` ([#43][github_pull_43]) by [@gonzedge][github_user_gonzedge] - Explicitly assert any new `Node` is not a `#word?` by default after initialization - Remove unnecessary parens from let definitions in specs -- Use `@return [self]` in `Node#terminal!` rubydoc by [@gonzedge][github_user_gonzedge] - - Also fix typos in `CHANGELOG.md` and `CONTRIBUTING.md` -- Update `CallTreeProfiler` to use new `RubyProf::Profiler` format by [@gonzedge][github_user_gonzedge] +- Update `CallTreeProfiler` to use new `RubyProf::Profiler` format ([#46][github_pull_46]) by [@gonzedge][github_user_gonzedge] Plus: - - More accurate `pop`/`shift`/`slice!` reporting - Only require `benchmark/ips` when necessary - One-liner blocks -- Add version specs to ensure `README/CHANGELOG` update before release by [@gonzedge][github_user_gonzedge] -- Exclude `spec/` from `simplecov` coverage by [@gonzedge][github_user_gonzedge] + +- Add version specs to ensure `README/CHANGELOG` update before release ([#47][github_pull_47]) by [@gonzedge][github_user_gonzedge] +- Exclude `spec/` from `simplecov` coverage ([#48][github_pull_48]) by [@gonzedge][github_user_gonzedge] ... by using the same filter as we use for `Coveralls.wear!` - CodeClimate plugins by [@gonzedge][github_user_gonzedge] - - `fixme` + - `fixme` ([#49][github_pull_49]) - And exclude `rubocop` files - - `markdownlint` + - `markdownlint` ([#50][github_pull_50]) - Max line length is 120 (`MD013`) - Ordered list style is `ordered` (`MD029`) - Add titles to `CHANGELOG.md` and `CONTRIBUTING.md` - Apply lint rules - Fix corresponding tests - - `rubocop` + - `rubocop` ([#53][github_pull_53]) - Allow up to 5 params to be optional (same as max total params) - Change max line length to 120. - - `flog` -- Add `semgrep` GitHub Action by [@gonzedge][github_user_gonzedge] -- Update copyright years by [@gonzedge][github_user_gonzedge] + - `flog` ([#52][github_pull_52]) +- Add `semgrep` GitHub Action ([#54][github_pull_54]) by [@gonzedge][github_user_gonzedge] +- Update copyright years ([#55][github_pull_55]) by [@gonzedge][github_user_gonzedge] ## 2.3.1 [compare][compare_v2_3_0_and_v2_3_1] +### Enhancements + +#### Major + - Fix `Rambling::Trie.load` docs in README by [@gonzedge][github_user_gonzedge] - Destructure args hash before passing to performance rake task by [@gonzedge][github_user_gonzedge] +- Ensure all serializer `#dump` methods return the size of the file ([#36][github_pull_36]) by [@gonzedge][github_user_gonzedge] + - Add test in `a serializer` shared examples + - Implement method for `Rambling::Trie::Serializers::Zip` +- Ensure `#each`/`#each_word` return `Enumerator`/`self` ([#37][github_pull_37]) by [@gonzedge][github_user_gonzedge] + - … depending on whether a block is given or not. +- Improve API documentation ([#38][github_pull_38]) by [@gonzedge][github_user_gonzedge] + - Add `Readers::Reader` and `Serializer::Serializer` base classes + - Make all readers/serializers extend from their corresponding base classes + - Better docs with `Reader`/`Serializer` and generics + - Fix all code blocks from backtick to `+` and add some more + - Add `@return [void]` where appropriate + - Add `@return [self]` where appropriate + - Fix `Nodes::Node` duplicate and broken references + - Fix some typos and add some missing periods +- Add explicit changelog and docs urls to `.gemspec` ([#39][github_pull_39]) by [@gonzedge][github_user_gonzedge] + - Update `CHANGELOG.md` with latest changes + +#### Minor + - Update copyright years by [@gonzedge][github_user_gonzedge] - Attempt to clear gem version badge being cached by GitHub (?) by [@gonzedge][github_user_gonzedge] - Migrate from TravisCI to SemaphoreCI by [@gonzedge][github_user_gonzedge] @@ -127,37 +275,28 @@ - Add CodeClimate coverage step to build GH action ([#35][github_pull_35]) by [@gonzedge][github_user_gonzedge] - Do things differently for coveralls and code climate - Use correct shared example for `words_within?` on compressed tries -- Ensure all serializer `#dump` methods return the size of the file ([#36][github_pull_36]) by [@gonzedge][github_user_gonzedge] - - Add test in `a serializer` shared examples - - Implement method for `Rambling::Trie::Serializers::Zip` -- Ensure `#each`/`#each_word` return `Enumerator`/`self` ([#37][github_pull_37]) by [@gonzedge][github_user_gonzedge] - - … depending on whether a block is given or not. -- Improve API documentation ([#38][github_pull_38]) by [@gonzedge][github_user_gonzedge] - - Add `Readers::Reader` and `Serializer::Serializer` base classes - - Make all readers/serializers extend from their corresponding base classes - - Better docs with `Reader`/`Serializer` and generics - - Fix all code blocks from backtick to `+` and add some more - - Add `@return [void]` where appropriate - - Add `@return [self]` where appropriate - - Fix `Nodes::Node` duplicate and broken references - - Fix some typos and add some missing periods -- Add explicit changelog and docs urls to `.gemspec` ([#39][github_pull_39]) by [@gonzedge][github_user_gonzedge] - - Update `CHANGELOG.md` with latest changes ## 2.3.0 [compare][compare_v2_2_1_and_v2_3_0] +### Enhancements + +#### Major + - Don't use `YAML.safe_load`'s legacy API by [@KitaitiMakoto][github_user_kitaitimakoto] - Add explicit support for Ruby 3.1.x by [@KitaitiMakoto][github_user_kitaitimakoto] -- Add block to `Coveralls.wear!` to prevent `SimpleCove.start` being called twice by [@KitaitiMakoto][github_user_kitaitimakoto] - Add explicit support for Ruby 3.2.x by [@agate][github_user_agate] - Make sure gem also supports all the sub version of 3.2 by [@agate][github_user_agate] - Includes adding support for 2.7.{4,5,6,7}, 3.0.{2,3,4,5}, 3.1.{0,1,2,3} and 3.2.{0,1} -- Use new `coveralls_reborn` to support new ruby by [@agate][github_user_agate] - Update `required_ruby_version` bounds to `>= 2.7, < 4` by [@gonzedge][github_user_gonzedge] - Drop support for Ruby 2.5.x and 2.6.x by [@gonzedge][github_user_gonzedge] - Add Ruby 2.7.8, 3.0.6, 3.1.4, 3.2.2 to supported versions by [@gonzedge][github_user_gonzedge] - Update documentation links to min required ruby version by [@gonzedge][github_user_gonzedge] +#### Minor + +- Add block to `Coveralls.wear!` to prevent `SimpleCove.start` being called twice by [@KitaitiMakoto][github_user_kitaitimakoto] +- Use new `coveralls_reborn` to support new ruby by [@agate][github_user_agate] + ## 2.2.1 [compare][compare_v2_2_0_and_v2_2_1] - Add support for Ruby 3.0.x by [@as181920][github_user_as181920] @@ -169,15 +308,26 @@ ## 2.1.1 [compare][compare_v2_1_0_and_v2_1_1] -- Change `slice!` to `shift` (#16) by [@shinjiikeda][github_user_shinjiikeda] +### Enhancements + +#### Major + +- Change `slice!` to `shift` by [@shinjiikeda][github_user_shinjiikeda] - Frozen string issue fix by [@godsent][github_user_godsent] - Drop Ruby 2.4.x; add 2.7 and updated 2.6.x/2.5.x support by [@gonzedge][github_user_gonzedge] + +#### Minor + - Be more flexible with file sizes for zip file test by [@gonzedge][github_user_gonzedge] - Upgrade development dependencies by [@gonzedge][github_user_gonzedge] - Specify `ArgumentError` exception for provider collection spec by [@gonzedge][github_user_gonzedge] ## 2.1.0 [compare][compare_v2_0_0_and_v2_1_0] +### Enhancements + +#### Major + - Add official support for Ruby 2.6 by [@gonzedge][github_user_gonzedge] - Add Ruby 2.5.{2,3,4,5} and 2.4{5,6} to supported versions by [@gonzedge][github_user_gonzedge] - Require Ruby 2.4.x or up in gemspec by [@gonzedge][github_user_gonzedge] @@ -993,7 +1143,8 @@ Most of these help with the gem's overall performance. [compare_v2_3_0_and_v2_3_1]: https://github.com/gonzedge/rambling-trie/compare/v2.3.0...v2.3.1 [compare_v2_3_1_and_v2_4_0]: https://github.com/gonzedge/rambling-trie/compare/v2.3.1...v2.4.0 [compare_v2_4_0_and_v2_5_0]: https://github.com/gonzedge/rambling-trie/compare/v2.4.0...v2.5.0 -[compare_v2_5_0_and_main]: https://github.com/gonzedge/rambling-trie/compare/v2.5.0...main +[compare_v2_5_0_and_v2_5_1]: https://github.com/gonzedge/rambling-trie/compare/v2.5.0...v2.5.1 +[compare_v2_5_1_and_main]: https://github.com/gonzedge/rambling-trie/compare/v2.5.1...main [design_patterns_null_object]: http://wiki.c2.com/?NullObject [github_commit_current_key_less_memory]: https://github.com/gonzedge/rambling-trie/commit/218fac218a77e70ba04a3672ff5abfddf6544f57 [github_commit_reduced_memory_footprint]: https://github.com/gonzedge/rambling-trie/commit/aa8c0262f888e88df6a2f1e1351d8f14b21e43c4 @@ -1031,6 +1182,48 @@ Most of these help with the gem's overall performance. [github_pull_37]: https://github.com/gonzedge/rambling-trie/pull/37 [github_pull_38]: https://github.com/gonzedge/rambling-trie/pull/38 [github_pull_39]: https://github.com/gonzedge/rambling-trie/pull/39 +[github_pull_42]: https://github.com/gonzedge/rambling-trie/pull/42 +[github_pull_43]: https://github.com/gonzedge/rambling-trie/pull/43 +[github_pull_44]: https://github.com/gonzedge/rambling-trie/pull/44 +[github_pull_45]: https://github.com/gonzedge/rambling-trie/pull/45 +[github_pull_46]: https://github.com/gonzedge/rambling-trie/pull/46 +[github_pull_47]: https://github.com/gonzedge/rambling-trie/pull/47 +[github_pull_48]: https://github.com/gonzedge/rambling-trie/pull/48 +[github_pull_49]: https://github.com/gonzedge/rambling-trie/pull/49 +[github_pull_50]: https://github.com/gonzedge/rambling-trie/pull/50 +[github_pull_51]: https://github.com/gonzedge/rambling-trie/pull/51 +[github_pull_52]: https://github.com/gonzedge/rambling-trie/pull/52 +[github_pull_53]: https://github.com/gonzedge/rambling-trie/pull/53 +[github_pull_54]: https://github.com/gonzedge/rambling-trie/pull/54 +[github_pull_55]: https://github.com/gonzedge/rambling-trie/pull/55 +[github_pull_56]: https://github.com/gonzedge/rambling-trie/pull/56 +[github_pull_57]: https://github.com/gonzedge/rambling-trie/pull/57 +[github_pull_58]: https://github.com/gonzedge/rambling-trie/pull/58 +[github_pull_59]: https://github.com/gonzedge/rambling-trie/pull/59 +[github_pull_60]: https://github.com/gonzedge/rambling-trie/pull/60 +[github_pull_61]: https://github.com/gonzedge/rambling-trie/pull/61 +[github_pull_62]: https://github.com/gonzedge/rambling-trie/pull/62 +[github_pull_63]: https://github.com/gonzedge/rambling-trie/pull/63 +[github_pull_64]: https://github.com/gonzedge/rambling-trie/pull/64 +[github_pull_65]: https://github.com/gonzedge/rambling-trie/pull/65 +[github_pull_66]: https://github.com/gonzedge/rambling-trie/pull/66 +[github_pull_67]: https://github.com/gonzedge/rambling-trie/pull/67 +[github_pull_68]: https://github.com/gonzedge/rambling-trie/pull/68 +[github_pull_69]: https://github.com/gonzedge/rambling-trie/pull/69 +[github_pull_70]: https://github.com/gonzedge/rambling-trie/pull/70 +[github_pull_71]: https://github.com/gonzedge/rambling-trie/pull/71 +[github_pull_72]: https://github.com/gonzedge/rambling-trie/pull/72 +[github_pull_73]: https://github.com/gonzedge/rambling-trie/pull/73 +[github_pull_74]: https://github.com/gonzedge/rambling-trie/pull/74 +[github_pull_75]: https://github.com/gonzedge/rambling-trie/pull/75 +[github_pull_76]: https://github.com/gonzedge/rambling-trie/pull/76 +[github_pull_77]: https://github.com/gonzedge/rambling-trie/pull/77 +[github_pull_78]: https://github.com/gonzedge/rambling-trie/pull/78 +[github_pull_79]: https://github.com/gonzedge/rambling-trie/pull/79 +[github_pull_80]: https://github.com/gonzedge/rambling-trie/pull/80 +[github_pull_81]: https://github.com/gonzedge/rambling-trie/pull/81 +[github_pull_82]: https://github.com/gonzedge/rambling-trie/pull/82 +[github_pull_83]: https://github.com/gonzedge/rambling-trie/pull/83 [github_user_agate]: https://github.com/agate [github_user_as181920]: https://github.com/as181920 [github_user_godsent]: https://github.com/godsent diff --git a/Dockerfile.benchmark b/Dockerfile.benchmark index 43dbfe05..b4e15bcd 100644 --- a/Dockerfile.benchmark +++ b/Dockerfile.benchmark @@ -1,6 +1,6 @@ FROM ruby:3.3.6 -ARG VERSION=2.5.0 +ARG VERSION=2.5.1 ARG FROM_GITHUB=false WORKDIR /usr/rambling-trie diff --git a/Gemfile b/Gemfile index 58d000ab..b4ae03b9 100644 --- a/Gemfile +++ b/Gemfile @@ -7,19 +7,8 @@ gemspec gem 'rubyzip' group :development do - gem 'benchmark-ips' - gem 'flamegraph' - gem 'memory_profiler' - gem 'pry' - gem 'racc' gem 'rake' - gem 'rbs' - gem 'redcarpet' gem 'rspec' - gem 'ruby-prof' - gem 'stackprof' - gem 'steep' - gem 'yard' end group :test do @@ -29,15 +18,27 @@ group :test do end group :local do + gem 'benchmark-ips', require: false + gem 'flamegraph', require: false gem 'flog', require: false - gem 'guard-reek' - gem 'guard-rspec' - gem 'guard-rubocop' - gem 'guard-yard' + gem 'guard', require: false + gem 'guard-reek', require: false + gem 'guard-rspec', require: false + gem 'guard-rubocop', require: false + gem 'guard-yard', require: false gem 'mdl', require: false + gem 'memory_profiler', require: false + gem 'pry', require: false + gem 'racc', require: false + gem 'rbs', require: false + gem 'redcarpet', require: false gem 'reek', require: false gem 'rubocop', require: false gem 'rubocop-performance', require: false gem 'rubocop-rake', require: false gem 'rubocop-rspec', require: false + gem 'ruby-prof', require: false + gem 'stackprof', require: false + gem 'steep', require: false + gem 'yard', require: false end diff --git a/README.md b/README.md index 61801581..2dcdf962 100644 --- a/README.md +++ b/README.md @@ -316,7 +316,7 @@ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEM COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -[badge_fury_badge]: https://badge.fury.io/rb/rambling-trie.svg?version=2.5.0 +[badge_fury_badge]: https://badge.fury.io/rb/rambling-trie.svg?version=2.5.1 [badge_fury_link]: https://badge.fury.io/rb/rambling-trie [chruby]: https://github.com/postmodern/chruby [code_climate_grade_badge]: https://codeclimate.com/github/gonzedge/rambling-trie/badges/gpa.svg diff --git a/lib/rambling/trie/version.rb b/lib/rambling/trie/version.rb index 0446b71c..f345bed1 100644 --- a/lib/rambling/trie/version.rb +++ b/lib/rambling/trie/version.rb @@ -3,6 +3,6 @@ module Rambling module Trie # Current version of the rambling-trie. - VERSION = '2.5.0' + VERSION = '2.5.1' end end