Skip to content
Snippets Groups Projects
  • Gregory Szorc's avatar
    0d572769046a
    narrowspec: limit patterns to path: and rootfilesin: (BC) · 0d572769046a
    Gregory Szorc authored
    Some matcher patterns are computationally expensive and may even
    have security issues (e.g. evaluating some file sets). For these
    reasons, we want to limit the types of matcher patterns that can
    be used in narrow specs and by command line arguments used for
    defining narrow specs.
    
    This commit teaches ``narrowspec.parsepatterns()`` to validate the
    pattern types against "safe" patterns.
    
    Surprisingly, no existing tests broke. So tests for the feature
    have been added.
    
    We also added a function to validate a patterns data structure.
    This will be used in future commits.
    
    Differential Revision: https://phab.mercurial-scm.org/D4522
    0d572769046a
    History
    narrowspec: limit patterns to path: and rootfilesin: (BC)
    Gregory Szorc authored
    Some matcher patterns are computationally expensive and may even
    have security issues (e.g. evaluating some file sets). For these
    reasons, we want to limit the types of matcher patterns that can
    be used in narrow specs and by command line arguments used for
    defining narrow specs.
    
    This commit teaches ``narrowspec.parsepatterns()`` to validate the
    pattern types against "safe" patterns.
    
    Surprisingly, no existing tests broke. So tests for the feature
    have been added.
    
    We also added a function to validate a patterns data structure.
    This will be used in future commits.
    
    Differential Revision: https://phab.mercurial-scm.org/D4522