dio_debug_logger 0.1.0
dio_debug_logger: ^0.1.0 copied to clipboard
In-app network inspector for Dio: draggable debug button, request list with search and filters, request/response details, stats, retry and cURL/Postman export.
0.1.0 #
pub.dev #
- Paket
logging_service→dio_debug_loggeradlandırıldı (logging_serviceadı pub.dev-də artıq məşğuldur). Import:package:dio_debug_logger/dio_debug_logger.dart. - MIT lisenziyası,
repository/issue_tracker/topics/screenshotssahələri əlavə olundu. - İstifadə olunmayan native plugin şablonları
.pubignoreilə paketdən çıxarıldı.
Bug fix #
DebugPageDebugStorage-a qulaq asmırdı — səhifə açıq ikən yeni sorğular görünmürdü. Artıq bütün səhifələr (siyahı, detal, analitika) canlı yenilənir.Dismissibleaçarıid-indexidi; siyahı dəyişəndə açar sürüşür və səhv element silinirdi. İndi açar yalnızid-dir və silmə dəidüzrə gedir.DebugStorage.clear()sayğacı sıfırlayırdı → hələ cavabı gəlməmiş sorğu ilə eyniidyaranırdı (dublikat açar → render xətası). Sayğac artıq sıfırlanmır.- Header dəyəri
Stringolmayanda (content-length: 120,accept: [a, b])Text(entry.value)runtime-da tip xətası atırdı. Bütün header-lər normallaşdırılır. hasErrorhələ cavabı gəlməmiş sorğunu bəzən xəta sayırdı;Pendingvəziyyəti əlavə olundu (null ms/ yanlış "Success" nişanı aradan qalxdı).CopyHelper.generateCurlCommandtək dırnaqları escape etmirdi — çıxan cURL sınırdı;jsonEncodekodlana bilməyən body-də exception atırdı. Hər ikisi düzəldildi,FormDataartıq-Filə yazılır.RetryDialogdispose-dan sonrasetStateçağıra bilirdi;content-lengthheader-i yenidən göndərilirdi; 4xx/5xx nəticəsi görünmürdü.- Kopyalama dialoqu
Navigator.pop-dan sonraScaffoldMessenger.of(context)çağırırdı. pubspec.yamlmövcud olmayanlogging_service_web.dartfaylına istinad edirdi (web build sınırdı). İstifadə olunmayan platform plugin təyinatı və dependency-lər (flutter_screenutil,intl,web,plugin_platform_interface) silindi.
Responsive #
- Planşetdə ölçü əmsalı
3.0idi → mətnlər qutulardan daşırdı. İndi1.12(≥600dp) /1.25(≥900dp), telefonda0.85–1.15. - Sistem "font size" ayarı debug səhifələrində
1.25-lə məhdudlaşdırılır. - Bütün mətnlərə
maxLines+ellipsis; uzun dəyərlər üçünSelectableText; status/metod nişanlarıFittedBox+ sabit genişlik; statistika kartlarıWrapilə. - Geniş ekranda məzmun mərkəzləşir (maks. 1000dp).
Yeni #
DebugOverlay/NetworkLogger.overlayBuilder()— sürüklənən FAB, badge, kənara yapışma, təkrar açılış qoruması. AppdanavigatorKey/navigatorObserverstələb olunmur.NetworkLogger—open,close,isOpenNotifier,configure,retryClientBuilder.- Log siyahısında axtarış (URL/metod/status) və status filtri (All/Success/Errors/Pending).
- ⋮ menyusu: Analytics, Pause/Resume recording, Copy all as JSON, Clear all.
- Detal səhifəsində xülasə başlığı (status, müddət, ↑/↓ ölçü) və JSON ağacı ↔ xam mətn keçidi.
FormDataartıq həm request, həm cURL, həm də JSON görünüşündə dəstəklənir.- Həssas header maskalama (
Authorization,Cookie,X-Api-Key, …) — konsol, kopyalama və export. CopyHelper.generateSummary(bug report üçün mətn) vəgenerateResponseBody.DebugStorage:deleteById,deleteByIds,findById,setRecording,configure,exportAll,successCount,pendingCount,averageElapsedMs.DebugModel:status,isPending,isSuccess,requestSize,responseSize,underlyingError,toJson,matches.- Dart testləri əlavə olundu (
flutter test).
Uyğunluq #
Köhnə API tam işləyir: DebugLogging(), DebugStorage(), openDebugPage(context),
const DebugPage(), DebugDetail, DebugStats, CopyHelper, ResponsiveHelper.
0.0.1 #
- İlk versiya.