configlet
configlet copied to clipboard
config, src: enable nimPreviewSlimSystem
From the Nim 2.0.0 detailed changelog (emphasis added):
Certain definitions from the default
system
module have been moved to the following new modules:
std/syncio
std/assertions
std/formatfloat
std/objectdollar
std/widestrs
std/typedthreads
std/sysatomics
In the future, these definitions will be removed from the
system
module, and their respective modules will have to be imported to use them. Currently, to make these imports required, the-d:nimPreviewSlimSystem
option may be used.Enabling
-d:nimPreviewSlimSystem
also removes the following deprecated symbols in thesystem
module:
- Aliases with an
Error
suffix to exception types that have aDefect
suffix (see exceptions):ArithmeticError
,DivByZeroError
,OverflowError
,AccessViolationError
,AssertionError
,OutOfMemError
,IndexError
,FieldError
,RangeError
,StackOverflowError
,ReraiseError
,ObjectAssignmentError
,ObjectConversionError
,FloatingPointError
,FloatOverflowError
,FloatUnderflowError
,FloatInexactError
,DeadThreadError
,NilAccessError
addQuitProc
, replaced byexitprocs.addExitProc
- Legacy unsigned conversion operations:
ze
,ze64
,toU8
,toU16
,toU32
TaintedString
, formerly a distinct alias tostring
PInt32
,PInt64
,PFloat32
,PFloat64
, aliases toptr int32
,ptr int64
,ptr float32
,ptr float64
Enabling
-d:nimPreviewSlimSystem
removes the import ofchannels_builtin
in thesystem
module, which is replaced bythreading/channels
. Use the commandnimble install threading
and importthreading/channels
.
Closes: #760
To-do:
- [ ] Add the remaining required imports.
This PR is currently blocked by (at least) jsony not supporting this.