Skip to content

Commit 0774403

Browse files
Preparation for release
1 parent 5f05f7e commit 0774403

File tree

12 files changed

+62
-57
lines changed

12 files changed

+62
-57
lines changed

Diff for: .github/workflows/test-coreferee.yml

+12-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,17 @@ jobs:
88
matrix:
99
os: [macos-latest, windows-latest, ubuntu-latest]
1010
python_version: ['3.6', '3.7', '3.8', '3.9', '3.10']
11+
spacy_version: ['3.3.0']
12+
include:
13+
- os: 'ubuntu-latest'
14+
python-version: '3.10'
15+
spacy_version: '3.2.0'
16+
- os: 'ubuntu-latest'
17+
python-version: '3.10'
18+
spacy_version: '3.1.0'
19+
- os: 'ubuntu-latest'
20+
python-version: '3.10'
21+
spacy_version: '3.0.0'
1122
runs-on: ${{ matrix.os }}
1223
steps:
1324
- name: Checkout repository code
@@ -23,7 +34,7 @@ jobs:
2334
- name: Install dependencies
2435
run: |
2536
python -m pip install --upgrade pip
26-
pip install spacy pytest
37+
pip install spacy==${{ matrix.spacy_version }} pytest
2738
2839
# see https://github.com/explosion/spaCy/issues/10564
2940
pip uninstall click -y

Diff for: coreferee/lang/de/config.cfg

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
[sm_3_2_0]
22
model: core_news_sm
33
from_version: 3.0.0
4-
to_version: 3.2.0
4+
to_version: 3.3.0
55
train_version: 3.2.0
66

77
[md_3_2_0]
88
model: core_news_md
99
from_version: 3.0.0
10-
to_version: 3.2.0
10+
to_version: 3.3.0
1111
train_version: 3.2.0
1212

1313
[lg_3_2_0]
1414
model: core_news_lg
1515
from_version: 3.0.0
16-
to_version: 3.2.0
16+
to_version: 3.3.0
1717
train_version: 3.2.0

Diff for: coreferee/lang/en/config.cfg

+5-7
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,25 @@
11
[lg_3_2_0]
22
model: core_web_lg
33
from_version: 3.0.0
4-
to_version: 3.2.0
4+
to_version: 3.3.0
55
train_version: 3.2.0
66

77
[md_3_2_0]
88
model: core_web_md
99
from_version: 3.0.0
10-
to_version: 3.2.0
10+
to_version: 3.3.0
1111
train_version: 3.2.0
1212

1313
[sm_3_2_0]
1414
model: core_web_sm
1515
from_version: 3.0.0
16-
to_version: 3.2.0
16+
to_version: 3.3.0
1717
train_version: 3.2.0
1818

1919
[trf_3_2_0]
2020
model: core_web_trf
2121
from_version: 3.0.0
22-
to_version: 3.2.0
22+
to_version: 3.3.0
2323
train_version: 3.2.0
2424
vectors_model: core_web_lg
25-
vectors_from_version: 3.0.0
26-
vectors_to_version: 3.2.0
27-
vectors_train_version: 3.2.0
25+

Diff for: coreferee/lang/pl/config.cfg

+6-7
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
1-
[md_3_2_0]
2-
model: core_news_md
1+
[lg_3_2_0]
2+
model: core_news_lg
33
from_version: 3.0.0
4-
to_version: 3.2.0
4+
to_version: 3.3.0
55
train_version: 3.2.0
66

7-
8-
[lg_3_2_0]
9-
model: core_news_lg
7+
[md_3_2_0]
8+
model: core_news_md
109
from_version: 3.0.0
11-
to_version: 3.2.0
10+
to_version: 3.3.0
1211
train_version: 3.2.0

Diff for: coreferee/manager.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -86,9 +86,9 @@ def get_annotator(nlp: Language) -> Annotator:
8686
msg.fail(error_msg)
8787
raise VectorsModelNotInstalledError(error_msg)
8888
if version.parse(vectors_nlp.meta["version"]) < version.parse(
89-
config_entry["vectors_from_version"]
89+
config_entry["from_version"]
9090
) or version.parse(vectors_nlp.meta["version"]) > version.parse(
91-
config_entry["vectors_to_version"]
91+
config_entry["to_version"]
9292
):
9393
msg = Printer()
9494
error_msg = "".join(
@@ -100,9 +100,9 @@ def get_annotator(nlp: Language) -> Annotator:
100100
"_",
101101
config_entry["vectors_model"],
102102
" between versions ",
103-
config_entry["vectors_from_version"],
103+
config_entry["from_version"],
104104
" and ",
105-
config_entry["vectors_to_version"],
105+
config_entry["to_version"],
106106
" inclusive.",
107107
)
108108
)

Diff for: coreferee/training/train.py

+10-23
Original file line numberDiff line numberDiff line change
@@ -73,23 +73,25 @@ def __init__(
7373
)
7474
)
7575
if not os.path.isdir(this_model_dir) or not train_not_check:
76-
self.relevant_config_entry_names.append(config_entry_name)
7776
model_name = "_".join((lang, config_entry["model"]))
78-
self.load_model(
77+
if not self.load_model(
7978
model_name,
8079
config_entry_name,
8180
config_entry["from_version"],
8281
config_entry["to_version"],
83-
)
82+
):
83+
print("Skipping config entry", config_entry_name, "as specified version range does not match.")
84+
continue
8485
if "vectors_model" in config_entry:
8586
vectors_model_name = "_".join((lang, config_entry["vectors_model"]))
8687
self.load_model(
8788
vectors_model_name,
8889
config_entry_name,
89-
config_entry["vectors_from_version"],
90-
config_entry["vectors_to_version"],
90+
config_entry["from_version"],
91+
config_entry["to_version"],
9192
is_vector_model=True,
9293
)
94+
self.relevant_config_entry_names.append(config_entry_name)
9395
else:
9496
print("Skipping config entry", config_entry_name, "as model exists")
9597

@@ -119,7 +121,7 @@ def load_model(
119121
to_version,
120122
*,
121123
is_vector_model=False
122-
):
124+
) -> bool:
123125
if name not in self.nlp_dict:
124126
print("Loading model", name, "...")
125127
try:
@@ -147,24 +149,9 @@ def load_model(
147149
if version.parse(nlp.meta["version"]) < version.parse(
148150
from_version
149151
) or version.parse(nlp.meta["version"]) > version.parse(to_version):
150-
if is_vector_model:
151-
print(
152-
"Config entry",
153-
config_entry_name,
154-
"specifies a version range for vectors model",
155-
name,
156-
"that does not include the loaded version.",
157-
)
158-
else:
159-
print(
160-
"Config entry",
161-
config_entry_name,
162-
"specifies a version range for model",
163-
name,
164-
"that does not include the loaded version.",
165-
)
166-
sys.exit(1)
152+
return False
167153
self.nlp_dict[name] = nlp
154+
return True
168155

169156
def set_up_models_dir(self):
170157
os.mkdir(self.models_dirname)

Diff for: setup.cfg

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,6 @@ include_package_data = True
3535
packages = find:
3636
python_requires = >=3.6,<3.11
3737
install_requires =
38-
spacy>=3.0.0,<3.3.0
38+
spacy>=3.0.0,<3.4.0
3939
[options.package_data]
4040
* = *.dat, *.cfg

Diff for: tests/de/test_rules_de.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ def test_substituting_indefinite_pronoun(self):
204204
def test_pronoun_noun(self):
205205
self.compare_independent_noun(
206206
"Diejenigen der Jungen, die heimgekommen sind, waren müde",
207-
[0, 2],
207+
[2],
208208
excluded_nlps=["core_news_md", "core_news_sm"],
209209
)
210210

@@ -694,7 +694,7 @@ def test_potential_pair_person_neut_2(self):
694694
@unittest.skipIf(train_version_mismatch, train_version_mismatch_message)
695695
def test_potential_pair_person_neut_3(self):
696696
self.compare_potential_pair(
697-
"Ich sah ein Kind. Dann lächelte dieses und weinte", 3, False, 7, 2
697+
"Ich sah ein Kind. Dann lächelte es und weinte", 3, False, 7, 2
698698
)
699699

700700
def test_potential_pair_person_neut_control(self):

Diff for: tests/de/test_smoke_tests_de.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def test_simple_conjunction_different_words(self):
5656
@unittest.skipIf(train_version_mismatch, train_version_mismatch_message)
5757
def test_conjunction_different_pronouns(self):
5858
self.compare_annotations(
59-
'Peter und das Mädchen haben gesprochen, und es und er jagten ein Katze', '[0: [0], [10], 1: [3], [8]]')
59+
'Peter und das Mädchen haben gesprochen, und dieses und er jagten ein Katze', '[0: [0], [10], 1: [3], [8]]')
6060

