Skip to content

Releases: TH3BAT/Blockchaininfo

🚀 Version 3.0.0 Release

11 Mar 16:17
Compare
Choose a tag to compare

🚀 Version 3.0.0 Release

We’re excited to announce the release of Version 3.0.0! This update brings significant improvements and new features to enhance your experience with the Bitcoin dashboard. Here’s what’s new:

What’s New:

  • Last Miner in Best Block View:

    • The best block view now displays the last miner, giving you better insights into block production.
  • Hash Rate Distribution Chart:

    • A brand-new toggleable chart in the Blockchain section shows the distribution of hash rate over the past 24 hours.
    • Features:
      • Toggle between the original metrics and the chart using the h key.
      • Displays up to the Top 8 miners of x rewarded in the past 144 blocks.
      • Tracks data from the moment the dashboard loads (no historical data is loaded).
  • miners.json Support:

    • A new miners.json file allows you to map coinbase wallet addresses to miner names.
    • This file is loaded at runtime and can be maintained by end-users.
    • Place miners.json in the same folder as the executable (default location if running from the Blockchaininfo parent folder).
  • Dependency Updates:

    • Updated serde to v1.0.219.
    • Updated once_cell to v1.21.0.

How to Update:

  1. Run cargo update to update dependencies.
  2. Run cargo build --release to build the latest version.

Roadmap Teaser:

We’re already working on the next big feature: a Fee Histogram! This will provide deeper insights into transaction fees and mempool dynamics. Stay tuned for more updates!

Release v0.2.11: "Sanitize All the Things!" 🧹✨

06 Mar 04:43
Compare
Choose a tag to compare

Release v0.2.11: "Sanitize All the Things!" 🧹✨

What’s New?

  • Mempool Scrubbing on Steroids: Dusty transactions? Expired entries? Not on our watch! We’ve updated the logic to scrub both dust and dust-free cache datasets against the mempool every cycle, not just when a new block rolls in. Your datasets are now cleaner than a freshly waxed Lambo. 🚗💨
  • RIP LAST_BLOCK_NUMBER: We’ve retired this old-timer. It served us well, but it’s time to move on. No hard feelings. 🪦
  • Accuracy Level: Laser Precision: With sanitized datasets, your mempool distribution and percentage breakouts are now sharper than a Satoshi whitepaper. 📊🎯

Why Should You Care?

Because nobody likes dirty data. This update ensures your metrics are as accurate and reliable as a Swiss watch. Plus, it’s just good hygiene. 🧼

How to Update:

git pull
cargo build --release

Release v0.2.10: "The Steel Blade Update" ⚔️🔧

04 Mar 18:28
Compare
Choose a tag to compare

Release v0.2.10: "The Steel Blade Update" ⚔️🔧

We’ve been hammering away at the forge, and this release is the result: a sharper, stronger, and more resilient application. This maintenance release focuses on hardening the core and improving reliability, so you can wield your Bitcoin node RPC calls like a true warrior. Let’s dive into the highlights!


What’s New?

1. Logging Improvements: Cleaner, Smarter, Better 📝✨

  • Removed Redundant TxID: No more cluttered logs! The TxID is now only included in the JsonParsingError, making logs cleaner and easier to read.
  • Log File Rotation: Detected logs in the old format? We’ll automatically rotate them to an archive. Out with the old, in with the new!
  • Better Error Formatting: Switched to the {} formatter for Display implementation, ensuring errors are logged in a human-readable way.

2. Timeouts: Because Waiting Forever is Overrated ⏳🚀

  • Connection Timeout (5 seconds): If the Bitcoin node doesn’t respond quickly, we’ll move on. No more hanging around!
  • Overall Timeout (10 seconds): From start to finish, your requests now have a strict time limit. Efficiency is key!
  • Improved Error Handling: Timeouts now come with clear, actionable error messages. Know exactly what went wrong and where.

3. Error Handling: Graceful, Informative, and Robust 🛡️🔍

  • Custom TimeoutError: Added a new error variant to handle timeout scenarios gracefully.
  • Enhanced Context: Error messages now include details like the node address and RPC method, making debugging a breeze.

Why This Release Matters

This release is all about reliability and user experience. We’ve tightened the bolts, sharpened the edges, and polished the surface.


Upgrade Instructions

git pull
cargo build --release

Final Words

This release is a testament to our commitment to quality and reliability. We’re not just building software; we’re crafting tools that you can depend on. So go ahead, upgrade to v0.2.10, and experience the difference. Your Bitcoin node will thank you. 🚀

Stay sharp, Rustaceans. ⚔️


Release Art

   🔥⚔️
  /____\
  |    |
  |    |
  |____|
   🔧✨

