Tags give the ability to mark specific points in history as being important
-
v0.5.5
f77f65b2 · ·v0.5.5 — CI only: pipeline split, Codeberg mirror, archiving, mirror issue pull-back
-
-
-
-
-
-
-
-
-
v0.3.2
3efa5f2e · ·v0.3.2 — re-tag current HEAD to publish the new agent skill to ClawHub. The prior release built fine; only the skill-publish job needed a fresh run to pick up the reusable-workflow fix (version-check no longer aborts on a new skill's 404).
-
-
v0.3.0
e33901a8 · ·v0.3.0 — ?refresh + 429 in OpenAPI + /rates/ta uses bars cache Closes the three deferred items from v0.2.0: 1. `?refresh=true` query param threaded through 24 cacheable operations. Bypasses the cache read, still writes the fresh result back. Default false — caching stays transparent. 2. `429 RATE_LIMIT_NEAR` documented in OpenAPI on every IBKR-bound operation. Body shape unchanged from v0.2.0 runtime behavior; clients can now discover it via /openapi.json instead of having to be told. 3. /rates/ta endpoints split into bars-via-cache + ta_enrich. Cache hits = zero IBKR load + fresh wickworks indicators. Every TA call also grows the goldmine. Stack: Python 3.12 + FastAPI + ib_async + Linux-native IB Gateway. 142 tests pass. ruff + bandit + pip-audit + audit-compose all clean at release. Generated clients import paths: Go: github.com/psyb0t/ibkr-httpapi/pkg/clients/go Python: pip install "git+https://github.com/psyb0t/ibkr-httpapi.git@v0.3.0#subdirectory=pkg/clients/python/ibkr-httpapi-client"
-
v0.2.0
c453c106 · ·v0.2.0 — preemptive IBKR pacing + transparent disk caching Three-tier preemptive rate-limit gate (historical / market_data / orders) wired into every IBKR-bound operation. Soft cap → WARN log, hard cap → 429 RATE_LIMIT_NEAR. Defaults sit BELOW IBKR's documented hard caps to leave headroom. Transparent disk caching for every endpoint that returns historical / quasi-static / piggyback-snapshottable data: - cache_bars: /rates + /ticks per-(class, symbol, timeframe) CSV (wickworks-shaped: time,open,high,low,close,tickVolume; epoch sec). Append-only. Builds long-term goldmine of market data. - cache_meta: long-TTL JSON for contract details, futures expiries, chain strike lists. - historian: live-snapshot piggyback on /tick (bid/ask/last + Greeks for options) + /chain (per-strike rows per snapshot). - exec_history: append-only JSONL ledger for fills + completed orders. All caches mount the host's ./data directory; back it up. Caches OFF in tests, ON by default in prod via config.yaml. 49 new tests, 142 total green. ruff + bandit + audit all clean. Generated clients import paths: Go: github.com/psyb0t/ibkr-httpapi/pkg/clients/go Python: pip install "git+https://github.com/psyb0t/ibkr-httpapi.git@v0.2.0#subdirectory=pkg/clients/python/ibkr-httpapi-client"
-
v0.1.0
20264bbd · ·v0.1.0 — initial release Spec-first IBKR HTTP API wrapper. OpenAPI 3.1.0 source-of-truth at api/v1.yaml drives FastAPI server stubs + Go + Python clients via `make generate`. 42 operations across stocks / options / futures / cfd / forex / crypto / orders / history / system, all under /v1/. Stack: Python 3.12 + FastAPI + ib_async + Linux-native IB Gateway (gnzsnz image with IBC auto-login). Loopback-only by default; bearer auth via Authorization header, constant-time compare. 93 tests pass (mocked ib_async). Bandit + ruff clean. SHA-pinned base images, hash-locked requirements with 7-day age-gate. Supply chain audited at release: `make audit` (pip-audit) + `make audit-go` (govulncheck) + `make audit-compose` (banned settings + pin discipline) all clean. Compose hardened with isolated networks, cap_drop:[ALL], no-new-privileges, read_only + tmpfs, per-service resource caps + healthchecks. Generated clients import paths: Go: github.com/psyb0t/ibkr-httpapi/pkg/clients/go Python: pip install "git+https://github.com/psyb0t/ibkr-httpapi.git#subdirectory=pkg/clients/python/ibkr-httpapi-client"