commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnue] r9896 - in trunk: gnue-common/src/datasources gnue-common/src/dat


From: reinhard
Subject: [gnue] r9896 - in trunk: gnue-common/src/datasources gnue-common/src/datasources/drivers/DBSIG2 gnue-common/src/rpc gnue-common/src/rpc/drivers/xmlrpc gnue-common/src/utils gnue-forms
Date: Thu, 23 Oct 2008 08:47:45 -0500 (CDT)

Author: reinhard
Date: 2008-10-23 08:47:44 -0500 (Thu, 23 Oct 2008)
New Revision: 9896

Modified:
   trunk/gnue-common/src/datasources/GConditions.py
   trunk/gnue-common/src/datasources/drivers/DBSIG2/Connection.py
   trunk/gnue-common/src/rpc/client.py
   trunk/gnue-common/src/rpc/drivers/xmlrpc/typeconv.py
   trunk/gnue-common/src/rpc/server.py
   trunk/gnue-common/src/utils/datatypes.py
   trunk/gnue-forms/INSTALL
   trunk/gnue-forms/setup.py
Log:
mx.DateTime is not a hard requirement any more.


Modified: trunk/gnue-common/src/datasources/GConditions.py
===================================================================
--- trunk/gnue-common/src/datasources/GConditions.py    2008-09-09 09:37:01 UTC 
(rev 9895)
+++ trunk/gnue-common/src/datasources/GConditions.py    2008-10-23 13:47:44 UTC 
(rev 9896)
@@ -26,7 +26,6 @@
 
 import re
 import sys
-import mx.DateTime
 import datetime
 if sys.hexversion >= 0x02040000:
     import decimal
@@ -36,7 +35,18 @@
 from gnue.common.formatting import GTypecast
 from gnue.common.utils import GDateTime
 
+# mx.DateTime is optional - a decreasing number of DBSIG2 modules actually use
+# it, and so we don't want it as a hard dependency. Having less dependencies is
+# sespecially nice on somewhat exotic platforms, like Windows Mobile.
+try:
+    import mx.DateTime
+    mx_DateTimeType = mx.DateTime.DateTimeType
+    mx_DateTimeDeltaType = mx.DateTime.DateTimeDeltaType
+except ImportError:
+    mx_DateTimeType = None
+    mx_DateTimeDeltaType = None
 
+
 # =============================================================================
 # Exceptions
 # =============================================================================
@@ -1656,8 +1666,8 @@
             raise ConversionError, (oldValue, chkValue)
   
       # String to DateTime
-      elif isinstance (chkValue, mx.DateTime.DateTimeType) or \
-           isinstance (chkValue, mx.DateTime.DateTimeDeltaType) or \
+      elif isinstance (chkValue, mx_DateTimeType) or \
+           isinstance (chkValue, mx_DateTimeDeltaType) or \
            isinstance (chkValue, datetime.datetime) or \
            isinstance (chkValue, datetime.time) or \
            isinstance (chkValue, datetime.date):
@@ -1794,14 +1804,14 @@
       if isinstance (chkValue, datetime.date):
         newValue = oldValue.date ()
 
-      elif isinstance (chkValue, mx.DateTime.DateTimeType):
+      elif isinstance (chkValue, mx_DateTimeType):
         newValue = datetime.date (oldValue.year, oldValue.month, oldValue.day)
       else:
         raise ConversionRuleError, (v1, v2)
 
-    elif isinstance (v1, mx.DateTime.DateTimeType) or \
-         isinstance (v2, mx.DateTime.DateTimeType):
-      if isinstance (v1, mx.DateTime.DateTimeType):
+    elif isinstance (v1, mx_DateTimeType) or \
+         isinstance (v2, mx_DateTimeType):
+      if isinstance (v1, mx_DateTimeType):
         oldValue = v1
         chkValue = v2
       else:
@@ -1819,9 +1829,9 @@
       else:
         raise ConversionRuleError, (v1, v2)
 
-    elif isinstance (v1, mx.DateTime.DateTimeDeltaType) or \
-         isinstance (v2, mx.DateTime.DateTimeDeltaType):
-      if isinstance (v1, mx.DateTime.DateTimeDeltaType):
+    elif isinstance (v1, mx_DateTimeDeltaType) or \
+         isinstance (v2, mx_DateTimeDeltaType):
+      if isinstance (v1, mx_DateTimeDeltaType):
         oldValue = v1
         chkValue = v2
       else:

Modified: trunk/gnue-common/src/datasources/drivers/DBSIG2/Connection.py
===================================================================
--- trunk/gnue-common/src/datasources/drivers/DBSIG2/Connection.py      
2008-09-09 09:37:01 UTC (rev 9895)
+++ trunk/gnue-common/src/datasources/drivers/DBSIG2/Connection.py      
2008-10-23 13:47:44 UTC (rev 9896)
@@ -27,9 +27,8 @@
 
 __all__ = ['Connection']
 
+import datetime
 import sys
-import mx.DateTime
-import datetime
 
 from gnue.common.apps import errors, GDebug
 from gnue.common.datasources import Exceptions
@@ -37,7 +36,18 @@
 
 from ResultSet import ResultSet
 
+# mx.DateTime is optional - a decreasing number of DBSIG2 modules actually use
+# it, and so we don't want it as a hard dependency. Having less dependencies is
+# sespecially nice on somewhat exotic platforms, like Windows Mobile.
+try:
+    import mx.DateTime
+    mx_DateTimeType = mx.DateTime.DateTimeType
+    mx_DateTimeDeltaType = mx.DateTime.DateTimeDeltaType
+except ImportError:
+    mx_DateTimeType = None
+    mx_DateTimeDeltaType = None
 
+
 # =============================================================================
 # Connection class
 # =============================================================================
@@ -387,7 +397,7 @@
       else:
         return self._boolean_false_
 
-    elif isinstance (value, mx.DateTime.DateTimeType) or \
+    elif isinstance (value, mx_DateTimeType) or \
          isinstance (value, datetime.datetime):
 
       second = value.second
@@ -401,7 +411,7 @@
                                       value.hour, value.minute, second,
                                       microsecond)
 
-    elif isinstance (value, mx.DateTime.DateTimeDeltaType) or \
+    elif isinstance (value, mx_DateTimeDeltaType) or \
          isinstance (value, datetime.time):
 
       second = value.second

Modified: trunk/gnue-common/src/rpc/client.py
===================================================================
--- trunk/gnue-common/src/rpc/client.py 2008-09-09 09:37:01 UTC (rev 9895)
+++ trunk/gnue-common/src/rpc/client.py 2008-10-23 13:47:44 UTC (rev 9896)
@@ -123,7 +123,6 @@
   import sys
   from gnue.common.apps import errors
   import datetime
-  import mx.DateTime
   
   if len (sys.argv) >= 2 and \
       sys.argv [1] in ['pyro', 'xmlrpc', 'socket', 'soap']:
@@ -185,8 +184,6 @@
        'date': datetime.date.today (),
        'time': datetime.datetime.today ().time (),
        'datetime': datetime.datetime.today (),
-       'mx.DateTime': mx.DateTime.now (),
-       'mx.DateTimeDelta': mx.DateTime.DateTimeDelta (0, 1, 2, 3.456)}
   print "Sending %r (%s) to a roundtrip ..." % (o, type (o))
   v = obj.roundtrip (o)
   print "Result:", repr (v), type (v)

Modified: trunk/gnue-common/src/rpc/drivers/xmlrpc/typeconv.py
===================================================================
--- trunk/gnue-common/src/rpc/drivers/xmlrpc/typeconv.py        2008-09-09 
09:37:01 UTC (rev 9895)
+++ trunk/gnue-common/src/rpc/drivers/xmlrpc/typeconv.py        2008-10-23 
13:47:44 UTC (rev 9896)
@@ -23,10 +23,21 @@
 
 import xmlrpclib
 import datetime
-import mx.DateTime
 
 from gnue.common.lib import iso8601
 
+# mx.DateTime is optional - a decreasing number of DBSIG2 modules actually use
+# it, and so we don't want it as a hard dependency. Having less dependencies is
+# sespecially nice on somewhat exotic platforms, like Windows Mobile.
+try:
+    import mx.DateTime
+    mx_DateTimeType = mx.DateTime.DateTimeType
+    mx_DateTimeDeltaType = mx.DateTime.DateTimeDeltaType
+except ImportError:
+    mx_DateTimeType = None
+    mx_DateTimeDeltaType = None
+
+
 # -----------------------------------------------------------------------------
 # Check wether a given item is an id-dictionary representing a server object
 # -----------------------------------------------------------------------------
@@ -96,11 +107,11 @@
     return value
 
   # Date/Time
-  elif isinstance (value, mx.DateTime.DateTimeType):
+  elif isinstance (value, mx_DateTimeType):
     return xmlrpclib.DateTime ("%04d-%02d-%02d %02d:%02d:%09.6f" % (value.year,
       value.month, value.day, value.hour, value.minute, value.second))
 
-  elif isinstance (value, mx.DateTime.DateTimeDeltaType):
+  elif isinstance (value, mx_DateTimeDeltaType):
     return xmlrpclib.DateTime ("%02d:%02d:%09.6f" % (value.hour, value.minute,
       value.second))
 

