Skip to content
Snippets Groups Projects
  1. May 21, 2017
  2. May 22, 2017
    • Jun Wu's avatar
      profiling: allow loading profiling extension before everything else · f40dc6f7
      Jun Wu authored
      6d642ecf1a89 makes profiler start early without loading extensions. That
      makes it impossible for an extension to add customized profilers.
      
      This patch adds a special case: if a profiler is not found but an extension
      with the same name could be loaded, load that extension first, and expect it
      to have a "profile" contextmanager method. This allows customized profilers
      and extension setup time is still profiled.
      f40dc6f7
    • Jun Wu's avatar
      extensions: allow loading a whitelisted subset of extensions · 9a3e88d4
      Jun Wu authored
      This feature will be used by the next patch.
      9a3e88d4
    • Martin von Zweigbergk's avatar
      match: catch attempts to create case-insenstive exact matchers · 9695aca1
      Martin von Zweigbergk authored
      Exact matchers are only created internally (as opposed to from user
      input) based on a set of files that the caller collected before, so
      they should always match the list exactly (i.e. case-sensitively).
      9695aca1
    • Boris Feld's avatar
      test: remove aliases forcing date, use default-date · 7b7f55d5
      Boris Feld authored
      Now that we have the default-date by default and all code have been updated,
      remove the old commands alias that forced the date as they are not longer
      useful.
      
      Writing tests now should be easier for everyone now that all dates should be
      stable.
      7b7f55d5
    • Boris Feld's avatar
      test: prepare tests for removing date aliases · d6be5b5c
      Boris Feld authored
      In the next patch, I'm gonna removing the global command aliases that force
      the epoch date but some tests either fail or their output change after that.
      Instead I'm copying the needed aliases in the test files that will otherwise
      change.
      
      Update test-rebase-obsolete.t because a revision hash is based on the epoch
      date after a 'commit --amend' and the output will change after removing date
      aliases.
      
      Update test-subrepo-git.t as the git subrepo doesn't use traditional date
      mechanisms. I'm not sure that updating the git subrepo to support default-date
      make sense. Add the commit alias to the test in order for making it pass after
      removing the date aliases globally.
      d6be5b5c
  3. May 16, 2017
  4. May 19, 2017
    • Boris Feld's avatar
      devel: use default-date config field when creating obsmarkers · 08d02c1d
      Boris Feld authored
      Also use the default-date when creating obsmarkers. Currently they are created
      with the current date and without any option to force their value.
      
      To test the feature, we remove some of the many 'glob' used to match obsmarker
      date in the tests.
      08d02c1d
  5. May 22, 2017
  6. May 19, 2017
    • Boris Feld's avatar
      devel: add a config field to force dates to timestamp 0 · 3e2e179e
      Boris Feld authored
      Add a new config field named default-date under the devel section to force all
      implicits date to a specific value. If a explicit date is passed, it will
      override the default.
      
      This patch only affect changesets. Other usages (blackbox, obsmarkers) are
      updated in later patchs.
      
      The test runner is setting a bunch of alias to force the '--date' argument. We
      will replace theses aliases in a later patch.
      3e2e179e
    • Boris Feld's avatar
      ui: add the possiblity to get a date config field · 420e93b0
      Boris Feld authored
      Add the method configdate to read a date from configuration. It uses the
      util.rawparsedate refactored earlier to support all standard date formats.
      420e93b0
    • Boris Feld's avatar
      util: refactor util.parsedate to raises ValueError · a7dce526
      Boris Feld authored
      Split most of util.parsedate in util.rawparsedate and make it raises ValueError instead
      of error.Abort.
      
      The util.parsedate function is now just a shell function converting ValueError
      to error.Abort for existing users.
      
      I need to parse a date from config in a later patch and use util.rawparsedate
      with ui.configwith which expect a convert that raises ValueError.
      a7dce526
  7. May 22, 2017
    • Martin von Zweigbergk's avatar
      match: implement __repr__() and update users (API) · 95201747
      Martin von Zweigbergk authored
      fsmonitor and debugignore currently access matcher fields that I would
      consider implementation details, namely patternspat, includepat, and
      excludepat. Let' instead implement __repr__() and have the few users
      use that instead.
      
      Marked (API) because the fields can now be None.
      95201747
    • Martin von Zweigbergk's avatar
      fsmonitor: fix silly "*kwargs" bug in merge.update() override · bdc4861f
      Martin von Zweigbergk authored
      Everyone knows that it's supposed to be spelled with two asterisks.
      
      It started failing in fad5e299cfc7 (update: accept --merge to allow
      merging across topo branches (issue5125), 2017-02-13) because until
      then there was only one argument that was covered by the kwargs, so
      *kwargs or **kwargs both worked (or at least that's what I think with
      my limited understanding of Python).
      bdc4861f
  8. May 19, 2017
  9. May 18, 2017
  10. May 13, 2017
    • Martin von Zweigbergk's avatar
      match: replace match class by match function (API) · 24245b54
      Martin von Zweigbergk authored
      The matcher class is getting hard to understand. It will be easier to
      follow if we can break it up into simpler matchers that we then
      compose. I'm hoping to have one matcher that accepts regular
      (non-include) patterns, one for exact file matches, one that always
      matches (and maybe one that never does) and then compose them by
      intersection and difference.
      
      This patch takes a simple but important step towards that goal by
      making match.match() a function (and renaming the matcher class itself
      from "match" to "matcher"). The new function will eventually be
      responsible for creating the simple matchers and composing them.
      
      icasefsmatcher similarly gets a factory function (called
      "icasefsmatch"). I also moved the other factory functions nearby.
      24245b54
  11. May 21, 2017
  12. May 20, 2017
  13. May 21, 2017
    • Pierre-Yves David's avatar
      perf: allow to clear the obsstore in 'perfvolatilesets' · f90419a9
      Pierre-Yves David authored
      Loading the obsstore can become a large part of the time necessary to compute
      the important volatile set. We add a flag purging all known obsstore related
      data.
      
      For example, computing the 'bumped' set currently requires reading the full
      obsstore, so timing greatly differ with or without that flag:
      
      Without:
      ! bumped
      ! wall 0.005047 comb 0.000000 user 0.000000 sys 0.000000 (best of 446)
      
      With:
      ! bumped
      ! wall 0.512367 comb 0.510000 user 0.480000 sys 0.030000 (best of 15)
      f90419a9
    • Pierre-Yves David's avatar
      obsolete: test an important corner case · 4e51b2a9
      Pierre-Yves David authored
      Receiving markers affecting changeset we'll receives later is legitimate and
      not so uncommon case. Working on cache highlighted that this was only testing
      in the evolve extension. We add a test for this case in core.
      4e51b2a9
  14. May 19, 2017
  15. May 21, 2017
Loading