proc `$`(target: Target): string {...}{.raises: [], tags: [].}
-
proc `$`(ver: Version): string {...}{.raises: [ValueError], tags: [].}
-
proc relativeParentPath(dir: string): string {...}{.raises: [], tags: [].}
-
the parent directory as expressed relative to the directory supplied
proc isFilesystemRoot(dir: string): bool {...}{.raises: [OSError], tags: [ReadDirEffect].}
-
true if there are no higher directories in the fs tree
proc newTarget(path: string): Target {...}{.raises: [], tags: [].}
-
proc findTarget(dir: string; target = ""): SearchResult {...}{.
raises: [ValueError, UnpackError, OSError], tags: [ReadDirEffect, ReadEnvEffect].}
-
locate one, and only one, nimble file to work upon; dir is where to start looking, target is a .nimble or package name
proc findTarget(dir: string; target = ""; ascend = true; extensions: seq[string]): SearchResult {...}{.
raises: [ValueError, UnpackError, OSError], tags: [ReadDirEffect, ReadEnvEffect].}
-
locate one, and only one, nimble file to work upon; dir is where to start looking, target is a .nimble or package name, extensions list optional extensions (such as "nimble")
proc createTemporaryFile(prefix: string; suffix: string): string {...}{.raises: [],
tags: [ReadEnvEffect, ReadIOEffect].}
-
it SHOULD create the file, but so far, it only returns the filename
proc isValid(ver: Version): bool {...}{.raises: [], tags: [].}
-
true if the version seems legit
proc `>`(a, b: Version): bool {...}{.inline, raises: [], tags: [].}
-
proc `==`(a, b: Version): bool {...}{.inline, raises: [], tags: [].}
-
proc parseVersion(nimble: string): Option[Version] {...}{.raises: [], tags: [].}
-
try to parse a version from any line in a .nimble; safe to use at compile-time
proc bumpVersion(ver: Version; major, minor, patch = false): Option[Version] {...}{.
raises: [], tags: [].}
-
increment the version by the specified metric
proc withCrazySpaces(version: Version; line = ""): string {...}{.raises: [FieldError,
ValueError, AccessViolationError, RegexInternalError, InvalidUnicodeError,
KeyError, SyntaxError, StudyError, IndexError, UnpackError], tags: [].}
-
insert a new version into a line which may have "crazy spaces"
proc capture(exe: string; args: seq[string]; options: set[ProcessOption]): tuple[
output: string, ok: bool] {...}{.raises: [OSError, ValueError, Exception, IOError, Defect], tags: [
ReadDirEffect, ReadEnvEffect, ReadIOEffect, RootEffect, ExecIOEffect].}
-
capture output of a command+args and indicate apparent success
proc capture(exe: string; args: seq[string]): tuple[output: string, ok: bool] {...}{.
raises: [OSError, ValueError, Exception, IOError, Defect], tags: [ReadDirEffect,
ReadEnvEffect, ReadIOEffect, RootEffect, ExecIOEffect].}
-
find and run a given executable with the given arguments; the result includes stdout/stderr and a true value if it seemed to work
proc run(exe: string; args: varargs[string]): bool {...}{.
raises: [OSError, ValueError, Exception, IOError, Defect], tags: [ReadDirEffect,
ReadEnvEffect, ReadIOEffect, RootEffect, ExecIOEffect].}
-
find and run a given executable with the given arguments; the result is true if it seemed to work
proc appearsToBeMasterBranch(): Option[bool] {...}{.raises: [OSError, ValueError,
Exception, IOError, Defect, FieldError, AccessViolationError, RegexInternalError,
InvalidUnicodeError, KeyError, SyntaxError, StudyError, UnpackError], tags: [
ReadDirEffect, ReadEnvEffect, ReadIOEffect, RootEffect, ExecIOEffect].}
-
try to determine if we're on the master branch
proc fetchTagList(): Option[string] {...}{.raises: [OSError, ValueError, Exception, IOError,
Defect], tags: [ReadDirEffect, ReadEnvEffect, ReadIOEffect, RootEffect,
ExecIOEffect].}
-
simply retrieve the tags as a string; attempt to use the later git option to sort the result by version
proc lastTagInTheList(tagList: string): string {...}{.raises: [KeyError, SyntaxError,
StudyError, FieldError, ValueError, IndexError, UnpackError,
AccessViolationError, RegexInternalError, InvalidUnicodeError, Exception],
tags: [RootEffect].}
-
lazy way to get a tag from the list, whatfer mimicking its V form
proc taggedAs(version: Version; tagList: string): Option[string] {...}{.raises: [ValueError,
KeyError, SyntaxError, StudyError, FieldError, IndexError, UnpackError,
AccessViolationError, RegexInternalError, InvalidUnicodeError, Exception],
tags: [RootEffect].}
-
try to fetch a tag that appears to match a given version
proc allTagsAppearToStartWithV(tagList: string): bool {...}{.raises: [KeyError,
SyntaxError, StudyError, FieldError, ValueError, AccessViolationError,
RegexInternalError, InvalidUnicodeError, Exception], tags: [RootEffect].}
-
try to determine if all of this project's tags start with a v
proc composeTag(last: Version; next: Version; v = false; tags = ""): Option[string] {...}{.raises: [
OSError, ValueError, Exception, IOError, Defect, UnpackError, KeyError,
SyntaxError, StudyError, FieldError, AccessViolationError, RegexInternalError,
InvalidUnicodeError, IndexError], tags: [ReadDirEffect, ReadEnvEffect,
ReadIOEffect, RootEffect, ExecIOEffect].}
-
invent a tag given last and next version, magically adding any needed v prefix. fetches tags if a tag list isn't supplied.
proc bump(minor = false; major = false; patch = true; release = false; dry_run = false;
folder = ""; nimble = ""; log_level = logLevel; commit = false; v = false;
manual = ""; message: seq[string]): int {...}{.raises: [Exception, ValueError,
UnpackError, OSError, IOError, FieldError, AccessViolationError,
RegexInternalError, InvalidUnicodeError, KeyError, SyntaxError, StudyError,
IndexError, Defect, Exception, ValueError], tags: [RootEffect, ReadDirEffect,
ReadEnvEffect, ReadIOEffect, WriteDirEffect, WriteIOEffect, ExecIOEffect].}
-
the entry point from the cli
proc projectVersion(hint = ""): Option[Version] {...}{.compileTime,
raises: [ValueError, UnpackError, OSError], tags: [ReadDirEffect, ReadEnvEffect].}
-
try to get the version from the current (compile-time) project