timsoftdz_network 2.0.0 copy "timsoftdz_network: ^2.0.0" to clipboard
timsoftdz_network: ^2.0.0 copied to clipboard

Enterprise-grade HTTP networking framework for Dart & Flutter. Interceptor-based, retry-safe, circuit-breaker support, Result<T> API, and zero-crash serialization. Inspired by Dio and Retrofit.

Changelog #

All notable changes to this project are documented in this file.

The format follows Keep a Changelog and this project adheres to Semantic Versioning.


2.0.0 — 2026-04-27 #

🚀 Major Enterprise Release #

This release transforms timsoftdz_network into a production-grade networking framework with advanced architecture features.

✨ Added #

  • Circuit Breaker system (Closed / Open / Half-Open states)
  • Debug Inspector mode with full request timeline visualization
  • Request tracing with unique RequestId per HTTP call
  • Global error boundary for APM / monitoring integration
  • Safe serialization layer with SerializationException
  • Enhanced Result<T> API:
    • map
    • flatMap
    • recover
    • fold
    • getOrDefault
  • CancelGroup system for bulk cancellation control
  • Request lifecycle hooks improvements (onRequest / onResponse / onError)
  • Improved interceptor pipeline execution system

⚡ Improved #

  • Faster interceptor chain execution
  • Reduced memory usage in logging system
  • Improved JSON parsing safety in TimResponse
  • Better compatibility with Dart CLI, Flutter Web, and Server Dart
  • More stable retry execution flow

🛠 Fixed #

  • Fixed serialization crash on invalid JSON casting
  • Fixed retry infinite loop edge case
  • Fixed CancelToken race condition
  • Fixed LoggingInterceptor blocking async pipeline
  • Fixed circuit breaker state transition bug

⚠️ Breaking Changes #

  • RetryInterceptor now requires explicit RetryPolicy
  • Some internal parser classes moved under internal structure
  • Minor constructor changes in TimNetwork for clarity and consistency

0.1.0 — 2026-01-15 #

🎉 Initial Release #

Added #

  • Result<T> pattern with Success / Failure
  • TimNetwork facade (GET / POST / PUT / PATCH / DELETE / HEAD)
  • TimHttpClient core engine with interceptor pipeline
  • DefaultHttpAdapter using package:http
  • LoggingInterceptor with ANSI color output
  • HeadersInterceptor (static and dynamic headers)
  • AuthInterceptor with Bearer token support and auto refresh mutex
  • RetryInterceptor with pluggable retry policies
  • ExponentialBackoffPolicy with full jitter support
  • FixedDelayPolicy for simple retry scenarios
  • CancelToken for request cancellation
  • Full exception hierarchy (TimNetworkException base class)
  • Parser system:
    • FunctionParser
    • ListParser
    • WrappedParser
    • WrappedListParser
    • RawParser
    • StringParser
    • MapParser
  • QueryBuilder utility for safe URL construction
  • StatusCodeUtils for HTTP status classification
  • TokenStorage abstraction + MemoryTokenStorage
  • TokenRefresher interface + NoOpTokenRefresher
  • Full test suite:
    • client tests
    • interceptor tests
    • retry tests
  • Complete working example in /example/main.dart

4
likes
150
points
8
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Enterprise-grade HTTP networking framework for Dart & Flutter. Interceptor-based, retry-safe, circuit-breaker support, Result<T> API, and zero-crash serialization. Inspired by Dio and Retrofit.

Topics

#networking #http #rest #retry #interceptor

License

MIT (license)

Dependencies

http

More

Packages that depend on timsoftdz_network