Releases: dcapal/dcapal
Releases · dcapal/dcapal
v0.6.1
v0.6.0
⭐ New Features
- FE: Multiple portfolios support: create, duplicate and edit an unlimited number of portfolios (#156, #177)
- OPT: New optimizer option to exhaust all available budget (#197)
- BE: Add
/import/portfolio
endpoint to enable integration with third-party tools (#194) - FE: Introduce source directory aliases to avoid double dots in
import
s (#196)
🛠 Improvements
- BE: Refactor
MarketDataService
logic for better latency and scalability: improvedGET /price
endpoint latency by a factor of 7x (~150us mean latency) (#208) - BE: Refresh Prometheus visitors stats at startup (#192)
- FE: Reset scroll to top on
/allocate
step change (308938f) - FE: Fetch 4 days worth of prices from YF to handle long-holidays (768a98e)
🐞 Bug Fixes
- FE: Fix NaN problem in allocation when it is not possible to allocate any assets (#176)
- OPT: Fix
Solver
instances never deleted causing WASM memory leak (#191) - FE: Fix no budget suggestion when Fractional Shares option is selected (#216)
- FE: Fix
LanguageSwitcher
position on mobile: was not visible (eb278d5) - FE: Hide
InputNumber
up/down arrows on Firefox (e0e64a0)
📔 Documentation
📦 Dependency Upgrades
- Rust: Bump MSRV to
v1.74
- NPM dependency upgrades via
dependabot
- Cargo dependency upgrades via
dependabot
❤️ Contributors
Thank you to all the contributors who worked on this release
v0.5.0
⭐ New Features
- OPT: Suggest the minimum investment amount for reach the target allocation (#141)
- FE: Introduce GDPR banner (#129)
🐞 Bug Fixes
- FE: Do not weigh unallocated cash if portfolio does not have liquidity position (#124)
- FE: Fix missing suggested quantities when fractional shares are enabled (#140)
- FE: Fix
i18n
on not found page and error page (#120) - FE: Block scrolling on mobile menu open (#150)
- FE: Improve Italian translation (#121)
- BE: Fix crypto tickers for esotic assets (590a840)
- BE: Fix false positive warning logs (79c4133)
📔 Documentation
- Add repository security policy (6af695f)
🔨 Dependency Upgrades
- Rust: Bump MSRV to
v1.73
- FE: Dependency upgrades via
dependabot
- BE: Dependency upgrades via
dependabot
❤️ Contributors
Thank you to all the contributors who worked on this release
v0.4.0
⭐ New Features
- FE: Introduce
react-i18n
for internationalization support (#55) - FE: Add Italian translation 🇮🇹 (#55)
- FE: Replace
ImageKit
component with<img>
and bundled resources (#54) - FE: Integrate
playwright
and basic E2E tests (#62) - BE: Replace
cryptowatch
withkraken
as Crypto market data provider (#36) - BE: Add Circuit Breaker to third-party data provider to improve reliability (c4bfb6d)
- BE: Fetch asset human-readable names from CoinMarketCap (9fd56c3)
- CI: Add
backend
to E2E tests (3bcb447) - BE: Add IP2Location DB for latitude/longitude lookup (3da82d9)
- BE: Restore unique visitors + IP location metrics (#88)
🐞 Bug Fixes
- FE: Fix Webpack's
resolve.extension
(0b04c12)
📔 Documentation
🔨 Dependency Upgrades
- FE: Many dependency upgrades via
dependabot
- BE: Many dependency upgrades via
dependabot
❤️ Contributors
Thank you to all the contributors who worked on this release
v0.3.1
v0.3.0
⭐ New Features
- OPT: Make
advanced
optimizer transaction fee-aware: now you can pass your broker fee structure and max fee impact limit you are willing to pay (#18) - FE: Add UI components to allow user define their fee structure both at portfolio and per-asset levels. Moreover,
AllocationCard
now shows theoretical amounts that were not invested due to fee impact crossing user's limit (#18) - FE: Refresh portfolio prices every 5 minutes (#19)
- OPT: Add checked expectations in
test_runner
and added several test cases (e6871f8) - FE: Add
.prettierc
config (aab5482)
🐞 Bug Fixes
- OPT: Fix
advanced
optimizer infinite loop on negligible remaining budget (33191e4) - FE: Keep portfolio currency selected on back navigation (#10)
- Rust: Fix
cargo
workspace warnings onworkspaces
. Nowprofiles
andresolver
version are shared in workspace root (077c859)
📔 Documentation
- Not this time
🔨 Dependency Upgrades
- Bump Rust toolchain on CI to
stable
v1.72.0 (f584217) - Enable Webpack's Asset Modules config for
svg
assets (#35)
❤️ Contributors
Thank you to all the contributors who worked on this release
- @corradopetrelli: Fixing UI glitches (#37) and fostering discussion on many open issues
- @KristianLentino99: Fixing portfolio currency selection (#38) and participating to several discussions
v0.2.2
⭐ New Features
- OPT: Introduce initial implementation of
test-runner
, a regression testing tool consuming JSON test scenarios for easier bug reproducibility and expectations definition (9bbd4ba)
🐞 Bug Fixes
- OPT: Fix bug on
check_fully_allocated_assets()
function leading to infinite loop on low unallocated cash (0d747e7)
📔 Documentation
- Not this time
🔨 Dependency Upgrades
- Bump
rust_decimal
dependency (9bbd4ba)
❤️ Contributors
- Not this time
v0.2.1
⭐ New Features
- FE: Replace Start from scratch homepage button with Allocate your savings – This now brings you to
/allocate
page without deleting your portfolio
🐞 Bug Fixes
- FE: Disable
Invest
button if portfolio value + budget equals to zero (#25) - OPT: Add precondition check on portfolio value + budget positivity (#25)
- OPT: Fix bug leaving high unallocated budget on multiple optimizer iterations (#26)
📔 Documentation
- Not this time
🔨 Dependency Upgrades
- Not this time
❤️ Contributors
- Not this time
v0.2.0
⭐ New Features
- Add whole shares support in the
optimizer
(#17)- OPT: Rewrite the optimizer from scratch in
advanced::Problem
- FE: Add whole shares UI
- OPT: Rewrite the optimizer from scratch in
🐞 Bug Fixes
- FE: Fix bug in
ImportStep
not clearingtotalAmount
(98ffbaf) - FE: Use integer
InputNumber
for non-fractional assets (e0bb418)
📔 Documentation
- Improve README and introduce system architecture diagram (#22)
🔨 Dependency Upgrades
- Migrate from Webpack v4 to v5 (c327b5b)
- Bump required Node.js version to v18 LTS (c327b5b)
- Bump Rust dependecies (54741b0)
❤️ Contributors
Thank you to all the contributors who worked on this release
- @corradopetrelli: new FE contributor with great ideas to make DcaPal more user friendly and good looking! Welcome onboard 💪
v0.1.0
⭐ New Features
- DcaPal.com goes public! Enjoy this smart assistant for your periodic investments: DcaPal helps you keep your portfolio under control with tax-efficient suggestions to split your monthly savings.
🐞 Bug Fixes
- Not this time
📔 Documentation
- Not this time
🔨 Dependency Upgrades
- Not this time
❤️ Contributors
Thank you to all the contributors who worked on this release
- @pietrograndi: frontend components design and product evolution
- @EdoardoVarani: performance testing advisory and
k6s
workload development - @aguglie: scalability and operations advisory and Cloudflare setup