Skip to content

Conversation

@axies20
Copy link
Owner

@axies20 axies20 commented Feb 23, 2025

No description provided.

Deleted obsolete and unused projects, test files, and examples, including encryption, compression, and ETAMP-related components. These files were no longer relevant to the codebase and simplified project structure and maintenance."
Introduced a new console example project to demonstrate compression functionalities. Refactored user-specific `.DotSettings` and IDE-related files for cleanup and consistency.

Signed-off-by: Maksym <[email protected]>
Introduced a new console project to demonstrate compression functionalities. Refactored `.DotSettings` and IDE-related workspace configurations for better clarity and consistency. Updated example project dependencies and streamlined redundant configurations.

Signed-off-by: Maksym <[email protected]>
Replaced `ETAMPProtocol` with `ETAMPModelFactory` in service registration for clearer responsibility segregation. Simplified Pipe-based JSON serialization across extensions and resolved redundancies in compression service factory design by using `IDictionary`. Improved error handling and streamlined code for better maintainability.

Signed-off-by: Maksym <[email protected]>
Refactored serialization and compression logic to use `MemoryStream` instead of `Pipe`, improving simplicity and maintainability. Added logging to track compression and decompression processes, and integrated `CancellationToken` support for better performance management. Enhanced error handling and ensured consistent checks for compression type validity.

Signed-off-by: Maksym <[email protected]>
Replaced `Pipe` with `MemoryStream` for improved simplicity and maintainability. Added decompression functionality in the console example and updated `DeflateCompressionService` and `CompressionManager` to enhance error handling, logging, and token management. These changes ensure better performance, modularity, and consistency across the compression service implementation.

Signed-off-by: Maksym <[email protected]>
Replaced compression factory pattern with DI-based keyed services for improved maintainability. Introduced a helper method to streamline pipe data reading, reducing code duplication. Enhanced error handling, logging, and modularity across compression and decompression logic.

Signed-off-by: Maksym <[email protected]>
Reorganized and improved the ETAMP codebase by updating extensions, interfaces, and methods for better modularity and maintainability. Added detailed XML summaries for clearer documentation and introduced asynchronous JSON serialization across models and tokens. Refactored the compression service pattern with Dependency Injection and enhanced error handling for improved performance and clarity.

Signed-off-by: Maksym <[email protected]>
Added new test projects for `Compression` and `Encryption`, including relevant configurations and dependencies. Refactored service collection extensions to enhance modularity and replace obsolete wrappers with more descriptive providers. Improved project organization, updated XML summaries, and removed unused IDE metadata files for clarity.

Signed-off-by: Maksym <[email protected]>
Enhanced exception handling for compression services, adding specific cases for null arguments and operation cancellations. Improved readability of error messages and updated validations for compression type and model tokens. Minor structural updates to project configuration files were also included.

Signed-off-by: Maksym <[email protected]>
This commit introduces a shelved patch to track uncommitted changes in the `.idea/.idea.ETAMP` directory. It ensures work-in-progress changes are not lost during rebases or other operations. This is relevant for preserving local development state.

Signed-off-by: Maksym <[email protected]>
Introduced a new ETAMP.Encryption.Console project with necessary configurations and dependencies. Refactored encryption services to include Diffie-Hellman encryption and decryption methods for enhanced security. Improved benchmarking setup and added decompression logic to ETAMP.Compress.Benchmark.

Signed-off-by: Maksym <[email protected]>
Introduced the ETAMP.Encryption.Console project with necessary configurations. Enhanced encryption services by implementing Diffie-Hellman encryption and decryption for better security. Additionally, updated benchmarks and added decompression logic to ETAMP.Compress.Benchmark.

Signed-off-by: Maksym <[email protected]>
Updated XML documentation across various files to improve consistency, readability, and formatting. Adjustments include indentation changes, expanded summaries, and better parameter explanations.

Signed-off-by: Maksym <[email protected]>
Introduced `CompleteFlushAsync` method to streamline resource cleanup and reuse logic across GZip and Deflate compression services. Improved XML documentation for better clarity and consistency. Adjusted method implementations to align with the updated structure, enhancing maintainability and readability.

Signed-off-by: Maksym <[email protected]>
Added `.idea/` and `.vs/` directories to the ignored files list to prevent committing IDE-specific settings. This ensures a cleaner repository and avoids platform-specific clutter.

Signed-off-by: Maksym <[email protected]>
Deleted obsolete and unused projects, test files, and examples, including encryption, compression, and ETAMP-related components. These files were no longer relevant to the codebase and simplified project structure and maintenance."
Introduced a new console example project to demonstrate compression functionalities. Refactored user-specific `.DotSettings` and IDE-related files for cleanup and consistency.

Signed-off-by: Maksym <[email protected]>
Introduced a new console project to demonstrate compression functionalities. Refactored `.DotSettings` and IDE-related workspace configurations for better clarity and consistency. Updated example project dependencies and streamlined redundant configurations.

Signed-off-by: Maksym <[email protected]>
Replaced `ETAMPProtocol` with `ETAMPModelFactory` in service registration for clearer responsibility segregation. Simplified Pipe-based JSON serialization across extensions and resolved redundancies in compression service factory design by using `IDictionary`. Improved error handling and streamlined code for better maintainability.

Signed-off-by: Maksym <[email protected]>
Refactored serialization and compression logic to use `MemoryStream` instead of `Pipe`, improving simplicity and maintainability. Added logging to track compression and decompression processes, and integrated `CancellationToken` support for better performance management. Enhanced error handling and ensured consistent checks for compression type validity.

Signed-off-by: Maksym <[email protected]>
Replaced `Pipe` with `MemoryStream` for improved simplicity and maintainability. Added decompression functionality in the console example and updated `DeflateCompressionService` and `CompressionManager` to enhance error handling, logging, and token management. These changes ensure better performance, modularity, and consistency across the compression service implementation.

Signed-off-by: Maksym <[email protected]>
Replaced compression factory pattern with DI-based keyed services for improved maintainability. Introduced a helper method to streamline pipe data reading, reducing code duplication. Enhanced error handling, logging, and modularity across compression and decompression logic.

Signed-off-by: Maksym <[email protected]>
Reorganized and improved the ETAMP codebase by updating extensions, interfaces, and methods for better modularity and maintainability. Added detailed XML summaries for clearer documentation and introduced asynchronous JSON serialization across models and tokens. Refactored the compression service pattern with Dependency Injection and enhanced error handling for improved performance and clarity.

Signed-off-by: Maksym <[email protected]>
Added new test projects for `Compression` and `Encryption`, including relevant configurations and dependencies. Refactored service collection extensions to enhance modularity and replace obsolete wrappers with more descriptive providers. Improved project organization, updated XML summaries, and removed unused IDE metadata files for clarity.

Signed-off-by: Maksym <[email protected]>
Enhanced exception handling for compression services, adding specific cases for null arguments and operation cancellations. Improved readability of error messages and updated validations for compression type and model tokens. Minor structural updates to project configuration files were also included.

Signed-off-by: Maksym <[email protected]>
This commit introduces a shelved patch to track uncommitted changes in the `.idea/.idea.ETAMP` directory. It ensures work-in-progress changes are not lost during rebases or other operations. This is relevant for preserving local development state.

Signed-off-by: Maksym <[email protected]>
Introduced a new ETAMP.Encryption.Console project with necessary configurations and dependencies. Refactored encryption services to include Diffie-Hellman encryption and decryption methods for enhanced security. Improved benchmarking setup and added decompression logic to ETAMP.Compress.Benchmark.

Signed-off-by: Maksym <[email protected]>
Introduced the ETAMP.Encryption.Console project with necessary configurations. Enhanced encryption services by implementing Diffie-Hellman encryption and decryption for better security. Additionally, updated benchmarks and added decompression logic to ETAMP.Compress.Benchmark.

Signed-off-by: Maksym <[email protected]>
Updated XML documentation across various files to improve consistency, readability, and formatting. Adjustments include indentation changes, expanded summaries, and better parameter explanations.

Signed-off-by: Maksym <[email protected]>
Introduced `CompleteFlushAsync` method to streamline resource cleanup and reuse logic across GZip and Deflate compression services. Improved XML documentation for better clarity and consistency. Adjusted method implementations to align with the updated structure, enhancing maintainability and readability.

Signed-off-by: Maksym <[email protected]>
Added `.idea/` and `.vs/` directories to the ignored files list to prevent committing IDE-specific settings. This ensures a cleaner repository and avoids platform-specific clutter.

Signed-off-by: Maksym <[email protected]>
Previously, only the root .idea and .vs directories were ignored. This change ensures that all files and subdirectories within these folders are excluded, preventing accidental tracking of internal project configurations.
Renamed AddWrapperServices to AddProviders for clearer semantics, and introduced ECIESEncryptionManager along with its interface to handle ECIES-based encryption and decryption. Enhanced Base64UrlEncoder with methods for encoding and decoding byte arrays.
Introduce a new benchmarking project using BenchmarkDotNet to measure encryption and decryption performance. Updated the solution file accordingly and refactored related code to align with the new benchmarking setup. Simplified handling of encryption and decryption processes in `ETAMP.Encryption`.

Signed-off-by: Maksym <[email protected]>
Replaced Pipe and StreamWriter with a struct-based ETAMPModelBuilder to streamline model construction and serialization. Transitioned from heap allocations to memory-efficient, span-based operations using MemoryMarshal for improved performance. Removed unused imports for cleaner code.
Updated signature validation logic to use `ReadOnlySpan<byte>` for efficiency. Renamed methods for clarity (`ValidateETAMPMessageAsync` to `ValidateETAMPSignatureAsync`). Upgraded package dependencies to latest versions and replaced "ECDSAManager" namespace with "ECDsaManager".
Updated `StreamCompressionService` to replace `ICompressionService` references for better specificity. Removed outdated and redundant test projects for encryption and old compression methods, and added a new comprehensive test for `StreamCompressionService`. Adjusted solution and project configurations accordingly.
Introduce a new test project targeting .NET 9.0 to validate the ETAMP.Compression library. The project includes references for unit testing frameworks like xUnit, Moq, AutoFixture, and related dependencies. This will enable comprehensive testing and ensure code reliability.
This commit introduces a new unit test, `CompressAsync_CompressesCorrectly`, to validate the behavior of the `CompressAsync` method in the `CompressionManager` class. It ensures proper compression functionality and verifies key properties of the resulting model.
@axies20 axies20 self-assigned this Mar 25, 2025
axies20 added 2 commits April 9, 2025 13:41
Upgraded various packages across projects, including Microsoft.Extensions and Serilog dependencies, to their latest versions. Added a `global.json` to specify the .NET SDK version and configuration. This ensures compatibility, stability, and access to the latest features and fixes.
Removed extensive example code and extraneous details from the README to focus on key dependency installation steps. This improves readability and reduces clutter for new users.
@axies20 axies20 merged commit d43316f into master Apr 9, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants