Skip to content

Commit 35932ad

Browse files
chore: Change class and decorators locations to match new layout (#44)
- In general, ai.timefold.solver.core.api.x and its subpackages -> timefold.solver.x. - Exception for ai.timefold.solver.core.api.solver, which it and its subpackages -> timefold.solver. - ai.timefold.solver.core.x and its subpackages -> timefold.solver.x (test and config). - Use dynamic __all__ when not TYPE_CHECKING for score and domain, since they have some classes that require the JVM to be started When TYPE_CHECKING, there are stub classes that the TYPE_CHECKER will see. - Remove `@incremental_score_calculator` decorator, since it been replaced by `IncrementalScoreCalculator` ABC. - Create an empty Constraint stub so users can reference it in their type signatures without importing something from Java.
1 parent 2708167 commit 35932ad

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+363
-397
lines changed

setup.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,11 +98,16 @@ def find_stub_files(stub_root: str):
9898
'License :: OSI Approved :: Apache Software License',
9999
'Operating System :: OS Independent'
100100
],
101-
packages=['timefold.solver', 'timefold.solver.api', 'timefold.solver.annotation',
102-
'timefold.solver.config', 'timefold.solver.constraint', 'timefold.solver.score',
103-
'timefold.solver.test', 'timefold.solver.valuerange',
101+
packages=['timefold.solver',
102+
'timefold.solver.config',
103+
'timefold.solver.domain',
104+
'timefold.solver.heuristic',
105+
'timefold.solver.score',
106+
'timefold.solver.test',
104107
'jpyinterpreter',
105-
'java-stubs', 'jpype-stubs', 'ai-stubs'],
108+
'java-stubs',
109+
'jpype-stubs',
110+
'ai-stubs'],
106111
package_dir={
107112
'timefold.solver': 'timefold-solver-python-core/src/main/python',
108113
'jpyinterpreter': 'jpyinterpreter/src/main/python',

tests/test_collectors.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from timefold.solver.api import *
2-
from timefold.solver.annotation import *
1+
from timefold.solver import *
2+
from timefold.solver.domain import *
33
from timefold.solver.score import *
44
from timefold.solver.config import *
5-
from timefold.solver.constraint import *
65

76
from dataclasses import dataclass, field
87
from typing import Annotated, List

tests/test_constraint_streams.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from timefold.solver.api import *
2-
from timefold.solver.annotation import *
1+
from timefold.solver import *
2+
from timefold.solver.domain import *
33
from timefold.solver.score import *
44
from timefold.solver.config import *
5-
from timefold.solver.constraint import *
65

76
import inspect
87
import re

tests/test_constraint_verifier.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import pytest
22

3-
from timefold.solver.annotation import *
3+
from timefold.solver.domain import *
44
from timefold.solver.score import *
55
from timefold.solver.config import *
6-
from timefold.solver.constraint import *
76
from timefold.solver.test import *
87

98
from typing import Annotated, List

tests/test_custom_shadow_variables.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
from typing import Annotated, Optional, List
22
from dataclasses import dataclass, field
33

4-
from timefold.solver.api import *
5-
from timefold.solver.annotation import *
4+
from timefold.solver import *
5+
from timefold.solver.domain import *
66
from timefold.solver.config import *
7-
from timefold.solver.constraint import *
87
from timefold.solver.score import *
98

109

tests/test_domain.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
1-
from timefold.solver.api import *
2-
from timefold.solver.annotation import *
1+
from timefold.solver import *
2+
from timefold.solver.domain import *
33
from timefold.solver.config import *
4-
from timefold.solver.constraint import *
54
from timefold.solver.score import *
6-
from timefold.solver.valuerange import *
75

86
from dataclasses import dataclass, field
97
from typing import Annotated, Optional, List

tests/test_easy_score_calculator.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
from timefold.solver.api import *
2-
from timefold.solver.annotation import *
1+
from timefold.solver import *
2+
from timefold.solver.domain import *
33
from timefold.solver.config import *
44
from timefold.solver.score import *
55

tests/test_incremental_score_calculator.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from timefold.solver.api import *
2-
from timefold.solver.annotation import *
1+
from timefold.solver import *
2+
from timefold.solver.domain import *
33
from timefold.solver.config import *
44
from timefold.solver.score import *
5-
from timefold.solver.constraint import *
65

76
import pytest
87
from dataclasses import dataclass, field
@@ -315,7 +314,6 @@ def get_indictment_map(self):
315314

316315
def test_error_message_for_missing_methods():
317316
with pytest.raises(TypeError): # Exact error message from ABC changes between versions
318-
@incremental_score_calculator
319317
class IncrementalScoreCalculatorMissingMethods(IncrementalScoreCalculator):
320318
def before_entity_added(self, entity):
321319
pass

tests/test_inverse_relation.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from timefold.solver.api import *
2-
from timefold.solver.annotation import *
1+
from timefold.solver import *
2+
from timefold.solver.domain import *
33
from timefold.solver.config import *
44
from timefold.solver.score import *
5-
from timefold.solver.constraint import *
65

76
from dataclasses import dataclass, field
87
from typing import Annotated, List

tests/test_pinning.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from timefold.solver.api import *
2-
from timefold.solver.annotation import *
1+
from timefold.solver import *
2+
from timefold.solver.domain import *
33
from timefold.solver.config import *
44
from timefold.solver.score import *
5-
from timefold.solver.constraint import *
65

76
from dataclasses import dataclass, field
87
from typing import Annotated, List

0 commit comments

Comments
 (0)