Modified: trunk/gnue-common/src/rpc/server.py
===================================================================
--- trunk/gnue-common/src/rpc/server.py 2008-09-09 09:37:01 UTC (rev 9895)
+++ trunk/gnue-common/src/rpc/server.py 2008-10-23 13:47:44 UTC (rev 9896)
@@ -111,7 +111,6 @@
 
   import sys
   import time
-  import mx.DateTime
 
   class TestError (Exception):
     pass
@@ -161,9 +160,6 @@
     def floattest (self, f):
       return f * 2
 
-    def datetimetest (self):
-      return mx.DateTime.now ()
-
     def booltest (self):
       return True
 

Modified: trunk/gnue-common/src/utils/datatypes.py
===================================================================
--- trunk/gnue-common/src/utils/datatypes.py    2008-09-09 09:37:01 UTC (rev 
9895)
+++ trunk/gnue-common/src/utils/datatypes.py    2008-10-23 13:47:44 UTC (rev 
9896)
@@ -27,11 +27,21 @@
 __all__ = ['convert', 'InvalidValueType', 'ConversionError']
 
 import datetime
-import mx.DateTime
 
 from gnue.common.lib import iso8601
 
+# mx.DateTime is optional - a decreasing number of DBSIG2 modules actually use
+# it, and so we don't want it as a hard dependency. Having less dependencies is
+# sespecially nice on somewhat exotic platforms, like Windows Mobile.
+try:
+    import mx.DateTime
+    mx_DateTimeType = mx.DateTime.DateTimeType
+    mx_DateTimeDeltaType = mx.DateTime.DateTimeDeltaType
+except ImportError:
+    mx_DateTimeType = None
+    mx_DateTimeDeltaType = None
 
+
 # =============================================================================
 # Convert a value to a given target datatype
 # =============================================================================
@@ -88,7 +98,7 @@
         elif isinstance(value, datetime.date):
             result = value
 
-        elif isinstance(value, mx.DateTime.DateTimeType):
+        elif isinstance(value, mx_DateTimeType):
             result = datetime.date(value.year, value.month, value.day)
 
         else:
@@ -107,8 +117,8 @@
         elif isinstance(value, datetime.timedelta):
             result = (datetime.datetime(1, 1, 1) + value).time()
 
-        elif isinstance(value, mx.DateTime.DateTimeType) or \
-                isinstance(value, mx.DateTime.DateTimeDeltaType):
+        elif isinstance(value, mx_DateTimeType) or \
+                isinstance(value, mx_DateTimeDeltaType):
             result = datetime.time(value.hour, value.minute, int(value.second),
                 int((value.second - int(value.second)) * 1000000))
 
@@ -133,7 +143,7 @@
             result = datetime.datetime(1900, 1, 1, value.hour, value.minute,
                     value.second, value.microsecond)
 
-        elif isinstance(value, mx.DateTime.DateTimeType):
+        elif isinstance(value, mx_DateTimeType):
             result = datetime.datetime(value.year, value.month, value.day,
                 value.hour, value.minute, int(value.second),
                 int((value.second - int(value.second)) * 1000000))

Modified: trunk/gnue-forms/INSTALL
===================================================================
--- trunk/gnue-forms/INSTALL    2008-09-09 09:37:01 UTC (rev 9895)
+++ trunk/gnue-forms/INSTALL    2008-10-23 13:47:44 UTC (rev 9896)
@@ -10,8 +10,6 @@
 
 * Python 2.3 or greater [python python-dev]
 
-* Egenix MX DateTime tools for Python [python-egenix-mxdatetime]
-
 * GNUe Common 0.6.8 or greater [gnue-common]
 
 * at least one of the following database interfaces, depending on the database

Modified: trunk/gnue-forms/setup.py
===================================================================
--- trunk/gnue-forms/setup.py   2008-09-09 09:37:01 UTC (rev 9895)
+++ trunk/gnue-forms/setup.py   2008-10-23 13:47:44 UTC (rev 9896)
@@ -115,18 +115,6 @@
       sys.exit(1)
 
     # -------------------------------------------------------------------------
-    # mxDateTime
-    try:
-      print "checking mxDateTime library"
-      from mx.DateTime import DateTime
-    except ImportError:
-      print "---"
-      print "Could not import the mx.DateTime package."
-      print "Please install mxDateTime from the mxtools suite."
-      print "The file 'INSTALL' contains more information about dependencies."
-      sys.exit (1)
-
-    # -------------------------------------------------------------------------
     # Verify at least one UI is installed
     UIOK = 0
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]