Merging code from dev to dev-1.x and analyzing differences#24
Merged
mercyblitz merged 57 commits intodev-1.xfrom Apr 5, 2026
Merged
Merging code from dev to dev-1.x and analyzing differences#24mercyblitz merged 57 commits intodev-1.xfrom
mercyblitz merged 57 commits intodev-1.xfrom
Conversation
Documented the introduction version of several Redis command interface constants using @SInCE tags for better clarity on their availability in Spring Data Redis.
Changed visibility of default property value constants in KafkaConsumerRedisReplicatorConfiguration from private to package-private to allow direct access in tests. Added a new test method in KafkaConsumerRedisReplicatorConfigurationTest to verify the values of these constants and related configuration constants.
Corrected the compatibility range for branch 0.1.x to start from Spring Data Redis 2.1.0 instead of 2.0.0.
Moved <properties> section above <dependencies> and removed unused <classPath> property. Reformatted plugin <argument> for better readability.
Renamed 'docUtils' to 'javaFileObjects' for clarity in SpringDataRedisMetadataGenerator and updated its usage in the DocumentationTask call.
Release 0.2.0
Changed the Maven badge in README.md to reference microsphere-redis instead of microsphere-gateway for accuracy.
Updated Maven badge to reflect microsphere-redis version.
Imported DefaultRedisConfig and included it in the @ContextConfiguration classes for KafkaRedisReplicatorModuleInitializerIntegrationTest to ensure proper Redis configuration during integration testing.
Adjusted the order of import statements for better organization and consistency in RedisMethodContext.java.
Moved the import of io.microsphere.redis.metadata.Parameter to group it with other imports for better organization and readability.
Included DefaultRedisConfig in the @ContextConfiguration classes for RedisCommandReplicatorIntegrationTest to ensure proper Redis configuration during integration testing.
Deleted static @bean methods for RedisTemplate, StringRedisTemplate, and RedisConnectionFactory from AbstractRedisReplicatorTest. These definitions are likely unnecessary for the test context or have been moved elsewhere.
Updated the resolvableType method to use ResolvableType.forClass instead of forType for obtaining the generic type. This change improves type resolution for the AbstractSerializer class.
Deleted the trailing newline at the end of BoundarySerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of ByteArraySerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of DoubleSerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of GeoLocationSerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of IntegerSerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of LongSerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of PointSerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of RangeSerializer.java to conform to file formatting standards.
Deleted the trailing newline at the end of RedisZSetCommandsRangeSerializer.java to conform to file formatting standards.
Deleted an unnecessary blank line at the end of ShortSerializer.java to improve code formatting.
Deleted the trailing newline at the end of WeightsSerializer.java to conform to file formatting standards.
Replaced references to 'delegate' with 'this.delegate' in HoldingValueRedisSerializerWrapper for clarity and consistency.
Introduces the RangeModel class to adapt between RedisZSetCommands.Range and Spring's Range, supporting serialization and deserialization. This utility facilitates interoperability and externalization of range objects.
Simplifies RangeSerializer by delegating Range to RangeModel conversion to static methods. Removes manual extraction and assignment of Range bounds, improving code maintainability and readability.
Replaces the use of range.toRange() with RangeModel.from(range) in RedisZSetCommandsRangeSerializer to improve serialization consistency.
Extended MethodMetadataTest to include assertions and setup for the parameterNames property, ensuring correct behavior for equality and getter/setter methods.
Introduces collection and storage of method parameter names in the generated metadata for Spring Data Redis command methods. Refactors parameter type resolution and updates the metadata map to include both parameter names and types.
Added explicit parameterNames for all method entries in spring-data-redis-metadata.yaml to improve clarity and support for reflection or code generation. This enhances documentation and tooling around Redis command interfaces.
Updated Parameter and ParameterMetadata toString methods to use symbol constants for formatting. Refactored SpringRedisMetadataRepository to remove Spring's ParameterNameDiscoverer and use method metadata for parameter names, simplifying parameter metadata construction.
Replaces direct call to buildParameterMetadataList with a new getParameterMetadataList method that considers parameter names from MethodMetadata. Updates method to use redisCommandMethod when parameter names are unavailable, improving flexibility and correctness in parameter metadata construction.
Introduced a unit test to verify that getParameterMetadataList returns the expected parameter metadata for Redis command methods by comparing it with buildParameterMetadataList.
Changed the project name from 'Microsphere Spring' to 'Microsphere Redis' in the license section to accurately reflect the repository.
Release 0.2.0
Introduces Docker Compose setup, startup, and teardown steps to the maven-publish GitHub Actions workflow. This allows test services defined in docker/test-services.yml to be started before publishing and stopped after, improving the workflow's environment setup.
Workflow improvements and Docker Compose integration
Sync 0.2.0 code
Add and improve JavaDocs, usage examples and small API conveniences across microsphere-redis core and spring modules. Notable changes: add RawValue.of factory, expose a CLASS_LOADER constant in RedisUtils, document RedisCommandUtils/RedisUtils/ValueHolder APIs (method id/index/signature builders, parameter metadata helpers, resource loaders), and expand documentation for metadata, parameter and method model classes as well as Spring annotations/registrars and interceptors. Changes are primarily documentation and clarifications with a few minor non-breaking API helpers to improve discoverability and usage.
Replace the checked-in maven-wrapper.jar with the newer script-only Maven Wrapper (v3.3.4): remove .mvn/wrapper/maven-wrapper.jar, update .mvn/wrapper/maven-wrapper.properties to use wrapperVersion=3.3.4, distributionType=only-script and point distributionUrl to a mirror. Replace mvnw and mvnw.cmd with the new wrapper scripts (improved download/validation, MVNW_* options, mvnd support, temp handling, and installation into ~/.m2/wrapper/dists). Add Dependabot config to enable daily Maven dependency updates and add a GitHub Actions workflow that auto-merges main into dev and release (with conflict detection and branch-existence checks).
Add 'main' to push triggers, switch the workflow to use the Maven wrapper (./mvnw) instead of system mvn, remove the 'cache: maven' step, and add -Dsurefire.useSystemClassLoader=false to the test invocation. These changes aim to ensure a consistent build environment in CI and avoid Surefire classloader issues during tests.
Replace default revision placeholder and add validation for revision format in the build job. Introduce a new release job that runs after build: checks out full history, creates a git tag (if missing), creates a GitHub release via the gh CLI (if missing), increments the patch version in pom.xml to a -SNAPSHOT next version, and commits & pushes that change. The release job requires write permissions for contents and uses the GITHUB_TOKEN; version validation enforces a numeric major.minor.patch pattern.
Restore the missing newline at end of .mvn/wrapper/maven-wrapper.properties. This is a non-functional formatting fix to conform to POSIX text file conventions and avoid spurious diffs.
Sync the branch 'dev'
Merged source code improvements from dev branch: - Enhanced Javadoc across all Redis modules - Added dependabot.yml configuration - Added merge-main-to-branches workflow - Updated Maven Wrapper to 3.3.4 - Added version validation and release job to publish workflow - Added RedisConnection interface initialization in SpringRedisMetadataRepository - Added buildMethodIndex and getParameterClassNames utilities - Simplified KafkaConsumerRedisReplicatorConfiguration (direct CommonClientConfigs import) - Updated spring-data-redis-metadata.yaml with enhanced parameter names Preserved Java 8+ / Spring Data Redis 2.x compatibility: - Kept RawValue as a class (not Java 16+ record) - Kept traditional instanceof patterns (no Java 16+ pattern matching) - Kept javax.servlet dependency (not jakarta.servlet) - Kept Spring Boot 2.x profiles in parent POM - Kept resolveTargetType/canSerialize/getTargetType methods for Spring Data Redis 2.x - Kept RedisZSetCommandsWeightsSerializer (not WeightsSerializer with 3.x imports) - Kept dev-1.x branch references in CI workflows - Kept revision as 0.1.0-SNAPSHOT
Copilot created this pull request from a session on behalf of
mercyblitz
March 23, 2026 09:18
View session
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Pull request created by AI Agent