You can subscribe to this list here.
| 2003 |
Jan
|
Feb
(1) |
Mar
|
Apr
(3) |
May
(33) |
Jun
(44) |
Jul
(40) |
Aug
(23) |
Sep
(26) |
Oct
(41) |
Nov
(37) |
Dec
(42) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(40) |
Feb
(58) |
Mar
(81) |
Apr
(94) |
May
(77) |
Jun
(83) |
Jul
(55) |
Aug
(118) |
Sep
(51) |
Oct
(193) |
Nov
(77) |
Dec
(17) |
| 2005 |
Jan
(56) |
Feb
(87) |
Mar
(83) |
Apr
(155) |
May
(115) |
Jun
(157) |
Jul
(90) |
Aug
(87) |
Sep
(145) |
Oct
(56) |
Nov
(105) |
Dec
(88) |
| 2006 |
Jan
(56) |
Feb
(93) |
Mar
(30) |
Apr
(46) |
May
(46) |
Jun
(16) |
Jul
(33) |
Aug
(54) |
Sep
(47) |
Oct
(21) |
Nov
|
Dec
|
|
From: Martin A. <mar...@go...> - 2006-09-12 08:42:38
|
Hello Owen,
thanks for you insight
> > IntegrationResult:
> > - make starttime and endtime normal properties
>
> could you explain how you are using the start and end time properties?
> these properties will be passed to tasks; however, the end
> time property won't be populated until the build is complete.
> the start time is passed via the builddate and buildtime
> properties. is your purpose in adding it so that it is
> output in the build log? if so, then i believe that the
> start time and the buildtime attributes on the <build> element.
Well. Good point. The only reason for this is becouse of the next stuff
> > - return internal dictionary of properties in IntegrationProperties
> > property. This allows adding/changing properties in all
> > tasks/providers/labellers/whatever
>
> i believe this property is already public. what changes did
> you have to make to expose it?
Public it is, but it was returning a _copy_ of the properties dictionary, so
no task could extend/modify it. See a diff:
- IDictionary fullProps = new
Hashtable(properties);
- fullProps["CCNetBuildDate"] =
StartTime.ToString("yyyy-MM-dd", null);
- fullProps["CCNetBuildTime"] =
StartTime.ToString("HH:mm:ss", null);
- return fullProps;
+ return properties;
Back to matter above (dates): the only reason I changed it is that their
values are mirrored in CCNetBuildDate/CCNetBuildTime properties as it was
since now.
But you are true with EndTime - its empty anyway. I thought that the same
approach for all of those properties could be cleaner and perhaps could help
in state serializer or somewhere. Not sure, though.
> > XmlIntegrationResultWriter:
> > - serialize all properties to build log as attributes of the main
> > element (cruisecontrol). Project name is there twice, but
> it's not so
> > big deal, I think.
>
> this seems reasonable to me. though i think that it might be
> clearer if it was encapsulated in a method.
Sure, no problem.
> > Svn:
> > - introduction of the new enum (SvnAutoGetMode)
> > - introduction of new property AutoGetMode (defaults to
> Update to be
> > backward compatible)
>
> i have a slightly different take on how to do checkouts for
> svn and cvs. what i've been thinking is that svn or cvs
> would automatically perform a checkout if the working
> directory is empty, and do an update otherwise. this way if
> you are setting up a new ccnet project, ccnet will
> automatically checkout the source for you, and then do
> updates thereafter. if you want to do a clean build for each
> integration you can either i) add some custom clean up code
> to the <prebuild> section or ii) we provide some generic
> tasks to clean the working directory.
well. task to clean of working directory could be helpful, _but_ is will be
needed _before_ sourcecontrol autogetsource is called (which is before any
task is run). There was already some discussion around this. The cleanest
approach I liked is to instroduce new task which will force the getsource on
svc even with autogetsource=false. But that is another story.
I also noticed the "cleanCopy" attribute on cvs, vss and vault. If you
prefer this - no problem. But it have no sense to clean workingdir before
update for example.
> my preference is not to give the source control providers
> responsibility for cleaning the working directory as this is
> shared functionality across all source controls.
yes, I thought about this too. Some vcses provide "clean get". SVN do not. I
think, CVS got it and I miss this on svn, but svn developers do not want to
introduce such a feature. So you have to either: revert local
changes+update, or delete all you have + checkout/export. Other vcses have
other features and I think that provider should reflect those. Of course,
some unification is welcomed!
> as for revert before update, this seems reasonable i guess.
> i'm not sold on the SvnAutoGetMode enum. maybe this could
> just be an extra svn property. and as for export, i presume
> that this is useful for large repositories where export would
> be faster than a full checkout?
yes. I fact clean_checkout do not have any sense, since checkout is good
only for consequent updates. exported repository coudn't be updated, but its
takes half a disk space and is faster to get. (so only
clean_export,noclean_update and revert_update have sense). Revert is need
only when you modify some files during build (AssemblyInfo.cs for example)
I'll remove clean_checkout and introduce new update_or_checkout instead.
So: would you prefer 1 enum, or several properties? (cleanCopy, useExport,
useRevert? [with some combinations being nonsense])
> > - on getting modification it writes custom property "SVNRevision"
> > which it uses elsewhere instead of LastChangeNumber
>
> should FindLastChangeNumber be private?
>
> there are other problems with this revision number approach
> which we need to address --- namely that the integration
> result stores only a single revision number. if multiple svn
> blocks are used, this can mean that the wrong revision number
> is used. this bug has been reported a couple of times.
Interesting. Alost questions here.
Shoudn't we introduce some multisourcecontroller which solves this?
Mutliple svn blocks... Same repository? Several separated?
What about one <svn> and one <vss> in single project? Both with
autogetsource?
> what if the revision number was just held in the svn instance itself.
> it doesn't need to be persisted across builds or server
> restarts because it is retrieved when the modifications are
> detected. does this make sense?
[snip]
> maybe you are suggesting the same thing as what i'm recommending here.
> if so, i agree! :)
Yep!
> > - state serializer _should_ serialize "custom" properties as well.
> > Without this, just introduced "SVNRevision" is lost on
> ccnet restart
> > and svn sourcecontrol have to fallback to date comparing.
>
> hm... svn has been implemented to always use revision
> comparison. i'm not sure that date comparison is necessary.
> i can't think of why the revision number would be set to 0?
No - svn uses dates on modification retrieval. Later, it uses the highest
revision number from modifications to do autogetsource and labelling. That
is ok, but it would be nice to do also log (modifications retrieval)
revision based. Revision number cound be 0 when: a/it is 1st build ever, b/
1st build after restarting ccnet (becouse it is not state-serialized), c/
build is forced and no modifications occurs (not completely sure about
this).
Thanks agains for yout insight,
Martin
|
|
From: Owen R. <exo...@gm...> - 2006-09-12 06:59:44
|
hi martin, On 11/09/06, Martin Aliger <mar...@go...> wrote: > Could someone, please, review this and give me know? I'll write unittests > etc when this appoach is ok (have to look how to mock real svn.exe). I > tested it on my own testcases with real repository. For docs - I'll write > some, but need native speaker as a corrector! Volunteers? :) thanks for your patch. i've had a quick look at it, and my comments are below: > IntegrationResult: > - make starttime and endtime normal properties could you explain how you are using the start and end time properties? these properties will be passed to tasks; however, the end time property won't be populated until the build is complete. the start time is passed via the builddate and buildtime properties. is your purpose in adding it so that it is output in the build log? if so, then i believe that the start time and the buildtime attributes on the <build> element. > - return internal dictionary of properties in IntegrationProperties > property. This allows adding/changing properties in all > tasks/providers/labellers/whatever i believe this property is already public. what changes did you have to make to expose it? > XmlIntegrationResultWriter: > - serialize all properties to build log as attributes of the main element > (cruisecontrol). Project name is there twice, but it's not so big deal, I > think. this seems reasonable to me. though i think that it might be clearer if it was encapsulated in a method. > Svn: > - introduction of the new enum (SvnAutoGetMode) > - introduction of new property AutoGetMode (defaults to Update to be > backward compatible) i have a slightly different take on how to do checkouts for svn and cvs. what i've been thinking is that svn or cvs would automatically perform a checkout if the working directory is empty, and do an update otherwise. this way if you are setting up a new ccnet project, ccnet will automatically checkout the source for you, and then do updates thereafter. if you want to do a clean build for each integration you can either i) add some custom clean up code to the <prebuild> section or ii) we provide some generic tasks to clean the working directory. my preference is not to give the source control providers responsibility for cleaning the working directory as this is shared functionality across all source controls. as for revert before update, this seems reasonable i guess. i'm not sold on the SvnAutoGetMode enum. maybe this could just be an extra svn property. and as for export, i presume that this is useful for large repositories where export would be faster than a full checkout? > - on getting modification it writes custom property "SVNRevision" which it > uses elsewhere instead of LastChangeNumber should FindLastChangeNumber be private? there are other problems with this revision number approach which we need to address --- namely that the integration result stores only a single revision number. if multiple svn blocks are used, this can mean that the wrong revision number is used. this bug has been reported a couple of times. what if the revision number was just held in the svn instance itself. it doesn't need to be persisted across builds or server restarts because it is retrieved when the modifications are detected. does this make sense? > - on getting modification it tries to use new property (fallback to date > when not found) > - new autogetsource modes handling > I also propose to delete LastChangeNumber property from IntergrationResult > and IIntergrationResult, since that is used _only_ by svn. see comment above about storing property in the svn instance. > Move this code to Svn or SvnHistoryParser or some util class, perhaps. > HistoryParser could do this in 1st pass, save the 2nd one, but I'm not big > optimization friend anyway :) maybe you are suggesting the same thing as what i'm recommending here. if so, i agree! :) > - state serializer _should_ serialize "custom" properties as well. Without > this, just introduced "SVNRevision" is lost on ccnet restart and svn > sourcecontrol have to fallback to date comparing. hm... svn has been implemented to always use revision comparison. i'm not sure that date comparison is necessary. i can't think of why the revision number would be set to 0? > - I'm willing to code this, but, please, guide me how, since this is > delicate code. thanks for your help martin! cheers, owen. -- Owen Rogers | http://dotnetjunkies.com/weblog/exortech | CruiseControl.NET - http://ccnet.thoughtworks.com |
|
From: Daniel P. <dan...@gm...> - 2006-09-11 21:02:22
|
Hi Martin, I haven't had time to review the exact code but the approach sounds fine. I've actually been thinking of extending the properties array to copy the nAnt <property> element for the config files, but hadn't gotten around to it yet. I'd be willing to help with the documentation corrections, and I will review the code tonight in depth tonight when I have more time. For anyone else who is looking at the code, plear still post comments, I'd like some other opinions since I'm definately not the "senior" person on the staff :-) -Da On 9/11/06, Martin Aliger <mar...@go...> wrote: > > Hello, > > as I wrote in those few posts before this one, I'd look into svn > autogetsource stuff and ability to pass some "custom" property to builders > (exec/nant/...). > Here are patches I propose, but beware: no unit tests, few comments, no > docs. > > Could someone, please, review this and give me know? I'll write unittests > etc when this appoach is ok (have to look how to mock real svn.exe). I > tested it on my own testcases with real repository. For docs - I'll write > some, but need native speaker as a corrector! Volunteers? :) > > > changes against build 2463 (1.1): > > IntegrationResult: > - make starttime and endtime normal properties > - return internal dictionary of properties in IntegrationProperties > property. This allows adding/changing properties in all > tasks/providers/labellers/whatever > > XmlIntegrationResultWriter: > - serialize all properties to build log as attributes of the main element > (cruisecontrol). Project name is there twice, but it's not so big deal, I > think. > > Svn: > - introduction of the new enum (SvnAutoGetMode) > - introduction of new property AutoGetMode (defaults to Update to be > backward compatible) > - on getting modification it writes custom property "SVNRevision" which it > uses elsewhere instead of LastChangeNumber > - on getting modification it tries to use new property (fallback to date > when not found) > - new autogetsource modes handling > > > I also propose to delete LastChangeNumber property from IntergrationResult > and IIntergrationResult, since that is used _only_ by svn. > Move this code to Svn or SvnHistoryParser or some util class, perhaps. > HistoryParser could do this in 1st pass, save the 2nd one, but I'm not big > optimization friend anyway :) > > And last stuff: > - state serializer _should_ serialize "custom" properties as well. Without > this, just introduced "SVNRevision" is lost on ccnet restart and svn > sourcecontrol have to fallback to date comparing. > - I'm willing to code this, but, please, guide me how, since this is > delicate code. > > Regards, > Martin > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > > > > |
|
From: Martin A. <mar...@go...> - 2006-09-11 18:57:28
|
Hello, as I wrote in those few posts before this one, I'd look into svn autogetsource stuff and ability to pass some "custom" property to builders (exec/nant/...). Here are patches I propose, but beware: no unit tests, few comments, no docs. Could someone, please, review this and give me know? I'll write unittests etc when this appoach is ok (have to look how to mock real svn.exe). I tested it on my own testcases with real repository. For docs - I'll write some, but need native speaker as a corrector! Volunteers? :) changes against build 2463 (1.1): IntegrationResult: - make starttime and endtime normal properties - return internal dictionary of properties in IntegrationProperties property. This allows adding/changing properties in all tasks/providers/labellers/whatever XmlIntegrationResultWriter: - serialize all properties to build log as attributes of the main element (cruisecontrol). Project name is there twice, but it's not so big deal, I think. Svn: - introduction of the new enum (SvnAutoGetMode) - introduction of new property AutoGetMode (defaults to Update to be backward compatible) - on getting modification it writes custom property "SVNRevision" which it uses elsewhere instead of LastChangeNumber - on getting modification it tries to use new property (fallback to date when not found) - new autogetsource modes handling I also propose to delete LastChangeNumber property from IntergrationResult and IIntergrationResult, since that is used _only_ by svn. Move this code to Svn or SvnHistoryParser or some util class, perhaps. HistoryParser could do this in 1st pass, save the 2nd one, but I'm not big optimization friend anyway :) And last stuff: - state serializer _should_ serialize "custom" properties as well. Without this, just introduced "SVNRevision" is lost on ccnet restart and svn sourcecontrol have to fallback to date comparing. - I'm willing to code this, but, please, guide me how, since this is delicate code. Regards, Martin |
|
From: Jay F. <jay...@gm...> - 2006-09-11 17:58:14
|
The more information availible in the NAnt task the better. On 9/11/06, Martin Aliger <mar...@go...> wrote: > > Hello, > > does anyone have something against serializing "custom" properties to > xmllogs and/or state-files ? > > 1/ log > XmlIntegrationResultWriter.Write change should be pretty simple and > allowed > some funky formatting/information on the XSL side. > > 2/ state file serializing. Quite strange to me, that many info from > IntergrationResult is serialized, but not all of it! If all properties are > serialized/read that could allow us to use it on other run. Eg. svn > sourcecontrol could use revision number instead of times. Of course, there > is compatibility issue... > > Ideas? > Martin > > btw: I'm willing to contribute the patch for this. > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > -- Jay Flowers ---------------------------------------------------------------------- http://jayflowers.com --------------------------------------------------------------------- |
|
From: Martin A. <mar...@go...> - 2006-09-11 16:22:21
|
Hello, does anyone have something against serializing "custom" properties to xmllogs and/or state-files ? 1/ log XmlIntegrationResultWriter.Write change should be pretty simple and allowed some funky formatting/information on the XSL side. 2/ state file serializing. Quite strange to me, that many info from IntergrationResult is serialized, but not all of it! If all properties are serialized/read that could allow us to use it on other run. Eg. svn sourcecontrol could use revision number instead of times. Of course, there is compatibility issue... Ideas? Martin btw: I'm willing to contribute the patch for this. |
|
From: Martin A. <mar...@go...> - 2006-09-11 09:51:47
|
Hello, it someone interested in SVN autogetsource with another method than "update" ? I'm willing to contribute this, but what is preffered way to do? 1/ <sourcecontrol type="svn"> <executable>c:\Program Files\Subversion\bin\svn.exe</executable> <trunkUrl>http://foo.bar/trunk</trunkUrl> <autoGetSource>true</autoGetSource> <autoGetMode>delete-checkout</autoGetMode> </sourcecontrol> with several "modes" like "update" or "delete-checkout" or "revert-update" or "delete-export" ... this is svn specific, but could do whatever svn have. 2/ introduce some properties for all providers (I hear something about "cleanCopy") and react to those. I'd preferer the former (1) but... btw: cleanCopy seems to be implemented on cvs, vss and vault. Anyway - I think about several modes in the svn provider... Ideas? Martin |
|
From: Martin A. <mar...@go...> - 2006-09-11 09:44:37
|
Hello, why LastChangeNumber is not property as most others? 1/ this is used _only_ by SVN sourcecontrol block. Perhaps depracate this and use new Properties["SVNRevision"] instead? 2/ it is not propagated into NAnt/Exec etc which is sometimes handy. 3/ It'd be nice to minimize those "hard-coded" properties, don't you think? |
|
From: Ruben W. <rub...@gm...> - 2006-09-09 05:55:31
|
Hi
The Nant constant can easily be removed, if you copy this constant to
the listener.
I made this a public constant in the CCNEt Nant task so it's only in 1 place,
should the value change.
That's the only reason there's link from my Nant listener
to the CCNet Core : this constant.
If you copy the constant also in the listener, it is an isolated project.
--> that's why I mentioned it should be a separate 'project'
I was not very clear on this, sorry.
If you need more information, just let me know
with kind regards
On 9/7/06, Daniel Piessens <dan...@gm...> wrote:
>
> Hello Ruben,
>
> My apologies for not giving you an update, It's been a busy week. I've
> merged your patch into an enviroment, but it took a bit of time since one of
> the additions I made conflicts a bit with yours just due to the methods
> we've touched etc. The main reason for not commiting it the listener.
> Ideally, it should be built with the core and distributed but your request
> to keep it seperate is nearly impossible due to the fact that it's included
> as a constant in the nAnt task.
>
> The other reason for this is I'm working on a project to report overall
> build status both in terms of time (like CCTray) and progress. I think this
> is a great addition, but I'm trying to see if there's a generic way to apply
> it to more tasks and possibly eliminate constantly reading and writing from
> a file to get the status. I promise that I won't hold up your patch in the
> mean time, I just need to manipulate the rest of the project to inlcude the
> listener.
>
> -Dan Piessens
>
>
> On 9/7/06, Ruben Willems <rub...@gm...> wrote:
> >
> Hi all
>
> Can the patch for issue 158 be included in one of the next builds?
> It is scheduled for the 1.1 release, but did not made it into a
> nightly build yet, it is now a svn patch.
>
> We have a large code base, and the compile and distribute takes some time,
> so it is handy to know how far the build is already.
>
> If there are still issues with the patch, please let me know.
>
> with kind regards
>
> -------------------------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job
> easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> _______________________________________________
> Ccnet-devel mailing list
> Ccn...@li...
> https://lists.sourceforge.net/lists/listinfo/ccnet-devel
>
>
> -------------------------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job
> easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
>
> _______________________________________________
> Ccnet-devel mailing list
> Ccn...@li...
> https://lists.sourceforge.net/lists/listinfo/ccnet-devel
>
>
>
|
|
From: Ruben W. <rub...@gm...> - 2006-09-09 05:48:51
|
Hi
The reason for the listener :
Nant does not close the console output stream you see until everything is done.
(Something I read in one of the previous posts on this mailing list.)
If it is possible to listen to the stream while Nant is also using this,
than we basically do not need the separate listener, which is neat.
Getting this stream data in a proper format is maybe another problem,
since the stream will not be XML compliant.
These are benefits of a separate listener:
- you have all the data at the right time, so the listenfile is XML compliant
- you have only the data which is needed, no stream parsing needed.
- every 'build' listener can make the same listenfile XML layout
--> Nant, MSBuild,...
This makes processing a lot easier
Drawbacks of a separate listener:
- maintenance
- every builder must have a listener if you want to look at it's progress
As I said, I did not know if it is possible to read from the stream output,
if so that approach is worth investigating.
But I think the interpreting of this stream data will not be easy.
What needs to be changed in CCNet to be able to read this stream?
with kind regards
On 9/8/06, Daniel Piessens <dan...@gm...> wrote:
>
> I guess the other question I had is why do we need a listener at all? The
> build stage from a task standpoint is fairly closely monitored, and unless
> I'm looking at this incorrectly you're simply having the listener report
> back statuses that are also returned through the console which is monitored
> by the steam output. We would just need to updated the stream reading task
> to be able to look at the stream while in process... just wondering if you
> looked at this option.
>
> -Dan
>
>
>
> On 9/7/06, Thomas Freudenberg <in...@th... > wrote:
> > Hi Ruben,
> >
> > I had a closer look at your patch you added to issue 158 [1]. IMHO
> > your proposal is too focused on NAnt, for instance in the Project
> > class you call a static NAntTask.
> >
> > Instead, I suggest to add one more property to IIntegrationResult
> > specifying a "buildstage" file (maybe in the artifact directory?).
> > This file should be used by the different tasks to write their
> > progress into. For each appropriate task such as MSBuild and NAnt we
> > would have to implement loggers writing to that file. The format of
> > the file should be generic and targeted for CCNet only, i.e. no
> > special NAnt dependancy.
> >
> > Just my $.02
> >
> > Regards,
> > Thomas
> >
> >
> > [1] http://jira.public.thoughtworks.org/browse/CCNET-158
> >
> >
> > On 9/7/06, Ruben Willems < rub...@gm...> wrote:
> > > Hi all
> > >
> > > Can the patch for issue 158 be included in one of the next builds?
> > > It is scheduled for the 1.1 release, but did not made it into a
> > > nightly build yet, it is now a svn patch.
> > >
> > > We have a large code base, and the compile and distribute takes some
> time,
> > > so it is handy to know how far the build is already.
> > >
> > > If there are still issues with the patch, please let me know.
> > >
> > > with kind regards
> > >
> > >
> -------------------------------------------------------------------------
> > > Using Tomcat but need to do more? Need to support web services,
> security?
> > > Get stuff done quickly with pre-integrated technology to make your job
> easier
> > > Download IBM WebSphere Application Server v.1.0.1 based on Apache
> Geronimo
> > >
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > > _______________________________________________
> > > Ccnet-devel mailing list
> > > Ccn...@li...
> > >
> https://lists.sourceforge.net/lists/listinfo/ccnet-devel
> > >
> >
> >
> -------------------------------------------------------------------------
> > Using Tomcat but need to do more? Need to support web services, security?
> > Get stuff done quickly with pre-integrated technology to make your job
> easier
> > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> >
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > _______________________________________________
> > Ccnet-devel mailing list
> > Ccn...@li...
> > https://lists.sourceforge.net/lists/listinfo/ccnet-devel
> >
>
>
> -------------------------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job
> easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
>
> _______________________________________________
> Ccnet-devel mailing list
> Ccn...@li...
> https://lists.sourceforge.net/lists/listinfo/ccnet-devel
>
>
>
|
|
From: Daniel P. <dan...@gm...> - 2006-09-08 13:39:31
|
I guess the other question I had is why do we need a listener at all? The build stage from a task standpoint is fairly closely monitored, and unless I'm looking at this incorrectly you're simply having the listener report back statuses that are also returned through the console which is monitored by the steam output. We would just need to updated the stream reading task to be able to look at the stream while in process... just wondering if you looked at this option. -Dan On 9/7/06, Thomas Freudenberg <in...@th... > wrote: > > Hi Ruben, > > I had a closer look at your patch you added to issue 158 [1]. IMHO > your proposal is too focused on NAnt, for instance in the Project > class you call a static NAntTask. > > Instead, I suggest to add one more property to IIntegrationResult > specifying a "buildstage" file (maybe in the artifact directory?). > This file should be used by the different tasks to write their > progress into. For each appropriate task such as MSBuild and NAnt we > would have to implement loggers writing to that file. The format of > the file should be generic and targeted for CCNet only, i.e. no > special NAnt dependancy. > > Just my $.02 > > Regards, > Thomas > > > [1] http://jira.public.thoughtworks.org/browse/CCNET-158 > > > On 9/7/06, Ruben Willems < rub...@gm...> wrote: > > Hi all > > > > Can the patch for issue 158 be included in one of the next builds? > > It is scheduled for the 1.1 release, but did not made it into a > > nightly build yet, it is now a svn patch. > > > > We have a large code base, and the compile and distribute takes some > time, > > so it is handy to know how far the build is already. > > > > If there are still issues with the patch, please let me know. > > > > with kind regards > > > > > ------------------------------------------------------------------------- > > Using Tomcat but need to do more? Need to support web services, > security? > > Get stuff done quickly with pre-integrated technology to make your job > easier > > Download IBM WebSphere Application Server v.1.0.1 based on Apache > Geronimo > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > > _______________________________________________ > > Ccnet-devel mailing list > > Ccn...@li... > > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > |
|
From: Thomas F. <in...@th...> - 2006-09-07 19:53:38
|
Hi Ruben, I had a closer look at your patch you added to issue 158 [1]. IMHO your proposal is too focused on NAnt, for instance in the Project class you call a static NAntTask. Instead, I suggest to add one more property to IIntegrationResult specifying a "buildstage" file (maybe in the artifact directory?). This file should be used by the different tasks to write their progress into. For each appropriate task such as MSBuild and NAnt we would have to implement loggers writing to that file. The format of the file should be generic and targeted for CCNet only, i.e. no special NAnt dependancy. Just my $.02 Regards, Thomas [1] http://jira.public.thoughtworks.org/browse/CCNET-158 On 9/7/06, Ruben Willems <rub...@gm...> wrote: > Hi all > > Can the patch for issue 158 be included in one of the next builds? > It is scheduled for the 1.1 release, but did not made it into a > nightly build yet, it is now a svn patch. > > We have a large code base, and the compile and distribute takes some time, > so it is handy to know how far the build is already. > > If there are still issues with the patch, please let me know. > > with kind regards > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > |
|
From: Daniel P. <dan...@gm...> - 2006-09-07 17:47:54
|
Hello All, I realize everyone is busy and have "real jobs" aside from CC.NET<http://cc.net/>development, but I would like to propose a release for CC.NET <http://cc.net/> 1.1 on October 1, 2006. I've been looking through the Jira issue list for the release and realized that a lot of issues are either complete without an update to the issue or are pretty close to completion. I'm also basing this off of the long ago posts on what should be in the 1.1 release and what's there. If everyone could look at the Jira queue<http://jira.public.thoughtworks.org/secure/IssueNavigator.jspa?reset=true&mode=hide&sorter/order=DESC&sorter/field=priority&resolutionIds=-1&pid=10000&fixfor=10182>and update the issues (and the documentation on Confluence), I think we can move towards a release. Also, if you have some time, please browse the Jira queue in general and close out any issues you created/worked on that you feel are currently in standard product. By the way, I don't intend to steamroll this, it is simply a proposal. I'm open to objections etc. -Dan Piessens |
|
From: Daniel P. <dan...@gm...> - 2006-09-07 14:06:40
|
Hello Ruben, My apologies for not giving you an update, It's been a busy week. I've merged your patch into an enviroment, but it took a bit of time since one of the additions I made conflicts a bit with yours just due to the methods we've touched etc. The main reason for not commiting it the listener. Ideally, it should be built with the core and distributed but your request to keep it seperate is nearly impossible due to the fact that it's included as a constant in the nAnt task. The other reason for this is I'm working on a project to report overall build status both in terms of time (like CCTray) and progress. I think this is a great addition, but I'm trying to see if there's a generic way to apply it to more tasks and possibly eliminate constantly reading and writing from a file to get the status. I promise that I won't hold up your patch in the mean time, I just need to manipulate the rest of the project to inlcude the listener. -Dan Piessens On 9/7/06, Ruben Willems <rub...@gm...> wrote: > > Hi all > > Can the patch for issue 158 be included in one of the next builds? > It is scheduled for the 1.1 release, but did not made it into a > nightly build yet, it is now a svn patch. > > We have a large code base, and the compile and distribute takes some time, > so it is handy to know how far the build is already. > > If there are still issues with the patch, please let me know. > > with kind regards > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > |
|
From: Ruben W. <rub...@gm...> - 2006-09-07 13:39:54
|
Hi all Can the patch for issue 158 be included in one of the next builds? It is scheduled for the 1.1 release, but did not made it into a nightly build yet, it is now a svn patch. We have a large code base, and the compile and distribute takes some time, so it is handy to know how far the build is already. If there are still issues with the patch, please let me know. with kind regards |
|
From: Daniel P. <dan...@gm...> - 2006-09-03 14:56:53
|
No, version 1.1 is technically not released yet. If you look at the JIRA page for CC.NET there are about 13 issues out there yet. I think we can close about 7 of them since they seem to be complete. I'll post another copy of this to the Dev forum, but if you are a developer on cc.net please look through this list http://jira.public.thoughtworks.org/secure/IssueNavigator.jspa?reset=true&mode=hide&sorter/order=DESC&sorter/field=priority&resolutionIds=-1&pid=10000&fixfor=10182 and resolve any issues that you have fixed. I think we can push for a release fairly soon just so people know we're still active on this. -Dan On 9/2/06, Dru Sellers <dr...@dr...> wrote: > > So it is not official yet? > > On 9/2/06, si <ssh...@gm...> wrote: > > > cleanCopy If true, the source path will be emptied before retrieving > > new source. bool false false 1.1.0.2172 > > So where can I get this build. The best I can find is 1.0.1.1277 > > > > > > http://ccnetlive.thoughtworks.com/ > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > Ccnet-user mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-user > > > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > Ccnet-user mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-user > > > |
|
From: Ruben W. <rub...@gm...> - 2006-08-31 06:56:13
|
Hi all The conversion to svn of the patch is done. Many thanks go to Gary Feldman with his testing hat for help with NMock ;-) I've placed 2 new files on the JIRA site for this issue http://jira.public.thoughtworks.org/browse/CCNET-158 - CCNET158_svn.zip the patch in svn format - CCNetListener.zip the NANT listener For the moment the Nant listener uses file references, maybe we have to include it in the main solution using project references. Downside is that it will cause a reference to a certain version of Nant. I would prefer to keep it as a 3rd party dll, because this functionality does not belong to CCnet, but to Nant. Maybe a separate project on the ccnet live site http://ccnetlive.thoughtworks.com/ccnet in the likes of NetReflector, MSBuild XmlLogger, ... If there are any questions / remarks, let me know. with kind regards |
|
From: Ruben W. <rub...@gm...> - 2006-08-30 11:22:02
|
Hi Thanks for the explanation, I'll try that approach and let you know. with kind regards On 8/29/06, Gary Feldman <sf_...@ma...> wrote: > Ruben Willems wrote: > > Hi > > > > The Integration Runner does a call to the Nant task, > > requesting the deletion of the file. > > > > I would think that the Integration runner would do the high level items > > - launch tasks > > - check for modifications > > but pass the actual work to lower classes. > > > > > > It's the same with my patch (in my opinion) > > > No. The IntegrationRunner runs the Project, and the Project runs the > tasks. The Project class doesn't deal with specific classes; it uses > the ITask interface (which, by the way, is in the same namespace as > IntegrationRunner) to run tasks. You're not running the task, you're > invoking a specific method on a task class. > > My suggestion is to make the method private and invoke it from the > NAntTask.Run method. If that doesn't work (since that would invoke it > once per task, instead of once per integration), then you're probably > best off letting the user worry about it, until such time as the > artifact directory can support such items. > > Gary > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > |
|
From: Gary F. <sf_...@ma...> - 2006-08-29 20:37:47
|
Ruben Willems wrote: > Hi > > The Integration Runner does a call to the Nant task, > requesting the deletion of the file. > > I would think that the Integration runner would do the high level items > - launch tasks > - check for modifications > but pass the actual work to lower classes. > > > It's the same with my patch (in my opinion) > No. The IntegrationRunner runs the Project, and the Project runs the tasks. The Project class doesn't deal with specific classes; it uses the ITask interface (which, by the way, is in the same namespace as IntegrationRunner) to run tasks. You're not running the task, you're invoking a specific method on a task class. My suggestion is to make the method private and invoke it from the NAntTask.Run method. If that doesn't work (since that would invoke it once per task, instead of once per integration), then you're probably best off letting the user worry about it, until such time as the artifact directory can support such items. Gary |
|
From: Ruben W. <rub...@gm...> - 2006-08-29 14:21:33
|
Hi The Integration Runner does a call to the Nant task, requesting the deletion of the file. I would think that the Integration runner would do the high level items - launch tasks - check for modifications but pass the actual work to lower classes. It's the same with my patch (in my opinion) Nmock does not really complain about the call to the Nant-task, but with the parameter passed to this function : result.ProjectName I'll have a look again at the patch thanks anyway for your time for explaining NMock. with kind regards On 8/29/06, Gary Feldman <sf_...@ma...> wrote: > Ruben Willems wrote: > > Hi > > > > <quote> > > The IntegrationRunner shouldn't know about the mechanisms peculiar to > > a specific type of task. > > <quote> > > My thoughts exactly, so how do I fix this? > > I have no real experience with NMock. > > > At this point, the problem isn't with NMock, but with your fix. The > deletion of the NAnt log needs to be moved out of IntegrationRunner. It > might go into an appropriate place in the NAnt task. If that can't be > made to work, then another alternative is to generate unique file names > and require the user to delete them some other way (unfortunate, but > functional). > > At the brute force end in the test, if you had to add a method from some > other class like this to a module, you'd need to add a brand new mock > for it to the unit test. Because the NAntTask class is so far removed > from the IntegrationRunner, that's not easy to do in this case, but in > other situations it would be the right strategy. In general, you mock > classes that are used by the class under test; in this case, > IntegrationRunner is the class under test. > > Gary > > > > with kind regards > > > > On 8/28/06, Gary Feldman <sf_...@ma...> wrote: > > > >> Ruben Willems wrote: > >> > >>> ... > >>> I've added > >>> Tasks.NAntTask.DeleteCCNetNantListenFile(result.ProjectName); > >>> > >>> between > >>> result.MarkStartTime(); > >>> and > >>> result.Modifications = GetModifications(lastResult, result); > >>> > >>> I know I have to do a similar thing in the mocking, > >>> but I am unsuccessful in this. Any help would be greatly appreciated. > >>> > >> Without actually looking at the code, and just putting on my testing > >> hat, this is generally the wrong way to approach mocks. You only need > >> to mirror a change in a mock if you know that you've actually changed > >> the way the mock is being called or the number of times it's being > >> called. Changing a mock to fix a test failure in unfamiliar code is > >> always a suspicious thing to do. > >> > >> I don't think that's what you've done, and I'm guessing that the NAnt > >> related task you've called is throwing an exception during the test. A > >> brute force approach at this point suggests mocking the > >> DeleteCCNetNantListenFile method, but that doesn't feel right. My gut > >> feel, again without looking at the code, is that this is the wrong > >> place to be doing this. The IntegrationRunner shouldn't know about the > >> mechanisms peculiar to a specific type of task. > >> > >> Gary > >> > >> > >> > >> ------------------------------------------------------------------------- > >> Using Tomcat but need to do more? Need to support web services, security? > >> Get stuff done quickly with pre-integrated technology to make your job easier > >> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > >> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > >> _______________________________________________ > >> Ccnet-devel mailing list > >> Ccn...@li... > >> https://lists.sourceforge.net/lists/listinfo/ccnet-devel > >> > >> > > > > ------------------------------------------------------------------------- > > Using Tomcat but need to do more? Need to support web services, security? > > Get stuff done quickly with pre-integrated technology to make your job easier > > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > > Ccnet-devel mailing list > > Ccn...@li... > > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > > > > > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > |
|
From: Gary F. <sf_...@ma...> - 2006-08-29 13:20:00
|
Ruben Willems wrote: > Hi > > <quote> > The IntegrationRunner shouldn't know about the mechanisms peculiar to > a specific type of task. > <quote> > My thoughts exactly, so how do I fix this? > I have no real experience with NMock. > At this point, the problem isn't with NMock, but with your fix. The deletion of the NAnt log needs to be moved out of IntegrationRunner. It might go into an appropriate place in the NAnt task. If that can't be made to work, then another alternative is to generate unique file names and require the user to delete them some other way (unfortunate, but functional). At the brute force end in the test, if you had to add a method from some other class like this to a module, you'd need to add a brand new mock for it to the unit test. Because the NAntTask class is so far removed from the IntegrationRunner, that's not easy to do in this case, but in other situations it would be the right strategy. In general, you mock classes that are used by the class under test; in this case, IntegrationRunner is the class under test. Gary > > with kind regards > > On 8/28/06, Gary Feldman <sf_...@ma...> wrote: > >> Ruben Willems wrote: >> >>> ... >>> I've added >>> Tasks.NAntTask.DeleteCCNetNantListenFile(result.ProjectName); >>> >>> between >>> result.MarkStartTime(); >>> and >>> result.Modifications = GetModifications(lastResult, result); >>> >>> I know I have to do a similar thing in the mocking, >>> but I am unsuccessful in this. Any help would be greatly appreciated. >>> >> Without actually looking at the code, and just putting on my testing >> hat, this is generally the wrong way to approach mocks. You only need >> to mirror a change in a mock if you know that you've actually changed >> the way the mock is being called or the number of times it's being >> called. Changing a mock to fix a test failure in unfamiliar code is >> always a suspicious thing to do. >> >> I don't think that's what you've done, and I'm guessing that the NAnt >> related task you've called is throwing an exception during the test. A >> brute force approach at this point suggests mocking the >> DeleteCCNetNantListenFile method, but that doesn't feel right. My gut >> feel, again without looking at the code, is that this is the wrong >> place to be doing this. The IntegrationRunner shouldn't know about the >> mechanisms peculiar to a specific type of task. >> >> Gary >> >> >> >> ------------------------------------------------------------------------- >> Using Tomcat but need to do more? Need to support web services, security? >> Get stuff done quickly with pre-integrated technology to make your job easier >> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >> _______________________________________________ >> Ccnet-devel mailing list >> Ccn...@li... >> https://lists.sourceforge.net/lists/listinfo/ccnet-devel >> >> > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > > |
|
From: Ruben W. <rub...@gm...> - 2006-08-29 08:06:30
|
Hi <quote> The IntegrationRunner shouldn't know about the mechanisms peculiar to a specific type of task. <quote> My thoughts exactly, so how do I fix this? I have no real experience with NMock. with kind regards On 8/28/06, Gary Feldman <sf_...@ma...> wrote: > Ruben Willems wrote: > > ... > > I've added > > Tasks.NAntTask.DeleteCCNetNantListenFile(result.ProjectName); > > > > between > > result.MarkStartTime(); > > and > > result.Modifications = GetModifications(lastResult, result); > > > > I know I have to do a similar thing in the mocking, > > but I am unsuccessful in this. Any help would be greatly appreciated. > Without actually looking at the code, and just putting on my testing > hat, this is generally the wrong way to approach mocks. You only need > to mirror a change in a mock if you know that you've actually changed > the way the mock is being called or the number of times it's being > called. Changing a mock to fix a test failure in unfamiliar code is > always a suspicious thing to do. > > I don't think that's what you've done, and I'm guessing that the NAnt > related task you've called is throwing an exception during the test. A > brute force approach at this point suggests mocking the > DeleteCCNetNantListenFile method, but that doesn't feel right. My gut > feel, again without looking at the code, is that this is the wrong > place to be doing this. The IntegrationRunner shouldn't know about the > mechanisms peculiar to a specific type of task. > > Gary > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Ccnet-devel mailing list > Ccn...@li... > https://lists.sourceforge.net/lists/listinfo/ccnet-devel > |
|
From: Gary F. <sf_...@ma...> - 2006-08-28 13:41:08
|
Ruben Willems wrote: > ... > I've added > Tasks.NAntTask.DeleteCCNetNantListenFile(result.ProjectName); > > between > result.MarkStartTime(); > and > result.Modifications = GetModifications(lastResult, result); > > I know I have to do a similar thing in the mocking, > but I am unsuccessful in this. Any help would be greatly appreciated. Without actually looking at the code, and just putting on my testing hat, this is generally the wrong way to approach mocks. You only need to mirror a change in a mock if you know that you've actually changed the way the mock is being called or the number of times it's being called. Changing a mock to fix a test failure in unfamiliar code is always a suspicious thing to do. I don't think that's what you've done, and I'm guessing that the NAnt related task you've called is throwing an exception during the test. A brute force approach at this point suggests mocking the DeleteCCNetNantListenFile method, but that doesn't feel right. My gut feel, again without looking at the code, is that this is the wrong place to be doing this. The IntegrationRunner shouldn't know about the mechanisms peculiar to a specific type of task. Gary |
|
From: Ruben W. <rub...@gm...> - 2006-08-27 19:00:15
|
Hi all
Friday I took the latest svn build, and started to re-make the patch.
All the functionality is in this patch, but there is a small problem :
NMock ( I have often problems with NMock and CCNet patches :-(( )
I get the following error :
TestCase 'ThoughtWorks.CruiseControl.UnitTests.Core.IntegrationRunnerTest.ShouldNotRunBuildIfResultShouldNotBuild'
failed:
NMock.VerifyException :
MockIIntegrationResult.ProjectName) called too many times
expected:<0>
but was:<1>
at NMock.Mock.Invoke(String methodName, Object[] args)
at ProxyIIntegrationResult_3.get_ProjectName()
c:\temp\ccnet\project\unittests\core\integrationrunnertest.cs(147,0):
at ThoughtWorks.CruiseControl.UnitTests.Core.IntegrationRunnerTest.SetupPreambleExpections()
c:\temp\ccnet\project\unittests\core\integrationrunnertest.cs(70,0):
at ThoughtWorks.CruiseControl.UnitTests.Core.IntegrationRunnerTest.ShouldNotRunBuildIfResultShouldNotBuild()
My changes to the public IIntegrationResult
Integrate(IntegrationRequest request)
I've added
Tasks.NAntTask.DeleteCCNetNantListenFile(result.ProjectName);
between
result.MarkStartTime();
and
result.Modifications = GetModifications(lastResult, result);
I know I have to do a similar thing in the mocking,
but I am unsuccessful in this. Any help would be greatly appreciated.
with kind regards
On 8/26/06, Ruben Willems <rub...@gm...> wrote:
> Hi
>
> You read my path correctly,
> I will have a look at that file system watcher and see if I can get it to work.
>
> with kind regards
>
>
> On 8/25/06, Thomas Freudenberg <in...@th...> wrote:
> > MSBuild does support this. Either you can use the included File Logger
> > [1] or write your own one [2].
> >
> > However, I doubt it's a good idea to use files for interprocess
> > communication. Wouldn't it be more convenient to use remoting or some
> > other IPC mechanism?
> >
> > I threw a glance at your patch, and if I understand it correctly
> > you're polling the file? I suggest to use a FileSystemWatcher instead
> > to get notified automatically if the file was modified. [3]
> >
> > Regards,
> > Thomas
> >
> >
> > [1] http://msdn2.microsoft.com/en-us/library/ms171470.aspx
> > [2] http://msdn2.microsoft.com/en-us/library/ms171471.aspx
> > [3] http://msdn2.microsoft.com/system.io.filesystemwatcher
> >
> > On 8/25/06, Ruben Willems <rub...@gm...> wrote:
> > > Hi
> > >
> > > check
> > > http://nant.sourceforge.net/release/latest/help/fundamentals/listeners.html
> > > at the bottom of the page.
> > >
> > > I've made a new Nant listener,
> > > basically it listens to Nant events(standard Nant functionality)
> > > and writes these events with their data to an xml file.
> > >
> > > So whenever a certain event goes off in Nant, this file gets updated/rewritten.
> > > Every X seconds the dashboard/cctray visualize the contents of this file.
> > >
> > > The benefit is that it is standard NAnt functionality, one does not have to
> > > update their ccnet project to take advantage of this approach.
> > >
> > > Probably MSbuild has something similar, if you can subscribe to
> > > certain events of the MSuild engine, and reroute the information to a file,
> > > you will have the same functionality.
> > >
> > >
> > > with kind regards
> > >
> > >
> > >
> > >
> > >
> > > On 8/25/06, Thomas Freudenberg <in...@th...> wrote:
> > > > Hi Ruben,
> > > >
> > > > sounds interesting. Can you explain the details? How does the
> > > > communication work between NAnt and CCNet work?
> > > >
> > > > Maybe I can start developing a corresponding extension for MSBuild.
> > > >
> > > > Regards,
> > > > Thomas
> > > >
> > > >
> > > > Ruben Willems wrote:
> > > > > Hi all
> > > > >
> > > > > Can the patch for issue 158 be included in one of the next builds?
> > > > > It is scheduled for the 1.1 release, but did not made it into a
> > > > > nightly build yet.
> > > > >
> > > > > We have a large code base, and the compile and distribute takes some time,
> > > > > so it is handy to know how far the build is already.
> > > > >
> > > > > If there are issues with the patch, please let me know.
> > > > >
> > > > > with kind regards
> > > > > Ruben Willems
> > > > >
> >
> > -------------------------------------------------------------------------
> > Using Tomcat but need to do more? Need to support web services, security?
> > Get stuff done quickly with pre-integrated technology to make your job easier
> > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > _______________________________________________
> > Ccnet-devel mailing list
> > Ccn...@li...
> > https://lists.sourceforge.net/lists/listinfo/ccnet-devel
> >
>
|
|
From: Jim T. <jim...@gm...> - 2006-08-26 20:16:33
|
Hi all, I was trying to setup the SMTP mailing publisher again for CC.net and of course ran into a couple of problems. I've noticed this before (http://jira.public.thoughtworks.org/browse/CCNET-401) and the fix I applied for my own purposes that time was to simple use the DotNetOpenMail library. It's mentioned in the thread that the .net 2.0 net.mail client should be used, it's true that this can be done, but as they mention in these to places: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=112971&SiteID=1 http://support.microsoft.com/?kbid=913616 that solution have problems of it's own (e.g. virus scanners/firewalls). The DotNetOpenMail library is still working pretty well, I've got it sending emails now for quite a while. Was the dotnetopenmail solution rejected in favour of waiting for MS to patch the .net runtime for the net.mail client? Or should we perhaps just implement the email thing in terms of dotnetopenmail? Or just have the broken version that's currently in? Cheers, Jim Tilander -- Beware of architect astronauts. |