-
Notifications
You must be signed in to change notification settings - Fork 109
Prefixing manifest dependencies with organization name #814
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
Comments
I feel that specifying the organization name for every dependency that you use in the project using fpm is an overkill. Mostly, the package managers require you to type the dependency with their version number and that's it nothing more. This makes the developer worry less about the manifest configuration. But, yes since we allow multiple packages of the same name under different organizations in the Fortran registry. I think the third option seems to be easier to read and less prone to commit errors. |
The thing is that specifying an organization name is supposed to be mandatory when uploading a package. If we'd need to resolve a dependency without an organization name specified, we'd need to query all orgs to find a package that has that name. And then throw an error if the package name was found more than once. If a package has to be part of an organization, I think indicating the organization should be mandatory. |
I also agree with @arteevraina. I would avoid polluting the [dependencies]
name = "dependency_name"
origin = "registry_name_or_address"
version = "0.1.0" |
I think my initial suggestions were a bit confusing. Currently, there are three ways to include dependencies (they are the same internally):
I therefore think it makes most sense if we just add another Furthermore, we will add an optional |
Added |
@minhqdao Yeah looks pretty clean. |
Uh oh!
There was an error while loading. Please reload this page.
To avoid name collisions and squatting, the current state (especially for the registry) would be that every dependency has to be part of a namespace (or organization or publisher). The question is now how that should look like within the fpm manifest.
Without namespace, get this dependency from the registry:
With namespace:
This would, in theory, allow multiple packages with the same name to be incorporated:
I could envisage multiple kinds of separators for separating the namespace from the package name, like
_
,-
,/
or%
(the latter is probably the most Fortran 😄). But distinguishing the namespace from package name inorganization_name_package_name
might be difficult using_
as the separator.Of course, we could also add an additional required field as such:
However, having to add another field might be overkill? 🤔
We also thought about adding namespaces for
git
dependencies in the same go.How do feel about all of this?
The text was updated successfully, but these errors were encountered: