Releases: CeyLabs/BitcoinDeepaBot
Releases · CeyLabs/BitcoinDeepaBot
v1.2.1
Automated Release Workflow & Prevent Duplicate Transactions
✨ Key Changes
1. Prevent Duplicate Transactions (New)
- Locking Mechanism: Implemented a locking mechanism for the API send endpoint using the internal cache.
- Ongoing Transaction Check: Checks
MemoCacheto see if a transaction with the provided memo is currently processing. Returns "Transaction ongoing" if found. - Completed Transaction Check: Checks the database for any successful transactions with the same memo. Returns "Transaction already completed" if found.
- Cache Update: Added
Deletemethod toCachestruct and initializedMemoCacheinmain.go.
2. Automated Release Workflow
-
New Workflow (.github/workflows/release.yml):
- Trigger: Activates only when a PR is closed and merged into
main. - Auto-Versioning: Uses
mathieudutour/github-tag-actionto automatically bump the patch version. - Release Generation: Uses
GoReleaserto build the binary and create a GitHub Release. - Notifications: Sends a formatted message to multiple Telegram groups on Success only.
- Uses
MAIN_BOT_TOKENsecret for the bot token. - Uses
RELEASE_CHAT_IDSsecret for chat IDs. - Supports Threads:
RELEASE_CHAT_IDSsupports multiple comma-separated chat IDs, optionally with thread IDs (e.g.,-100123,-100456:7).
- Uses
- Trigger: Activates only when a PR is closed and merged into
-
GoReleaser Config (.goreleaser.yaml):
- Configured to build for Linux/AMD64 with
CGO_ENABLED=1. - Optimized build flags (
-s -w).
- Configured to build for Linux/AMD64 with
v1.2.0
What's Changed
- docs: Update
README.mdby @rasmr in #6 - feat: Add fiat values for balance by @helloscoopa in #7
- feat: Implement error logging to Telegram for various operations by @xbuddhi in #9
- fix: Update error logging and webhook URL handling in group payment p… by @xbuddhi in #10
- feat: Add public webhook URL configuration and update webhook handlin… by @xbuddhi in #11
- feat: Enhance error logging across Telegram bot operations with detai… by @xbuddhi in #12
- feat: Improve error message formatting in Telegram logger for better … by @xbuddhi in #13
- feat: Update error logging format to use MarkdownV2 for improved read… by @xbuddhi in #14
- feat: Refactor error message formatting in LogCriticalError for impro… by @xbuddhi in #15
- Implement admin approval workflow for large transactions by @xbuddhi in #16
- Dev by @xbuddhi in #19
- feat: Enable API send configuration and add admin approval threshold … by @xbuddhi in #20
- Format fiat amounts with commas by @ceyvibes in #17
- Fix error log caller location by @cmnisal in #18
New Contributors
- @rasmr made their first contribution in #6
- @helloscoopa made their first contribution in #7
- @ceyvibes made their first contribution in #17
Full Changelog: latest...v1.2.0