Commit Graph

1070 Commits

Author SHA1 Message Date
overtrue bc398ccf1b feat: improve test coverage and fix critical crypto bug - Translate all Chinese comments to English in utils/ip.rs and config/constants/app.rs - Add comprehensive test suite for crypto/encdec/id.rs module (14 new tests) - Fix critical bug in Argon2 key generation that was returning all-zero keys - Improve test coverage for IP utilities and configuration constants - Ensure all test cases follow English naming conventions and meaningful descriptions 2025-05-25 13:53:59 +08:00
overtrue e838f4292c docs: add strict branch management rules to prevent direct main branch modifications 2025-05-25 13:43:24 +08:00
overtrue df71cea9af refactor: improve test code quality by replacing meaningless names and content 2025-05-25 13:40:54 +08:00
安正超 077fb4ed69 Merge pull request #404 from rustfs/feat/zip-features
feat: complete zip compression module implementation
2025-05-25 13:35:46 +08:00
安正超 3eb0fd7ddd Merge pull request #405 from rustfs/feat/event-notifier-error-tests
feat: Add comprehensive test coverage for event-notifier error module
2025-05-25 13:35:17 +08:00
overtrue d7b3e20233 docs: enhance cursor rules with code quality standards 2025-05-25 13:34:06 +08:00
overtrue c970ed1587 docs: translate .cursorrules from Chinese to English 2025-05-25 13:32:33 +08:00
overtrue d9d889cb4f feat: add comprehensive tests for event-notifier error module 2025-05-25 13:28:16 +08:00
overtrue 9604efd5cc feat: add comprehensive tests for event-notifier error module 2025-05-25 13:26:25 +08:00
overtrue 5fff195295 feat: complete zip compression module implementation 2025-05-25 13:14:38 +08:00
安正超 1a91371306 Merge pull request #403 from rustfs/feat/zip-tests
feat: add comprehensive test coverage for zip compression module
2025-05-25 13:11:23 +08:00
安正超 530c73916e Merge pull request #402 from rustfs/fix/tests
feat: enhance test coverage and fix compilation errors
2025-05-25 13:11:05 +08:00
overtrue c6b3051c67 feat: add comprehensive test coverage for zip compression module 2025-05-25 13:05:11 +08:00
overtrue a6c3b122bd feat: enhance test coverage and fix compilation errors 2025-05-25 12:56:43 +08:00
houseme 136118ed21 fix 2025-05-14 19:04:52 +08:00
weisd 41194b3f6b Merge pull request #398 from rustfs/feat/legalhold
add legalhold api
2025-05-13 09:35:11 +08:00
weisd 0477e8d3ed Update rustfs/src/storage/ecfs.rs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-13 09:28:22 +08:00
weisd c69a2f83a6 add legalhold api 2025-05-12 15:45:22 +08:00
houseme 571cedf4ce feat(obs): implement global OpenTelemetry guard management 2025-05-12 13:32:18 +08:00
houseme dd7da015e3 Feature/rustfs config (#396)
* init rustfs config

* improve code for rustfs-config crate

* add

* improve code for comment

* fix: modify rustfs-config crate name

* add default fn

* improve error logger

* fix: modify docker config yaml

* improve code for config

* feat: restrict kafka feature to Linux only

- Add target-specific feature configuration in Cargo.toml for obs and event-notifier crates
- Implement conditional compilation for kafka feature only on Linux systems
- Add appropriate error handling for non-Linux platforms
- Ensure backward compatibility with existing code

* refactor(ci): optimize build workflow for better efficiency

- Integrate GUI build steps into main build-rustfs job
- Add conditional GUI build execution based on tag releases
- Simplify workflow by removing redundant build-rustfs-gui job
- Copy binary directly to embedded-rustfs directory without downloading artifacts
- Update merge job dependency to only rely on build-rustfs
- Improve cross-platform compatibility for Windows binary naming (.exe)
- Streamline artifact uploading and OSS publishing process
- Maintain consistent conditional logic for release operations

* refactor(ci): optimize build workflow for better efficiency

- Integrate GUI build steps into main build-rustfs job
- Add conditional GUI build execution based on tag releases
- Simplify workflow by removing redundant build-rustfs-gui job
- Copy binary directly to embedded-rustfs directory without downloading artifacts
- Update merge job dependency to only rely on build-rustfs
- Improve cross-platform compatibility for Windows binary naming (.exe)
- Streamline artifact uploading and OSS publishing process
- Maintain consistent conditional logic for release operations

* fix(ci): add repo-token to setup-protoc action for authentication

- Add GITHUB_TOKEN parameter to arduino/setup-protoc@v3 action
- Ensure proper authentication for Protoc installation in CI workflow
- Maintain consistent setup across different CI environments

* modify config

* improve readme.md

* remove env config relation

* add allow(dead_code)
2025-05-12 01:17:31 +08:00
houseme 0c351965a2 fix(ci): add repo-token to setup-protoc action for authentication
- Add GITHUB_TOKEN parameter to arduino/setup-protoc@v3 action
- Ensure proper authentication for Protoc installation in CI workflow
- Maintain consistent setup across different CI environments
2025-05-12 00:36:29 +08:00
houseme 07c3cb3f0a refactor(ci): optimize build workflow for better efficiency
- Integrate GUI build steps into main build-rustfs job
- Add conditional GUI build execution based on tag releases
- Simplify workflow by removing redundant build-rustfs-gui job
- Copy binary directly to embedded-rustfs directory without downloading artifacts
- Update merge job dependency to only rely on build-rustfs
- Improve cross-platform compatibility for Windows binary naming (.exe)
- Streamline artifact uploading and OSS publishing process
- Maintain consistent conditional logic for release operations
2025-05-11 23:41:19 +08:00
houseme 33cd4c546a refactor(ci): optimize build workflow for better efficiency
- Integrate GUI build steps into main build-rustfs job
- Add conditional GUI build execution based on tag releases
- Simplify workflow by removing redundant build-rustfs-gui job
- Copy binary directly to embedded-rustfs directory without downloading artifacts
- Update merge job dependency to only rely on build-rustfs
- Improve cross-platform compatibility for Windows binary naming (.exe)
- Streamline artifact uploading and OSS publishing process
- Maintain consistent conditional logic for release operations
2025-05-11 23:41:09 +08:00
houseme f6f1f3b329 add GH_TOKEN 2025-05-10 10:05:15 +08:00
houseme 780ff5f5df add x86_64-unknown-linux-musl target 2025-05-10 09:46:49 +08:00
houseme f8f58a8355 test 2025-05-10 00:52:41 +08:00
houseme 43f2963d14 test target aarch64-apple-darwin 2025-05-10 00:39:08 +08:00
houseme a7115ba699 test 2025-05-10 00:30:01 +08:00
houseme f64458018b fix 2025-05-10 00:27:54 +08:00
houseme b1358d4711 # Expand ARM64 Linux Support in Build Pipeline
Added support for both ARM64 Linux variants to the CI/CD build pipeline:

1. Enabled the previously commented `aarch64-unknown-linux-gnu` target build
2. Re-enabled the `aarch64-unknown-linux-musl` target build
3. Updated the build matrix to ensure proper runner selection:
   - Ubuntu runners build all Linux targets
   - macOS runners build only Apple Silicon targets
4. Maintained compatibility with the existing build scripts and packaging process

This expansion gives users more options for deploying on ARM64 Linux platforms, supporting both glibc and musl libc environments for maximum compatibility and performance.
2025-05-10 00:24:14 +08:00
houseme 2a9a60197b # Add aarch64-apple-darwin Build Target Support
Added ARM64 macOS (Apple Silicon) build target support to the CI/CD pipeline by:

1. Including `aarch64-apple-darwin` as a new build variant in the build matrix
2. Adding proper exclusion rules to ensure the target only runs on macOS runners
3. Ensuring compatibility with the existing build scripts and packaging process

This change enables native builds for Apple Silicon Macs, improving performance for users with M1/M2/M3/M4 processors while maintaining the same artifact organization and deployment process.
2025-05-10 00:15:05 +08:00
weisd db100a6db9 rm log 2025-05-09 22:57:09 +08:00
loverustfs fd85b55d37 Merge pull request #393 from rustfs/pref
improve multi put speed
2025-05-09 22:40:03 +08:00
junxiang Mu fd03ba54f3 improve multi put speed
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-05-09 17:13:25 +08:00
loverustfs e6e0821512 Merge pull request #389 from rustfs/feat/zip
feat: auto-extract support
2025-05-09 16:19:21 +08:00
loverustfs dc03f53655 Merge pull request #391 from rustfs/dada/fix-entry
feat: decom/rebalance
2025-05-09 16:19:09 +08:00
weisd 57cbd35de1 Merge branch 'main' into feat/zip 2025-05-09 14:38:14 +08:00
weisd d7cac5c727 Merge branch 'main' into dada/fix-entry 2025-05-09 14:33:30 +08:00
guojidan e90b531567 Merge pull request #390 from rustfs/pref
Pref
2025-05-08 19:35:22 +08:00
junxiang Mu 5cb040f863 fix zero size object bug
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-05-08 19:34:58 +08:00
junxiang Mu 7a94363b38 improve speed
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-05-08 18:37:36 +08:00
weisd 76fdefeca4 feat: auto-extract support 2025-05-08 17:42:20 +08:00
houseme 29ddf4dbc8 refactor: standardize constant management and fix typos (#387)
* init rustfs config

* init rustfs-utils crate

* improve code for rustfs-config crate

* add

* improve code for comment

* init rustfs config

* improve code for rustfs-config crate

* add

* improve code for comment

* Unified management of configurations and constants

* fix: modify rustfs-config crate name

* add default fn

* improve code for rustfs config

* refactor: standardize constant management and fix typos

- Create centralized constants module for global static constants
- Replace runtime format! expressions with compile-time constants
- Fix DEFAULT_PORT reference issues in configuration arguments
- Use const-str crate for compile-time string concatenation
- Update tokio dependency from 1.42.2 to 1.45.0
- Ensure consistent naming convention for configuration constants

* fix

* Update common/workers/src/workers.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-07 17:23:22 +08:00
guojidan de275b0510 Merge pull request #382 from rustfs/sql
support spec char as delimiter
2025-05-06 11:12:15 +08:00
junxiang Mu 0ac1095c70 support spec char as delimiter
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-05-06 11:10:30 +08:00
houseme fc47ca9dd2 upgrade version (#380) 2025-05-06 08:54:35 +08:00
houseme 01d5383ce3 Feature/bucket event notification (#365)
* add tracing instrument

* fix rebalance/decom

* modify Telemetry filter order

* feat: improve address binding and port handling mechanism (#366)

* feat: improve address binding and port handling mechanism

1. Add support for ":port" format to enable dual-stack binding (IPv4/IPv6)
2. Implement automatic port allocation when port 0 is specified
3. Optimize server startup process with unified address resolution
4. Enhance error handling and logging for address resolution
5. Improve graceful shutdown with signal listening
6. Clean up commented code in console.rs

Files:
- ecstore/src/utils/net.rs
- rustfs/src/console.rs
- rustfs/src/main.rs

Branch: feature/server-and-console-port

* improve code for console

* improve code

* improve code for console and net.rs

* Update rustfs/src/main.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update rustfs/src/utils/mod.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* upgrade config file

* modify

* fix readme

Signed-off-by: junxiang Mu <1948535941@qq.com>

* improve readme.md

* improve code for readme.md
add chinese readme.md

* Implement Storage Service Event Notification System

Added event notification capability to the storage module, enabling the storage service to publish object operation events. Key changes include:

1. Created `event_notifier` module providing core functionality:
   - `create_metadata()` - Creates event metadata objects with default configuration ID
   - `send_event()` - Asynchronously sends event notifications with error handling

2. Integrated the `rustfs_event_notifier` library:
   - Supports object creation, deletion, and access events
   - Provides event metadata building and management
   - Includes proper error propagation

These changes enable the system to trigger notifications when storage operations occur, facilitating auditing, monitoring, and integration with other systems.

* fix

---------

Signed-off-by: junxiang Mu <1948535941@qq.com>
Co-authored-by: weisd <im@weisd.in>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: junxiang Mu <1948535941@qq.com>
2025-04-30 00:31:55 +08:00
guojidan 08f7de2e33 Merge pull request #371 from rustfs/pref
tmp5
2025-04-29 19:09:30 +08:00
junxiang Mu 05fad0aca0 tmp5
Signed-off-by: junxiang Mu <1948535941@qq.com>
2025-04-29 11:08:48 +00:00
houseme b411a38813 upgrade docker image version and fix docker comman 2025-04-29 19:04:53 +08:00