Skip to content

Latest commit

 

History

History
277 lines (162 loc) · 10.3 KB

changelog.md

File metadata and controls

277 lines (162 loc) · 10.3 KB

v0.11.3 (2024-01-30)


v0.11.2 (2022-10-14)

BUG FIXES

v0.11.1 (2021-04-19)

BUG FIXES

v0.11.0 (2021-01-16)

FEATURES
  • enable negative match patterns (83bdafc)

v0.10.0 (2020-11-09)

BREAKING CHANGES
  • Nim v1.x is now required.
BUG FIXES
  • make GlobSyntaxError derive from CatchableError (09e50e1)
  • changetoPattern to re to avoid deprecation warnings (cb7cdd9)

v0.9.1 (2020-11-07)

BUG FIXES
CONTRIBUTORS

This release was made possible by:

Thanks!


v0.9.0 (2018-10-02)

BREAKING CHANGES
  • walk: absolute patterns now result in absolute paths if no root is provided (even if Absolute notin options)
FEATURES
  • walk: make Absolute option handling smarter (#27) (589671a), closes #23
BUG FIXES
  • walk: ensure hidden directories are not entered on non-Windows systems (1ea34f9)
  • walk: match filesystem casing for entries on macOS (#33) (d9d1175)
  • compat: support future module relocation in nim devel (#31) (ffd65d3)
  • walk: handle leading shallow magic correctly (#30) (1fa54df), closes #29
  • walk: handle leading magic correctly pt. 2 (633a87d), closes #29
  • windows: improve case insensitive path handling (4a0d545)
CONTRIBUTORS

This release was made possible by:

Thanks!


v0.8.1 (2018-07-21)

BUG FIXES
  • change expandGlob back to proc (98a5c79), closes #21

v0.8.0 (2018-07-21)

BREAKING CHANGES
  • listGlob has been removed to encourage the use of iterators. sequtils.toSeq from Nim's stdlib can be used to convert the iterators to seqs
  • The walk iterators now take an options set rather than multiple boolean parameters
  • GlobResult has been renamed GlobEntry
FEATURES
  • support case insensitive matching (fe17bdd)
  • windows: match casing of expanded directories to filesystem (76e1582)
  • rename GlobResult to GlobEntry (34fa6f3)
  • forward os.PathComponent for ease of use (de74aff)
BUG FIXES
  • walk: expand magic if given a glob (8ef605b)
  • handle empty base paths when joining (0cdb00f)
  • don't recurse into hidden directories when includeHidden == false (#14) (b6de2fd)
PERFORMANCE
  • walk: move some processing inside proceed check (cfabbea)

v0.7.0 (2018-07-04)

FEATURES
  • normalize returned paths to current os style (966e8cf)
  • remove $ to improve inspection & debugging (c897d6b)
BUG FIXES
  • handle absolute paths correctly (1753cb8)

v0.6.0 (2018-06-06)

This release has the potential to greatly improve performance. glob will no longer traverse into directories or over files that have no hope of matching the given pattern. A simple example is that a shallow pattern like *.nim can only match files with a .nim extension in the current directory — so glob should never enter a subdirectory or consider files with any other extension. This is now the case!

TL;DR when using shallow patterns in roots of huge directory structures, users should see huge performance gains.

PERFORMANCE

v0.5.0 (2018-05-30)

This release brings a number of API improvements, the most significant of which is that procs/iterators like listGlob that previously only accepted string patterns now also accept pre-constructed Glob objects:

import glob
const matcher = glob("src/**/*.nim")

# the following are now equivalent:
listGlob(matcher)
listGlob("src/**/*.nim")

This makes globs more reusable and can reduce the number of created objects.

An internal proc named splitPattern is now exposed publicly:

import glob

echo splitPattern("src/dir/**/*.{png,svg}")
# -> (base: "src/dir", magic: "**/*.{png.svg}")

The full feature update list is below, and all of these have been documented on the full docs site.

FEATURES
  • walkGlobKinds, walkGlob, & listGlob now also accept a preconstructed Glob object instead of a string
  • the internal splitPattern proc is now publicly exported, which allows users to split string glob patterns into their "magic" & "non-magic" (base) parts
  • Glob objects now contain their base & magic path segments
  • hasMagic now checks for extended glob features like pattern matches

v0.4.0 (2018-05-23)

While it's a fairly small release, almost the entire glob parser was actually rewritten for this release to make supporting extended pattern matches easier and to generally make it simpler. 🎉

FEATURES
  • add extended pattern matching (a7cf070)

v0.3.1 (2018-05-22)

BUG FIXES
  • correctly handle patterns in cwd (ee12839)

v0.3.0 (2018-05-22)

FEATURES
  • allow matching ] in character class (991553b)
BUG FIXES
  • error correctly on invalid character escapes (2ae42eb)

v0.2.0 (2018-05-22)

FEATURES
  • support posix character classes (a8a8fc6)

v0.1.0 (2018-05-20)

Initial release.