sqlalchemy-iris 0.15.1__tar.gz → 0.15.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. {sqlalchemy_iris-0.15.1/sqlalchemy_iris.egg-info → sqlalchemy_iris-0.15.2}/PKG-INFO +1 -1
  2. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_ConnectionInformation.py +22 -20
  3. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_DBAPI.py +3 -1
  4. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_ResultSetRow.py +26 -15
  5. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/setup.cfg +1 -1
  6. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/base.py +4 -4
  7. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/types.py +6 -0
  8. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2/sqlalchemy_iris.egg-info}/PKG-INFO +1 -1
  9. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/LICENSE +0 -0
  10. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/README.md +0 -0
  11. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_BufferReader.py +0 -0
  12. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_BufferWriter.py +0 -0
  13. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_ConnectionParameters.py +0 -0
  14. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_Constant.py +0 -0
  15. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_DBList.py +0 -0
  16. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_Device.py +0 -0
  17. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_GatewayContext.py +0 -0
  18. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_GatewayException.py +0 -0
  19. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_GatewayUtility.py +0 -0
  20. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRIS.py +0 -0
  21. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISConnection.py +0 -0
  22. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISEmbedded.py +0 -0
  23. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISGlobalNode.py +0 -0
  24. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISGlobalNodeView.py +0 -0
  25. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISIterator.py +0 -0
  26. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISList.py +0 -0
  27. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISNative.py +0 -0
  28. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISOREF.py +0 -0
  29. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISObject.py +0 -0
  30. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_IRISReference.py +0 -0
  31. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_InStream.py +0 -0
  32. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_LegacyIterator.py +0 -0
  33. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_ListItem.py +0 -0
  34. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_ListReader.py +0 -0
  35. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_ListWriter.py +0 -0
  36. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_LogFileStream.py +0 -0
  37. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_MessageHeader.py +0 -0
  38. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_OutStream.py +0 -0
  39. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_PrintStream.py +0 -0
  40. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_PythonGateway.py +0 -0
  41. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/_SharedMemorySocket.py +0 -0
  42. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/__init__.py +0 -0
  43. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/__main__.py +0 -0
  44. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_Column.py +0 -0
  45. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_Descriptor.py +0 -0
  46. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_IRISStream.py +0 -0
  47. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_Message.py +0 -0
  48. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_Parameter.py +0 -0
  49. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_ParameterCollection.py +0 -0
  50. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/_SQLType.py +0 -0
  51. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/__init__.py +0 -0
  52. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/preparser/_PreParser.py +0 -0
  53. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/preparser/_Scanner.py +0 -0
  54. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/preparser/_Token.py +0 -0
  55. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/preparser/_TokenList.py +0 -0
  56. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/dbapi/preparser/__init__.py +0 -0
  57. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_BusinessHost.py +0 -0
  58. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_BusinessOperation.py +0 -0
  59. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_BusinessProcess.py +0 -0
  60. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_BusinessService.py +0 -0
  61. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_Common.py +0 -0
  62. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_Director.py +0 -0
  63. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_IRISBusinessOperation.py +0 -0
  64. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_IRISBusinessService.py +0 -0
  65. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_IRISInboundAdapter.py +0 -0
  66. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_IRISOutboundAdapter.py +0 -0
  67. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_InboundAdapter.py +0 -0
  68. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_Message.py +0 -0
  69. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/_OutboundAdapter.py +0 -0
  70. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/intersystems_iris/pex/__init__.py +0 -0
  71. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/iris/__init__.py +0 -0
  72. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/iris/__init__.pyi +0 -0
  73. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/iris/iris_ipm.py +0 -0
  74. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/iris/iris_ipm.pyi +0 -0
  75. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/irisnative/_IRISNative.py +0 -0
  76. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/irisnative/__init__.py +0 -0
  77. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/setup.py +0 -0
  78. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/__init__.py +0 -0
  79. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/alembic.py +0 -0
  80. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/embedded.py +0 -0
  81. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/information_schema.py +0 -0
  82. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/iris.py +0 -0
  83. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/irisasync.py +0 -0
  84. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/provision.py +0 -0
  85. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris/requirements.py +0 -0
  86. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris.egg-info/SOURCES.txt +0 -0
  87. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris.egg-info/dependency_links.txt +0 -0
  88. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris.egg-info/entry_points.txt +0 -0
  89. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris.egg-info/requires.txt +0 -0
  90. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/sqlalchemy_iris.egg-info/top_level.txt +0 -0
  91. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/tests/test_alembic.py +0 -0
  92. {sqlalchemy_iris-0.15.1 → sqlalchemy_iris-0.15.2}/tests/test_suite.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sqlalchemy-iris
