1. 20 May, 2020 3 commits
    • Marius Gedminas's avatar
      Fix tests · 2f1d705a
      Marius Gedminas authored
      Add a RENormalizer so the easy_install.txt will be happy with scripts
      generated on Python 2 (using open(..., 'U')) and on Python 3 (using just
      open(...)).
      
      This was suggested by @sallner.
      
      (cherry picked from commit 2cf42066fc8238ffe72ce6aeaef0e66b5df13f79)
      2f1d705a
    • Laurence Rowe's avatar
      Avoid DeprecationWarning: 'U' mode is deprecated · 20adbdb6
      Laurence Rowe authored
      Python 3.7 began warning about open's 'U' mode. Universal newline mode (newline=None) is default in Python 3 so avoid specifying it on Python 3.
      
      (cherry picked from commit 978a6af9e78db44b9db25cb08c7f9d98c24bbc03)
      20adbdb6
    • Julien Muchembled's avatar
      Fix redo_pyc for Python 3 · e3f11c25
      Julien Muchembled authored
      e3f11c25
  2. 16 May, 2020 1 commit
  3. 15 May, 2020 1 commit
    • Julien Muchembled's avatar
      fixup! Apply += & -= in correct order with respect to extends · 44ce8371
      Julien Muchembled authored
      If a.cfg extends b.cfg and both contain [a],
      it was already not possible for a.cfg:[a] to combine <= & +=.
      But it worked when a.cfg:[a] does not extend anything, and
      commit 161fb191 broke that.
      
      The only proper way to solve all this seems to process <= before
      += & -=. But since processing <= while extending files would cause
      other issues, we'd rather process +=&-= when initializing parts.
      44ce8371
  4. 12 May, 2020 1 commit
  5. 08 May, 2020 1 commit
  6. 05 May, 2020 3 commits
  7. 04 May, 2020 7 commits
    • Julien Muchembled's avatar
      Do not reprocess already extended files · ec8f60fa
      Julien Muchembled authored
      extends can be interpreted as inheritance in OOP, but the original
      behaviour was against what is commonly (always?) seen everywhere.
      
      It is however good practice a file extends all files it needs directly
      (and only them). Then if two files A & B (possibly unrelated) extends
      the same third C, A was unable to overrides C values. It was even
      error-prone because someone who don't use B yet could override C values
      in A and later extending B would break A.
      
      For some of our common use cases, this new algorithm is also 9x faster
      (time to annotate: ~2.3s with -> ~.29s).
      
      Other changes:
      - ~/ is now expanded for non-url extends.
      - An absolute (non-url) path is not longer treated like a local path
        if the base is a url.
      - Better path/url normalization.
      
      Rebase instructions:
      - squash with "Chomp ../ from beginging of filenames"
      - split and apply "Support ${:_profile_base_location_}." after
      ec8f60fa
    • Julien Muchembled's avatar
      Revert "Cache downloaded data in zc/buildout/buildout.py:_open() in memory to... · 2242d941
      Julien Muchembled authored
      Revert "Cache downloaded data in zc/buildout/buildout.py:_open() in memory to accelerate remote extends."
      
      This reverts commit 260bc0c4 partially.
      
      The remaining should be squashed with "Write .installed.cfg only once, in safe way and only if there's any change."
      2242d941
    • Julien Muchembled's avatar
      6b6ce0a1
    • Julien Muchembled's avatar
    • Jérome Perrin's avatar
      Release 2.7.1+slapos005 · 27a43288
      Jérome Perrin authored
      27a43288
    • Jérome Perrin's avatar
      Ignore _profile_base_location_ when computing signatures · d7ee97d9
      Jérome Perrin authored
      We want two identical sections at different URL to be able to produce
      same signature. This is feature is useful for slapos.recipe.cmmi's
      shared parts.
      
      Rebase instructions:
      - squash with "apply "Support ${:_profile_base_location_}."
      d7ee97d9
    • Jérome Perrin's avatar
      Use lower level API to calculate signature · f60c396b
      Jérome Perrin authored
      If we use options.items() we visit all keys and not used options cannot
      be detected.
      
      Rebase instructions:
      - squash with "Add referred parts' hash strings in
        __buildout_signature__, that invokes rebuild of a part
        when one of its (recursive) dependencies are modified"
      - add a comment explaining why such a lower level API is used
      f60c396b
  8. 23 Apr, 2020 2 commits
  9. 22 Apr, 2020 3 commits
  10. 03 Apr, 2020 2 commits
  11. 31 Mar, 2020 1 commit
  12. 20 Mar, 2020 2 commits
  13. 04 Dec, 2019 13 commits