I think we should maintain the current functionality of a default deactivating when another profile in the pom is activated until there is a syntax to perform the same. I have often in the past done things like: (pseudo pom code)
<profile> <id>all</id> <activeByDefault>true</activeByDefault> <modules> <module>a</module> <module>b</module> <module>c</module> ... <profile> <id>a</id> <modules> <module>a</module> Etc and the activation would be mvn xxx -Pa and the expectation is you only build a...retraining everyone to say -Pa,!all is a bit much. To accomplish this correctly, you would need to add a profile group id and if nothing is there, then the explicitly share the same group, thus preserving backwards compat while giving a bit more flexibility. I do share Jesse's sentiment about maybe we are missing something else. If there's anything in the pom that reduces clarity, it is definitely profiles. --Brian -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jesse McConnell Sent: Thursday, May 15, 2008 11:37 AM To: Maven Developers List; [EMAIL PROTECTED] Subject: Re: Profile activation/deactivation No one can dispute the nice things that profiles let us accomplish in terms of toggling on functionalities... But I wonder much this will impact build reproducibility....especially given the existence of profiles in the settings.xml file. It is already a source of minor pain where people need to pass around fragments of profiles to get their builds (or releases) working. I wonder how much making it easier to toggle on and off profiles will impact the future of these sorts of practices. I already have to edit my settings.xml file and comment in and out a certain profile if I want to deploy something from one place or another. I could override on the cli but thats a big pita as well. John and I talked ages ago about how profiles were basically a hack and black magic in what they allowed people to do with any given build. Seeing all of these +/-/D:/E:/! goop floating around seems to be increasing the black magic. I am torn though, profiles have helped me immeasurably in the past...even if they made me feel a touch dirty in the process. Are we missing a chance to codify some other sort of functionality that keeps build reproducibility at the forefront? And by build reproducibility I mean out of the box, not after cut and pasting magic chunks of stuff around behind the scenes. anywho, figured I would throw that out. jesse On Thu, May 15, 2008 at 10:16 AM, Ralph Goers <[EMAIL PROTECTED]> wrote: > +1. My first reaction though was the thought, what should -P-profile do? Is > it confusing not to have it if + is supported? Would it be the same as > -P!profile? > > > Bernhard David wrote: > > > > > > > would it be possible to have "-Pprofile" work as usual (activate > > profile, deactivate defaults) but "-P+profile" add profile to the > > existing ones, without deactivating defaults? Or if "+" is taken we > > could use some other character. > > > > In any case it would be really useful to add profiles like this, for > > instance to support "mvn install -P+optionalTests" without having to > > figure out what other profiles you need manually. > > > > Greetings, > > > > David Bernhard > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- jesse mcconnell [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]