You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Arcadiy Ivanov <ar...@gmail.com> on 2015/03/20 23:52:32 UTC

Idea RFI: Artifact-based repositories

Hi folks,

I'd like to feel your temperature wrt the following improvement I would 
like to make to Maven before I start working on it.

*== Artifact-based Reposi**tories* ==

In Tycho we have these constructs:

https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_context_of_the_build

  <repository>
       <id>eclipse-indigo</id>
       <layout>p2</layout>
       <url>http://download.eclipse.org/releases/indigo</url>
  </repository>

P2 repositories can be encapsulated in an archive. An archive, 
naturally, can be available as an artifact in some repo somewhere 
(including the local one).


What would you think about adding something like:


  <repository>
       <id>eclipse-indigo</id>
       <layout>p2</layout>
       <groupId>foo</artifactId>
       <artifactId>bar</artifactId>
       <version>1.2.3-SNAPSHOT</version>
       <type>tgz</type>
       <required>true</required>
  </repository>


The broad strokes are as follows:

  * Repo artifact becomes a dependency of an artifact being built on the
    same terms as its parent would be, i.e. if you can't find parent you
    can't build same with repo artifact (by default)
  * If repo <required> (or <optional> to reverse the semantics) is false
    (true), failure to resolve the repository does not lead to a
    critical failure and reactor proceeeds as if the repository
    declaration did not occur.
  * Repo artifact is attempted to be resolved using all of the
    repositories inherited from parents, ad infinitum, or in the
    repository declarations prior to the one being considered. Artifact
    is, otherwise, resolved by standard means.

Let me know what you think,

-- 
Arcadiy Ivanov
arcadiy@gmail.com | @arcivanov | https://ivanov.biz
https://github.com/arcivanov


Re: Idea RFI: Artifact-based repositories

Posted by Arcadiy Ivanov <ar...@gmail.com>.
On 2015-03-21 11:26, Kristian Rosenvold wrote:
>   I read some of the docs you linked to I still have no idea of what it
> is you want to do. A one-line sales pitch would do a lot of good for
> lazy folks like me.
Currently repositories can be specified by URL only. I'd like to be able 
to specify a repository of any type encapsulated in an arbitrary 
artifact located in some other repository (local or remote).

> Kristian
>
>
> 2015-03-20 23:52 GMT+01:00 Arcadiy Ivanov <ar...@gmail.com>:
>> Hi folks,
>>
>> I'd like to feel your temperature wrt the following improvement I would like
>> to make to Maven before I start working on it.
>>
>> *== Artifact-based Reposi**tories* ==
>>
>> In Tycho we have these constructs:
>>
>> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_context_of_the_build
>>
>>   <repository>
>>        <id>eclipse-indigo</id>
>>        <layout>p2</layout>
>>        <url>http://download.eclipse.org/releases/indigo</url>
>>   </repository>
>>
>> P2 repositories can be encapsulated in an archive. An archive, naturally,
>> can be available as an artifact in some repo somewhere (including the local
>> one).
>>
>>
>> What would you think about adding something like:
>>
>>
>>   <repository>
>>        <id>eclipse-indigo</id>
>>        <layout>p2</layout>
>>        <groupId>foo</artifactId>
>>        <artifactId>bar</artifactId>
>>        <version>1.2.3-SNAPSHOT</version>
>>        <type>tgz</type>
>>        <required>true</required>
>>   </repository>
>>
>>
>> The broad strokes are as follows:
>>
>>   * Repo artifact becomes a dependency of an artifact being built on the
>>     same terms as its parent would be, i.e. if you can't find parent you
>>     can't build same with repo artifact (by default)
>>   * If repo <required> (or <optional> to reverse the semantics) is false
>>     (true), failure to resolve the repository does not lead to a
>>     critical failure and reactor proceeeds as if the repository
>>     declaration did not occur.
>>   * Repo artifact is attempted to be resolved using all of the
>>     repositories inherited from parents, ad infinitum, or in the
>>     repository declarations prior to the one being considered. Artifact
>>     is, otherwise, resolved by standard means.
>>
>> Let me know what you think,
>>
>> --
>> Arcadiy Ivanov
>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>> https://github.com/arcivanov
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


-- 
Arcadiy Ivanov
arcadiy@gmail.com | @arcivanov | https://ivanov.biz
https://github.com/arcivanov


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Kristian Rosenvold <kr...@gmail.com>.
 I read some of the docs you linked to I still have no idea of what it
is you want to do. A one-line sales pitch would do a lot of good for
lazy folks like me.

Kristian


2015-03-20 23:52 GMT+01:00 Arcadiy Ivanov <ar...@gmail.com>:
> Hi folks,
>
> I'd like to feel your temperature wrt the following improvement I would like
> to make to Maven before I start working on it.
>
> *== Artifact-based Reposi**tories* ==
>
> In Tycho we have these constructs:
>
> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_context_of_the_build
>
>  <repository>
>       <id>eclipse-indigo</id>
>       <layout>p2</layout>
>       <url>http://download.eclipse.org/releases/indigo</url>
>  </repository>
>
> P2 repositories can be encapsulated in an archive. An archive, naturally,
> can be available as an artifact in some repo somewhere (including the local
> one).
>
>
> What would you think about adding something like:
>
>
>  <repository>
>       <id>eclipse-indigo</id>
>       <layout>p2</layout>
>       <groupId>foo</artifactId>
>       <artifactId>bar</artifactId>
>       <version>1.2.3-SNAPSHOT</version>
>       <type>tgz</type>
>       <required>true</required>
>  </repository>
>
>
> The broad strokes are as follows:
>
>  * Repo artifact becomes a dependency of an artifact being built on the
>    same terms as its parent would be, i.e. if you can't find parent you
>    can't build same with repo artifact (by default)
>  * If repo <required> (or <optional> to reverse the semantics) is false
>    (true), failure to resolve the repository does not lead to a
>    critical failure and reactor proceeeds as if the repository
>    declaration did not occur.
>  * Repo artifact is attempted to be resolved using all of the
>    repositories inherited from parents, ad infinitum, or in the
>    repository declarations prior to the one being considered. Artifact
>    is, otherwise, resolved by standard means.
>
> Let me know what you think,
>
> --
> Arcadiy Ivanov
> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
> https://github.com/arcivanov
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Karl Heinz Marbaise <kh...@gmx.de>.
Hi,
 >> The problem is compatibility and the toolchain which already exist and
