CIs: attempt to use csources_v1 (#16282)
* CIs: attempt to use csources_v1 * also updated the BSDs * also updated azure pipelines * std modules should not itself use the 'std/' import dir... * compiler has to be careful with std/ for v1 booting
This commit is contained in:
parent
7bce1f8578
commit
a9b62de895
58 changed files with 142 additions and 143 deletions
|
|
@ -29,7 +29,7 @@
|
|||
## writeLine(stdout, "your password: " & myData["password"])
|
||||
## writeLine(stdout, "</body></html>")
|
||||
|
||||
import std/[strutils, os, strtabs, cookies, uri]
|
||||
import strutils, os, strtabs, cookies, uri
|
||||
export uri.encodeUrl, uri.decodeUrl
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ runnableExamples:
|
|||
|
||||
import std/private/since
|
||||
|
||||
import std/math
|
||||
import math
|
||||
|
||||
type
|
||||
Deque*[T] = object
|
||||
|
|
|
|||
|
|
@ -196,7 +196,7 @@ runnableExamples:
|
|||
|
||||
|
||||
import std/private/since
|
||||
import std/[hashes, math, algorithm]
|
||||
import hashes, math, algorithm
|
||||
|
||||
type
|
||||
KeyValuePair[A, B] = tuple[hcode: Hash, key: A, val: B]
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ runnableExamples:
|
|||
{.push checks: off, line_dir: off, stack_trace: off, debugger: off.}
|
||||
# the user does not want to trace a part of the standard library!
|
||||
|
||||
import std/math
|
||||
import math
|
||||
|
||||
type
|
||||
Complex*[T: SomeFloat] = object
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
## This module implements helper procs for parsing Cookies.
|
||||
|
||||
import std/[strtabs, times, options]
|
||||
import strtabs, times, options
|
||||
|
||||
|
||||
type
|
||||
|
|
@ -25,7 +25,7 @@ proc parseCookies*(s: string): StringTableRef =
|
|||
## "Set-Cookie" header set by servers.
|
||||
runnableExamples:
|
||||
import std/strtabs
|
||||
let cookieJar = parseCookies("a=1; foo=bar")
|
||||
let cookieJar = parseCookies("a=1; foo=bar")
|
||||
assert cookieJar["a"] == "1"
|
||||
assert cookieJar["foo"] == "bar"
|
||||
|
||||
|
|
@ -46,7 +46,7 @@ proc parseCookies*(s: string): StringTableRef =
|
|||
|
||||
proc setCookie*(key, value: string, domain = "", path = "",
|
||||
expires = "", noName = false,
|
||||
secure = false, httpOnly = false,
|
||||
secure = false, httpOnly = false,
|
||||
maxAge = none(int), sameSite = SameSite.Default): string =
|
||||
## Creates a command in the format of
|
||||
## `Set-Cookie: key=value; Domain=...; ...`
|
||||
|
|
|
|||
|
|
@ -27,11 +27,11 @@
|
|||
##
|
||||
## See `packaging <packaging.html>`_ for hints on distributing Nim using OS packages.
|
||||
|
||||
from std/strutils import contains, toLowerAscii
|
||||
from strutils import contains, toLowerAscii
|
||||
|
||||
when not defined(nimscript):
|
||||
from std/osproc import execProcess
|
||||
from std/os import existsEnv
|
||||
from osproc import execProcess
|
||||
from os import existsEnv
|
||||
|
||||
type
|
||||
Distribution* {.pure.} = enum ## the list of known distributions
|
||||
|
|
|
|||
|
|
@ -159,10 +159,9 @@ runnableExamples:
|
|||
a1, a2, a0, a3, a4: int
|
||||
doAssert $(%* Foo()) == """{"a1":0,"a2":0,"a0":0,"a3":0,"a4":0}"""
|
||||
|
||||
import
|
||||
std/[hashes, tables, strutils, lexbase, streams, macros, parsejson]
|
||||
import hashes, tables, strutils, lexbase, streams, macros, parsejson
|
||||
|
||||
import std/options # xxx remove this dependency using same approach as https://github.com/nim-lang/Nim/pull/14563
|
||||
import options # xxx remove this dependency using same approach as https://github.com/nim-lang/Nim/pull/14563
|
||||
import std/private/since
|
||||
|
||||
export
|
||||
|
|
@ -921,7 +920,7 @@ proc parseJson*(s: Stream, filename: string = ""; rawIntegers = false, rawFloats
|
|||
p.close()
|
||||
|
||||
when defined(js):
|
||||
from std/math import `mod`
|
||||
from math import `mod`
|
||||
from std/jsffi import JSObject, `[]`, to
|
||||
from std/private/jsutils import getProtoName, isInteger, isSafeInteger
|
||||
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ Please use alternative packages for serialization.
|
|||
It is possible to reimplement this module using generics and type traits.
|
||||
Please contribute a new implementation.""".}
|
||||
|
||||
import std/[streams, typeinfo, json, intsets, tables, unicode]
|
||||
import streams, typeinfo, json, intsets, tables, unicode
|
||||
|
||||
proc ptrToInt(x: pointer): int {.inline.} =
|
||||
result = cast[int](x) # don't skip alignment
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ import std/private/since
|
|||
{.push debugger: off.} # the user does not want to trace a part
|
||||
# of the standard library!
|
||||
|
||||
import std/[bitops, fenv]
|
||||
import bitops, fenv
|
||||
|
||||
when defined(c) or defined(cpp):
|
||||
proc c_isnan(x: float): bool {.importc: "isnan", header: "<math.h>".}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
## This implementation calls `initRand()` for the first call of
|
||||
## `genOid`.
|
||||
|
||||
import std/[hashes, times, endians, random]
|
||||
import hashes, times, endians, random
|
||||
from std/private/decode_helpers import handleHexChar
|
||||
|
||||
type
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ supports pattern matching on `Option`s, with the `Some(<pattern>)` and
|
|||
# xxx pending https://github.com/timotheecour/Nim/issues/376 use `runnableExamples` and `whichModule`
|
||||
|
||||
|
||||
import std/typetraits
|
||||
import typetraits
|
||||
|
||||
when (NimMajor, NimMinor) >= (1, 1):
|
||||
type
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@
|
|||
include system/inclrtl
|
||||
import std/private/since
|
||||
|
||||
import std/[strutils, pathnorm]
|
||||
import strutils, pathnorm
|
||||
|
||||
const weirdTarget = defined(nimscript) or defined(js)
|
||||
|
||||
|
|
@ -65,9 +65,9 @@ since (1, 1):
|
|||
when weirdTarget:
|
||||
discard
|
||||
elif defined(windows):
|
||||
import std/[winlean, times]
|
||||
import winlean, times
|
||||
elif defined(posix):
|
||||
import std/[posix, times]
|
||||
import posix, times
|
||||
|
||||
proc toTime(ts: Timespec): times.Time {.inline.} =
|
||||
result = initTime(ts.tv_sec.int64, ts.tv_nsec.int)
|
||||
|
|
@ -1008,7 +1008,7 @@ proc expandTilde*(path: string): string {.
|
|||
##
|
||||
## Windows: this is still supported despite Windows platform not having this
|
||||
## convention; also, both ``~/`` and ``~\`` are handled.
|
||||
##
|
||||
##
|
||||
## .. warning:: `~bob` and `~bob/` are not yet handled correctly.
|
||||
##
|
||||
## See also:
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ runnableExamples:
|
|||
## * `list of cryptographic and hashing modules <lib.html#pure-libraries-hashing>`_
|
||||
## in the standard library
|
||||
|
||||
import std/[algorithm, math]
|
||||
import algorithm, math
|
||||
import std/private/since
|
||||
|
||||
include system/inclrtl
|
||||
|
|
@ -625,7 +625,7 @@ proc shuffle*[T](x: var openArray[T]) =
|
|||
shuffle(state, x)
|
||||
|
||||
when not defined(nimscript) and not defined(standalone):
|
||||
import std/times
|
||||
import times
|
||||
|
||||
proc initRand(): Rand =
|
||||
## Initializes a new Rand state with a seed based on the current time.
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ runnableExamples:
|
|||
doAssert r1 * r2 == -3 // 8
|
||||
doAssert r1 / r2 == -2 // 3
|
||||
|
||||
import std/[math, hashes]
|
||||
import math, hashes
|
||||
|
||||
type Rational*[T] = object
|
||||
## A rational number, consisting of a numerator `num` and a denominator `den`.
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
## runtime efficiency.
|
||||
|
||||
include system/inclrtl
|
||||
import std/streams
|
||||
import streams
|
||||
|
||||
{.push debugger: off.} # the user does not want to trace a part
|
||||
# of the standard library!
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ runnableExamples:
|
|||
doAssert statistics.kurtosis() ~= -1.0
|
||||
doAssert statistics.kurtosisS() ~= -0.7000000000000008
|
||||
|
||||
from std/math import FloatClass, sqrt, pow, round
|
||||
from math import FloatClass, sqrt, pow, round
|
||||
|
||||
{.push debugger: off.} # the user does not want to trace a part
|
||||
# of the standard library!
|
||||
|
|
|
|||
|
|
@ -313,8 +313,8 @@ help with readability, since there is only so much you can cram into
|
|||
single letter DSLs.
|
||||
]##
|
||||
|
||||
import std/[macros, parseutils, unicode]
|
||||
import std/strutils except format
|
||||
import macros, parseutils, unicode
|
||||
import strutils except format
|
||||
|
||||
proc mkDigit(v: int, typ: char): string {.inline.} =
|
||||
assert(v < 26)
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
## macro system.
|
||||
|
||||
import std/private/since
|
||||
import std/macros
|
||||
import macros
|
||||
|
||||
proc checkPragma(ex, prag: var NimNode) =
|
||||
since (1, 3):
|
||||
|
|
|
|||
|
|
@ -167,7 +167,7 @@ since (1, 3, 5):
|
|||
|
||||
typeof(block: (for ai in a: ai))
|
||||
|
||||
import std/macros
|
||||
import macros
|
||||
|
||||
macro enumLen*(T: typedesc[enum]): int =
|
||||
## Returns the number of items in the enum `T`.
|
||||
|
|
|
|||
|
|
@ -108,15 +108,15 @@
|
|||
import std/private/since
|
||||
import std/exitprocs
|
||||
|
||||
import std/[macros, strutils, streams, times, sets, sequtils]
|
||||
import macros, strutils, streams, times, sets, sequtils
|
||||
|
||||
when declared(stdout):
|
||||
import std/os
|
||||
import os
|
||||
|
||||
const useTerminal = not defined(js)
|
||||
|
||||
when useTerminal:
|
||||
import std/terminal
|
||||
import terminal
|
||||
|
||||
type
|
||||
TestStatus* = enum ## The status of a test when it is done.
|
||||
|
|
@ -747,7 +747,7 @@ macro expect*(exceptions: varargs[typed], body: untyped): untyped =
|
|||
of 2: discard parseInt("Hello World!")
|
||||
of 3: raise newException(IOError, "I can't do that Dave.")
|
||||
else: assert 2 + 2 == 5
|
||||
|
||||
|
||||
expect IOError, OSError, ValueError, AssertionDefect:
|
||||
defectiveRobot()
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ runnableExamples:
|
|||
doAssert getDataUri("Nim", "text/plain") == "data:text/plain;charset=utf-8;base64,Tmlt"
|
||||
|
||||
|
||||
import std/[strutils, parseutils, base64]
|
||||
import strutils, parseutils, base64
|
||||
import std/private/[since, decode_helpers]
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -7,16 +7,16 @@
|
|||
# distribution, for details about the copyright.
|
||||
#
|
||||
|
||||
import std/macros
|
||||
from std/typetraits import OrdinalEnum, HoleyEnum
|
||||
import macros
|
||||
from typetraits import OrdinalEnum, HoleyEnum
|
||||
|
||||
# xxx `genEnumCaseStmt` needs tests and runnableExamples
|
||||
|
||||
macro genEnumCaseStmt*(typ: typedesc, argSym: typed, default: typed,
|
||||
macro genEnumCaseStmt*(typ: typedesc, argSym: typed, default: typed,
|
||||
userMin, userMax: static[int], normalizer: static[proc(s :string): string]): untyped =
|
||||
# generates a case stmt, which assigns the correct enum field given
|
||||
# a normalized string comparison to the `argSym` input.
|
||||
# string normalization is done using passed normalizer.
|
||||
# string normalization is done using passed normalizer.
|
||||
# NOTE: for an enum with fields Foo, Bar, ... we cannot generate
|
||||
# `of "Foo".nimIdentNormalize: Foo`.
|
||||
# This will fail, if the enum is not defined at top level (e.g. in a block).
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ runnableExamples:
|
|||
let j = a.toJson
|
||||
assert j.jsonTo(typeof(a)).toJson == j
|
||||
|
||||
import std/[json,strutils,tables,sets,strtabs,options]
|
||||
import json, strutils, tables, sets, strtabs, options
|
||||
|
||||
#[
|
||||
Future directions:
|
||||
|
|
@ -27,7 +27,7 @@ add a way to customize serialization, for e.g.:
|
|||
objects.
|
||||
]#
|
||||
|
||||
import std/macros
|
||||
import macros
|
||||
|
||||
type
|
||||
Joptions* = object
|
||||
|
|
@ -106,7 +106,7 @@ proc hasField[T](obj: T, field: string): bool =
|
|||
return true
|
||||
return false
|
||||
|
||||
macro accessField(obj: typed, name: static string): untyped =
|
||||
macro accessField(obj: typed, name: static string): untyped =
|
||||
newDotExpr(obj, ident(name))
|
||||
|
||||
template fromJsonFields(newObj, oldObj, json, discKeys, opt) =
|
||||
|
|
@ -146,7 +146,7 @@ template fromJsonFields(newObj, oldObj, json, discKeys, opt) =
|
|||
json.len == numMatched
|
||||
else:
|
||||
json.len == num and num == numMatched
|
||||
|
||||
|
||||
checkJson ok, $(json.len, num, numMatched, $T, json)
|
||||
|
||||
proc fromJson*[T](a: var T, b: JsonNode, opt = Joptions())
|
||||
|
|
@ -284,7 +284,7 @@ proc toJson*[T](a: T): JsonNode =
|
|||
proc fromJsonHook*[K: string|cstring, V](t: var (Table[K, V] | OrderedTable[K, V]),
|
||||
jsonNode: JsonNode) =
|
||||
## Enables `fromJson` for `Table` and `OrderedTable` types.
|
||||
##
|
||||
##
|
||||
## See also:
|
||||
## * `toJsonHook proc<#toJsonHook>`_
|
||||
runnableExamples:
|
||||
|
|
@ -326,7 +326,7 @@ proc toJsonHook*[K: string|cstring, V](t: (Table[K, V] | OrderedTable[K, V])): J
|
|||
|
||||
proc fromJsonHook*[A](s: var SomeSet[A], jsonNode: JsonNode) =
|
||||
## Enables `fromJson` for `HashSet` and `OrderedSet` types.
|
||||
##
|
||||
##
|
||||
## See also:
|
||||
## * `toJsonHook proc<#toJsonHook,SomeSet[A]>`_
|
||||
runnableExamples:
|
||||
|
|
@ -360,7 +360,7 @@ proc toJsonHook*[A](s: SomeSet[A]): JsonNode =
|
|||
|
||||
proc fromJsonHook*[T](self: var Option[T], jsonNode: JsonNode) =
|
||||
## Enables `fromJson` for `Option` types.
|
||||
##
|
||||
##
|
||||
## See also:
|
||||
## * `toJsonHook proc<#toJsonHook,Option[T]>`_
|
||||
runnableExamples:
|
||||
|
|
@ -395,7 +395,7 @@ proc toJsonHook*[T](self: Option[T]): JsonNode =
|
|||
|
||||
proc fromJsonHook*(a: var StringTableRef, b: JsonNode) =
|
||||
## Enables `fromJson` for `StringTableRef` type.
|
||||
##
|
||||
##
|
||||
## See also:
|
||||
## * `toJsonHook proc<#toJsonHook,StringTableRef>`_
|
||||
runnableExamples:
|
||||
|
|
@ -413,7 +413,7 @@ proc fromJsonHook*(a: var StringTableRef, b: JsonNode) =
|
|||
|
||||
proc toJsonHook*(a: StringTableRef): JsonNode =
|
||||
## Enables `toJson` for `StringTableRef` type.
|
||||
##
|
||||
##
|
||||
## See also:
|
||||
## * `fromJsonHook proc<#fromJsonHook,StringTableRef,JsonNode>`_
|
||||
runnableExamples:
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ See also
|
|||
* `times module <times.html>`_
|
||||
]##
|
||||
|
||||
import std/times
|
||||
import times
|
||||
|
||||
type
|
||||
MonoTime* = object ## Represents a monotonic timestamp.
|
||||
|
|
@ -77,7 +77,7 @@ when defined(js):
|
|||
{.pop.}
|
||||
|
||||
elif defined(posix) and not defined(osx):
|
||||
import std/posix
|
||||
import posix
|
||||
|
||||
elif defined(windows):
|
||||
proc QueryPerformanceCounter(res: var uint64) {.
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ this can eventually be moved to std/os and `walkDirRec` can be implemented in te
|
|||
to avoid duplication
|
||||
]##
|
||||
|
||||
import std/[os]
|
||||
import os
|
||||
when defined(windows):
|
||||
from strutils import replace
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
## * `std/packedsets <packedsets.html>`_
|
||||
## * `std/sets <sets.html>`_
|
||||
|
||||
import std/[typetraits, macros]
|
||||
import typetraits, macros
|
||||
|
||||
#[
|
||||
type SetElement* = char|byte|bool|int16|uint16|enum|uint8|int8
|
||||
|
|
|
|||
|
|
@ -26,8 +26,8 @@ runnableExamples("-r:off"):
|
|||
b = parseSecureHash("10DFAEBF6BFDBC7939957068E2EFACEC4972933C")
|
||||
assert a == b, "files don't match"
|
||||
|
||||
import std/strutils
|
||||
from std/endians import bigEndian32, bigEndian64
|
||||
import strutils
|
||||
from endians import bigEndian32, bigEndian64
|
||||
|
||||
const Sha1DigestSize = 20
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
## .. warning:: This module was added in Nim 1.6. If you are using it for cryptographic purposes,
|
||||
## keep in mind that so far this has not been audited by any security professionals,
|
||||
## therefore may not be secure.
|
||||
##
|
||||
##
|
||||
## `std/sysrand` generates random numbers from a secure source provided by the operating system.
|
||||
## It is a cryptographically secure pseudorandom number generator
|
||||
## and should be unpredictable enough for cryptographic applications,
|
||||
|
|
@ -52,10 +52,10 @@ runnableExamples:
|
|||
|
||||
|
||||
when not defined(js):
|
||||
import std/os
|
||||
import os
|
||||
|
||||
when defined(posix):
|
||||
import std/posix
|
||||
import posix
|
||||
|
||||
const
|
||||
batchImplOS = defined(freebsd) or defined(openbsd) or (defined(macosx) and not defined(ios))
|
||||
|
|
@ -243,7 +243,7 @@ elif defined(macosx):
|
|||
"""
|
||||
|
||||
proc getentropy(p: pointer, size: csize_t): cint {.importc: "getentropy", header: sysrandomHeader.}
|
||||
# getentropy() fills a buffer with random data, which can be used as input
|
||||
# getentropy() fills a buffer with random data, which can be used as input
|
||||
# for process-context pseudorandom generators like arc4random(3).
|
||||
# The maximum buffer size permitted is 256 bytes.
|
||||
|
||||
|
|
@ -310,7 +310,7 @@ proc urandom*(dest: var openArray[byte]): bool =
|
|||
|
||||
proc urandom*(size: Natural): seq[byte] {.inline.} =
|
||||
## Returns random bytes suitable for cryptographic use.
|
||||
##
|
||||
##
|
||||
## .. warning:: The code hasn't been audited by cryptography experts and
|
||||
## is provided as-is without guarantees. Use at your own risks. For production
|
||||
## systems we advise you to request an external audit.
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ runnableExamples:
|
|||
|
||||
assert (?.f2.x2.x2).x3 == nil # this terminates ?. early
|
||||
|
||||
from std/options import Option, isSome, get, option, unsafeGet, UnpackDefect
|
||||
from options import Option, isSome, get, option, unsafeGet, UnpackDefect
|
||||
export options.get, options.isSome, options.isNone
|
||||
|
||||
template fakeDot*(a: Option, b): untyped =
|
||||
|
|
@ -59,7 +59,7 @@ func `[]`*[U](a: Option[U]): auto {.inline.} =
|
|||
if a2 != nil:
|
||||
result = option(a2[])
|
||||
|
||||
import std/macros
|
||||
import macros
|
||||
|
||||
func replace(n: NimNode): NimNode =
|
||||
if n.kind == nnkDotExpr:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue