Hi Daniel, I'm not overly familiar with that side of the release plugin, so if someone else fancies reviewing the changes. Does this affect MRELEASE-83 at all? Since that's the only unresolved issue scheduled for 2.0-beta-7.
Cheers, Mark On 07/07/07, Daniel Kulp <[EMAIL PROTECTED]> wrote:
Mark, I just committed a start of a fix for this problem. To not require a new release of plexus-utils, I copied a little bit out of CommandLineUtils and into ForkedMavenExecutor for now. Longer term, that code should go back into plexus-utils (I'm not a committer there). I've done some basic testing and things seem to work much better. gpg plugin properly asks for it's password. gpg output is displayed. etc.... This MAY also fix MRELEASE-93. Not sure. However, switching to the raw streams from the line based buffered IO SHOULD fix that. I haven't actually tried that yet. In any case, could someone more familiar with the code do a quick review on it to make sure it's OK? Thanks! Dan On Saturday 07 July 2007 10:52, Daniel Kulp wrote: > Mark, > > I was looking into the problems with the GPG plugin when run from the > release plugin and the problems seem to entirely be problems of the > release plugin and Plexus utils. They are showing up in the gpg > plugin, but any plugin that tries to do anything interactively would > most likely run into the same problems. > > Issues: > 1) System.in - the release manager doesn't feed anything from > System.in into the forked process. I tried adding System.in to the > CommandLineUtils.executeCommandLine call, but that just causes a hang. > CommandLineUtils will wait until the "in" stream is completely > consumed (returns -1) before returning. With System.in, that never > will happen. > > 2) Buffered(line style) out - the StreamPumpers use > BufferedInputStream.readLine() to pump from one stream to the other. > This won't work. Anything that does something (like the release > plugin itself) that prompts and then waits for a response on the same > line will appear to just "hang" as the prompt will never make it to > the screen. > > Basically, those two issues completely prevent us from being able to > un-hard code GPG passphrases from build scripts and such. (unless > you set gpg.useagent to true and use an agent) > > In anycase, MGPG-9 is really a release plugin bug although part of it > is due to plexus-utils not providing the support it would need to work > properly. Most likely, we'll need to add a method in > CommandLineUtils that would just take the raw streams (in/out/err) and > do straight byte copy reads without the line buffering. (and once the > process completely, stop pumping the in stream) (of course, that > would then require another plexus-utils release and then the release > plugin would only work with Maven 2.0.6+ with the utils shaded, but > that may be minor) I'll poke around more and see if I can come up > with something. > > > Dan > > On Friday 06 July 2007 10:25, Mark Hobson wrote: > > Hi, > > > > There's only one remaining issue, MRELEASE-83, scheduled for > > 2.0-beta-7 - is anyone likely to work on this soon, or shall we > > defer it until beta-8? I would like to see beta-7 released for the > > release POM fixes - they're rather unusable in beta-6. > > > > Cheers, > > > > Mark > > > > -------------------------------------------------------------------- > >- To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] -- J. Daniel Kulp Principal Engineer IONA P: 781-902-8727 C: 508-380-7194 [EMAIL PROTECTED] http://www.dankulp.com/blog
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]