v0.2.0
v0.2.0 (2023-11-29)
Chore
-
chore: release (
78c2dd0) -
chore: pylint (
cb567dd) -
chore: update markdownlint settings (
f2ab6db) -
chore: update markdownlint config (
d4cdccd) -
chore: update vscode settings, formatting/linting, remove pytest.ini (
17dae1d) -
chore(pyproject.toml): update project metadata (
599a1fc) -
chore(tasks): adjust test coverage location (
a80825f) -
chore(tasks): add pyright and pylint tasks (
010abbc)
Ci
-
ci: test workflow trigger (
fffcba7) -
ci: update ci.yaml workflow (
f8d00fd) -
ci: enable workflows for develop branch (
2dc6618)
Documentation
-
docs: update features (
e3bc559) -
docs: update code comments (
a94b3fe) -
docs: add special projection values to docs (
896f3fa) -
docs: update docs to recent changes (
68d821e) -
docs: update docstrings (
326f4cd) -
docs: update docstrings for ModelBase, Pyneo4jClient and NodeModel classes (
dc3ca1f) -
docs: adjust docstrings (
a44f95f) -
docs: Update todos (
37be36e) -
docs: add env variable for disabling logger to module docstring (
a79c7ee)
Feature
-
feat: add type for projections (
8f8af8a) -
feat: add option to raise exception if find_one, update_one, delete_one or disconnect methods do not find any matches (
c6a2901) -
feat(RelationshipProperty): the
replace()method now moves all relationships between current and old node to new node (0e37bf3) -
feat: handle sync and async hooks differently, relationships method now supports filters, projections and options (
27901e4) -
feat(NodeModel): exclude relationship properties from modified_properties, auto-fetch now raises an exception if a relationship or node model which is auto fetched is not registered (
873e7ac) -
feat(RelationshipProperty): relationship() has been renamed to relationships(), now returns a list of relationships instead of a single relationship or None (
8bf70a7) -
feat(MultiHopFilter): support $direction filter for path (
d740679) -
feat(Pyneo4jClient): Rename Neo4jClient to Pyneo4jClient (
cf71356)
Fix
-
fix: find_many queries now return correct results if options and projections are used together (
63730fb) -
fix: parse query result to model if raw result, prevent usage of lists with non primitive values (
f600700) -
fix(validators): change QueryDataTypes to Any to prevent pydantic from changing data type when validating filters (
d195648) -
fix: st _id field in relationship when inflating (
79dc118) -
fix(NodeModel): raise UnregisteredModel exception if target model for find_connected_nodes has not been registered (
ae92801) -
fix(projections, auto-fetch): fix non-distinct values being returned when using projections, fix missing auto-fetched nodes when multiple returned models were connected to the same auto-fetched node (
7170623) -
fix(typings): add typing-extensions as dependency, adjust types so required keys are actually required (
c65f236) -
fix(validators): add default values and adjust types for QueryOptionModel validator (
a83f7e7) -
fix: Remove unused if statement in eq method, raise ModelImportFailure exc if id is missing in dict (
435c971) -
fix: fix typings for RelationshipFilters and RelationshipPropertyFilters (
24458bd)
Refactor
-
refactor(RelationshipProperty): use Optional instead of Union with None (
2d381b9) -
refactor(RelationshipProperty): pass source node to relationship-property hooks instead of self (
539f6f9) -
refactor: rename NoResultsFound to UnexpectedEmptyResult (
593ac58) -
refactor: use LiteralString from typing_extensions package to stay compatible with python < 3.11 (
05c344d) -
refactor(RelationshipProperty): add some checks for empty queries adn ensure_alive method, refactor find_connected_nodes method (
2a848fc) -
refactor(NodeModel): split class name into substrings when falling back to auto labels (
3992266) -
refactor(ModelBase): Change modified_properties from list to set (
597100f) -
refactor(property_options): remove unused magic method (
75981f3) -
refactor: change relationship variable from build param to function param (
6d331b7)
Test
-
test: update tests to new method params and rename exception (
657dff4) -
test: add remaining tests for RelationshipProperty (
1f85ea9) -
test: consume neo4j result after session is done (
f28ebfe) -
test: unit and integration tests for RelationshipModel class (
8db2de7) -
test: remove almost all separate testmodels and add fixture for setting up test db with test data, modify tests to use new fixture (
c68fcb1) -
test(NodeModel): remaining tests for NodeModel class (
aa5e0e0) -
test(NodeModel): tests for create, update, delete, refresh, delete_many, delete_one, count, find_many, find_one, update_many and update_one methods (
bca8a46) -
test(NodeModel): test cases for find_one method (
da6c1f0) -
test(NodeModel): add tests for NodeModel class (
fdc3785) -
test: rename test classes, add more tests (
8b2cefc) -
test: add tests to client for batching, TransactionInProgress and drop_indexes failure (
eea08bc) -
test: Tests for ModelBase class (
5ed0d1b) -
test: Add tests for shared methods (
8a6f358) -
test: expand test coverage, move fixtures and utils (
fbaabe9)
Unknown
- Merge branch 'develop' (
d20ea86)