Skip to content

Latest commit

 

History

History
130 lines (104 loc) · 4.47 KB

CHANGELOG.md

File metadata and controls

130 lines (104 loc) · 4.47 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

Added

  • New Glob testing app using Blazor

Fixed

  • Fixed issue where invalid patterns can cause the parser to get stuck

Updated

  • Improved performance from parser internals rework
  • Updated to .NET 6.0

Changed

  • Matching full path is now the default for Glob expressions, GlobOptions.MatchFilenameOnly can be used to work as before
  • BREAKING: Patterns may no longer include '' as path separators. Instead, '/' should always be used and '' is now available for escaping characters.

Added

  • Issue #63: Added glob options for Glob Extension methods

Fixed

  • Issue #59: Cannot enumerate iterator multiple times

Fixed

  • Issue #52: Files matching a pattern in multiple ways are only emitted once

Fixed

  • Issue #57: Support parentheses, equals, and other miscellaneous characters in file names

Fixed

  • Issue #55: Remove debug prints

Changed

  • Removed reference to System.ValueTuple

Fixed

  • Issue #53: Fix issue where matches against the root directory would attempt to truncate a prefix longer than desired

Fixed

  • Allow spaces as normal path characters

Fixed

  • Issue #47: Add NuGet package description
  • Issue #46: Add netstandard2.0 target
  • Issue #34: Updated scanner to support ~ and $ in Glob patterns
  • Issue #44: Delete foreach Glob.Directories() fails

Fixed

  • Issue with GlobOptions not having proper bitwise values

Added

  • Added GlobOptions.MatchFullPath to require the full path to match for patterns like *.txt

Changed

  • Improved character range mechanics, to match ranges with [,], *, and ? in them

Changed

  • Reduce number of allocations for matching Identifiers (small perf boost)

Fixed

  • Fix Glob for a/** to match a/ but not a
  • Fix issue where roots (C:) would not obey the case sensitivity setting

Fixed

  • Fix issue where matching a/** against a would cause a stackoverflow (#39)

Fixed

  • Fix bug where ** does not properly match a or a/b (#38)

Added

  • Add Glob.Files and Glob.Directories APIs
  • Support for Case-Insensitive globbing
  • Reduced string allocations in Scanner

Changed

  • All types are now located in the GlobExpressions namespace instead of Glob
  • Path traversal has been updated which may cause a different ordering of returned results

Fixed

  • Fix bug where not all files are returned when using GlobExtensions
  • Fix NullReferenceException for empty patterns
  • Fix issue where directory wildcard and identifier cannot be mixed in a single Segment
  • Fix issue that caused unnecessary directory traversal (#20)
  • Fix issue where Glob.Directories did not always match properly