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

[Proposal] Support a dependency graph in the packager #940

Open
henneberger opened this issue Oct 22, 2024 · 0 comments
Open

[Proposal] Support a dependency graph in the packager #940

henneberger opened this issue Oct 22, 2024 · 0 comments
Labels
enhancement New feature or request packager
Milestone

Comments

@henneberger
Copy link
Contributor

This proposal is to increase the support of shared UDTs and shared libraries.

Dependencies resolved from the repository currently has the limitation that they must be fully self contained: shared libraries must be shaded or they will cause class conflicts at runtime. Therefore, they cannot be shared between packages. We handle jars manually and do not have access to a build system to refactor out common or shared dependencies.

We have a few options:

Maven repository dependency

Rather than including the jar in the package that is sent to the repository, we include a maven reference. We can then invoke gradle at compile-time to download the jars to do the necessary dependency deduplication. Local maven dependencies cannot be supported since we would have issues mapping the local repository into docker/k8s, so only remote dependencies would be supported. If the user uses an institutional maven repository, we would also need to include the ability to configure it in the package.json.

Packages can also have dependency

We manually resolve a dependency graph and assure we only download one copy of all dependencies. We can use semver to determine if dependencies are compatible and issue warnings if they are not.

This is open for comments.

@henneberger henneberger added enhancement New feature or request packager labels Oct 22, 2024
@github-project-automation github-project-automation bot moved this to Backlog in DataSQRL Oct 22, 2024
@mbroecheler mbroecheler added this to the uncategorized milestone Feb 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request packager
Projects
Status: Backlog
Development

No branches or pull requests

2 participants