Blockchaininfo v0.2.9 - 🚀 What’s New in v0.2.9

27 Feb 21:25
Compare
Choose a tag to compare

Release Notes for v0.2.9

Release Date: 2025-02-27
Version: 0.2.9
Type: Minor Release


🚀 What’s New in v0.2.9

This release introduces significant improvements to transaction lookup functionality, enhances logging and configuration, and adds support for decoding OP_RETURN messages. We’ve also cleaned up the codebase and made several usability improvements to ensure a smoother experience.


Key Features and Improvements

  1. Enhanced Transaction Lookup:

    • Added support for detecting and deciphering OP_RETURN outputs.
    • Improved output formatting for confirmed and unconfirmed transactions, including timestamps and fee details.
    • Restructured fetch_transaction to use the GetRawTransactionResponse struct for type-safe parsing of RPC responses.
  2. Logging Improvements:

    • Added error propagation to the log_error function for better error handling.
    • Included timestamps in logs for improved traceability.
    • Implemented log rotation to rename old logs instead of deleting them.
    • Ensured thread safety with a global Mutex to prevent log corruption.
  3. Configuration Enhancements:

    • Added a [bitcoin_rpc] header to the auto-generated config.toml for better organization.
    • Introduced the lazy_static dependency for thread-safe static variables.
  4. Code Cleanup and Usability:

    • Made internal utility functions private (normalize_version, change_version, etc.) to reduce API surface area.
    • Removed the Esc key as an alternative quit option to prevent accidental program exits.
    • Cleaned up commented code across modules for better readability and maintainability.
  5. New Features:

    • Added the hex crate to support decoding OP_RETURN messages.
    • Added flashing text to the Best Block to highlight value changes dynamically.
    • Introduced progress bars next to each mempool distribution percentage for enhanced visual intelligence and better data representation.

🛠️ Bug Fixes and Minor Changes

  • Fixed an issue where OP_RETURN outputs were not being detected or displayed correctly.
  • Improved layout and readability of the transaction pop-up and mempool distribution display.
  • Ensured backward compatibility with existing configurations and workflows.

📝 How to Upgrade

To upgrade to v0.2.9, update your dependencies and rebuild the application. If you’re using a package manager, run:

cargo update
cargo build --release


📅 What’s Next?

We’re already working on the next release, which will include:

  • Further optimizations for transaction parsing and display.
  • Enhanced support for custom scripts and advanced Bitcoin features.
  • More user-friendly error messages and logging.

Stay tuned, and thank you for using our tool! 🚀

🔥 🚀 Blockchaininfo v0.2.8 – Faster, Smarter, and More Insightful! 🔥

24 Feb 18:23
Compare
Choose a tag to compare

💥 A massive performance and usability upgrade is here! With refactored logic, new metrics, and smoother-than-ever operation, v0.2.8 takes your Bitcoin analytics experience to the next level.

🔹 Performance Upgrades

  • Refactored mempool distribution logic with Semaphore and Task-based concurrency.
  • Replaced HashMap and HashSet with DashMap and DashSet for thread-safe, high-performance data structures.
  • Optimized initial loading of 100K+ mempool transactions—now faster than ever!

🔹 New Dashboard Metrics

  • Estimated Change (24 Hours): Track miner behavior trends over the last 24 hours.
  • Dust-Free Percentage: See the percentage of dust-free transactions in the mempool at a glance.

🔹 Stability & Responsiveness

  • Dashboard remains buttery smooth even during heavy mempool loading.
  • Transaction lookups and popups are faster and more reliable.
  • No UI flickering or redraw glitches—just pure, uninterrupted analytics.

🔹 What’s Under the Hood

  • Refactored core logic for better maintainability and scalability.
  • Added robust error handling and logging to keep things running smoothly.
  • Optimized RPC calls to reduce unnecessary requests and improve efficiency.

📦 Upgrade to v0.2.8 now!

Since v0.2.6, we’ve been hard at work making Blockchaininfo faster, smarter, and more insightful. With v0.2.8, you’re getting a powerhouse of performance upgrades and new features that make Bitcoin analytics easier and more efficient than ever before.

🚀 Get it now and experience the difference!

Blockchaininfo 0.2.6

05 Feb 19:59
Compare
Choose a tag to compare

🔥 🚀 Official Release Message for v0.2.6 🔥


Blockchaininfo v0.2.6 – Transaction Lookup Added!

💥 A major upgrade is here! Now you can instantly look up Bitcoin transactions without leaving the TUI.

