• v0.4.2 ae11c654f9

    MyFSIO v0.4.2 Beta Pre-Release

    kqjy released this 2026-04-01 08:37:12 +00:00 | 0 commits to main since this release

    Features

    Version Flag

    • Added --version option to run.py

    ETag Self-Healing

    • Added self-heal for missing ETags
    • Hardened ETag index persistence

    Rust Extension Staleness Detection

    • Added robust myfsio_core staleness detection with automatic Python fallback
    • Documented Rust extension build process in README

    Performance

    Reduced Per-Request Overhead

    • Pre-compiled SigV4 regex patterns
    • Added in-memory etag index cache
    • Increased GET response chunks to 1MB
    • Made metadata cache size configurable
    • Skipped fsync for rebuildable caches

    Integrity Scanner Optimizations

    • Added intra-bucket cursor tracking for progressive full coverage
    • Implemented early batch exit to avoid unnecessary work
    • Switched to lazy sorted walk for lower memory usage
    • Added cursor-aware index reads

    Security

    Presigned URL Hardening

    • Enforced key and user status checks in SigV4 presigned paths
    • Removed duplicate verification logic
    • Removed trust of X-Forwarded-Host header

    Bug Fixes

    Object List Dropdown

    • Fixed more-actions dropdown triggering row selection on object list

    Chores

    Dependencies

    • Updated requirements.txt
    Downloads
  • v0.4.1 f0c95ac0a9

    MyFSIO v0.4.1 Beta Pre-Release

    kqjy released this 2026-03-25 04:34:18 +00:00 | 10 commits to main since this release

    Improvements

    Async Integrity Scanner

    • Made integrity scan async with progress indicator in UI

    Async Garbage Collection

    • Converted GC to async with polling to prevent proxy timeouts

    Upload Reliability

    • Replaced fetch with XHR for multipart uploads to enable progress tracking
    • Added retry logic for failed upload chunks

    I/O Throttling

    • Added I/O throttling to GC and integrity scanner to prevent HDD starvation

    System Page UX

    • Auto-refresh Recent Scans/Executions tables after GC and integrity scan completion
    • Respect DISPLAY_TIMEZONE in GC and integrity scanner history tables

    Bug Fixes

    Integrity Scanner Batch Processing

    • Fixed batch limit enforcement
    • Added cursor-based rotation for consistent scanning across runs

    Mobile Object List

    • Fixed infinite scroll on object list
    • Fixed ghost preview appearing on fast object swap

    CSRF Token on Presigned URLs

    • Fixed missing CSRF token on presigned URL requests

    Bucket Browser UI

    • Fixed folder selection not showing delete button
    • Hidden ghost details in object panel when preview fails to load
    Downloads
  • v0.4.0 8ff4797041

    MyFSIO v0.4.0 Beta Pre-Release

    kqjy released this 2026-03-22 05:11:17 +00:00 | 22 commits to main since this release

    v0.4 - Granian Migration


    Breaking Changes

    IAM Overhaul

    • Replaced coarse-grained permissions with granular action-level controls
    • Added multi-key support per user
    • Added prefix-scoped policies for fine-grained access control

    Features

    System Page

    • Added new System page with server info, feature flags, and GC/integrity scanner UI

    Encrypted IAM Install Scripts

    • Updated install and uninstall scripts to support encrypted IAM config

    Switched to Granian

    • Replaced Waitress with Granian for improved concurrency

    Performance

    Streaming Object I/O

    • Bypassed boto3 proxy for object streaming, reading directly from the storage layer
    • Added streaming object iterator to eliminate O(n²) directory rescanning on large buckets
    • Added iter_objects_shallow delegation to EncryptedObjectStorage

    Bug Fixes

    Virtual List Selection

    • Fixed selected object losing highlight on scroll in virtual list

    Stale Dashboard Object Count

    • Fixed stale object count on dashboard after deleting all objects in a bucket
    Downloads
  • v0.3.9 50fb5aa387

    MyFSIO v0.3.9 Beta Pre-Release

    kqjy released this 2026-03-14 09:48:26 +00:00 | 42 commits to main since this release

    Features

    Integrity Scanner

    • Added background detection and healing of corrupted objects, orphaned files, phantom metadata, stale versions, etag cache inconsistencies, and legacy metadata drift

    HTTP Range Request Support

    • Added Range request support, fixing video seekbar playback in static website hosting

    Improvements

    Tags UI Redesign

    • Redesigned tag display with split pills layout
    • Added grid editor with column headers
    • Added ghost delete buttons for cleaner interaction
    Downloads
  • v0.3.8 cc161bf362

    MyFSIO v0.3.8 Beta Pre-Release

    kqjy released this 2026-03-10 08:39:31 +00:00 | 46 commits to main since this release

    Features

    Conditional GET/HEAD Headers

    • Added support for If-Match, If-None-Match, If-Modified-Since, and If-Unmodified-Since headers

    Garbage Collection

    • Added background cleanup of orphaned temp files, incomplete multipart uploads, stale lock files, leftover metadata, old versions, and empty directories

    Bug Fixes

    Bucket Dashboard Display Issues

    • Fixed missing created date on bucket dashboard
    • Fixed incorrect object count badge in folder view
    Downloads
  • v0.3.7 2a0e77a754

    MyFSIO v0.3.7 Beta Pre-Release

    kqjy released this 2026-03-09 06:29:34 +00:00 | 50 commits to main since this release

    Breaking Changes

    IAM Config Encrypted at Rest

    • IAM configuration is now encrypted at rest -- credentials can no longer be viewed or edited directly
    • Use the reset-cred CLI command to reset admin credentials (for first-time setup)
    • Alternatively, set admin custom credentials before setup via the environment variable

    Features

    IAM Encryption & Custom Credentials

    • Added at-rest encryption for IAM config
    • Added support for custom credentials
    • Added reset-cred CLI command for credential management

    Credential Expiry Support

    • Added per-user expires_at field with UI management
    • Added expiry presets for common durations
    • Added badge indicators for credential status

    Bug Fixes

    IAM Card Dropdown Clipped

    • Removed gradient bar causing overflow clipping
    • Set overflow to visible so dropdown renders correctly
    Downloads
  • v0.3.6 eb0e435a5a

    MyFSIO v0.3.6 Beta Pre-Release

    kqjy released this 2026-03-08 05:02:39 +00:00 | 54 commits to main since this release

    Performance

    Reduced Per-Request CPU Overhead

    • Eliminated double stat() calls on each request
    • Cached content type and policy context lookups
    • Gated verbose logging behind level checks
    • Made stat intervals configurable

    Reliability

    Restored Data Integrity Guarantees

    • Re-enabled Content-MD5 validation on writes
    • Added fsync for write durability
    • Made metadata writes atomic
    • Added concurrent write protection
    Downloads
  • v0.3.5 7633007a08

    MyFSIO v0.3.5 Beta Pre-Release

    kqjy released this 2026-03-07 06:02:31 +00:00 | 57 commits to main since this release

    Bug Fixes

    Stale Object Count After Deletes

    • Fixed bucket header and metrics dashboard showing stale object counts after delete operations

    Performance

    Reduced P99 Tail Latency

    • Deferred etag index writes to avoid blocking hot paths
    • Eliminated double cache rebuild
    • Skipped redundant stat() calls in bucket config

    Reduced CPU/Lock Contention Under Concurrent Uploads

    • Split cache lock to reduce contention across threads
    • Switched to in-memory stats tracking
    • Used dict copy for lock-free reads
    • Adopted lightweight request IDs
    • Replaced manual counters with defaultdict metrics
    Downloads
  • v0.3.4 de0d869c9f

    MyFSIO v0.3.4 Beta Pre-Release

    kqjy released this 2026-03-02 08:34:48 +00:00 | 61 commits to main since this release

    Performance

    Rust Migration for Critical Paths

    • Moved streaming I/O, multipart assembly, and AES-256-GCM encryption from Python to Rust

    Reduced CPU Usage on Heavy Uploads

    • Skipped SHA256 body hashing in SigV4 signing
    • Replaced per-chunk _HashingReader with Rust md5_file post-write

    Documentation

    README Credentials Fix

    • Fixed misleading default credentials to accurately reflect random generation behavior
    Downloads
  • v0.3.3 fdd068feee

    MyFSIO v0.3.3 Beta Pre-Release

    kqjy released this 2026-02-27 04:52:26 +00:00 | 65 commits to main since this release

    Bug Fixes

    Rclone CopyObject SignatureDoesNotMatch

    • Fixed internal metadata leaking as X-Amz-Meta headers, causing SignatureDoesNotMatch errors during CopyObject operations

    Performance

    Native Rust Hot Paths

    • Extended myfsio_core Rust extension with 7 storage hot paths: directory scanning, metadata I/O, object listing, search, bucket stats, and cache building
    Downloads