3
- Version: 0.15.1
3
+ Version: 0.15.2
4
4
  Summary: InterSystems IRIS for SQLAlchemy
5
5
  Home-page: https://github.com/caretdev/sqlalchemy-iris
6
6
  Maintainer: CaretDev
@@ -1,7 +1,7 @@
1
1
  import intersystems_iris._Constant
2
2
 
3
- class _ConnectionInformation(object):
4
3
 
4
+ class _ConnectionInformation(object):
5
5
  def __init__(self):
6
6
  self.protocol_version = intersystems_iris._Constant._Constant.PROTOCOL_VERSION
7
7
  self._is_unicode = True
@@ -20,9 +20,10 @@ class _ConnectionInformation(object):
20
20
  def _parse_server_version(self, server_version):
21
21
  split_1 = server_version.split("|")
22
22
  self._server_version = split_1[0]
23
- if len(split_1)>1: self._iris_install_dir = split_1[1]
23
+ if len(split_1) > 1:
24
+ self._iris_install_dir = split_1[1]
24
25
  if self._server_version.find("Version") > 0:
25
- version = server_version[server_version.find("Version")+8:]
26
+ version = server_version[server_version.find("Version") + 8 :]
26
27
  self._server_version_major = version.split(".")[0]
27
28
  self._server_version_minor = version.split(".")[1]
28
29
  return
@@ -31,24 +32,25 @@ class _ConnectionInformation(object):
31
32
  def _map_server_locale(locale):
32
33
  # we need to map IRIS locale literals to Python locale literals
33
34
  _locales = {
34
- "LATIN1": "latin_1",
35
- "LATIN2": "iso8859_2",
36
- "LATINC": "iso8859_5",
37
- "LATINA": "iso8859_6",
38
- "LATING": "iso8859_7",
39
- "LATINH": "iso8859_8",
40
- "LATINT": "iso8859_11",
41
- "LATIN9": "iso8859_15",
42
- "CP1250": "cp1250",
43
- "CP1251": "cp1251",
44
- "CP1252": "cp1252",
45
- "CP1253": "cp1253",
46
- "CP1255": "cp1255",
47
- "CP1256": "cp1256",
48
- "CP1257": "cp1257",
49
- "CP874": "cp874",
35
+ "LATIN1": "latin_1",
36
+ "LATIN2": "iso8859_2",
37
+ "LATINC": "iso8859_5",
38
+ "LATINA": "iso8859_6",
39
+ "LATING": "iso8859_7",
40
+ "LATINH": "iso8859_8",
41
+ "LATINT": "iso8859_11",
42
+ "LATIN9": "iso8859_15",
43
+ "CP1250": "cp1250",
44
+ "CP1251": "cp1251",
45
+ "CP1252": "cp1252",
46
+ "CP1253": "cp1253",
47
+ "CP1255": "cp1255",
48
+ "CP1256": "cp1256",
49
+ "CP1257": "cp1257",
50
+ "CP874": "cp874",
50
51
  "UNICODE": "utf-8",
51
52
  }
52
53
  return _locales[locale.upper()] if locale.upper() in _locales else locale
53
54
 
54
-
55
+ def __repr__(self) -> str:
56
+ return f"<{self._server_version}>"
@@ -25,6 +25,7 @@ from ._SQLType import SQLType
25
25
 
26
26
  from .._IRISNative import connect as native_connect
27
27
  from .._IRISEmbedded import _IRISEmbedded
28
+ from intersystems_iris._IRISConnection import _IRISConnection
28
29
 
29
30
 
30
31
  def NotImplementedErrorDBAPI(msg=None):
