-
Notifications
You must be signed in to change notification settings - Fork 124
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] KCL configuration files watch system design #1564
Comments
Good Job! @changsun20 Thanks for the proposal. ❤️ |
what means of installation and update |
Hi @changsun20 😄 You can also add some design details, including:
|
Well, I think my initial thought was user action of add/update. So yes you are write, the language here is not precise enough.
Sure, I'll handle these updates ASAP. |
Closed by #1744 |
Overview
The KCL dependency watch system is a component designed to monitor and manage dependencies within KCL projects. It is inspired by the efficiency and user-friendliness of tools like Cargo for Rust, aiming to provide a seamless development experience by handling real-time dependency updates and integration with the KCL language server.
Note: This issue serves as a work-in-progress outline for the design and implementation of the watch system.
Previous issues and discussions
Design Goals
Core Components
1. Watcher
2. File Type and Change Detector
3. Handler Registry
kcl mod add
command.kcl mod update
command..json
and.yaml
files in the future.4. Configuration Manager (optional for users, in order to lower the cost of releases)
Example Workflow: Dependency Update on Configuration Change
kcl.mod
file in the project, and start monitoring for changes.kcl.mod
to add/update a dependency.kcl.mod
file and compare it with the packages in working environment, which turned out that the dependency has not been installed yet. It then triggers another add/update event, and runskcl mod add/update xxx
command.Challenges
kcl.mod
to manage dependencies effectively.Proposed Solutions
kcl.mod
to ensure accurate dependency management.The text was updated successfully, but these errors were encountered: