Skip to content

Bugfix/mirror all patch conflicts#13789

Merged
scheibelp merged 8 commits intospack:developfrom
lanl-preteam:bugfix/mirror-all-patch-conflicts
Nov 21, 2019
Merged

Bugfix/mirror all patch conflicts#13789
scheibelp merged 8 commits intospack:developfrom
lanl-preteam:bugfix/mirror-all-patch-conflicts

Conversation

@Paul-Ferrell
Copy link
Copy Markdown
Contributor

@Paul-Ferrell Paul-Ferrell commented Nov 19, 2019

Closes #13622

  • Appends part of the patch has to the patch name to differentiate
    patches with the same name (for the same package).
  • Patches are re-downloaded if the file isn't at the storage path
    or it's cosmetic name are missing.
  • Fixed an exception handling error in mirror.py (not all exceptions)
    have a 'message' attribute.

 - Appends part of the patch has to the patch name to differentiate
   patches with the same name (for the same package).
 - Patches are re-downloaded if the file isn't at the storage path
   or it's cosmetic name are missing.
 - Fixed an exception handling error in mirror.py (not all exceptions)
   have a 'message' attribute.
Copy link
Copy Markdown
Member

@scheibelp scheibelp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have a few requests. Also:

  • Flake is failing right now
  • I updated the PR description to mention a similar PR (but the other one is a subset and doesn't fix all the issues this PR does).

Thanks!

- Removed changes to mpfr
- Changed 8 bytes of hash to 7
- Used suggested comment.
Now the staging will fetch the file if it doesn't already exist,
and will create the symlink if it's missing as a separate step.
@scheibelp scheibelp merged commit fb3a3ba into spack:develop Nov 21, 2019
@scheibelp
Copy link
Copy Markdown
Member

Thanks!

alalazo added a commit to alalazo/spack that referenced this pull request Dec 10, 2019
fixes spack#14067

In spack#13789 an absolute path was erroneously substituted with a relative
one, causing broken links in mirrors. This PR restores the absolute path
and adds a unit test to avoid regressions.
tgamblin pushed a commit that referenced this pull request Dec 24, 2019
…ling (#13789)

* Some packages (e.g. mpfr at the time of this patch) can have patches
  with the same name but different contents (which apply to different
  versions of the package). This appends part of the patch hash to the
  cache file name to avoid conflicts.
* Some exceptions which occur during fetching are not a subclass of
  SpackError and therefore do not have a 'message' attribute. This
  updates the logic for mirroring a single spec (add_single_spec)
  to produce an appropriate error message in that case (where before
  it failed with an AttributeError)
* In various circumstances, a mirror can contain the universal storage
  path but not a cosmetic symlink; in this case it would not generate
  a symlink. Now "spack mirror create" will create a symlink for any
  package that doesn't have one.
samiilvonen pushed a commit to CSCfi/spack that referenced this pull request Jan 10, 2020
…ling (spack#13789)

* Some packages (e.g. mpfr at the time of this patch) can have patches
  with the same name but different contents (which apply to different
  versions of the package). This appends part of the patch hash to the
  cache file name to avoid conflicts.
* Some exceptions which occur during fetching are not a subclass of
  SpackError and therefore do not have a 'message' attribute. This
  updates the logic for mirroring a single spec (add_single_spec)
  to produce an appropriate error message in that case (where before
  it failed with an AttributeError)
* In various circumstances, a mirror can contain the universal storage
  path but not a cosmetic symlink; in this case it would not generate
  a symlink. Now "spack mirror create" will create a symlink for any
  package that doesn't have one.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants