Dandelion is a fair source project. View the code on Github
Commits on Mar 05, 2026
| cca9e15 |
🔥 Remove Coinbase Commerce payment integration |
| e596c61 |
🐛 (dandelion_bank.rb): fix error handling to gracefully fallback to Frankfurter rates when CoinGecko API fails The previous code would raise an exception if both APIs failed, but now it only notifies Honeybadger if we have at least some rates from Frankfurter, allowing the app to continue running with partial data. |
| f86484b |
♻️ (dandelion_bank.rb): replace static KNOWN_CURRENCIES constant with dynamic known_currency? method The static constant was computed at class load time, now the currency validation is done on-demand which improves memory usage and startup time. |
| d44eff4 |
♻️ (dandelion_bank.rb): refine error handling to catch specific Faraday and JSON errors instead of broad StandardError
|
Commits on Mar 01, 2026
| 378b688 |
🧵 (dandelion_bank.rb): add Mutex for thread-safe rate updates to prevent race conditions
|
| d6894ce |
♻️ Refactor HTTP client to use Faraday with timeout and error handling - Use specific exception types (Faraday::Error, JSON::ParserError) for better error handling - Add 10s timeout and 5s open_timeout to prevent hanging requests - Leverage Faraday's auto-JSON parsing to simplify response handling |
| 25b4fad |
🔧 Add STRIPE_API_VERSION env var and refactor hardcoded values Add STRIPE_API_VERSION environment variable to .env.example and .env.test.example, then refactor all Stripe API version hardcoded values across the codebase to use the environment variable instead. This improves configurability and makes version updates easier. |
| ddfad98 |
♻️ Remove legacy HMAC feedback token format support Simplifies token generation and verification by removing the deprecated legacy HMAC format. The MessageVerifier now handles all token validation directly, and missing SESSION_SECRET will raise an error rather than silently failing. |
| 5a55f68 |
🔧 (organisation_accounting.rb): add automatic_payment_methods config with redirect disabled for off-session payments |
Commits on Feb 28, 2026
| 121d497 |
✨ (event_feedbacks): add preview mode for feedback form to allow admins to test before sending This introduces a preview functionality that lets administrators test the feedback form without requiring account resolution or allowing submission. The preview is triggered by passing 'preview' as a token parameter, displays a warning message, and disables the submit button. |
| 63baf21 |
➖ Remove strong_password gem and simplify password validation to length check |
| 93d7150 |
🔥 (config/boot.rb): remove unused net/http require statement |
| 15cd047 |
♻️ Replace money-uphold-bank gem with custom DandelionBank implementation The custom implementation fetches exchange rates from Uphold API with Frankfurter and CoinGecko as fallback sources for improved reliability. |
| 10ddd0c |
♻️ (Gemfile): reorganize gem placements by moving redis and mcp to appropriate sections The diff shows redis gem being moved from one location to another, and mcp gem being moved from a commented section to the main gems section. This cleans up the Gemfile structure by placing dependencies in their proper locations. |
| 4c2b739 |
➖ Remove bech32 gem dependency |
| 971d105 |
➖ Remove eu_central_bank gem dependency and related code The eu_central_bank gem is no longer needed as the application uses the uphold bank for currency exchange rates instead. |
| b44e935 |
✨ (events.rb): add opt_in_facilitator attribute for events with third-party facilitators |
| f834088 |
🐛 Remove default opt-in for facilitator in events controller The change removes the automatic setting of
|
Commits on Feb 27, 2026
| cd5c415 |
♻️ Refactor audio transcription to use direct OpenAI Whisper API instead of OpenRouter The change separates transcription and cleanup into distinct steps, using a temporary file for proper audio handling. This improves reliability and provides more control over the transcription process. |
| 47f1c82 |
✨ (whatsapp.rb): add intelligence parameter to OpenRouter.chat for improved transcription quality |