You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Highlights
Ownership data is current again. Since June 2026 IDX publishes the monthly "Pemegang Saham di Atas 1%" list as XLSX on the Data Kepemilikan Saham page instead of a PDF announcement. idx ownership discover finds it there and idx ownership import reads it. The published snapshot (idx ownership sync) now covers 2026-06-30, 2026-07-31 and 2026-08-31.
New install channels:curl -fsSL https://raw.githubusercontent.com/0xrsydn/idx-cli/main/install.sh | sh and npm (npx idx-cli, npm i -g idx-cli). Both use prebuilt binaries with SHA-256 verification.
Sync accepts larger snapshots. v0.2.3 and earlier cap snapshot downloads at 10 MiB. This version accepts up to the manifest's size (at most 1 GiB), which leaves room for more months of history later.
Ownership
XLSX parser for the above-1% holder register (#25). Only the exact 12-column layout is accepted, so the daily above-5% and investor-type workbooks are rejected instead of mis-imported. Both the Feb/Mar 2026 INVESTOR_TYPE and the later INVESTOR_CLASSIFICATION headers are handled.
Discovery merges the announcement API with the data page (#26). Downloads retry across curl-impersonate browser profiles, since IDX's Cloudflare rejects curl_chrome142 on the new page.
ownership import --url accepts .xlsx.
Snapshot sync: the download is bounded by the manifest's size_bytes, and a body larger than advertised is rejected (#31).
Snapshot publishing (maintainers)
build-latest-ownership-snapshot.sh --history <n> includes earlier months (#27). --max-snapshot-bytes (default 10 MiB) refuses snapshots that released clients can't download (#31).
Idempotent, packaged publisher: nix build .#ownership-publisher gives idx-ownership-publish and idx-ownership-freshness. Every run ends in one RESULT: line (#29). Upload verification and partial-publish recovery (#30).
Distribution
Release workflow builds static musl Linux (x64, arm64) and macOS (arm64, x64) binaries, plus SHA256SUMS and install.sh (#22, #24).
npm wrapper with checksum-verified postinstall (#22). pnpm 10+ and bun need --allow-build / --trust.
Compatibility
The snapshot manifest is still schema v1. v0.2.3 clients keep syncing as long as snapshots stay at or below 10 MiB, which the publisher enforces.
Discover JSON gains format and as_of_date fields; existing fields are unchanged.