On Nov 1, 2010, at 11:59 PM, Stephen Connolly wrote:

> I think we need to get use to the idea of deploying a different POM
> (as XML) from the POM that is used to build.
> 

Yes, my assumption for Polyglot is the front-end format could be anything, but 
an XML 4.0.0 POM must go to the repository.

> Here are some use-cases I can see:
> 
> 1. Corporate project which deploys an artifact to a public repo.  Some
> of the info (e.g. SCM details, developers, build, distMgmt, etc) is,
> due to corporate policies / sensible reasons, information that should
> not be deployed publically.

This is out of scope. For interoperability, within the same model the selective 
reduction of the representation is a different problem.

> 
>  e.g. I may not want people contacting me directly just because I
> worked for XYZ corp on that foobar-impl project

Out of scope.

> 
>  e.g. May not want to publish how the artifact is built for external persons.
> 

Out of scope.

I think any form of selective reduction is not an interoperability problem per 
se. I don't want to conflate model reduction with the translations of models of 
the same version.

> 2. Shading
> 

Not sure what this has to do with it. The shade plugin can already make a 
reduced dependency POM if you like.

> 3. Backwards compat.
> 

Sure, which is 2) when we start making changes to the POM.

> 4. Properties behaving badly
> 

You'll have to explain here. I honestly don't know what you mean here.

> -Stephen
> 
> On 1 November 2010 22:37, Jason van Zyl <ja...@maven.org> wrote:
>> I am working on a release of Polyglot Maven and the only tangible thing 
>> stopping me is having a plan for POM interoperability between:
>> 
>> 1) Different representations of the model for the same version of the model. 
>> This is what I'd like for the first version of Polyglot Maven where I just 
>> want to translate the version 4.0.0 model between different representations.
>> 
>> 2) Different versions of the model. This is something we will need for Maven 
>> 3.1.
>> 
>> In talking with Benjamin and Brian for 1) I think it would be easiest to 
>> deploy both versions of the model. The complete model in the native dialect 
>> like Clojure, and the complete XML translation. Deploying both would be 
>> useful because in the case of Clojure they are trying to come up with a 
>> common model, like the POM, for Clojure-based build tools. So if someone 
>> built and deployed with Polyglot Maven using the Clojure dialect then they 
>> want people not using Polyglot Maven i.e. a native Clojure tool to read the 
>> Clojure. This assumes our models are compatible but we'll have to work that 
>> out. We need to start somewhere so I don't think abbreviating any of the 
>> information is good for a first pass. Leave it all there for now and we'll 
>> figure out if a build-only representation of the model will suffice for 
>> sending to the repository.
>> 
>> For 2) Benjamin's recommendation was to transform elements in the newer 
>> model back to the 4.0.0 model. I'm not sure how long this will be possible 
>> but if we live with our baggage and say we'll only add elements to the model 
>> I think this will be a lot easier. Having to track removals across versions 
>> of the model will be a pain in the ass. We translate back for as long as we 
>> can and when we can't do that anymore maybe we do a build-only 
>> transformation.
>> 
>> I'd like to field other thoughts before I write something up. I'm going to 
>> do all this work in Polyglot Maven because I'm sure I'm going to break 
>> things but the folks I'm working with will tolerate this for a while. I'm 
>> chatting with folks in the Clojure community on a Lein-like markup, Dhanji 
>> (a  Googler working on Guice and Sitebricks) who is working on a format 
>> called Atom, and Kristian (fellow who makes all the Ruby/Maven tooling) who 
>> is working on a Ruby DSL. If things break here for a while it's not the end 
>> of the world and is a good testing ground.
>> 
>> At any rate if anyone has ideas or documents I'll integrate it into the 
>> proposal I'm writing. I'm moving pretty fast and I plan to release a version 
>> of the Maven Shell next week, and then a couple weeks later a version with 
>> Polyglot capabilities. So if you have thoughts I'd appreciate them sooner 
>> rather then later.
>> 
>> Thanks,
>> 
>> Jason
>> 
>> ----------------------------------------------------------
>> Jason van Zyl
>> Founder,  Apache Maven
>> http://twitter.com/jvanzyl
>> ---------------------------------------------------------
>> 
>> Selfish deeds are the shortest path to self destruction.
>> 
>>  -- The Seven Samuari, Akira Kurosawa
>> 
>> 
>> 
>> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
> 

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
http://twitter.com/jvanzyl
---------------------------------------------------------

A language that doesn’t affect the way you think about programming is not worth 
knowing. 
 
 -— Alan Perlis



Reply via email to