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