Skip to content

Commit 050d75f

Browse files
Bump sphinx-toolbox from 4.0.0 to 4.1.1 (#20)
* Bump sphinx-toolbox from 4.0.0 to 4.1.1 Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.1. - [Release notes](https://github.com/sphinx-toolbox/sphinx-toolbox/releases) - [Changelog](https://github.com/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst) - [Commits](sphinx-toolbox/sphinx-toolbox@v4.0.0...v4.1.1) --- updated-dependencies: - dependency-name: sphinx-toolbox dependency-version: 4.1.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Update to template * Fix linting issues --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: docktermj <michael@dockter.com>
1 parent a546228 commit 050d75f

21 files changed

+334
-155
lines changed

.claude/CLAUDE.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# CLAUDE.md
2+
3+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4+
5+
## Project Overview
6+
7+
mapper-spire converts Spire `enhanced_vessel_master.csv` maritime vessel data into Senzing-compatible JSON format for entity resolution. The output can be loaded into Senzing to match vessel data against other sources.
8+
9+
## Commands
10+
11+
### Run the Mapper
12+
13+
```bash
14+
python3 src/spire_mapper.py -i <input_csv> -o <output_json> [-l <log_file>]
15+
```
16+
17+
### Install Dependencies
18+
19+
```bash
20+
python -m pip install --group all .
21+
```
22+
23+
### Lint
24+
25+
```bash
26+
pylint $(git ls-files '*.py' ':!:docs/source/*')
27+
```
28+
29+
## Architecture
30+
31+
The codebase consists of a single mapper script ([spire_mapper.py](src/spire_mapper.py)) with a `mapper` class that:
32+
33+
1. Reads CSV input from Spire's `enhanced_vessel_master.csv`
34+
2. Maps vessel fields to Senzing entity format (IMO, MMSI, vessel name, call sign, etc.)
35+
3. Creates relationship records for group owners and beneficial owners (extracts organizations as separate records with `REL_POINTER`/`REL_ANCHOR` relationships)
36+
4. Outputs JSON-lines format ready for Senzing ingestion
37+
38+
Key Senzing attributes mapped: `DATA_SOURCE`, `RECORD_ID`, `RECORD_TYPE` (VESSEL or ORGANIZATION), `IMO_NUMBER`, `MMSI_NUMBER`, `VESSEL_NAME_ORG`, `CALL_SIGN`.
39+
40+
## Python Version
41+
42+
Requires Python 3.10+. CI tests against Python 3.10, 3.11, 3.12, and 3.13.

.claude/commands/senzing-code-review.md

Lines changed: 0 additions & 3 deletions
This file was deleted.

.claude/commands/senzing.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Senzing
2+
3+
- Perform the steps specified by <https://raw.githubusercontent.com/senzing-factory/claude/refs/tags/v1/commands/senzing.md>

.github/CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Default code owner
1+
# Default code owner
22

33
* @Senzing/senzing-mappers
44

.github/dependabot.yml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,15 @@
33

44
version: 2
55
updates:
6-
- package-ecosystem: "github-actions"
7-
directory: "/"
6+
- package-ecosystem: github-actions
7+
cooldown:
8+
default-days: 21
9+
directory: /
810
schedule:
9-
interval: "daily"
10-
- package-ecosystem: "pip"
11-
directory: "/"
11+
interval: daily
12+
- package-ecosystem: pip
13+
cooldown:
14+
default-days: 21
15+
directory: /
1216
schedule:
13-
interval: "daily"
17+
interval: daily

.github/workflows/claude-pr-review.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
name: Claude PR Review
22

3-
concurrency:
4-
group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }}
5-
cancel-in-progress: true
6-
73
on:
84
pull_request:
95
types: [opened, synchronize]
106

7+
concurrency:
8+
group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }}
9+
cancel-in-progress: true
10+
1111
permissions: {}
1212

1313
jobs:

.github/workflows/dependabot-approve-and-merge.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@ on:
44
pull_request:
55
branches: [main]
66

7+
concurrency:
8+
group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }}
9+
cancel-in-progress: true
10+
711
permissions: {}
812

913
jobs:

.github/workflows/lint-workflows.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
name: Lint workflows
22

33
on:
4-
push:
5-
branches-ignore: [main]
64
pull_request:
75
branches: [main]
86

7+
concurrency:
8+
group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }}
9+
cancel-in-progress: true
10+
911
permissions: {}
1012

1113
jobs:

.github/workflows/pylint.yaml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
1-
name: pylint
1+
name: Pylint
22

3-
on: [push]
3+
on:
4+
pull_request:
5+
branches: [main]
6+
7+
concurrency:
8+
group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }}
9+
cancel-in-progress: true
410

511
permissions: {}
612

@@ -12,8 +18,10 @@ jobs:
1218
contents: read
1319
runs-on: ubuntu-latest
1420
strategy:
21+
fail-fast: false
1522
matrix:
16-
python-version: ["3.9", "3.10", "3.11", "3.12"]
23+
python-version: ["3.10", "3.11", "3.12", "3.13"]
24+
timeout-minutes: 10
1725

1826
steps:
1927
- name: Checkout repository
@@ -32,8 +40,7 @@ jobs:
3240
source ./venv/bin/activate
3341
echo "PATH=${PATH}" >> "${GITHUB_ENV}"
3442
python -m pip install --upgrade pip
35-
python -m pip install --requirement development-requirements.txt
36-
python -m pip install --requirement requirements.txt
43+
python -m pip install --group all .
3744
3845
- name: Analysing the code with pylint
3946
run: |

0 commit comments

Comments
 (0)