@@ -10,20 +10,17 @@ jobs:
10
10
strategy :
11
11
matrix :
12
12
os : [ ubuntu-latest, windows-latest ]
13
- python-version : [ "3.8", "3.9", "3.10", "3.11" ]
14
- pydantic-version : [ "1", "2" ]
13
+ python-version : [ "3.8", "3.9", "3.10", "3.11", "3.12" ]
15
14
exclude :
16
15
- os : windows-latest
17
- python-version : " 3.8 "
16
+ python-version : " 3.9 "
18
17
- os : windows-latest
19
- pydantic-version : " 1"
20
- - python-version : " 3.8"
21
- pydantic-version : " 1"
22
- - python-version : " 3.9"
23
- pydantic-version : " 1"
24
- - python-version : " 3.10"
25
- pydantic-version : " 1"
18
+ python-version : " 3.10"
19
+ - os : windows-latest
20
+ python-version : " 3.11"
26
21
runs-on : ${{ matrix.os }}
22
+ env :
23
+ POETRY_VIRTUALENVS_IN_PROJECT : true
27
24
28
25
steps :
29
26
@@ -43,16 +40,23 @@ jobs:
43
40
path : linkml-runtime
44
41
fetch-depth : 0
45
42
43
+ - name : Ensure tags if not run from main repo
44
+ if : github.repository != 'linkml/linkml-runtime'
45
+ working-directory : linkml-runtime
46
+ run : |
47
+ git remote add upstream https://github.com/linkml/linkml-runtime
48
+ git fetch upstream --tags
49
+
46
50
- name : set up python
47
51
uses : actions/setup-python@v5
48
52
with :
49
53
python-version : ${{ matrix.python-version }}
50
54
51
- - name : install poetry
52
- uses : snok/ install- poetry@v1
53
- with :
54
- virtualenvs-create : true
55
- virtualenvs-in-project : true
55
+ - name : Install poetry
56
+ run : pipx install poetry
57
+
58
+ - name : Install dynamic versioning plugin
59
+ run : poetry self add "poetry-dynamic-versioning[plugin]"
56
60
57
61
- name : Load cached venv
58
62
id : cached-poetry-dependencies
72
76
working-directory : linkml
73
77
run : poetry add ../linkml-runtime
74
78
75
- # use correct pydantic version
76
- - name : install pydantic
77
- working-directory : linkml
78
- run : poetry add pydantic@^${{ matrix.pydantic-version }}
79
-
80
79
# note that we run the installation step always, even if we restore a venv,
81
80
# the cache will restore the old version of linkml-runtime, but the lockfile
82
81
# will only store the directory dependency (and thus will reinstall it)
0 commit comments