This sounds blumming perfect P-J!

Nice one!  :-)



On 18 Feb, 16:00, Per-Jonny Käck <[email protected]> wrote:
> Great, I think we have reached some kind of consensus now.
> I will look into creating a new patch using the TortoiseSVN client.
> The LastChangeLabeller behavior will be:
>
> With prefix="pre" and allowDuplicateSubsequentLabels=false:
> pre1234.1
> pre1234.2
> pre1235.1
> ->change configuration file and set prefix="new", then trigger a forced
> build without modifications
> pre1235.2
> new1236.1
> new1236.2
>
> With prefix="pre" and allowDuplicateSubsequentLabels=true:
> pre1234
> pre1234
> pre1235
> ->change configuration file and set prefix="new", then trigger a forced
> build without modifications
> pre1235
> new1236
> new1236
>
> To minimize the impact on existing projects,
> allowDuplicateSubsequentLabels=true will be the default behavior.
>
> //P-J
>
> 2009/2/18 [email protected] <[email protected]>
>
>
>
> > Well, I'd like to thank you to you guys for bringing this back up
> > again. I did find the patch for lastchangelabeller on the developers
> > forum, but Im unsure of how to implement it. All I need it for
> > lastchangelabeller to stop throwing an unknown if there is no
> > transactions between builds.
> > I think my requirements are similiar to Shauns....having it increment
> > with a xxx.1 xxx.2 is fine by me.
>
> > On Feb 18, 6:51 am, Ruben Willems <[email protected]> wrote:
> > > Hi...
>
> > > read more »
>
> > > just sparsely following this discussion
> > > each labeler stands on its own, thre is no reletion between 2 labellers.
>
> > > the more the labellers act the same in a given situation, the better of
> > > course,
> > > but this does not have to be. If there is a good reason, why not do it.
>
> > > there is a big change between the datalabeller and the default labeller
> > ;-)
>
> > > Do keep in mind that when you make a breaking change, is not fun.
> > > So try to keep the existing default behaviour if possible.
> > > Adding extra properties is not a problem, as long as this doe snot result
> > in
> > > stuff like this
>
> > > bool UseNewSetup
>
> > > and than somewhere in code
>
> > > if (UseNewSetup)
> > > {
> > >  bla bla
>
> > > }
>
> > > in this case it would make more sense to create a new labeller with the
> > > desired behaviour
>
> > > my 2 cents
>
> > > with kind regards
> > > Ruben Willems
>
> > > On Wed, Feb 18, 2009 at 12:29 PM, Per-Jonny Käck <[email protected]>
> > wrote:
> > > > I can agree with you that either forcing .nnn for all labels, or
> > pre1234
> > > > followed by pre1234.2 would be more logical.
> > > > It's just that the FileLabeller is implemented as pre1234 followed by
> > > > 1234-1.
> > > > And lukes propsed patch seems to follow the same scheme.
> > > > The question is if it is better have a consistent behavior between the
> > > > label implementations, or a logical implementation of the
> > LastChangeLabeller
> > > > only???
> > > > Is there any CruiseControl.NET developer that has an opinion?
>
> > > > //P-J
>
> > > > 2009/2/18 CinnamonDonkey <[email protected]>
>
> > > >> Sounds good to me P-J,
>
> > > >> The only comment I would have but it's just me being pedantic now is
> > > >> that if the labeller is allowing the post fix of '.nnn' then all
> > > >> labels should follow the same scheme:
>
> > > >>  pre1234.1
> > > >>  pre1234.2
> > > >>  pre1235.1
>
> > > >> ...and not:
>
> > > >>  pre1234
> > > >>  pre1234.1
> > > >>  pre1235
>
> > > >> ...as this does not seem logical to me. At the very least it should
> > > >> be:
>
> > > >>  pre1234         (<-- is effectively pre1234.1 as it was the first
> > > >> build with the label 1234)
> > > >>  pre1234.2
>
> > > >> Like I say, I'm just being pedantic.
>
> > > >> Shaun ;-)
>
> > > >> On 18 Feb, 10:48, P-J <[email protected]> wrote:
> > > >> > Yes, we are talking about the same thing concerning duplicate
> > labels.
>
> > > >> > About my next paragaraph, it only applies if you have specified a
> > > >> > prefix.
> > > >> > Let's say you are currently using the string "pre" as prefix, and
> > you
> > > >> > have set AllowDuplicateSubsequentLabels=true for our new
> > > >> > LastChangeLabeller.
> > > >> > Using your examples, the labels would look like this:
> > > >> > pre1234
> > > >> > pre1234
> > > >> > pre1235
> > > >> > At this point change your configuration file and set the label
> > prefix
> > > >> > to the string "new", then force a new build without modifications,
> > and
> > > >> > the labels will be as follows.
> > > >> > pre1235
> > > >> > new1236
> > > >> > new1237
>
> > > >> > With AllowDuplicateSubsequentLabels=False the labels would be:
> > > >> > pre1234
> > > >> > pre1234.1
> > > >> > pre1235
> > > >> > At this point change your configuration file and set the label
> > prefix
> > > >> > to the string "new", then force a new build without modifications,
> > and
> > > >> > the labels will be as follows.
> > > >> > pre1235.1
> > > >> > new1236
> > > >> > new1237
>
> > > >> > Personally I think this behavior would be ok, i.e. that the change
> > of
> > > >> > the prefix will not be visible until you have a new build with
> > > >> > modifications.
> > > >> > The good thing is about this solution is that it is easy to use and
> > > >> > understand, and doesn't restrict your choice of prefix in any way.
>
> > > >> > //P-J
>
> > > >> > On 18 Feb, 11:29, CinnamonDonkey <[email protected]>
> > > >> > wrote:
>
> > > >> > > Hi P-J,
>
> > > >> > > Adding a new attribute, "AllowDuplicateSubsequentLabels" sounds
> > like a
> > > >> > > good plan as it allows more flexibility to the end user and
> > satisfies
> > > >> > > my own requirements.
>
> > > >> > > I'm not sure I fully understand the next paragraph, but I think we
> > are
> > > >> > > talking about the same thing.
>
> > > >> > > If I can end up with:
>
> > > >> > > 1234
> > > >> > > 1234
> > > >> > > 1235
> > > >> > > 1235
> > > >> > > 1236
> > > >> > > 1237
>
> > > >> > > I'll be a very happy chappie, but I could live with:
>
> > > >> > > 1234.1
> > > >> > > 1234.2
> > > >> > > 1235.1
> > > >> > > 1235.2
> > > >> > > 1236.1
> > > >> > > 1237.1
>
> > > >> > > If it was a necessary compromise but I think the post fix should
> > be
> > > >> > > optional.
>
> > > >> > > Shaun
>
> > > >> > > On 18 Feb, 08:25, Per-Jonny Käck <[email protected]> wrote:
>
> > > >> > > > Ok, then a "AllowDuplicateSubsequentLabels" attribute (e.g. used
> > by
> > > >> the
> > > >> > > > FileLabeller) should be added to lukes patch, since his patch
> > always
> > > >> > > > increments the latest label.
>
> > > >> > > > Do you have any problems with that if you change the prefix in
> > your
> > > >> > > > configuration file, then you won't see the new prefix until
> > there is
> > > >> a new
> > > >> > > > build with modifications, since builds without modifications
> > will be
> > > >> > > > labelled based on the last label. I think this behavior would be
> > ok,
> > > >> and it
> > > >> > > > makes the source code much cleaner.
>
> > > >> > > > //P-J
>
> > > >> > > > 2009/2/18 CinnamonDonkey <[email protected]>
>
> > > >> > > > > Our requirement is that each build is labelled with the change
> > > >> list
> > > >> > > > > number (we use Perforce) used to create that build. This means
> > > >> that we
> > > >> > > > > can relate any particular build directly back to a specific
> > point
> > > >> in
> > > >> > > > > the source history. Anything else is meaningless.
>
> > > >> > > > > Since the change list numbers are unique an represent a
> > particular
> > > >> > > > > moment in time this should be perfectly possible.
>
> > > >> > > > >   - If a modification exists use the highest retrieved
> > > >> modification
> > > >> > > > > change list number.
> > > >> > > > >   - If no modifications exist, we must still be on the same
> > > >> > > > > modification change list number.
>
> > > >> > > > > Duplicated labels should be valid as the build date/time stamp
> > is
> > > >> used
> > > >> > > > > to reflect the exact identity of that build. The label
> > correlates
> > > >> the
> > > >> > > > > build with the source.
>
> > > >> > > > > For us anyway (everyone's requirements are different ;).
>
> > > >> > > > > Regards,
> > > >> > > > > Shaun
>
> > > >> > > > > On 18 Feb, 08:04, P-J <[email protected]> wrote:
> > > >> > > > > > This is still an issue on the latest build.
> > > >> > > > > > The LastChangeLabeller is not good enough, and requires a
> > patch.
>
> > > >> > > > > > The problem has also recently been mentioned e.g. in the
> > > >> following
> > > >> > > > > > ccnet-user threads:
> > > >> > > > > > "<LastChangelabeller> :Accurev/CCNET error: Given
> > Update...".
> > > >> > > > > > "LastChangeLabeller issue in case of a forced build with no
> > > >> changes in
> > > >> > > > > > SVN"
> > > >> > > > > > "LastChangeLabeller and Unknown with Accurev"
>
> > > >> > > > > > A patch has been submitted by luke to ccnet-devel, thread
> > > >> "Improving
> > > >> > > > > > the LastChangeLabeler".
> > > >> > > > > > His patch appends a ".1" or increment an existing integer to
> > the
> > > >> last
> > > >> > > > > > label, instead of creating an "unkown" label.
> > > >> > > > > > Is this good enough for everyone? In this patch:
> > > >> > > > > > - If you change the Prefix in your config file, and then
> > make a
> > > >> forced
> > > >> > > > > > build with no modifications, then his patch will return an
> > > >> incremented
> > > >> > > > > > label with the old prefix. Is this ok?
> > > >> > > > > > - There is no "AllowDuplicateSubsequentLabels" to choose if
> > you
> > > >> only
> > > >> > > > > > want the LastChangeLabeller to return the latest label, or
> > if
> > > >> you want
> > > >> > > > > > it to return the latest label with an incremented suffix.
>
> > > >> > > > > > What do you want?
> > > >> > > > > > I would be happy to contribute if could just get this into
> > the
> > > >> trunk!
>
> > > >> > > > > > Regards,
> > > >> > > > > > //P-J
>
> > > >> > > > > > On 10 Feb, 21:31, "[email protected]" <
> > > >> [email protected]>
> > > >> > > > > > wrote:
>
> > > >> > > > > > > Hey thanks for the response. To be clear:
>
> > > >> > > > > > > I am using the "lastChangeLabeller" with the Accurev
> > source
> > > >> control
> > > >> > > > > > > system. And I have noticed the EXACT issue: That if a
> > build
> > > >> process is
> > > >> > > > > > > triggered and "No
> > > >> > > > > > > Modifications"
>
> ...
>
> read more »

Reply via email to