-
-
Notifications
You must be signed in to change notification settings - Fork 18.1k
Closed
Description
For something like source combinators we should have a solid foundation for functions interacting with path values. This issue tracks progress on such a path library.
Originally such a path library was proposed in #200718, but has been redesigned after feedback from @roberth, @fricklerhandwerk and taking (reasonable) lazy tree-compatibility into account.
- General design, subpath validation and normalisation: lib.path.subpath.{isValid,normalise}: init #205190
- Appending subpaths: lib.path.append: init #208887
- Joining subpaths together: lib.path.subpath.join: init #209099
- Deprecating confusing string functions with paths: lib.strings: Prevent paths as inputs in some functions #221204
- Path ordering:
lib.path.hasPrefix: init #237610 - Prefix stripping:
lib.path.removePrefix: init #238013 - Path component common prefix:
lib.lists.{findFirstIndex,commonPrefix}: init #243520 - Path parts splitting:
lib.path.splitRoot: init #244358 - Subpath component splitting:
lib.path.subpath.components: init #242695 - Path component list prefix checking and removal:
lib.lists.{hasPrefix,removePrefix}: init #243511 -
Path difference and common ancestor: lib.path.difference: init #209375 -
Path ordering and prefix stripping: lib.path.hasPrefix, lib.path.removePrefix: init #210423 -
Subpath-based source filtering: [WIP] lib.sources.predicateFilter: init #221361
There's also more functions we could add:
- Re-exporting safer versions of
dirOfandbaseNameOffromlib.path
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels