Skip to content

Commit 7de93d9

Browse files
committed
switch to official driver by default
1 parent 8f3462a commit 7de93d9

8 files changed

Lines changed: 44 additions & 27 deletions

File tree

.github/workflows/python-publish.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
fail-fast: false
2626
matrix:
2727
image:
28-
- 2024.3
28+
- latest-em
2929
- latest-cd
3030
- latest-preview
3131
engine:
@@ -37,7 +37,7 @@ jobs:
3737
runs-on: ubuntu-latest
3838
services:
3939
iris:
40-
image: containers.intersystems.com/intersystems/iris-community:${{ matrix.image }}
40+
image: caretdev/iris-community-light:${{ matrix.image }}
4141
ports:
4242
- 1972:1972
4343
options: >-
@@ -53,7 +53,8 @@ jobs:
5353
run: |
5454
pip install tox
5555
- name: Run Tests
56-
continue-on-error: ${{ matrix.driver == 'intersystems' }}
56+
# continue-on-error: ${{ matrix.driver == 'intersystems' }}
57+
continue-on-error: true
5758
run: |
5859
docker exec iris iris session iris -U%SYS '##class(Security.Users).UnExpireUserPasswords("*")'
5960
tox -e py312-${{ matrix.engine }}-${{ matrix.driver }} -- --dburi iris+${{ matrix.driver }}://_SYSTEM:SYS@localhost:1972/USER --junit-xml=test-results.xml
@@ -98,7 +99,7 @@ jobs:
9899
run: |
99100
pip install -U pip setuptools wheel \
100101
-r requirements-dev.txt \
101-
-r requirements-iris.txt \
102+
# -r requirements-iris.txt \
102103
-e .
103104
104105
- name: Build Python package

requirements.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
SQLAlchemy>=1.3
1+
SQLAlchemy>=1.3
2+
intersystems-irispython~=5.3.2

setup.cfg

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ packages = find:
3232

3333
[options.extras_require]
3434
intersystems =
35-
intersystems-irispython~=5.1.0
35+
intersystems-irispython~=5.3.2
3636

3737
[tool:pytest]
3838
addopts= --tb native -v -r fxX -p no:warnings
@@ -41,8 +41,8 @@ addopts= --tb native -v -r fxX -p no:warnings
4141
default=iris://_SYSTEM:SYS@localhost:1972/USER
4242
iris=iris://_SYSTEM:SYS@localhost:1972/USER
4343
irisintersystems=iris+intersystems://_SYSTEM:SYS@localhost:1972/USER
44-
irisasync=iris+irisasync://_SYSTEM:SYS@localhost:1972/USER
45-
irisemb=iris+emb:///
44+
# irisasync=iris+irisasync://_SYSTEM:SYS@localhost:1972/USER
45+
# irisemb=iris+emb:///
4646
sqlite=sqlite:///:memory:
4747

4848
[sqla_testing]

setup.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22

33
setup(
44
install_requires=[
5-
"SQLAlchemy>=1.3"
5+
"SQLAlchemy>=1.3",
6+
"intersystems-irispython~=5.3.2",
67
],
78
entry_points={
89
"sqlalchemy.dialects": [
9-
"iris = sqlalchemy_iris.iris:IRISDialect_iris",
10-
"iris.emb = sqlalchemy_iris.embedded:IRISDialect_emb",
11-
"iris.irisasync = sqlalchemy_iris.irisasync:IRISDialect_irisasync",
10+
# "iris = sqlalchemy_iris.iris:IRISDialect_iris",
11+
# "iris.emb = sqlalchemy_iris.embedded:IRISDialect_emb",
12+
# "iris.irisasync = sqlalchemy_iris.irisasync:IRISDialect_irisasync",
13+
"iris = sqlalchemy_iris.intersystems:IRISDialect_intersystems",
1214
"iris.intersystems = sqlalchemy_iris.intersystems:IRISDialect_intersystems",
1315
]
1416
},

sqlalchemy_iris/__init__.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
from sqlalchemy.dialects import registry as _registry
22

33
from . import base
4-
from . import iris
4+
from . import iris # noqa
5+
from .intersystems import dialect as intersystems_dialect
56

67
try:
78
import alembic # noqa
@@ -27,11 +28,12 @@
2728
from .base import IRISListBuild
2829
from .base import IRISVector
2930

30-
base.dialect = dialect = iris.dialect
31+
base.dialect = dialect = intersystems_dialect
3132

32-
_registry.register("iris.iris", "sqlalchemy_iris.iris", "IRISDialect_iris")
33-
_registry.register("iris.emb", "sqlalchemy_iris.embedded", "IRISDialect_emb")
34-
_registry.register("iris.irisasync", "sqlalchemy_iris.irisasync", "IRISDialect_irisasync")
33+
# _registry.register("iris.iris", "sqlalchemy_iris.iris", "IRISDialect_iris")
34+
# _registry.register("iris.emb", "sqlalchemy_iris.embedded", "IRISDialect_emb")
35+
# _registry.register("iris.irisasync", "sqlalchemy_iris.irisasync", "IRISDialect_irisasync")
36+
_registry.register("iris.iris", "sqlalchemy_iris.intersystems", "IRISDialect_intersystems")
3537
_registry.register("iris.intersystems", "sqlalchemy_iris.intersystems", "IRISDialect_intersystems")
3638

3739
__all__ = [

sqlalchemy_iris/base.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,10 @@
22
from decimal import Decimal
33
from typing import Optional
44
from typing import Any
5-
import intersystems_iris.dbapi._DBAPI as dbapi
5+
try:
6+
import intersystems_iris.dbapi._DBAPI as dbapi
7+
except ImportError:
8+
dbapi = None
69
from . import information_schema as ischema
710
from sqlalchemy import exc
811
from sqlalchemy.orm import aliased

sqlalchemy_iris/types.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,13 @@
44
from sqlalchemy.sql import sqltypes
55
from sqlalchemy.types import UserDefinedType
66
from uuid import UUID as _python_UUID
7-
from intersystems_iris import IRISList
87
from sqlalchemy import __version__ as sqlalchemy_version
98

9+
try:
10+
from intersystems_iris import IRISList
11+
except ImportError:
12+
pass
13+
1014
HOROLOG_ORDINAL = datetime.date(1840, 12, 31).toordinal()
1115

1216

tox.ini

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,31 +10,35 @@ setenv =
1010
[testenv:py{310,311,312,313,314}-old-iris]
1111
deps =
1212
sqlalchemy<2
13+
-r requirements.txt
1314
-r requirements-dev.txt
14-
-r requirements-iris.txt
15+
# -r requirements-iris.txt
1516
-e.
16-
commands = {envpython} -m pytest {posargs} --driver iris
17+
commands = {envpython} -m pytest {posargs}
1718

1819
[testenv:py{310,311,312,313,314}-new-iris]
1920
deps =
2021
sqlalchemy>=2
22+
-r requirements.txt
2123
-r requirements-dev.txt
22-
-r requirements-iris.txt
24+
# -r requirements-iris.txt
2325
-e.
24-
commands = {envpython} -m pytest {posargs} --driver iris
26+
commands = {envpython} -m pytest {posargs}
2527

2628
[testenv:py{310,311,312,313,314}-old-intersystems]
2729
deps =
2830
sqlalchemy<2
31+
-r requirements.txt
2932
-r requirements-dev.txt
30-
-r requirements-iris.txt
31-
-e .[intersystems]
33+
# -r requirements-iris.txt
34+
-e .
3235
commands = {envpython} -m pytest {posargs} --driver intersystems
3336

3437
[testenv:py{310,311,312,313,314}-new-intersystems]
3538
deps =
3639
sqlalchemy>=2
40+
-r requirements.txt
3741
-r requirements-dev.txt
38-
-r requirements-iris.txt
39-
-e .[intersystems]
42+
# -r requirements-iris.txt
43+
-e .
4044
commands = {envpython} -m pytest {posargs} --driver intersystems

0 commit comments

Comments
 (0)