We are delighted to introduce our new version (0.1.7 ) of Mishka developer tools library.
Kindly ensure that the macro is updated as quickly as feasible. This version includes a bug patch in the macro kernel that eliminates the issue of not being able to build in projects.
Changelog for MishkaDeveloperTools 0.1.7
In the past, it was possible to extend validation and sanitizer functions within the macro itself; however, this was a relatively insignificant addition that was ultimately overwritten. The same opportunity will now be available to you if you include environment in the project.
For example:
Application.put_env(:guarded_struct, :validate_derive, [TestValidate, TestValidate2])
Application.put_env(:guarded_struct, :sanitize_derive, [TestSanitize, TestSanitize2])
# OR
Application.put_env(:guarded_struct, :validate_derive, TestValidate)
Application.put_env(:guarded_struct, :sanitize_derive, TestSanitize)
I offer my heartfelt apologies for the occurrence of this bug and express my desire to encounter less similar challenges in the future.
Refs:
- Add warning around runtime modification of compile env · elixir-lang/elixir@bd99dcc · GitHub
- Mix cannot build a macro library used in another library when macro is called more than once in project modules · Issue #13699 · elixir-lang/elixir · GitHub
- The dependency build is outdated error with getting lib from Github branch - #2 by shahryarjb
- Is there a way put env in compile time and use it in runtime?
Full Changelog: Comparing 0.1.6...0.1.7 · mishka-group/mishka_developer_tools · GitHub
Thank you in advance