>> would break..
>
> It is absolutely true that if this feature is introduced Maven less than
> version X will not accept the POM.

The Maven version is not related to this, cause its based on the POM 
modellVersion....which is at the moment at 4.0.0 and this is the factor 
which will limit this. All Maven verisons which will read modellVersion 
4.0.0 will work..(maven 2.2.1, 3.0.5, 3.1.1, 3.2.5, 3.3.1 etc. 
(theoretical Maven 2.0.X will work also)

There have been longer discussions on the dev list about exactly this 
subject...

If we would change Maven 4.X to use a different POM (modellVersion) but 
you need to distribute a POM which is modellVersion 4.0.0 conform to be 
consumed by other Maven versions as well...otherwise you will force 
everyone to upgrade by changing a switch which will not work.

It takes a really long time to get people to upgrade new 
versions...currently people are working with Maven 2.2.1 etc. (I know 
they should think hard about it)...


 > But Maven ver X+ will still accept
> both URL-based and Artifact-based repositories. Hence the forward
> compatibility, not backwards.

See above. The POM is the factor NOT the Maven version itself...

Furthermore if you change the pom modell this will result in artifacts 
within repositories (like Maven Central) which can't be used by other 
versions which will not work...

 > Maven already has prerequisites

prerequisites defines the build time requirement for a particular 
project and has nothing to do with run time...and consuming the pom file....


 >> .
 >>
 >> See here: Many ideas already exist...
 >>
 >> 
http://jira.codehaus.org/browse/MNG#selectedTab=com.atlassian.jira.plugin.system.project%3Aroadmap-panel 

 >>
 >>
 >> In particular the part: "Issues to be reviewed for 4.x"...
 >>
 >> You could make a entry with your suggestins etc. and maybe a proof of
 >> concept implementation?
 > That's great! Thanks a lot, I'll do that.
 >
 >>
 >>>
 >>> On 2015-03-21 04:11, Jeff MAURY wrote:
 >>>> then your stuff will not be Maven compatible. You will face non
 >>>> adoption
 >>>> from the community
 >>>>
 >>>> Jeff
 >>>>
 >>>> On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com>
 >>>> wrote:
 >>>>
 >>>>> Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
 >>>>>
 >>>>>
 >>>>> On 2015-03-21 03:31, Jeff MAURY wrote:
 >>>>>
 >>>>>> how will you extend the repository element in maven ?
 >>>>>>
 >>>>>> Jeff
 >>>>>>
 >>>>>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
 >>>>>> wrote:
 >>>>>>
 >>>>>>   Hi folks,
 >>>>>>> I'd like to feel your temperature wrt the following improvement I
 >>>>>>> would
 >>>>>>> like to make to Maven before I start working on it.
 >>>>>>>
 >>>>>>> *== Artifact-based Reposi**tories* ==
 >>>>>>>
 >>>>>>> In Tycho we have these constructs:
 >>>>>>>
 >>>>>>> 
https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_
 >>>>>>>
 >>>>>>>
 >>>>>>> context_of_the_build
 >>>>>>>
 >>>>>>>    <repository>
 >>>>>>>         <id>eclipse-indigo</id>
 >>>>>>>         <layout>p2</layout>
 >>>>>>> <url>http://download.eclipse.org/releases/indigo</url>
 >>>>>>>    </repository>
 >>>>>>>
 >>>>>>> P2 repositories can be encapsulated in an archive. An archive,
 >>>>>>> naturally,
 >>>>>>> can be available as an artifact in some repo somewhere (including
 >>>>>>> the
 >>>>>>> local
 >>>>>>> one).
 >>>>>>>
 >>>>>>>
 >>>>>>> What would you think about adding something like:
 >>>>>>>
 >>>>>>>
 >>>>>>>    <repository>
 >>>>>>>         <id>eclipse-indigo</id>
 >>>>>>>         <layout>p2</layout>
 >>>>>>>         <groupId>foo</artifactId>
 >>>>>>>         <artifactId>bar</artifactId>
 >>>>>>>         <version>1.2.3-SNAPSHOT</version>
 >>>>>>>         <type>tgz</type>
 >>>>>>>         <required>true</required>
 >>>>>>>    </repository>
 >>>>>>>
 >>>>>>>
 >>>>>>> The broad strokes are as follows:
 >>>>>>>
 >>>>>>>    * Repo artifact becomes a dependency of an artifact being built
 >>>>>>> on the
 >>>>>>>      same terms as its parent would be, i.e. if you can't find
 >>>>>>> parent you
 >>>>>>>      can't build same with repo artifact (by default)
 >>>>>>>    * If repo <required> (or <optional> to reverse the semantics) is
 >>>>>>> false
 >>>>>>>      (true), failure to resolve the repository does not lead to a
 >>>>>>>      critical failure and reactor proceeeds as if the repository
 >>>>>>>      declaration did not occur.
 >>>>>>>    * Repo artifact is attempted to be resolved using all of the
 >>>>>>>      repositories inherited from parents, ad infinitum, or in the
 >>>>>>>      repository declarations prior to the one being considered.
 >>>>>>> Artifact
 >>>>>>>      is, otherwise, resolved by standard means.
 >>>>>>>
 >>>>>>> Let me know what you think,
 >>>>>>>
 >>>>>>> --
 >>>>>>> Arcadiy Ivanov
 >>>>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
 >>>>>>> https://github.com/arcivanov
 >>>>>>>
 >>>>>>>
 >>>>>>>
 >>>>> --
 >>>>> Arcadiy Ivanov
 >>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
 >>>>> https://github.com/arcivanov
 >>>>>
 >>>>>
 >>>>> ---------------------------------------------------------------------
 >>>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
 >>>>> For additional commands, e-mail: dev-help@maven.apache.org
 >>>>>
 >>>>>
 >>>>
 >>>
 >>
 >> ---------------------------------------------------------------------
 >> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
 >> For additional commands, e-mail: dev-help@maven.apache.org
 >>
 >>
 >
 >

Kind regards
Karl Heinz Marbaise

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Arcadiy Ivanov <ar...@gmail.com>.
On 2015-03-21 09:37, Karl Heinz Marbaise wrote:
> Hi,
>
> On 3/21/15 2:14 PM, Arcadiy Ivanov wrote:
>> So Maven pom is set in stone and no changes can be introduced to it?
>
> For Model version 4.0.0 at which is Maven at the moment i don't see a 
> chance for such things...
>
> But there is no thing which prevents us from changing for Maven Model 
> 5.0.0 (Maven 4.X)...
>
[...]
> It breaks cause the tags are not optional....
>
> I have simply added a repository like you suggested to an existing pom 
> which results in the following: 
[...]
>
>>
>> What would be the fundamental reason for never ever ever considering any
>> additions to the POM ever again?
>
> The problem is compatibility and the toolchain which already exist and 
> would break..

It is absolutely true that if this feature is introduced Maven less than 
version X will not accept the POM. But Maven ver X+ will still accept 
both URL-based and Artifact-based repositories. Hence the forward 
compatibility, not backwards. Maven already has prerequisites

> .
>
> See here: Many ideas already exist...
>
> http://jira.codehaus.org/browse/MNG#selectedTab=com.atlassian.jira.plugin.system.project%3Aroadmap-panel 
>
>
> In particular the part: "Issues to be reviewed for 4.x"...
>
> You could make a entry with your suggestins etc. and maybe a proof of 
> concept implementation?
That's great! Thanks a lot, I'll do that.

>
>>
>> On 2015-03-21 04:11, Jeff MAURY wrote:
>>> then your stuff will not be Maven compatible. You will face non 
>>> adoption
>>> from the community
>>>
>>> Jeff
>>>
>>> On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com>
>>> wrote:
>>>
>>>> Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
>>>>
>>>>
>>>> On 2015-03-21 03:31, Jeff MAURY wrote:
>>>>
>>>>> how will you extend the repository element in maven ?
>>>>>
>>>>> Jeff
>>>>>
>>>>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>   Hi folks,
>>>>>> I'd like to feel your temperature wrt the following improvement I
>>>>>> would
>>>>>> like to make to Maven before I start working on it.
>>>>>>
>>>>>> *== Artifact-based Reposi**tories* ==
>>>>>>
>>>>>> In Tycho we have these constructs:
>>>>>>
>>>>>> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_ 
>>>>>>
>>>>>>
>>>>>> context_of_the_build
>>>>>>
>>>>>>    <repository>
>>>>>>         <id>eclipse-indigo</id>
>>>>>>         <layout>p2</layout>
>>>>>> <url>http://download.eclipse.org/releases/indigo</url>
>>>>>>    </repository>
>>>>>>
>>>>>> P2 repositories can be encapsulated in an archive. An archive,
>>>>>> naturally,
>>>>>> can be available as an artifact in some repo somewhere (including 
>>>>>> the
>>>>>> local
>>>>>> one).
>>>>>>
>>>>>>
>>>>>> What would you think about adding something like:
>>>>>>
>>>>>>
>>>>>>    <repository>
>>>>>>         <id>eclipse-indigo</id>
>>>>>>         <layout>p2</layout>
>>>>>>         <groupId>foo</artifactId>
>>>>>>         <artifactId>bar</artifactId>
>>>>>>         <version>1.2.3-SNAPSHOT</version>
>>>>>>         <type>tgz</type>
>>>>>>         <required>true</required>
>>>>>>    </repository>
>>>>>>
>>>>>>
>>>>>> The broad strokes are as follows:
>>>>>>
>>>>>>    * Repo artifact becomes a dependency of an artifact being built
>>>>>> on the
>>>>>>      same terms as its parent would be, i.e. if you can't find
>>>>>> parent you
>>>>>>      can't build same with repo artifact (by default)
>>>>>>    * If repo <required> (or <optional> to reverse the semantics) is
>>>>>> false
>>>>>>      (true), failure to resolve the repository does not lead to a
>>>>>>      critical failure and reactor proceeeds as if the repository
>>>>>>      declaration did not occur.
>>>>>>    * Repo artifact is attempted to be resolved using all of the
>>>>>>      repositories inherited from parents, ad infinitum, or in the
>>>>>>      repository declarations prior to the one being considered.
>>>>>> Artifact
>>>>>>      is, otherwise, resolved by standard means.
>>>>>>
>>>>>> Let me know what you think,
>>>>>>
>>>>>> -- 
>>>>>> Arcadiy Ivanov
>>>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>>>>> https://github.com/arcivanov
>>>>>>
>>>>>>
>>>>>>
>>>> -- 
>>>> Arcadiy Ivanov
>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>>> https://github.com/arcivanov
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>>>> For additional commands, e-mail: dev-help@maven.apache.org
>>>>
>>>>
>>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


-- 
Arcadiy Ivanov
arcadiy@gmail.com | @arcivanov | https://ivanov.biz
https://github.com/arcivanov


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Karl Heinz Marbaise <kh...@gmx.de>.
Hi,

On 3/21/15 2:14 PM, Arcadiy Ivanov wrote:
> So Maven pom is set in stone and no changes can be introduced to it?

For Model version 4.0.0 at which is Maven at the moment i don't see a 
chance for such things...

But there is no thing which prevents us from changing for Maven Model 
5.0.0 (Maven 4.X)...

> I'm writing this specifically to guage the community interest before
> starting the work. I.e. my intention is to have a general consensus that
> 1) it's a good thing to add 2) it's the right way to go about it.


