Re: Gump for Forrest
On 2010-07-16, David Crossley wrote: I just commented out the forrest-test project until the forrest-test-basic is working. Thank you. Is there a better way to disable a project, rather than simple xml comments? No, there is not. We never had a need for that so far. Stefan - To unsubscribe, e-mail: general-unsubscr...@gump.apache.org For additional commands, e-mail: general-h...@gump.apache.org
Re: Gump for Forrest
I am getting closer. Using some from our own lib directory until it works, then will go back to address those. Unless i am reading incorrectly, Gump is taking 60+ minutes on forrest-test-basic. That seems strange. -David - To unsubscribe, e-mail: general-unsubscr...@gump.apache.org For additional commands, e-mail: general-h...@gump.apache.org
Re: Gump for Forrest
On 2010-07-15, David Crossley wrote: Unless i am reading incorrectly, Gump is taking 60+ minutes on forrest-test-basic. That seems strange. Both forrest-test-basic and forrest-test get killed by Gump - it terminates builds that take longer than an hour. For some reason your build never finishes - my guess is that the forked Jetty is never getting terminated if the application inside of it runs into an exceptional state and so Ant keeps waiting for it. Stefan - To unsubscribe, e-mail: general-unsubscr...@gump.apache.org For additional commands, e-mail: general-h...@gump.apache.org
Re: Gump for Forrest
Stefan Bodewig wrote: David Crossley wrote: Unless i am reading incorrectly, Gump is taking 60+ minutes on forrest-test-basic. That seems strange. Both forrest-test-basic and forrest-test get killed by Gump - it terminates builds that take longer than an hour. For some reason your build never finishes - my guess is that the forked Jetty is never getting terminated if the application inside of it runs into an exceptional state and so Ant keeps waiting for it. Youch, sorry. I just commented out the forrest-test project until the forrest-test-basic is working. Is there a better way to disable a project, rather than simple xml comments? -David - To unsubscribe, e-mail: general-unsubscr...@gump.apache.org For additional commands, e-mail: general-h...@gump.apache.org
Gump for Forrest
Please help with the descriptor for Forrest. I am trying to get forrest-core with the stuff that is required to build forrest. Most of those dependencies are also required to later run forrest. Then forrest-runtime which has the minimum additional stuff needed to actually run forrest. Then forrest-test-basic which builds a small site that should have no additional dependencies. Then forrest-test which builds a more complex site, which does have some additional dependencies. I just now added a change for the next run. See r960769 I also get the feeling that i am being a bit crude with the inheritance side of things. -David - To unsubscribe, e-mail: general-unsubscr...@gump.apache.org For additional commands, e-mail: general-h...@gump.apache.org
Re: Gump for Forrest
On 2010-07-06, David Crossley wrote: Please help with the descriptor for Forrest. I also get the feeling that i am being a bit crude with the inheritance side of things. You are not alone. I can tell you what I think it does, but must admit I'm not sure I get it right. depend and option have an inherit attribute which can mean: * If you use inherit=jars then the project that contains the depend tag seems to also contain the other project's jars as outputs of its own * If you use inherit=all the the project that contains the depend tag seems to also contain the other project's depend and option tags as dependencies of its own. * If you use inherit=runtime the the project that contains the depend tag seems to also contain the other project's depend and option that themselves have a runtime=true attribute tags as dependencies of its own. I am trying to get forrest-core with the stuff that is required to build forrest. Most of those dependencies are also required to later run forrest. Then forrest-runtime which has the minimum additional stuff needed to actually run forrest. I'd suggest you use runtime=true on all dependencies that are later required to run forrest inside the forrest-core project, remove forrest-runtime and use depend project=forrest-core inherit=runtime/ wherever you'd use forrest-runtime now. I think this should do what you intend. Stefan - To unsubscribe, e-mail: general-unsubscr...@gump.apache.org For additional commands, e-mail: general-h...@gump.apache.org
Re: Gump for Forrest
Stefan Bodewig wrote: David Crossley wrote: Please help with the descriptor for Forrest. I also get the feeling that i am being a bit crude with the inheritance side of things. You are not alone. I can tell you what I think it does, but must admit I'm not sure I get it right. depend and option have an inherit attribute which can mean: * If you use inherit=jars then the project that contains the depend tag seems to also contain the other project's jars as outputs of its own * If you use inherit=all the the project that contains the depend tag seems to also contain the other project's depend and option tags as dependencies of its own. * If you use inherit=runtime the the project that contains the depend tag seems to also contain the other project's depend and option that themselves have a runtime=true attribute tags as dependencies of its own. Many thanks. That explains well what i thought i understood. I am trying to get forrest-core with the stuff that is required to build forrest. Most of those dependencies are also required to later run forrest. Then forrest-runtime which has the minimum additional stuff needed to actually run forrest. I'd suggest you use runtime=true on all dependencies that are later required to run forrest inside the forrest-core project, remove forrest-runtime and use depend project=forrest-core inherit=runtime/ wherever you'd use forrest-runtime now. I think this should do what you intend. Yes. However, i wanted to enable forrest-core to build as easily as possible. Ah, now i see that that is where i would use option rather than depend for the things that i am defining as extra stuff for runtime. -David - To unsubscribe, e-mail: general-unsubscr...@gump.apache.org For additional commands, e-mail: general-h...@gump.apache.org
cvs commit: gump/template/forrest/content/xdocs site.xml
ajack 2004/05/17 14:41:22 Modified:python/gump/syndication Tag: MultiRunner rss.py atom.py python/gump Tag: MultiRunner update.py debug.py build.py integrate.py check.py python/gump/test Tag: MultiRunner __init__.py stats.py python/gump/test/resources/complete1 Tag: MultiRunner module1.xml python/gump/model Tag: MultiRunner module.py workspace.py stats.py project.py python/gump/build Tag: MultiRunner ant.py abstract.py python/gump/core Tag: MultiRunner demand.py tasks.py runner.py misc.py python/gump/document/forrest Tag: MultiRunner documenter.py python/gump/shared Tag: MultiRunner comparator.py python/gump/output Tag: MultiRunner statsdb.py python/gump/update Tag: MultiRunner updater.py template/forrest/content/xdocs Tag: MultiRunner site.xml Log: Closer to having two Runners (Sequential OnDemand) Revision ChangesPath No revision No revision 1.23.2.1 +5 -5 gump/python/gump/syndication/rss.py Index: rss.py === RCS file: /home/cvs/gump/python/gump/syndication/rss.py,v retrieving revision 1.23 retrieving revision 1.23.2.1 diff -u -r1.23 -r1.23.2.1 --- rss.py5 May 2004 23:15:32 - 1.23 +++ rss.py17 May 2004 21:41:21 - 1.23.2.1 @@ -321,7 +321,7 @@ ('%sT%s%s') % (datestr,timestr,TZ)) # Generate changes, only if the module had changed -if module.isUpdated() and not module.getStatePair().isUnset(): +if module.isModified() and not module.getStatePair().isUnset(): log.debug(Add module to RSS Newsfeed for : + module.getName()) moduleRSS.addItem(item) @@ -366,7 +366,7 @@ ('%sT%s%s') % (datestr,timestr,TZ)) # Generate changes, only if the module changed -if project.getModule().isUpdated() and not project.getStatePair().isUnset(): +if project.getModule().isModified() and not project.getStatePair().isUnset(): log.debug(Add project to RSS Newsfeed for : + project.getName()) projectRSS.addItem(item) moduleRSS.addItem(item) 1.16.2.1 +5 -5 gump/python/gump/syndication/atom.py Index: atom.py === RCS file: /home/cvs/gump/python/gump/syndication/atom.py,v retrieving revision 1.16 retrieving revision 1.16.2.1 diff -u -r1.16 -r1.16.2.1 --- atom.py 5 May 2004 23:15:32 - 1.16 +++ atom.py 17 May 2004 21:41:21 - 1.16.2.1 @@ -219,7 +219,7 @@ content) # Generate changes, only if the module had changed -if module.isUpdated() and not module.getStatePair().isUnset(): +if module.isModified() and not module.getStatePair().isUnset(): log.debug(Add module to Atom Newsfeed for : + module.getName()) moduleFeed.addEntry(entry) @@ -261,7 +261,7 @@ content ) # Generate changes, only if the project changed -if project.getModule().isUpdated() and not project.getStatePair().isUnset(): +if project.getModule().isModified() and not project.getStatePair().isUnset(): log.debug(Add project to Atom Newsfeed for : + project.getName()) projectFeed.addEntry(entry) moduleFeed.addEntry(entry) No revision No revision 1.28.2.2 +3 -3 gump/python/gump/update.py Index: update.py === RCS file: /home/cvs/gump/python/gump/update.py,v retrieving revision 1.28.2.1 retrieving revision 1.28.2.2 diff -u -r1.28.2.1 -r1.28.2.2 --- update.py 17 May 2004 20:22:01 - 1.28.2.1 +++ update.py 17 May 2004 21:41:21 - 1.28.2.2 @@ -32,7 +32,7 @@ from gump import log from gump.core.gumpinit import gumpinit -from gump.core.tasks import SequentialTaskRunner +from gump.core.runner import getRunner from gump.core.gumprun import GumpRun, GumpRunOptions, GumpSet from gump.core.commandLine import handleArgv from gump.model.loader import WorkspaceLoader @@ -69,7 +69,7 @@ # #Perform this integration run... # -result = SequentialTaskRunner(run).performUpdate() +result = getRunner(run).performUpdate() # log.info('Gump Update complete. Exit code:' + str(result)) 1.5.2.2 +2 -2 gump/python/gump/debug.py
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/05/15 05:08:34 Modified:python/gump/document/forrest documenter.py Log: Not sure how long this bug has sat there, nor why Brutus just stumbled on it. Revision ChangesPath 1.36 +1 -1 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- documenter.py 14 May 2004 22:54:31 - 1.35 +++ documenter.py 15 May 2004 12:08:34 - 1.36 @@ -1071,7 +1071,7 @@ mcount=0 for pair in module.aggregateStates(): if pair.state == STATE_SUCCESS \ -and project.getStats().sequenceInState INSIGNIFICANT_DURATION: +and module.getStats().sequenceInState INSIGNIFICANT_DURATION: mcount=1 if not mcount: continue - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/05/13 16:29:47 Modified:python/gump/document/forrest documenter.py Log: 1) Split documentWorkspace huge method into mainy, main to give documentBuildLog 2) Make documentBuildLog list modules in update order, as well as projects 3) Call documentBuildLog from documentEntity (to get running re-build) Next step (after getting forrest webapp) is to sync as we go. Revision ChangesPath 1.34 +146 -72 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- documenter.py 11 May 2004 04:20:01 - 1.33 +++ documenter.py 13 May 2004 23:29:47 - 1.34 @@ -16,7 +16,7 @@ -xdoc generation, for forrest +XDOC generation, for Forrest import socket @@ -80,6 +80,12 @@ def documentEntity(self, entity, run): +# :TODO: A work in progress +# 1) Document entity (in realtime so no lookahead links) +# 2) sync appropriate directory +# 3) update build log +# 4) sync biuld log + verbose=run.getOptions().isVerbose() debug=run.getOptions().isDebug() @@ -88,12 +94,8 @@ elif isinstance(entity,Module): pass elif isinstance(entity,Project): -pass +self.documentBuildLog(run,entity.getWorkspace(),run.getGumpSet(),1) -# :TODO: A work in progress -# 1) Document entityi (in realtime so no lookahead links) -# 2) Sync -# 3) update build log def documentRun(self, run): @@ -227,8 +229,7 @@ # syncDirectories(stagingDirectory,logDirectory) -# :TODO: Don't clean-up yet, testing... -cleanUp=0 +cleanUp=1 if cleanUp: # # Clean up @@ -264,8 +265,7 @@ # syncDirectories(workContents,logContents) -# :TODO: Don't clean-up yet, testing... -cleanUp=0 +cleanUp=1 if cleanUp: # @@ -357,12 +357,6 @@ # def documentWorkspace(self,run,workspace,gumpSet): -# Pretty sorting... -sortedModuleList=createOrderedList(gumpSet.getModuleSequence()) -sortedProjectList=createOrderedList(gumpSet.getProjectSequence()) -sortedRepositoryList=createOrderedList(gumpSet.getRepositories()) -sortedServerList=createOrderedList(workspace.getServers()) -sortedTrackerList=createOrderedList(workspace.getTrackers()) # # -- @@ -476,6 +470,67 @@ self.documentWorkList(run,document,workspace,'Workspace-level Work') document.serialize() + +document=None + +self.documentRepositories(run,workspace,gumpSet) +self.documentServers(run,workspace,gumpSet) +self.documentTrackers(run,workspace,gumpSet) +self.documentBuildLog(run,workspace,gumpSet) +self.documentNotesLog(run,workspace,gumpSet) +self.documentDiffsLog(run,workspace,gumpSet) +self.documentProjects(run,workspace,gumpSet) +self.documentModules(run,workspace,gumpSet) +self.documentPackages(run,workspace,gumpSet) + + +# +# Document individual repositories +# +for repo in workspace.getRepositories(): +if not gumpSet.inRepositories(repo): continue +self.documentRepository(run,repo,workspace,gumpSet) + +# +# Document individual servers +# +for server in workspace.getServers(): +self.documentServer(run,server,workspace,gumpSet) + +# +# Document individual trackers +# +for tracker in workspace.getTrackers(): +self.documentTracker(run,tracker,workspace,gumpSet) + +# +# Document individual modules +# +for module in workspace.getModules(): +if not gumpSet.inModuleSequence(module): continue +self.documentModule(run,module,workspace,gumpSet) + +# Document workspace 'Text' + document=XDocDocument('Context
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/05/10 21:20:01 Modified:python/gump/model server.py server hermes.xml python/gump/core commandLine.py gumprun.py engine.py python/gump/document/forrest documenter.py Log: 1) Set hermes down 2) Respect server status (e.g. up|down) 3) Allow --official (to nag, etc.) only on these [see brutus.] Revision ChangesPath 1.18 +9 -0 gump/python/gump/model/server.py Index: server.py === RCS file: /home/cvs/gump/python/gump/model/server.py,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- server.py 14 Apr 2004 22:12:58 - 1.17 +++ server.py 11 May 2004 04:20:01 - 1.18 @@ -52,6 +52,15 @@ def getType(self): return str(self.xml.type) +def hasStatus(self): +return hasattr(self.xml,'status') and self.xml.status + +def getStatus(self): +return str(self.xml.status) + +def isUp(self): +return self.hasStatus() and 'up' == self.getStatus() + def hasSite(self): return hasattr(self.xml,'site') and self.xml.site 1.2 +2 -1 gump/server/hermes.xml Index: hermes.xml === RCS file: /home/cvs/gump/server/hermes.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- hermes.xml5 Apr 2004 22:44:59 - 1.1 +++ hermes.xml11 May 2004 04:20:01 - 1.2 @@ -15,9 +15,10 @@ limitations under the License. -- -server name=hermes type=python status=up +server name=hermes type=python status=down attributionThe Apache Software Foundation/attribution titleHermes/title urlhttp://hermes.apache.org/gump/public/url sitehttp://gump.apache.org/site + noteMight soon be deleted.../note /server 1.6 +5 -0 gump/python/gump/core/commandLine.py Index: commandLine.py === RCS file: /home/cvs/gump/python/gump/core/commandLine.py,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- commandLine.py26 Apr 2004 01:00:33 - 1.5 +++ commandLine.py11 May 2004 04:20:01 - 1.6 @@ -65,6 +65,7 @@ print -d, --debug debug logging. print print Not relevent to all scripts: +print -O, --official Full run, publishing notifications, etc. print -D, --dated Dated log files. print -t, --text Use text not Forrest. print -T, --templates Use temapltes not Forrest. @@ -104,6 +105,10 @@ # self.options.setDated(1) log.info('Dated Operation (add date to log dir)') +elif arg in ['-O','--official']: +removers.append(arg) +self.options.setOfficial(1) +log.info('Official run (publish notifications, etc.)') elif arg in ['-t','--text']: removers.append(arg) self.options.setText(1) 1.5 +7 -0 gump/python/gump/core/gumprun.py Index: gumprun.py === RCS file: /home/cvs/gump/python/gump/core/gumprun.py,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- gumprun.py30 Apr 2004 20:23:43 - 1.4 +++ gumprun.py11 May 2004 04:20:01 - 1.5 @@ -353,6 +353,7 @@ self.quick=1 # Defaults to CACHE self.dated=0 # Defaults to NOT dated. self.optimize=0 # Do the least ammount of work... +self.official=0 # Do a full run (with publishing e-mail) # Default is Text unless Forrest is in the environment, # but can also force text with --text @@ -383,6 +384,12 @@ def setDated(self,dated): self.dated=dated + +def isOfficial(self): +return self.official + +def setOfficial(self,official): +self.official=official def isQuick(self): return self.quick 1.11 +7 -10 gump/python/gump/core/engine.py Index: engine.py === RCS file: /home/cvs/gump/python/gump/core/engine.py,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- engine.py 5 May 2004 17:41:33 - 1.10 +++ engine.py 11 May 2004 04:20:01 -
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/05/06 12:44:02 Modified:python/gump/document/forrest documenter.py Log: Add wording to the link (for the separate output file). Revision ChangesPath 1.31 +2 -2 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- documenter.py 6 May 2004 05:15:09 - 1.30 +++ documenter.py 6 May 2004 19:44:02 - 1.31 @@ -2172,7 +2172,7 @@ # Do the transfer.. copyfile(output,displayedOutput) -outputSection.createParagraph().createLink(outputBaseName) + outputSection.createParagraph().createLink(outputBaseName,'Output File') else: # @@ -2289,7 +2289,7 @@ # Do the transfer.. copyfile(output,displayedOutput) - outputSection.createParagraph().createLink(outputBaseName) + outputSection.createParagraph().createLink(outputBaseName,'Output File') else: outputSource=outputSection.createSource() o=None - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/05/05 16:15:33 Modified:python/gump/syndication rss.py atom.py python/gump/document/forrest documenter.py Log: Don't HTML-ize huge output files, just reference them. Revision ChangesPath 1.23 +7 -3 gump/python/gump/syndication/rss.py Index: rss.py === RCS file: /home/cvs/gump/python/gump/syndication/rss.py,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- rss.py5 May 2004 13:58:24 - 1.22 +++ rss.py5 May 2004 23:15:32 - 1.23 @@ -285,6 +285,8 @@ # build information for module in self.workspace.getModules(): +if not self.run.getGumpSet().inModuleSequence(module): continue + self.syndicateModule(module,self.rss) self.rss.serialize() @@ -329,6 +331,8 @@ mainRSS.addItem(item) for project in module.getProjects(): +if not self.run.getGumpSet().inProjectSequence(project): continue + self.syndicateProject(project,moduleRSS,mainRSS) moduleRSS.serialize() 1.16 +7 -3 gump/python/gump/syndication/atom.py Index: atom.py === RCS file: /home/cvs/gump/python/gump/syndication/atom.py,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- atom.py 5 May 2004 15:08:53 - 1.15 +++ atom.py 5 May 2004 23:15:32 - 1.16 @@ -185,6 +185,8 @@ # build information for module in self.workspace.getModules(): +if not self.run.getGumpSet().inModuleSequence(module): continue + self.syndicateModule(module,self.feed) self.feed.serialize() @@ -228,6 +230,8 @@ # Syndicate each project for project in module.getProjects(): +if not self.run.getGumpSet().inProjectSequence(project): continue + self.syndicateProject(project,moduleFeed,mainFeed) moduleFeed.serialize() 1.28 +73 -42gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- documenter.py 5 May 2004 17:41:33 - 1.27 +++ documenter.py 5 May 2004 23:15:32 - 1.28 @@ -1760,7 +1760,7 @@ pathStr=path contributor=referencingObject.getWorkspace() instigator=None -id=None +id='' note='' pathRow=pathTable.createRow() @@ -2159,27 +2159,46 @@ outputSection=wdocument.createSection('Output') outputSource=outputSection.createSource() output=work.result.output -if output: +if output: try: -o=None -try: -# Keep a length count to not exceed 32K -size=0 -o=open(output, 'r') -line=o.readline() -while line: -length = len(line) -size += length -# Crude to 'ensure' that escaped -# it doesn't exceed 32K. -if size 2: -outputSection.createParagraph('Continuation...') -outputSource=outputSection.createSource() -size = length -outputSource.createText(line) +if os.path.getsize(output) 10: +# +# This is *big* just copy/point to it +# +from shutil import copyfile +# Extract name, to make relative to group +outputBaseName=os.path.basename(output) +(outputName,outputExtn)=os.path.splitext(outputBaseName) +displayedOutput=self.resolver.getFile(work, outputName, oututExtn, 0) + +# Do the transfer.. +copyfile(output,displayedOutput
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/05/05 22:15:09 Modified:python/gump/document/forrest documenter.py Log: Try 3 Revision ChangesPath 1.30 +9 -9 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- documenter.py 6 May 2004 02:55:43 - 1.29 +++ documenter.py 6 May 2004 05:15:09 - 1.30 @@ -2157,7 +2157,6 @@ # Show the content... # outputSection=wdocument.createSection('Output') -outputSource=outputSection.createSource() output=work.result.output if output: try: @@ -2173,12 +2172,13 @@ # Do the transfer.. copyfile(output,displayedOutput) -outputSource.createLink(outputBaseName) +outputSection.createParagraph().createLink(outputBaseName) -else: +else: # # Display it 'prettily' in HTML # +outputSource=outputSection.createSource() o=None try: # Keep a length count to not exceed 32K @@ -2200,9 +2200,9 @@ if o: o.close() except Exception, details: -outputSource.createText('Failed to copy contents from :' + output + ' : ' + str(details)) +outputSection.createParagraph('Failed to copy contents from :' + output + ' : ' + str(details)) else: -outputSource.createText('No output to stdout/stderr from this command.') +outputSection.createParagraph('No output to stdout/stderr from this command.') wdocument.serialize() wdocument=None @@ -2274,7 +2274,6 @@ # Show the content... # outputSection=fdocument.createSection('File Contents') -outputSource=outputSection.createSource() output=fileReference.getPath() if output: try: @@ -2290,8 +2289,9 @@ # Do the transfer.. copyfile(output,displayedOutput) -outputSource.createLink(outputBaseName) + outputSection.createParagraph().createLink(outputBaseName) else: +outputSource=outputSection.createSource() o=None try: # Keep a length count to not exceed 32K @@ -2312,9 +2312,9 @@ finally: if o: o.close() except Exception, details: -outputSource.createText('Failed to copy contents from :' + output + ' : ' + str(details)) +outputSection.createParagraph('Failed to copy contents from :' + output + ' : ' + str(details)) else: -outputSource.createText('No contents in this file.') +outputSection.createParagraph('No contents in this file.') else: fdocument.createParagraph('No such file or directory.') - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/src/documentation/content/xdocs index.xml
ajack 2004/05/04 07:56:46 Added: template/forrest/content/xdocs index.xml Removed: template/forrest/src/documentation/content/xdocs index.xml Log: We moved out of src/documentation/content into ./content. Revision ChangesPath 1.1 gump/template/forrest/content/xdocs/index.xml Index: index.xml === ?xml version=1.0 encoding=ISO-8859-1? !-- Copyright 2003-2004 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the License); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- !DOCTYPE document PUBLIC -//APACHE//DTD Documentation V1.1//EN document-v11.dtd document header titleApache Gump/title authors person name=Sam Ruby email=rubys AT us.ibm DOT com/ person name=Adam Jack email=ajack AT sybase DOT com/ person name=Community email=general AT gump DOT apache DOT org/ /authors /header body sectiontitleCongratulations/title p You have a the gump live site template started. /p /section sectiontitleWhat next./title pRun gump.py --xdocs/p fixme author=nickchalkoAdd some details on how to do this /fixme /section sectiontitleWhere do I get help./title p[EMAIL PROTECTED] /p /section /body /document - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/30 11:09:12 Modified:.gumpy.py python/gump/document/text documenter.py python/gump/core config.py gumpenv.py python/gump/document/forrest documenter.py Log: Some documentation tweaks. Revision ChangesPath 1.27 +9 -0 gump/gumpy.py Index: gumpy.py === RCS file: /home/cvs/gump/gumpy.py,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- gumpy.py 29 Apr 2004 17:00:42 - 1.26 +++ gumpy.py 30 Apr 2004 18:09:12 - 1.27 @@ -40,6 +40,8 @@ LINE=' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - GUMP' +GUMPY_VERSION='2.0.2-alpha-0001' + def ignoreHangup(signum): pass @@ -258,6 +260,7 @@ log.write('- GUMP run on host : ' + hostname + '\n') log.write('- GUMP run @ : ' + time.strftime('%d %b %y %H:%M:%S', time.gmtime()) + '\n') log.write('- GUMP run by Python : ' + `sys.version` + '\n') +log.write('- GUMP run by Gumpy : ' + GUMPY_VERSION + '\n') log.write('- GUMP run on OS : ' + `os.name` + '\n') log.write('- GUMP run in env: \n') @@ -456,6 +459,12 @@ mailData += tailData except: pass + +# Tack a version on there +maildata += '--\n' +maildata += 'Gumpy Version: ' +maildata += GUMPY_VERSION +maildata += '\n' sendEmail(mailto,mailfrom,logTitle,mailData,mailserver,mailport) 1.4 +3 -1 gump/python/gump/document/text/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/text/documenter.py,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- documenter.py 14 Apr 2004 23:06:57 - 1.3 +++ documenter.py 30 Apr 2004 18:09:12 - 1.4 @@ -171,6 +171,9 @@ output.write(indent+Work Cmd : + work.command.formatCommandLine() + \n) if work.command.cwd: output.write(indent+Work Cwd : + work.command.cwd + \n) +if work.command.env: +for envKey in work.command.env.keys(): +output.write(indent+Work Env : + envKey + ' : '+self.env[envKey]) if work.result.signal: output.write(indent+Work Signal : + `work.result.signal` + \n) output.write(indent+Work Exit : + str(work.result.exit_code) + \n) @@ -178,7 +181,6 @@ if realtime and work.result.hasOutput(): catFile(output,work.result.getOutput(),work.result.getOutput()) - def documentAnnotations(self, indent, annotatable): indent += ' ' 1.3 +1 -1 gump/python/gump/core/config.py Index: config.py === RCS file: /home/cvs/gump/python/gump/core/config.py,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- config.py 24 Apr 2004 15:25:18 - 1.2 +++ config.py 30 Apr 2004 18:09:12 - 1.3 @@ -86,7 +86,7 @@ class setting: Configuration of hardcoded settings -version=2.0.2-alpha-0003 +version='2.0.2-alpha-0004' ws_version=0.4 ws_minimum_version=0.3 1.5 +1 -1 gump/python/gump/core/gumpenv.py Index: gumpenv.py === RCS file: /home/cvs/gump/python/gump/core/gumpenv.py,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- gumpenv.py28 Apr 2004 13:16:34 - 1.4 +++ gumpenv.py30 Apr 2004 18:09:12 - 1.5 @@ -224,7 +224,7 @@ os.unlink(JAVA_SOURCE.replace('.java','.class')) for (name,value) in self.javaProperties.items(): -log.info(name + = + value) +log.debug(Java Property: + name + = + value) return self.javaProperties 1.21 +11 -13gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- documenter.py 29 Apr 2004 17:20:23 - 1.20 +++ documenter.py 30 Apr 2004 18:09:12 - 1.21 @@ -409,19 +409,20 @@ syndRow.createData().createLink
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/30 11:55:07 Modified:python/gump/model project.py module.py python/gump preview.py python/gump/core gumprun.py engine.py python/gump/document/forrest documenter.py Log: Work on preview (for gmp preview) to show what would occur if a gump run were to be performed on a given project expressions against a workspace. Shows projects, project Sequence (Stack), modules, module Sequence (Stack) and repositories. Shows the command lines (plus env) for checkout, update and build. Revision ChangesPath 1.80 +2 -4 gump/python/gump/model/project.py Index: project.py === RCS file: /home/cvs/gump/python/gump/model/project.py,v retrieving revision 1.79 retrieving revision 1.80 diff -u -r1.79 -r1.80 --- project.py24 Apr 2004 15:25:18 - 1.79 +++ project.py30 Apr 2004 18:55:07 - 1.80 @@ -1050,10 +1050,8 @@ try: syscp=os.environ['CLASSPATH'] except: -syscp='' - -sysClasspath.importFlattenedParts(syscp) - +syscp='' +sysClasspath.importFlattenedParts(syscp) return sysClasspath # 1.43 +3 -0 gump/python/gump/model/module.py Index: module.py === RCS file: /home/cvs/gump/python/gump/model/module.py,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- module.py 22 Apr 2004 22:58:16 - 1.42 +++ module.py 30 Apr 2004 18:55:07 - 1.43 @@ -520,6 +520,9 @@ # :TODO: Make configurable return 'http://cvs.apache.org/viewcvs.cgi/gump/' + location +def isUpdatable(self): +return self.hasCvs() or self.hasSvn() or self.hasJars() + def hasCvs(self): if hasattr(self,'cvs') and self.cvs: return 1 return 0 1.3 +24 -4 gump/python/gump/preview.py Index: preview.py === RCS file: /home/cvs/gump/python/gump/preview.py,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- preview.py16 Apr 2004 17:28:38 - 1.2 +++ preview.py30 Apr 2004 18:55:07 - 1.3 @@ -62,9 +62,29 @@ workspace=WorkspaceLoader().load(ws, options.isCache()) # The Run Details... -run=GumpRun(workspace,ps,options) - +run=GumpRun(workspace,ps,options) run.dump() - + +# Display some interesting things... +# E.g. command lines, env +# :TODO: + +for module in run.getGumpSet().getModules(): +print - +print Module : + `module` + \n +if module.isUpdatable(): +(repository, root, command ) = module.getUpdateCommand(0) +command.dump() + +(repository, root, command ) = module.getUpdateCommand(1) +command.dump() + +for project in run.getGumpSet().getProjects(): +print - +print Project : + `project` + \n +if project.hasBuildCommand(): +command=project.getBuildCommand() +command.dump() + # bye! sys.exit(result) 1.3 +1 -0 gump/python/gump/core/gumprun.py Index: gumprun.py === RCS file: /home/cvs/gump/python/gump/core/gumprun.py,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- gumprun.py22 Apr 2004 22:58:16 - 1.2 +++ gumprun.py30 Apr 2004 18:55:07 - 1.3 @@ -330,6 +330,7 @@ def dumpList(self,list,title,indent=0,output=sys.stdout): Display a single list i=getIndent(indent) +output.write('\n') output.write(i + title + '[' + str(len(list)) + '] : \n') idx=0 for object in list: 1.7 +1 -3 gump/python/gump/core/engine.py Index: engine.py === RCS file: /home/cvs/gump/python/gump/core/engine.py,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- engine.py 27 Apr 2004 22:12:28 - 1.6 +++ engine.py 30 Apr 2004 18:55:07 - 1.7 @@ -230,9 +230,7 @@ # self.performModulePackageProcessing(module) continue
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/30 12:18:12 Modified:python/gump/document/text documenter.py python/gump/document/forrest documenter.py Log: Attempt to fix to minor bugs. Revision ChangesPath 1.5 +1 -1 gump/python/gump/document/text/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/text/documenter.py,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- documenter.py 30 Apr 2004 18:09:12 - 1.4 +++ documenter.py 30 Apr 2004 19:18:12 - 1.5 @@ -173,7 +173,7 @@ output.write(indent+Work Cwd : + work.command.cwd + \n) if work.command.env: for envKey in work.command.env.keys(): -output.write(indent+Work Env : + envKey + ' : '+self.env[envKey]) +output.write(indent+Work Env : + envKey + ' : '+work.command.env[envKey]) if work.result.signal: output.write(indent+Work Signal : + `work.result.signal` + \n) output.write(indent+Work Exit : + str(work.result.exit_code) + \n) 1.23 +1 -1 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- documenter.py 30 Apr 2004 18:55:07 - 1.22 +++ documenter.py 30 Apr 2004 19:18:12 - 1.23 @@ -1597,7 +1597,7 @@ addnSection=document.createSection('Additional Details') addnPara=addnSection.createParagraph() -addnPara.createLink(gumpSafeName('details.html'),\ +addnPara.createLink('details.html', 'For additional project details (including dependencies) ...') document.serialize() - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/29 10:00:43 Modified:.gumpy.py python/gump/utils launcher.py __init__.py server lsd.xml python/gump/document/forrest documenter.py Log: 1) More descriptive when gumpy.lock exists. 2) Restore project details on all pages (just not full dep* unless verbose) 3) Tweaked LSD comment 4) Show ENV for command (in --text) to debug 'gmp build depot*' ... which seems to be merging two paths, or having one bogus one. Revision ChangesPath 1.26 +4 -2 gump/gumpy.py Index: gumpy.py === RCS file: /home/cvs/gump/gumpy.py,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- gumpy.py 24 Apr 2004 15:25:18 - 1.25 +++ gumpy.py 29 Apr 2004 17:00:42 - 1.26 @@ -135,6 +135,7 @@ def establishLock(lockFile): failed=0 +info='' if 'posix'==os.name: import fcntl @@ -143,6 +144,7 @@ fcntl.flock(lock.fileno(), fcntl.LOCK_EX | fcntl.LOCK_NB) except: failed=1 +ifo=', and is locked.' else: if os.path.exists(lockFile): @@ -152,10 +154,10 @@ lock=open(lockFile,'w') if failed: -print The lock file [%s] exists. +print The lock file [%s] exists%s. Either Gump is still running, or it terminated very abnormally. Please resolve this (waiting or removing the lock file) before retrying. - % lockFile + % (lockFile, info) sys.exit(1) # Leave a mark... 1.22 +3 -0 gump/python/gump/utils/launcher.py Index: launcher.py === RCS file: /home/cvs/gump/python/gump/utils/launcher.py,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- launcher.py 22 Apr 2004 22:58:15 - 1.21 +++ launcher.py 29 Apr 2004 17:00:42 - 1.22 @@ -209,6 +209,9 @@ overview=indent+'Command Line: ' + self.formatCommandLine()+'\n' if self.cwd: overview += indent+'[Working Directory: ' + self.cwd + ']\n' +if self.env: +for envKey in self.env.keys(): +overview += indent+envKey+' : '+self.env[envKey] return overview def dump(self,indent=''): 1.34 +6 -0 gump/python/gump/utils/__init__.py Index: __init__.py === RCS file: /home/cvs/gump/python/gump/utils/__init__.py,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- __init__.py 28 Apr 2004 13:16:34 - 1.33 +++ __init__.py 29 Apr 2004 17:00:43 - 1.34 @@ -32,6 +32,12 @@ def gumpSafeName(name): returns a file system safe name + # + # .html in a filename (e.g. x.html.xml) confuses forrest/cocoon. + # + name=name.replace('.','_') + + # return urllib.quote_plus(name) ### 1.5 +1 -1 gump/server/lsd.xml Index: lsd.xml === RCS file: /home/cvs/gump/server/lsd.xml,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- lsd.xml 13 Apr 2004 15:59:25 - 1.4 +++ lsd.xml 29 Apr 2004 17:00:43 - 1.5 @@ -20,5 +20,5 @@ titleLeo Simmons (LSD)/title urlhttp://lsd.student.utwente.nl/gump/url sitehttp://lsd.student.utwente.nl//site - notePrimary, server which send notification e-mails./note + notePrimary Gump (sends notification e-mails)./note /server 1.19 +7 -10 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- documenter.py 26 Apr 2004 16:13:57 - 1.18 +++ documenter.py 29 Apr 2004 17:00:43 - 1.19 @@ -1594,23 +1594,20 @@ self.documentWorkList(run,document,project,'Project-level Work') -if project.isVerboseOrDebug(): -addnSection=document.createSection('Additional Details') -addnPara=addnSection.createParagraph() -addnPara.createLink(gumpSafeName(project.getName()) + '_details.html', \ -'For additional project details (including dependencies) ...') +addnSection=document.createSection
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/29 10:20:23 Modified:python/gump/document/forrest documenter.py Log: Fixed missing ) Revision ChangesPath 1.20 +1 -1 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- documenter.py 29 Apr 2004 17:00:43 - 1.19 +++ documenter.py 29 Apr 2004 17:20:23 - 1.20 @@ -1596,7 +1596,7 @@ addnSection=document.createSection('Additional Details') addnPara=addnSection.createParagraph() -addnPara.createLink(gumpSafeName('details.html', \ +addnPara.createLink(gumpSafeName('details.html'),\ 'For additional project details (including dependencies) ...') document.serialize() - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/26 09:13:57 Modified:python/gump/syndication rss.py python/gump/results resulter.py model.py python/gump/utils tools.py python/gump/core gumpenv.py engine.py python/gump/document/forrest documenter.py Log: 1) Put timezoneOffset into Env Results, and document it. Stepping towards a utility to 'show next predicted gump run'. 2) Document the Environment (using bean-like extraction) Revision ChangesPath 1.21 +7 -5 gump/python/gump/syndication/rss.py Index: rss.py === RCS file: /home/cvs/gump/python/gump/syndication/rss.py,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- rss.py16 Apr 2004 17:28:43 - 1.20 +++ rss.py26 Apr 2004 16:13:56 - 1.21 @@ -59,7 +59,9 @@ # http://www.apache.org/. - Highly experimental RSS feeds. + +RSS feeds. + import os @@ -78,7 +80,7 @@ ### -# Local time zone, in offset from GMT +# Local time zone, in offset from UTC TZ='%+.2d:00' % (-time.timezone/3600) ### 1.23 +6 -0 gump/python/gump/results/resulter.py Index: resulter.py === RCS file: /home/cvs/gump/python/gump/results/resulter.py,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- resulter.py 11 Apr 2004 23:50:29 - 1.22 +++ resulter.py 26 Apr 2004 16:13:56 - 1.23 @@ -16,7 +16,9 @@ + Results (XML document containing states/dates/etc.) + import socket @@ -165,7 +167,11 @@ workspaceResults.startDateTimeUtc=self.workspace.getStartDateTimeUtc() workspaceResults.endDateTime=self.workspace.getEndDateTime() workspaceResults.endDateTimeUtc=self.workspace.getEndDateTimeUtc() + +# :TODO: Timezones and such are on env, not workspace [move them] workspaceResults.timezone=self.workspace.getTimezone() + + workspaceResults.timezoneOffset=self.run.getEnvironment().getTimezoneOffset() # For all modules... for module in self.workspace.getModules(): 1.17 +8 -1 gump/python/gump/results/model.py Index: model.py === RCS file: /home/cvs/gump/python/gump/results/model.py,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- model.py 14 Apr 2004 23:26:04 - 1.16 +++ model.py 26 Apr 2004 16:13:56 - 1.17 @@ -127,7 +127,11 @@ finally: # Since we may exit via an exception, close explicitly. if f: f.close() - + +def getTimezoneOffset(self): +if not hasattr(self,'timezoneOffset') : +return self.getOwner().getTimezoneOffset() +return self.timezoneOffset def getTimezone(self): if not hasattr(self,'timezone') : @@ -201,6 +205,7 @@ self.endDateTimeUtc='' self.endDateTime='' self.timezone='' + self.timezoneOffset='' # # Lists... @@ -263,6 +268,7 @@ topElement.setAttribute('endUtc',self.getEndDateTimeUtc()) topElement.setAttribute('end',self.getEndDateTime()) topElement.setAttribute('tzone',self.getTimezone()) +topElement.setAttribute('tzoneOffset',self.getTimezoneOffset()) for moduleResult in self.moduleResults.values(): moduleResult.createDom(self.dom,topElement) @@ -282,6 +288,7 @@ self.endDateTimeUtc=self.dom.documentElement.getAttribute('endUtc') self.timezone=self.dom.documentElement.getAttribute('tzone') +self.timezoneOffset=self.dom.documentElement.getAttribute('tzoneOffset') # # Import all modules 1.23 +6 -2 gump/python/gump/utils/tools.py Index: tools.py === RCS file: /home/cvs/gump/python/gump/utils/tools.py,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- tools.py 14 Apr 2004 22:12:58 - 1.22 +++ tools.py 26 Apr 2004 16:13:56 - 1.23 @@ -213,11 +213,12 @@ def tailFileToString(file,lines,wrapLen=0,eol=None,marker=None): return .join(tailFile(file,lines,wrapLen,eol,marker)) - + +SEPARATOR=' GUMP\n' def catFile(output
cvs commit: gump/template/forrest/src/documentation/content/xdocs index.xml
nickchalko2004/04/26 14:16:48 Added: template/forrest build.xml .cvsignore template/forrest/src/documentation/content/xdocs index.xml Log: Added a index.xml to support building a war. PR: Obtained from: Submitted by: Reviewed by: CVS: -- CVS: PR: CVS: If this change addresses a PR in the problem report tracking CVS: database, then enter the PR number(s) here. CVS: Obtained from: CVS: If this change has been taken from another system, such as NCSA, CVS: then name the system in this line, otherwise delete it. CVS: Submitted by: CVS: If this code has been contributed to Apache by someone else; i.e., CVS: they sent us a patch or a new module, then include their name/email CVS: address here. If this is your work then delete this line. CVS: Reviewed by: CVS: If we are doing pre-commit code reviews and someone else has CVS: reviewed your changes, include their name(s) here. CVS: If you have not had it reviewed then delete this line. Revision ChangesPath 1.1 gump/template/forrest/build.xml Index: build.xml === ?xml version=1.0? !-- Copyright 2004 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the License); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- !DOCTYPE project [ !ENTITY forrest-targets SYSTEM file:./forrest-targets.ent ] project default=all forrest-targets; xmlproperty file=user-properties.xml keeproot=false collapseattributes=true / target name=all depends=copy-from-real-site,site /target target name=copy-from-real-site !--copy todir=../src/documentation/resources/images fileset dir=../src/documentation/content/xdocs/images include name=* / /fileset /copy copy todir=src/documentation fileset dir=../../src/documentation include name=skinconf.xml / /fileset /copy-- /target /project 1.1 gump/template/forrest/.cvsignore Index: .cvsignore === user-properties.xml build 1.1 gump/template/forrest/src/documentation/content/xdocs/index.xml Index: index.xml === ?xml version=1.0 encoding=ISO-8859-1? !-- Copyright 2003-2004 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the License); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- !DOCTYPE document PUBLIC -//APACHE//DTD Documentation V1.1//EN document-v11.dtd document header titleApache Gump/title authors person name=Sam Ruby email=rubys AT us.ibm DOT com/ person name=Adam Jack email=ajack AT sybase DOT com/ person name=Community email=general AT gump DOT apache DOT org/ /authors /header body sectiontitleCongratulations/title p You have a the gump live site template started. /p /section sectiontitleWhat next./title pRun gump.py --xdocs/p fixme author=nickchalkoAdd some details on how to do this /fixme /section sectiontitleWhere do I get help./title p[EMAIL PROTECTED] /p /section /body /document - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/23 11:09:24 Modified:python/gump/model project.py project depot.xml .gumpy.py python/gump/core commandLine.py python gmp.py python/gump/output nag.py python/gump/document/forrest documenter.py Removed: python core Log: 1) Try to may -w optional on gmp 2) Various minor. Revision ChangesPath 1.78 +5 -6 gump/python/gump/model/project.py Index: project.py === RCS file: /home/cvs/gump/python/gump/model/project.py,v retrieving revision 1.77 retrieving revision 1.78 diff -u -r1.77 -r1.78 --- project.py22 Apr 2004 14:50:47 - 1.77 +++ project.py23 Apr 2004 18:09:24 - 1.78 @@ -297,13 +297,12 @@ def gatherAffected(self): # Look through all dependees for project in self.getFullDependeeProjectList(): +# Something caused that some grief +# The something was this project cause=project.getCause() -# Something caused this some grief -if cause: -# The something was this project -if cause == self: -if not project in self.affectedProjects: -self.affectedProjects.append(project) +if cause and cause == self: +if not project in self.affectedProjects: +self.affectedProjects.append(project) def propagateErrorStateChange(self,state,reason,cause,message): 1.25 +2 -1 gump/project/depot.xml Index: depot.xml === RCS file: /home/cvs/gump/project/depot.xml,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- depot.xml 22 Apr 2004 19:58:08 - 1.24 +++ depot.xml 23 Apr 2004 18:09:24 - 1.25 @@ -33,7 +33,8 @@ work nested=common/target/classes/ home nested=common/dist/ -depend inherit=runtime project=ant/ +depend project=antworks-importer/ +depend project=antworks-antlets/ jar name=depot-common-@@DATE@@.jar/ 1.24 +2 -2 gump/gumpy.py Index: gumpy.py === RCS file: /home/cvs/gump/gumpy.py,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- gumpy.py 22 Apr 2004 22:58:15 - 1.23 +++ gumpy.py 23 Apr 2004 18:09:24 - 1.24 @@ -358,7 +358,7 @@ releaseLock(lock,lockFile) -if 1 or result: +if result: logTitle='The Apache Gump log...' # :TODO: Need to check if stdout is a plain terminal? Not sure, see next. @@ -377,7 +377,7 @@ except: published=0 -if 1 or not published: +if not published: catFile(sys.stdout, logFile, logTitle) if mailserver and mailport and mailto and mailfrom and logurl: 1.4 +5 -1 gump/python/gump/core/commandLine.py Index: commandLine.py === RCS file: /home/cvs/gump/python/gump/core/commandLine.py,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- commandLine.py22 Apr 2004 20:46:57 - 1.3 +++ commandLine.py23 Apr 2004 18:09:24 - 1.4 @@ -117,6 +117,7 @@ self.options.setTemplate(1) log.info('Use template (not forrest).') +# Remove for arg in removers: argv.remove(arg) @@ -146,8 +147,11 @@ print Project wildcards are accepted, e.g. \jakarta-*\. sys.exit(1) -for arg in self.args: +for arg in argv: log.warn(Unused command line argument : + arg) + +for arg in self.args: +log.warn(Argument : + arg) def getArguments(self): return self.args 1.6 +13 -7 gump/python/gmp.py Index: gmp.py === RCS file: /home/cvs/gump/python/gmp.py,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- gmp.py16 Apr 2004 20:38:11 - 1.5 +++ gmp.py23 Apr 2004 18:09:24 - 1.6 @@ -127,12 +127,18 @@ # The path of this command gmpPath = os.path.abspath(args[0]) del args[0] - -# Workspace is 'workspace.xml', unless overridden -workspaceName = 'workspace.xml
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/22 07:50:47 Modified:python/gump/model project.py .gumpy.py python/gump/document/forrest documenter.py Log: Fixed typo that broke last nights build. Tried to make gumpy.py mail us when things fail. Revision ChangesPath 1.77 +1 -1 gump/python/gump/model/project.py Index: project.py === RCS file: /home/cvs/gump/python/gump/model/project.py,v retrieving revision 1.76 retrieving revision 1.77 diff -u -r1.76 -r1.77 --- project.py21 Apr 2004 19:01:52 - 1.76 +++ project.py22 Apr 2004 14:50:47 - 1.77 @@ -303,7 +303,7 @@ # The something was this project if cause == self: if not project in self.affectedProjects: -self.affectedProjects.append[project] +self.affectedProjects.append(project) def propagateErrorStateChange(self,state,reason,cause,message): 1.22 +5 -4 gump/gumpy.py Index: gumpy.py === RCS file: /home/cvs/gump/gumpy.py,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- gumpy.py 20 Apr 2004 23:26:55 - 1.21 +++ gumpy.py 22 Apr 2004 14:50:47 - 1.22 @@ -260,10 +260,11 @@ baseDir=wsw.getAttribute('basedir') basePath=os.path.abspath(baseDir) # Mail reporting +private=wsw.getAttribute('private') mailserver=wsw.getAttribute('mailserver') mailport=wsw.getAttribute('mailport') or 25 -mailto=wsw.getAttribute('mailinglist') -mailfrom=wsw.getAttribute('email') +mailto=wsw.getAttribute('mailinglist') or '[EMAIL PROTECTED]' +mailfrom=wsw.getAttribute('email') or '[EMAIL PROTECTED]' # Log (site) location(s) logurl=wsw.getAttribute('logurl') logdir=wsw.getAttribute('logdir') or os.path.join(basePath,'log') @@ -272,9 +273,9 @@ log.write('- GUMP base directory : ' + baseDir + '\n') log.write('- GUMP base path : ' + str(basePath) + '\n') -if mailserver: +if mailserver and not private: log.write('- GUMP mail server: ' + mailserver + '\n') -if mailport: +if mailport and not private: log.write('- GUMP mail port : ' + str(mailport) + '\n') if mailfrom: log.write('- GUMP mail from : ' + mailfrom + '\n') 1.10 +5 -4 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- documenter.py 21 Apr 2004 19:01:52 - 1.9 +++ documenter.py 22 Apr 2004 14:50:47 - 1.10 @@ -1502,9 +1502,10 @@ detailsList.createEntry('Notify From: ').createFork('mailto:'+fromaddr,fromaddr) -detailsList.createEntry('Notify E-mail').createLink( -gumpSafeName(project.getName()) + '_notify.html', -'Contents') +if project.isFailed() : +detailsList.createEntry('Notification E-mail: ').createLink( +gumpSafeName(project.getName()) + '_notify.html', +'Contents') elif not project.isPackaged() and project.hasBuildCommand(): document.createWarning('This project does not utilize Gump nagging.') @@ -1660,7 +1661,7 @@ document.serialize() -if project.xml.nag: +if project.xml.nag and project.isFailed(): document=XDocDocument('Project Details : ' + project.getName(), \ self.resolver.getFile(project, \ project.getName() + '_notify', \ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/content/gump_icons - New directory
ajack 2004/04/22 12:56:28 gump/template/forrest/content/gump_icons - New directory - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/content favicon.ico
ajack 2004/04/22 12:58:08 Modified:python/gump/document/forrest xdoc.py documenter.py resolver.py project depot.xml Added: template/forrest/content/images icon.png gump-logo.png apache.png template/forrest skinconf.xml template/forrest/content/gump_icons complete.png no_work_performed.png failed.png success.png prerequisite_failed.png unset.png template/forrest/content/xdocs tabs.xml site.xml template/forrest/content favicon.ico Removed: template/forrest/src/documentation/content/gump_icons failed.png prerequisite_failed.png no_work_performed.png success.png complete.png template/forrest/src/documentation/content/gump_icons/archive prerequisite_failed.png failed.png template/forrest/src/documentation/content/xdocs site.xml tabs.xml template/forrest/src/documentation/content/images icon.png apache.png gump-logo.png template/forrest/src/documentation/content favicon.ico template/forrest/src/documentation skinconf.xml Log: 1) Removed src/document from forrest paths, and template 2) Made depot verbose (for testing) 3) Made buildLog show what is verbose and/or debug Revision ChangesPath 1.5 +31 -1 gump/python/gump/document/forrest/xdoc.py Index: xdoc.py === RCS file: /home/cvs/gump/python/gump/document/forrest/xdoc.py,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- xdoc.py 20 Apr 2004 17:44:32 - 1.4 +++ xdoc.py 22 Apr 2004 19:58:08 - 1.5 @@ -303,6 +303,9 @@ def createStrong(self,text=None,transient=0): return self.storePiece(XDocStrong(self.createSubContext(transient),text)) +def createEmphasis(self,text=None,transient=0): +return self.storePiece(XDocEmphasis(self.createSubContext(transient),text)) + def createLink(self,href,text=None): return self.storePiece(XDocLink(self.createSubContext(),href,text)) @@ -352,6 +355,21 @@ def createText(self,text=None,transient=0): return self.storePiece(XDocText(self.createSubContext(transient),text)) +class XDocEmphasis(XDocPiece): +def __init__(self,context,text): +XDocPiece.__init__(self,context) +if text: +self.createText(text) + +def start(self): +self.context.write('em') + +def end(self): +self.context.write('/em') + +def createText(self,text=None,transient=0): +return self.storePiece(XDocText(self.createSubContext(transient),text)) + class XDocList(XDocPiece): def __init__(self,context): XDocPiece.__init__(self,context) @@ -386,6 +404,9 @@ def createStrong(self,text=None): return self.storePiece(XDocStrong(self.createSubContext(),text)) + +def createEmphasis(self,text=None,transient=0): +return self.storePiece(XDocEmphasis(self.createSubContext(transient),text)) def createText(self,text=None): return self.storePiece(XDocText(self.createSubContext(),text)) @@ -430,7 +451,7 @@ def createEntry(self,title,data=None): row=self.createRow() -titleData=row.createData(title) +titleData=row.createData().createStrong(title) if not isinstance(data,NoneType): dataData=row.createData(str(data)) return row @@ -503,6 +524,9 @@ def createStrong(self,text=None): return self.storePiece(XDocStrong(self.createSubContext(),text)) + +def createEmphasis(self,text=None,transient=0): +return self.storePiece(XDocEmphasis(self.createSubContext(transient),text)) def createIcon(self,href,alt=None): return self.storePiece(XDocIcon(self.createSubContext(),href,alt)) @@ -527,6 +551,9 @@ def createStrong(self,text=None,transient=0): return self.storePiece(XDocStrong(self.createSubContext(transient),text)) + +def createEmphasis(self,text=None,transient=0): +return self.storePiece(XDocEmphasis(self.createSubContext(transient),text)) def createLink(self,href,text=None): return self.storePiece(XDocLink(self.createSubContext(),href,text)) @@ -554,6 +581,9 @@ def createStrong(self,text=None,transient=0): return self.storePiece(XDocStrong(self.createSubContext(transient),text)) + +def
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/22 13:20:49 Modified:python/gump/core commandLine.py python/gump/document/forrest documenter.py Log: Removed commandline handling bug, to allow testing of --debug --xdocs Revision ChangesPath 1.2 +11 -7 gump/python/gump/core/commandLine.py Index: commandLine.py === RCS file: /home/cvs/gump/python/gump/core/commandLine.py,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- commandLine.py16 Apr 2004 17:28:41 - 1.1 +++ commandLine.py22 Apr 2004 20:20:48 - 1.2 @@ -79,42 +79,46 @@ # # Process global arguments # +removers=[] for arg in argv: if arg in ['-d','--debug']: -argv.remove(arg) +removers.append(arg) log.info('Setting log level to DEBUG') self.options.setDebug(1) log.setLevel(logging.DEBUG) elif arg in ['-v','--verbose']: -argv.remove(arg) +removers.append(arg) log.info('Setting log level to VERBOSE') self.options.setVerbose(1) # :TODO: VERBOSE doesn't exist within logging... log.setLevel(logging.DEBUG) elif arg in ['-l','--latest']: -argv.remove(arg) +removers.append(arg) self.options.setCache(0) self.options.setQuick(0) log.info('Absolute Latest [no use of cache, don\'t skip stack]') elif arg in ['-D','--dated']: -argv.remove(arg) +removers.append(arg) # # Dated means add the date to the log dir... # self.options.setDated(1) log.info('Dated Operation (add date to log dir)') elif arg in ['-t','--text']: -argv.remove(arg) +removers.append(arg) self.options.setText(1) log.info('Use text (not forrest).') elif arg in ['-x','--xdocs']: -argv.remove(arg) +removers.append(arg) self.options.setXDocs(1) log.info('Output xdocs (do not run forrest).') elif arg in ['-t','--template']: -argv.remove(arg) +removers.append(arg) self.options.setTemplate(1) log.info('Use template (not forrest).') + +for arg in removers: +argv.remove(arg) if len(argv)2 and argv[1] in ['-w','--workspace']: self.args.append(argv[2]) 1.13 +2 -0 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- documenter.py 22 Apr 2004 19:58:08 - 1.12 +++ documenter.py 22 Apr 2004 20:20:49 - 1.13 @@ -246,6 +246,8 @@ forrestWorkDir=self.getForrestWorkDirectory(workspace) logDirectory=workspace.getLogDirectory() +log.info('Syncronize work-log, and clean-up...') + success=1 try: # - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/22 13:46:57 Modified:python/gump/core commandLine.py python/gump/document/forrest documenter.py Log: 1) Inform on unused commandline arguments. 2) Only copy contents for xdocs. Revision ChangesPath 1.3 +1 -1 gump/python/gump/core/commandLine.py Index: commandLine.py === RCS file: /home/cvs/gump/python/gump/core/commandLine.py,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- commandLine.py22 Apr 2004 20:20:48 - 1.2 +++ commandLine.py22 Apr 2004 20:46:57 - 1.3 @@ -147,7 +147,7 @@ sys.exit(1) for arg in self.args: -log.debug(Command Line Argument : + arg) +log.warn(Unused command line argument : + arg) def getArguments(self): return self.args 1.14 +13 -3 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- documenter.py 22 Apr 2004 20:20:49 - 1.13 +++ documenter.py 22 Apr 2004 20:46:57 - 1.14 @@ -246,6 +246,10 @@ forrestWorkDir=self.getForrestWorkDirectory(workspace) logDirectory=workspace.getLogDirectory() + +workContents=os.path.abspath(os.path.join(forrestWorkDir,'contents')) +logContents=os.path.abspath(os.path.join(logDirectory,'contents')) + log.info('Syncronize work-log, and clean-up...') success=1 @@ -253,11 +257,13 @@ # # Sync over public pages... # -syncDirectories(forrestWorkDir,logDirectory) +syncDirectories(workContents,logContents) + # # Clean up # wipeDirectoryTree(forrestWorkDir) + except: log.error('--- Failed to work-log sync and/or clean-up', exc_info=1) success=0 @@ -578,8 +584,12 @@ project.getModule().getStats().getLastUpdated())) notes='' -if project.isVerbose(): notes += 'Verbose' -if project.isDebug(): notes += 'Debug' +if project.isVerbose(): +if notes: notes += ' ' +notes += 'Verbose' +if project.isDebug(): +if notes: notes += ' ' +notes += 'Debug' projectRow.createData(notes) if not pcount: projectsTable.createLine('None') - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/22 13:52:12 Modified:python/gump/document/forrest documenter.py Log: contents - content Revision ChangesPath 1.15 +5 -4 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- documenter.py 22 Apr 2004 20:46:57 - 1.14 +++ documenter.py 22 Apr 2004 20:52:12 - 1.15 @@ -242,13 +242,14 @@ def syncXDocs(self,workspace): -# The three dirs, work, output (staging), public +# The move contents/xdocs from work directory to log forrestWorkDir=self.getForrestWorkDirectory(workspace) logDirectory=workspace.getLogDirectory() - -workContents=os.path.abspath(os.path.join(forrestWorkDir,'contents')) -logContents=os.path.abspath(os.path.join(logDirectory,'contents')) +# .. but only the stuff under 'content', so as not to +# break the webapp. +workContents=os.path.abspath(os.path.join(forrestWorkDir,'content')) +logContents=os.path.abspath(os.path.join(logDirectory,'content')) log.info('Syncronize work-log, and clean-up...') - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/21 12:01:52 Modified:python/gump/model project.py python/gump/test drawing.py python/gump/output nag.py python/gump/document/forrest documenter.py Log: Listing those affected in a notification mail. Revision ChangesPath 1.76 +20 -5 gump/python/gump/model/project.py Index: project.py === RCS file: /home/cvs/gump/python/gump/model/project.py,v retrieving revision 1.75 retrieving revision 1.76 diff -u -r1.75 -r1.76 --- project.py13 Apr 2004 15:59:24 - 1.75 +++ project.py21 Apr 2004 19:01:52 - 1.76 @@ -154,7 +154,7 @@ self.license=None - self.affected=0 + self.affectedProjects=[] # # @@ -213,6 +213,14 @@ def getDescription(self): return str(self.xml.description) or self.getModule().getDescription() +def getLimitedDescription(self, limit=60): +desc=str(self.xml.description) or self.getModule().getDescription() +if len(desc) limit: +desc=desc[:limit] +desc+='...' + +return desc + def getMetadataLocation(self): if self.xml.href and str(self.xml.href): return self.xml.href return self.getModule().getMetadataLocation() @@ -277,8 +285,16 @@ return self.getModule().getStats().getLastUpdated() def determineAffected(self): -if self.affected: return self.affected +if self.affectedProjects: return len(self.affectedProjects) +self.gatherAffected() +return len(self.affectedProjects) + +def determineAffectedProjects(self): +if self.affectedProjects: return self.affectedProjects +self.gatherAffected() +return self.affectedProjects +def gatherAffected(self): # Look through all dependees for project in self.getFullDependeeProjectList(): cause=project.getCause() @@ -286,9 +302,8 @@ if cause: # The something was this project if cause == self: -self.affected += 1 - -return self.affected +if not project in self.affectedProjects: +self.affectedProjects.append[project] def propagateErrorStateChange(self,state,reason,cause,message): 1.4 +2 -2 gump/python/gump/test/drawing.py Index: drawing.py === RCS file: /home/cvs/gump/python/gump/test/drawing.py,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- drawing.py20 Apr 2004 17:44:32 - 1.3 +++ drawing.py21 Apr 2004 19:01:52 - 1.4 @@ -27,7 +27,7 @@ UnitTestSuite.__init__(self) def testDrawingContext(self): -context=StandardDrawingContext(rect=Rect(0,0,100,100)) +context=StandardDrawingContext('Test', rect=Rect(0,0,100,100)) def testScaledDrawingContext(self): context=ScaledDrawingContext('TestScale',None,Rect(0,0,100,100),200,200) @@ -50,7 +50,7 @@ self.assertEqual('Shifted Scaled', 125, y) def testGridDrawingContext(self): -baseContext=StandardDrawingContext(rect=Rect(0,0,100,200)) +baseContext=StandardDrawingContext('Test',rect=Rect(0,0,100,200)) context=GridDrawingContext('TestGrid',baseContext,10,10) for row in [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ]: for col in [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ]: 1.33 +19 -0 gump/python/gump/output/nag.py Index: nag.py === RCS file: /home/cvs/gump/python/gump/output/nag.py,v retrieving revision 1.32 retrieving revision 1.33 diff -u -r1.32 -r1.33 --- nag.py16 Apr 2004 17:28:39 - 1.32 +++ nag.py21 Apr 2004 19:01:52 - 1.33 @@ -362,6 +362,25 @@ content += ', and has been outstanding for ' + `duration` + ' runs' content += '. ' + +if isinstance(object,Project) and affected: +affectedProjects=object.determineAffectedProjects() +if 1 or ((duration and duration 3) and affectedProjects): +# +# Show those negatively affected +# +content += 'The following are affected:\n' + +for project in affectedProjects: +content
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/20 16:37:56 Modified:python/gump/document/forrest documenter.py Log: Keep SVGs to gump.try only, so as not to dork up LSD/others. Revision ChangesPath 1.8 +11 -9 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- documenter.py 20 Apr 2004 17:44:32 - 1.7 +++ documenter.py 20 Apr 2004 23:37:56 - 1.8 @@ -1640,15 +1640,17 @@ dependencySection.createNote('No projects depend upon this project.') if not depens: dependencySection.createNote('This project depends upon no others.') - -try: -# Generate an SVG for FOG: -(pngFile,pngTitle) = self.diagramDependencies(project) -if pngFile: -para=dependencySection.createSection('Dependency Diagram').createParagraph() -para.createFork(pngFile).createIcon(pngFile,pngTitle) -except: -log.error('Failed to diagram dependencies for [' + project.getName() + ']', exc_info=1) + +# Not ready for prime time... +if 'gump.try' == workspace.getName(): +try: +# Generate an SVG for FOG: +(pngFile,pngTitle) = self.diagramDependencies(project) +if pngFile: +para=dependencySection.createSection('Dependency Diagram').createParagraph() +para.createFork(pngFile).createIcon(pngFile,pngTitle) +except: +log.error('Failed to diagram dependencies for [' + project.getName() + ']', exc_info=1) document.serialize() - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest documenter.py
ajack 2004/04/19 08:47:05 Modified:python/gump/document/forrest documenter.py Log: Playing w/ a crude SVG. [still some bugs to work out.] Revision ChangesPath 1.6 +31 -9 gump/python/gump/document/forrest/documenter.py Index: documenter.py === RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- documenter.py 16 Apr 2004 17:28:42 - 1.5 +++ documenter.py 19 Apr 2004 15:47:05 - 1.6 @@ -1516,6 +1516,12 @@ 'This project has existed in this failed state for a significant duration.') statsTable=statsSection.createTable() + +# Generate an SVG for FOG: +(pngFile,pngTitle) = self.documentFOG(project) +if pngFile: +statsTable.createEntry('FOG Factor').createData().createIcon(pngFile,pngTitle) + statsTable.createEntry(FOG Factor: , '%02.2f' % stats.getFOGFactor()) statsTable.createEntry('Dependency Depth: ', project.getDependencyDepth()) statsTable.createEntry('Total Dependency Depth: ', project.getTotalDependencyDepth()) @@ -2188,6 +2194,26 @@ fdocument.serialize() fdocument=None +def documentFOG(self,object,base=None): + +stats = object.getStats() +name=object.getName() +if not base: base=object + +# +# Generate an SVG: 'FOG' +# +if stats.successes+stats.failures+stats.prereqs 0: +svgFile=self.resolver.getFile(base,name+'_FOG','.svg') +pngFile=os.path.basename(svgFile).replace('.svg','.png') +from gump.svg.scale import ScaleDiagram +diagram=ScaleDiagram([stats.successes,stats.prereqs,stats.failures]) +diagram.generateDiagram().serializeToFile(svgFile) + +return (pngFile, 'FOG Factor') + +return (None, None) + # # # Helper Methods @@ -2614,15 +2640,11 @@ fogRow.createData(pstats.prereqs) fogRow.createData('%02.2f' % pstats.getFOGFactor()) -# Generate an SVG: -# ,'FOG' -if pstats.successes+pstats.failures+pstats.prereqs 0: -svgFile=self.resolver.getFile(stats,project.getName()+'_FOG','.svg') -pngFile=os.path.basename(svgFile).replace('.svg','.png') -from gump.svg.scale import ScaleDiagram - diagram=ScaleDiagram([pstats.successes,pstats.prereqs,pstats.failures]) -diagram.generateDiagram().serializeToFile(svgFile) -fogRow.createData().createIcon(pngFile,'FOG Factor') + +# Generate an SVG for FOG: +(pngFile,pngTitle) = self.documentFOG(project,stats) +if pngFile: +fogRow.createData().createIcon(pngFile,pngTitle) else: fogRow.createData('Not Available') - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/document/forrest - New directory
ajack 2004/04/14 15:08:04 gump/python/gump/document/forrest - New directory - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/python/gump/xdocument/forrest - New directory
ajack 2004/04/14 15:57:24 gump/python/gump/xdocument/forrest - New directory - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/src/documentation/content/xdocs site.xml
ajack 2004/04/10 16:09:29 Modified:template/forrest/src/documentation/content/xdocs site.xml Log: Tinkering towards: http://issues.apache.org/jira/browse/GUMP-49 Revision ChangesPath 1.28 +1 -0 gump/template/forrest/src/documentation/content/xdocs/site.xml Index: site.xml === RCS file: /home/cvs/gump/template/forrest/src/documentation/content/xdocs/site.xml,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- site.xml 5 Apr 2004 22:39:08 - 1.27 +++ site.xml 10 Apr 2004 23:09:29 - 1.28 @@ -14,6 +14,7 @@ index label=Options href=options.html/ index label=Build Log href=buildLog.html/ index label=Notes Log href=notesLog.html/ +index label=Diffs Log href=diffsLog.html/ /work work label=Projects tab=home - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/src/documentation/content/xdocs site.xml
ajack 2004/04/05 15:39:08 Modified:template/forrest/src/documentation/content/xdocs site.xml Log: Add the 'options.html' (RunOptions) page to the menu. Revision ChangesPath 1.27 +1 -0 gump/template/forrest/src/documentation/content/xdocs/site.xml Index: site.xml === RCS file: /home/cvs/gump/template/forrest/src/documentation/content/xdocs/site.xml,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- site.xml 31 Mar 2004 17:41:41 - 1.26 +++ site.xml 5 Apr 2004 22:39:08 - 1.27 @@ -11,6 +11,7 @@ work label=Gump index label=Workspace href=index.html/ index label=Environment href=environment.html/ +index label=Options href=options.html/ index label=Build Log href=buildLog.html/ index label=Notes Log href=notesLog.html/ /work - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/src/documentation/content/xdocs site.xml
ajack 2004/03/24 07:51:42 Modified:python/gump/document forrest.py template/forrest/src/documentation/content/xdocs site.xml Log: Generate a 'notes log', a page showing the annotations on modules/project, IFF the module/project has 'nasties' (warnings/errors). There are numerous notes being made on projects, and I doubt many are being reviewed... Revision ChangesPath 1.115 +50 -5 gump/python/gump/document/forrest.py Index: forrest.py === RCS file: /home/cvs/gump/python/gump/document/forrest.py,v retrieving revision 1.114 retrieving revision 1.115 diff -u -r1.114 -r1.115 --- forrest.py24 Mar 2004 15:19:22 - 1.114 +++ forrest.py24 Mar 2004 15:51:42 - 1.115 @@ -473,6 +473,51 @@ if not pcount: projectsTable.createLine('None') document.serialize() + +# +# -- +# +# notesLog.xml -- Notes log +# +document=XDocDocument('Annotations', \ +self.resolver.getFile(workspace,'notesLog')) +self.documentSummary(document, workspace.getProjectSummary()) + +notesSection=document.createSection('Negative Annotations') +notesSection.createParagraph( +Entities with errors and warnings.) + +ncount=0 +for module in gumpSet.getModuleSequence(): +if not gumpSet.inModuleSequence(module): continue + +moduleSection=document.createSection('Module : ' + module.getName()) + +# Link to the module +self.insertLink(module,workspace,moduleSection.createParagraph()) + +if not module.containsNasties(): + +# Display the annotations +self.documentAnnotations(moduleSection,project,1) + +for project in module.getProjects(): +if not gumpSet.inProjectSequence(project): continue +if not project.containsNasties(): continue + +projectSection=moduleSection.createSection('Project : ' + project.getName()) + +# Link to the project +self.insertLink(project,workspace,projectSection.createParagraph()) + +# Display the annotations +self.documentAnnotations(projectSection,project,1) + +ncount+=1 + +if not ncount: notesTable.createLine('None') + +document.serialize() # # -- @@ -1540,14 +1585,14 @@ return totalDeps -def documentAnnotations(self,xdocNode,annotatable): +def documentAnnotations(self,xdocNode,annotatable,noWarn=0): annotations=annotatable.getAnnotations() if not annotations: return annotationsSection=xdocNode.createSection('Annotations') -if annotatable.containsNasties(): +if annotatable.containsNasties() and not noWarn: annotationsSection.createWarning(\ 'Some warnings and/or errors are present within these annotations.') 1.22 +1 -0 gump/template/forrest/src/documentation/content/xdocs/site.xml Index: site.xml === RCS file: /home/cvs/gump/template/forrest/src/documentation/content/xdocs/site.xml,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- site.xml 12 Mar 2004 16:10:39 - 1.21 +++ site.xml 24 Mar 2004 15:51:42 - 1.22 @@ -11,6 +11,7 @@ work label=Gump index label=Workspace href=index.html/ index label=Build Log href=buildLog.html/ +index label=Notes Log href=notesLog.html/ /work work label=Projects tab=home - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/src/documentation skinconf.xml
ajack 2004/03/19 15:26:59 Modified:template/forrest/src/documentation skinconf.xml Log: Update template to state 2004 for copyright (of nightly gen'd pages). Revision ChangesPath 1.8 +1 -1 gump/template/forrest/src/documentation/skinconf.xml Index: skinconf.xml === RCS file: /home/cvs/gump/template/forrest/src/documentation/skinconf.xml,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- skinconf.xml 12 Mar 2004 02:50:52 - 1.7 +++ skinconf.xml 19 Mar 2004 23:26:59 - 1.8 @@ -83,7 +83,7 @@ host-logo/host-logo !-- The following are used to construct a copyright statement -- - year2003/year + year2004/year vendorThe Apache Software Foundation./vendor !-- Some skins use this to form a 'breadcrumb trail' of links. If you don't - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/src/documentation/content/images - New directory
ajack 2004/03/11 18:48:31 gump/template/forrest/src/documentation/content/images - New directory - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: gump/template/forrest/src/documentation skinconf.xml
, \ +#my_ru_ixrss, my_ru_idrss, my_ru_isrss, \ +#my_ru_minflt, my_ru_majflt, my_ru_nswap, \ +#my_ru_inblock, my_ru_oublock, my_ru_msgsnd, \ +#my_ru_msgrcv, my_ru_nsignals, my_ru_nvcsw, \ +#my_ru_nivcsw)=myresources +# +#kidresources=resource.getrusage(resource.RUSAGE_CHILDREN) +# +## Extract the pieces +#(kid_ru_utime, kid_ru_stime, kid_ru_maxrss, \ +#kid_ru_ixrss, kid_ru_idrss, kid_ru_isrss, \ +#kid_ru_minflt, kid_ru_majflt, kid_ru_nswap, \ +#kid_ru_inblock, kid_ru_oublock, kid_ru_msgsnd, \ +#kid_ru_msgrcv, kid_ru_nsignals, kid_ru_nvcsw, \ +#kid_ru_nivcsw)=kidresources +# +#log.debug('My Memory ' + message + ' ' + `my_ru_maxrss`) +#log.debug('My Resources ' + message + ' ' + `myresources`) +#log.debug('Child Memory ' + message + ' ' + `kid_ru_maxrss`) +#log.debug('Child Resources ' + message + ' ' + `kidresources`) +# #resources=resource.getrusage(resource.RUSAGE_BOTH) #log.debug('All Resources ' + message + ' ' + `resources`) -except Exception, details: -if not os.name == 'dos' and not os.name == 'nt': -log.error(Failed get resource utilization. \ -+ : + str(details), exc_info=1) +#except Exception, details: +#if not os.name == 'dos' and not os.name == 'nt': +#log.error(Failed get resource utilization. \ +#+ : + str(details), exc_info=1) if __name__=='__main__': 1.1 gump/template/forrest/src/documentation/content/images/icon.png Binary file 1.1 gump/template/forrest/src/documentation/content/images/apache.png Binary file 1.1 gump/template/forrest/src/documentation/content/images/gump-logo.png Binary file 1.23 +6 -3 gump/python/gump/test/pyunit.py Index: pyunit.py === RCS file: /home/cvs/gump/python/gump/test/pyunit.py,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- pyunit.py 4 Mar 2004 21:38:47 - 1.22 +++ pyunit.py 12 Mar 2004 02:50:52 - 1.23 @@ -373,6 +373,9 @@ from gump.test.resulting import ResultingTestSuite runner.addSuite(ResultingTestSuite()) +from gump.test.unicode import UnicodeTestSuite +runner.addSuite(UnicodeTestSuite()) + # Any args are pattern matches patterns=list(sys.argv) del patterns[0:1] 1.1 gump/python/gump/test/unicode.py Index: unicode.py === #!/usr/bin/env python # $Header: 1.7 2003/05/10 18:20:36 nicolaken Exp $ # $Revision: 1.7 $ # $Date: 2003/05/10 18:20:36 $ # # # # The Apache Software License, Version 1.1 # # Copyright (c) 2003 The Apache Software Foundation. All rights # reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright #notice, this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright #notice, this list of conditions and the following disclaimer in #the documentation and/or other materials provided with the #distribution. # # 3. The end-user documentation included with the redistribution, if #any, must include the following acknowlegement: # This product includes software developed by the #Apache Software Foundation (http://www.apache.org/). #Alternately, this acknowlegement may appear in the software itself, #if and wherever such third-party acknowlegements normally appear. # # 4. The names The Jakarta Project, Alexandria, and Apache Software #Foundation must not be used to endorse or promote products derived #from this software without prior written permission. For written #permission, please contact [EMAIL PROTECTED] # # 5. Products derived from this software may not be called Apache #nor may Apache appear in their names without prior written #permission of the Apache Group. # # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL THE APACHE