rd-kt, rd-net: make available RdContext::updateValue method with disposable cookies instead of try/finally set and restore (or PushContext / PopContext) approach
rd-gen: upgrade to Kotlin 1.7
Added
rd-gen: update the Extension mechanism to support both protocol types and custom types as extensions (the main use case being able to use LocalizableString on .NET side together with @Nls String in Kotlin)
Removed
rd-gen: JetBrains.RdGen package is no longer published
2022.2.3 (Maven only)
Fixed
rd-kt: adviseSuspended doesn't check lifetime termination before executing a handler (CWM-6511)
2022.2.2 (NuGet only)
Changed
rd-net: RdFault is now serializable
2022.2.1
Added
rd-net: Assert.FailWithResult that allow throw an assertion exception and return a value where it's expected e.g. default cases of switch expressions over enums
Changed
rd-net, rd-kt, rd-gen: new threadLocalContext
2022.2.0
Changed
rd-kt: startSuspending on async Rd calls will now use the current coroutine context for response scheduler
This means that calls will now return to the current context instead of the default one. For example, if an RdCall was called from a background scheduler, then the background scheduler will be used to handle the response. Previously, the main scheduler (usually, an UI/EDT one) was used by default in such cases.
Note this only affects the calls marked as .async in the model.
rd-kt: sync Lifetime implementation with rd-net
LifetimeStatus: Canceled renamed to Canceling (Canceled is still there for most use cases, but marked as deprecated)
lifetime termination timeout is now customizable, see Lifetime::setTerminationTimeoutMs and Lifetime::terminationTimeoutKind
rd-net: LifetimeTerminationKind is now taken into account when performing Lifetime::Intersect
rd-cpp, rd-kt, rd-net: exceptions during ping are now only logged in debug/verbose mde
rd-net: small performance improvements (use EqualityComparer<T>.Default instead of just Equals)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps JetBrains.RdFramework from 2022.1.4 to 2022.3.1.
Release notes
Sourced from JetBrains.RdFramework's releases.
... (truncated)
Commits
8333406
Release: prepare 2022.3.1821cf7b
Machine readable file for used third party dependenciesa96bf82
RdContext: code cleanup, make UpdateValue methods public9beab82
Fix CWM-6511 launch handler with lifetime025f9b0
Build: remove fatJar remains6b0da66
Build: get rid of fatJar for rd-gen2c63db3
Build: tune Gradle Xmx parametersf6e8ef6
Release: prepare 2022.3.0f30c951
Build: upgrade Dokka to 1.779c0e57
Build: upgrade Kotlin to 1.7Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)