overtrue
58f8a8f46b
fix: correct HTTP range suffix handling
2025-10-16 21:39:21 +08:00
aae768f446
feat: Simple OPA support ( #644 )
...
* opa-feature
* Update crates/policy/src/policy/opa.rs
* add the content related to 'Copyright'
---------
Co-authored-by: root <[email protected] >
Co-authored-by: houseme <[email protected] >
Co-authored-by: Copilot <[email protected] >
2025-10-16 10:35:26 +08:00
安正超 and GitHub
d447b3e426
feat: adapt to s3s typed etag support ( #653 )
...
* feat: adapt to s3s typed etag support
* refactor: streamline etag handling
2025-10-15 21:27:20 +08:00
安正超 and GitHub
8f310cd4a8
test: allow mocking dns resolver ( #656 )
2025-10-15 21:24:03 +08:00
majinghe and GitHub
8ed01a3e06
Refactor mnmd docker compose for extendence ( #652 )
2025-10-15 03:48:05 +08:00
loverustfs and GitHub
9e1739ed8d
chore(docs): update README and README_ZH ( #649 )
2025-10-13 18:49:34 +08:00
loverustfs and GitHub
7abbfc9c2c
RustFS trending images
...
RustFS trending
2025-10-13 17:45:54 +08:00
安正超 and GitHub
639bf0c233
Revert "feat(append): implement object append operations with state tracking ( #599 )" ( #646 )
...
This reverts commit 4f73760a45 .
1.0.0-alpha.63
2025-10-12 23:47:51 +08:00
ad99019749
Add complete MNMD Docker deployment example with startup coordination and VolumeNotFound fix ( #642 )
...
* Initial plan
* Add MNMD Docker deployment example with 4 nodes x 4 drives
- Create docs/examples/mnmd/ directory structure
- Add docker-compose.yml with proper disk indexing (1..4)
- Add wait-and-start.sh for startup coordination
- Add README.md with usage instructions and alternatives
- Add CHECKLIST.md with step-by-step verification
- Fixes VolumeNotFound issue by using correct volume paths
- Implements health checks and startup ordering
- Uses service names for stable inter-node addressing
Co-authored-by: houseme <[email protected] >
* Add docs/examples README as index for deployment examples
Co-authored-by: houseme <[email protected] >
* Add automated test script for MNMD deployment
- Add test-deployment.sh with comprehensive validation
- Test container status, health, endpoints, connectivity
- Update README to reference test script
- Make script executable
Co-authored-by: houseme <[email protected] >
* improve code
* improve code
* improve dep crates `cargo shear --fix`
* upgrade aws-sdk-s3
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected] >
Co-authored-by: houseme <[email protected] >
Co-authored-by: houseme <[email protected] >
2025-10-12 13:15:14 +08:00
aac9b1edb7
chore: improve event and docker-compose ,Improve the permissions of the endpoint health interface, upgrade otel from 0.30.0 to 0.31.0 ( #620 )
...
* feat: improve code for notify
* upgrade starshard version
* upgrade version
* Fix ETag format to comply with HTTP standards by wrapping with quotes (#592 )
* Initial plan
* Fix ETag format to comply with HTTP standards by wrapping with quotes
Co-authored-by: overtrue <[email protected] >
* bufigx
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected] >
Co-authored-by: overtrue <[email protected] >
Co-authored-by: overtrue <[email protected] >
* Improve lock (#596 )
* improve lock
Signed-off-by: Mu junxiang <[email protected] >
* feat(tests): add wait_for_object_absence helper and improve lifecycle test reliability
Signed-off-by: Mu junxiang <[email protected] >
* chore: remove dirty docs
Signed-off-by: Mu junxiang <[email protected] >
---------
Signed-off-by: Mu junxiang <[email protected] >
* feat(append): implement object append operations with state tracking (#599 )
* feat(append): implement object append operations with state tracking
Signed-off-by: junxiang Mu <[email protected] >
* chore: rebase
Signed-off-by: junxiang Mu <[email protected] >
---------
Signed-off-by: junxiang Mu <[email protected] >
* build(deps): upgrade s3s (#595 )
Co-authored-by: loverustfs <[email protected] >
* fix: validate mqtt broker
* improve code for `import`
* upgrade otel relation crates version
* fix:dep("jsonwebtoken") feature = 'rust_crypto'
* fix
* fix
* fix
* upgrade version
* improve code for ecfs
* chore: improve event and docker-compose ,Improve the permissions of the `endpoint` health interface
* fix
* fix
* fix
* fix
* improve code
* fix
---------
Signed-off-by: Mu junxiang <[email protected] >
Signed-off-by: junxiang Mu <[email protected] >
Co-authored-by: Copilot <[email protected] >
Co-authored-by: overtrue <[email protected] >
Co-authored-by: overtrue <[email protected] >
Co-authored-by: guojidan <[email protected] >
Co-authored-by: Nugine <[email protected] >
Co-authored-by: loverustfs <[email protected] >
2025-10-11 09:08:25 +08:00
weisd and GitHub
5689311cff
fix:#630 ( #633 )
2025-10-10 15:16:28 +08:00
安正超 and GitHub
007d9c0b21
fix: normalize ETag comparison in multipart upload and replication ( #627 )
...
- Normalize ETags by removing quotes before comparison in complete_multipart_upload
- Fix ETag comparison in replication logic to handle quoted ETags from API responses
- Fix ETag comparison in transition object logic
- Add unit tests for trim_etag function
This fixes the ETag mismatch error when uploading large files (5GB+) via multipart upload,
which was caused by PR #592 adding quotes to ETag responses while internal storage remains unquoted.
Fixes #625
1.0.0-alpha.62
2025-10-08 21:19:57 +08:00
Nugine and GitHub
626c7ed34a
fix: CompleteMultipartUpload encryption ( #626 )
2025-10-08 20:27:40 +08:00
0e680eae31
fix typos and bump the dependencies group with 9 updates ( #614 )
...
* fix typos
* build(deps): bump the dependencies group with 9 updates (#613 )
Bumps the dependencies group with 9 updates:
| Package | From | To |
| --- | --- | --- |
| [axum](https://github.com/tokio-rs/axum ) | `0.8.4` | `0.8.6` |
| [axum-extra](https://github.com/tokio-rs/axum ) | `0.10.1` | `0.10.3` |
| [regex](https://github.com/rust-lang/regex ) | `1.11.2` | `1.11.3` |
| [serde](https://github.com/serde-rs/serde ) | `1.0.226` | `1.0.228` |
| [shadow-rs](https://github.com/baoyachi/shadow-rs ) | `1.3.0` | `1.4.0` |
| [sysinfo](https://github.com/GuillaumeGomez/sysinfo ) | `0.37.0` | `0.37.1` |
| [thiserror](https://github.com/dtolnay/thiserror ) | `2.0.16` | `2.0.17` |
| [tokio-rustls](https://github.com/rustls/tokio-rustls ) | `0.26.3` | `0.26.4` |
| [zeroize](https://github.com/RustCrypto/utils ) | `1.8.1` | `1.8.2` |
Updates `axum` from 0.8.4 to 0.8.6
- [Release notes](https://github.com/tokio-rs/axum/releases )
- [Changelog](https://github.com/tokio-rs/axum/blob/main/CHANGELOG.md )
- [Commits](https://github.com/tokio-rs/axum/compare/axum-v0.8.4...axum-v0.8.6 )
Updates `axum-extra` from 0.10.1 to 0.10.3
- [Release notes](https://github.com/tokio-rs/axum/releases )
- [Changelog](https://github.com/tokio-rs/axum/blob/main/CHANGELOG.md )
- [Commits](https://github.com/tokio-rs/axum/compare/axum-extra-v0.10.1...axum-extra-v0.10.3 )
Updates `regex` from 1.11.2 to 1.11.3
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.11.2...1.11.3 )
Updates `serde` from 1.0.226 to 1.0.228
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.226...v1.0.228 )
Updates `shadow-rs` from 1.3.0 to 1.4.0
- [Release notes](https://github.com/baoyachi/shadow-rs/releases )
- [Commits](https://github.com/baoyachi/shadow-rs/compare/1.3.0...v1.4.0 )
Updates `sysinfo` from 0.37.0 to 0.37.1
- [Changelog](https://github.com/GuillaumeGomez/sysinfo/blob/master/CHANGELOG.md )
- [Commits](https://github.com/GuillaumeGomez/sysinfo/compare/v0.37.0...v0.37.1 )
Updates `thiserror` from 2.0.16 to 2.0.17
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/2.0.16...2.0.17 )
Updates `tokio-rustls` from 0.26.3 to 0.26.4
- [Release notes](https://github.com/rustls/tokio-rustls/releases )
- [Commits](https://github.com/rustls/tokio-rustls/compare/v/0.26.3...v/0.26.4 )
Updates `zeroize` from 1.8.1 to 1.8.2
- [Commits](https://github.com/RustCrypto/utils/compare/zeroize-v1.8.1...zeroize-v1.8.2 )
---
updated-dependencies:
- dependency-name: axum
dependency-version: 0.8.6
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: axum-extra
dependency-version: 0.10.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: regex
dependency-version: 1.11.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: serde
dependency-version: 1.0.228
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: shadow-rs
dependency-version: 1.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: sysinfo
dependency-version: 0.37.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: thiserror
dependency-version: 2.0.17
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: tokio-rustls
dependency-version: 0.26.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: zeroize
dependency-version: 1.8.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
...
Signed-off-by: dependabot[bot] <[email protected] >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---------
Signed-off-by: dependabot[bot] <[email protected] >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-02 23:29:18 +08:00
weisd and GitHub
7622b37f7b
add iam notification ( #604 )
...
move tonic service to rustfs
1.0.0-alpha.61
2025-09-30 17:32:23 +08:00
f1dd3a982e
build(deps): upgrade s3s ( #595 )
...
Co-authored-by: loverustfs <[email protected] >
2025-09-28 21:10:42 +08:00
guojidan and GitHub
4f73760a45
feat(append): implement object append operations with state tracking ( #599 )
...
* feat(append): implement object append operations with state tracking
Signed-off-by: junxiang Mu <[email protected] >
* chore: rebase
Signed-off-by: junxiang Mu <[email protected] >
---------
Signed-off-by: junxiang Mu <[email protected] >
2025-09-27 20:06:26 -07:00
guojidan and GitHub
be66cf8bd3
Improve lock ( #596 )
...
* improve lock
Signed-off-by: Mu junxiang <[email protected] >
* feat(tests): add wait_for_object_absence helper and improve lifecycle test reliability
Signed-off-by: Mu junxiang <[email protected] >
* chore: remove dirty docs
Signed-off-by: Mu junxiang <[email protected] >
---------
Signed-off-by: Mu junxiang <[email protected] >
2025-09-27 17:57:56 -07:00
23b40d398f
Fix ETag format to comply with HTTP standards by wrapping with quotes ( #592 )
...
* Initial plan
* Fix ETag format to comply with HTTP standards by wrapping with quotes
Co-authored-by: overtrue <[email protected] >
* bufigx
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected] >
Co-authored-by: overtrue <[email protected] >
Co-authored-by: overtrue <[email protected] >
2025-09-27 10:03:05 +08:00
weisd and GitHub
90f21a9102
refactor: Reimplement bucket replication system with enhanced architecture ( #590 )
...
* feat:refactor replication
* use aws sdk for replication client
* refactor/replication
* merge main
* fix lifecycle test
2025-09-26 14:27:53 +08:00
guojidan and GitHub
9b029d18b2
feat(lock): enhance lock management with timeout and ownership tracking ( #589 )
...
- Add lock timeout support and track acquisition time in lock state
- Improve lock conflict handling with detailed error messages
- Optimize lock reuse when already held by same owner
- Refactor lock state to store owner info and timeout duration
- Update all lock operations to handle new state structure
Signed-off-by: junxiang Mu <[email protected] >
2025-09-25 20:21:53 -07:00
houseme and GitHub
9b7f4d477a
Fix Tokio Runtime Initialization: Remove Private API Usage and Ensure IO Enabled ( #587 )
...
* fix: remove code
* improve code for tokio runtime config
* improve code for main
* fix: add tokio enable_all
* upgrade version
* improve for Cargo.toml
1.0.0-alpha.60
2025-09-24 22:23:31 +08:00
guojidan and GitHub
12ecb36c6d
Fix collect ( #586 )
...
* fix: fix datausageinfo
Signed-off-by: junxiang Mu <[email protected] >
* feat(data-usage): implement local disk snapshot aggregation for data usage statistics
Signed-off-by: junxiang Mu <[email protected] >
* feat(scanner): improve data usage collection with local scan aggregation
Signed-off-by: junxiang Mu <[email protected] >
* refactor: improve object existence check and code style
Signed-off-by: junxiang Mu <[email protected] >
---------
Signed-off-by: junxiang Mu <[email protected] >
2025-09-24 02:48:23 -07:00
guojidan and GitHub
ef0dbaaeb5
feat(encryption): add managed encryption support for SSE-S3 and SSE-KMS ( #583 )
...
Signed-off-by: junxiang Mu <[email protected] >
2025-09-24 02:09:04 -07:00
29b0935be7
RustFS rustfs-audit Complete Implementation with Enterprise Observability ( #557 )
...
* Initial plan
* Implement core audit system with multi-target fan-out and configuration management
Co-authored-by: houseme <[email protected] >
* Changes before error encountered
Co-authored-by: houseme <[email protected] >
* Complete audit system with comprehensive observability and test coverage
Co-authored-by: houseme <[email protected] >
* improve code
* fix
* improve code
* fix test
* fix test
* fix
* add `rustfs-audit` to `rustfs`
* upgrade crate version
* fmt
* fmt
* fix
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected] >
Co-authored-by: houseme <[email protected] >
Co-authored-by: houseme <[email protected] >
2025-09-24 08:23:46 +08:00
08aeca89ef
feat: Allow alpha versions to create latest Docker tag ( #577 )
...
Co-authored-by: Cursor Agent <[email protected] >
2025-09-23 19:39:00 +08:00
d39ce6d8e9
fix: correct DeleteObjectVersionAction ( #574 )
...
Co-authored-by: loverustfs <[email protected] >
2025-09-23 09:49:41 +08:00
guojidan and GitHub
9ddf6a011d
feature: support kms && encryt ( #573 )
...
* feat(kms): implement key management service with local and vault backends
Signed-off-by: junxiang Mu <[email protected] >
* feat(kms): enhance security with zeroize for sensitive data and improve key management
Signed-off-by: junxiang Mu <[email protected] >
* remove Hashi word
Signed-off-by: junxiang Mu <[email protected] >
* refactor: remove unused request structs from kms handlers
Signed-off-by: junxiang Mu <[email protected] >
---------
Signed-off-by: junxiang Mu <[email protected] >
2025-09-22 17:53:05 +08:00
houseme and GitHub
f7e188eee7
feat: upgrade datafusion to v50.0.0 and update related dependencies f… ( #563 )
...
* feat: upgrade datafusion to v50.0.0 and update related dependencies for compatibility
* fix
* fmt
1.0.0-alpha.59
2025-09-18 23:30:25 +08:00
houseme and GitHub
4b9cb512f2
remove crate rustfs-audit-logger ( #562 )
2025-09-18 17:46:46 +08:00
e5f0760009
Fix entrypoint.sh incorrectly passing logs directory as data volume with improved separation ( #561 )
...
* Initial plan
* Fix entrypoint.sh: separate log directory from data volumes
Co-authored-by: overtrue <[email protected] >
* Improve separation: use functions and RUSTFS_OBS_LOG_DIRECTORY env var
Co-authored-by: overtrue <[email protected] >
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected] >
Co-authored-by: overtrue <[email protected] >
1.0.0-alpha.58
2025-09-18 17:05:14 +08:00
houseme and GitHub
a6c211f4ea
Feature/add dns logs ( #558 )
...
* add logs
* improve code for dns and logger
2025-09-18 12:00:43 +08:00
f049c656d9
fix: list_objects does not return common_prefixes field. ( #543 ) ( #554 )
...
Co-authored-by: loverustfs <[email protected] >
2025-09-18 07:27:37 +08:00
majinghe and GitHub
65dd947350
add tls support for docker compose ( #553 )
...
* add tls support for docker compose
* update docker compose file with comment
2025-09-17 22:45:23 +08:00
57f082ee2b
fix: enforce max-keys limit to 1000 in S3 implementation ( #549 )
...
Co-authored-by: damon <[email protected] >
1.0.0-alpha.57
2025-09-16 18:02:24 +08:00
weisd and GitHub
ae7e86d7ef
refactor: simplify initialization flow and modernize string formatting ( #548 )
2025-09-16 15:44:50 +08:00
houseme and GitHub
a12a3bedc3
feat(obs): optimize WriteMode selection logic in init_telemetry ( #546 )
...
- Refactor WriteMode selection to ensure all variables moved into thread closures are owned types, preventing lifetime issues.
- Simplify and clarify WriteMode assignment for production and non-production environments.
- Improve code readability and maintainability for logger initialization.
2025-09-16 08:25:37 +08:00
cafec06b7e
[Optimization] Enhance obs module telemetry.rs with environment-aware logging and production security ( #539 )
...
* Initial plan
* Implement environment-aware logging with production stdout auto-disable
Co-authored-by: houseme <[email protected] >
* add mimalloc crate
* fix
* improve code
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected] >
Co-authored-by: houseme <[email protected] >
Co-authored-by: houseme <[email protected] >
Co-authored-by: loverustfs <[email protected] >
2025-09-15 14:52:20 +08:00
Parm Gill and GitHub
1770679e66
Adding a toggle for update check ( #532 )
2025-09-14 22:26:48 +08:00
a4fbf596e6
add startup logo ( #528 )
...
* add startup logo
* Replace logo ASCII art in main.rs
---------
Co-authored-by: houseme <[email protected] >
Co-authored-by: 安正超 <[email protected] >
2025-09-14 12:04:00 +08:00
houseme and GitHub
3f717292bf
feat(console): support accessing console endpoint via port 9000 ( #533 )
...
* fix(main): update dns_init startup logic and remove unused code in http.rs
- Refactored the DNS resolver initialization logic in `main.rs` for improved startup reliability and error handling.
- Removed unused code from `http.rs` to keep the codebase clean and maintainable.
* feat(console): support accessing console endpoint via port 9000
- Added compatibility to allow console access through port 9000.
- Improved endpoint detection and routing for console service on standard and custom ports.
- Enhanced user experience for environments using port 9000 as the default access point.
1.0.0-alpha.56
2025-09-14 01:14:14 +08:00
houseme and GitHub
73f0ecbf8f
fix(main): update dns_init startup logic and remove unused code in http.rs ( #531 )
...
- Refactored the DNS resolver initialization logic in `main.rs` for improved startup reliability and error handling.
- Removed unused code from `http.rs` to keep the codebase clean and maintainable.
2025-09-13 23:43:25 +08:00
houseme and GitHub
0c3079ae5e
remove deps ( #529 )
2025-09-13 21:06:40 +08:00
majinghe and GitHub
ebf30b0db5
update docker compose usage guidence in READEME file ( #526 )
2025-09-13 16:24:36 +08:00
29c004d935
feat: enhance console separation with enterprise-grade security, monitoring, and advanced tower-http integration ( #513 )
...
* Initial plan
* feat: implement console service separation from endpoint
Co-authored-by: houseme <[email protected] >
* feat: add console separation documentation and tests
Co-authored-by: houseme <[email protected] >
* feat: enhance console separation with configurable CORS and improved Docker support
Co-authored-by: houseme <[email protected] >
* feat: implement enhanced console separation with security hardening and monitoring
Co-authored-by: houseme <[email protected] >
* refactor: implement console TLS following endpoint logic and improve configuration
Co-authored-by: houseme <[email protected] >
* add tower-http feature "timeout|limit"
* add dependencies crates `axum-server`
* refactor: reconstruct console server with enhanced tower-http features and environment variables
Co-authored-by: houseme <[email protected] >
* upgrade dep
* improve code for dns and console port `:9001`
* improve code
* fix
* docs: comprehensive improvement of console separation documentation and Docker deployment standards
Co-authored-by: houseme <[email protected] >
* fmt
* add logs
* improve code for Config handler
* remove logs
* fix
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected] >
Co-authored-by: houseme <[email protected] >
Co-authored-by: houseme <[email protected] >
1.0.0-alpha.55
2025-09-13 14:48:14 +08:00
majinghe and GitHub
4595bf7db6
fix docker compose running with no such file error ( #519 )
...
* fix docker compose running with no such file error
* fix observability docker compose
1.0.0-alpha.54
2025-09-13 13:04:06 +08:00
guojidan and GitHub
f372ccf4a8
disable pprof on win ( #524 )
...
Signed-off-by: junxiang Mu <[email protected] >
1.0.0-alpha.53
2025-09-12 18:43:45 +08:00
guojidan and GitHub
9ce867f585
feat(lock): Optimize lock management performance in high-concurrency scenarios ( #523 )
...
Increase the size of the notification pool to reduce the thundering herd effect under high concurrency
Implement an adaptive timeout mechanism that dynamically adjusts based on system load and priority
Add a lock protection mechanism to prevent premature cleanup of active locks
Add lock acquisition methods for high-priority and critical-priority locks
Improve the cleanup strategy to be more conservative under high load
Add detailed debug logs to assist in diagnosing lock issues
Signed-off-by: junxiang Mu <[email protected] >
2025-09-12 18:17:07 +08:00
124c31a68b
refactor(profiling): Remove performance profiling support for Windows and optimize dependency management ( #518 )
...
Remove the pprof performance profiling functionality on the Windows platform, as this platform does not support the relevant features
Move the pprof dependency to the platform-specific configuration for non-Windows systems
Update the performance profiling endpoint handling logic to distinguish between platform support statuses
Add the CLAUDE.md document to explain project build and architecture information
Signed-off-by: RustFS Developer <[email protected] >
Co-authored-by: RustFS Developer <[email protected] >
2025-09-12 09:11:44 +08:00
guojidan and GitHub
62a01f3801
Performance: improve ( #514 )
...
* Performance: improve
Signed-off-by: junxiang Mu <[email protected] >
* remove dirty
Signed-off-by: junxiang Mu <[email protected] >
* fix some err
Signed-off-by: junxiang Mu <[email protected] >
---------
Signed-off-by: junxiang Mu <[email protected] >
2025-09-11 19:48:28 +08:00