Skip to content

1.8.9#242

Merged
digitalghost-dev merged 13 commits intomainfrom
1.8.9
Feb 6, 2026
Merged

1.8.9#242
digitalghost-dev merged 13 commits intomainfrom
1.8.9

Conversation

@digitalghost-dev
Copy link
Owner

@digitalghost-dev digitalghost-dev commented Feb 6, 2026

Summary by CodeRabbit

  • Chores

    • Bumped release/version to v1.8.9 across builds, CI, packaging and images; added Python lint and Python type-check workflows; renamed Golang lint workflow.
  • Documentation

    • Updated Docker usage examples and badges to v1.8.9.
  • Improvements

    • UI: added note clarifying prices are for normal card variations.
    • Extraction: expanded filtering to skip more cosmetic variants and added support for a new set identifier.
    • Pipelines: renamed pipeline identifiers, set a model materialization to table, and adjusted a row-count expectation.
  • Tests

    • Added comprehensive tests for JSON retrieval and secret handling.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 6, 2026

📝 Walkthrough

Walkthrough

Version strings bumped to v1.8.9 across build/packaging and docs; pipeline job variables renamed; TCG set target switched to me02.5 with expanded variant filtering and product mapping; added tests for JSON and secret retrievers; minor UI and whitespace edits.

Changes

Cohort / File(s) Summary
Version & Release Metadata
/.github/workflows/ci.yml, /.goreleaser.yml, Dockerfile, nfpm.yaml, card_data/pipelines/poke_cli_dbt/dbt_project.yml
Bumped release/version strings to v1.8.9 in CI, goreleaser, Docker ldflags, nfpm, and dbt project; added models.poke_cli_dbt.materialized: table.
Documentation & Test Fixture
README.md, testdata/main_latest_flag.golden
Updated README badges and Docker examples and bumped golden test label to reflect new version tags.
Pipeline Job Renames
card_data/pipelines/definitions.py
Renamed public pipeline variables: pricing_pipeline_jobpricing_pipeline, series_pipeline_jobseries_pipeline, sets_pipeline_jobsets_pipeline; updated schedule targets and defs.jobs references.
TCG Extraction & Pricing
card_data/pipelines/defs/extract/tcgcsv/extract_pricing.py, card_data/pipelines/defs/extract/tcgdex/extract_cards.py
Added me02.524541 to SET_PRODUCT_MATCHING; broadened skip-variant patterns in pricing extraction; switched TCGDex set target from me02 to me02.5.
Validation Update
card_data/pipelines/soda/checks_sets.yml
Adjusted expected row_count for sets from 39 → 40.
New Tests
card_data/pipelines/tests/json_retriever_test.py, card_data/pipelines/tests/secret_retriever_test.py
Added pytest suites covering fetch_json and secret retrieval (success cases, HTTP errors, timeouts, JSON errors, cache errors, and edge cases).
Python CI & Typing
.github/workflows/python_lint.yml, .github/workflows/python_typing.yml
Added Python lint workflow (ruff) and a Python type-check workflow for changes under card_data/**.
Pydantic import cleanup
card_data/pipelines/defs/extract/tcgdex/extract_sets.py
Removed unused HttpUrl import.
UI & Minor Formatting
cmd/card/cardlist.go, cmd/card/cardlist_test.go, cmd/card/imageviewer.go, cmd/card/setslist.go, cmd/move/move.go, connections/connection.go
Minor UI text addition in cardlist and several whitespace/formatting tweaks; no behavioral changes.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • 1.8.6 #232: Related version-string bumps across CI, goreleaser, Dockerfile, README, and nfpm (same release metadata files).
  • 1.8.7 #235: Related changes renaming pipeline job symbols and updating definitions referenced in card_data/pipelines/definitions.py.
  • 1.8.2 #217: Related updates to pricing extraction and TCG set targeting (me02.5 / variant filtering / product mapping).

Poem

🐰 I hopped through code with twitchy feet,
Bumped the tags and tidyed the sheet,
Pipelines got names that sing,
Tests now guard each secret thing,
A carrot cheer for v1.8.9! 🥕

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title '1.8.9' is vague and generic, providing no meaningful context about what the pull request changes despite substantial modifications across version strings, pipeline definitions, test additions, and workflow configurations. Replace the title with a descriptive summary of the main changes, such as 'Release version 1.8.9' or 'Bump version to 1.8.9 and add pipeline/workflow improvements' to clearly communicate the changeset's purpose.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed Docstring coverage is 91.30% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch 1.8.9

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codspeed-hq
Copy link

codspeed-hq bot commented Feb 6, 2026

CodSpeed Performance Report

Merging this PR will not alter performance

Comparing 1.8.9 (2612e63) with main (9bd620f)

Summary

✅ 4 untouched benchmarks
🆕 18 new benchmarks

Performance Changes

Benchmark BASE HEAD Efficiency
🆕 test_fetch_secret_missing_key N/A 2.8 ms N/A
🆕 test_fetch_secret_empty_json_object N/A 2.8 ms N/A
🆕 test_fetch_n8n_webhook_secret_cache_raises N/A 2.8 ms N/A
🆕 test_fetch_n8n_webhook_secret_invalid_json N/A 2.8 ms N/A
🆕 test_fetch_secret_cache_raises N/A 2.8 ms N/A
🆕 test_fetch_n8n_webhook_secret_success N/A 2.8 ms N/A
🆕 test_fetch_secret_success N/A 2.8 ms N/A
🆕 test_fetch_json_http_404 N/A 1.8 ms N/A
🆕 test_fetch_secret_invalid_json N/A 2.8 ms N/A
🆕 test_fetch_json_http_500 N/A 1.8 ms N/A
🆕 test_fetch_n8n_webhook_secret_empty_json_object N/A 2.8 ms N/A
🆕 test_fetch_json_timeout N/A 1.5 ms N/A
🆕 test_fetch_json_empty_object N/A 1.7 ms N/A
🆕 test_fetch_json_with_nested_data N/A 1.8 ms N/A
🆕 test_fetch_n8n_webhook_secret_missing_key N/A 2.8 ms N/A
🆕 test_fetch_json_connection_error N/A 1.5 ms N/A
🆕 test_fetch_json_invalid_json N/A 1.8 ms N/A
🆕 test_fetch_json_success N/A 1.8 ms N/A

@codecov
Copy link

codecov bot commented Feb 6, 2026

Codecov Report

❌ Patch coverage is 66.66667% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
cmd/card/imageviewer.go 0.00% 1 Missing ⚠️
Files with missing lines Coverage Δ
cmd/card/cardlist.go 68.27% <100.00%> (ø)
cmd/card/setslist.go 68.60% <ø> (ø)
cmd/move/move.go 90.00% <100.00%> (ø)
connections/connection.go 87.30% <ø> (ø)
cmd/card/imageviewer.go 69.09% <0.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@card_data/pipelines/tests/json_retriever_test.py`:
- Around line 113-126: The test test_fetch_json_custom_timeout currently only
checks the response body and doesn't verify the timeout argument is forwarded to
fetch_json; change the test to patch requests.get (e.g., with
unittest.mock.patch or monkeypatch) to capture its call kwargs, call
fetch_json("https://api.example.com/data", timeout=5), and assert that the
patched requests.get was invoked with timeout=5; reference fetch_json and
test_fetch_json_custom_timeout to locate where to add the patch and the
assertion.
🧹 Nitpick comments (3)
card_data/pipelines/tests/secret_retriever_test.py (2)

1-4: sys.path manipulation for imports.

Consider configuring the test runner (e.g., via pyproject.toml or a conftest.py with sys.path adjustment) so individual test files don't need this boilerplate. Not blocking, just a maintainability note.


14-14: Prefix unused mock_get_session with _ to silence Ruff ARG001.

The @patch for botocore.session.get_session is necessary to prevent real AWS calls, but the injected mock is never referenced. Prefixing the parameter with _ across all ten tests communicates intent and satisfies the linter.

Proposed fix (apply to all test functions)
-def test_fetch_secret_success(mock_get_session, mock_secret_cache_cls):
+def test_fetch_secret_success(_mock_get_session, mock_secret_cache_cls):
card_data/pipelines/tests/json_retriever_test.py (1)

1-4: Same sys.path manipulation note as the sibling test file.

@digitalghost-dev digitalghost-dev linked an issue Feb 6, 2026 that may be closed by this pull request
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@README.md`:
- Around line 33-34: Add a blank line between the image markdown
"![demo-tcg](https://poke-cli-s3-bucket.s3.us-west-2.amazonaws.com/poke-cli-card-v1.8.8.gif)"
and the horizontal rule marker "---" so the three dashes are parsed as a
thematic break instead of a setext-style heading (update the README.md where the
image link and the '---' occur).
🧹 Nitpick comments (2)
card_data/pipelines/tests/json_retriever_test.py (1)

1-4: Consider using a conftest.py or packaging setup instead of sys.path manipulation.

Inserting into sys.path at runtime is fragile and can mask import issues. A conftest.py at the card_data level or an editable install (pip install -e .) would make imports work cleanly without path hacking.

.github/workflows/python_lint.yml (1)

31-32: Consider pinning the Ruff version for reproducible lint results.

uv tool install ruff installs the latest version, meaning a new Ruff release could introduce new lint rules or change behavior and break this workflow unexpectedly. Pinning (e.g., uv tool install ruff==0.9.x) gives you control over when to upgrade.

@digitalghost-dev digitalghost-dev merged commit e14d9ef into main Feb 6, 2026
10 checks passed
@digitalghost-dev digitalghost-dev deleted the 1.8.9 branch February 6, 2026 23:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Ascended Heroes card list

1 participant