ajack 2004/03/18 15:24:55
Modified: python/gump/model project.py depend.py ant.py rawmodel.py
workspace.py
python/gump/test/resources/full1 workspace.xml
. gumpy.py
Log:
1) Tinkered w/ preview (to show what would occur).
Used to "predict" how long a pattern might take (e.g. avalon-*)
Need to build this into the main engine, so we can actually follow the flow w/o
doing anything,
also go get results.xml to guestimate times.
2) Worked on nag overrides, I beleive they work now.
3) Made property based depends use inherit=NONE (not ALL)
4) Attempted to ma 'noclasspath' (and 'classpath' on property) work.
5) Some documentation logs/tweaks. No clue why LSD feels repeatedly one day stale.
Revision Changes Path
1.66 +6 -4 gump/python/gump/model/project.py
Index: project.py
===================================================================
RCS file: /home/cvs/gump/python/gump/model/project.py,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -r1.65 -r1.66
--- project.py 16 Mar 2004 19:50:14 -0000 1.65
+++ project.py 18 Mar 2004 23:24:55 -0000 1.66
@@ -977,8 +977,6 @@
#
return ( classpath.getFlattened(), bootclasspath.getFlattened() )
-
-
#
# Maybe this is dodgy (it is inefficient) but we need some
# way to get the sun tools for a javac compiler for ant and
@@ -1022,6 +1020,9 @@
#
srcdir=self.getModule().getSourceDirectory()
+ #
+ # Add the work directories
+ #
for work in self.xml.work:
path=None
if work.nested:
@@ -1064,8 +1065,9 @@
def getDependOutputList(self,dependency,visited,depth=0,debug=0):
"""Get a classpath of outputs for a project (including its dependencies)"""
- # Don't loop...
- if dependency in visited:
+ # Don't loop, and skip ones that aren't here to
+ # affect the classpath
+ if (dependency in visited) or dependency.isNoClasspath():
# beneficiary.addInfo("Duplicated dependency [" + str(depend) + "]")
if debug:
print str(depth) + ") Already Visited : " + str(depend)
1.20 +4 -11 gump/python/gump/model/depend.py
Index: depend.py
===================================================================
RCS file: /home/cvs/gump/python/gump/model/depend.py,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- depend.py 16 Mar 2004 19:50:15 -0000 1.19
+++ depend.py 18 Mar 2004 23:24:55 -0000 1.20
@@ -338,13 +338,10 @@
#
def hasFullDependencyOnNamedProject(self,name):
for dependency in self.getDirectDependencies():
- if dependency.getProject().getName()==name:
+ if dependency.getProject().getName()==name \
+ and not dependency.isNoClasspath() :
return 1
-
-# :TODO:
-# and not dependency.noclasspath: return 1
-#:TODO: noclasspath????
-
+
return 0
# determine if this project is a prereq of any project on the todo list
@@ -358,8 +355,4 @@
def hasDependee(self,project):
for dependee in self.getFullDependees():
- if dependee.getOwnerProject()==project: return 1
-
-
-
-
\ No newline at end of file
+ if dependee.getOwnerProject()==project: return 1
\ No newline at end of file
1.18 +1 -1 gump/python/gump/model/ant.py
Index: ant.py
===================================================================
RCS file: /home/cvs/gump/python/gump/model/ant.py,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- ant.py 16 Mar 2004 19:50:15 -0000 1.17
+++ ant.py 18 Mar 2004 23:24:55 -0000 1.18
@@ -97,7 +97,7 @@
# Add a dependency (to bring property)
dependency=ProjectDependency(project, \
workspace.getProject(property.project), \
- INHERIT_ALL, \
+ INHERIT_NONE, \
runtime,
0, \
ids,
1.18 +1 -1 gump/python/gump/model/rawmodel.py
Index: rawmodel.py
===================================================================
RCS file: /home/cvs/gump/python/gump/model/rawmodel.py,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- rawmodel.py 16 Mar 2004 19:50:15 -0000 1.17
+++ rawmodel.py 18 Mar 2004 23:24:55 -0000 1.18
@@ -78,7 +78,7 @@
self.server=Multiple(XMLServer)
self.tracker=Multiple(XMLTracker)
self.profile=Multiple(XMLProfile)
- self.nag=Multiple(XMLWorkspaceNag)
+ self.nag=Single(XMLWorkspaceNag)
self.version=Single(GumpXMLModelObject)
1.34 +28 -0 gump/python/gump/model/workspace.py
Index: workspace.py
===================================================================
RCS file: /home/cvs/gump/python/gump/model/workspace.py,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- workspace.py 16 Mar 2004 19:50:14 -0000 1.33
+++ workspace.py 18 Mar 2004 23:24:55 -0000 1.34
@@ -521,6 +521,34 @@
def isNag(self):
return self.xml.nag
+ def hasNagToOverride(self):
+ return self.isNag() and hasattr(self.workspace.xml.nag,'to')
+
+ def getNagToOverride(self):
+ return getattr(self.workspace.xml.nag,'to')
+
+ def hasNagFromOverride(self):
+ return self.isNag() and hasattr(self.workspace.xml.nag,'from')
+
+ def getNagFromOverride(self):
+ return getattr(self.workspace.xml.nag,'from')
+
+ def getNagOverrides(self):
+
+ #
+ # Nag Overrides
+ #
+ wsNagToOverrideAddr=None
+ wsNagFromOverrideAddr=None
+
+ if self.workspace.hasNagToOverride():
+ wsNagToOverrideAddr=self.workspace.getNagToOverride()
+
+ if self.workspace.hasNagFromOverride():
+ wsNagFromOverrideAddr=self.workspace.getNagFromOverride()
+
+ return ( wsNagToOverrideAddr, wsNagFromOverrideAddr)
+
def getVersion(self):
return self.xml.version
1.5 +2 -1 gump/python/gump/test/resources/full1/workspace.xml
Index: workspace.xml
===================================================================
RCS file: /home/cvs/gump/python/gump/test/resources/full1/workspace.xml,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- workspace.xml 15 Mar 2004 22:07:07 -0000 1.4
+++ workspace.xml 18 Mar 2004 23:24:55 -0000 1.5
@@ -10,5 +10,6 @@
<profile href="profile.xml"/>
- <nag/>
+ <nag to='[EMAIL PROTECTED]' from='[EMAIL PROTECTED]'/>
+
</workspace>
1.10 +13 -4 gump/gumpy.py
Index: gumpy.py
===================================================================
RCS file: /home/cvs/gump/gumpy.py,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- gumpy.py 3 Mar 2004 20:32:14 -0000 1.9
+++ gumpy.py 18 Mar 2004 23:24:55 -0000 1.10
@@ -132,7 +132,7 @@
catFile(log,outputFile)
os.remove(outputFile)
- log.write('Exit Code : ' + `exit_code`)
+ log.write('Exit Code : ' + `exit_code` + '\n')
finally:
if originalCWD: os.chdir(originalCWD)
@@ -233,8 +233,10 @@
mailserver=wsw.getAttribute('mailserver')
mailport=wsw.getAttribute('mailport') or 25
mailto=wsw.getAttribute('mailinglist')
- mailfrom=wsw.getAttribute('email')
- logurl=wsw.getAttribute('logurl')
+ mailfrom=wsw.getAttribute('email')
+ # Log (site) location(s)
+ logurl=wsw.getAttribute('logurl')
+ logdir=wsw.getAttribute('logdir') or os.path.join(basePath,'log')
# Extract the mail server/address
ws.unlink()
@@ -276,6 +278,7 @@
if cvsExit:
result=1
+ #
# :TODO: Is this a CVS thing, or a Gump historical thing?
#
if os.path.exists('.timestamp'):
@@ -303,12 +306,18 @@
if integrationExit:
result=1
- # Copy outputs (especially forrest) into log...
+ # :TODO: Copy outputs (especially forrest) into log...
except KeyboardInterrupt:
log.write('Terminated by user interrupt...\n')
result = 1
+ raise
+
+ except:
+ log.write('Terminated unintentionally...\n')
+ result = 1
+ raise
finally:
# Close the log
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]