Commit graph

131 commits

Author SHA1 Message Date
Igor Barakaiev
8e71283ab1
improvement: support :kind in find_and_update_or_create_module/5 (#38) 2024-07-09 20:31:50 -04:00
Zach Daniel
a56346f329 chore: fix credo 2024-07-09 20:25:10 -04:00
Zach Daniel
7fcf6a6143 improvement: ensure test/support is in elixirc paths automatically when necessary 2024-07-09 20:23:15 -04:00
Zach Daniel
73f489369f fix: simplify how we get tasks to run
fix: don't try to format after editing `mix.exs`
2024-07-09 17:41:24 -04:00
Zach Daniel
0aed000bbf fix: fix deps compilation issues by vendoring deps.compile
fix: honor `--yes` flag when installing deps always
2024-07-09 16:38:57 -04:00
Zach Daniel
f81fd85d6e improvement: small tweaks to output
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-07-09 12:05:15 -04:00
Zach Daniel
a6fb8ec1dc fix: remove shortnames for global options, to reduce conflicts 2024-07-09 09:00:53 -04:00
Rebecca Le
913945bb33
docs: Add protocol to config doc link to make it usable (#39)
Having a fully-qualified URL lets you cmd+click and go there from your editor! (on macOS - its probably ctrl+click on Windows)
2024-07-09 08:37:18 -04:00
Zach Daniel
27b6808408 fix: remove erroneous warning while composing tasks
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-07-08 15:58:38 -04:00
Igor Barakaiev
a7e1397940
fix: pass file_path to ensure_default_configs_exist (#36)
Some checks failed
CI / ash-ci (push) Has been cancelled
2024-07-07 12:05:23 -04:00
Igor Barakaiev
90b23e898d
improvement: support an optional append? flag for add_dep/3 (#34) 2024-07-07 12:05:01 -04:00
Zach Daniel
7eba812020 chore: cleanup
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-07-06 13:28:08 -04:00
Zach Daniel
1303e0f394 improvement: add add_dep/2-3, that accepts a full dep specification
improvement: deprecate `add_dependency/3-4`

closes #35
2024-07-06 13:28:08 -04:00
Igor Barakaiev
df409b00fd
fix: preserve original ordering in Util.Install (#33)
Some checks failed
CI / ash-ci (push) Has been cancelled
2024-07-04 07:52:48 -04:00
Igor Barakaiev
dc04861ca1
fix: include only "mix.exs" in the actual run in apply_and_fetch_dependencies (#32) 2024-07-04 06:51:45 -04:00
Igor Barakaiev
2f3e3065f3
fix: always return {:ok, zipper} in append_new_to_list/2 (#31) 2024-07-04 06:37:02 -04:00
Zach Daniel
b2ab78d681 chore: pass credo
Some checks failed
CI / ash-ci (push) Has been cancelled
2024-07-02 23:29:04 -04:00
Zach Daniel
8937710de9 improvement: make module moving much smarter
improvement: add configurations for not moving certain modules
improvement: make `source_folders` configurable
2024-07-02 23:26:39 -04:00
Zach Daniel
77003e2d34 chore: remove debug
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-07-02 17:21:18 -04:00
Zach Daniel
44ebb4d7b0 chore: cleanup code addition 2024-07-02 17:20:50 -04:00
Zach Daniel
5e5e11633f improvement: properly find nested modules again
improvement: make igniter tests much faster by not searching our own project
2024-07-02 16:33:08 -04:00
Zach Daniel
0a7aa522fe chore: small changes to recently added function interfaces 2024-07-02 14:07:48 -04:00
Zach Daniel
be6051b523 improvement: add include_all_elixir_files/1
improvement: add `module_exists?/2`
improvement: add `find_and_update_module/3`
2024-07-02 13:50:06 -04:00
Zach Daniel
d7613a2438 improvement: only require rejecting mix deps.get one time & remember that choice
improvement: simpler messages signaling a mix deps.get
2024-07-02 13:22:22 -04:00
Zach Daniel
b13d58a4f3 improvement: move_modules -> move_files 2024-07-01 20:45:14 -04:00
Zach Daniel
2c2a2e35e3 improvement: move some files around and update config names 2024-07-01 20:43:39 -04:00
Zach Daniel
b878903e26 chore: fix bugs/build
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-07-01 18:27:41 -04:00
Zach Daniel
922178e9ff improvement: use %Info{} structs to compose and plan nested installers 2024-07-01 17:56:14 -04:00
Igor Barakaiev
05f52a9413
improvement: add Igniter.apply_and_fetch_dependencies/1 and Igniter.has_changes?/1 (#28)
---------

Co-authored-by: Zach Daniel <zach@zachdaniel.dev>
2024-07-01 15:29:51 -04:00
Zach Daniel
99ed483629 improvement: rename option_schema/2 -> info/2 2024-07-01 14:25:33 -04:00
Zach Daniel
4b8e519c10 improvement: only create default configs if an env-specific config is created 2024-07-01 14:16:07 -04:00
Zach Daniel
dd42d449f2 improvement: add an optional path argument to find_and_update_or_create_module/5 2024-06-28 18:59:34 -04:00
Zach Daniel
fd475c366a improvement: add option_schema/2 callback to Igniter.Mix.Task 2024-06-28 18:56:04 -04:00
Zach Daniel
615196235e fix: fix match error in append_new_to_list
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-06-28 14:25:13 -04:00
Zach Daniel
ccb0984314 improvement: Module.find_and_update_or_create_module
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-06-28 00:36:04 -04:00
Zach Daniel
0dc28d3e8b improvement: add a way to move files
improvement: add `.igniter.exs` file, and `mix igniter.setup` to create it
improvement: move files to configured location based on changes
2024-06-27 23:16:26 -04:00
Igor Barakaiev
e72aa1ee4a
fix: version string splitting (#25) 2024-06-27 17:53:44 -04:00
Igor Barakaiev
8077946d10
improvement: add fallback to compose_task (#19)
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-06-26 11:40:58 -04:00
Igor Barakaiev
a6464db658
improvement: add proper_test_support_location/1 (#18)
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-06-26 08:02:29 -04:00
Igor Barakaiev
1271a75e04
improvement: add proper_test_location/1 (#17)
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-06-25 13:09:48 -04:00
Zach Daniel
fa3b0d5fb3 improvement: use override: true for git/github deps as well 2024-06-21 19:57:39 -04:00
Zach Daniel
0e82c3aebb fix: don't show unnecessary diff output
fix: don't compile before fetching deps
2024-06-21 18:06:00 -04:00
Zach Daniel
faff4590c5 chore: use override: true when installing for a path 2024-06-21 16:21:20 -04:00
Zach Daniel
dcde30c280 chore: fix typo on trailing comments logic 2024-06-21 16:17:21 -04:00
Zach Daniel
f5741fad45 chore: add comment noting that we can remove the trailing comments logic 2024-06-21 16:08:44 -04:00
Zach Daniel
8bcf7d690e improvement: workaround trailing comment issues w/ sourceror
can remove all of the trailing comment logic when
https://github.com/doorgan/sourceror/issues/150
is addressed
2024-06-21 16:07:26 -04:00
Zach Daniel
7a361b8cda chore: rescue any errors using Macro.Env.expand_alias
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-06-20 13:42:06 -04:00
Zach Daniel
338cb7281f improvement: make installer use override: true on local dependency
improvement: ensure dependencies are compiled after `mix deps.get`

(sorry about the dirty dirty hack required there)
2024-06-20 13:34:02 -04:00
Zach Daniel
0590e44841 chore: introduce utils namespace
docs: add explanation of codebase to writing generators guide
2024-06-20 09:46:45 -04:00
Zach Daniel
46fc43a8cc improvement: use warnings instead of errors for better UX
improvement: move proejct related things to `Project` namespace
2024-06-20 09:37:06 -04:00
Zach Daniel
824bc34c3a improvement: rename env_at_cursor to current_env
closes #11
2024-06-19 15:55:15 -04:00
Zach Daniel
680526c685 chore: improvements/renames 2024-06-19 15:54:19 -04:00
Igor Barakaiev
062d46a7ef
chore: Miscellaneous clarifications and cleaning up (#8) 2024-06-19 15:35:06 -04:00
Zach Daniel
019add50de improvement: improve marshalling of spitfire env to macro env
Some checks failed
CI / ash-ci (push) Has been cancelled
2024-06-15 14:24:45 -04:00
Zach Daniel
afbcb3cd1a improvement: show warning when adding dependencies by default
Some checks are pending
CI / ash-ci (push) Waiting to run
2024-06-14 20:09:20 -04:00
Zach Daniel
bcb4439d07 chore: fix build 2024-06-14 17:21:24 -04:00
Zach Daniel
067c4a6df0 improvement: various restructurings and improvements across the board
improvement: use `Spitfire` to ensure that aliases are considered when comparing modules
improvement: use `Spitfire` to *use* any existing aliases when inserting code
improvement: use `Zipper.topmost` to power new `Spitfire`-related features
2024-06-14 17:07:32 -04:00
Zach Daniel
933876d377 fix: patch formatter fix, to be removed later when rewrite PR is merged 2024-06-13 19:10:20 -04:00
Zach Daniel
2f2c1e35c6 fix: properly find functions in scope
test: add first tests for `Igniter.Code.Function`
2024-06-13 14:09:26 -04:00
Zach Daniel
95b1da8535 fix: Igniter.Code.Common.with/2 was not properly merging with original zipper
docs: update typespecs and docs for Igniter.Code.Function
2024-06-13 13:37:58 -04:00
Zach Daniel
60b81273cb improvement: use path: prefix instead of local: 2024-06-13 11:05:11 -04:00
Zach Daniel
f05b113cc9 improvement: support space-separated installers 2024-06-13 11:02:55 -04:00
Zach Daniel
180942b155 fix: remove unsupportable package installation symbols
fix: don't run `mix deps.get` if dependency changes are aborted
docs: document package formats
2024-06-13 10:57:10 -04:00
Zach Daniel
5c8a2870db fix: always format the file even if no .formatter.exs exists 2024-06-13 08:17:50 -04:00
Zach Daniel
3bcffb90ff docs: ndoe -> node 2024-06-12 20:11:41 -04:00
Zach Daniel
4819d95178 docs: fix docs for add_code/3 2024-06-12 20:11:19 -04:00
Zach Daniel
b9ceb36450 docs: igniter.new docs
improvement: ignore installer tasks that are not igniter tasks
2024-06-12 20:09:32 -04:00
Zach Daniel
f1e2336358 docs: more docs 2024-06-12 19:37:32 -04:00
Zach Daniel
a156431b9c chore: pass dialyzer/sobelow 2024-06-12 19:16:03 -04:00
Zach Daniel
55d0b061e1 improvement: draw the rest of the owl 2024-06-12 18:22:08 -04:00
Zach Daniel
2a43fc4af7 WIP 2024-06-11 17:33:05 -04:00
Zach Daniel
1812aafac8 WIP 2024-06-10 09:58:20 -04:00
Zach Daniel
414852589e WIP 2024-06-05 10:12:07 -04:00
Zach Daniel
57ee3f9749 WIP 2024-06-03 23:14:36 -04:00
Zach Daniel
f1e0fffc4b improvement: add installer archive 2024-06-03 13:13:49 -04:00
Zach Daniel
d8b463343c chore: WIP on utilities and keywords 2024-06-03 09:14:41 -04:00
Zach Daniel
57288d32ec improvement: more module helpers
test: add regression test
improvement: wrap code in `==code==` so you can tell what is being `puts`
2024-06-02 16:06:01 -04:00
Zach Daniel
aa0c6fd9ec fix: handle existing deps when they are not local properly 2024-05-31 23:50:29 -04:00
Zach Daniel
260d56532b improvement: add CI/build and get it passing locally 2024-05-31 22:59:36 -04:00
Zach Daniel
281ec0f656 write a bunch more code, and add some tests, rework various patterns 2024-05-31 22:09:38 -04:00
Zach Daniel
7ae0261a28 init 2024-05-27 23:30:41 -04:00