>
> Generally speaking, adding optional tags does not break forward
> functionality, i.e. it's relatively safe.

It breaks cause the tags are not optional....

I have simply added a repository like you suggested to an existing pom 
which results in the following:

[INFO] Scanning for projects...
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR]   The project  (/sapm/pom.xml) has 1 error
[ERROR]     Non-parseable POM /sapm/pom.xml: Unrecognised tag: 'groupId' 
(position: START_TAG seen ...</layout>\n            <groupId>... 
@131:22)  @ line 131, column 22 -> [Help 2]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the 
-e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, 
please read the following articles:
[ERROR] [Help 1] 
http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] 
http://cwiki.apache.org/confluence/display/MAVEN/ModelParseException

>
> What would be the fundamental reason for never ever ever considering any
> additions to the POM ever again?

The problem is compatibility and the toolchain which already exist and 
would break...

See here: Many ideas already exist...

http://jira.codehaus.org/browse/MNG#selectedTab=com.atlassian.jira.plugin.system.project%3Aroadmap-panel

In particular the part: "Issues to be reviewed for 4.x"...

You could make a entry with your suggestins etc. and maybe a proof of 
concept implementation?

>
> On 2015-03-21 04:11, Jeff MAURY wrote:
>> then your stuff will not be Maven compatible. You will face non adoption
>> from the community
>>
>> Jeff
>>
>> On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com>
>> wrote:
>>
>>> Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
>>>
>>>
>>> On 2015-03-21 03:31, Jeff MAURY wrote:
>>>
>>>> how will you extend the repository element in maven ?
>>>>
>>>> Jeff
>>>>
>>>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
>>>> wrote:
>>>>
>>>>   Hi folks,
>>>>> I'd like to feel your temperature wrt the following improvement I
>>>>> would
>>>>> like to make to Maven before I start working on it.
>>>>>
>>>>> *== Artifact-based Reposi**tories* ==
>>>>>
>>>>> In Tycho we have these constructs:
>>>>>
>>>>> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_
>>>>>
>>>>> context_of_the_build
>>>>>
>>>>>    <repository>
>>>>>         <id>eclipse-indigo</id>
>>>>>         <layout>p2</layout>
>>>>>         <url>http://download.eclipse.org/releases/indigo</url>
>>>>>    </repository>
>>>>>
>>>>> P2 repositories can be encapsulated in an archive. An archive,
>>>>> naturally,
>>>>> can be available as an artifact in some repo somewhere (including the
>>>>> local
>>>>> one).
>>>>>
>>>>>
>>>>> What would you think about adding something like:
>>>>>
>>>>>
>>>>>    <repository>
>>>>>         <id>eclipse-indigo</id>
>>>>>         <layout>p2</layout>
>>>>>         <groupId>foo</artifactId>
>>>>>         <artifactId>bar</artifactId>
>>>>>         <version>1.2.3-SNAPSHOT</version>
>>>>>         <type>tgz</type>
>>>>>         <required>true</required>
>>>>>    </repository>
>>>>>
>>>>>
>>>>> The broad strokes are as follows:
>>>>>
>>>>>    * Repo artifact becomes a dependency of an artifact being built
>>>>> on the
>>>>>      same terms as its parent would be, i.e. if you can't find
>>>>> parent you
>>>>>      can't build same with repo artifact (by default)
>>>>>    * If repo <required> (or <optional> to reverse the semantics) is
>>>>> false
>>>>>      (true), failure to resolve the repository does not lead to a
>>>>>      critical failure and reactor proceeeds as if the repository
>>>>>      declaration did not occur.
>>>>>    * Repo artifact is attempted to be resolved using all of the
>>>>>      repositories inherited from parents, ad infinitum, or in the
>>>>>      repository declarations prior to the one being considered.
>>>>> Artifact
>>>>>      is, otherwise, resolved by standard means.
>>>>>
>>>>> Let me know what you think,
>>>>>
>>>>> --
>>>>> Arcadiy Ivanov
>>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>>>> https://github.com/arcivanov
>>>>>
>>>>>
>>>>>
>>> --
>>> Arcadiy Ivanov
>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>> https://github.com/arcivanov
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>>> For additional commands, e-mail: dev-help@maven.apache.org
>>>
>>>
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Karl Heinz Marbaise <kh...@gmx.de>.
Hi,


