hanami-cli 2.3.3 → 2.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +346 -225
  3. data/LICENSE +20 -0
  4. data/README.md +11 -20
  5. data/hanami-cli.gemspec +28 -30
  6. data/lib/hanami/cli/commands/app/assets/command.rb +1 -1
  7. data/lib/hanami/cli/commands/app/command.rb +3 -3
  8. data/lib/hanami/cli/commands/app/console.rb +1 -1
  9. data/lib/hanami/cli/commands/app/db/command.rb +3 -3
  10. data/lib/hanami/cli/commands/app/db/prepare.rb +1 -1
  11. data/lib/hanami/cli/commands/app/db/rollback.rb +6 -2
  12. data/lib/hanami/cli/commands/app/db/structure/dump.rb +1 -1
  13. data/lib/hanami/cli/commands/app/db/structure/load.rb +1 -1
  14. data/lib/hanami/cli/commands/app/db/utils/postgres.rb +2 -2
  15. data/lib/hanami/cli/commands/app/db/utils/sqlite.rb +3 -4
  16. data/lib/hanami/cli/commands/app/db/version.rb +1 -1
  17. data/lib/hanami/cli/commands/app/generate/action.rb +0 -2
  18. data/lib/hanami/cli/commands/app/generate/command.rb +2 -2
  19. data/lib/hanami/cli/commands/app/generate/component.rb +1 -1
  20. data/lib/hanami/cli/commands/app/generate/migration.rb +1 -1
  21. data/lib/hanami/cli/commands/app/generate/operation.rb +1 -1
  22. data/lib/hanami/cli/commands/app/generate/part.rb +1 -1
  23. data/lib/hanami/cli/commands/app/generate/relation.rb +1 -1
  24. data/lib/hanami/cli/commands/app/generate/repo.rb +1 -1
  25. data/lib/hanami/cli/commands/app/generate/slice.rb +1 -1
  26. data/lib/hanami/cli/commands/app/generate/struct.rb +1 -1
  27. data/lib/hanami/cli/commands/app/generate/view.rb +1 -1
  28. data/lib/hanami/cli/commands/app/install.rb +2 -0
  29. data/lib/hanami/cli/commands/app/middleware.rb +1 -1
  30. data/lib/hanami/cli/commands/app/routes.rb +1 -1
  31. data/lib/hanami/cli/commands/app/run.rb +10 -10
  32. data/lib/hanami/cli/commands/app.rb +1 -1
  33. data/lib/hanami/cli/commands/gem/new.rb +1 -4
  34. data/lib/hanami/cli/commands.rb +21 -12
  35. data/lib/hanami/cli/generators/app/action.rb +1 -3
  36. data/lib/hanami/cli/generators/app/component.rb +1 -1
  37. data/lib/hanami/cli/generators/app/migration.rb +1 -1
  38. data/lib/hanami/cli/generators/app/operation.rb +1 -1
  39. data/lib/hanami/cli/generators/app/relation.rb +1 -1
  40. data/lib/hanami/cli/generators/app/repo.rb +1 -1
  41. data/lib/hanami/cli/generators/app/ruby_file.rb +3 -3
  42. data/lib/hanami/cli/generators/app/slice.rb +4 -4
  43. data/lib/hanami/cli/generators/app/struct.rb +1 -1
  44. data/lib/hanami/cli/generators/app/view.rb +2 -2
  45. data/lib/hanami/cli/generators/constants.rb +1 -1
  46. data/lib/hanami/cli/ruby_file_generator.rb +1 -1
  47. data/lib/hanami/cli/version.rb +1 -1
  48. data/lib/hanami/console/plugins/unbooted_slice_warnings.rb +8 -0
  49. metadata +12 -79
  50. data/.github/FUNDING.yml +0 -1
  51. data/.github/workflows/ci.yml +0 -76
  52. data/.gitignore +0 -13
  53. data/.repobot.yml +0 -9
  54. data/.rspec +0 -2
  55. data/.rubocop.yml +0 -48
  56. data/.rubocop_todo.yml +0 -150
  57. data/.yardopts +0 -3
  58. data/CODE_OF_CONDUCT.md +0 -84
  59. data/Gemfile +0 -33
  60. data/LICENSE.md +0 -22
  61. data/Rakefile +0 -12
  62. data/bin/console +0 -15
  63. data/bin/setup +0 -8
  64. data/docker-compose.yml +0 -14
  65. data/project.yml +0 -2
  66. data/script/ci +0 -31
data/CHANGELOG.md CHANGED
@@ -1,27 +1,60 @@
1
- # Hanami::CLI
1
+ # Changelog
2
2
 
3
- Hanami Command Line Interface
3
+ All notable changes to this project will be documented in this file.
4
4
 
5
- ## Unreleased
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
7
 
