igniter/CHANGELOG.md

349 lines
8.4 KiB
Markdown
Raw Normal View History

2024-06-13 12:34:13 +12:00
# Change Log
All notable changes to this project will be documented in this file.
See [Conventional Commits](Https://conventionalcommits.org) for commit guidelines.
<!-- changelog -->
2024-07-20 04:33:27 +12:00
## [v0.3.6](https://github.com/ash-project/igniter/compare/v0.3.5...v0.3.6) (2024-07-19)
### Bug Fixes:
* properly scope configuration modification code
* properly add blocks of code together
2024-07-20 02:36:22 +12:00
## [v0.3.5](https://github.com/ash-project/igniter/compare/v0.3.4...v0.3.5) (2024-07-19)
### Bug Fixes:
* properly move to pattern matches in scope
* configures?/3 -> configures_key & configures_root_key (#54)
### Improvements:
* add blocks together more fluidly in `add_code`
2024-07-20 00:31:35 +12:00
## [v0.3.4](https://github.com/ash-project/igniter/compare/v0.3.3...v0.3.4) (2024-07-19)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- recompile `:igniter` if it has to
2024-07-20 00:31:35 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- include config in include_all_elixir_files (#55)
2024-07-20 00:31:35 +12:00
2024-07-20 00:32:03 +12:00
- add Function.argument_equals?/3 (#53)
2024-07-20 00:31:35 +12:00
2024-07-20 00:32:03 +12:00
- add Function.argument_equals?/3
2024-07-20 00:31:35 +12:00
2024-07-19 03:39:54 +12:00
## [v0.3.3](https://github.com/ash-project/igniter/compare/v0.3.2...v0.3.3) (2024-07-18)
### Improvements:
2024-07-20 00:32:03 +12:00
- fix function typespecs & add `inflex` dependency
2024-07-19 03:39:54 +12:00
2024-07-20 00:32:03 +12:00
- only show executed installers (#50)
2024-07-19 03:39:54 +12:00
2024-07-20 00:32:03 +12:00
- support tuple dependencies in igniter.install (#49)
2024-07-19 03:39:54 +12:00
2024-07-16 13:38:23 +12:00
## [v0.3.2](https://github.com/ash-project/igniter/compare/v0.3.1...v0.3.2) (2024-07-16)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- don't compile igniter dep again when compiling deps
2024-07-16 13:38:23 +12:00
2024-07-16 13:12:07 +12:00
## [v0.3.1](https://github.com/ash-project/igniter/compare/v0.3.0...v0.3.1) (2024-07-16)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- when adding code to surrounding block, don't go up multiple blocks
2024-07-16 13:12:07 +12:00
2024-07-16 06:07:05 +12:00
## [v0.3.0](https://github.com/ash-project/igniter/compare/v0.2.13...v0.3.0) (2024-07-15)
### Improvements:
2024-07-20 00:32:03 +12:00
- Add `Igniter.Libs.Phoenix` for working with Phoenix
2024-07-16 06:07:05 +12:00
2024-07-20 00:32:03 +12:00
- deprecate duplicate `Igniter.Code.Module.move_to_use` function
2024-07-16 06:07:05 +12:00
2024-07-20 00:32:03 +12:00
- `Igniter.Project.Config.configures?/4` that takes a config file
2024-07-16 06:07:05 +12:00
2024-07-20 00:32:03 +12:00
- Add `Igniter.Util.Warning` for formatting code in warnings
2024-07-16 06:07:05 +12:00
2024-07-15 14:05:56 +12:00
## [v0.2.13](https://github.com/ash-project/igniter/compare/v0.2.12...v0.2.13) (2024-07-15)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- remove redundant case clause in `Igniter.Code.Common`
2024-07-15 14:05:56 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- make `apply_and_fetch_dependencies` only change `deps/0`
2024-07-15 14:05:56 +12:00
2024-07-20 00:32:03 +12:00
- remove a bunch of dependencies by using :inets & :httpc
2024-07-15 14:05:56 +12:00
2024-07-11 02:57:12 +12:00
## [v0.2.12](https://github.com/ash-project/igniter/compare/v0.2.11...v0.2.12) (2024-07-10)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- fix dialyzer warnings about info/2 never being nil
2024-07-11 02:57:12 +12:00
2024-07-11 00:42:48 +12:00
## [v0.2.11](https://github.com/ash-project/igniter/compare/v0.2.10...v0.2.11) (2024-07-10)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- prevent crash on specific cases with `igniter.new`
2024-07-11 00:42:48 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- more consistent initial impl of `elixirc_paths`
2024-07-11 00:42:48 +12:00
2024-07-20 00:32:03 +12:00
- support :kind in find_and_update_or_create_module/5 (#38)
2024-07-11 00:42:48 +12:00
2024-07-10 12:25:31 +12:00
## [v0.2.10](https://github.com/ash-project/igniter/compare/v0.2.9...v0.2.10) (2024-07-10)
### Improvements:
2024-07-20 00:32:03 +12:00
- ensure `test/support` is in elixirc paths automatically when necessary
2024-07-10 12:25:31 +12:00
2024-07-10 09:41:47 +12:00
## [v0.2.9](https://github.com/ash-project/igniter/compare/v0.2.8...v0.2.9) (2024-07-09)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- simplify how we get tasks to run
2024-07-10 09:41:47 +12:00
2024-07-20 00:32:03 +12:00
- don't try to format after editing `mix.exs`
2024-07-10 09:41:47 +12:00
2024-07-10 08:41:01 +12:00
## [v0.2.8](https://github.com/ash-project/igniter/compare/v0.2.7...v0.2.8) (2024-07-09)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- fix deps compilation issues by vendoring `deps.compile`
2024-07-10 08:41:01 +12:00
2024-07-20 00:32:03 +12:00
- honor `--yes` flag when installing deps always
2024-07-10 08:41:01 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- small tweaks to output
2024-07-10 08:41:01 +12:00
2024-07-10 01:00:59 +12:00
## [v0.2.7](https://github.com/ash-project/igniter/compare/v0.2.6...v0.2.7) (2024-07-09)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- remove shortnames for global options, to reduce conflicts
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- remove erroneous warning while composing tasks
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- pass file_path to `ensure_default_configs_exist` (#36)
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- preserve original ordering in Util.Install (#33)
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- include only "mix.exs" in the actual run in apply_and_fetch_dependencies (#32)
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- always return {:ok, zipper} in append_new_to_list/2 (#31)
2024-07-10 01:00:59 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- support an optional append? flag for add_dep/3 (#34)
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- add `add_dep/2-3`, that accepts a full dep specification
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- deprecate `add_dependency/3-4`
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- make module moving much smarter
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- add configurations for not moving certain modules
2024-07-10 01:00:59 +12:00
2024-07-20 00:32:03 +12:00
- make `source_folders` configurable
2024-07-10 01:00:59 +12:00
2024-07-03 08:50:34 +12:00
## [v0.2.6](https://github.com/ash-project/igniter/compare/v0.2.5...v0.2.6) (2024-07-02)
### Improvements:
2024-07-20 00:32:03 +12:00
- properly find nested modules again
2024-07-03 08:50:34 +12:00
2024-07-20 00:32:03 +12:00
- make igniter tests much faster by not searching our own project
2024-07-03 08:50:34 +12:00
2024-07-20 00:32:03 +12:00
- add `include_all_elixir_files/1`
2024-07-03 08:50:34 +12:00
2024-07-20 00:32:03 +12:00
- add `module_exists?/2`
2024-07-03 08:50:34 +12:00
2024-07-20 00:32:03 +12:00
- add `find_and_update_module/3`
2024-07-03 08:50:34 +12:00
2024-07-20 00:32:03 +12:00
- only require rejecting mix deps.get one time & remember that choice
2024-07-03 08:50:34 +12:00
2024-07-20 00:32:03 +12:00
- simpler messages signaling a mix deps.get
2024-07-03 08:50:34 +12:00
2024-07-02 12:45:33 +12:00
## [v0.2.5](https://github.com/ash-project/igniter/compare/v0.2.4...v0.2.5) (2024-07-02)
### Improvements:
2024-07-20 00:32:03 +12:00
- `move_modules` -> `move_files`
2024-07-02 12:45:33 +12:00
2024-07-20 00:32:03 +12:00
- move some files around and update config names
2024-07-02 12:45:33 +12:00
2024-07-20 00:32:03 +12:00
- use `%Info{}` structs to compose and plan nested installers
2024-07-02 12:45:33 +12:00
2024-07-20 00:32:03 +12:00
- add Igniter.apply_and_fetch_dependencies/1 and Igniter.has_changes?/1 (#28)
2024-07-02 12:45:33 +12:00
2024-07-20 00:32:03 +12:00
- rename option_schema/2 -> info/2
2024-07-02 12:45:33 +12:00
2024-07-20 00:32:03 +12:00
- only create default configs if an env-specific config is created
2024-07-02 12:45:33 +12:00
2024-06-29 11:02:15 +12:00
## [v0.2.4](https://github.com/ash-project/igniter/compare/v0.2.3...v0.2.4) (2024-06-28)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- fix match error in `append_new_to_list`
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- version string splitting (#25)
2024-06-29 11:02:15 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- add an optional path argument to `find_and_update_or_create_module/5`
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- add `option_schema/2` callback to `Igniter.Mix.Task`
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- `Module.find_and_update_or_create_module`
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- add a way to move files
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- add `.igniter.exs` file, and `mix igniter.setup` to create it
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- move files to configured location based on changes
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- add fallback to compose_task (#19)
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- add proper_test_support_location/1 (#18)
2024-06-29 11:02:15 +12:00
2024-07-20 00:32:03 +12:00
- add proper_test_location/1 (#17)
2024-06-29 11:02:15 +12:00
2024-06-22 11:57:52 +12:00
## [v0.2.3](https://github.com/ash-project/igniter/compare/v0.2.2...v0.2.3) (2024-06-21)
### Improvements:
2024-07-20 00:32:03 +12:00
- use `override: true` for git/github deps as well
2024-06-22 11:57:52 +12:00
2024-06-22 10:06:21 +12:00
## [v0.2.2](https://github.com/ash-project/igniter/compare/v0.2.1...v0.2.2) (2024-06-21)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- don't show unnecessary diff output
2024-06-22 10:06:21 +12:00
2024-07-20 00:32:03 +12:00
- don't compile before fetching deps
2024-06-22 10:06:21 +12:00
2024-06-22 08:09:00 +12:00
## [v0.2.1](https://github.com/ash-project/igniter/compare/v0.2.0...v0.2.1) (2024-06-21)
### Improvements:
2024-07-20 00:32:03 +12:00
- workaround trailing comment issues w/ sourceror
2024-06-22 08:09:00 +12:00
2024-07-20 00:32:03 +12:00
- support `--with` option in `igniter.new`
2024-06-22 08:09:00 +12:00
2024-06-21 05:40:31 +12:00
## [v0.2.0](https://github.com/ash-project/igniter/compare/v0.1.8...v0.2.0) (2024-06-20)
### Improvements:
2024-07-20 00:32:03 +12:00
- make installer use `override: true` on local dependency
2024-06-21 05:40:31 +12:00
2024-07-20 00:32:03 +12:00
- ensure dependencies are compiled after `mix deps.get`
2024-06-21 05:40:31 +12:00
2024-07-20 00:32:03 +12:00
- use warnings instead of errors for better UX
2024-06-21 05:40:31 +12:00
2024-07-20 00:32:03 +12:00
- move proejct related things to `Project` namespace
2024-06-21 05:40:31 +12:00
2024-06-20 11:26:02 +12:00
## [v0.1.8](https://github.com/ash-project/igniter/compare/v0.1.7...v0.1.8) (2024-06-19)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- update spitfire for env fix
2024-06-20 11:26:02 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- rename `env_at_cursor` to `current_env`
2024-06-20 11:26:02 +12:00
2024-07-20 00:32:03 +12:00
- improve marshalling of spitfire env to macro env
2024-06-20 11:26:02 +12:00
2024-07-20 00:32:03 +12:00
- show warning when adding dependencies by default
2024-06-20 11:26:02 +12:00
2024-06-15 09:21:44 +12:00
## [v0.1.7](https://github.com/ash-project/igniter/compare/v0.1.6...v0.1.7) (2024-06-14)
### Improvements:
2024-07-20 00:32:03 +12:00
- various restructurings and improvements across the board
2024-06-15 09:21:44 +12:00
2024-07-20 00:32:03 +12:00
- use `Spitfire` to ensure that aliases are considered when comparing modules
2024-06-15 09:21:44 +12:00
2024-07-20 00:32:03 +12:00
- use `Spitfire` to _use_ any existing aliases when inserting code
2024-06-15 09:21:44 +12:00
2024-07-20 00:32:03 +12:00
- use `Zipper.topmost` to power new `Spitfire`-related features
2024-06-15 09:21:44 +12:00
2024-06-14 11:10:48 +12:00
## [v0.1.6](https://github.com/ash-project/igniter/compare/v0.1.5...v0.1.6) (2024-06-13)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- patch formatter fix, to be removed later when rewrite PR is merged
2024-06-14 11:10:48 +12:00
2024-07-20 00:32:03 +12:00
- properly find functions in scope
2024-06-14 11:10:48 +12:00
2024-06-14 05:40:25 +12:00
## [v0.1.5](https://github.com/ash-project/igniter/compare/v0.1.4...v0.1.5) (2024-06-13)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- Igniter.Code.Common.with/2 was not properly merging with original zipper
2024-06-14 05:40:25 +12:00
2024-06-14 03:05:36 +12:00
## [v0.1.4](https://github.com/ash-project/igniter/compare/v0.1.3...v0.1.4) (2024-06-13)
### Improvements:
2024-07-20 00:32:03 +12:00
- use `path:` prefix instead of `local:`
2024-06-14 03:05:36 +12:00
2024-06-14 03:03:10 +12:00
## [v0.1.3](https://github.com/ash-project/igniter/compare/v0.1.2...v0.1.3) (2024-06-13)
### Improvements:
2024-07-20 00:32:03 +12:00
- support space-separated installers
2024-06-14 03:03:10 +12:00
2024-06-14 02:58:08 +12:00
## [v0.1.2](https://github.com/ash-project/igniter/compare/v0.1.1...v0.1.2) (2024-06-13)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- remove unsupportable package installation symbols
2024-06-14 02:58:08 +12:00
2024-07-20 00:32:03 +12:00
- don't run `mix deps.get` if dependency changes are aborted
2024-06-14 02:58:08 +12:00
2024-06-14 02:41:35 +12:00
## [v0.1.1](https://github.com/ash-project/igniter/compare/v0.1.0...v0.1.1) (2024-06-13)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- always format the file even if no `.formatter.exs` exists
2024-06-14 02:41:35 +12:00
2024-06-13 12:34:13 +12:00
## [v0.1.0](https://github.com/ash-project/igniter/compare/v0.1.0...v0.1.0) (2024-06-13)
### Bug Fixes:
2024-07-20 00:32:03 +12:00
- handle existing deps when they are not local properly
2024-06-13 12:34:13 +12:00
### Improvements:
2024-07-20 00:32:03 +12:00
- ignore installer tasks that are not igniter tasks
2024-06-13 12:34:13 +12:00
2024-07-20 00:32:03 +12:00
- draw the rest of the owl
2024-06-13 12:34:13 +12:00
2024-07-20 00:32:03 +12:00
- add installer archive
2024-06-13 12:34:13 +12:00
2024-07-20 00:32:03 +12:00
- more module helpers
2024-06-13 12:34:13 +12:00
2024-07-20 00:32:03 +12:00
- wrap code in `==code==` so you can tell what is being `puts`
2024-06-13 12:34:13 +12:00
2024-07-20 00:32:03 +12:00
- add CI/build and get it passing locally