Skip to content

Releases: mahesh-solanke/devtrack-sdk

DevTrack SDK v0.4.2

11 Jan 14:26
e59b8f9

Choose a tag to compare

Release Notes - DevTrack SDK v0.4.2

🎉 Release Date

Version: 0.4.2 (Stability - Bugfix Release)
Release Date: 2026-01-11


📋 Overview

DevTrack SDK v0.4.2 is a stability and bugfix release that resolves critical database lock conflicts between CLI commands and running applications. This release significantly improves the developer experience by adding intelligent fallback mechanisms and better error handling when the database is locked by an active application instance.


🐛 Critical Bug Fixes

Fixed DuckDB Lock Conflicts in CLI Commands

Problem: CLI commands (stat, query, init) would fail with lock errors when the database was already in use by a running application. DuckDB uses file-level locking, meaning a single write connection blocks all other connections (including read-only ones) from accessing the database file.

Root Cause:

  • DuckDB's file-level locking mechanism prevents concurrent access
  • CLI commands attempted direct database access without checking if the application was running
  • No fallback mechanism when database was locked
  • Poor error messages that didn't guide users to solutions

Solution:

  • HTTP API Fallback: Added intelligent fallback to HTTP API endpoints when database lock is detected
    • stat command now fetches stats from /__devtrack__/stats endpoint if database is locked
    • query command fetches logs from API when direct database access fails
    • init command checks database status via API before prompting for overwrite
  • Lock Detection: Enhanced error parsing to detect lock conflicts and extract process information (PID)
  • Graceful Degradation: Commands now provide clear guidance when database is locked
  • Improved User Experience: Better error messages with actionable suggestions

Impact:

  • CLI commands now work seamlessly even when application is running
  • No more confusing lock errors - users get clear guidance
  • Developers can use CLI tools without stopping their applications
  • Better error messages help users understand and resolve issues quickly

Fixed init Command Unnecessary Prompts

Problem: The init command would prompt users to overwrite an existing database even when the database was already initialized and accessible via the running application's API.

Solution:

  • Added check_db_initialized_via_api() helper function
  • init command now checks database status via HTTP API before prompting
  • If database is initialized and accessible via API, shows information and exits gracefully
  • Prevents unnecessary overwrite prompts when application is running

🔄 Improvements

Enhanced Database Connection Management

  • Read/Write Mode Handling: Improved DevTrackDB class to better handle read-only and write mode transitions
  • Connection Reuse: Optimized connection reuse to minimize lock contention
  • Better Lock Handling: Enhanced lock conflict detection and error reporting

Improved Error Messages

  • Lock Information: Error messages now include process PID when available
  • Actionable Guidance: Clear suggestions on how to resolve lock conflicts
  • API Status: Better feedback when API fallback is used

Test Infrastructure

  • Network Request Mocking: Added global pytest fixture to prevent hanging in CI
  • Comprehensive Test Coverage: Added extensive tests for lock conflict scenarios
  • CI Stability: Fixed GitHub Actions timeouts by mocking network requests

🔧 Technical Changes

New Functions

  • parse_lock_error(): Extracts PID and process info from DuckDB lock errors
  • check_db_initialized_via_api(): Checks database initialization status via HTTP API
  • Enhanced detect_devtrack_endpoint(): Better endpoint detection with improved error handling

Modified Components

  • cli.py: Major refactoring to add API fallback mechanisms
    • stat command: HTTP API fallback on lock
    • query command: HTTP API fallback on lock
    • init command: API check before overwrite prompt
  • database.py: Improved connection handling for read/write mode transitions
  • tests/conftest.py: Added global network request mocking fixture

Test Coverage

  • Added 46 comprehensive CLI tests
  • Tests for lock conflict scenarios
  • Tests for API fallback mechanisms
  • Tests for error handling and user messaging

📦 Installation

pip install devtrack-sdk==0.4.2

Or upgrade from previous version:

pip install --upgrade devtrack-sdk

🔄 Migration from v0.4.1

No breaking changes! This is a backward-compatible bugfix release.

Simply upgrade:

