Feature flag for raises support (#488)
Feature flags allow consumers of chronos to target versions with and without certain features via compile-time selection. The first feature flag added is for raise tracking support.
This commit is contained in:
parent
e15dc3b41f
commit
f0a2d4df61
|
@ -11,6 +11,15 @@
|
||||||
## `chronosDebug` can be defined to enable several debugging helpers that come
|
## `chronosDebug` can be defined to enable several debugging helpers that come
|
||||||
## with a runtime cost - it is recommeneded to not enable these in production
|
## with a runtime cost - it is recommeneded to not enable these in production
|
||||||
## code.
|
## code.
|
||||||
|
##
|
||||||
|
## In this file we also declare feature flags starting with `chronosHas...` -
|
||||||
|
## these constants are declared when a feature exists in a particular release -
|
||||||
|
## each flag is declared as an integer starting at 0 during experimental
|
||||||
|
## development, 1 when feature complete and higher numbers when significant
|
||||||
|
## functionality has been added. If a feature ends up being removed (or changed
|
||||||
|
## in a backwards-incompatible way), the feature flag will be removed or renamed
|
||||||
|
## also - you can use `when declared(chronosHasXxx): when chronosHasXxx >= N:`
|
||||||
|
## to require a particular version.
|
||||||
const
|
const
|
||||||
chronosHandleException* {.booldefine.}: bool = false
|
chronosHandleException* {.booldefine.}: bool = false
|
||||||
## Remap `Exception` to `AsyncExceptionError` for all `async` functions.
|
## Remap `Exception` to `AsyncExceptionError` for all `async` functions.
|
||||||
|
@ -79,6 +88,9 @@ const
|
||||||
""
|
""
|
||||||
## OS polling engine type which is going to be used by chronos.
|
## OS polling engine type which is going to be used by chronos.
|
||||||
|
|
||||||
|
chronosHasRaises* = 0
|
||||||
|
## raises effect support via `async: (raises: [])`
|
||||||
|
|
||||||
when defined(chronosStrictException):
|
when defined(chronosStrictException):
|
||||||
{.warning: "-d:chronosStrictException has been deprecated in favor of handleException".}
|
{.warning: "-d:chronosStrictException has been deprecated in favor of handleException".}
|
||||||
# In chronos v3, this setting was used as the opposite of
|
# In chronos v3, this setting was used as the opposite of
|
||||||
|
|
Loading…
Reference in New Issue