You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Tamas Cservenak (Jira)" <ji...@apache.org> on 2024/01/17 09:22:00 UTC
[jira] [Updated] (MRESOLVER-465) Make room for new version scheme implementations
[ https://issues.apache.org/jira/browse/MRESOLVER-465?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tamas Cservenak updated MRESOLVER-465:
--------------------------------------
Description:
Since eons Resolver had the "generic" scheme implementing the {{Version}}, {{VersionRange}} and {{VersionConstraint}} API interfaces.
Interesting fact: {{GenericVersionRange}} and {{GenericVersionConstraint}} are NOT tied in any way to {{GenericVersion}} implementation, they are happy with plain {{Version}} interface as well, they are truly "generic".
This means, that a scheme needs really only to provide {{Version}} implementatiom (currently in form of {{GenericVersion}}) and a "factory" for it (currently in a form of {{GenericVersionScheme}}.
Refactor a bit, and make room for alternate {{Version}} implementations.
Fact: the change can be done in source and binary compatible way, and is enforced by japicmp.
was:
Since eons Resolver had the "generic" scheme implementing the {{Version}}, {{VersionRange}} and {{VersionConstraint}} API interfaces.
Interesting fact: {{GenericVersionRange}} and {{GenericVersionConstraint}} are NOT tied in any way to {{GenericVersion}} implementation, they are happy with plain {{Version}} interface as well.
This means, that a scheme needs really only to provide {{Version}} implementatiom (currently in form of {{GenericVersion}}) and a "factory" for it (currently in a form of {{GenericVersionScheme}}.
Refactor a bit, and make room for alternate {{Version}} implementations.
Fact: the change can be done in source and binary compatible way, and is enforced by japicmp.
> Make room for new version scheme implementations
> ------------------------------------------------
>
> Key: MRESOLVER-465
> URL: https://issues.apache.org/jira/browse/MRESOLVER-465
> Project: Maven Resolver
> Issue Type: Improvement
> Components: Resolver
> Reporter: Tamas Cservenak
> Priority: Major
> Fix For: 2.0.0, 2.0.0-alpha-7
>
>
> Since eons Resolver had the "generic" scheme implementing the {{Version}}, {{VersionRange}} and {{VersionConstraint}} API interfaces.
> Interesting fact: {{GenericVersionRange}} and {{GenericVersionConstraint}} are NOT tied in any way to {{GenericVersion}} implementation, they are happy with plain {{Version}} interface as well, they are truly "generic".
> This means, that a scheme needs really only to provide {{Version}} implementatiom (currently in form of {{GenericVersion}}) and a "factory" for it (currently in a form of {{GenericVersionScheme}}.
> Refactor a bit, and make room for alternate {{Version}} implementations.
> Fact: the change can be done in source and binary compatible way, and is enforced by japicmp.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)