pip install --upgrade devtrack-sdk

All existing functionality remains the same. The improvements are automatically applied.

What to Expect

  • Better CLI Experience: CLI commands now work even when your application is running
  • Clearer Error Messages: More helpful error messages when issues occur
  • No Behavior Changes: All existing functionality works exactly as before

📝 Full Changelog

Fixed

  • Critical: DuckDB lock conflicts causing CLI commands to fail when application is running
  • Critical: init command prompting unnecessarily when database is already initialized
  • Database connection handling for read/write mode transitions
  • Error messages for locked databases now include process information

Improved

  • Added HTTP API fallback for stat, query, and init commands
  • Enhanced error handling with lock detection and process information
  • Better user guidance when database is locked
  • Improved test infrastructure to prevent CI timeouts
  • More robust database initialization checks

Technical

  • Added parse_lock_error() function for better error parsing
  • Added check_db_initialized_via_api() helper function
  • Enhanced detect_devtrack_endpoint() with better error handling
  • Improved DevTrackDB connection management
  • Added global pytest fixture for network request mocking

🧪 Testing

All fixes have been tested across:

  • Different database lock scenarios
  • Running application with CLI commands
  • API fallback mechanisms
  • Error handling and user messaging
  • CI/CD pipeline (GitHub Actions)

Test Results:

  • ✅ All 46 CLI tests passing
  • ✅ All integration tests passing
  • ✅ CI pipeline stable (no timeouts)

🙌 Acknowledgements

Special thanks to @kushagra-vj for identifying and clearly highlighting the DuckDB file-lock issue when using DevTrack CLI alongside a running application.

Your detailed feedback directly helped shape the HTTP API fallback mechanism and significantly improved the overall developer experience in this release.


🔗 Resources


📋 Known Issues

None at this time. If you encounter any issues, please report them on GitHub Issues.


🎯 What's Next

We're continuously improving DevTrack SDK based on user feedback. Upcoming releases will focus on:

  • Performance optimizations
  • Additional CLI features
  • Enhanced dashboard capabilities
  • Better documentation and examples

Full Changelog: v0.4.1...v0.4.2

DevTrack SDK v0.4.1

23 Dec 18:32
bd3fff1

Choose a tag to compare

Release Notes - DevTrack SDK v0.4.1

🎉 Release Date

Version: 0.4.1 (Pulse - Bugfix Release)
Release Date: 2025-12-23


📋 Overview

DevTrack SDK v0.4.1 is a bugfix release that addresses critical issues discovered in v0.4.0, particularly around DuckDB compatibility and dashboard functionality. This release ensures the dashboard displays correct statistics and improves the reliability of request detail views across different browser environments.


🐛 Critical Bug Fixes

Fixed DuckDB Column Description Issue

Problem: The dashboard was displaying incorrect summary statistics (e.g., {"1": 10} instead of proper fields like total_requests, unique_endpoints, etc.).

Root Cause: DuckDB's conn.description sometimes returns generic column names like ["1"] or ["NUMBER"] instead of actual column names from SQL queries.

Solution:

  • Added robust fallback mechanism in get_stats_summary() to use known column names when DuckDB returns invalid descriptions
  • Applied the same fix to get_logs_by_path() and get_logs_by_status_code() methods
  • Ensures consistent behavior across all database query methods

Impact: Dashboard KPI cards now display correct metrics including:

  • Total requests count
  • Unique endpoints
  • Average/min/max duration
  • Success and error counts

Fixed Request Detail View in New Window

Problem: When clicking on request IDs to view details in a new window, some users saw a plain screen without styling.

Root Cause:

  • document.write() method can fail in certain browser environments or with Content Security Policies
  • HTML escaping issues could break the document structure
  • No fallback mechanisms if primary method failed

Solution:

  • Implemented multiple fallback methods for maximum compatibility:
    1. Blob URL (primary) - Works with CSP, no size limits
    2. Data URL (fallback) - For older browsers
    3. document.write() (final fallback) - Universal support
  • Improved HTML escaping with manual escaping function
  • Enhanced HTML structure with proper meta tags and viewport settings
  • Better error handling with automatic fallback to modal view

