influxdb/workspace-hack
Stuart Carnie 81722dc19b
feat: AST traversal using Visitor pattern (#5796)
* feat: Partition implementation of Visitable for InfluxQL AST

* feat: Added consistent structures for each clause to simplify visitor

Continued to expand `accept` and `pre` / `post` visit implementations.

* feat: Added insta and tests using snapshots (thanks @crepererum)

The insta crate simplifies the process of validating the combination of
visitor and accept implementations are called and in the correct order.

* chore: Run cargo hakari tasks

* feat: Added remaining snapshot tests

Some tests are failing as some minor type changes must be added along
with the addition of related visitor functions.

* feat: Add types to represent each clause in numerous statements

These clauses permit distinct visit functions on the `Visitor` type.

* chore: Reformat `SELECT`

* chore: Explicitly specify access to export selected types only

This required completing all the missing documentation for the exported
types.

* chore: Update Cargo.lock

* chore: macro to implement common traits and hide 0th tuple element

Co-authored-by: CircleCI[bot] <circleci@influxdata.com>
2022-10-13 22:37:49 +00:00
..
src feat: Results of using cargo hakari init workspace-hack 2021-11-19 09:20:35 -05:00
.gitattributes feat: Results of using cargo hakari init workspace-hack 2021-11-19 09:20:35 -05:00
Cargo.toml feat: AST traversal using Visitor pattern (#5796) 2022-10-13 22:37:49 +00:00
README.md feat: Add CI jobs and documentation for the workspace-hack crate 2021-11-19 11:05:34 -05:00
build.rs feat: Results of using cargo hakari init workspace-hack 2021-11-19 09:20:35 -05:00

README.md

workspace-hack

This crate is a "workspace hack" crate managed by cargo hakari.

Its purpose is to unify the features used by all crates in the workspace so that the crates share more dependencies and rebuild crates less. There are more details in hakari's documentation.

CI failures

If the workspace_hack_checks CI job is failing, there are two possible reasons and solutions:

  • If cargo hakari generate --diff fails, that means a crate has started or stopped using a feature of some crate and that feature isn't up-to-date in the workspace-hack crate. To fix this, run cargo hakari generate and commit the changes.
  • If cargo hakari manage-deps --dry-run fails, that means a crate in the workspace isn't depending on the workspace-hack crate. To fix this, run cargo hakari manage-deps and commit the changes.