Skip to content
Merged

1.8.3 #221

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
f8af791
updating version numbers
digitalghost-dev Dec 19, 2025
0618cf7
accidental commit
digitalghost-dev Dec 19, 2025
fd9ce70
adding paths to ignore
digitalghost-dev Dec 19, 2025
9e9f791
updating golden test
digitalghost-dev Dec 19, 2025
485bd18
adding type hints
digitalghost-dev Dec 19, 2025
bff8360
updating schedule
digitalghost-dev Dec 19, 2025
f98bf95
adding type hints
digitalghost-dev Dec 19, 2025
5feeb5a
returning a `struct` instead of separate values (#218)
digitalghost-dev Dec 19, 2025
b24d076
removing redundant line, using `pf.FlagSet.Usage` instead (#218)
digitalghost-dev Dec 19, 2025
1c9f0d1
updating `checkout` action to `v6`
digitalghost-dev Dec 19, 2025
caff2ea
returning a `struct` instead of separate values (#218)
digitalghost-dev Dec 21, 2025
bf2a5b7
expanding list comprehension for better legibility
digitalghost-dev Dec 21, 2025
58e2ee9
applying `ruff` formatting
digitalghost-dev Dec 22, 2025
03ad041
sorting imports
digitalghost-dev Dec 22, 2025
8720b23
removing type hint
digitalghost-dev Dec 22, 2025
46ff724
update comments
digitalghost-dev Dec 22, 2025
dab43ea
refactoring for better testability (#220)
digitalghost-dev Dec 23, 2025
4693545
adding pyrefly and bandit tooling
digitalghost-dev Dec 24, 2025
d6f1091
adding project layout section
digitalghost-dev Dec 24, 2025
a229903
updating docs
digitalghost-dev Dec 24, 2025
38d75fa
adding config file for `gitleaks`
digitalghost-dev Dec 25, 2025
472cc47
adding config file for `gitleaks`
digitalghost-dev Dec 25, 2025
d44d711
adding gitleaks ci job
digitalghost-dev Dec 25, 2025
99bd65d
adding comments for bandit security
digitalghost-dev Dec 25, 2025
a868017
adding helper function for calling the APIs
digitalghost-dev Dec 25, 2025
c75b68c
updating directory layout
digitalghost-dev Dec 26, 2025
f9fa33c
updating import paths
digitalghost-dev Dec 26, 2025
869c8cb
updating directory layout
digitalghost-dev Dec 26, 2025
5f27b48
adding data quality checks for sets table
digitalghost-dev Dec 26, 2025
854cc0a
filtering out special sets
digitalghost-dev Dec 26, 2025
f3372ac
updating reference name
digitalghost-dev Dec 26, 2025
2a352e9
adding in soda checks
digitalghost-dev Dec 26, 2025
fb7d9a9
updating function names
digitalghost-dev Dec 26, 2025
6a9663c
removing `os.Exit()` from commands, handling in `main()` (#219)
digitalghost-dev Dec 27, 2025
f725bc2
updating test coverage
digitalghost-dev Dec 27, 2025
943ee0c
updating test coverage
digitalghost-dev Dec 27, 2025
74c0c47
updating main repo photo
digitalghost-dev Dec 27, 2025
5f08eae
fixing linter issues
digitalghost-dev Dec 27, 2025
5314f9b
setting false to fail on error
digitalghost-dev Dec 27, 2025
7de5c8e
removing unused import
digitalghost-dev Dec 27, 2025
39a198c
updating function name
digitalghost-dev Dec 28, 2025
7848e99
increasing test coverage
digitalghost-dev Dec 28, 2025
3a90ede
updating project layout section
digitalghost-dev Dec 28, 2025
6bd3033
fixing typo
digitalghost-dev Dec 28, 2025
7bd34b3
updating test coverage
digitalghost-dev Dec 28, 2025
9195c88
small edits
digitalghost-dev Dec 28, 2025
f22f779
initial codspeed action commit
digitalghost-dev Dec 29, 2025
906395a
updating go version
digitalghost-dev Dec 29, 2025
68b80ee
adding paths to ignore
digitalghost-dev Dec 29, 2025
3940e1a
adding codspeed benchmarking
digitalghost-dev Dec 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 43 additions & 24 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ on:
- 'docs/**'
- 'card_data/**'
- '.gitignore'
- '.gitleaksignore'
- 'demo**'
- 'go.mod'
- 'go.sum'
Expand All @@ -30,7 +31,7 @@ on:
- main

env:
VERSION_NUMBER: 'v1.8.2'
VERSION_NUMBER: 'v1.8.3'
DOCKERHUB_REGISTRY_NAME: 'digitalghostdev/poke-cli'
AWS_REGION: 'us-west-2'

Expand All @@ -46,7 +47,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Run Gosec Security Scanner
uses: securego/gosec@master
Expand All @@ -58,17 +59,35 @@ jobs:
with:
sarif_file: results.sarif

build-linux-packages:
gitleaks:
runs-on: ubuntu-22.04
needs: [ gosec ]
needs: [gosec]
if: needs.gosec.result == 'success'

steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Gitleaks
uses: gitleaks/gitleaks-action@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITLEAKS_CONFIG: ./gitleaks.toml
GITLEAKS_VERSION: 8.29.0

build-linux-packages:
runs-on: ubuntu-22.04
needs: [gitleaks]
if: needs.gitleaks.result == 'success'
strategy:
matrix:
arch: [ amd64, arm64 ]

steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up Go
uses: actions/setup-go@v5
Expand Down Expand Up @@ -124,7 +143,7 @@ jobs:

upload-deb-packages:
runs-on: ubuntu-22.04
needs: [ build-linux-packages ]
needs: [build-linux-packages]
if: needs.build-linux-packages.result == 'success'
strategy:
matrix:
Expand Down Expand Up @@ -152,7 +171,7 @@ jobs:

upload-rpm-packages:
runs-on: ubuntu-22.04
needs: [ build-linux-packages ]
needs: [build-linux-packages]
if: needs.build-linux-packages.result == 'success'
strategy:
matrix:
Expand Down Expand Up @@ -180,7 +199,7 @@ jobs:

upload-apk-packages:
runs-on: ubuntu-22.04
needs: [ build-linux-packages ]
needs: [build-linux-packages]
if: needs.build-linux-packages.result == 'success'
strategy:
matrix:
Expand Down Expand Up @@ -208,7 +227,7 @@ jobs:

upload-summary:
runs-on: ubuntu-22.04
needs: [ upload-deb-packages, upload-rpm-packages, upload-apk-packages ]
needs: [upload-deb-packages, upload-rpm-packages, upload-apk-packages]
if: always()

steps:
Expand All @@ -228,12 +247,12 @@ jobs:

build-docs-docker-image:
runs-on: ubuntu-22.04
needs: [ gosec ]
if: needs.gosec.result == 'success'
needs: [gitleaks]
if: needs.gitleaks.result == 'success'

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
sparse-checkout: |
docs
Expand Down Expand Up @@ -267,7 +286,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Configure AWS
uses: aws-actions/configure-aws-credentials@v4
Expand Down Expand Up @@ -296,12 +315,12 @@ jobs:

lint-cli-dockerfile:
runs-on: ubuntu-22.04
needs: [ gosec ]
if: needs.gosec.result == 'success'
needs: [gitleaks]
if: needs.gitleaks.result == 'success'

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Lint Dockerfile
uses: 'hadolint/hadolint-action@v3.1.0'
Expand All @@ -311,12 +330,12 @@ jobs:

build-cli-docker-image:
runs-on: ubuntu-22.04
needs: [ lint-cli-dockerfile ]
needs: [lint-cli-dockerfile]
if: needs.lint-cli-dockerfile.result == 'success'

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up Docker Buildx
uses: 'docker/setup-buildx-action@v3.0.0'
Expand Down Expand Up @@ -347,7 +366,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Configure AWS
uses: aws-actions/configure-aws-credentials@v4
Expand All @@ -373,7 +392,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up Docker Buildx
uses: 'docker/setup-buildx-action@v3.0.0'
Expand Down Expand Up @@ -420,14 +439,14 @@ jobs:
severity-cutoff: critical

- name: Upload SARIF Report
uses: github/codeql-action/upload-sarif@v3
uses: github/codeql-action/upload-sarif@v4
with:
sarif_file: ${{ steps.scan.outputs.sarif }}

architecture-build:
runs-on: ubuntu-22.04
needs: [gosec]
if: needs.gosec.result == 'success'
needs: [gitleaks]
if: needs.gitleaks.result == 'success'

strategy:
fail-fast: false
Expand All @@ -436,7 +455,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Docker Meta
id: meta
Expand Down
39 changes: 39 additions & 0 deletions .github/workflows/codspeed.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Codspeed Benchmarks
on:
pull_request:
types: [ opened, reopened, synchronize ]
paths:
- 'card_data/**'

permissions:
contents: read
id-token: write

jobs:
benchmarks:
runs-on: ubuntu-22.04
defaults:
run:
working-directory: card_data

steps:
- name: Checkout
uses: actions/checkout@v6

- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: '3.12'

- name: Install uv
uses: astral-sh/setup-uv@v4

- name: Install dependencies
run: uv sync --dev

- name: Run the benchmarks
uses: CodSpeedHQ/action@v4
with:
working-directory: card_data
mode: simulation
run: uv run pytest pipelines/tests/ -v --codspeed
5 changes: 3 additions & 2 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
go-version: 1.24

- name: Install dependencies
run: |
Expand All @@ -28,4 +28,5 @@ jobs:
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
with:
fail_ci_if_error: false
token: ${{ secrets.CODECOV_ORG_TOKEN }}
6 changes: 3 additions & 3 deletions .github/workflows/go_lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,15 @@ permissions:

jobs:
linter:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
go-version: 1.24

- name: Lint
uses: golangci/golangci-lint-action@v7
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/go_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.24.6'
go-version: 1.24

- name: Install dependencies
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
go-version: 1.24

- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v6
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -66,3 +66,5 @@ card_data/~/
card_data/storage/
/.claude/
CLAUDE.md
REFACTORING.md
/card_data/.codspeed/
6 changes: 3 additions & 3 deletions .gitleaksignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
cmd/card/setslist.go:generic-api-key:116
cmd/card/cardlist.go:generic-api-key:157
codecov.yml:generic-api-key:2
codecov.yml:generic-api-key:2
card_data/sample_scripts/ebay.py:generic-api-key:6
card_data/sample_scripts/get_data.py:generic-api-key:9
2 changes: 1 addition & 1 deletion .goreleaser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ builds:
- windows
- darwin
ldflags:
- -s -w -X main.version=v1.8.2
- -s -w -X main.version=v1.8.3

archives:
- formats: [ 'zip' ]
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ RUN go mod download

COPY . .

RUN go build -ldflags "-X main.version=v1.8.2" -o poke-cli .
RUN go build -ldflags "-X main.version=v1.8.3" -o poke-cli .

# build 2
FROM --platform=$BUILDPLATFORM alpine:3.23
Expand Down
17 changes: 9 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<div align="center">
<img height="250" width="350" src="pokemon.svg" alt="pokemon-logo"/>
<h1>Pokémon CLI</h1>
<img width="425" src="poke-cli.png" alt="pokemon-logo"/>
<h4></h4>
<img src="https://img.shields.io/github/v/release/digitalghost-dev/poke-cli?style=flat-square&logo=git&logoColor=FFCC00&label=Release%20Version&labelColor=EEE&color=FFCC00" alt="version-label">
<img src="https://img.shields.io/docker/image-size/digitalghostdev/poke-cli/v1.8.2?arch=arm64&style=flat-square&logo=docker&logoColor=FFCC00&labelColor=EEE&color=FFCC00" alt="docker-image-size">
<img src="https://img.shields.io/docker/image-size/digitalghostdev/poke-cli/v1.8.3?arch=arm64&style=flat-square&logo=docker&logoColor=FFCC00&labelColor=EEE&color=FFCC00" alt="docker-image-size">
<img src="https://img.shields.io/github/actions/workflow/status/digitalghost-dev/poke-cli/ci.yml?branch=main&style=flat-square&logo=github&logoColor=FFCC00&label=CI&labelColor=EEE&color=FFCC00" alt="ci-status-badge">
</div>
<div align="center">
Expand All @@ -11,9 +11,10 @@
<img src="https://img.shields.io/codecov/c/github/digitalghost-dev/poke-cli?token=05GBSAOQIT&style=flat-square&logo=codecov&logoColor=00ADD8&labelColor=EEE&color=00ADD8" alt="codecov"/>
</div>

## Overview
`poke-cli` is a hybrid of a classic CLI and a modern TUI tool for viewing data about Pokémon! This is my first Go project.
View the [documentation](https://docs.poke-cli.com)!
## Pokemon CLI
`poke-cli` is a hybrid of a classic CLI and a modern TUI tool for viewing VG and TCG data about Pokémon!

View the [documentation](https://docs.poke-cli.com) on the data infrastructure in [card_data/](https://github.com/digitalghost-dev/poke-cli/tree/main/card_data) if you're interested.

* [Demo](#demo)
* [Installation](#installation)
Expand Down Expand Up @@ -95,11 +96,11 @@ Cloudsmith is a fully cloud-based service that lets you easily create, store, an
3. Choose how to interact with the container:
* Run a single command and exit:
```bash
docker run --rm -it digitalghostdev/poke-cli:v1.8.2 <command> [subcommand] [flag]
docker run --rm -it digitalghostdev/poke-cli:v1.8.3 <command> [subcommand] [flag]
```
* Enter the container and use its shell:
```bash
docker run --rm -it --name poke-cli --entrypoint /bin/sh digitalghostdev/poke-cli:v1.8.2 -c "cd /app && exec sh"
docker run --rm -it --name poke-cli --entrypoint /bin/sh digitalghostdev/poke-cli:v1.8.3 -c "cd /app && exec sh"
# placed into the /app directory, run the program with './poke-cli'
# example: ./poke-cli ability swift-swim
```
Expand Down
Loading