Impact: Request detail views now display correctly with full styling across all browsers and environments.


🔄 Improvements

Enhanced API Logging

  • Improved logging in fetchStats() function for better debugging
  • More concise and informative log messages
  • Better error tracking for API requests

Database Query Robustness

  • All database query methods now handle DuckDB column description quirks
  • Consistent fallback behavior across all query operations
  • Better error handling and recovery

📦 Installation

pip install devtrack-sdk==0.4.1

🔄 Migration from v0.4.0

No breaking changes! This is a backward-compatible bugfix release.

Simply upgrade:

pip install --upgrade devtrack-sdk

All existing functionality remains the same. The fixes are automatically applied.


📝 Full Changelog

Fixed

  • Critical: DuckDB column description issue causing incorrect summary statistics in dashboard
  • Critical: Request detail view not displaying styles in new window for some users
  • Database query methods now handle DuckDB column name quirks consistently
  • HTML escaping in request detail views for better security and compatibility

Improved

  • Enhanced API logging for better debugging
  • Multiple fallback methods for opening request details in new window
  • Better error handling in database query operations
  • Improved HTML structure and escaping in detail views

🧪 Testing

All fixes have been tested across:

  • Different DuckDB versions and configurations
  • Multiple browser environments (Chrome, Firefox, Safari, Edge)
  • Various Content Security Policy settings
  • Different deployment scenarios

🙏 Thank You

Thank you to all users who reported these issues! Your feedback helps make DevTrack more reliable and robust.


🔗 Resources


📋 Known Issues

None at this time. If you encounter any issues, please report them on GitHub Issues.


Full Changelog: v0.4.0...v0.4.1

DevTrack SDK v0.4.0

30 Nov 16:40
fc2e576

Choose a tag to compare

🚀 DevTrack SDK v0.4.0 - Pulse Release

📊 Built-in Real-Time Dashboard

DevTrack SDK v0.4.0 introduces a beautiful, interactive dashboard that gives you real-time insights into your API performance - no external tools required!

✨ What's New

  • 📈 Real-Time Dashboard at /__devtrack__/dashboard

    • Traffic overview with interactive charts
    • Error trends and top failing routes
    • Performance metrics (p50/p95/p99 latency)
    • Consumer segmentation analysis
    • Searchable request logs
    • Auto-refresh with configurable intervals
  • 🔌 New Metrics APIs

    • GET /__devtrack__/metrics/traffic - Traffic over time
    • GET /__devtrack__/metrics/errors - Error trends
    • GET /__devtrack__/metrics/perf - Performance metrics
    • GET /__devtrack__/consumers - Consumer segmentation
  • 👥 Consumer Segmentation

    • Automatically identify and analyze API consumers
    • Track patterns, errors, and latency per consumer
    • Privacy-friendly implementation

🎯 Quick Start

pip install devtrack-sdk==0.4.0

After integrating the middleware, visit:

http://localhost:8000/__devtrack__/dashboard

🔄 Migration

No breaking changes! Simply upgrade:

pip install --upgrade devtrack-sdk

📚 Documentation


Full Changelog: v0.3.0...v0.4.0

What's Changed

Full Changelog: v0.3.0...v0.4.0

DevTrack SDK v0.3.0

05 Nov 16:08
7afee21

Choose a tag to compare

Release Notes - DevTrack SDK v0.3.0

🎉 Release Date

Version: 0.3.0
Release Date: 2025-11-02


📋 Overview

DevTrack SDK v0.3.0 is a major release that introduces DuckDB integration as the primary database backend, replacing in-memory storage with persistent, high-performance database capabilities. This release significantly enhances the SDK's functionality, reliability, and scalability, making it production-ready for real-world deployments.


🚀 Major Features

🗄️ DuckDB Database Integration

What's New:

  • Persistent Storage: Request logs now persist across application restarts
  • High Performance: DuckDB's columnar storage optimized for analytics workloads
  • SQL Queries: Full SQL support for complex filtering and aggregation
  • Automatic Schema Management: Database tables created automatically on first use