6161
def test_conjunction_involving_pronoun(self):
6262
self.compare_annotations(

Diff for: tests/fr/test_rules_fr.py

+5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
import unittest
2+
from coreferee.errors import ModelNotSupportedError
23
from coreferee.rules import RulesAnalyzerFactory
34
from coreferee.test_utils import get_nlps
45
from coreferee.data_model import Mention
56

7+
try:
8+
nlps = get_nlps("fr")
9+
except ModelNotSupportedError:
10+
raise unittest.SkipTest("Model version not supported.")
611

712
class FrenchRulesTest(unittest.TestCase):
813
def setUp(self):

Diff for: tests/fr/test_smoke_tests_fr.py

+9-4
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,23 @@
11
import unittest
2+
from coreferee.errors import ModelNotSupportedError
23
from coreferee.test_utils import get_nlps
34

4-
nlps = get_nlps('fr')
5+
try:
6+
nlps = get_nlps("fr")
7+
except ModelNotSupportedError:
8+
raise unittest.SkipTest("Model version not supported.")
9+
510
train_version_mismatch = False
11+
train_version_mismatch_message = "Loaded model version does not match train model version"
612
for nlp in nlps:
713
if not nlp.meta["matches_train_version"]:
814
train_version_mismatch = True
9-
train_version_mismatch_message = "Loaded model version does not match train model version"
15+
1016

1117
class FrenchSmokeTest(unittest.TestCase):
1218

1319
def setUp(self):
14-
15-
self.nlps = get_nlps('fr')
20+
self.nlps = get_nlps("fr")
1621

1722
def all_nlps(self, func):
1823
for nlp in self.nlps:

Diff for: tests/pl/test_rules_pl.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -1059,7 +1059,7 @@ def test_potential_pair_non_personal_subject_personal_verb_control_conjunction(
10591059
self,
10601060
):
10611061
self.compare_potential_pair(
1062-
"Dom i dom stoją. One powiedziały, wszystko dobrze", 0, True, 5, 2,
1062+
"Dom i dom stoją. One powiedziały, wszystko dobrze", 0, True, 5, 1,
10631063
excluded_nlps=['core_news_md', 'core_news_sm']
10641064
)
10651065

@@ -1068,7 +1068,7 @@ def test_potential_pair_non_personal_subject_personal_verb_control_z_conjunction
10681068
self,
10691069
):
10701070
self.compare_potential_pair(
1071-
"Dom z domem stoją. One powiedziały, wszystko dobrze", 0, True, 5, 2,
1071+
"Dom z domem stoją. One powiedziały, wszystko dobrze", 0, True, 5, 1,
10721072
excluded_nlps=['core_news_md', 'core_news_sm']
10731073
)
10741074

@@ -1468,12 +1468,12 @@ def test_potentially_introducing_with_preposition(self):
14681468
@unittest.skipIf(train_version_mismatch, train_version_mismatch_message)
14691469
def test_potentially_introducing_with_ten_control(self):
14701470
self.compare_potentially_introducing(
1471-
"On mieszka również z tym facetem", 5, False, excluded_nlps=['core_news_md', 'core_news_sm']
1471+
"On mieszka z tym kolegą", 4, False, excluded_nlps=['core_news_md', 'core_news_sm']
14721472
)
14731473

14741474
def test_potentially_introducing_with_ten_and_relative_clause(self):
14751475
self.compare_potentially_introducing(
1476-
"On mieszka również z tym facetem, którego znasz", 5, True,
1476+
"On mieszka z tym kolegą, którego znasz", 4, True,
14771477
excluded_nlps=["core_news_sm"]
14781478
)
14791479

0 commit comments

Comments
 (0)