diff --git a/README.md b/README.md index 6104f70..0d38610 100644 --- a/README.md +++ b/README.md @@ -97,6 +97,15 @@ The defaults work for local development. Notable variables in `src/infra/.env`: | `RESOLVER_CONFIG_PATH` | *(bundled `/app/config/resolver.yaml`)* | Path to the Splink resolver config YAML. Override to use a custom resolver config outside Docker. | | `DUCKDB_PATH` | *(resolver default)* | Path to the DuckDB database file. Leave unset to use the path defined in `resolver.yaml`. | +> **Schema or configuration changes:** If you have modified `src/config/resolver.yaml` or +> `src/config/rdf_mapping.yaml` and the DuckDB database has already been initialised, +> remove the data volume before restarting to avoid schema mismatch errors: +> ```bash +> docker volume rm ere-local_ere-data +> # or for a full clean slate: +> make infra-down-volumes +> ``` + ### 3. Start the stack ```bash @@ -108,6 +117,12 @@ Note: `make infra-up` creates a shared external network `ersys-local` used for c To remove it manually: `docker network rm ersys-local` ``` +> **Rebuilding with a clean cache:** If you have upgraded the source or made changes to the +> image and need to discard Docker layer cache, run: +> ```bash +> make infra-rebuild-clean +> ``` + | Service | URL / Port | |---------|-----------| | Redis | `localhost:6379` | @@ -355,5 +370,4 @@ Contributions are welcome. Please open an issue before submitting a pull request - Keep commits small and well-described - Branch naming: `feature//` (e.g. `feature/ERS1-124/conflict-detection`) -For active tasks and current work, edit [WORKING.md](WORKING.md). For development workflow and architecture guidelines, see [CLAUDE.md](.claude/CLAUDE.md). diff --git a/src/VERSION b/src/VERSION index 9084fa2..b2d500d 100644 --- a/src/VERSION +++ b/src/VERSION @@ -1 +1 @@ -1.1.0 +1.1.0-rc.3 diff --git a/src/filters/fortify-exclusion.properties b/src/filters/fortify-exclusion.properties new file mode 100644 index 0000000..1db3bd3 --- /dev/null +++ b/src/filters/fortify-exclusion.properties @@ -0,0 +1 @@ +excludePatterns=**/docs/**/*,**/test/**/* diff --git a/src/filters/odc-exclusion.properties b/src/filters/odc-exclusion.properties new file mode 100644 index 0000000..1db3bd3 --- /dev/null +++ b/src/filters/odc-exclusion.properties @@ -0,0 +1 @@ +excludePatterns=**/docs/**/*,**/test/**/* diff --git a/src/infra/.env.example b/src/infra/.env.example index 1b9f044..ea0bb09 100644 --- a/src/infra/.env.example +++ b/src/infra/.env.example @@ -6,6 +6,10 @@ # When running inside the full ERSys stack, the parent project's .env covers these. # --- Redis --- +# When running the demo from the host machine (poetry run python demo/demo.py), +# the Docker service name 'ersys-redis' is not resolvable from the host. Set +# REDIS_HOST=localhost here before running the demo. The ERE container reads this +# file at startup, so restore the original value before restarting the stack. REDIS_HOST=ersys-redis REDIS_PORT=6379 REDIS_DB=0 diff --git a/src/poetry.lock b/src/poetry.lock index 20cd36c..28adf51 100644 --- a/src/poetry.lock +++ b/src/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.3.4 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.3.2 and should not be changed by hand. [[package]] name = "altair" @@ -538,7 +538,7 @@ all = ["adbc-driver-manager", "fsspec", "ipython", "numpy", "pandas", "pyarrow"] [[package]] name = "ers-spec" -version = "1.0.0" +version = "1.1.0" description = " The core components for the Entity Resolution System (ERS) components.\n\n The ERS is a pluggable entity resolution system for data transformation pipelines.\n" optional = false python-versions = ">=3.12,<4.0" @@ -552,8 +552,8 @@ pydantic = ">=2.10.6,<3.0.0" [package.source] type = "git" url = "https://github.com/OP-TED/entity-resolution-spec.git" -reference = "release/1.0.0" -resolved_reference = "457ae516cb1894a3f0ea3786ae05b355785c2f12" +reference = "release/1.1.0" +resolved_reference = "0565b2ddf3d5a11851128a80abed08f4de950080" subdirectory = "src" [[package]] @@ -2603,4 +2603,4 @@ requests = ">=2.0,<3.0" [metadata] lock-version = "2.1" python-versions = ">=3.12,<3.15" -content-hash = "20f977ccb294fd1c656b2b76eaa3c546bf7eddf5cdea1226000bbc7c0f28b8c8" +content-hash = "a74fb6a86c6e0f5bd7163394aeceb779b6c13ab388a20b1f8727d6c84d32c92b" diff --git a/src/pyproject.toml b/src/pyproject.toml index 1c380ff..3c1e981 100644 --- a/src/pyproject.toml +++ b/src/pyproject.toml @@ -3,7 +3,7 @@ name = "ere-basic" version = "1.1.0" description = "A basic implementation of the Entity Resolution Engine (ERE)." authors = [ - {name = "Meaningfy",email = "hi@meaningfy.ws"} + {name = "Publications Office of the European Union"} ] readme = "../README.md" requires-python = ">=3.12,<3.15" @@ -48,7 +48,7 @@ rdflib = "7.6.0" pyyaml = "6.0.3" # TODO: should we have a registry? -ers-spec = { git = "https://github.com/OP-TED/entity-resolution-spec.git", branch = "release/1.0.0", subdirectory = "src" } +ers-spec = { git = "https://github.com/OP-TED/entity-resolution-spec.git", branch = "release/1.1.0", subdirectory = "src" } [tool.pytest.ini_options]