🔹 New Feature: Transaction Lookup Popup
🔸 Press 't' to open a transaction lookup window.
🔸 Enter a transaction ID and hit Enter to fetch details.
🔸 Works for both confirmed & unconfirmed (mempool) transactions.

🔹 Smart TX Handling
🔸 Uses getrawtransaction(true) first.
🔸 If the transaction is in mempool, automatically fetches getmempoolentry.
🔸 Ensures timestamps are accurate, whether confirmed or pending.

🔹 UX Improvements
🔸 No UI flickering, no redraw glitches.
🔸 Transaction info updates cleanly inside the popup.
🔸 After closing the popup, everything resets smoothly for the next lookup.

🔹 Performance & Stability
🔸 Optimized RPC calls to reduce unnecessary requests.
🔸 TUI remains fast and responsive even when fetching TX data.

📦 Upgrade to v0.2.6 now!

git pull origin main
cargo build --release

🎉 Enjoy faster, smarter, and more powerful transaction lookups! 🚀🔥


💡 What’s Next?
More tools to navigate Bitcoin’s mempool, blockchain, and network effortlessly. Stay tuned! 💥

🔥 Built by plebs, for plebs. No fiat metrics. Just pure signal. 🤜💥🤛

Blockchaininfo v0.2.5

05 Feb 08:35
Compare
Choose a tag to compare

Blockchaininfo v0.2.5 🚀

🔹 A more flexible, streamlined, and efficient release!


🚀 New Features

Dynamic Config File Support

  • Added CLI flag (--config /path/to/config.toml) for specifying a custom config location.
  • Added BLOCKCHAININFO_CONFIG environment variable to set the config file path persistently.
  • Fallback support to default path (./target/release/config.toml) ensures smooth operation.
  • Users now have full control over config placement for a more seamless experience.

🛠 Improvements

  • Refactored load_config() to determine config file dynamically, eliminating unnecessary argument passing.
  • Updated README with clearer instructions on setting up config via CLI, env vars, or default paths.
  • Removed unused rand::distr::Distribution import, improving memory efficiency.
  • Optimized Arc::clone(&distribution) placement to reduce redundant reference count updates in tokio::spawn.

📦 How to Update

To upgrade to this version:

git pull origin main
cargo build --release

🔍 What's Next

With dynamic configuration support now in place, we continue optimizing performance and user flexibility while maintaining a decentralized-first approach. More enhancements are in the pipeline to improve visibility into the Bitcoin network—without reliance on fiat metrics. 🚀⚡

Thank you for using Blockchaininfo! 🎉 Keep building, keep decentralizing! 🤜🔥

Blockchaininfo v0.2.3

21 Jan 14:08
Compare
Choose a tag to compare

Blockchaininfo v0.2.3

🚀 New Features

Fee Metrics

  • Average Fee Rate (sats/vByte):
    • Introduced the calculation and display of the average fee rate for transactions.
    • Provides additional insights into the current mempool dynamics.

Footer Version Display

  • Added the application version to the footer.
  • Ensures users can easily identify the current running version at all times.

🛠 Improvements

  • Enhanced TUI with a Fee Metrics section, grouping related data for better readability and organization.
  • Updated footer design to include the dynamically fetched version from Cargo.toml.

📦 How to Update

To upgrade to this version:

git pull origin main
cargo build --release

🔍 What's Next

We continue to focus on improving visibility into the Bitcoin network without reliance on fiat metrics, pushing forward a decentralized-first mindset. Stay tuned for more features and enhancements!


Thank you for using Blockchaininfo! 🎉

Blockchaininfo v0.2.1 - Bug Fix

20 Jan 18:44
Compare
Choose a tag to compare

Release 0.2.1 fixes the average block propagation time.
- Converted from minutes to seconds
- Only include peers with a valid timestamp / clock to populate last_block

Blockchaininfo v0.2.0

18 Jan 04:21
Compare
Choose a tag to compare

Release 0.2.0 introduces significant upgrades to enhance usability, performance, and real-time data analysis:

  1. Transition to TUI and Crossterm:

    • A sleek, terminal-based user interface powered by TUI and Crossterm, offering a more interactive and visually appealing experience.
    • Seamless navigation and improved accessibility for users working directly in terminal environments.
  2. Live Data Polling and Looping:

    • Implemented a robust polling mechanism to frequently capture live data, ensuring updates in near real-time.
    • Optimized looping logic for efficient resource use while maintaining responsiveness.
  3. Expanded Metrics and Insights:

    • Added new metrics to provide deeper insights and more comprehensive data analysis.
    • Enhanced data visualization to better communicate key information at a glance.

This release represents a leap forward in functionality and performance, laying the groundwork for future enhancements while delivering a polished and dynamic user experience.