On 3/21/15 3:57 PM, Arcadiy Ivanov wrote:
> I will definitely take a look, thanks!

BTW: You should take a look at those new extensions points which might 
also be a possibility to change that behaviour......I'm not sure...

May be Jason can tell you something about it...


Kind regards
Karl Heinz Marbaise

>
> The point I was trying to make is that I'd like to see that change in
> the Maven Core, i.e. adding features that can be used by all repository
> connector implementers if they so choose.



>
> Given the artifact-centric nature of Maven, repository encapsulation in
> an artifact seems to me like a natural choice.
>
> On 2015-03-21 09:19, Jeff MAURY wrote:
>> You should look at news brought by latest 3.3 from Maven that target
>> extensibility but to my knowledge, extending the format of the POM is not
>> yet supported (see
>> http://blog.soebes.de/blog/2015/03/17/apache-maven-3-dot-3-1-features/)
>>
>> Regards
>> Jeff
>>
>> On Sat, Mar 21, 2015 at 2:14 PM, Arcadiy Ivanov <ar...@gmail.com>
>> wrote:
>>
>>> So Maven pom is set in stone and no changes can be introduced to it?
>>> I'm writing this specifically to guage the community interest before
>>> starting the work. I.e. my intention is to have a general consensus
>>> that 1)
>>> it's a good thing to add 2) it's the right way to go about it.
>>>
>>> Generally speaking, adding optional tags does not break forward
>>> functionality, i.e. it's relatively safe.
>>>
>>> What would be the fundamental reason for never ever ever considering any
>>> additions to the POM ever again?
>>>
>>>
>>> On 2015-03-21 04:11, Jeff MAURY wrote:
>>>
>>>> then your stuff will not be Maven compatible. You will face non
>>>> adoption
>>>> from the community
>>>>
>>>> Jeff
>>>>
>>>> On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com>
>>>> wrote:
>>>>
>>>>   Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
>>>>>
>>>>> On 2015-03-21 03:31, Jeff MAURY wrote:
>>>>>
>>>>>   how will you extend the repository element in maven ?
>>>>>> Jeff
>>>>>>
>>>>>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>    Hi folks,
>>>>>>
>>>>>>> I'd like to feel your temperature wrt the following improvement I
>>>>>>> would
>>>>>>> like to make to Maven before I start working on it.
>>>>>>>
>>>>>>> *== Artifact-based Reposi**tories* ==
>>>>>>>
>>>>>>> In Tycho we have these constructs:
>>>>>>>
>>>>>>> https://wiki.eclipse.org/Tycho/Reference_Card#
>>>>>>> Repository_providing_the_
>>>>>>> context_of_the_build
>>>>>>>
>>>>>>>     <repository>
>>>>>>>          <id>eclipse-indigo</id>
>>>>>>>          <layout>p2</layout>
>>>>>>>          <url>http://download.eclipse.org/releases/indigo</url>
>>>>>>>     </repository>
>>>>>>>
>>>>>>> P2 repositories can be encapsulated in an archive. An archive,
>>>>>>> naturally,
>>>>>>> can be available as an artifact in some repo somewhere (including
>>>>>>> the
>>>>>>> local
>>>>>>> one).
>>>>>>>
>>>>>>>
>>>>>>> What would you think about adding something like:
>>>>>>>
>>>>>>>
>>>>>>>     <repository>
>>>>>>>          <id>eclipse-indigo</id>
>>>>>>>          <layout>p2</layout>
>>>>>>>          <groupId>foo</artifactId>
>>>>>>>          <artifactId>bar</artifactId>
>>>>>>>          <version>1.2.3-SNAPSHOT</version>
>>>>>>>          <type>tgz</type>
>>>>>>>          <required>true</required>
>>>>>>>     </repository>
>>>>>>>
>>>>>>>
>>>>>>> The broad strokes are as follows:
>>>>>>>
>>>>>>>     * Repo artifact becomes a dependency of an artifact being
>>>>>>> built on
>>>>>>> the
>>>>>>>       same terms as its parent would be, i.e. if you can't find
>>>>>>> parent
>>>>>>> you
>>>>>>>       can't build same with repo artifact (by default)
>>>>>>>     * If repo <required> (or <optional> to reverse the semantics) is
>>>>>>> false
>>>>>>>       (true), failure to resolve the repository does not lead to a
>>>>>>>       critical failure and reactor proceeeds as if the repository
>>>>>>>       declaration did not occur.
>>>>>>>     * Repo artifact is attempted to be resolved using all of the
>>>>>>>       repositories inherited from parents, ad infinitum, or in the
>>>>>>>       repository declarations prior to the one being considered.
>>>>>>> Artifact
>>>>>>>       is, otherwise, resolved by standard means.
>>>>>>>
>>>>>>> Let me know what you think,
>>>>>>>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Arcadiy Ivanov <ar...@gmail.com>.
I will definitely take a look, thanks!

