Remove Esy usage for package management in install.ml with the following...
Motivation and Context
Removing esy as a default package manager to install and update packages inside a ligo project
Related issues
✅ Checklist
-
Tests
-
Bug fixes and new features have corresponding tests added
-
-
Documentation
- I checked whether I should update the docs and did so if necessary:
-
README files (root, adapter, and plugin) -
Haddock & plugin's code documentation -
Other documents
-
- I checked whether I should update the docs and did so if necessary:
-
launch.json
config (if updated)-
I keep the format of launch.json
(in package.json) synced with how the plugin code and the adapter's code work with this configuration. -
If I changed values in the initial configuration for launch.json
, I also searched for them in code and updated accordingly. I keep the default configurations and default values for not listed fields in match.
-
-
Breaking changes (if applied)
-
If I introduced changes that are not compatible with the older versions of ligo
, I updated our version restrictions according to the respective document.
-
Description
MR tries to phase out esy from ligo's internal package management. This particular MR only focuses on the installation of packages from ligo registry. It definitely requires some pruning when it comes to the code written which would make things more readable with comments and more function abstractions. Also this also has some incomplete features like installing a package using ligo install <pkg-name>
would not work and something that would be an upcoming feature.
Also this MR still generates a _esy
and esy.lock
directories to make sure that the pre-processor doesn't break. This is something that would be looked into the next phase.
With all that said I think it can be reviewed and I would love to have comments and changes from everyone in the ligo community.
Component
-
compiler -
website -
webide -
vscode-plugin -
debugger
Types of changes
-
Bug fix (non-breaking change which fixes an issue) -
New feature (non-breaking change which adds functionality) -
Breaking change (fix or feature that would cause existing functionality to not work as expected) -
Performance improvement (non-breaking change that improves performance) -
None (change with no changelog)
Changelog
Removing esy from ligo package management - phase 1. This encompasses installing and updating packages from package.json. While trying to maintain compatibility with the current pre-processor (hence _esy
and esy.lock
still remains the names of the directories for index.json
and installation.json
) This doesn't include ad-hoc addition of packages to a ligo project using ligo install <pkg-name>
To use the new package manager use --package-management-alpha
flag
Checklist:
-
Changes follow the existing coding style (use dune @fmt
to check). -
Tests for the changes have been added (for bug fixes / feature). -
Documentation has been updated. -
Changelog description has been added (if appropriate). -
Start titles under ## Changelog
section with #### (if appropriate). -
There is no image or uploaded file in changelog -
Examples in changed behaviour have been added to the changelog (for breaking change / feature).