Skip to content
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

Publishing Libraries in the Package Manager #1773

Closed
6 of 10 tasks
radeusgd opened this issue May 29, 2021 · 0 comments
Closed
6 of 10 tasks

Publishing Libraries in the Package Manager #1773

radeusgd opened this issue May 29, 2021 · 0 comments
Labels
-tooling Category: tooling p-high Should be completed in the next sprint

Comments

@radeusgd
Copy link
Member

radeusgd commented May 29, 2021

Summary

We need to add a functionality to allow publishing to repositories.

This task encompasses the client-side functionality, as our server-side solution is done separately (https://github.com/enso-org/libraries-repository-infrastructure/issues/3) and the public server-side solution will be done later as a separate task (#1784).

Value

  • Users can publish their packages.

Specification

  • MVP
    • Implement the logic for creating a compressed package from the library.
    • Implement uploading the package according to the repository API.
    • Add the endpoints for publishing a library to the Project Manager / Language Server API.
    • Implement the CLI command for publishing a library.
      • It should publish the library from the current repository.
      • It should have an optional parameter to override to which repository it is being published. The main one will be the default.
    • Extend the simple library repository server with a basic upload functionality: it should take files, optionally verify the secret token, check that the library name+version combination is not yet taken and put the uploaded files in the correct directory.
  • Implement progress tracking of file upload, so that nice progress bars can be displayed for big archives.
  • Discuss if we should use XZ compression instead of gzip.
  • Implement the logic that parses the project files and lists the direct dependencies of the project.
    • This will be used to generate the manifest file including direct dependencies.
  • Both the CLI and PM will rely on the authentication done earlier (Authentication for Publishing the Libraries #1774).

Acceptance Criteria & Test Cases

  • The above specification has been completed.
  • Publishing was manually tested against our deployment.
@radeusgd radeusgd mentioned this issue May 29, 2021
28 tasks
@radeusgd radeusgd added Category: Libraries -tooling Category: tooling p-high Should be completed in the next sprint labels Jun 2, 2021
@radeusgd radeusgd mentioned this issue Jul 23, 2021
4 tasks
@wdanilo wdanilo closed this as completed Apr 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-tooling Category: tooling p-high Should be completed in the next sprint
Projects
None yet
Development

No branches or pull requests

2 participants