Benefits:

  • No data loss on application restarts
  • Better performance for large datasets
  • Production-ready storage solution
  • Scalable to handle millions of requests

🛠️ Comprehensive CLI Toolkit

New CLI Commands:

  1. devtrack init - Initialize DuckDB database

    devtrack init --db-path devtrack_logs.db
  2. devtrack reset - Reset database (delete all logs)

    devtrack reset --db-path devtrack_logs.db --yes
  3. devtrack stat - Enhanced statistics with DuckDB backend

    devtrack stat --top 10 --sort-by latency
  4. devtrack export - Export logs to JSON/CSV

    devtrack export --format json --output logs.json
  5. devtrack query - Advanced querying with filters

    devtrack query --status-code 404 --days 7 --verbose
  6. devtrack monitor - Real-time monitoring dashboard

    devtrack monitor --interval 5 --top 15
  7. devtrack health - System health checks

    devtrack health --endpoint
  8. devtrack version - Version information

    devtrack version

📝 Django Management Commands

New Django Commands:

  • python manage.py devtrack_init - Initialize database
  • python manage.py devtrack_reset - Reset database
  • python manage.py devtrack_stats - View statistics

Usage:

python manage.py devtrack_init
python manage.py devtrack_stats

🔄 Enhanced Middleware

Django Middleware:

  • Migrated from in-memory stats to DuckDB storage
  • Improved error handling and logging
  • Database connection management

FastAPI Routes:

  • DuckDB integration for statistics endpoints
  • Enhanced filtering and querying capabilities
  • Improved error responses

📚 Documentation Improvements

  • New comprehensive documentation at docs/index.md
  • Enhanced integration guides for Django and FastAPI
  • Updated examples with DuckDB integration

🧪 Test Improvements

Fixed Issues:

  • ✅ Fixed 5 CLI test failures (stat command tests)
  • ✅ Fixed 3 Django integration test failures
  • ✅ Updated middleware tests for DuckDB integration

Test Results:

  • 38/39 tests passing
  • All DuckDB-related tests verified

⚠️ Breaking Changes

1. Database Initialization Recommended

Before (v0.2.x):

  • Middleware worked out of the box with in-memory storage
  • No initialization needed

After (v0.3.0):

  • Database tables are auto-created on first use (no manual initialization required)
  • Recommended: Run devtrack init for explicit setup and verification
  • Middleware uses DuckDB database instead of in-memory storage
  • Database file and tables are automatically created when middleware first logs a request

Why devtrack init is recommended:

  • Explicitly prepares the database before production use
  • Verifies database connectivity and schema
  • Provides initial database statistics
  • Allows setting custom database path upfront

Impact: For existing deployments, the database will be auto-created on first request, but explicit initialization is recommended for production environments.

2. Persistent Storage

Before (v0.2.x):

  • Data stored in memory (lost on restart)

After (v0.3.0):

  • Data stored in DuckDB database file
  • Persists across application restarts

Impact: Data structure and storage location changed.

3. Dependencies

New Dependency:

  • duckdb>=1.1.0 added to requirements

Impact: Additional package installation required.


🔄 Migration Guide

For Existing Users (v0.2.x → v0.3.0)

Step 1: Upgrade Installation

pip install --upgrade devtrack-sdk

Step 2: Initialize Database

devtrack init --db-path devtrack_logs.db

Or for Django:

python manage.py devtrack_init

Step 3: Update Configuration (Optional)

Django:

# settings.py
DEVTRACK_DB_PATH = "devtrack_logs.db"  # Custom path if needed

FastAPI:

# Configure database path if different from default
DEVTRACK_DB_PATH = "devtrack_logs.db"

Step 4: Restart Application

Restart your FastAPI or Django application to use the new database backend.

Data Migration

If you have existing in-memory data:

  • Export existing data (if applicable)
  • Initialize new database
  • Data will start collecting from scratch in the new database

Note: In-memory data cannot be automatically migrated. If you have critical data, export it before upgrading.


📦 Installation

Install from PyPI

pip install devtrack-sdk==0.3.0