The point I was trying to make is that I'd like to see that change in 
the Maven Core, i.e. adding features that can be used by all repository 
connector implementers if they so choose.

Given the artifact-centric nature of Maven, repository encapsulation in 
an artifact seems to me like a natural choice.

On 2015-03-21 09:19, Jeff MAURY wrote:
> You should look at news brought by latest 3.3 from Maven that target
> extensibility but to my knowledge, extending the format of the POM is not
> yet supported (see
> http://blog.soebes.de/blog/2015/03/17/apache-maven-3-dot-3-1-features/)
>
> Regards
> Jeff
>
> On Sat, Mar 21, 2015 at 2:14 PM, Arcadiy Ivanov <ar...@gmail.com> wrote:
>
>> So Maven pom is set in stone and no changes can be introduced to it?
>> I'm writing this specifically to guage the community interest before
>> starting the work. I.e. my intention is to have a general consensus that 1)
>> it's a good thing to add 2) it's the right way to go about it.
>>
>> Generally speaking, adding optional tags does not break forward
>> functionality, i.e. it's relatively safe.
>>
>> What would be the fundamental reason for never ever ever considering any
>> additions to the POM ever again?
>>
>>
>> On 2015-03-21 04:11, Jeff MAURY wrote:
>>
>>> then your stuff will not be Maven compatible. You will face non adoption
>>> from the community
>>>
>>> Jeff
>>>
>>> On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com>
>>> wrote:
>>>
>>>   Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
>>>>
>>>> On 2015-03-21 03:31, Jeff MAURY wrote:
>>>>
>>>>   how will you extend the repository element in maven ?
>>>>> Jeff
>>>>>
>>>>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>    Hi folks,
>>>>>
>>>>>> I'd like to feel your temperature wrt the following improvement I would
>>>>>> like to make to Maven before I start working on it.
>>>>>>
>>>>>> *== Artifact-based Reposi**tories* ==
>>>>>>
>>>>>> In Tycho we have these constructs:
>>>>>>
>>>>>> https://wiki.eclipse.org/Tycho/Reference_Card#
>>>>>> Repository_providing_the_
>>>>>> context_of_the_build
>>>>>>
>>>>>>     <repository>
>>>>>>          <id>eclipse-indigo</id>
>>>>>>          <layout>p2</layout>
>>>>>>          <url>http://download.eclipse.org/releases/indigo</url>
>>>>>>     </repository>
>>>>>>
>>>>>> P2 repositories can be encapsulated in an archive. An archive,
>>>>>> naturally,
>>>>>> can be available as an artifact in some repo somewhere (including the
>>>>>> local
>>>>>> one).
>>>>>>
>>>>>>
>>>>>> What would you think about adding something like:
>>>>>>
>>>>>>
>>>>>>     <repository>
>>>>>>          <id>eclipse-indigo</id>
>>>>>>          <layout>p2</layout>
>>>>>>          <groupId>foo</artifactId>
>>>>>>          <artifactId>bar</artifactId>
>>>>>>          <version>1.2.3-SNAPSHOT</version>
>>>>>>          <type>tgz</type>
>>>>>>          <required>true</required>
>>>>>>     </repository>
>>>>>>
>>>>>>
>>>>>> The broad strokes are as follows:
>>>>>>
>>>>>>     * Repo artifact becomes a dependency of an artifact being built on
>>>>>> the
>>>>>>       same terms as its parent would be, i.e. if you can't find parent
>>>>>> you
>>>>>>       can't build same with repo artifact (by default)
>>>>>>     * If repo <required> (or <optional> to reverse the semantics) is
>>>>>> false
>>>>>>       (true), failure to resolve the repository does not lead to a
>>>>>>       critical failure and reactor proceeeds as if the repository
>>>>>>       declaration did not occur.
>>>>>>     * Repo artifact is attempted to be resolved using all of the
>>>>>>       repositories inherited from parents, ad infinitum, or in the
>>>>>>       repository declarations prior to the one being considered.
>>>>>> Artifact
>>>>>>       is, otherwise, resolved by standard means.
>>>>>>
>>>>>> Let me know what you think,
>>>>>>
>>>>>> --
>>>>>> Arcadiy Ivanov
>>>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>>>>> https://github.com/arcivanov
>>>>>>
>>>>>>
>>>>>>
>>>>>>   --
>>>> Arcadiy Ivanov
>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>>> https://github.com/arcivanov
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>>>> For additional commands, e-mail: dev-help@maven.apache.org
>>>>
>>>>
>>>>
>> --
>> Arcadiy Ivanov
>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>> https://github.com/arcivanov
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> For additional commands, e-mail: dev-help@maven.apache.org
>>
>>
>


