Skip to content

Commit 1965aae

Browse files
authored
fix: correct shutdown points after status removal (#317)
This is a minor point of clarification with no material changes. When we removed `status` from the providers, we didn't migrate this point to the evaluation API, as @fabriziodemaria pointed out [here](#270). Fixes: #270 Signed-off-by: Todd Baert <[email protected]>
1 parent 42340bb commit 1965aae

File tree

3 files changed

+18
-4
lines changed

3 files changed

+18
-4
lines changed

specification.json

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,13 @@
351351
"RFC 2119 keyword": "SHOULD",
352352
"children": []
353353
},
354+
{
355+
"id": "Requirement 1.7.9",
356+
"machine_id": "requirement_1_7_9",
357+
"content": "The client's `provider status` accessor MUST indicate `NOT_READY` once the `shutdown` function of the associated provider terminates.",
358+
"RFC 2119 keyword": "MUST",
359+
"children": []
360+
},
354361
{
355362
"id": "Requirement 2.1.1",
356363
"machine_id": "requirement_2_1_1",
@@ -497,8 +504,8 @@
497504
{
498505
"id": "Requirement 2.5.2",
499506
"machine_id": "requirement_2_5_2",
500-
"content": "After a provider's shutdown function has terminated successfully, the provider's state MUST revert to its uninitialized state.",
501-
"RFC 2119 keyword": "MUST",
507+
"content": "After a provider's shutdown function has terminated, the provider SHOULD revert to its uninitialized state.",
508+
"RFC 2119 keyword": "SHOULD",
502509
"children": []
503510
},
504511
{

specification/sections/01-flag-evaluation.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -513,3 +513,9 @@ see: [error codes](../types.md#error-code), [flag value resolution](./02-provide
513513
The SDK ensures that if the provider's lifecycle methods terminate with an `error code`, that error code is included in any associated error events and returned/thrown errors/exceptions.
514514

515515
see: [error codes](../types.md#error-code)
516+
517+
#### Requirement 1.7.9
518+
519+
> The client's `provider status` accessor **MUST** indicate `NOT_READY` once the `shutdown` function of the associated provider terminates.
520+
521+
Regardless of the success of the provider's `shutdown` function, the `provider status` should convey the provider is no longer ready to use once the shutdown function terminates.

specification/sections/02-providers.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,9 +225,10 @@ class MyProvider implements Provider, AutoDisposable {
225225

226226
#### Requirement 2.5.2
227227

228-
> After a provider's shutdown function has terminated successfully, the provider's state **MUST** revert to its uninitialized state.
228+
> After a provider's shutdown function has terminated, the provider **SHOULD** revert to its uninitialized state.
229229
230-
If a provider requires initialization, once it's shut down, it must transition to its initial `NOT_READY` state. Some providers may allow reinitialization from this state.
230+
If a provider requires initialization, once it's shut down, it must transition to its uninitialized state.
231+
Some providers may allow reinitialization from this state.
231232
Providers not requiring initialization are assumed to be ready at all times.
232233

233234
see: [initialization](#24-initialization)

0 commit comments

Comments
 (0)