-
Notifications
You must be signed in to change notification settings - Fork 178
Open
Labels
refactoringCode maintenance and quality improvementCode maintenance and quality improvement
Description
clarity-repl is the biggest component of Clarinet (~15k LoC, 28% of the project).
As a result it can be long to build.
Additionally, many other components depend on it.
- Set some default constant in their own component chore: new clarinet-defaults #2217
- Directly import clarity from
clarityinstead ofclarity-repl::clarityrefactor: don't expose clarity crate from clarity-repl #2260 - Move
ast_visitor(or the all::analysiseventually) in its own components since it's isolated code and many other components depend on it - Move
dependency_detectorin it's component since it's isolated code
Eventually, the goal is have smaller, more focused components, and reduce coupling between each.
This has two goals:
- make the code base easier to navigate
- speed up the feedback loop by reducing compile time
Running
$ touch components/clarity-repl/src/repl/mod.rs && cargo build --timings
$ open target/cargo-timings/cargo-timing.html touch a clarinet-repl file to force the rebuild.
Result obviously depends on the machine used itself

Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
refactoringCode maintenance and quality improvementCode maintenance and quality improvement