-- 
Arcadiy Ivanov
arcadiy@gmail.com | @arcivanov | https://ivanov.biz
https://github.com/arcivanov


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Jeff MAURY <je...@jeffmaury.com>.
You should look at news brought by latest 3.3 from Maven that target
extensibility but to my knowledge, extending the format of the POM is not
yet supported (see
http://blog.soebes.de/blog/2015/03/17/apache-maven-3-dot-3-1-features/)

Regards
Jeff

On Sat, Mar 21, 2015 at 2:14 PM, Arcadiy Ivanov <ar...@gmail.com> wrote:

> So Maven pom is set in stone and no changes can be introduced to it?
> I'm writing this specifically to guage the community interest before
> starting the work. I.e. my intention is to have a general consensus that 1)
> it's a good thing to add 2) it's the right way to go about it.
>
> Generally speaking, adding optional tags does not break forward
> functionality, i.e. it's relatively safe.
>
> What would be the fundamental reason for never ever ever considering any
> additions to the POM ever again?
>
>
> On 2015-03-21 04:11, Jeff MAURY wrote:
>
>> then your stuff will not be Maven compatible. You will face non adoption
>> from the community
>>
>> Jeff
>>
>> On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com>
>> wrote:
>>
>>  Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
>>>
>>>
>>> On 2015-03-21 03:31, Jeff MAURY wrote:
>>>
>>>  how will you extend the repository element in maven ?
>>>>
>>>> Jeff
>>>>
>>>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
>>>> wrote:
>>>>
>>>>   Hi folks,
>>>>
>>>>> I'd like to feel your temperature wrt the following improvement I would
>>>>> like to make to Maven before I start working on it.
>>>>>
>>>>> *== Artifact-based Reposi**tories* ==
>>>>>
>>>>> In Tycho we have these constructs:
>>>>>
>>>>> https://wiki.eclipse.org/Tycho/Reference_Card#
>>>>> Repository_providing_the_
>>>>> context_of_the_build
>>>>>
>>>>>    <repository>
>>>>>         <id>eclipse-indigo</id>
>>>>>         <layout>p2</layout>
>>>>>         <url>http://download.eclipse.org/releases/indigo</url>
>>>>>    </repository>
>>>>>
>>>>> P2 repositories can be encapsulated in an archive. An archive,
>>>>> naturally,
>>>>> can be available as an artifact in some repo somewhere (including the
>>>>> local
>>>>> one).
>>>>>
>>>>>
>>>>> What would you think about adding something like:
>>>>>
>>>>>
>>>>>    <repository>
>>>>>         <id>eclipse-indigo</id>
>>>>>         <layout>p2</layout>
>>>>>         <groupId>foo</artifactId>
>>>>>         <artifactId>bar</artifactId>
>>>>>         <version>1.2.3-SNAPSHOT</version>
>>>>>         <type>tgz</type>
>>>>>         <required>true</required>
>>>>>    </repository>
>>>>>
>>>>>
>>>>> The broad strokes are as follows:
>>>>>
>>>>>    * Repo artifact becomes a dependency of an artifact being built on
>>>>> the
>>>>>      same terms as its parent would be, i.e. if you can't find parent
>>>>> you
>>>>>      can't build same with repo artifact (by default)
>>>>>    * If repo <required> (or <optional> to reverse the semantics) is
>>>>> false
>>>>>      (true), failure to resolve the repository does not lead to a
>>>>>      critical failure and reactor proceeeds as if the repository
>>>>>      declaration did not occur.
>>>>>    * Repo artifact is attempted to be resolved using all of the
>>>>>      repositories inherited from parents, ad infinitum, or in the
>>>>>      repository declarations prior to the one being considered.
>>>>> Artifact
>>>>>      is, otherwise, resolved by standard means.
>>>>>
>>>>> Let me know what you think,
>>>>>
>>>>> --
>>>>> Arcadiy Ivanov
>>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>>>> https://github.com/arcivanov
>>>>>
>>>>>
>>>>>
>>>>>  --
>>> Arcadiy Ivanov
>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>> https://github.com/arcivanov
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>>> For additional commands, e-mail: dev-help@maven.apache.org
>>>
>>>
>>>
>>
>
> --
> Arcadiy Ivanov
> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
> https://github.com/arcivanov
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


