Releases: LumeWeb/pinner-cli
Releases · LumeWeb/pinner-cli
v0.2.0
Breaking Changes
metadatacommand removed; usepins updateinstead.
Upload and pins add now wait for pinning by default; use--no-waitto
detach.--confirm/--yesreplaced by--forceas primary flag.
Features
- add API key management commands with self-delete protection
- display new fields from updated WebsiteResponse
- add pprof subcommands for runtime profiling
- add Homebrew tap, WinGet, and Scoop package managers
- restructure CLI with pins group, wait-by-default, and unified flags
- expand test coverage, unify quota delegation, improve docs
- add generate-docs command with markdown and man page support
- switch to LumeWeb/cli-docs with JSON docs output
- add point/unpoint commands for onchain domain IPNS pointing
Fixes
- resolve API key name to UUID for post-delete warning
- resolve name-to-UUID before delete for self-key warning
- use PAT for cross-repo goreleaser, switch homebrew_casks to homebrew_taps
- use brews instead of homebrew_taps for GoReleaser v2
- correct winget package_identifier and manifest path
- revert homebrew_casks is correct for GoReleaser v2
- fix dry-run bypass, batch metadata, and metadata format bugs
- fix --file/stdin metadata, --secure flag, and --auth-token in metadata paths
- add nil guards and propagate --secure flag to all services
- add configurable context.WithTimeout to all CLI handler functions
- correct go install module path in README
- platform-specific test failures
- use GreaterOrEqual for duration assertion in PinBatch test
- add next-step guidance to point output
- display broken websites on 410 Gone
v0.1.0
Breaking Changes
- Initial release
Features
- implement core CLI functionality and authentication flow
- add auth status command and JWT token handling
- add version command
- add IPNS and websites management with SSL status support
- add DNS management commands
- add admin commands for quota and billing
- Refactor admin CLI commands and add billing overview
- admin token exchange for API tokens and portal SDK v0.1.46 upgrade
- add pricing plan period creation to pricing plan create command
- add GetPricingPlan for retrieving single pricing plan details
- add pricing plan sync commands and update portal-sdk dependency
- add website admin endpoints, window-type flag, and user-configs update
- add enforcement-policy and limit override flags to user-configs update
- expose CAR builder options in upload command
- add bench subcommand for upload and pinning performance benchmarking
- fallback to account operations when pin not found in status command
- add unpin all subcommand with safety guards
- verify pin in pinning API after account operation completes with --wait
- improve DX with domain-centric UX, validation guidance, and dns zones validate
- upgrade ipfs-sdk to v0.1.38, expose gateway CNAME guidance
- add generic wizard framework, websites wizard with validation retry
- add download, cat, and ls commands
- add operations list/get/watch commands for account operations
- add target type step (IPFS/IPNS) to website setup wizard
- differentiate DNS guidance by hosting mode, remove DIY DNS record creation
- add enable-ipns command and DRY website service setup
- name-based IPNS keys, republish command, upgrade ipfs-sdk to v0.1.44
- use SDK validation reason enums, improve website validation display
- upgrade ipfs-sdk to v0.1.48, use ValidationRecordHost for DNS records
- add GoReleaser for cross-compiled builds alongside Knope
Fixes
- resolve critical race conditions, memory leaks, and security issues
- update sdk
- migrate config path and refactor manager logic
- leave base_endpoint unset for default config
- update PinningClient mock variadic handling
- add missing GetApiWebsitesDomainSslStatusWithResponse to websites mock
- resolve code review issues
- resolve code review issues in DNS commands
- resolve code review issues
- return error from generateValidationToken
- delegate IPFS processing to ipfs-content library
- replace pkg/ipfs/client with go.lumeweb.com/ipfs-sdk
- use admin subdomain for quota/billing services
- Fix billing admin service methods to properly initialize service
- update pricing plans test to include new get subcommand
- config output, table word wrap, pterm upgrade, env var docs
- off-by-one in wrapLine hard-wrap when current line has content
- flush current line buffer before hard-wrapping long word
- require update fields for all mutation commands and DRY with requireUpdateFields helper
- add requireSetInt helper to validate int flags are non-zero
- correct --enforcement-policy to show valid server values
- dry up enforcement policy validation with slice-driven check and error message
- use Printfln for user-configs output to include newlines
- correct flag names in user-configs update help examples
- add missing Total field to human PrintBatchResult output
- resolve all linting issues across codebase
- preserve retry on temporary DNS errors after Temporary() removal
- validate poll-interval is positive to prevent NewTicker panic
- route account API calls to account endpoint, not IPFS endpoint
- return actual lookup error instead of ErrPinNotFound when operation query fails
- use authenticated account client for operation lookup fallback
- use IPFS endpoint for websites, DNS, and IPNS commands
- use IPFS endpoint for websites/dns/ipns services instead of account endpoint
- pass dns_hosting_enabled to website create/update, fix next steps for non-hosted
- use server-assigned ValidationToken in DNS records, propagate context
- support subdomain derivation for localhost while preserving bare IP behavior
- prevent Secure default from overriding file config and normalize schemeless endpoints
- detect 401/403 auth errors from boxo pinning client
- remove partial file on download write failure
- delete existing API key before creating a new one on auth
- propagate errors from ListAPIKeys and DeleteAPIKey in createOrReplaceAPIKey
- unpin all by request ID instead of deduplicating by CID
- wrap DeleteByID errors with WrapAuthError in UnpinAll
- use cmd.IsSet for partial website updates
- handle default target-type in partial website updates
- require --target-type with --cid to prevent silent default overwrite
- nil pointer dereference in managed DNS validation retry
- allow --target-type ipns without --cid for website update
- update documentation URL from docs.lumeweb.com to docs.pinner.xyz
- website wizard self-managed DNS flow
- move create website spinner to UI layer, fix pterm data race
- interpolate actual domain in wizard completion, add resolved CID to websites, add CID column to IPNS keys
- use unix.SysctlUint32 for macOS page size instead of broken vm_stat header parsing
- fetch tags before GoReleaser and revert premature v0.1.0 release