安正超
dd47fcf2a8
fix: restore localized samples in tests ( #749 )
...
* fix: restore required localized examples
* style: fix formatting issues
2025-10-29 13:16:31 +08:00
houseme
c5264f9703
improve code for metrics and switch tokio-tar to astral-tokio-tar ( #705 )
...
* improve code for metrics and switch tokio-tar to astral-tokio-tar
* remove log
* fix
2025-10-24 13:07:56 +08:00
houseme
42d3645d6f
fix(targets): make target removal and reload transactional; prevent reappearing entries ( #662 )
...
* 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 <1472352+overtrue@users.noreply.github.com >
* bufigx
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: overtrue <1472352+overtrue@users.noreply.github.com >
Co-authored-by: overtrue <anzhengchao@gmail.com >
* Improve lock (#596 )
* improve lock
Signed-off-by: Mu junxiang <1948535941@qq.com >
* feat(tests): add wait_for_object_absence helper and improve lifecycle test reliability
Signed-off-by: Mu junxiang <1948535941@qq.com >
* chore: remove dirty docs
Signed-off-by: Mu junxiang <1948535941@qq.com >
---------
Signed-off-by: Mu junxiang <1948535941@qq.com >
* feat(append): implement object append operations with state tracking (#599 )
* feat(append): implement object append operations with state tracking
Signed-off-by: junxiang Mu <1948535941@qq.com >
* chore: rebase
Signed-off-by: junxiang Mu <1948535941@qq.com >
---------
Signed-off-by: junxiang Mu <1948535941@qq.com >
* build(deps): upgrade s3s (#595 )
Co-authored-by: loverustfs <155562731+loverustfs@users.noreply.github.com >
* fix: validate mqtt broker
* improve code for `import`
* fix
* improve
* remove logger from `rustfs-obs` crate
* remove code for config Observability
* fix
* improve code
* fix comment
* up
* up
* upgrade version
* fix
* fmt
* upgrade tokio version to 1.48.0
* upgrade `datafusion` and `reed-solomon-simd` version
* fix
* fmt
* improve code for notify webhook example
* improve code
* fix
* fix
* fmt
---------
Signed-off-by: Mu junxiang <1948535941@qq.com >
Signed-off-by: junxiang Mu <1948535941@qq.com >
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com >
Co-authored-by: overtrue <1472352+overtrue@users.noreply.github.com >
Co-authored-by: overtrue <anzhengchao@gmail.com >
Co-authored-by: guojidan <63799833+guojidan@users.noreply.github.com >
Co-authored-by: Nugine <nugine@foxmail.com >
Co-authored-by: loverustfs <155562731+loverustfs@users.noreply.github.com >
2025-10-17 15:34:53 +08:00
安正超
639bf0c233
Revert "feat(append): implement object append operations with state tracking ( #599 )" ( #646 )
...
This reverts commit 4f73760a45 .
2025-10-12 23:47:51 +08:00
Nugine
626c7ed34a
fix: CompleteMultipartUpload encryption ( #626 )
2025-10-08 20:27:40 +08:00
guojidan
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 <1948535941@qq.com >
* chore: rebase
Signed-off-by: junxiang Mu <1948535941@qq.com >
---------
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-09-27 20:06:26 -07:00
guojidan
be66cf8bd3
Improve lock ( #596 )
...
* improve lock
Signed-off-by: Mu junxiang <1948535941@qq.com >
* feat(tests): add wait_for_object_absence helper and improve lifecycle test reliability
Signed-off-by: Mu junxiang <1948535941@qq.com >
* chore: remove dirty docs
Signed-off-by: Mu junxiang <1948535941@qq.com >
---------
Signed-off-by: Mu junxiang <1948535941@qq.com >
2025-09-27 17:57:56 -07:00
weisd
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
houseme
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
2025-09-24 22:23:31 +08:00
guojidan
ef0dbaaeb5
feat(encryption): add managed encryption support for SSE-S3 and SSE-KMS ( #583 )
...
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-09-24 02:09:04 -07:00
Copilot
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 <4829346+houseme@users.noreply.github.com >
* Changes before error encountered
Co-authored-by: houseme <4829346+houseme@users.noreply.github.com >
* Complete audit system with comprehensive observability and test coverage
Co-authored-by: houseme <4829346+houseme@users.noreply.github.com >
* 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] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: houseme <4829346+houseme@users.noreply.github.com >
Co-authored-by: houseme <housemecn@gmail.com >
2025-09-24 08:23:46 +08:00
guojidan
9ddf6a011d
feature: support kms && encryt ( #573 )
...
* feat(kms): implement key management service with local and vault backends
Signed-off-by: junxiang Mu <1948535941@qq.com >
* feat(kms): enhance security with zeroize for sensitive data and improve key management
Signed-off-by: junxiang Mu <1948535941@qq.com >
* remove Hashi word
Signed-off-by: junxiang Mu <1948535941@qq.com >
* refactor: remove unused request structs from kms handlers
Signed-off-by: junxiang Mu <1948535941@qq.com >
---------
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-09-22 17:53:05 +08:00
zzhpro
c2d782bed1
feat: support conditional writes ( #409 )
...
* feat: support conditional writes
* refactor: avoid using unwrap
* fix: obtain lock before check in CompleteMultiPartUpload
* refactor: do not obtain a lock when getting object meta
* fix: avoid using unwrap and modifying incoming arguments
* test: add e2e tests for conditional writes
---------
Co-authored-by: guojidan <63799833+guojidan@users.noreply.github.com >
Co-authored-by: 安正超 <anzhengchao@gmail.com >
Co-authored-by: loverustfs <155562731+loverustfs@users.noreply.github.com >
2025-08-25 18:35:24 -07:00
junxiang Mu
e369e9f481
Feature: lock support auto release
...
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-08-09 17:52:08 +08:00
guojidan
d987686c14
feat(lifecycle): Implement object lifecycle management functionality ( #358 )
...
* feat(lifecycle): Implement object lifecycle management functionality
Add a lifecycle module to automatically handle object expiration and transition during scanning
Modify the file metadata cache module to be publicly visible to support lifecycle operations
Adjust the scanning interval to a shorter time for testing lifecycle rules
Implement the parsing and execution logic for S3 lifecycle configurations
Add integration tests to verify the lifecycle expiration functionality
Update dependencies to support the new lifecycle features
Signed-off-by: junxiang Mu <1948535941@qq.com >
* fix cargo dependencies
Signed-off-by: junxiang Mu <1948535941@qq.com >
* fix fmt
Signed-off-by: junxiang Mu <1948535941@qq.com >
---------
Signed-off-by: junxiang Mu <1948535941@qq.com >
Co-authored-by: houseme <housemecn@gmail.com >
2025-08-08 10:51:02 +08:00
houseme
c5df1f92c2
refactor: replace lazy_static with LazyLock and notify crate registry create_targets_from_config ( #311 )
...
* improve code for notify
* improve code for logger and fix typo (#272 )
* Add GNU to build.yml (#275 )
* fix unzip error
* fix url change error
fix url change error
* Simplify user experience and integrate console and endpoint
Simplify user experience and integrate console and endpoint
* Add gnu to build.yml
* upgrade version
* feat: add `cargo clippy --fix --allow-dirty` to pre-commit command (#282 )
Resolves #277
- Add --fix flag to automatically fix clippy warnings
- Add --allow-dirty flag to run on dirty Git trees
- Improves code quality in pre-commit workflow
* fix: the issue where preview fails when the path length exceeds 255 characters (#280 )
* fix
* fix: improve Windows build support and CI/CD workflow (#283 )
- Fix Windows zip command issue by using PowerShell Compress-Archive
- Add Windows support for OSS upload with ossutil
- Replace Chinese comments with English in build.yml
- Fix bash syntax error in package_zip function
- Improve code formatting and consistency
- Update various configuration files for better cross-platform support
Resolves Windows build failures in GitHub Actions.
* fix: update link in README.md leading to a 404 error (#285 )
* add rustfs.spec for rustfs (#103 )
add support on loongarch64
* improve cargo.lock
* build(deps): bump the dependencies group with 5 updates (#289 )
Bumps the dependencies group with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [hyper-util](https://github.com/hyperium/hyper-util ) | `0.1.15` | `0.1.16` |
| [rand](https://github.com/rust-random/rand ) | `0.9.1` | `0.9.2` |
| [serde_json](https://github.com/serde-rs/json ) | `1.0.140` | `1.0.141` |
| [strum](https://github.com/Peternator7/strum ) | `0.27.1` | `0.27.2` |
| [sysinfo](https://github.com/GuillaumeGomez/sysinfo ) | `0.36.0` | `0.36.1` |
Updates `hyper-util` from 0.1.15 to 0.1.16
- [Release notes](https://github.com/hyperium/hyper-util/releases )
- [Changelog](https://github.com/hyperium/hyper-util/blob/master/CHANGELOG.md )
- [Commits](https://github.com/hyperium/hyper-util/compare/v0.1.15...v0.1.16 )
Updates `rand` from 0.9.1 to 0.9.2
- [Release notes](https://github.com/rust-random/rand/releases )
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-random/rand/compare/rand_core-0.9.1...rand_core-0.9.2 )
Updates `serde_json` from 1.0.140 to 1.0.141
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.140...v1.0.141 )
Updates `strum` from 0.27.1 to 0.27.2
- [Release notes](https://github.com/Peternator7/strum/releases )
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Peternator7/strum/compare/v0.27.1...v0.27.2 )
Updates `sysinfo` from 0.36.0 to 0.36.1
- [Changelog](https://github.com/GuillaumeGomez/sysinfo/blob/master/CHANGELOG.md )
- [Commits](https://github.com/GuillaumeGomez/sysinfo/compare/v0.36.0...v0.36.1 )
---
updated-dependencies:
- dependency-name: hyper-util
dependency-version: 0.1.16
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: rand
dependency-version: 0.9.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: serde_json
dependency-version: 1.0.141
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: strum
dependency-version: 0.27.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: sysinfo
dependency-version: 0.36.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* improve code for logger
* improve
* upgrade
* refactor: 优化构建工作流,统一 latest 文件处理和简化制品上传 (#293 )
* Refactor: DatabaseManagerSystem as global
Signed-off-by: junxiang Mu <1948535941@qq.com >
* fix: fmt
Signed-off-by: junxiang Mu <1948535941@qq.com >
* Test: add e2e_test for s3select
Signed-off-by: junxiang Mu <1948535941@qq.com >
* Test: add test script for e2e
Signed-off-by: junxiang Mu <1948535941@qq.com >
* improve code for registry and intergation
* improve code for registry `create_targets_from_config`
* fix
* Feature up/ilm (#305 )
* fix
* fix
* fix
* fix delete-marker expiration. add api_restore.
* fix
* time retry object upload
* lock file
* make fmt
* fix
* restore object
* fix
* fix
* serde-rs-xml -> quick-xml
* fix
* checksum
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* transfer lang to english
* upgrade clap version from 4.5.41 to 4.5.42
* refactor: replace `lazy_static` with `LazyLock`
* add router
* fix: modify comment
* improve code
* fix typos
* fix
* fix: modify name and fmt
* improve code for registry
* fix test
---------
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: junxiang Mu <1948535941@qq.com >
Co-authored-by: loverustfs <155562731+loverustfs@users.noreply.github.com >
Co-authored-by: 安正超 <anzhengchao@gmail.com >
Co-authored-by: shiro.lee <69624924+shiroleeee@users.noreply.github.com >
Co-authored-by: Marco Orlandin <mipnamic@mipnamic.net >
Co-authored-by: zhangwenlong <zhangwenlong@loongson.cn >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: junxiang Mu <1948535941@qq.com >
Co-authored-by: likewu <likewu@126.com >
2025-07-30 19:02:10 +08:00
junxiang Mu
de905a878c
Cargo: use workspace dependence
...
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-07-28 11:02:40 +08:00
junxiang Mu
f3252f989b
Test: Add e2e test case for lock transactional
...
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-07-28 11:00:10 +08:00
junxiang Mu
612404c47f
Test: add e2e_test for s3select
...
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-07-25 15:07:44 +08:00
junxiang Mu
cad005bc21
refactor(lock): unify NamespaceLock client model and LockRequest API
...
- Refactor NamespaceLock to use a unified client vector and quorum mechanism,
removing legacy local/distributed lock split and related code.
- Update LockRequest to split timeout into acquire_timeout and ttl, and add
builder methods for both.
- Adjust all batch lock APIs to accept ttl and use new LockRequest fields.
- Update all affected tests and documentation for the new API.
Signed-off-by: junxiang Mu <1948535941@qq.com >
2025-07-24 11:52:57 +08:00
root
dc44cde081
tmp
...
Signed-off-by: root <root@PC.localdomain >
2025-07-24 11:52:57 +08:00
dandan
4ccdeb9d2a
refactor(lock): restructure lock crate, remove unused modules and clarify directory layout
...
- Remove unused core/rwlock.rs and manager/ modules (ManagerFactory, LifecycleManager, NamespaceManager)
- Move all lock-related code into crates/lock/src with clear submodules: client, core, utils, etc.
- Ensure only necessary files and APIs are exposed, improve maintainability
- No functional logic change, pure structure and cleanup refactor
Signed-off-by: dandan <dandan@dandandeMac-Studio.local >
2025-07-24 11:52:55 +08:00
houseme
5826396cd0
refactor: Restructure project layout and clean up dependencies ( #30 )
...
This commit introduces a significant reorganization of the project structure to improve maintainability and clarity.
Key changes include:
- Adjusted the directory layout for a more logical module organization.
- Removed unused crate dependencies, reducing the overall project size and potentially speeding up build times.
- Updated import paths and configuration files to reflect the structural changes.
2025-07-02 19:33:12 +08:00