-- 
Jeff MAURY


"Legacy code" often differs from its suggested alternative by actually
working and scaling.
 - Bjarne Stroustrup

http://www.jeffmaury.com
http://riadiscuss.jeffmaury.com
http://www.twitter.com/jeffmaury

Re: Idea RFI: Artifact-based repositories

Posted by Arcadiy Ivanov <ar...@gmail.com>.
So Maven pom is set in stone and no changes can be introduced to it?
I'm writing this specifically to guage the community interest before 
starting the work. I.e. my intention is to have a general consensus that 
1) it's a good thing to add 2) it's the right way to go about it.

Generally speaking, adding optional tags does not break forward 
functionality, i.e. it's relatively safe.

What would be the fundamental reason for never ever ever considering any 
additions to the POM ever again?

On 2015-03-21 04:11, Jeff MAURY wrote:
> then your stuff will not be Maven compatible. You will face non adoption
> from the community
>
> Jeff
>
> On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com> wrote:
>
>> Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
>>
>>
>> On 2015-03-21 03:31, Jeff MAURY wrote:
>>
>>> how will you extend the repository element in maven ?
>>>
>>> Jeff
>>>
>>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
>>> wrote:
>>>
>>>   Hi folks,
>>>> I'd like to feel your temperature wrt the following improvement I would
>>>> like to make to Maven before I start working on it.
>>>>
>>>> *== Artifact-based Reposi**tories* ==
>>>>
>>>> In Tycho we have these constructs:
>>>>
>>>> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_
>>>> context_of_the_build
>>>>
>>>>    <repository>
>>>>         <id>eclipse-indigo</id>
>>>>         <layout>p2</layout>
>>>>         <url>http://download.eclipse.org/releases/indigo</url>
>>>>    </repository>
>>>>
>>>> P2 repositories can be encapsulated in an archive. An archive, naturally,
>>>> can be available as an artifact in some repo somewhere (including the
>>>> local
>>>> one).
>>>>
>>>>
>>>> What would you think about adding something like:
>>>>
>>>>
>>>>    <repository>
>>>>         <id>eclipse-indigo</id>
>>>>         <layout>p2</layout>
>>>>         <groupId>foo</artifactId>
>>>>         <artifactId>bar</artifactId>
>>>>         <version>1.2.3-SNAPSHOT</version>
>>>>         <type>tgz</type>
>>>>         <required>true</required>
>>>>    </repository>
>>>>
>>>>
>>>> The broad strokes are as follows:
>>>>
>>>>    * Repo artifact becomes a dependency of an artifact being built on the
>>>>      same terms as its parent would be, i.e. if you can't find parent you
>>>>      can't build same with repo artifact (by default)
>>>>    * If repo <required> (or <optional> to reverse the semantics) is false
>>>>      (true), failure to resolve the repository does not lead to a
>>>>      critical failure and reactor proceeeds as if the repository
>>>>      declaration did not occur.
>>>>    * Repo artifact is attempted to be resolved using all of the
>>>>      repositories inherited from parents, ad infinitum, or in the
>>>>      repository declarations prior to the one being considered. Artifact
>>>>      is, otherwise, resolved by standard means.
>>>>
>>>> Let me know what you think,
>>>>
>>>> --
>>>> Arcadiy Ivanov
>>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>>> https://github.com/arcivanov
>>>>
>>>>
>>>>
>> --
>> Arcadiy Ivanov
>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>> https://github.com/arcivanov
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> For additional commands, e-mail: dev-help@maven.apache.org
>>
>>
>


-- 
Arcadiy Ivanov
arcadiy@gmail.com | @arcivanov | https://ivanov.biz
https://github.com/arcivanov


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Jeff MAURY <je...@jeffmaury.com>.
then your stuff will not be Maven compatible. You will face non adoption
from the community

Jeff

On Sat, Mar 21, 2015 at 9:01 AM, Arcadiy Ivanov <ar...@gmail.com> wrote:

> Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)
>
>
> On 2015-03-21 03:31, Jeff MAURY wrote:
>
>> how will you extend the repository element in maven ?
>>
>> Jeff
>>
>> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com>
>> wrote:
>>
>>  Hi folks,
>>>
>>> I'd like to feel your temperature wrt the following improvement I would
>>> like to make to Maven before I start working on it.
>>>
>>> *== Artifact-based Reposi**tories* ==
>>>
>>> In Tycho we have these constructs:
>>>
>>> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_
>>> context_of_the_build
>>>
>>>   <repository>
>>>        <id>eclipse-indigo</id>
>>>        <layout>p2</layout>
>>>        <url>http://download.eclipse.org/releases/indigo</url>
>>>   </repository>
>>>
>>> P2 repositories can be encapsulated in an archive. An archive, naturally,
>>> can be available as an artifact in some repo somewhere (including the
>>> local
>>> one).
>>>
>>>
>>> What would you think about adding something like:
>>>
>>>
>>>   <repository>
>>>        <id>eclipse-indigo</id>
>>>        <layout>p2</layout>
>>>        <groupId>foo</artifactId>
>>>        <artifactId>bar</artifactId>
>>>        <version>1.2.3-SNAPSHOT</version>
>>>        <type>tgz</type>
>>>        <required>true</required>
>>>   </repository>
>>>
>>>
>>> The broad strokes are as follows:
>>>
>>>   * Repo artifact becomes a dependency of an artifact being built on the
>>>     same terms as its parent would be, i.e. if you can't find parent you
>>>     can't build same with repo artifact (by default)
>>>   * If repo <required> (or <optional> to reverse the semantics) is false
>>>     (true), failure to resolve the repository does not lead to a
>>>     critical failure and reactor proceeeds as if the repository
>>>     declaration did not occur.
>>>   * Repo artifact is attempted to be resolved using all of the
>>>     repositories inherited from parents, ad infinitum, or in the
>>>     repository declarations prior to the one being considered. Artifact
>>>     is, otherwise, resolved by standard means.
>>>
>>> Let me know what you think,
>>>
>>> --
>>> Arcadiy Ivanov
>>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>>> https://github.com/arcivanov
>>>
>>>
>>>
>>
>
> --
> Arcadiy Ivanov
> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
> https://github.com/arcivanov
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


