mirror of
https://github.com/ProvableHQ/leo.git
synced 2024-12-23 10:12:21 +03:00
grammar fixes
This commit is contained in:
parent
7b150f3a19
commit
1083fc80c2
@ -17,11 +17,11 @@ DRAFT
|
|||||||
|
|
||||||
# Summary
|
# Summary
|
||||||
|
|
||||||
This proposal aims to improve import management system in Leo programs to
|
This proposal aims to improve the import management system in Leo programs to
|
||||||
make program environment more reproducible and predictable. To achieve that
|
make program environment more reproducible and predictable. To achieve that
|
||||||
we suggest few changes to Leo CLI and Manifest:
|
we suggest few changes to Leo CLI and Manifest:
|
||||||
|
|
||||||
- add "dependencies" section to Leo Manifest and add command to pull those dependencies;
|
- add a "dependencies" section to Leo Manifest and add a command to pull those dependencies;
|
||||||
- allow custom names for imports to manually resolve name conflicts;
|
- allow custom names for imports to manually resolve name conflicts;
|
||||||
- store imports as they are called in Leo Manifest;
|
- store imports as they are called in Leo Manifest;
|
||||||
|
|
||||||
@ -33,9 +33,9 @@ imported packages based on both their contents and version.
|
|||||||
What problems does it solve? What is the background?
|
What problems does it solve? What is the background?
|
||||||
|
|
||||||
Current state:
|
Current state:
|
||||||
- imports are published with program to Aleo PM;
|
- imports are published with a program to Aleo PM;
|
||||||
- we treat program as files with no verification of imports (they can be changed locally and published in that state);
|
- we treat programs as files with no verification of imports (they can be changed locally and published in that state);
|
||||||
- name collisions cannot be resolved; new import overwrites existing;
|
- name collisions cannot be resolved; a new import overwrites existing;
|
||||||
|
|
||||||
TBD
|
TBD
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ same name but different authors. To resolve name conflict we suggest storing
|
|||||||
imports as they are named in Leo Manifest file (Leo.toml).
|
imports as they are named in Leo Manifest file (Leo.toml).
|
||||||
|
|
||||||
|
|
||||||
<!-- Suggested change is soft. It changes only the way imports are organized
|
<!-- The suggested change is soft. It changes only the way imports are organized
|
||||||
with minimal changes to other parts of the language.
|
with minimal changes to other parts of the language.
|
||||||
|
|
||||||
We can consider implementing imports/username-package storage, but imports
|
We can consider implementing imports/username-package storage, but imports
|
||||||
@ -81,19 +81,19 @@ will have to be resolved on a different level in compiler. -->
|
|||||||
|
|
||||||
# Drawbacks
|
# Drawbacks
|
||||||
|
|
||||||
This change might require update of already published programs on Aleo PM due to
|
This change might require the update of already published programs on Aleo PM due to
|
||||||
Leo Manifest change. However it is possible to implement it in a backward-compatible
|
Leo Manifest change. However it is possible to implement it in a backward-compatible
|
||||||
way.
|
way.
|
||||||
|
|
||||||
# Effect on Ecosystem
|
# Effect on Ecosystem
|
||||||
|
|
||||||
Proposed improvement provides safety inside Leo programs and should not affect
|
Proposed improvement provides safety inside Leo programs and should not affect
|
||||||
ecosystem except for tools which use Leo directly (such as Aleo Studio).
|
ecosystem except for the tools which use Leo directly (such as Aleo Studio).
|
||||||
|
|
||||||
It is possible that some of the proposed features open new features on Aleo PM.
|
It is possible that some of the proposed features will open new features on Aleo PM.
|
||||||
|
|
||||||
# Alternatives
|
# Alternatives
|
||||||
|
|
||||||
Another approach to stated cases is to keep everything as we have now but change
|
Another approach to the stated cases is to keep everything as we have now but change
|
||||||
the way programs are imported and stored and make names unique. Also, current
|
the way programs are imported and stored and make names unique. Also, current
|
||||||
implementation provides some guarantees on import stablitity and consistency.
|
implementation provides some guarantees on import stablitity and consistency.
|
||||||
|
Loading…
Reference in New Issue
Block a user