sqlalchemy-iris 0.13.3b1__tar.gz → 0.13.4b2__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.13.3b1/sqlalchemy_iris.egg-info → sqlalchemy_iris-0.13.4b2}/PKG-INFO +1 -1
  2. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/setup.cfg +3 -1
  3. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/setup.py +1 -0
  4. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/__init__.py +1 -0
  5. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/base.py +25 -9
  6. sqlalchemy_iris-0.13.4b2/sqlalchemy_iris/irisasync.py +17 -0
  7. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2/sqlalchemy_iris.egg-info}/PKG-INFO +1 -1
  8. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris.egg-info/SOURCES.txt +1 -0
  9. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris.egg-info/entry_points.txt +1 -0
  10. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/LICENSE +0 -0
  11. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/README.md +0 -0
  12. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_BufferReader.py +0 -0
  13. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_BufferWriter.py +0 -0
  14. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_ConnectionInformation.py +0 -0
  15. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_ConnectionParameters.py +0 -0
  16. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_Constant.py +0 -0
  17. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_DBList.py +0 -0
  18. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_Device.py +0 -0
  19. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_GatewayContext.py +0 -0
  20. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_GatewayException.py +0 -0
  21. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_GatewayUtility.py +0 -0
  22. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRIS.py +0 -0
  23. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISConnection.py +0 -0
  24. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISEmbedded.py +0 -0
  25. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISGlobalNode.py +0 -0
  26. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISGlobalNodeView.py +0 -0
  27. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISIterator.py +0 -0
  28. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISList.py +0 -0
  29. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISNative.py +0 -0
  30. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISOREF.py +0 -0
  31. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISObject.py +0 -0
  32. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_IRISReference.py +0 -0
  33. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_InStream.py +0 -0
  34. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_LegacyIterator.py +0 -0
  35. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_ListItem.py +0 -0
  36. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_ListReader.py +0 -0
  37. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_ListWriter.py +0 -0
  38. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_LogFileStream.py +0 -0
  39. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_MessageHeader.py +0 -0
  40. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_OutStream.py +0 -0
  41. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_PrintStream.py +0 -0
  42. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_PythonGateway.py +0 -0
  43. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/_SharedMemorySocket.py +0 -0
  44. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/__init__.py +0 -0
  45. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/__main__.py +0 -0
  46. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_Column.py +0 -0
  47. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_DBAPI.py +0 -0
  48. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_Descriptor.py +0 -0
  49. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_IRISStream.py +0 -0
  50. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_Message.py +0 -0
  51. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_Parameter.py +0 -0
  52. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_ParameterCollection.py +0 -0
  53. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_ResultSetRow.py +0 -0
  54. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/_SQLType.py +0 -0
  55. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/__init__.py +0 -0
  56. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/preparser/_PreParser.py +0 -0
  57. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/preparser/_Scanner.py +0 -0
  58. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/preparser/_Token.py +0 -0
  59. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/preparser/_TokenList.py +0 -0
  60. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/dbapi/preparser/__init__.py +0 -0
  61. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_BusinessHost.py +0 -0
  62. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_BusinessOperation.py +0 -0
  63. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_BusinessProcess.py +0 -0
  64. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_BusinessService.py +0 -0
  65. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_Common.py +0 -0
  66. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_Director.py +0 -0
  67. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_IRISBusinessOperation.py +0 -0
  68. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_IRISBusinessService.py +0 -0
  69. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_IRISInboundAdapter.py +0 -0
  70. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_IRISOutboundAdapter.py +0 -0
  71. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_InboundAdapter.py +0 -0
  72. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_Message.py +0 -0
  73. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/_OutboundAdapter.py +0 -0
  74. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/intersystems_iris/pex/__init__.py +0 -0
  75. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/iris/__init__.py +0 -0
  76. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/iris/__init__.pyi +0 -0
  77. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/iris/iris_ipm.py +0 -0
  78. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/iris/iris_ipm.pyi +0 -0
  79. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/irisnative/_IRISNative.py +0 -0
  80. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/irisnative/__init__.py +0 -0
  81. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/alembic.py +0 -0
  82. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/embedded.py +0 -0
  83. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/information_schema.py +0 -0
  84. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/iris.py +0 -0
  85. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/provision.py +0 -0
  86. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/requirements.py +0 -0
  87. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris/types.py +0 -0
  88. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris.egg-info/dependency_links.txt +0 -0
  89. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris.egg-info/requires.txt +0 -0
  90. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/sqlalchemy_iris.egg-info/top_level.txt +0 -0
  91. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/tests/test_alembic.py +0 -0
  92. {sqlalchemy-iris-0.13.3b1 → sqlalchemy_iris-0.13.4b2}/tests/test_suite.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sqlalchemy-iris
3
- Version: 0.13.3b1
3
+ Version: 0.13.4b2
4
4
  Summary: InterSystems IRIS for SQLAlchemy
5
5
  Home-page: https://github.com/caretdev/sqlalchemy-iris
6
6
  Maintainer: CaretDev
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = sqlalchemy-iris
3
- version = 0.13.3b1
3
+ version = 0.13.4b2
4
4
  description = InterSystems IRIS for SQLAlchemy
5
5
  long_description = file: README.md
6
6
  url = https://github.com/caretdev/sqlalchemy-iris
@@ -33,6 +33,8 @@ addopts = --tb native -v -r fxX --maxfail=25 -p no:warnings
33
33
 
34
34
  [db]
35
35
  default = iris://_SYSTEM:SYS@localhost:1972/USER
36
+ iris = iris://_SYSTEM:SYS@localhost:1972/USER
37
+ irisasync = iris+irisasync://_SYSTEM:SYS@localhost:1972/USER
36
38
  irisemb = iris+emb:///
37
39
  sqlite = sqlite:///:memory:
38
40
 
@@ -8,6 +8,7 @@ setup(
8
8
  "sqlalchemy.dialects": [
9
9
  "iris = sqlalchemy_iris.iris:IRISDialect_iris",
10
10
  "iris.emb = sqlalchemy_iris.embedded:IRISDialect_emb",
11
+ "iris.irisasync = sqlalchemy_iris.irisasync:IRISDialect_irisasync",
11
12
  ]
12
13
  },
13
14
  )
@@ -31,6 +31,7 @@ base.dialect = dialect = iris.dialect
31
31
 
32
32
  _registry.register("iris.iris", "sqlalchemy_iris.iris", "IRISDialect_iris")
33
33
  _registry.register("iris.emb", "sqlalchemy_iris.embedded", "IRISDialect_emb")
34
+ _registry.register("iris.irisasync", "sqlalchemy_iris.irisasync", "IRISDialect_irisasync")
34
35
 
35
36
  __all__ = [
36
37
  "BIGINT",
@@ -742,6 +742,12 @@ class IRISTypeCompiler(compiler.GenericTypeCompiler):
742
742
  def visit_BIT(self, type_, **kw):
743
743
  return "BIT"
744
744
 
745
+ def visit_VARCHAR(self, type_, **kw):
746
+ # If length is not specified, use 50 as default in IRIS
747
+ if type_.length is None:
748
+ type_ = VARCHAR(50)
749
+ return "VARCHAR(%d)" % type_.length
750
+
745
751
  def visit_TEXT(self, type_, **kw):
746
752
  return "VARCHAR(65535)"
747
753
 
@@ -878,8 +884,12 @@ class IRISDialect(default.DefaultDialect):
878
884
 
879
885
  def _get_server_version_info(self, connection):
880
886
  server_version = connection.connection._connection_info._server_version
881
- server_version = server_version[server_version.find("Version") + 8:].split(" ")[0].split(".")
882
- return tuple([int(''.join(filter(str.isdigit, v))) for v in server_version])
887
+ server_version = (
888
+ server_version[server_version.find("Version") + 8 :]
889
+ .split(" ")[0]
890
+ .split(".")
891
+ )
892
+ return tuple([int("".join(filter(str.isdigit, v))) for v in server_version])
883
893
 
884
894
  _isolation_lookup = set(
885
895
  [
@@ -900,17 +910,23 @@ class IRISDialect(default.DefaultDialect):
900
910
  super_(conn)
901
911
 
902
912
  if self.embedded:
903
- self.supports_vectors = conn.iris.cls("%SYSTEM.License").GetFeature(28) == 1
913
+ self.supports_vectors = (
914
+ conn.iris.cls("%SYSTEM.License").GetFeature(28) == 1
915
+ )
904
916
  else:
905
917
  try:
906
918
  iris = IRISNative.createIRIS(conn)
907
- self.supports_vectors = iris.classMethodBoolean("%SYSTEM.License", "GetFeature", 28)
908
- except: # noqa
919
+ self.supports_vectors = iris.classMethodBoolean(
920
+ "%SYSTEM.License", "GetFeature", 28
921
+ )
922
+ except: # noqa
909
923
  self.supports_vectors = False
910
924
  if self.supports_vectors:
911
925
  with conn.cursor() as cursor:
912
926
  # Distance or similarity
913
- cursor.execute("select vector_cosine(to_vector('1'), to_vector('1'))")
927
+ cursor.execute(
928
+ "select vector_cosine(to_vector('1'), to_vector('1'))"
929
+ )
914
930
  self.vector_cosine_similarity = cursor.fetchone()[0] == 0
915
931
 
916
932
  self._dictionary_access = False
@@ -1505,9 +1521,9 @@ There are no access to %Dictionary, may be required for some advanced features,
1505
1521
  table_fkey[rfknm] = fkey = {
1506
1522
  "name": rfknm,
1507
1523
  "constrained_columns": [],
1508
- "referred_schema": rschema
1509
- if rschema != self.default_schema_name
1510
- else None,
1524
+ "referred_schema": (
1525
+ rschema if rschema != self.default_schema_name else None
1526
+ ),
1511
1527
  "referred_table": rtbl,
1512
1528
  "referred_columns": [],
1513
1529
  "options": {},
@@ -0,0 +1,17 @@
1
+ from .base import IRISDialect
2
+
3
+
4
+ class IRISDialect_irisasync(IRISDialect):
5
+ driver = "irisasync"
6
+
7
+ is_async = True
8
+ supports_statement_cache = True
9
+
10
+ @classmethod
11
+ def import_dbapi(cls):
12
+ import intersystems_iris.dbapi._DBAPI as dbapi
13
+
14
+ return dbapi
15
+
16
+
17
+ dialect = IRISDialect_irisasync
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sqlalchemy-iris
3
- Version: 0.13.3b1
3
+ Version: 0.13.4b2
4
4
  Summary: InterSystems IRIS for SQLAlchemy
5
5
  Home-page: https://github.com/caretdev/sqlalchemy-iris
6
6
  Maintainer: CaretDev
@@ -77,6 +77,7 @@ sqlalchemy_iris/base.py
77
77
  sqlalchemy_iris/embedded.py
78
78
  sqlalchemy_iris/information_schema.py
79
79
  sqlalchemy_iris/iris.py
80
+ sqlalchemy_iris/irisasync.py
80
81
  sqlalchemy_iris/provision.py
81
82
  sqlalchemy_iris/requirements.py
82
83
  sqlalchemy_iris/types.py
@@ -1,3 +1,4 @@
1
1
  [sqlalchemy.dialects]
2
2
  iris = sqlalchemy_iris.iris:IRISDialect_iris
3
3
  iris.emb = sqlalchemy_iris.embedded:IRISDialect_emb
4
+ iris.irisasync = sqlalchemy_iris.irisasync:IRISDialect_irisasync