@@ -42,7 +43,7 @@ def embedded_connect(*args, hostname=None, port=None, namespace=None, username=N
42
43
  return connection
43
44
 
44
45
 
45
- def connect(*args, embedded=False, hostname=None, port=None, namespace=None, username=None, password=None, **kw):
46
+ def connect(*args, embedded=False, hostname=None, port=None, namespace=None, username=None, password=None, **kw) -> _IRISConnection | _IRISEmbedded:
46
47
  try:
47
48
  if not embedded:
48
49
  return native_connect(
@@ -2149,6 +2150,7 @@ class Cursor(_BaseCursor):
2149
2150
 
2150
2151
  if retval is None:
2151
2152
  return retval
2153
+ # print('retval', retval[:])
2152
2154
  return retval.as_tuple()
2153
2155
  # return tuple(retval[:])
2154
2156
 
@@ -1,5 +1,5 @@
1
1
  import uuid
2
- from datetime import datetime, date, time
2
+ from datetime import datetime, date, time, timezone
3
3
  from collections import namedtuple
4
4
  from ._SQLType import SQLType
5
5
  from .._DBList import _DBList
@@ -11,20 +11,26 @@ from ._Column import _Column
11
11
  def from_timestamp_posix(posix):
12
12
  time = int(posix)
13
13
  if time > 0:
14
- time ^= 0x1000000000000000
14
+ time ^= 0x1000000000000000
15
15
  else:
16
- time |= 0xF000000000000000
16
+ time |= 0xF000000000000000
17
17
 
18
18
  time /= 1000000
19
19
 
20
- value = datetime.utcfromtimestamp(time).replace(tzinfo=None)
20
+ value = datetime.fromtimestamp(time, timezone.utc).replace(tzinfo=None)
21
21
  return value
22
22
 
23
+
23
24
  class _ResultSetRow:
24
25
  _locale = "latin-1"
25
26
  _connection = None
26
27
 
27
- def __init__(self, connection, columns=None, rowcount=0, ):
28
+ def __init__(
29
+ self,
30
+ connection,
31
+ columns=None,
32
+ rowcount=0,
33
+ ):
28
34
  self._connection = connection
29
35
  # index from user-inputted columns to columns received from server
30
36
  self.col_index = []
@@ -55,7 +61,7 @@ class _ResultSetRow:
55
61
  self.colCount = len(columns) if columns != None else 0
56
62
 
57
63
  # number of columns received from server, aka number of items per row
58
- #self.colCount = rowcount
64
+ # self.colCount = rowcount
59
65
 
60
66
  # list of _ListItems corresponding to the various entries in the row, plus the offset of next row's first _ListItem
61
67
  self.rowItems = None
@@ -126,9 +132,9 @@ class _ResultSetRow:
126
132
 
127
133
  def get(self):
128
134
  return self[:]
129
-
135
+
130
136
  def as_tuple(self):
131
- row = namedtuple('Row', [col.name for col in self._columns], rename=True)
137
+ row = namedtuple("Row", [col.name for col in self._columns], rename=True)
132
138
  values = self[:]
133
139
  return row(*values)
134
140
 
@@ -164,15 +170,18 @@ class _ResultSetRow:
164
170
  HOROLOG_ORDINAL = date(1840, 12, 31).toordinal()
165
171
  if item:
166
172
  item = date.fromordinal(HOROLOG_ORDINAL + item)
173
+ if ctype == SQLType.TIMESTAMP and item:
174
+ item = item + '.000' if '.' not in item else item
175
+ item = datetime.strptime(item, '%Y-%m-%d %H:%M:%S.%f')
167
176
  if ctype == SQLType.TIME_HOROLOG:
168
177
  if item:
169
178
  item = time(item // 3600, item % 3600 // 60, item % 3600 % 60)
170
179
  if ctype == SQLType.GUID:
171
180
  item = uuid.UUID(item)
172
- if ctype == SQLType.TIMESTAMP_POSIX:
181
+ if ctype == SQLType.TIMESTAMP_POSIX and item:
173
182
  item = from_timestamp_posix(item)
174
183
 
175
- if _column.tableName == 'None' and _column.schema == 'None':
184
+ if _column.tableName == "None" and _column.schema == "None":
176
185
  # Ignore for anonymous tables
177
186
  pass
178
187
  elif item is None:
@@ -285,8 +294,9 @@ class _ResultSetRow:
285
294
  rowItems[i] = curr_offset
286
295
  prev_offset = curr_offset
287
296
  except IndexError:
288
- raise IndexError("Row incomplete: " + str(self.colCount) +
289
- " items expected, but " + str(i) + " were found")
297
+ raise IndexError(
298
+ "Row incomplete: " + str(self.colCount) + " items expected, but " + str(i) + " were found"
299
+ )
290
300
  self.update(rowItems)
291
301
  return True
292
302
 
@@ -319,8 +329,9 @@ class _ResultSetRow:
319
329
  rowItems[i] = curr_offset
320
330
  prev_offset = curr_offset
321
331
  except IndexError:
322
- raise IndexError("Row incomplete: " + str(self.colCount) +
323
- " items expected, but " + str(i) + " were found")
332
+ raise IndexError(
333
+ "Row incomplete: " + str(self.colCount) + " items expected, but " + str(i) + " were found"
334
+ )
324
335
  return self.update(rowItems)
325
336
 
326
337
  def update(self, rowItems):
@@ -330,7 +341,7 @@ class _ResultSetRow:
330
341
  colIndexOffsets[idx] = rowItems[i]
331
342
  colIndexOffsets[-1] = self._last_list_item.next_offset
332
343
  self.rowItems = colIndexOffsets
333
- return self.rowItems[:self.colCount]
344
+ return self.rowItems[: self.colCount]
334
345
  self.rowItems = rowItems
335
346
  self._offsets = self.DataRow(self)
336
347
  self._new_buffer = False
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = sqlalchemy-iris
3
- version = 0.15.1
3
+ version = 0.15.2
4
4
  description = InterSystems IRIS for SQLAlchemy
5
5
  long_description = file: README.md
6
6
  url = https://github.com/caretdev/sqlalchemy-iris
@@ -105,8 +105,8 @@ ischema_names = {
105
105
  "LONGVARCHAR": LONGVARCHAR,
106
106
  "NUMERIC": NUMERIC,
107
107
  "SMALLINT": SMALLINT,
108
- "TIME": TIME,
109
- "TIMESTAMP": TIMESTAMP,
108
+ "TIME": IRISTime,
109
+ "TIMESTAMP": IRISTimeStamp,
110
110
  "TINYINT": TINYINT,
111
111
  "VARBINARY": VARBINARY,
112
112
  "VARCHAR": VARCHAR,
@@ -925,8 +925,8 @@ class IRISDialect(default.DefaultDialect):
925
925
  cursor.execute("%CHECKPRIV SELECT ON %Dictionary.PropertyDefinition")
926
926
  self._dictionary_access = cursor.sqlcode == 0
927
927
 
928
- if not self.supports_vectors:
929
- util.warn("No native support for VECTOR or not activated by license")
928
+ # if not self.supports_vectors:
929
+ # util.warn("No native support for VECTOR or not activated by license")
930
930
  if not self._dictionary_access:
931
931
  util.warn(
932
932
  """
@@ -58,6 +58,8 @@ class IRISDate(sqltypes.Date):
58
58
 
59
59
 
60
60
  class IRISTimeStamp(sqltypes.DateTime):
61
+ __visit_name__ = "timestamp"
62
+
61
63
  def bind_processor(self, dialect):
62
64
  def process(value: datetime.datetime):
63
65
  if value is not None:
@@ -84,6 +86,8 @@ class IRISTimeStamp(sqltypes.DateTime):
84
86
 
85
87
 
86
88
  class IRISDateTime(sqltypes.DateTime):
89
+ __visit_name__ = "datetime"
90
+
87
91
  def bind_processor(self, dialect):
88
92
  def process(value):
89
93
  if value is not None:
@@ -106,6 +110,8 @@ class IRISDateTime(sqltypes.DateTime):
106
110
 
107
111
 
108
112
  class IRISTime(sqltypes.DateTime):
113
+ __visit_name__ = "time"
114
+
109
115
  def bind_processor(self, dialect):
110
116
  def process(value):
111
117
  if value is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sqlalchemy-iris
3
- Version: 0.15.1
3
+ Version: 0.15.2
4
4
  Summary: InterSystems IRIS for SQLAlchemy
5
5
  Home-page: https://github.com/caretdev/sqlalchemy-iris
6
6
  Maintainer: CaretDev