23 KiB
Changelog (docker-finance)
1.0.0-rc.1 - 2025-01-23
⚠️ Breaking changes for this release candidate ⚠️
Tip: when in doubt, regenerate your entire setup. Your environment and accounts will be backed up in the process.
Repo
🚨 For installation:
- ❗ MUST re-run the installation procedure in README.md
- Reinstall on a freshly pruned system
- Remove all previous docker-finance related images, clean cache
- Reinstall on a freshly pruned system
Client
🚨 For all environments and applicable configurations:
-
❗MUST re-run
gencommand- Run with arg
type=env- MUST manually copy over your previous settings (except for
DOCKER_FINANCE_DEBUG)
- MUST manually copy over your previous settings (except for
- Run with arg
-
❗SHOULD re-run
gencommand- Run with args
type=flow,superscript config=subscript,hledger,fetch confirm=off- MUST manually copy over your previous settings
- Run with args
Container
🚨 For coinbase account:
- ❗MUST re-run
fetchcommand- Run
fetch account=coinbasefor all applicable years - Run
fetch all=pricefor all applicable years
- Run
🚨 For all accounts and subaccounts:
-
❗MUST re-run
importcommand- Run
importstarting from oldest available year- MUST update any custom rules or manual entries to reflect subaccount/network changes
- Run
-
❗MUST re-run
taxescommand- Run
taxes all=allfor all applicable years
- Run
🧠 Contributors
- Aaron Fiore
🛠️ Fixes / Updates
Repo
README
- Fix 'dev-tools' build instructions, misc updates (#171)
Client
Dockerfiles
- Version updates for hledger-suite image (#156)
- Bump
hledgerto 1.41 - Change resolver for
hledger-iadd
- Bump
docker-finance.d (configurations)
- Add Coinomi example to fetch (#170)
src/docker
- Fix typo in usage help (#158)
Container
src/finance
-
lib_hledger- Remove
-warg tohledger-ui(#157)
- Remove
-
lib_fetch
src/hledger-flow
-
BlockFi / Ledger / Trezor
- Fix fees subaccount ordering (#165)
-
Electrum
- Fix calculating 'No Data' (#138)
-
Capital One (bank)
- Fix direction (#132)
-
Coinbase
-
Coinbase Pro
- Fix default account2 for sells (#166)
src/finance | src/hledger-flow
- Breaking: Add compliance for IRS Rev. Proc. 2024-28 (#163) (#174)
- Creates per-wallet / per-account compliance for IRS Rev. Proc. 2024-28
- New obfuscated keymap now creates a unique indentifier per-wallet / per-account
- Removes support for anonymized ("universal pool") reports
Client/Container
- Remove
fetchsupport for defunct exchanges/services (#169)- Bittrex
- Celsius
- Coinbase Pro
☀️ Features / Enhancements
Repo
README
Client
docker-finance.d (configurations)
- Add filters for .in files to produce less cluttered default configs (#147)
- Rewrite profile default subscript (#148)
src/docker
- Enable linting of client-side (host) plugins (#136)
Container
src/finance
-
completion- Add
hledgercommands (#139)
- Add
-
edit -
fetch- Add debug logging to Gemini (#153)
-
plugins- finance:
timew_to_timeclock: print all tags (#133)
- finance:
src/hledger-flow
-
Algorand
-
Electrum
- Use transaction label for tax memo (#168)
-
ethereum-based
-
Ledger
- Add more compound tokens (#164)
-
Vultr
Client / Container
-
Breaking: Complete build overhaul, build optimizations (#143)
- Creates a separation of concerns for 'local' and 'remote' building
- Adds remote image 'hledger-suite'
- Provides the latest versions of all
hledgerrelated binaries - No longer relies on package maintainers / out-dated packages
- Provides the latest versions of all
- Adds remote image 'docker-finance'
- Provides base image for 'finance' and 'dev-tools' images
- Removes previous
hledgerrelated build modules- Removes building any
hledgerrelated binaries locally
- Removes building any
- Removes 'experimental' build
- End-user can use local custom Dockerfile and/or custom tag instead
- Updates the 'default' | 'slim' | 'tiny' | 'micro' build types
- Refactors build type requirements into separate build modules
- Huge optimizations
- Vastly improves build times
- ~60% faster w/ a fresh build
- ~60%-90% faster rebuild (depending on image type)
- Vastly improves image sizes
- e.g., 'default' Arch Linux image size is ~50% smaller
- Vastly improves build times
- Cleanup and clarify default generated custom Dockerfiles
-
Breaking: Complete
genoverhaul,genimprovements (#144)- New
genarguments (seegen help) subprofile.bashis nowsubscript.bash- Changes filename within superscript source
- MUST run client (host) command
edit type=superscriptand edit manually
- MUST run client (host) command
- Changes actual filename within subprofile's docker-finance.d
- MUST manually rename the subprofile's script file from
subprofile.bashtosubscript.bash
- MUST manually rename the subprofile's script file from
- Changes filename within superscript source
- New
-
Breaking: Implement debug log-levels (#149)
-
completionpluginsenhancements (#155)
-
plugins- Allow path depth when loading plugins (#134)
-
Refactoring/enhancements related to
hledger(#145)
🌴 Misc / Other
Client
Dockerfiles
- Optimize by moving useradd (#128)
docker-finance.d (configurations)
- Remove base cmd from subscript (#150)
src/docker
Container
- Run linter (#137)
Client/Container
- Refactor global basename (#160)
1.0.0-beta.3 - 2024-08-20
⚠️ Breaking changes for this pre-release ⚠️
Repo
❗ For installation:
- 🚨 MUST re-run the installation procedure in README.md
Client
❗ For client-side environment:
-
🚨 MUST re-run
gencommand- Regenerate client env and Dockerfile (select 'Y' to all):
├─ Client-side environment found, backup then generate new one? [Y/n] │ └─ Edit (new) environment now? [Y/n] │ ├─ Custom (optional) Dockerfile found, backup then generate new one? [Y/n] │ └─ Edit (new) custom Dockerfile now? [Y/n] - Regenerate client/container (select 'Y' to all):
- Superscript:
│ ├─ Generate (or update) joint client/container shell script (superscript)? [Y/n] │ │ └─ Edit (new) superscript now? [Y/n] - Subprofile shell script:
│ ├─ Generate (or update) container flow configs and/or accounts? [Y/n] │ │ │ │ │ ├─ Generate (or update) subprofile's shell script? [Y/n]
- Superscript:
- Take note of the updated default environment
- Default directory 'hledger-flow' is now 'finance-flow'
- Your client-side 'hledger-flow' directory can also be renamed
- Regenerate client env and Dockerfile (select 'Y' to all):
-
🚨 MUST re-run
buildcommand- Remove (
rm) previous images - Clean build cache (
docker system prune) - Re-run a fresh
buildof your docker-finance
- Remove (
Tip: when in doubt, regenerate your entire setup. Your environment and accounts will be backed up in the process.
Container
Aside from changes above, there are no breaking changes for container.
❗ For accounts:
- 🚨 SHOULD re-run
importcommand- Applicable only to Capital One (bank) account (#124)
🧠 Contributors
- Aaron Fiore
🛠️ Fixes / Updates
Repo
- CHANGELOG.md (#126)
- Add v1.0.0-beta.3
- README.md (
cab7551) (d86da4b) (3bfa39d) (#119)- Update to reflect latest impl
Client
- Bump manifest version to v1.0.0-beta.3 (#127)
- Change environment defaults for
DOCKER_FINANCE_*_FLOW(#114) - Dockerfiles updates (#121) (#123)
- Add package
yq(kislyuk's), removeshyaml - Remove
pipxfrom Dockerfiles, replace with packagedcsvkit - Comment all optional userspace packages
- Add package
lib_gen(#108)- Refactor flow generation
- Fix missing copy of default custom Dockerfile
- Miscellaneous fixes (#106) (#107) (#115) (#117)
- Fix usage typo
- Remove share.d from $PATH
- Clarify
hledger(notledger), update usage help / completion - Disable shellcheck warning for
DOCKER_FINANCE_DEBUG
- New installation method (#104) (#105)
- Add
install.bash - Add
dfialias to Mostly-Unified CLI
- Add
- Update Doxygen (#113)
- Bump to 1.9.8
- Change 'modules' to 'topics'
- Bump to 1.9.8
Container
- Capital One (bank) (#124)
- Add interest income
fetchfixes (#102)- Throw errors with nested status
- Catch unrecoverable CoinGecko error
- Fix for when 'all' years are requested without paid-plan API key
☀️ Features / Enhancements
Client / Container
- Add bash completion (#103) (#112)
- Add plugins support (#109) (#111) (#118) (#120) (#122)
- Add
pluginscommand - Add documentation, examples
- Add proxychains-ng / Tor plugin
- Add
timewarriorto hledger timeclock plugin
- Add
- Add
timescommand (timewarrior) (#110)
🌴 Misc / Other
Client
lib_docker(#125)- Add tag to container name
- Remove platform from network name
Client / Container
1.0.0-beta.2 - 2024-07-30
⚠️ Breaking changes for this pre-release ⚠️
Client
❗ For all environments and applicable configurations:
- 🚨 MUST re-run
gencommand
Container
❗ For all applicable accounts and subaccounts:
- 🚨 MUST re-run
fetchcommand- Remove your previously fetched
1-infiles prior to re-fetching - Run
fetchfor all applicable years
- Remove your previously fetched
- 🚨 MUST re-run
importcommand- Prior to re-importing, remove your previously imported
2-preprocessedand3-journaldirectories - Run
importstarting from oldest applicable year
- Prior to re-importing, remove your previously imported
- 🚨 MUST re-run
taxescommand- Run
taxesfor all applicable years
- Run
Tip: when in doubt, regenerate your entire setup. Your environment and accounts will be backed up in the process.
🧠 Contributors
- Aaron Fiore
🛠️ Fixes / Updates
Repo
Client
- Dockerfiles fixes related to
import(coinbase/coinbase-pro) and Ubuntu-basedbuild(#58) - Resolve Dockerfiles
aptCLI warning (#82) - Append subprofile source to superscript before generating (#87)
- Rewrite/fix global env gen, optimize/refactor repository path, usage update (#90) (#92) (#97)
Container
- Algorand
- Ally
- Capital One
- Coinbase
- Electrum
- Various additions to
rules(#43)
- Various additions to
- Ethereum-based
- Gemini (Exchange)
- Ledger (Live)
lib_edit- Fix returns, clearer fatal errors (#81)
lib_taxes/hledger-flow- Breaking: Cost-basis work-arounds for Bitcoin.tax (#96)
☀️ Features / Enhancements
Repo
- Add Gitea templates (#65) (#69)
- Add CHANGELOG.md (#99)
Client
- Add
buildoption types and build-specific features (#68) (#70) (#79) (#85) (#86)- Types:
default|slim|tiny|micro|experimental - Separation of concerns for build types
- Support ROOT.cern for Ubuntu
- Support
hledgersource build - Support
hledger-flowbinary download - Optimize image sizes
- Types:
- Add
versioncommand for all platforms (#61) (#83) - Breaking: Add custom Dockerfile support (#67) (#97)
- Breaking: New internal versioning implementation (#84) (#88) (#100)
Client / Container
hledgerrelated enhancements, add alternative terminal UI (visidata) (#64)- Add
hledger --confsupport, future-proofing forhledgerfeatures (#78)
Container
hledger-flowprice- Breaking: Add support for multiple crypto aggregator-APIs (#60)
- Breaking: Add API keys/blockchains to
fetchconfiguration - Add support for Mobula
- Add support for CoinGecko Pro
- Breaking: Add API keys/blockchains to
- Breaking: Add support for multiple crypto aggregator-APIs (#60)
root
🌴 Misc / Other
Client
- Dockerfiles: remove obsolete 'version' element (#42)
lib_docker: factor out args parsers (#71)lib_gen: return success on client generation (#76)
Container
hledger-flow: btcpayserver: preprocess: fix YYY comment typo (#44)- bash:
lib_fetch: create prices dir if nonexistent (#101) - php:
fetch: gemini: update to ccxt's latest request() signature | run linter (#62)
1.0.0-beta - 2024-03-04
Initial pre-release