Skip to content

Commit e6a63d2

Browse files
Bump bandit from 1.8.5 to 1.9.2 (#71)
* Bump bandit from 1.8.5 to 1.9.2 Bumps [bandit](https://github.com/PyCQA/bandit) from 1.8.5 to 1.9.2. - [Release notes](https://github.com/PyCQA/bandit/releases) - [Commits](PyCQA/bandit@1.8.5...1.9.2) --- updated-dependencies: - dependency-name: bandit dependency-version: 1.9.2 dependency-type: direct:development 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 10ca104 commit e6a63d2

24 files changed

Lines changed: 367 additions & 157 deletions

.claude/CLAUDE.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
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+
This is `mapper-icij`, a Python script that converts ICIJ Offshore Leaks database files (Panama Papers, Paradise Papers, Bahamas Leaks, Offshore Leaks, Pandora Papers) to JSON format for loading into Senzing entity resolution.
8+
9+
## Development Setup
10+
11+
```bash
12+
# Create virtual environment and install all dependencies
13+
python -m venv ./venv
14+
source ./venv/bin/activate
15+
python -m pip install --upgrade pip
16+
python -m pip install --group all .
17+
18+
# External dependency: mapper-base must be accessible
19+
export PYTHONPATH=$PYTHONPATH:/path/to/mapper-base
20+
```
21+
22+
## Common Commands
23+
24+
```bash
25+
# Lint (matches CI workflow)
26+
pylint $(git ls-files '*.py' ':!:docs/source/*')
27+
28+
# Other linting tools available
29+
black src/
30+
isort src/
31+
flake8 src/
32+
mypy src/
33+
bandit -c pyproject.toml -r src/
34+
```
35+
36+
## Running the Mapper
37+
38+
```bash
39+
python src/icij_mapper.py -i /path/to/csv/files -o output.json [-l stats.json] [-a]
40+
```
41+
42+
Required input CSV files: `nodes-entities.csv`, `nodes-intermediaries.csv`, `nodes-officers.csv`, `nodes-addresses.csv`, `nodes-others.csv`, `relationships.csv`
43+
44+
## Architecture
45+
46+
The mapper (`src/icij_mapper.py`) follows a single-script design:
47+
48+
1. Loads ICIJ CSV files into a temporary SQLite database for efficient querying
49+
2. Creates SQL views to join node tables with relationships (edges)
50+
3. Processes each node type (entity, intermediary, officer, address, other) sequentially
51+
4. Outputs JSON lines format with Senzing entity resolution attributes
52+
53+
Key external dependency: Requires `base_mapper` from [mapper-base](https://github.com/Senzing/mapper-base) for company name detection and variant handling.
54+
55+
## Code Style
56+
57+
- Line length: 120 characters (black, flake8)
58+
- Import sorting: isort with black profile
59+
- See `pyproject.toml` for tool configurations and `.pylintrc` for additional pylint settings

.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/add-labels-standardized.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: add labels standardized
1+
name: Add labels standardized
22

33
on:
44
issues:

.github/workflows/add-to-project-senzing-dependabot.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: add to project senzing github organization dependabot
1+
name: Add to project senzing github organization dependabot
22

33
on:
44
pull_request:

.github/workflows/add-to-project-senzing.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: add to project senzing github organization
1+
name: Add to project senzing github organization
22

33
on:
44
issues:

.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:

0 commit comments

Comments
 (0)