This commit adds a function to the rule engine that alows users
to transform text or JSON objects using [jq filter programs][1].
[jq][1] is a command line tool that can be used to transform
and filter JSON text using jq's built-in language. The rule engine
function that is added with this commit uses the
[Erlang jq NIF library][2] that wraps the jq C library in an
Erlang NIF function.
[1]: https://stedolan.github.io/jq/
[2]: https://github.com/emqx/jq
- Secure tests on master branch after merge.
- Improve build cache hit rates
Due to security reason, github only allow reuse cache from
- same branch
- base branch
- default branch
Branch Feature-A could not reuse the cache from Feature-B
- Developers could run the workflow in their own forked repo
before make the PR, this could relieve the runners on upstream repo
While Mix is not the main build tool, we remove the commited
`mix.lock` file to reduce friction when updating dependencies, since
it requires remembering to run `mix deps.get` to update the
`mix.lock`, used by a CI check in
`scripts/check-elixir-deps-discrepancies.exs`. We change said script
to produce the required file on the fly.