Skip to content

Add async thread-safety tests and deprecate legacy Extensions module#333

Merged
afuno merged 7 commits into
mainfrom
feature/SRV-429/async
Feb 5, 2026
Merged

Add async thread-safety tests and deprecate legacy Extensions module#333
afuno merged 7 commits into
mainfrom
feature/SRV-429/async

Conversation

@afuno
Copy link
Copy Markdown
Member

@afuno afuno commented Feb 5, 2026

No description provided.

afuno added 3 commits February 5, 2026 17:00
- Added deprecation warnings for the `Extensions` module and `with_extensions` method.
- Provided guidance to migrate to the Stroma-based `extensions do...end` DSL.
- Highlighted limitations of the deprecated approach, such as lack of thread safety and global shared state mutation.
- Updated comments to clarify the benefits of the new mechanism, including per-class isolation and thread-safe hook management.
- Introduced new examples (`Example2`, `Example3`, `Example4`, `Example5`) under `Usual::Async`.
- Each example demonstrates unique async operations like greetings, error handling, computation, and stress tests.
- Added RSpec tests for all examples, validating inputs, outputs, and async behavior.
- Included stress tests and validation scenarios to ensure thread safety and correctness.
- Add explicit `required: false` to `should_fail` input with default value
- Add `.default(false)` assertion in spec input validations
@afuno afuno added this to the v3.0.0 milestone Feb 5, 2026
@afuno afuno self-assigned this Feb 5, 2026
@afuno afuno added the polish label Feb 5, 2026
Comment thread spec/examples/usual/async/example3_spec.rb Fixed
afuno added 2 commits February 5, 2026 17:11
- Adjusted indentation of deprecation comments for improved readability and consistency.
- Ensured alignment in notes about transitioning to the Stroma-based `extensions do...end` DSL.
- No functional changes introduced; purely a documentation update for clarity.
- Replaced explicit hash key definition with shorthand syntax (`id:`) for improved readability.
- No functional changes; purely a syntax refinement in the test inputs setup.
@afuno afuno marked this pull request as ready for review February 5, 2026 14:14
afuno added 2 commits February 5, 2026 18:12
- Updated method calls by adding parentheses to `sleep` across all examples.
- Changes applied to `Example1`, `Example2`, `Example3`, and `Example4`.
- No functional impact; improves code readability and adheres to coding style standards.
@afuno afuno merged commit 22b4ea3 into main Feb 5, 2026
37 checks passed
@afuno afuno deleted the feature/SRV-429/async branch February 5, 2026 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants