I posted a question on the maven developers mailing list on how to best support repository artifacts which are sensitive to changes in their filenames (read .NET assemblies). I have gotten a very interesting response from Oleg Gusakov regarding some work he is doing with Mercury. If Oleg implements the slight tweak I suggested (or some evolution of it), it is very likely Oleg will have done all the heavy lifting necessary to make proper storage of dlls trivial. The thread subject is: Requesting advice on how to best extend the maven repository format The Mark Mail link below provides an easy way to review the thread: http://markmail.org/search/?q=list%3Aorg.apache.maven.dev+Requesting+Advice+maven+repository#query:list%3Aorg.apache.maven.dev%20Requesting%20Advice%20maven%20repository+page:1+mid:5vqshhyownnk6yj7+state:results This noisy chicken is quite excited at the hard work all the pigs are doing.
--- On Wed, 9/3/08, James Carpenter <[EMAIL PROTECTED]> wrote: From: James Carpenter <[EMAIL PROTECTED]> Subject: Re: Questions regarding current state of C# build systems To: [email protected] Date: Wednesday, September 3, 2008, 6:14 PM In general I believe its very important to support 3rd party assemblies without requiring re-compilation. Due to the meta-data contained within an assembly and/or the digital signatures invvoled renaming an assembly is simply not an option. I suppose it's ok to store assemblies in the repository in some archive format which includes a version in the file name, but all this needs to be undone by the time the compiler and/or CLR see them. On a related note, the pdb files and archives of the source associated with an assembly should also be stored in the repository. The necessary magic to have the repository treated as a symbol server and source server will also need to be worked out. Without addressing this issue, I simply don't see how NMaven will ever achieve broad acceptance and usage. As you will notice from my earlier comments, for me this is an absolute show-stopper. Some of the libraries I need to reference are indeed closed source and/or delivered by other teams within the company which manage their builds differently than mine. I appreciate all the hard work and effort the core NMaven developers have done. The level effort involved is not something I am personally willing to commit to the NMaven project, so I feel a litle bad complaining. --- On Wed, 9/3/08, Shane Isbell <[EMAIL PROTECTED]> wrote: From: Shane Isbell <[EMAIL PROTECTED]> Subject: Re: Questions regarding current state of C# build systems To: [email protected] Date: Wednesday, September 3, 2008, 5:50 PM I did a 180 (a long and winding 180), finally coming to the conclusion that not having versions in the filename doesn't buy us all that much, at least in open development environments. My preference is that all .NET artifacts going into public repository should be signed with a strong name. If this is the case, it doesn't really matter whether an artifact is compiled with the version in the filename or not. 0.16 does support using of system scope for referencing an assembly locally on the file system so that assemblies external to Maven can still be used. Shane On Wed, Sep 3, 2008 at 3:27 PM, Brett Porter <[EMAIL PROTECTED]> wrote: > > On 04/09/2008, at 1:32 AM, James Carpenter wrote: > > Where do I find the "long and winding discussions about the repository >> format"? Is there a mailing list thread(s) on the maven dev list I should >> read? >> > > Sorry, that's what I was referring to - it has come up a few times, and I > don't think it has ever been summarised in one place. I don't have any > direct pointers, but there would have been some on this list, [EMAIL > PROTECTED], > and I believe some notes in the Maven wiki's. > > - Brett > > > -- > Brett Porter > [EMAIL PROTECTED] > http://blogs.exist.com/bporter/ > >