Install from Source

git clone https://github.com/mahesh-solanke/devtrack-sdk.git
cd devtrack-sdk
git checkout v0.3.0
pip install -e .

Requirements

  • Python >= 3.10
  • duckdb >= 1.1.0 (new)
  • fastapi >= 0.90
  • django >= 4.0.0
  • httpx >= 0.24
  • starlette >= 0.22
  • rich >= 13.3
  • typer >= 0.9

🎯 What's Improved

  1. Reliability: Persistent storage means no data loss
  2. Performance: DuckDB's columnar storage optimized for analytics
  3. Scalability: Handle larger volumes of request logs efficiently
  4. Developer Experience: Rich CLI toolkit for managing logs
  5. Production Readiness: Suitable for production deployments
  6. Query Flexibility: SQL-based queries for advanced analytics

🐛 Bug Fixes

  • Fixed CLI stat command endpoint detection
  • Fixed Django views error handling
  • Improved test suite stability
  • Fixed database connection handling

📝 Changelog

Added

  • DuckDB database integration
  • CLI toolkit (8 commands)
  • Django management commands (3 commands)
  • Comprehensive documentation
  • Export functionality (JSON/CSV)
  • Real-time monitoring dashboard
  • Health check functionality
  • Query functionality with filters

Changed

  • Middleware now uses DuckDB instead of in-memory storage
  • CLI expanded significantly
  • Documentation structure improved
  • Test suite updated for DuckDB

Fixed

  • CLI test failures
  • Django integration test failures
  • Error handling in views

🔮 What's Next

Future releases may include:

  • Real-time monitoring dashboard (web UI)
  • Advanced analytics and reporting
  • Integration with monitoring tools
  • Custom metrics and alerting

🙏 Acknowledgments

Thank you to all contributors and users who provided feedback and helped shape this release!


📞 Support


🔗 Links


Full Changelog: v0.2.0...v0.3.0

v0.2.6

16 Aug 18:54

Choose a tag to compare

DevTrack SDK v0.2.6 Release Notes

🚀 Overview

This release focuses on expanding DevTrack SDK's framework support by integrating Django alongside the existing FastAPI support. The release enhances developer experience with comprehensive Django middleware, URL routing, and view integration, while maintaining backward compatibility and improving overall SDK architecture.

✨ New Features & Improvements

Django Integration

  • 🏗️ Complete Django Middleware Support
    • Added DevTrackMiddleware for automatic request tracking
    • Integrated Django URL patterns for seamless routing
    • Django view integration with automatic endpoint detection
  • 🔧 Framework Agnostic Architecture
    • Modular design supporting both FastAPI and Django
    • Shared core functionality across frameworks
    • Consistent API across different web frameworks

Enhanced SDK Structure

  • 📦 Improved Package Organization
    • Separated framework-specific integrations
    • Cleaner import structure for better developer experience
    • Modular middleware system for easy extension
  • 🧪 Comprehensive Testing Suite
    • Added Django integration tests
    • Enhanced test coverage for all components
    • Framework-specific test utilities

Documentation & Examples

  • 📚 Django Integration Guide
    • Complete setup instructions for Django projects
    • Example Django application with DevTrack integration
    • Middleware configuration examples
  • 🎯 Enhanced Examples
    • Django example project in examples directory
    • FastAPI example improvements
    • Better code organization and clarity

🐛 Bug Fixes

  • Fixed middleware initialization issues in Django applications
  • Improved error handling for framework detection
  • Enhanced URL pattern matching for Django routes
  • Fixed import issues in Django integration modules

🔧 Technical Details

  • Refactored SDK structure for better maintainability
  • Added framework detection and auto-configuration
  • Improved error handling and logging across all components
  • Enhanced middleware base classes for extensibility
  • Updated dependency management for better compatibility

📋 Requirements

  • Python >= 3.10
  • FastAPI >= 0.90
  • Django >= 3.2
  • HTTPX >= 0.24
  • Starlette >= 0.22
  • Rich >= 13.3
  • Typer >= 0.9

🔄 Migration Notes