7
- ## v2.3.3 - 2025-12-04
8
+ ## [Unreleased]
9
+
10
+ ### Added
11
+
12
+ ### Changed
13
+
14
+ ### Deprecated
15
+
16
+ ### Removed
17
+
18
+ ### Fixed
19
+
20
+ ### Security
21
+
22
+ [Unreleased]: https://github.com/hanami/cli/compare/v2.3.4...HEAD
23
+
24
+ ## [2.3.4] - 2026-01-23
25
+
26
+ ### Fixed
27
+
28
+ - Avoid an unhandled exception in the "are we inside a Hanami app?" check that happens at the beginning of every CLI invocation. This would occur when a bundled gem is already activated (from our testing: bigdecimal) but in conflict with the required version of that gem by a Hanami dependency. (@timriley in #380).
29
+
30
+ [2.3.4]: https://github.com/hanami/cli/compare/v2.3.3...v2.3.4
31
+
32
+ ## [2.3.3] - 2025-12-04
33
+
34
+ ### Changed
8
35
 
9
36
  - Support the newly released Bundler v4 by removing the upper version bound from our dependency. (@timriley in #373)
10
37
 
11
- ## v2.3.2 - 2025-11-16
38
+ [2.3.3]: https://github.com/hanami/cli/compare/v2.3.2...v2.3.3
39
+
40
+ ## [2.3.2] - 2025-11-16
12
41
 
13
42
  ### Fixed
14
43
 
15
44
  - Fix potential deadlocks with `db structure dump` for large structure files. (@timriley in #370, report from @pat in #369)
16
45
  - Decouple the hanami-assets npm package version from the current Hanami version in generated `package.json`, using the stable minor version (e.g. `^2.3.0`) instead of the exact version (e.g. `^2.3.1`). This allows Hanami patch releases without requiring a corresponding hanami-assets npm package release. (@timriley in #270)
17
46
 
18
- ## v2.3.1 - 2025-11-14
47
+ [2.3.2]: https://github.com/hanami/cli/compare/v2.3.1...v2.3.2
48
+
49
+ ## [2.3.1] - 2025-11-14
19
50
 
20
51
  ### Fixed
21
52
 
22
53
  - Fix stray wording in `README.md` in new apps. (@davidcelis in #368)
23
54
 
24
- ## v2.3.0 - 2025-11-12
55
+ [2.3.1]: https://github.com/hanami/cli/compare/v2.3.0...v2.3.1
56
+
57
+ ## [2.3.0] - 2025-11-12
25
58
 
26
59
  ### Added
27
60
 
@@ -48,7 +81,9 @@ Hanami Command Line Interface
48
81
  - Fix structure dump and load for MySQL 9.5.0. (@timriley in #348)
49
82
  - Preserve Bundler environment variables when commands make system calls. (@robyurkowski in 346)
50
83
 
51
- ## v2.3.0.beta2 - 2025-10-17
84
+ [2.3.0]: https://github.com/hanami/cli/compare/v2.3.0.beta2...v2.3.0
85
+
86
+ ## [2.3.0.beta2] - 2025-10-17
52
87
 
53
88
  ### Added
54
89
 
@@ -65,446 +100,532 @@ Hanami Command Line Interface
65
100
 
66
101
  - Handle mixed case names given to `generate` subcommands. (@cllns in #327)
67
102
 
68
- ## v2.3.0.beta1 - 2025-10-03
103
+ [2.3.0.beta2]: https://github.com/hanami/cli/compare/v2.3.0.beta1...v2.3.0.beta2
104
+
105
+ ## [2.3.0.beta1] - 2025-10-03
69
106
 
70
107
  ### Added
71
108
 
72
- - Running `hanami generate` commands within a slice directory will generate the file in that slice (@krzykamil in #298)
109
+ - Running `hanami generate` commands within a slice directory will generate the file in that slice. (@krzykamil in #298)
73
110
  - Add `db rollback` command, supporting rolling back a single database at a time. (@krzykamil in #300)
74
- - `console` command loads configured extensions from app config. Add these using e.g. `config.console.include MyModule, AnotherModule` (@alassek in #324)
75
- - `console` command uses REPL engine configured in app config. Set this using e.g. `config.console.engine = :pry`; valid options are `:irb` (default) and `:pry` (@alassek in #324)
111
+ - `console` command loads configured extensions from app config. Add these using e.g. `config.console.include MyModule, AnotherModule`. (@alassek in #324)
112
+ - `console` command uses REPL engine configured in app config. Set this using e.g. `config.console.engine = :pry`; valid options are `:irb` (default) and `:pry`. (@alassek in #324)
76
113
 
77
- ### Fixed
114
+ ### Changed
78
115
 
79
- - Allow generated `public/400.html` and `public/500.html` to go into source control (@kyleplump in #290)
80
- - Properly show database errors from failed `db drop` commands (@katafrakt in #281)
81
- - Ensure consistent env var loading by disallowing Foreman's own env processing in generated `bin/dev` script (@cflipse in #305)
82
- - Use the configured app inflector (and any custom inflections) for all commands (@timriley in #312)
83
- - For app generated with `hanami new` with `--head`, include `hanami-cli` in the `Gemfile` (@afomera in #328)
116
+ - Prevent `hanami new` from creating apps with confusing names (currently: "app" or "slice"). (@seven1m in #272)
117
+ - Provide more helpful instructions in generated app README. (@hanarimawi in #273)
118
+ - Prevent generators from overwriting files. (@maxemitchell in #274, @stephannv in #319)
119
+ - Add irb as a gem dependency to avoid default gem warnings. (@y-yagi in #294)
120
+ - Expand on comments `config/assets.js` and enable customization function by default. (@robyurkowski in #293)
121
+ - Run `git init` at the end of `hanami new`. (@krzykamil in #295)
122
+ - Prevent blank lines from showing when generating classes without deep module nesting. (@cllns)
123
+ - Add `--skip-view` flag to `hanami new`. (@kyleplump in #308)
124
+ - Support Rack 3 in addition to Rack 2 (for `hanami server` command). (@kyleplump in #289)
125
+ - Ensure compatibility with MySQL 9.4's CLI tools in `db structure load` command. (@timriley in #315)
126
+ - Generated `Rakefile` will load tasks defined in `lib/tasks/`. (@AlexanderZagaynov in #318)
84
127
 
85
- ### Changed
128
+ ### Fixed
129
+
130
+ - Allow generated `public/400.html` and `public/500.html` to go into source control. (@kyleplump in #290)
131
+ - Properly show database errors from failed `db drop` commands. (@katafrakt in #281)
132
+ - Ensure consistent env var loading by disallowing Foreman's own env processing in generated `bin/dev` script. (@cflipse in #305)
133
+ - Use the configured app inflector (and any custom inflections) for all commands. (@timriley in #312)
134
+ - For app generated with `hanami new` with `--head`, include `hanami-cli` in the `Gemfile`. (@afomera in #328)
86
135
 
87
- - Prevent `hanami new` from creating apps with confusing names (currently: "app" or "slice") (@seven1m in #272)
88
- - Provide more helpful instructions in generated app README (@hanarimawi in #273)
89
- - Prevent generators from overwriting files (@maxemitchell in #274, @stephannv in #319)
90
- - Add irb as a gem dependency to avoid default gem warnings (@y-yagi in #294)
91
- - Expand on comments `config/assets.js` and enable customization function by default (@robyurkowski in #293)
92
- - Run `git init` at the end of `hanami new` (@krzykamil in #295)
93
- - Prevent blank lines from showing when generating classes without deep module nesting (@cllns)
94
- - Add `--skip-view` flag to `hanami new` (@kyleplump in #308)
95
- - Support Rack 3 in addition to Rack 2 (for `hanami server` command) (@kyleplump in #289)
96
- - Ensure compatibility with MySQL 9.4's CLI tools in `db structure load` command (@timriley in #315)
97
- - Generated `Rakefile` will load tasks defined in `lib/tasks/` (@AlexanderZagaynov in #318)
136
+ [2.3.0.beta1]: https://github.com/hanami/cli/compare/v2.2.1...v2.3.0.beta1
98
137
 
99
- ## v2.2.1 - 2024-11-12
138
+ ## [2.2.1] - 2024-11-12
100
139
 
101
140
  ### Changed
102
141
 
103
- - [Tim Riley] Run a bundle install inside `hanami install`. Combined with first-party extension gems modifying the new app's `Gemfile` via a `before "install"` command hook, this ensures that all necessary gems are installed duringthe `hanami new` command. (#269)
142
+ - Run a bundle install inside `hanami install`. Combined with first-party extension gems modifying the new app's `Gemfile` via a `before "install"` command hook, this ensures that all necessary gems are installed during the `hanami new` command. (@timriley in #269)
104
143
 
105
144
  ### Fixed
106
145
 
107
- - [Tim Riley] Allow `hanami new` to be called with `--skip-db` (#266)
146
+ - Allow `hanami new` to be called with `--skip-db`. (@timriley in #266)
108
147
 
109
- ## v2.2.0 - 2024-11-05
148
+ [2.2.1]: https://github.com/hanami/cli/compare/v2.2.0...v2.2.1
149
+
150
+ ## [2.2.0] - 2024-11-05
110
151
 
111
152
  ### Changed
112
153
 
113
- - [Kyle Plump] Add `--gateway` optiopn to `generate relation` (#261)
114
- - [Tim Riley] Depend on stable release of dry-operation in new app `Gemfile` (#262)
115
- - [Tim Riley] Depend on newser dry-types with a simpler version constraint in new app `Gemfile` (#263)
116
- - [Adam Lassek] Point to Hanami's own migrations guide from generated migration files (#264)
154
+ - Add `--gateway` option to `generate relation`. (@kyleplump in #261)
155
+ - Depend on stable release of dry-operation in new app `Gemfile`. (@timriley in #262)
156
+ - Depend on newer dry-types with a simpler version constraint in new app `Gemfile`. (@timriley in #263)
157
+ - Point to Hanami's own migrations guide from generated migration files. (@alassek in #264)
158
+
159
+ [2.2.0]: https://github.com/hanami/cli/compare/v2.2.0.rc1...v2.2.0
117
160
 
118
- ## v2.2.0.rc1 - 2024-10-29
161
+ ## [2.2.0.rc1] - 2024-10-29
119
162
 
120
163
  ### Added
121
164
 
122
- - [Tim Riley, François Beausoleil] Generate a `config/db/seeds.rb` file in new apps (#255, #256)
165
+ - Generate a `config/db/seeds.rb` file in new apps. (@timriley, @fbeausoleil in #255, #256)
123
166
 
124
167
  ### Changed
125
168
 
126
- - [Tim Riley] Add `--env` and `-e` options to all app commands, for setting the Hanami env (#246)
127
- - [Tim Riley] Keep test database in sync by applying `hanami db` commands to both development and test databases when invoked in development environment (#247)
128
- - [Kyle Plump] Add `--skip-route` flag to `generate action` and `generate slice` commands (#227)
129
- - [Tim Riley] Include a `change do` block in generated migrations (#254)
130
- - [Tim Riley] Generate MySQL database URL in `.env` that works with standard Homebrew MySQL installation (#249)
131
- - [Tim Riley, Adam Lassek] Remove ROM extension boilerplate in operations generated by `hanami new` and `generate operation` (this is now applied automatically) (#240, #252)
132
- - [François Beausoleil] Print a warning when running `db seed` but expected seeds files could not be found (#256)
133
- - [Seb Wilgosz] Only register `generate` subcommands if the relevant gems are bundled (#242)
134
- - [Anderson Saunders] When both IRB and pry are loaded, use IRB as the default engine for `hanami console` (#182)
169
+ - Add `--env` and `-e` options to all app commands, for setting the Hanami env. (@timriley in #246)
170
+ - Keep test database in sync by applying `hanami db` commands to both development and test databases when invoked in development environment. (@timriley in #247)
171
+ - Add `--skip-route` flag to `generate action` and `generate slice` commands. (@kyleplump in #227)
172
+ - Include a `change do` block in generated migrations. (@timriley in #254)
173
+ - Generate MySQL database URL in `.env` that works with standard Homebrew MySQL installation. (@timriley in #249)
174
+ - Remove ROM extension boilerplate in operations generated by `hanami new` and `generate operation` (this is now applied automatically). (@timriley, @alassek in #240, #252)
175
+ - Print a warning when running `db seed` but expected seeds files could not be found. (@fbeausoleil in #256)
176
+ - Only register `generate` subcommands if the relevant gems are bundled. (@swilgosz in #242)
177
+ - When both IRB and pry are loaded, use IRB as the default engine for `hanami console`. (@asaunders in #182)
135
178
 
136
179
  ### Fixed
137
180
 
138
- - [Tim Riley] Fix error dumping structure when there are no migrations (#244)
139
- - [Tim Riley] Stop erroneous misconfigured DB warnings from `hanami db` commands when a database is configured once but shared across sliaces (#253)
181
+ - Fix error dumping structure when there are no migrations. (@timriley in #244)
182
+ - Stop erroneous misconfigured DB warnings from `hanami db` commands when a database is configured once but shared across slices. (@timriley in #253)
140
183
 
141
- ## v2.2.0.beta2 - 2024-09-25
184
+ [2.2.0.rc1]: https://github.com/hanami/cli/compare/v2.2.0.beta2...v2.2.0.rc1
185
+
186
+ ## [2.2.0.beta2] - 2024-09-25
142
187
 
143
188
  ### Added
144
189
 
145
- - [Tim Riley] MySQL support for `db` commands (#226)
146
- - [Tim Riley] Support for multiple gateways in `db` commands (#232, #234, #237, #238)
190
+ - MySQL support for `db` commands. (@timriley in #226)
191
+ - Support for multiple gateways in `db` commands. (@timriley in #232, #234, #237, #238)
147
192
 
148
193
  ### Changed
149
194
 
150
- - [Kyle Plump, Tim Riley] Delete `.keep` files when generating new files into previously empty directory (#224)
151
- - [Sean Collins] Add `db/*.sqlite` to the `.gitignore` in new apps (#210)
152
- - [Sean Collins] Print warnings for misconfigured databases when running `db` commands (#211)
195
+ - Delete `.keep` files when generating new files into previously empty directory. (@kyleplump, @timriley in #224)
196
+ - Add `db/*.sqlite` to the `.gitignore` in new apps. (@cllns in #210)
197
+ - Print warnings for misconfigured databases when running `db` commands. (@cllns in #211)
198
+
199
+ [2.2.0.beta2]: https://github.com/hanami/cli/compare/v2.2.0.beta1...v2.2.0.beta2
153
200
 
154
- ## v2.2.0.beta1 - 2024-07-16
201
+ ## [2.2.0.beta1] - 2024-07-16
155
202
 
156
203
  ### Added
157
204
 
158
- - [Sean Collins] Generate db files in `hanami new` and `generate slice`
159
- - [Tim Riley] Add `db` commands: `create`, `drop`, `migrate`, `structure dump` `structure load`, `seed` `prepare`, `version`
160
- - [Tim Riley] Support SQLite and Postgres for `db` commands
161
- - [Sean Collins] Add `generate` commands for db components: `generate migration`, `generate relation`, `generate repo`, `generate struct`
162
- - [Krzysztof] Add `generate component` command
163
- - [Sean Collins] Add `generate operation` command
205
+ - Generate db files in `hanami new` and `generate slice`. (@cllns)
206
+ - Add `db` commands: `create`, `drop`, `migrate`, `structure dump` `structure load`, `seed` `prepare`, `version`. (@timriley)
207
+ - Support SQLite and Postgres for `db` commands. (@timriley)
208
+ - Add `generate` commands for db components: `generate migration`, `generate relation`, `generate repo`, `generate struct`. (@cllns)
209
+ - Add `generate component` command. (@krzykamil)
210
+ - Add `generate operation` command. (@cllns)
164
211
 
165
212
  ### Changed
166
213
 
167
214
  - Drop support for Ruby 3.0
168
215
 
169
- ## v2.1.1 - 2024-03-19
216
+ [2.2.0.beta1]: https://github.com/hanami/cli/compare/v2.1.1...v2.2.0.beta1
217
+
218
+ ## [2.1.1] - 2024-03-19
170
219
 
171
220
  ### Fixed
172
221
 
173
- - [Ryan Bigg] Properly pass INT signal to child processes when interrupting `hanami assets watch` command
222
+ - Properly pass INT signal to child processes when interrupting `hanami assets watch` command. (@ryanbigg)
174
223
 
175
- ## v2.1.0 - 2024-02-27
224
+ [2.1.1]: https://github.com/hanami/cli/compare/v2.1.0...v2.1.1
225
+
226
+ ## [2.1.0] - 2024-02-27
176
227
 
177
228
  ### Changed
178
229
 
179
- - [Tim Riley] Underscore slice names in `public/assets/` to avoid naming conflicts with nested asset entry points. In this arrangement, an "admin" slice will have its assets compiled into `public/assets/_admin/`.
230
+ - Underscore slice names in `public/assets/` to avoid naming conflicts with nested asset entry points. In this arrangement, an "admin" slice will have its assets compiled into `public/assets/_admin/`. (@timriley)
231
+
232
+ [2.1.0]: https://github.com/hanami/cli/compare/v2.1.0.rc3...v2.1.0
180
233
 
181
- ## v2.1.0.rc3 - 2024-02-16
234
+ ## [2.1.0.rc3] - 2024-02-16
182
235
 
183
236
  ### Changed
184
237
 
185
- - [Tim Riley] For `hanami assets` commands, run a separate assets compilation process per slice (in parallel).
186
- - [Tim Riley] Generate compiled assets into separate folders per slice, each with its own `assets.js` manifest file: `public/assets/` for the app, and `public/assets/[slice_name]/` for each slice.
187
- - [Tim Riley] For `hanami assets` commands, directly detect and invoke the `config/assets.js` files. Look for this file within each slice, and fall back to the app-level file.
188
- - [Tim Riley] Do not generate `"scripts": {"assets": "..."}` section in new app's `package.json`.
189
- - [Tim Riley] Subclasses of `Hanami::CLI::Command` receive default args to their `#initialize` methods, and do not need to re-declare default args themselves.
190
- - [Philip Arndt] Alphabetically sort hanami gems in the new app `Gemfile`.
238
+ - For `hanami assets` commands, run a separate assets compilation process per slice (in parallel). (@timriley)
239
+ - Generate compiled assets into separate folders per slice, each with its own `assets.js` manifest file: `public/assets/` for the app, and `public/assets/[slice_name]/` for each slice. (@timriley)
240
+ - For `hanami assets` commands, directly detect and invoke the `config/assets.js` files. Look for this file within each slice, and fall back to the app-level file. (@timriley)
241
+ - Do not generate `"scripts": {"assets": "..."}` section in new app's `package.json`. (@timriley)
242
+ - Subclasses of `Hanami::CLI::Command` receive default args to their `#initialize` methods, and do not need to re-declare default args themselves. (@timriley)
243
+ - Alphabetically sort hanami gems in the new app `Gemfile`. (@parndt)
191
244
 
192
245
  ### Fixed
193
246
 
194
- - [Nishiki (錦華)] Strip invalid characters from module name when generating new app.
247
+ - Strip invalid characters from module name when generating new app. (@nishiki)
195
248
 
196
- ## v2.1.0.rc2 - 2023-11-08
249
+ [2.1.0.rc3]: https://github.com/hanami/cli/compare/v2.1.0.rc2...v2.1.0.rc3
250
+
251
+ ## [2.1.0.rc2] - 2023-11-08
197
252
 
198
253
  ### Added
199
254
 
200
- - [Tim Riley] Add `--skip-tests` for `hanami generate` commands. This CLI option will skip tests generation.
255
+ - Add `--skip-tests` for `hanami generate` commands. This CLI option will skip tests generation. (@timriley)
201
256
 
202
257
  ### Changed
203
258
 
204
- - [Tim Riley] Set `"type": "module"` in package.json, enabling ES modules by default
205
- - [Tim Riley] Rename `config/assets.mjs` to `config/assets.js` (use a plain `.js` file extension)
259
+ - Set `"type": "module"` in package.json, enabling ES modules by default. (@timriley)
260
+ - Rename `config/assets.mjs` to `config/assets.js` (use a plain `.js` file extension). (@timriley)
206
261
 
207
262
  ### Fixed
208
263
 
209
- - [Tim Riley] Use correct helper names in generated app layout
210
- - [Luca Guidi] Ensure to generate apps with correct pre-release version of `hanami-assets` NPM package
211
- - [Sean Collins] Print to stderr NPM installation errors when running `hanami install`
212
- - [Sean Collins] Ensure to install missing gems after `hanami install` is ran
213
-
214
- ## v2.1.0.rc1 - 2023-11-01
264
+ - Use correct helper names in generated app layout. (@timriley)
265
+ - Ensure to generate apps with correct pre-release version of `hanami-assets` NPM package. (@lucaguidi)
266
+ - Print to stderr NPM installation errors when running `hanami install`. (@cllns)
267
+ - Ensure to install missing gems after `hanami install` is ran. (@cllns)
215
268
 
216
- ### Added
269
+ [2.1.0.rc2]: https://github.com/hanami/cli/compare/v2.1.0.rc1...v2.1.0.rc2
217
270
 
218
- - [Tim Riley] `hanami new` to generate `bin/dev` as configuration for `hanami dev`
219
- - [Luca Guidi] Introducing `hanami generate part` to generate view parts
271
+ ## [2.1.0.rc1] - 2023-11-01
220
272
 
221
- ### Fixed
273
+ ### Added
222
274
 
223
- - [Luca Guidi] `hanami new` generates a fully documented Puma configuration in `config/puma.rb`
275
+ - `hanami new` to generate `bin/dev` as configuration for `hanami dev`. (@timriley)
276
+ - Introducing `hanami generate part` to generate view parts. (@lucaguidi)
224
277
 
225
278
  ### Changed
226
279
 
227
- - [Tim Riley] `hanami new` generates a `config/assets.mjs` as Assets configuration
228
- - [Tim Riley] `hanami new` generates a leaner `package.json`
229
- - [Tim Riley] `hanami new` doesn't generate a default root route anymore
230
- - [Aaron Moodie & Tim Riley] `hanami new` to generate a redesigned 404 and 500 error pages
231
- - [Luca Guidi] When generating a RESTful action, skip `create`, if `new` is present, and `update`, if `edit` is present
280
+ - `hanami new` generates a `config/assets.mjs` as Assets configuration. (@timriley)
281
+ - `hanami new` generates a leaner `package.json`. (@timriley)
282
+ - `hanami new` doesn't generate a default root route anymore. (@timriley)
283
+ - `hanami new` to generate a redesigned 404 and 500 error pages. (@aaronmoodie, @timriley)
284
+ - `hanami new` generates a fully documented Puma configuration in `config/puma.rb`. (@lucaguidi)
285
+ - When generating a RESTful action, skip `create`, if `new` is present, and `update`, if `edit` is present. (@lucaguidi)
286
+
287
+ [2.1.0.rc1]: https://github.com/hanami/cli/compare/v2.1.0.beta2...v2.1.0.rc1
232
288
 
233
- ## v2.1.0.beta2 - 2023-10-04
289
+ ## [2.1.0.beta2] - 2023-10-04
234
290
 
235
291
  ### Added
236
292
 
237
- - [Luca Guidi] `hanami new` generates `Procfile.dev`
238
- - [Luca Guidi] `hanami new` generates basic app assets, if `hanami-assets` is bundled by the app
239
- - [Luca Guidi] `hanami new` accepts `--head` to generate the app using Hanami HEAD version from GitHub
240
- - [Luca Guidi] `hanami generate slice` generates basic slice assets, if `hanami-assets` is bundled by the app
241
- - [Ryan Bigg] `hanami generate action` generates corresponding view, if `hanami-view` is bundled by the app
242
- - [Luca Guidi] `hanami assets compile` to compile assets at the deploy time
243
- - [Luca Guidi] `hanami assets watch` to watch and compile assets at the development time
244
- - [Luca Guidi] `hanami dev` to start the processes in `Procfile.dev`
293
+ - `hanami new` generates `Procfile.dev`. (@lucaguidi)
294
+ - `hanami new` generates basic app assets, if `hanami-assets` is bundled by the app. (@lucaguidi)
295
+ - `hanami new` accepts `--head` to generate the app using Hanami HEAD version from GitHub. (@lucaguidi)
296
+ - `hanami generate slice` generates basic slice assets, if `hanami-assets` is bundled by the app. (@lucaguidi)
297
+ - `hanami generate action` generates corresponding view, if `hanami-view` is bundled by the app. (@ryanbigg)
298
+ - `hanami assets compile` to compile assets at the deploy time. (@lucaguidi)
299
+ - `hanami assets watch` to watch and compile assets at the development time. (@lucaguidi)
300
+ - `hanami dev` to start the processes in `Procfile.dev`. (@lucaguidi)
245
301
 
246
302
  ### Fixed
247
303
 
248
- - [Luca Guidi] `hanami new` generates a `Gemfile` with `hanami-webconsole` in `:development` group
249
- - [Luca Guidi] `hanami new` generates a `Gemfile` with versioned `hanami-webconsole`, `hanami-rspec`, and `hanami-reloader`
304
+ - `hanami new` generates a `Gemfile` with `hanami-webconsole` in `:development` group. (@lucaguidi)
305
+ - `hanami new` generates a `Gemfile` with versioned `hanami-webconsole`, `hanami-rspec`, and `hanami-reloader`. (@lucaguidi)
306
+
307
+ [2.1.0.beta2]: https://github.com/hanami/cli/compare/v2.1.0.beta1...v2.1.0.beta2
250
308
 
251
- ## v2.1.0.beta1 - 2023-06-29
309
+ ## [2.1.0.beta1] - 2023-06-29
252
310
 
253
311
  ### Added
254
312
 
255
- - [Tim Riley] `hanami new` to generate default views, templates, and helpers
256
- - [Tim Riley] `hanami generate slice` to generate default views, templates, and helpers
257
- - [Tim Riley] `hanami generate action` to generate associated view and template
258
- - [Tim Riley] Introduced `hanami generate view`
259
- - [Tim Riley] `hanami new` to generate `Gemfile` with `hanami-view` and `hanami-webconsole` gems
260
- - [Tim Riley] `hanami new` to generate default error pages for `404` and `500` HTTP errors
313
+ - `hanami new` to generate default views, templates, and helpers. (@timriley)
314
+ - `hanami generate slice` to generate default views, templates, and helpers. (@timriley)
315
+ - `hanami generate action` to generate associated view and template. (@timriley)
316
+ - Introduced `hanami generate view`. (@timriley)
317
+ - `hanami new` to generate `Gemfile` with `hanami-view` and `hanami-webconsole` gems. (@timriley)
318
+ - `hanami new` to generate default error pages for `404` and `500` HTTP errors. (@timriley)
261
319
 
262
320
  ### Fixed
263
321
 
264
- - [Philip Arndt] `hanami server` to start only one Puma worker by default
322
+ - `hanami server` to start only one Puma worker by default. (@parndt)
265
323
 
266
- ## v2.0.3 - 2023-02-01
324
+ [2.1.0.beta1]: https://github.com/hanami/cli/compare/v2.0.3...v2.1.0.beta1
325
+
326
+ ## [2.0.3] - 2023-02-01
267
327
 
268
328
  ### Added
269
329
 
270
- - [Luca Guidi] Generate a default `.gitignore` when using `hanami new`
330
+ - Generate a default `.gitignore` when using `hanami new`. (@lucaguidi)
271
331
 
272
332
  ### Fixed
273
333
 
274
- - [dsisnero] Ensure to run automatically bundle gems when using `hanami new` on Windows
275
- - [Luca Guidi] Ensure to generate the correct action identifier in routes when using `hanami generate action` with deeply nested action name
334
+ - Ensure to run automatically bundle gems when using `hanami new` on Windows. (@dsisnero)
335
+ - Ensure to generate the correct action identifier in routes when using `hanami generate action` with deeply nested action name. (@lucaguidi)
336
+
337
+ [2.0.3]: https://github.com/hanami/cli/compare/v2.0.2...v2.0.3
276
338
 
277
- ## v2.0.2 - 2022-12-25
339
+ ## [2.0.2] - 2022-12-25
278
340
 
279
341
  ### Added
280
342
 
281
- - [Luca Guidi] Official support for Ruby 3.2
343
+ - Official support for Ruby 3.2. (@lucaguidi)
282
344
 
283
- ## v2.0.1 - 2022-12-06
345
+ [2.0.2]: https://github.com/hanami/cli/compare/v2.0.1...v2.0.2
346
+
347
+ ## [2.0.1] - 2022-12-06
284
348
 
285
349
  ### Fixed
286
350
 
287
- - [Luca Guidi] Ensure to load `.env` files during CLI commands execution
288
- - [Luca Guidi] Ensure `hanami server` to respect HTTP port used in `.env` or the value given as CLI argument (`--port`)
351
+ - Ensure to load `.env` files during CLI commands execution. (@lucaguidi)
352
+ - Ensure `hanami server` to respect HTTP port used in `.env` or the value given as CLI argument (`--port`). (@lucaguidi)
353
+
354
+ [2.0.1]: https://github.com/hanami/cli/compare/v2.0.0...v2.0.1
289
355
 
290
- ## v2.0.0 - 2022-11-22
356
+ ## [2.0.0] - 2022-11-22
291
357
 
292
358
  ### Added
293
359
 
294
- - [Tim Riley] Use Zeitwerk to autoload the gem
360
+ - Use Zeitwerk to autoload the gem. (@timriley)
295
361
 
296
362
  ### Fixed
297
363
 
298
- - [Luca Guidi] In case of internal exception, don't print the stack trace to stderr, print the error message, exit with 1.
299
- - [Tim Riley] Ensure to be able to run `hanami` CLI in Hanami app subdirectories.
300
- - [Sean Collins] Return an error when trying to run `hanami new` with an existing target path (file or directory)
364
+ - In case of internal exception, don't print the stack trace to stderr, print the error message, exit with 1. (@lucaguidi)
365
+ - Ensure to be able to run `hanami` CLI in Hanami app subdirectories. (@timriley)
366
+ - Return an error when trying to run `hanami new` with an existing target path (file or directory). (@cllns)
367
+
368
+ [2.0.0]: https://github.com/hanami/cli/compare/v2.0.0.rc1...v2.0.0
301
369
 
302
- ## v2.0.0.rc1 - 2022-11-08
370
+ ## [2.0.0.rc1] - 2022-11-08
303
371
 
304
- ## v2.0.0.beta4 - 2022-10-24
372
+ [2.0.0.rc1]: https://github.com/hanami/cli/compare/v2.0.0.beta4...v2.0.0.rc1
373
+
374
+ ## [2.0.0.beta4] - 2022-10-24
305
375
 
306
376
  ### Changed
307
377
 
308
- - [Sean Collins] Show output when generating files (e.g. in `hanami new`) (#49)
309
- - [Luca Guidi] Advertise Bundler and Hanami install steps when running `hanami new` (#54)
378
+ - Show output when generating files (e.g. in `hanami new`). (@cllns in #49)
379
+ - Advertise Bundler and Hanami install steps when running `hanami new`. (@lucaguidi in #54)
380
+
381
+ [2.0.0.beta4]: https://github.com/hanami/cli/compare/v2.0.0.beta3...v2.0.0.beta4
310
382
 
311
- ## v2.0.0.beta3 - 2022-09-21
383
+ ## [2.0.0.beta3] - 2022-09-21
312
384
 
313
385
  ### Added
314
386
 
315
- - [Luca Guidi] New applications to support Puma server out of the box. Add the `puma` gem to `Gemfile` and generate `config/puma.rb`.
316
- - [Luca Guidi] New applications to support code reloading for `hanami server` via `hanami-reloader`. This gem is added to app's `Gemfile`.
317
- - [Marc Busqué] Introduce code reloading for `hanami console` via `#reload` method to be invoked within the console context.
387
+ - New applications to support Puma server out of the box. Add the `puma` gem to `Gemfile` and generate `config/puma.rb`. (@lucaguidi)
388
+ - New applications to support code reloading for `hanami server` via `hanami-reloader`. This gem is added to app's `Gemfile`. (@lucaguidi)
389
+ - Introduce code reloading for `hanami console` via `#reload` method to be invoked within the console context. (@mbusque)
318
390
 
319
- ### Fixed
391
+ ### Changed
320
392
 
321
- - [Luca Guidi] Respect plural when generating code via `hanami new` and `hanami generate`. Example: `hanami new code_insights` => `CodeInsights` instead of `CodeInsight`
322
- - [Luca Guidi] Ensure `hanami generate action` to not crash when invoked with non-RESTful action names. Example: `hanami generate action talent.apply`
393
+ - `hanami generate action` to add routes to `config/routes.rb` without the `define` block context. See https://github.com/hanami/hanami/pull/1208. (@solnic)
323
394
 
324
- ### Changed
395
+ ### Fixed
396
+
397
+ - Respect plural when generating code via `hanami new` and `hanami generate`. Example: `hanami new code_insights` => `CodeInsights` instead of `CodeInsight`. (@lucaguidi)
398
+ - Ensure `hanami generate action` to not crash when invoked with non-RESTful action names. Example: `hanami generate action talent.apply`. (@lucaguidi)
325
399
 
326
- - [Piotr Solnica] `hanami generate action` to add routes to `config/routes.rb` without the `define` block context. See https://github.com/hanami/hanami/pull/1208
400
+ [2.0.0.beta3]: https://github.com/hanami/cli/compare/v2.0.0.beta2...v2.0.0.beta3
327
401
 
328
- ## v2.0.0.beta2 - 2022-08-16
402
+ ## [2.0.0.beta2] - 2022-08-16
329
403
 
330
404
  ### Added
331
405
 
332
- - [Luca Guidi] Added `hanami generate slice` command, for generating a new slice [#32]
333
- - [Luca Guidi] Added `hanami generate action` command, for generating a new action in the app or a slice [#33]
334
- - [Marc Busqué] Added `hanami middlewares` command, for listing middleware configed in app and/or in `config/routes.rb` [#30]
406
+ - Added `hanami generate slice` command, for generating a new slice. (@lucaguidi in #32)
407
+ - Added `hanami generate action` command, for generating a new action in the app or a slice. (@lucaguidi in #33)
408
+ - Added `hanami middlewares` command, for listing middleware configured in app and/or in `config/routes.rb`. (@mbusque in #30)
335
409
 
336
410
  ### Changed
337
411
 
338
- - [Marc Busqué, Tim Riley] `hanami` command will detect the app even when called inside nested subdirectories [#34]
339
- - [Seb Wilgosz] Include hanami-validations in generated apps `Gemfile`, allowing action classes to specify `.params` [#31]
340
- - [Tim Riley] Include dry-types in generated apps `Gemfile`, which is used by the types module defined in `lib/[app_name]/types.rb` (dry-types is no longer a hard dependency of the hanami gem as of 2.0.0.beta2) [#29]
341
- - [Tim Riley] Include dotenv in generated apps `Gemfile`, allowing `ENV` values to be loaded from `.env*` files [#29]
412
+ - `hanami` command will detect the app even when called inside nested subdirectories. (@mbusque, @timriley in #34)
413
+ - Include hanami-validations in generated app's `Gemfile`, allowing action classes to specify `.params`. (@swilgosz in #31)
414
+ - Include dry-types in generated app's `Gemfile`, which is used by the types module defined in `lib/[app_name]/types.rb` (dry-types is no longer a hard dependency of the hanami gem as of 2.0.0.beta2). (@timriley in #29)
415
+ - Include dotenv in generated app's `Gemfile`, allowing `ENV` values to be loaded from `.env*` files. (@timriley in #29)
342
416
 
343
- ## v2.0.0.beta1 - 2022-07-20
417
+ [2.0.0.beta2]: https://github.com/hanami/cli/compare/v2.0.0.beta1...v2.0.0.beta2
418
+
419
+ ## [2.0.0.beta1] - 2022-07-20
344
420
 
345
421
  ### Added
346
422
 
347
- - [Luca Guidi] Implemented `hanami new` to generate a new Hanami app
348
- - [Piotr Solnica] Implemented `hanami console` to start an interactive console (REPL)
349
- - [Marc Busqué] Implemented `hanami server` to start a HTTP server based on Rack
350
- - [Marc Busqué] Implemented `hanami routes` to print app routes
351
- - [Luca Guidi] Implemented `hanami version` to print app Hanami version
423
+ - Implemented `hanami new` to generate a new Hanami app. (@lucaguidi)
424
+ - Implemented `hanami console` to start an interactive console (REPL). (@solnic)
425
+ - Implemented `hanami server` to start a HTTP server based on Rack. (@mbusque)
426
+ - Implemented `hanami routes` to print app routes. (@mbusque)
427
+ - Implemented `hanami version` to print app Hanami version. (@lucaguidi)
428
+
429
+ [2.0.0.beta1]: https://github.com/hanami/cli/compare/v2.0.0.alpha8.1...v2.0.0.beta1
352
430
 
353
- ## v2.0.0.alpha8.1 - 2022-05-23
431
+ ## [2.0.0.alpha8.1] - 2022-05-23
354
432
 
355
433
  ### Fixed
356
434
 
357
- - [Tim Riley] Ensure CLI starts properly by fixing use of `Slice.slice_name`
435
+ - Ensure CLI starts properly by fixing use of `Slice.slice_name`. (@timriley)
436
+
437
+ [2.0.0.alpha8.1]: https://github.com/hanami/cli/compare/v2.0.0.alpha8...v2.0.0.alpha8.1
358
438
 
359
- ## v2.0.0.alpha8 - 2022-05-19
439
+ ## [2.0.0.alpha8] - 2022-05-19
360
440
 
361
441
  ### Fixed
362
442
 
363
- - [Andrew Croome] Respect HANAMI_ENV env var to set Hanami env if no `--env` option is supplied
364
- - [Lucas Mendelowski] Ensure Sequel migrations extension is loaded before related `db` commands are run
443
+ - Respect HANAMI_ENV env var to set Hanami env if no `--env` option is supplied. (@croomes)
444
+ - Ensure Sequel migrations extension is loaded before related `db` commands are run. (@waiting-for-dev)
365
445
 
366
- ## v2.0.0.alpha7 - 2022-03-11
446
+ [2.0.0.alpha8]: https://github.com/hanami/cli/compare/v2.0.0.alpha7...v2.0.0.alpha8
447
+
448
+ ## [2.0.0.alpha7] - 2022-03-11
367
449
 
368
450
  ### Changed
369
451
 
370
- - [Tim Riley] [Internal] Update console slice readers to work with new `Hanami::Application.slices` API
452
+ - [Internal] Update console slice readers to work with new `Hanami::Application.slices` API. (@timriley)
453
+
454
+ [2.0.0.alpha7]: https://github.com/hanami/cli/compare/v2.0.0.alpha6.1...v2.0.0.alpha7
371
455
 
372
- ## v2.0.0.alpha6.1 - 2022-02-11
456
+ ## [2.0.0.alpha6.1] - 2022-02-11
373
457
 
374
458
  ### Fixed
375
459
 
376
- - [Viet Tran] Ensure `hanami db` commands to work with `hanami` `v2.0.0.alpha6`
460
+ - Ensure `hanami db` commands to work with `hanami` `v2.0.0.alpha6`. (@vietqhoang)
377
461
 
378
- ## v2.0.0.alpha6 - 2022-02-10
462
+ [2.0.0.alpha6.1]: https://github.com/hanami/cli/compare/v2.0.0.alpha6...v2.0.0.alpha6.1
463
+
464
+ ## [2.0.0.alpha6] - 2022-02-10
379
465
 
380
466
  ### Added
381
467
 
382
- - [Luca Guidi] Official support for Ruby: MRI 3.1
468
+ - Official support for Ruby: MRI 3.1. (@lucaguidi)
383
469
 
384
470
  ### Changed
385
471
 
386
- - [Luca Guidi] Drop support for Ruby: MRI 2.6, and 2.7
472
+ - Drop support for Ruby: MRI 2.6, and 2.7. (@lucaguidi)
473
+
474
+ [2.0.0.alpha6]: https://github.com/hanami/cli/compare/v2.0.0.alpha4...v2.0.0.alpha6
387
475
 
388
- ## v2.0.0.alpha4 - 2021-12-07
476
+ ## [2.0.0.alpha4] - 2021-12-07
389
477
 
390
478
  ### Added
391
479
 
392
- - [Tim Riley] Display a custom prompt when using irb-based console (consistent with pry-based console)
393
- - [Phil Arndt] Support `postgresql://` URL schemes (in addition to existing `postgres://` support) for `db` subcommands
480
+ - Display a custom prompt when using irb-based console (consistent with pry-based console). (@timriley)
481
+ - Support `postgresql://` URL schemes (in addition to existing `postgres://` support) for `db` subcommands. (@parndt)
394
482
 
395
483
  ### Fixed
396
484
 
397
- - [Tim Riley] Ensure slice helper methods work in console (e.g. top-level `main` method will return `Main::Slice` if an app has a "main" slice defined)
485
+ - Ensure slice helper methods work in console (e.g. top-level `main` method will return `Main::Slice` if an app has a "main" slice defined). (@timriley)
486
+
487
+ [2.0.0.alpha4]: https://github.com/hanami/cli/compare/v2.0.0.alpha3...v2.0.0.alpha4
398
488
 
399
- ## v2.0.0.alpha3 - 2021-11-09
489
+ ## [2.0.0.alpha3] - 2021-11-09
400
490
 
401
- No changes.
491
+ [2.0.0.alpha3]: https://github.com/hanami/cli/compare/v2.0.0.alpha2...v2.0.0.alpha3
402
492
 
403
- ## v2.0.0.alpha2 - 2021-05-04
493
+ ## [2.0.0.alpha2] - 2021-05-04
404
494
 
405
495
  ### Added
406
496
 
407
- - [Luca Guidi] Official support for Ruby: MRI 3.0
408
- - [Luca Guidi] Dynamically change the set of available commands depending on the context (outside or inside an Hanami app)
409
- - [Luca Guidi] Dynamically change the set of available commands depending on Hanami app architecture
410
- - [Luca Guidi] Implemented `hanami version` (available both outside and inside an Hanami app)
411
- - [Piotr Solnica] Implemented `db *` commands (available both outside and inside an Hanami app) (sqlite and postgres only for now)
412
- - [Piotr Solnica] Implemented `console` command with support for `IRB` and `Pry` (`pry` is auto-detected)
497
+ - Official support for Ruby: MRI 3.0. (@lucaguidi)
498
+ - Dynamically change the set of available commands depending on the context (outside or inside an Hanami app). (@lucaguidi)
499
+ - Dynamically change the set of available commands depending on Hanami app architecture. (@lucaguidi)
500
+ - Implemented `hanami version` (available both outside and inside an Hanami app). (@lucaguidi)
501
+ - Implemented `db *` commands (available both outside and inside an Hanami app) (sqlite and postgres only for now). (@solnic)
502
+ - Implemented `console` command with support for `IRB` and `Pry` (`pry` is auto-detected). (@solnic)
413
503
 
414
504
  ### Changed
415
505
 
416
- - [Luca Guidi] Changed the purpose of this gem: the CLI Ruby framework has been extracted into `dry-cli` gem. `hanami-cli` is now the `hanami` command line.
417
- - [Luca Guidi] Drop support for Ruby: MRI 2.5.
506
+ - Changed the purpose of this gem: the CLI Ruby framework has been extracted into `dry-cli` gem. `hanami-cli` is now the `hanami` command line. (@lucaguidi)
507
+ - Drop support for Ruby: MRI 2.5. (@lucaguidi)
418
508
 
419
- ## v1.0.0.alpha1 - 2019-01-30
509
+ [2.0.0.alpha2]: https://github.com/hanami/cli/compare/v1.0.0.alpha1...v2.0.0.alpha2
510
+
511
+ ## [1.0.0.alpha1] - 2019-01-30
420
512
 
421
513
  ### Added
422
514
 
423
- - [Luca Guidi] Inheritng from subclasses of `Hanami::CLI::Command`, allows to inherit arguments, options, description, and examples.
424
- - [Luca Guidi] Allow to use `super` from `#call`
515
+ - Inheriting from subclasses of `Hanami::CLI::Command`, allows to inherit arguments, options, description, and examples. (@lucaguidi)
516
+ - Allow to use `super` from `#call`. (@lucaguidi)
425
517
 
426
518
  ### Changed
427
519
 
428
- - [Luca Guidi] Drop support for Ruby: MRI 2.3, and 2.4.
520
+ - Drop support for Ruby: MRI 2.3, and 2.4. (@lucaguidi)
521
+
522
+ [1.0.0.alpha1]: https://github.com/hanami/cli/compare/v0.3.1...v1.0.0.alpha1
429
523
 
430
- ## v0.3.1 - 2019-01-18
524
+ ## [0.3.1] - 2019-01-18
431
525
 
432
526
  ### Added
433
527
 
434
- - [Luca Guidi] Official support for Ruby: MRI 2.6
435
- - [Luca Guidi] Support `bundler` 2.0+
528
+ - Official support for Ruby: MRI 2.6. (@lucaguidi)
529
+ - Support `bundler` 2.0+. (@lucaguidi)
436
530
 
437
- ## v0.3.0 - 2018-10-24
531
+ [0.3.1]: https://github.com/hanami/cli/compare/v0.3.0...v0.3.1
438
532
 
439
- ## v0.3.0.beta1 - 2018-08-08
533
+ ## [0.3.0] - 2018-10-24
534
+
535
+ [0.3.0]: https://github.com/hanami/cli/compare/v0.3.0.beta1...v0.3.0
536
+
537
+ ## [0.3.0.beta1] - 2018-08-08
440
538
 
441
539
  ### Added
442
540
 
443
- - [Anton Davydov & Alfonso Uceda] Introduce array type for arguments (`foo exec test spec/bookshelf/entities spec/bookshelf/repositories`)
444
- - [Anton Davydov & Alfonso Uceda] Introduce array type for options (`foo generate config --apps=web,api`)
445
- - [Alfonso Uceda] Introduce variadic arguments (`foo run ruby:latest -- ruby -v`)
446
- - [Luca Guidi] Official support for JRuby 9.2.0.0
541
+ - Introduce array type for arguments (`foo exec test spec/bookshelf/entities spec/bookshelf/repositories`). (@davydovanton, @AlfonsoUceda)
542
+ - Introduce array type for options (`foo generate config --apps=web,api`). (@davydovanton, @AlfonsoUceda)
543
+ - Introduce variadic arguments (`foo run ruby:latest -- ruby -v`). (@AlfonsoUceda)
544
+ - Official support for JRuby 9.2.0.0. (@lucaguidi)
447
545
 
448
546
  ### Fixed
449
547
 
450
- - [Anton Davydov] Print informative message when unknown or wrong option is passed (`"test" was called with arguments "--framework=unknown"`)
548
+ - Print informative message when unknown or wrong option is passed (`"test" was called with arguments "--framework=unknown"`). (@davydovanton)
549
+
550
+ [0.3.0.beta1]: https://github.com/hanami/cli/compare/v0.2.0...v0.3.0.beta1
551
+
552
+ ## [0.2.0] - 2018-04-11
553
+
554
+ [0.2.0]: https://github.com/hanami/cli/compare/v0.2.0.rc2...v0.2.0
451
555
 
452
- ## v0.2.0 - 2018-04-11
556
+ ## [0.2.0.rc2] - 2018-04-06
453
557
 
454
- ## v0.2.0.rc2 - 2018-04-06
558
+ [0.2.0.rc2]: https://github.com/hanami/cli/compare/v0.2.0.rc1...v0.2.0.rc2
455
559
 
456
- ## v0.2.0.rc1 - 2018-03-30
560
+ ## [0.2.0.rc1] - 2018-03-30
457
561
 
458
- ## v0.2.0.beta2 - 2018-03-23
562
+ [0.2.0.rc1]: https://github.com/hanami/cli/compare/v0.2.0.beta2...v0.2.0.rc1
563
+
564
+ ## [0.2.0.beta2] - 2018-03-23
459
565
 
460
566
  ### Added
461
567
 
462
- - [Anton Davydov & Luca Guidi] Support objects as callbacks
568
+ - Support objects as callbacks. (@davydovanton, @lucaguidi)
463
569
 
464
570
  ### Fixed
465
571
 
466
- - [Anton Davydov & Luca Guidi] Ensure callbacks' context of execution (aka `self`) to be the command that is being executed
572
+ - Ensure callbacks' context of execution (aka `self`) to be the command that is being executed. (@davydovanton, @lucaguidi)
573
+
574
+ [0.2.0.beta2]: https://github.com/hanami/cli/compare/v0.2.0.beta1...v0.2.0.beta2
467
575
 
468
- ## v0.2.0.beta1 - 2018-02-28
576
+ ## [0.2.0.beta1] - 2018-02-28
469
577
 
470
578
  ### Added
471
579
 
472
- - [Anton Davydov] Register `before`/`after` callbacks for commands
580
+ - Register `before`/`after` callbacks for commands. (@davydovanton)
581
+
582
+ [0.2.0.beta1]: https://github.com/hanami/cli/compare/v0.1.1...v0.2.0.beta1
473
583
 
474
- ## v0.1.1 - 2018-02-27
584
+ ## [0.1.1] - 2018-02-27
475
585
 
476
586
  ### Added
477
587
 
478
- - [Luca Guidi] Official support for Ruby: MRI 2.5
588
+ - Official support for Ruby: MRI 2.5. (@lucaguidi)
479
589
 
480
590
  ### Fixed
481
591
 
482
- - [Alfonso Uceda] Ensure default values for arguments to be sent to commands
483
- - [Alfonso Uceda] Ensure to fail when a missing required argument isn't provider, but an option is provided instead
592
+ - Ensure default values for arguments to be sent to commands. (@AlfonsoUceda)
593
+ - Ensure to fail when a missing required argument isn't provided, but an option is provided instead. (@AlfonsoUceda)
484
594
 
485
- ## v0.1.0 - 2017-10-25
595
+ [0.1.1]: https://github.com/hanami/cli/compare/v0.1.0...v0.1.1
486
596
 
487
- ## v0.1.0.rc1 - 2017-10-16
597
+ ## [0.1.0] - 2017-10-25
488
598
 
489
- ## v0.1.0.beta3 - 2017-10-04
599
+ [0.1.0]: https://github.com/hanami/cli/compare/v0.1.0.rc1...v0.1.0
490
600
 
491
- ## v0.1.0.beta2 - 2017-10-03
601
+ ## [0.1.0.rc1] - 2017-10-16
492
602
 
493
- ### Added
603
+ [0.1.0.rc1]: https://github.com/hanami/cli/compare/v0.1.0.beta3...v0.1.0.rc1
604
+
605
+ ## [0.1.0.beta3] - 2017-10-04
494
606
 
495
- [Alfonso Uceda] Allow default value for arguments
607
+ [0.1.0.beta3]: https://github.com/hanami/cli/compare/v0.1.0.beta2...v0.1.0.beta3
496
608
 
497
- ## v0.1.0.beta1 - 2017-08-11
609
+ ## [0.1.0.beta2] - 2017-10-03
498
610
 
499
611
  ### Added
500
612
 
501
- - [Alfonso Uceda, Luca Guidi] Commands banner and usage
502
- - [Alfonso Uceda] Added support for subcommands
613
+ - Allow default value for arguments. (@AlfonsoUceda)
614
+
615
+ [0.1.0.beta2]: https://github.com/hanami/cli/compare/v0.1.0.beta1...v0.1.0.beta2
616
+
617
+ ## [0.1.0.beta1] - 2017-08-11
618
+
619
+ ### Added
503
620
 
504
- - [Alfonso Uceda] Validations for arguments and options
505
- - [Alfonso Uceda] Commands arguments and options
506
- - [Alfonso Uceda] Commands description
507
- - [Alfonso Uceda, Oana Sipos] Commands aliases
508
- - [Luca Guidi] Exit on unknown command
509
- - [Luca Guidi, Alfonso Uceda, Oana Sipos] Command lookup
510
- - [Luca Guidi, Tim Riley] Trie based registry to register commands and allow third-parties to override/add commands
621
+ - Commands banner and usage. (@AlfonsoUceda, @lucaguidi)
622
+ - Added support for subcommands. (@AlfonsoUceda)
623
+ - Validations for arguments and options. (@AlfonsoUceda)
624
+ - Commands arguments and options. (@AlfonsoUceda)
625
+ - Commands description. (@AlfonsoUceda)
626
+ - Commands aliases. (@AlfonsoUceda, @oana-sipos)
627
+ - Exit on unknown command. (@lucaguidi)
628
+ - Command lookup. (@lucaguidi, @AlfonsoUceda, @oana-sipos)
629
+ - Trie based registry to register commands and allow third-parties to override/add commands. (@lucaguidi, @timriley)
630
+
631
+ [0.1.0.beta1]: https://github.com/hanami/cli/releases/tag/v0.1.0.beta1