-- 
Jeff MAURY


"Legacy code" often differs from its suggested alternative by actually
working and scaling.
 - Bjarne Stroustrup

http://www.jeffmaury.com
http://riadiscuss.jeffmaury.com
http://www.twitter.com/jeffmaury

Re: Idea RFI: Artifact-based repositories

Posted by Arcadiy Ivanov <ar...@gmail.com>.
Presumably, by editing maven-model/src/main/mdo/maven.mdo ? :)

On 2015-03-21 03:31, Jeff MAURY wrote:
> how will you extend the repository element in maven ?
>
> Jeff
>
> On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com> wrote:
>
>> Hi folks,
>>
>> I'd like to feel your temperature wrt the following improvement I would
>> like to make to Maven before I start working on it.
>>
>> *== Artifact-based Reposi**tories* ==
>>
>> In Tycho we have these constructs:
>>
>> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_
>> context_of_the_build
>>
>>   <repository>
>>        <id>eclipse-indigo</id>
>>        <layout>p2</layout>
>>        <url>http://download.eclipse.org/releases/indigo</url>
>>   </repository>
>>
>> P2 repositories can be encapsulated in an archive. An archive, naturally,
>> can be available as an artifact in some repo somewhere (including the local
>> one).
>>
>>
>> What would you think about adding something like:
>>
>>
>>   <repository>
>>        <id>eclipse-indigo</id>
>>        <layout>p2</layout>
>>        <groupId>foo</artifactId>
>>        <artifactId>bar</artifactId>
>>        <version>1.2.3-SNAPSHOT</version>
>>        <type>tgz</type>
>>        <required>true</required>
>>   </repository>
>>
>>
>> The broad strokes are as follows:
>>
>>   * Repo artifact becomes a dependency of an artifact being built on the
>>     same terms as its parent would be, i.e. if you can't find parent you
>>     can't build same with repo artifact (by default)
>>   * If repo <required> (or <optional> to reverse the semantics) is false
>>     (true), failure to resolve the repository does not lead to a
>>     critical failure and reactor proceeeds as if the repository
>>     declaration did not occur.
>>   * Repo artifact is attempted to be resolved using all of the
>>     repositories inherited from parents, ad infinitum, or in the
>>     repository declarations prior to the one being considered. Artifact
>>     is, otherwise, resolved by standard means.
>>
>> Let me know what you think,
>>
>> --
>> Arcadiy Ivanov
>> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
>> https://github.com/arcivanov
>>
>>
>


-- 
Arcadiy Ivanov
arcadiy@gmail.com | @arcivanov | https://ivanov.biz
https://github.com/arcivanov


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Idea RFI: Artifact-based repositories

Posted by Jeff MAURY <je...@jeffmaury.com>.
how will you extend the repository element in maven ?

Jeff

On Fri, Mar 20, 2015 at 11:52 PM, Arcadiy Ivanov <ar...@gmail.com> wrote:

> Hi folks,
>
> I'd like to feel your temperature wrt the following improvement I would
> like to make to Maven before I start working on it.
>
> *== Artifact-based Reposi**tories* ==
>
> In Tycho we have these constructs:
>
> https://wiki.eclipse.org/Tycho/Reference_Card#Repository_providing_the_
> context_of_the_build
>
>  <repository>
>       <id>eclipse-indigo</id>
>       <layout>p2</layout>
>       <url>http://download.eclipse.org/releases/indigo</url>
>  </repository>
>
> P2 repositories can be encapsulated in an archive. An archive, naturally,
> can be available as an artifact in some repo somewhere (including the local
> one).
>
>
> What would you think about adding something like:
>
>
>  <repository>
>       <id>eclipse-indigo</id>
>       <layout>p2</layout>
>       <groupId>foo</artifactId>
>       <artifactId>bar</artifactId>
>       <version>1.2.3-SNAPSHOT</version>
>       <type>tgz</type>
>       <required>true</required>
>  </repository>
>
>
> The broad strokes are as follows:
>
>  * Repo artifact becomes a dependency of an artifact being built on the
>    same terms as its parent would be, i.e. if you can't find parent you
>    can't build same with repo artifact (by default)
>  * If repo <required> (or <optional> to reverse the semantics) is false
>    (true), failure to resolve the repository does not lead to a
>    critical failure and reactor proceeeds as if the repository
>    declaration did not occur.
>  * Repo artifact is attempted to be resolved using all of the
>    repositories inherited from parents, ad infinitum, or in the
>    repository declarations prior to the one being considered. Artifact
>    is, otherwise, resolved by standard means.
>
> Let me know what you think,
>
> --
> Arcadiy Ivanov
> arcadiy@gmail.com | @arcivanov | https://ivanov.biz
> https://github.com/arcivanov
>
>


-- 
Jeff MAURY


"Legacy code" often differs from its suggested alternative by actually
working and scaling.
 - Bjarne Stroustrup

http://www.jeffmaury.com
http://riadiscuss.jeffmaury.com
http://www.twitter.com/jeffmaury