No breaking changes in this release. Users can upgrade directly from v0.2.5. Django users can now integrate DevTrack SDK using the new Django-specific modules and middleware.

🙏 Acknowledgments

Special thanks to the community for feedback and testing, particularly for the Django integration requests. This release addresses the growing need for multi-framework support in the DevTrack ecosystem.

📦 Installation

pip install devtrack-sdk==0.2.6

🔗 Links

v0.2.5

31 May 17:13

Choose a tag to compare

DevTrack SDK v0.2.5 Release Notes

🚀 Overview

This release focuses on enhancing the CLI tool's reliability and user experience, with significant improvements to endpoint detection, error handling, and testing coverage. We've also improved documentation and added visual enhancements to make the tool more user-friendly.

✨ New Features & Improvements

CLI Enhancements

  • 🔧 Improved endpoint detection with support for various URL formats:
    • Localhost and custom domains
    • URLs with or without ports
    • Better handling of protocol specifications
  • 🎯 Enhanced stats display with better formatting and error messages
  • 🛠️ Added robust fallback mechanisms for endpoint detection
  • 📊 Improved handling of empty stats and connection failures

Documentation & Visual Updates

  • 📝 Added PyPI download badge to README
  • 🖼️ Updated CLI demo image for better visual representation
  • 📚 Enhanced documentation with clearer usage instructions

Testing & Code Quality

  • ✅ Significantly improved test coverage for CLI functionality
  • 🧪 Added comprehensive tests for endpoint detection
  • 🔍 Enhanced test assertions with descriptive error messages
  • 🧹 Code cleanup and removal of unused files

🐛 Bug Fixes

  • Fixed endpoint detection issues with various URL formats
  • Improved error handling for connection failures
  • Enhanced URL cleanup and validation
  • Fixed stats display issues with empty data

🔧 Technical Details

  • Updated dependencies for better compatibility
  • Improved code organization and maintainability
  • Enhanced error messages for better debugging
  • Added proper test coverage for all CLI scenarios

📋 Requirements

  • Python >= 3.10
  • FastAPI >= 0.90
  • HTTPX >= 0.24
  • Starlette >= 0.22
  • Rich >= 13.3
  • Typer >= 0.9

🔄 Migration Notes

No breaking changes in this release. Users can upgrade directly from v0.2.3.

🙏 Acknowledgments

Thanks to all users who provided feedback, especially for the CLI improvements in issue #10.

📦 Installation

pip install devtrack-sdk==0.2.4

🔗 Links

v0.2.3

25 May 19:05

Choose a tag to compare

🚀 New Features (v0.2.3)

🧰 CLI Tool

  • A new CLI (available as devtrack) is introduced:
    • devtrack -- version – Displays the current SDK version (using a new version.py file).
    • devtrack stat – Detects and displays (e.g., from your local endpoint) the DevTrack stats.
      • --top – Show top N endpoints (optional)
      • --sort-by – Sort by 'hits' or 'latency' (default: hits)
  • A demo screenshot (static/CLIDemo.png) is added to illustrate CLI usage.

🛠 Improved Middleware & Logging

  • Refactored DevTrackMiddleware (and extractor) so that exclude_paths are appended directly (simplified initialization).
  • Enhanced request body buffering and logging (e.g., asynchronous JSON handling and sensitive data filtering).
  • Updated the example FastAPI app to demonstrate improved request handling.

🗂 Project & Documentation Enhancements

  • Updated pyproject.toml:
    • Refined package discovery
    • Updated dependencies (including Typer for CLI support)
    • Improved metadata
  • Updated setup.py (and version.py) to dynamically read the version (instead of importing the package).
  • Renamed “Usage” (in README) to “Usage & CLI Tool”:
    • Added detailed CLI instructions
    • Included demo screenshot
  • Updated the TODO list:
    • Marked “CLI tool” (with version and stat commands) as completed

Full Changelog: v0.2.2...v0.2.3

v0.2.2

21 May 19:57

Choose a tag to compare

DevTrack SDK v0.2.2 Release Notes

🎉 Overview

