This website requires JavaScript.
7ef3820f6e
Fix SigV4/SHA256/TCP_NODELAY critical paths; tighten multipart, copy, versioning, and S3 error conformance
dev-pyrust
kqjy
2026-04-23 17:52:30 +08:00
e1fb225034
csrf fixes
kqjy
2026-04-22 23:01:32 +08:00
2767e7e79d
Optimize bucket listing for 10K-100K objects
kqjy
2026-04-22 19:55:44 +08:00
217af6d1c6
Full migration and transition to Rust; Remove python artifacts
kqjy
2026-04-22 17:19:19 +08:00
51d54b42ac
Rust fixes
kqjy
2026-04-22 15:41:18 +08:00
9ec5797919
Applied max-keys to combined current + archived ListObjectVersions output and reports truncation
kqjy
2026-04-22 00:12:22 +08:00
8935188c8f
Update static website 404 page
kqjy
2026-04-21 21:26:50 +08:00
c77c592832
Update static website to include proper error handling; add missing features
kqjy
2026-04-21 20:54:00 +08:00
501d563df2
Add missing features - notifcations, object lock, acl
kqjy
2026-04-21 00:27:50 +08:00
ddcdb4026c
Fix domains mapping missing
kqjy
2026-04-20 22:02:05 +08:00
3e7c0af019
Fix dockerfile issue
kqjy
2026-04-20 21:39:06 +08:00
476b9bd2e4
First porting of Python to Rust - update docs and bug fixes
kqjy
2026-04-20 21:27:02 +08:00
c2ef37b84e
Separate Python and Rust into python/ and rust/ with per-stack Dockerfiles
kqjy
2026-04-19 14:01:05 +08:00
be8e030940
Migrate more Python functions to Rust
kqjy
2026-04-19 13:53:55 +08:00
ad7b2a02cb
Add missing endpoints for Rust S3 API
kqjy
2026-04-05 15:22:24 +08:00
72ddd9822c
Add docker support for rust integration
kqjy
2026-04-03 12:31:11 +08:00
4c30efd802
Update myfsio rust engines - added more implementations
kqjy
2026-04-02 21:57:16 +08:00
926a7e6366
Add Rust storage engine foundation
kqjy
2026-04-02 17:00:58 +08:00
ae11c654f9
Merge pull request 'MyFSIO v0.4.2 Release' (#35 ) from next into main
main
v0.4.2
kqjy
2026-04-01 08:33:28 +00:00
1eadc7b75c
Fix more-actions dropdown positioning: use Popper fixed strategy instead of raw CSS position:fixed
next
kqjy
2026-04-01 16:24:42 +08:00
4a224a127b
Fix more-actions dropdown triggering row selection on object list
kqjy
2026-04-01 16:17:29 +08:00
c498fe7aee
Add self-heal missing ETags and harden ETag index persistence
kqjy
2026-03-31 21:10:47 +08:00
3838aed954
Fix presigned URL security vulnerabilities: enforce key/user status in SigV4 paths, remove duplicate verification, remove X-Forwarded-Host trust
kqjy
2026-03-31 20:27:18 +08:00
6a193dbb1c
Add --version option for run.py
kqjy
2026-03-31 17:21:33 +08:00
e94b341a5b
Add robust myfsio_core staleness detection with Python fallback; document Rust extension build in README
kqjy
2026-03-31 17:13:05 +08:00
2ad3736852
Add intra-bucket cursor tracking to integrity scanner for progressive full coverage; Optimize integrity scanner: early batch exit, lazy sorted walk, cursor-aware index reads
kqjy
2026-03-31 17:04:28 +08:00
f05b2668c0
Reduce per-request overhead: pre-compile SigV4 regex, in-memory etag index cache, 1MB GET chunks, configurable meta cache, skip fsync for rebuildable caches
kqjy
2026-03-25 13:44:34 +08:00
f7c1c1f809
Update requirements.txt
kqjy
2026-03-25 13:26:42 +08:00
f0c95ac0a9
MyFSIO v0.4.1 Release
v0.4.1
kqjy
2026-03-25 04:29:28 +00:00
0e392e18b4
Hide ghost details in object panel when preview fails to load
kqjy
2026-03-24 15:15:03 +08:00
8996f1ce06
Fix folder selection not showing delete button in bucket browser
kqjy
2026-03-24 12:10:38 +08:00
f60dbaf9c9
Respect DISPLAY_TIMEZONE in GC and integrity scanner history tables
kqjy
2026-03-23 18:36:13 +08:00
1a5a7aa9e1
Auto-refresh Recent Scans/Executions tables after GC and integrity scan completion
kqjy
2026-03-23 18:31:13 +08:00
326367ae4c
Fix integrity scanner batch limit and add cursor-based rotation
kqjy
2026-03-23 17:46:27 +08:00
a7f9b0a22f
Convert GC to async with polling to prevent proxy timeouts
kqjy
2026-03-23 17:14:04 +08:00
0e525713b1
Fix missing CSRF token on presigned URL request
kqjy
2026-03-23 16:48:25 +08:00
f43fad02fb
Replace fetch with XHR for multipart upload progress and add retry logic
kqjy
2026-03-23 16:27:28 +08:00
eff3e378f3
Fix mobile infinite scroll on object list and ghost preview on fast object swap
kqjy
2026-03-23 11:55:46 +08:00
5e32cef792
Add I/O throttling to GC and integrity scanner to prevent HDD starvation
kqjy
2026-03-23 11:36:38 +08:00
9898167f8d
Make integrity scan async with progress indicator in UI
kqjy
2026-03-22 14:17:43 +08:00
8ff4797041
MyFSIO v0.4.0 Release
v0.4.0
kqjy
2026-03-22 05:06:47 +00:00
4a553555d3
Clean up debug code
kqjy
2026-03-22 11:38:29 +08:00
7a3202c996
Possible fix for the issue
kqjy
2026-03-22 11:27:52 +08:00
bd20ca86ab
Further debugging on s3 api issues on Granian
kqjy
2026-03-22 11:22:24 +08:00
532cf95d59
Debug s3 api issues on Granian
kqjy
2026-03-22 11:14:32 +08:00
366f8ce60d
the middleware now also triggers when Content-Length is '0' but X-Amz-Decoded-Content-Length or aws-chunked headers indicate a body should be present
kqjy
2026-03-22 00:24:04 +08:00
7612cb054a
further fixes
kqjy
2026-03-22 00:16:30 +08:00
966d524dca
Fix 0-byte uploads caused by Granian stripping Expect header and missing CONTENT_LENGTH for chunked transfers
kqjy
2026-03-22 00:04:55 +08:00
e84f1f1851
Fix SigV4 SignatureDoesNotMatch when Expect header is stripped by WSGI server
kqjy
2026-03-21 23:48:19 +08:00
a059f0502d
Fix 0-byte uploads caused by Granian default buffer size; Add SERVER_MAX_BUFFER_SIZE config
kqjy
2026-03-21 22:57:48 +08:00
afd7173ba0
Fix buttons all showing Running state when only one action is triggered
kqjy
2026-03-21 14:51:43 +08:00
c807bb2388
Update install/uninstall scripts for encrypted IAM config
kqjy
2026-03-20 17:51:00 +08:00
aa4f9f5566
Bypass boto3 proxy for object streaming, read directly from storage layer; Add streaming object iterator to eliminate O(n²) directory rescanning on large buckets; Add iter_objects_shallow delegation to EncryptedObjectStorage
kqjy
2026-03-20 17:35:10 +08:00
14786151e5
Fix selected object losing highlight on scroll in virtual list
kqjy
2026-03-20 12:10:26 +08:00
a496862902
Fix stale object count on dashboard after deleting all objects in bucket
kqjy
2026-03-17 23:25:30 +08:00
df4f27ca2e
Fix IAM policy editor injecting prefix on existing policies without one
kqjy
2026-03-15 16:04:35 +08:00
d72e0a347e
Overhaul IAM: granular actions, multi-key users, prefix-scoped policies
kqjy
2026-03-14 23:50:44 +08:00
6ed4b7d8ea
Add System page: server info, feature flags, GC and integrity scanner UI
kqjy
2026-03-14 20:27:57 +08:00
31ebbea680
Fix Docker healthcheck failure: Granian cannot run inside daemon process
kqjy
2026-03-14 18:31:12 +08:00
d878134ebf
Switch from Waitress to Granian (Rust/hyper WSGI server) for improved concurrency
kqjy
2026-03-14 18:17:39 +08:00
50fb5aa387
MyFSIO v0.3.9 Release
v0.3.9
kqjy
2026-03-14 09:44:14 +00:00
55568d6892
Fix video seekbar in static website hosting by adding HTTP Range request support
kqjy
2026-03-10 22:21:55 +08:00
a4ae81c77c
Add integrity scanner: background detection and healing of corrupted objects, orphaned files, phantom metadata, stale versions, etag cache inconsistencies, and legacy metadata drift
kqjy
2026-03-10 22:14:39 +08:00
9da7104887
Redesign tags UI: split pills, grid editor with column headers, ghost delete buttons
kqjy
2026-03-10 17:48:17 +08:00
cc161bf362
MyFSIO v0.3.8 Release
v0.3.8
kqjy
2026-03-10 08:31:27 +00:00
de5377e5ac
Add garbage collection: background cleanup of orphaned temp files, multipart uploads, lock files, metadata, versions, and empty directories
kqjy
2026-03-09 17:34:21 +08:00
80b77b64eb
Fix bucket dashboard missing created date and incorrect object count badge in folder view
kqjy
2026-03-09 15:27:08 +08:00
6c912a3d71
Add conditional GET/HEAD headers: If-Match, If-None-Match, If-Modified-Since, If-Unmodified-Since
kqjy
2026-03-09 15:09:15 +08:00
2a0e77a754
MyFSIO v0.3.7 Release
v0.3.7
kqjy
2026-03-09 06:25:50 +00:00
c6e368324a
Update docs.md and docs.html for credential expiry, IAM encryption, admin key env vars, and --reset-cred
kqjy
2026-03-08 13:38:44 +08:00
7b6c096bb7
Remove the check out the documentation paragraph at login page
kqjy
2026-03-08 13:18:03 +08:00
03353a0aec
Add credential expiry support: per-user expires_at with UI management, presets, and badge indicators; Add credential expiry support: per-user expires_at with UI management, presets, and badge indicators; Fix IAM card dropdown clipped by overflow: remove gradient bar, allow overflow visible
kqjy
2026-03-08 13:08:57 +08:00
eb0e435a5a
MyFSIO v0.3.6 Release
v0.3.6
kqjy
2026-03-08 04:46:31 +00:00
72f5d9d70c
Restore data integrity guarantees: Content-MD5 validation, fsync durability, atomic metadata writes, concurrent write protection
kqjy
2026-03-07 17:54:00 +08:00
be63e27c15
Reduce per-request CPU overhead: eliminate double stat(), cache content type and policy context, gate logging, configurable stat intervals
kqjy
2026-03-07 14:08:23 +08:00
7633007a08
MyFSIO v0.3.5 Release
v0.3.5
kqjy
2026-03-07 05:53:02 +00:00
81ef0fe4c7
Fix stale object count in bucket header and metrics dashboard after deletes
kqjy
2026-03-03 19:42:37 +08:00
5f24bd920d
Reduce P99 tail latency: defer etag index writes, eliminate double cache rebuild, skip redundant stat() in bucket config
kqjy
2026-03-02 22:39:37 +08:00
8552f193de
Reduce CPU/lock contention under concurrent uploads: split cache lock, in-memory stats, dict copy, lightweight request IDs, defaultdict metrics
kqjy
2026-03-02 22:05:54 +08:00
de0d869c9f
Merge pull request 'MyFSIO v0.3.4 Release' (#27 ) from next into main
v0.3.4
kqjy
2026-03-02 08:31:32 +00:00
5536330aeb
Move performance-critical Python functions to Rust: streaming I/O, multipart assembly, and AES-256-GCM encryption
kqjy
2026-02-27 22:55:20 +08:00
d4657c389d
Fix misleading default credentials in README to match actual random generation behavior
kqjy
2026-02-27 21:58:10 +08:00
3827235232
Reduce CPU usage on heavy uploads: skip SHA256 body hashing in SigV4, use Rust md5_file post-write instead of per-chunk _HashingReader
kqjy
2026-02-27 21:57:13 +08:00
fdd068feee
MyFSIO v0.3.3 Release
v0.3.3
kqjy
2026-02-27 04:49:32 +00:00
dfc0058d0d
Extend myfsio_core Rust extension with 7 storage hot paths (directory scanning, metadata I/O, object listing, search, bucket stats, cache building)
kqjy
2026-02-27 12:22:39 +08:00
27aef84311
Fix rclone CopyObject SignatureDoesNotMatch caused by internal metadata leaking as X-Amz-Meta headers
kqjy
2026-02-26 21:39:43 +08:00
66b7677d2c
MyFSIO v0.3.2 Release
v0.3.2
kqjy
2026-02-26 10:10:19 +00:00
5003514a3d
Fix null ETags in shallow listing by updating etag index on store/delete
kqjy
2026-02-26 18:09:08 +08:00
4d90ead816
Merge pull request 'Fix incorrect Upgrading & Updates section in Docs' (#24 ) from next into main
v0.3.1
kqjy
2026-02-26 09:50:17 +00:00
20a314e030
Fix incorrect Upgrading & Updates section in Docs
kqjy
2026-02-26 17:49:59 +08:00
b37a51ed1d
MyFSIO v0.3.1 Release
kqjy
2026-02-26 09:42:37 +00:00
d8232340c3
Update docs
kqjy
2026-02-26 17:38:44 +08:00
a356bb0c4e
perf: shallow listing, os.scandir stats, server-side search for large buckets
kqjy
2026-02-26 17:11:07 +08:00
1c328ee3af
Fix list performance for large buckets: delimiter-aware shallow listing, cache TTL increase, UI delimiter streaming. header badge shows total bucket objects, fix status bar text concatenation
kqjy
2026-02-26 16:29:28 +08:00
5bf7962c04
Fix UI: versioning modals and object browser panel showing 'null'
kqjy
2026-02-24 20:41:39 +08:00
e06f653606
Fix version panel showing 'null' instead of timestamp, exclude current version from list, auto-refresh versions after upload
kqjy
2026-02-24 17:19:12 +08:00
0462a7b62e
MyFSIO v0.3.0 Release
v0.3.0
kqjy
2026-02-22 10:22:35 +00:00
9c2809c195
Backwards compatibility for Proxy trust config
kqjy
2026-02-22 18:03:38 +08:00
fb32ca0a7d
Harden security: fail-closed policies, presigned URL time/expiry validation, SSRF DNS pinning, lockout cap, proxy trust config
kqjy
2026-02-22 17:55:40 +08:00
6ab702a818
Use cached etag in HEAD instead of re-hashing entire file
kqjy
2026-02-22 16:01:46 +08:00