This release adds a structured TODO directory to organize and track planned features for future development. No functional changes to the SDK itself.

📝 What's New

  • Added /TODO directory with planning documents for:
    • SDK Features & Framework Support
    • UI Enhancements
    • Third-party Integrations
    • Documentation & Examples
    • Developer Experience

ℹ️ Note

This is a documentation-only release. Users of v0.2.1 can continue using that version as there are no code changes.

📦 Installation

pip install devtrack-sdk==0.2.2

What's Changed

  • Enhance documentation and add new TODOs for developer experience improvment in #8

Full Changelog: v0.2.1...v0.2.2

v0.2.1

20 May 19:20

Choose a tag to compare

🚀 DevTrack SDK v0.2.1 Release Notes

🎉 What's New

Major Improvements

  • 🔓 Simplified Authentication: Removed api_key requirement for a smoother developer experience.
  • 🧠 Environment-Based Configuration: Easily switch between dev and prod settings.
  • 🛡️ Enhanced Security: Added configurable path exclusions to avoid tracking sensitive endpoints.
  • 📘 Improved Documentation: Security guidelines, usage patterns, and deployment examples included.

🌟 Key Features

  • ✨ Zero-configuration setup out of the box
  • 🧩 Environment-aware middleware behavior
  • 🛑 Smart path exclusions (/docs, /health, etc.)
  • 📈 Detailed request tracking
  • ✅ Robust test coverage

⚠️ Breaking Changes

  • Removed api_key parameter from DevTrackMiddleware
  • Middleware must now be initialized using the updated syntax

🧭 Migration Guide

⏪ Old

app.add_middleware(DevTrackMiddleware, api_key="your-api-key")

✅ New

app.add_middleware(DevTrackMiddleware, exclude_path=["/sensitive", "/admin"])

🔧 Environment Configuration Example

middleware_config = {
    "development": {
        "skip_paths": ["/docs", "/redoc", "/health"],
    },
    "production": {
        "skip_paths": ["/health", "/metrics"],
    }
}

env = os.getenv("ENV", "development")
app.add_middleware(DevTrackMiddleware, exclude_path=middleware_config[env]["skip_paths"])

🐞 Bug Fixes

  • Fixed middleware import/initialization bugs
  • Improved resilience in path exclusion logic
  • Stabilized test coverage across environments

📚 Documentation Updates

  • ➕ New section: Configuration by environment
  • 🛡️ Security best practices for sensitive routes
  • 🧪 Extended code snippets for testing and validation

🔄 Dependencies

  • No new dependencies added
  • Fully compatible with existing FastAPI-based projects

📦 Installation

pip install devtrack-sdk==0.2.0

📜 Full Changelog

For a complete list of changes, please visit our GitHub repository.

🙏 Acknowledgments

Big thanks to our users for shaping the direction of DevTrack!

⭐️ Star the repo if you like it! GitHub: mahesh-solanke/devtrack-sdk

📦 DevTrack SDK – v0.1.2

19 May 19:37

Choose a tag to compare

📦 DevTrack SDK – v0.1.2

This patch release improves virtual environment compatibility and packaging behavior to ensure smoother integration and clean installation across Python projects.

✨ What’s Fixed

  • 🧩 Properly exposed DevTrackMiddleware and router via __init__.py for simpler imports
  • ✅ Verified compatibility with Python 3.10+ across isolated virtual environments
  • 📦 Improved packaging and distribution flow for PyPI
  • 🚫 Clarified usage instructions to avoid cached installs and module resolution issues
  • 🔐 Smoother developer experience for integration and debugging

🙌 Community Shoutout

Big thanks to @kushagra-vj for flagging issue #2 and helping improve the import experience for all FastAPI developers! 🎉


📥 Installation

pip install devtrack-sdk

If you encounter caching issues:

pip install --no-cache-dir devtrack-sdk

📚 Docs & Usage

Visit the updated README for:
- 🔧 Middleware setup
- 🧪 Examples and test instructions
- 💡 Contribution guide
- 🗺️ Feature roadmap

Special Thanks

Thank you to all early testers helping shape DevTrack SDK!