diff options
author | Adam J. Stewart <ajstewart426@gmail.com> | 2017-04-03 17:34:16 -0500 |
---|---|---|
committer | Todd Gamblin <tgamblin@llnl.gov> | 2017-04-03 15:34:16 -0700 |
commit | 50df071ad9a1b936ffbb4121036a36ed5ab38ffa (patch) | |
tree | a35d73aec9ef2ec615e0d1fc93a6fcac4066818c /var | |
parent | 7e9777f294a0a672f550e2dede033e4dc3e5dfda (diff) | |
download | spack-50df071ad9a1b936ffbb4121036a36ed5ab38ffa.tar.gz spack-50df071ad9a1b936ffbb4121036a36ed5ab38ffa.tar.bz2 spack-50df071ad9a1b936ffbb4121036a36ed5ab38ffa.tar.xz spack-50df071ad9a1b936ffbb4121036a36ed5ab38ffa.zip |
Overhaul Spack's URL parsing (#2972)
* Remove fake URLs from Spack
* Ignore long lines for URLs that start with ftp:
* Preliminary changes to version regexes
* New redesign of version regexes
* Allow letters in version-only
* Fix detection of versions that end in Final
* Rearrange a few regexes and add examples
* Add tests for common download repositories
* Add test cases for common tarball naming schemes
* Finalize version regexes
* spack url test -> spack url summary
* Clean up comments
* Rearrange suffix checks
* Use query strings for name detection
* Remove no longer necessary url_for_version functions
* Strip off extraneous information after package name
* Add one more test
* Dot in square brackets does not need to be escaped
* Move renaming outside of parse_name_offset
* Fix versions for a couple more packages
* Fix flake8 and doc tests
* Correctly parse Python, Lua, and Bio++ package names
* Use effective URLs for mfem
* Add checksummed version to mitos
* Remove url_for_version from STAR-CCM+ package
* Revert changes to version numbers with underscores and dashes
* Fix name detection for tbb
* Correctly parse Ruby gems
* Reverted mfem back to shortened URLs.
* Updated instructions for better security
* Remove preferred=True from newest version
* Add tests for new `spack url list` flags
* Add tests for strip_name_suffixes
* Add unit tests for version separators
* Fix bugs related to parseable name but in parseable version
* Remove dead code, update docstring
* Ignore 'binary' at end of version string
* Remove platform from version
* Flip libedit version numbers
* Re-support weird NCO alpha/beta versions
* Rebase and remove one new fake URL
* Add / to beginning of regex to avoid picking up similarly named packages
* Ignore weird tar versions
* Fix bug in url parse --spider when no versions found
* Less strict version matching for spack versions
* Don't rename Python packages
* Be a little more selective, version must begin with a digit
* Re-add fake URLs
* Fix up several other packages
* Ignore more file endings
* Add parsing support for Miniconda
* Update tab completion
* XFAILS are now PASSES for 2 web tests
Diffstat (limited to 'var')
65 files changed, 154 insertions, 238 deletions
diff --git a/var/spack/repos/builtin/packages/automake/package.py b/var/spack/repos/builtin/packages/automake/package.py index 8643f5d836..4f022e5cad 100644 --- a/var/spack/repos/builtin/packages/automake/package.py +++ b/var/spack/repos/builtin/packages/automake/package.py @@ -29,7 +29,7 @@ class Automake(AutotoolsPackage): """Automake -- make file builder part of autotools""" homepage = 'http://www.gnu.org/software/automake/' - url = 'http://ftp.gnu.org/gnu/automake/automake-1.14.tar.gz' + url = 'http://ftp.gnu.org/gnu/automake/automake-1.15.tar.gz' version('1.15', '716946a105ca228ab545fc37a70df3a3') version('1.14.1', 'd052a3e884631b9c7892f2efce542d75') diff --git a/var/spack/repos/builtin/packages/bib2xhtml/package.py b/var/spack/repos/builtin/packages/bib2xhtml/package.py index b356038180..56038eea18 100644 --- a/var/spack/repos/builtin/packages/bib2xhtml/package.py +++ b/var/spack/repos/builtin/packages/bib2xhtml/package.py @@ -33,9 +33,6 @@ class Bib2xhtml(Package): version('3.0-15-gf506', 'a26ba02fe0053bbbf2277bdf0acf8645') - def url_for_version(self, v): - return ('http://www.spinellis.gr/sw/textproc/bib2xhtml/bib2xhtml-v%s.tar.gz' % v) - def install(self, spec, prefix): # Add the bst include files to the install directory bst_include = join_path(prefix.share, 'bib2xhtml') diff --git a/var/spack/repos/builtin/packages/bison/package.py b/var/spack/repos/builtin/packages/bison/package.py index 133fcc5fc3..e9bfa32b39 100644 --- a/var/spack/repos/builtin/packages/bison/package.py +++ b/var/spack/repos/builtin/packages/bison/package.py @@ -31,7 +31,7 @@ class Bison(AutotoolsPackage): generalized LR (GLR) parser employing LALR(1) parser tables.""" homepage = "http://www.gnu.org/software/bison/" - url = "http://ftp.gnu.org/gnu/bison/bison-3.0.tar.gz" + url = "http://ftp.gnu.org/gnu/bison/bison-3.0.4.tar.gz" version('3.0.4', 'a586e11cd4aff49c3ff6d3b6a4c9ccf8') version('2.7', 'ded660799e76fb1667d594de1f7a0da9') diff --git a/var/spack/repos/builtin/packages/blast-plus/package.py b/var/spack/repos/builtin/packages/blast-plus/package.py index 02db14f478..53f09c03a3 100644 --- a/var/spack/repos/builtin/packages/blast-plus/package.py +++ b/var/spack/repos/builtin/packages/blast-plus/package.py @@ -39,14 +39,9 @@ from spack import * class BlastPlus(AutotoolsPackage): """Basic Local Alignment Search Tool.""" - homepage = "http://blast.ncbi.nlm.nih.gov/" url = "https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.6.0/ncbi-blast-2.6.0+-src.tar.gz" - def url_for_version(self, version): - url = "https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/{0}/ncbi-blast-{0}+-src.tar.gz" - return url.format(version) - version('2.6.0', 'c8ce8055b10c4d774d995f88c7cc6225') version('2.2.30', 'f8e9a5eb368173142fe6867208b73715') diff --git a/var/spack/repos/builtin/packages/boost/package.py b/var/spack/repos/builtin/packages/boost/package.py index 7570987ad8..06df688ea1 100644 --- a/var/spack/repos/builtin/packages/boost/package.py +++ b/var/spack/repos/builtin/packages/boost/package.py @@ -141,14 +141,8 @@ class Boost(Package): patch('xl_1_62_0_le.patch', when='@1.62.0%xl') def url_for_version(self, version): - """ - Handle Boost's weird URLs, - which write the version two different ways. - """ - parts = [str(p) for p in Version(version)] - dots = ".".join(parts) - underscores = "_".join(parts) - return "http://downloads.sourceforge.net/project/boost/boost/%s/boost_%s.tar.bz2" % (dots, underscores) + url = "http://downloads.sourceforge.net/project/boost/boost/{0}/boost_{1}.tar.bz2" + return url.format(version.dotted, version.underscored) def determine_toolset(self, spec): if spec.satisfies("platform=darwin"): diff --git a/var/spack/repos/builtin/packages/bowtie2/package.py b/var/spack/repos/builtin/packages/bowtie2/package.py index 6dbcea8dd0..dc850d817f 100644 --- a/var/spack/repos/builtin/packages/bowtie2/package.py +++ b/var/spack/repos/builtin/packages/bowtie2/package.py @@ -29,7 +29,10 @@ from glob import glob class Bowtie2(Package): """Bowtie 2 is an ultrafast and memory-efficient tool for aligning sequencing reads to long reference sequences""" + homepage = "bowtie-bio.sourceforge.net/bowtie2/index.shtml" + url = "http://downloads.sourceforge.net/project/bowtie-bio/bowtie2/2.3.1/bowtie2-2.3.1-source.zip" + version('2.3.1', 'b4efa22612e98e0c23de3d2c9f2f2478') version('2.2.5', '51fa97a862d248d7ee660efc1147c75f') @@ -38,10 +41,6 @@ class Bowtie2(Package): patch('bowtie2-2.2.5.patch', when='@2.2.5', level=0) patch('bowtie2-2.3.1.patch', when='@2.3.1', level=0) - def url_for_version(self, version): - url="http://downloads.sourceforge.net/project/bowtie-bio/bowtie2/{0}/bowtie2-{0}-source.zip" - return url.format(version) - def install(self, spec, prefix): make() mkdirp(prefix.bin) diff --git a/var/spack/repos/builtin/packages/cddlib/package.py b/var/spack/repos/builtin/packages/cddlib/package.py index 50dc5ad472..002c302599 100644 --- a/var/spack/repos/builtin/packages/cddlib/package.py +++ b/var/spack/repos/builtin/packages/cddlib/package.py @@ -31,19 +31,9 @@ class Cddlib(AutotoolsPackage): Method of Motzkin et al. for generating all vertices (i.e. extreme points) and extreme rays of a general convex polyhedron in R^d given by a system of linear inequalities""" - homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/" - # This is the original download url. It is currently down [2016-08-23], - # but should be reinstated or updated once the issue is resolved. - # url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094h.tar.gz" - url = "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz" - def url_for_version(self, version): - # Since the commit id is part of the version, we can't - # auto-generate the string, and we need to explicitly list all - # known versions here. Currently, there is only one version. - if str(version) == '0.94h': - return "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz" - raise InstallError("Unsupported version %s" % str(version)) + homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/" + url = "ftp://ftp.math.ethz.ch/users/fukudak/cdd/cddlib-094h.tar.gz" version('0.94h', '1467d270860bbcb26d3ebae424690e7c') @@ -51,3 +41,7 @@ class Cddlib(AutotoolsPackage): depends_on("gmp") depends_on("libtool", type="build") + + def url_for_version(self, version): + url = "ftp://ftp.math.ethz.ch/users/fukudak/cdd/cddlib-{0}.tar.gz" + return url.format(version.joined) diff --git a/var/spack/repos/builtin/packages/cdo/package.py b/var/spack/repos/builtin/packages/cdo/package.py index 775dc31cf3..90039d4479 100644 --- a/var/spack/repos/builtin/packages/cdo/package.py +++ b/var/spack/repos/builtin/packages/cdo/package.py @@ -30,9 +30,13 @@ class Cdo(Package): Climate and NWP model Data. """ homepage = "https://code.zmaw.de/projects/cdo" + url = "https://code.zmaw.de/attachments/download/12760/cdo-1.7.2.tar.gz" + list_url = "https://code.zmaw.de/projects/cdo/files" - version('1.7.2', 'f08e4ce8739a4f2b63fc81a24db3ee31', url='https://code.zmaw.de/attachments/download/12760/cdo-1.7.2.tar.gz') - version('1.6.9', 'bf0997bf20e812f35e10188a930e24e2', url='https://code.zmaw.de/attachments/download/10198/cdo-1.6.9.tar.gz') + version('1.7.2', 'f08e4ce8739a4f2b63fc81a24db3ee31', + url='https://code.zmaw.de/attachments/download/12760/cdo-1.7.2.tar.gz') + version('1.6.9', 'bf0997bf20e812f35e10188a930e24e2', + url='https://code.zmaw.de/attachments/download/10198/cdo-1.6.9.tar.gz') variant('szip', default=True, description='Enable szip compression for GRIB1') variant('hdf5', default=False, description='Enable HDF5 support') @@ -54,7 +58,7 @@ class Cdo(Package): depends_on('proj', when='+proj') depends_on('curl', when='+curl') depends_on('fftw', when='+fftw') - depends_on('magics', when='+magics') + depends_on('magics', when='+magics') def install(self, spec, prefix): config_args = ["--prefix=" + prefix, diff --git a/var/spack/repos/builtin/packages/cfitsio/package.py b/var/spack/repos/builtin/packages/cfitsio/package.py index 811b3ca9bc..b382f87f5b 100644 --- a/var/spack/repos/builtin/packages/cfitsio/package.py +++ b/var/spack/repos/builtin/packages/cfitsio/package.py @@ -31,6 +31,7 @@ class Cfitsio(AutotoolsPackage): """ homepage = 'http://heasarc.gsfc.nasa.gov/fitsio/' + url = 'http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio3410.tar.gz' version('3.410', '8a4a66fcdd816aae41768baa0b025552') version('3.370', 'abebd2d02ba5b0503c633581e3bfa116') diff --git a/var/spack/repos/builtin/packages/cppad/package.py b/var/spack/repos/builtin/packages/cppad/package.py index 1ec31bbeef..e17a070294 100644 --- a/var/spack/repos/builtin/packages/cppad/package.py +++ b/var/spack/repos/builtin/packages/cppad/package.py @@ -29,16 +29,13 @@ class Cppad(CMakePackage): """A Package for Differentiation of C++ Algorithms.""" homepage = "https://www.coin-or.org/CppAD/" + url = "http://www.coin-or.org/download/source/CppAD/cppad-20170114.gpl.tgz" version('20170114', '565a534dc813fa1289764222cd8c11ea') version('develop', git='https://github.com/coin-or/CppAD.git') depends_on('cmake', type='build') - def url_for_version(self, version): - """Handle version-based custom URLs.""" - return "http://www.coin-or.org/download/source/CppAD/cppad-%s.gpl.tgz" % (version) - def cmake_args(self): # This package does not obey CMAKE_INSTALL_PREFIX args = [ diff --git a/var/spack/repos/builtin/packages/cryptopp/package.py b/var/spack/repos/builtin/packages/cryptopp/package.py index c92f262a9a..142bd4f253 100644 --- a/var/spack/repos/builtin/packages/cryptopp/package.py +++ b/var/spack/repos/builtin/packages/cryptopp/package.py @@ -36,6 +36,7 @@ class Cryptopp(Package): """ homepage = "http://www.cryptopp.com" + url = "http://www.cryptopp.com/cryptopp563.zip" version('5.6.3', '3c5b70e2ec98b7a24988734446242d07') version('5.6.2', '7ed022585698df48e65ce9218f6c6a67') diff --git a/var/spack/repos/builtin/packages/dakota/package.py b/var/spack/repos/builtin/packages/dakota/package.py index e8f7d0889b..c40229f83b 100644 --- a/var/spack/repos/builtin/packages/dakota/package.py +++ b/var/spack/repos/builtin/packages/dakota/package.py @@ -46,7 +46,6 @@ class Dakota(Package): homepage = 'https://dakota.sandia.gov/' url = 'https://dakota.sandia.gov/sites/default/files/distributions/public/dakota-6.3-public.src.tar.gz' - _url_str = 'https://dakota.sandia.gov/sites/default/files/distributions/public/dakota-{version}-public.src.tar.gz' version('6.3', '05a58d209fae604af234c894c3f73f6d') @@ -64,9 +63,6 @@ class Dakota(Package): depends_on('boost') depends_on('cmake', type='build') - def url_for_version(self, version): - return Dakota._url_str.format(version=version) - def install(self, spec, prefix): options = [] options.extend(std_cmake_args) diff --git a/var/spack/repos/builtin/packages/exonerate/package.py b/var/spack/repos/builtin/packages/exonerate/package.py index 7921e64058..2615d859d6 100644 --- a/var/spack/repos/builtin/packages/exonerate/package.py +++ b/var/spack/repos/builtin/packages/exonerate/package.py @@ -29,7 +29,7 @@ class Exonerate(Package): """Pairwise sequence alignment of DNA and proteins""" homepage = "http://www.ebi.ac.uk/about/vertebrate-genomics/software/exonerate" - url = "http://ftp.ebi.ac.uk/pub/software/vertebrategenomics/exonerate/exonerate-2.2.0.tar.gz" + url = "http://ftp.ebi.ac.uk/pub/software/vertebrategenomics/exonerate/exonerate-2.4.0.tar.gz" version('2.4.0', '126fbade003b80b663a1d530c56f1904') diff --git a/var/spack/repos/builtin/packages/ferret/package.py b/var/spack/repos/builtin/packages/ferret/package.py index 15ddfcee16..4dcff54b8f 100644 --- a/var/spack/repos/builtin/packages/ferret/package.py +++ b/var/spack/repos/builtin/packages/ferret/package.py @@ -31,11 +31,10 @@ class Ferret(Package): """Ferret is an interactive computer visualization and analysis environment designed to meet the needs of oceanographers and meteorologists analyzing large and complex gridded data sets.""" - homepage = "http://ferret.noaa.gov/Ferret/" - url = "ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.tar.gz" + homepage = "http://ferret.pmel.noaa.gov/Ferret/home" + url = "ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.v696.tar.gz" - version('6.96', '51722027c864369f41bab5751dfff8cc', - url="ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.tar.gz") + version('6.96', '51722027c864369f41bab5751dfff8cc') depends_on("hdf5~mpi~fortran") depends_on("netcdf~mpi") @@ -43,6 +42,10 @@ class Ferret(Package): depends_on("readline") depends_on("zlib") + def url_for_version(self, version): + return "ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.v{0}.tar.gz".format( + version.joined) + def patch(self): hdf5_prefix = self.spec['hdf5'].prefix netcdff_prefix = self.spec['netcdf-fortran'].prefix diff --git a/var/spack/repos/builtin/packages/gdk-pixbuf/package.py b/var/spack/repos/builtin/packages/gdk-pixbuf/package.py index 1159744721..2f3a0b0bd7 100644 --- a/var/spack/repos/builtin/packages/gdk-pixbuf/package.py +++ b/var/spack/repos/builtin/packages/gdk-pixbuf/package.py @@ -32,7 +32,9 @@ class GdkPixbuf(AutotoolsPackage): GTK+ 2 but it was split off into a separate package in preparation for the change to GTK+ 3.""" homepage = "https://developer.gnome.org/gdk-pixbuf/" - url = "http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.31/gdk-pixbuf-2.31.1.tar.xz" + url = "http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.31/gdk-pixbuf-2.31.2.tar.xz" + list_url = "http://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/" + list_depth = 2 version('2.31.2', '6be6bbc4f356d4b79ab4226860ab8523') diff --git a/var/spack/repos/builtin/packages/go/package.py b/var/spack/repos/builtin/packages/go/package.py index 6559e90496..c095140c68 100644 --- a/var/spack/repos/builtin/packages/go/package.py +++ b/var/spack/repos/builtin/packages/go/package.py @@ -89,13 +89,6 @@ class Go(Package): r'# \1\2\3', ) - @when('@1.5.0:') - def patch(self): - pass - - def url_for_version(self, version): - return "https://storage.googleapis.com/golang/go{0}.src.tar.gz".format(version) - def install(self, spec, prefix): bash = which('bash') with working_dir('src'): diff --git a/var/spack/repos/builtin/packages/gource/package.py b/var/spack/repos/builtin/packages/gource/package.py index 21994ad42c..7d12697d63 100644 --- a/var/spack/repos/builtin/packages/gource/package.py +++ b/var/spack/repos/builtin/packages/gource/package.py @@ -52,10 +52,6 @@ class Gource(AutotoolsPackage): parallel = False force_autoreconf = True - def url_for_version(self, version): - tmp = 'https://github.com/acaudwell/Gource/releases/download/gource-{0}/gource-{0}.tar.gz' # NOQA: ignore=E501 - return tmp.format(version.dotted) - def configure_args(self): spec = self.spec return [ diff --git a/var/spack/repos/builtin/packages/ibmisc/package.py b/var/spack/repos/builtin/packages/ibmisc/package.py index f325205507..181ae6d92b 100644 --- a/var/spack/repos/builtin/packages/ibmisc/package.py +++ b/var/spack/repos/builtin/packages/ibmisc/package.py @@ -29,9 +29,9 @@ class Ibmisc(CMakePackage): """Misc. reusable utilities used by IceBin.""" homepage = "https://github.com/citibeth/ibmisc" - url = "https://github.com/citibeth/ibmisc/tarball/123" + url = "https://github.com/citibeth/ibmisc/archive/v0.1.0.tar.gz" - version('0.1.0', '12f2a32432a11db48e00217df18e59fa') + version('0.1.0', '18c63db3e466c5a6fc2db3f903d06ecb') variant('everytrace', default=False, description='Report errors through Everytrace') diff --git a/var/spack/repos/builtin/packages/icet/package.py b/var/spack/repos/builtin/packages/icet/package.py index f8260f1951..ca3251ac40 100644 --- a/var/spack/repos/builtin/packages/icet/package.py +++ b/var/spack/repos/builtin/packages/icet/package.py @@ -30,7 +30,7 @@ class Icet(CMakePackage): sort-last parallel rendering library.""" homepage = "http://icet.sandia.gov" - url = "https://example.com/icet-1.2.3.tar.gz" + url = "https://gitlab.kitware.com/icet/icet/repository/archive.tar.bz2?ref=IceT-2.1.1" version('develop', branch='master', git='https://gitlab.kitware.com/icet/icet.git') @@ -38,9 +38,5 @@ class Icet(CMakePackage): depends_on('mpi') - def url_for_version(self, version): - return ("https://gitlab.kitware.com/icet/icet/repository/" - "archive.tar.bz2?ref=IceT-{0}".format(version.dotted)) - def cmake_args(self): return ['-DICET_USE_OPENGL:BOOL=OFF'] diff --git a/var/spack/repos/builtin/packages/image-magick/package.py b/var/spack/repos/builtin/packages/image-magick/package.py index 9efb0cd368..e32f1967e2 100644 --- a/var/spack/repos/builtin/packages/image-magick/package.py +++ b/var/spack/repos/builtin/packages/image-magick/package.py @@ -45,9 +45,6 @@ class ImageMagick(Package): depends_on('ghostscript') depends_on('ghostscript-fonts') - def url_for_version(self, version): - return "https://github.com/ImageMagick/ImageMagick/archive/{0}.tar.gz".format(version) - def install(self, spec, prefix): gs_font_dir = join_path(spec['ghostscript-fonts'].prefix.share, "font") configure('--prefix={0}'.format(prefix), diff --git a/var/spack/repos/builtin/packages/jdk/package.py b/var/spack/repos/builtin/packages/jdk/package.py index 518a469435..8df01f4b67 100644 --- a/var/spack/repos/builtin/packages/jdk/package.py +++ b/var/spack/repos/builtin/packages/jdk/package.py @@ -45,10 +45,10 @@ class Jdk(Package): '-H', # specify required License Agreement cookie 'Cookie: oraclelicense=accept-securebackup-cookie'] - version('8u66-linux-x64', '88f31f3d642c3287134297b8c10e61bf', + version('8u66', '88f31f3d642c3287134297b8c10e61bf', url="http://download.oracle.com/otn-pub/java/jdk/8u66-b17/jdk-8u66-linux-x64.tar.gz", curl_options=curl_options) - version('8u92-linux-x64', '65a1cc17ea362453a6e0eb4f13be76e4', + version('8u92', '65a1cc17ea362453a6e0eb4f13be76e4', url="http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-linux-x64.tar.gz", curl_options=curl_options) diff --git a/var/spack/repos/builtin/packages/libedit/package.py b/var/spack/repos/builtin/packages/libedit/package.py index 5dcee61cab..6887d67101 100644 --- a/var/spack/repos/builtin/packages/libedit/package.py +++ b/var/spack/repos/builtin/packages/libedit/package.py @@ -30,7 +30,11 @@ class Libedit(AutotoolsPackage): homepage = "http://thrysoee.dk/editline/" url = "http://thrysoee.dk/editline/libedit-20150325-3.1.tar.gz" - version('3.1', '43cdb5df3061d78b5e9d59109871b4f6', - url="http://thrysoee.dk/editline/libedit-20150325-3.1.tar.gz") + version('3.1-20160903', '0467d27684c453a351fbcefebbcb16a3') + version('3.1-20150325', '43cdb5df3061d78b5e9d59109871b4f6') depends_on('ncurses') + + def url_for_version(self, version): + url = "http://thrysoee.dk/editline/libedit-{0}-{1}.tar.gz" + return url.format(version[-1], version.up_to(-1)) diff --git a/var/spack/repos/builtin/packages/libgd/package.py b/var/spack/repos/builtin/packages/libgd/package.py index adce0b7515..c70d8b56fd 100644 --- a/var/spack/repos/builtin/packages/libgd/package.py +++ b/var/spack/repos/builtin/packages/libgd/package.py @@ -56,7 +56,3 @@ class Libgd(AutotoolsPackage): depends_on('libpng') depends_on('libtiff') depends_on('fontconfig') - - def url_for_version(self, version): - url = "https://github.com/libgd/libgd/releases/download/gd-{0}/libgd-{0}.tar.gz" - return url.format(version) diff --git a/var/spack/repos/builtin/packages/libsodium/package.py b/var/spack/repos/builtin/packages/libsodium/package.py index a7e3ab10ae..6d21d65345 100644 --- a/var/spack/repos/builtin/packages/libsodium/package.py +++ b/var/spack/repos/builtin/packages/libsodium/package.py @@ -30,6 +30,7 @@ class Libsodium(AutotoolsPackage): decryption, signatures, password hashing and more.""" homepage = "https://download.libsodium.org/doc/" url = "https://download.libsodium.org/libsodium/releases/libsodium-1.0.11.tar.gz" + list_url = "https://download.libsodium.org/libsodium/releases/old" version('1.0.11', 'b58928d035064b2a46fb564937b83540') version('1.0.10', 'ea89dcbbda0b2b6ff6a1c476231870dd') diff --git a/var/spack/repos/builtin/packages/libxstream/package.py b/var/spack/repos/builtin/packages/libxstream/package.py index 3201b58620..0996e6b9e8 100644 --- a/var/spack/repos/builtin/packages/libxstream/package.py +++ b/var/spack/repos/builtin/packages/libxstream/package.py @@ -31,9 +31,9 @@ class Libxstream(Package): conditions.''' homepage = 'https://github.com/hfp/libxstream' - url = 'https://github.com/hfp/libxstream.git' + url = 'https://github.com/hfp/libxstream/archive/0.9.0.tar.gz' - version('0.9.0', git='https://github.com/hfp/libxstream.git') + version('0.9.0', 'fd74b7cf5f145ff4925d91be2809571c') def patch(self): kwargs = {'ignore_absent': False, 'backup': True, 'string': True} diff --git a/var/spack/repos/builtin/packages/meep/package.py b/var/spack/repos/builtin/packages/meep/package.py index 2c1018e711..00b9c4ea09 100644 --- a/var/spack/repos/builtin/packages/meep/package.py +++ b/var/spack/repos/builtin/packages/meep/package.py @@ -30,6 +30,8 @@ class Meep(Package): software package developed at MIT to model electromagnetic systems.""" homepage = "http://ab-initio.mit.edu/wiki/index.php/Meep" + url = "http://ab-initio.mit.edu/meep/meep-1.3.tar.gz" + list_url = "http://ab-initio.mit.edu/meep/old" version('1.3', '18a5b9e18008627a0411087e0bb60db5') version('1.2.1', '9be2e743c3a832ae922de9d955d016c5') diff --git a/var/spack/repos/builtin/packages/metis/package.py b/var/spack/repos/builtin/packages/metis/package.py index f15d544b7b..c927c22a1b 100644 --- a/var/spack/repos/builtin/packages/metis/package.py +++ b/var/spack/repos/builtin/packages/metis/package.py @@ -37,7 +37,8 @@ class Metis(Package): partitioning schemes.""" homepage = "http://glaros.dtc.umn.edu/gkhome/metis/metis/overview" - base_url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis" + url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz" + list_url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/OLD" version('5.1.0', '5465e67079419a69e0116de24fce58fe') version('5.0.2', 'acb521a4e8c2e6dd559a7f9abd0468c5') @@ -55,12 +56,11 @@ class Metis(Package): patch('install_gklib_defs_rename.patch', when='@5:') def url_for_version(self, version): - verdir = 'OLD/' if version < Version('4.0.3') else '' - return '%s/%smetis-%s.tar.gz' % (Metis.base_url, verdir, version) - - @when('@:4') - def patch(self): - pass + url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis" + if version < Version('4.0.3'): + url += "/OLD" + url += "/metis-{0}.tar.gz".format(version) + return url @when('@5:') def patch(self): @@ -84,7 +84,7 @@ class Metis(Package): filter_file('#define MAX_JBUFS 128', '#define MAX_JBUFS 24', join_path(source_path, 'GKlib', 'error.c')) - @when('@:4') + @when('@:4') # noqa: F811 def install(self, spec, prefix): # Process library spec and options if any('+{0}'.format(v) in spec for v in ['gdb', 'int64', 'real64']): @@ -175,7 +175,7 @@ class Metis(Package): Executable(test_bin('mesh2dual'))(test_graph('metis.mesh')) """ - @when('@5:') + @when('@5:') # noqa: F811 def install(self, spec, prefix): source_directory = self.stage.source_path build_directory = join_path(source_directory, 'build') @@ -187,7 +187,7 @@ class Metis(Package): if '+shared' in spec: options.append('-DSHARED:BOOL=ON') else: - # Remove all RPATH options + # Remove all RPATH options # (RPATHxxx options somehow trigger cmake to link dynamically) rpath_options = [] for o in options: diff --git a/var/spack/repos/builtin/packages/mfem/package.py b/var/spack/repos/builtin/packages/mfem/package.py index a25583e164..b3fe5197a0 100644 --- a/var/spack/repos/builtin/packages/mfem/package.py +++ b/var/spack/repos/builtin/packages/mfem/package.py @@ -31,15 +31,32 @@ class Mfem(Package): homepage = 'http://www.mfem.org' url = 'https://github.com/mfem/mfem' + # mfem is downloaded from a URL shortener at request of upstream + # author Tzanio Kolev <tzanio@llnl.gov>. See here: + # https://github.com/mfem/mfem/issues/53 + # + # The following procedure should be used to verify security when a + # new verison is added: + # + # 1. Verify that no checksums on old versions have changed. + # + # 2. Verify that the shortened URL for the new version is listed at: + # http://mfem.org/download/ + # + # 3. Use http://getlinkinfo.com or similar to verify that the + # underling download link for the latest version comes has the + # prefix: http://mfem.github.io/releases + # + # If this quick verification procedure fails, additional discussion + # will be required to verify the new version. + version('3.2', '2938c3deed4ec4f7fd5b5f5cfe656845282e86e2dcd477d292390058b7b94340', - url='http://goo.gl/Y9T75B', preferred=True, extension='.tar.gz') + url='http://goo.gl/Y9T75B', extension='.tar.gz') version('3.1', '841ea5cf58de6fae4de0f553b0e01ebaab9cd9c67fa821e8a715666ecf18fc57', url='http://goo.gl/xrScXn', extension='.tar.gz') -# version('3.1', git='https://github.com/mfem/mfem.git', -# commit='dbae60fe32e071989b52efaaf59d7d0eb2a3b574') variant('metis', default=False, description='Activate support for metis') variant('hypre', default=False, description='Activate support for hypre') diff --git a/var/spack/repos/builtin/packages/mitos/package.py b/var/spack/repos/builtin/packages/mitos/package.py index d577a1b285..4ccddb3592 100644 --- a/var/spack/repos/builtin/packages/mitos/package.py +++ b/var/spack/repos/builtin/packages/mitos/package.py @@ -30,13 +30,12 @@ class Mitos(Package): performance data to view with MemAxes""" homepage = "https://github.com/llnl/Mitos" - url = "https://github.com/llnl/Mitos" + url = "https://github.com/LLNL/Mitos/archive/v0.9.1.tar.gz" version('0.9.2', git='https://github.com/llnl/Mitos.git', commit='8cb143a2e8c00353ff531a781a9ca0992b0aaa3d') - - version('0.9.1', git='https://github.com/llnl/Mitos.git', tag='v0.9.1') + version('0.9.1', 'c6cb57f3cae54f5157affd97ef7ef79e') depends_on('dyninst@8.2.1:') depends_on('hwloc') diff --git a/var/spack/repos/builtin/packages/moab/package.py b/var/spack/repos/builtin/packages/moab/package.py index b783d7b81b..14925cfd3e 100644 --- a/var/spack/repos/builtin/packages/moab/package.py +++ b/var/spack/repos/builtin/packages/moab/package.py @@ -35,7 +35,7 @@ class Moab(Package): mesh in chunks rather than through individual entities, while also versatile enough to support individual entity access.""" homepage = "https://bitbucket.org/fathomteam/moab" - url = "http://ftp.mcs.anl.gov/pub/fathom/moab-4.6.3.tar.gz" + url = "http://ftp.mcs.anl.gov/pub/fathom/moab-4.9.1.tar.gz" version('4.9.1', '19cc2189fa266181ad9109b18d0b2ab8') version('4.9.0', '40695d0a159040683cfa05586ad4a7c2') diff --git a/var/spack/repos/builtin/packages/mxml/package.py b/var/spack/repos/builtin/packages/mxml/package.py index cd53c67dff..435fd748b3 100644 --- a/var/spack/repos/builtin/packages/mxml/package.py +++ b/var/spack/repos/builtin/packages/mxml/package.py @@ -41,9 +41,6 @@ class Mxml(AutotoolsPackage): version('2.6', '68977789ae64985dddbd1a1a1652642e') version('2.5', 'f706377fba630b39fa02fd63642b17e5') - def url_for_version(self, version): - return "https://github.com/michaelrsweet/mxml/releases/download/release-{0}/mxml-{0}.tar.gz".format(version) - # module swap PrgEnv-intel PrgEnv-$COMP # (Can use whatever compiler you want to use) # Case statement to change CC and CXX flags diff --git a/var/spack/repos/builtin/packages/nettle/package.py b/var/spack/repos/builtin/packages/nettle/package.py index 2b6693a18c..e9df8489c9 100644 --- a/var/spack/repos/builtin/packages/nettle/package.py +++ b/var/spack/repos/builtin/packages/nettle/package.py @@ -30,7 +30,7 @@ class Nettle(AutotoolsPackage): that is designed to fit easily in many contexts.""" homepage = "https://www.lysator.liu.se/~nisse/nettle/" - url = "http://ftp.gnu.org/gnu/nettle/nettle-2.7.1.tar.gz" + url = "http://ftp.gnu.org/gnu/nettle/nettle-3.2.tar.gz" version('3.2', 'afb15b4764ebf1b4e6d06c62bd4d29e4') version('2.7.1', '003d5147911317931dd453520eb234a5') diff --git a/var/spack/repos/builtin/packages/nextflow/package.py b/var/spack/repos/builtin/packages/nextflow/package.py index 563ecd9b40..05f21f70b7 100644 --- a/var/spack/repos/builtin/packages/nextflow/package.py +++ b/var/spack/repos/builtin/packages/nextflow/package.py @@ -29,6 +29,7 @@ class Nextflow(Package): """Data-driven computational pipelines""" homepage = "http://www.nextflow.io" + url = "https://github.com/nextflow-io/nextflow/releases/download/v0.24.1/nextflow" version('0.24.1', '80ec8c4fe8e766e0bdd1371a50410d1d', expand=False) @@ -39,10 +40,6 @@ class Nextflow(Package): depends_on('jdk') - def url_for_version(self, version): - base_url = 'https://github.com/nextflow-io/nextflow/releases/download/v{0}/nextflow' - return base_url.format(version) - def install(self, spec, prefix): mkdirp(prefix.bin) install("nextflow", join_path(prefix.bin, "nextflow")) diff --git a/var/spack/repos/builtin/packages/oce/package.py b/var/spack/repos/builtin/packages/oce/package.py index c3488c137a..950621da40 100644 --- a/var/spack/repos/builtin/packages/oce/package.py +++ b/var/spack/repos/builtin/packages/oce/package.py @@ -32,6 +32,7 @@ class Oce(Package): Open CASCADE library. """ homepage = "https://github.com/tpaviot/oce" + url = "https://github.com/tpaviot/oce/archive/OCE-0.18.tar.gz" version('0.18', '226e45e77c16a4a6e127c71fefcd171410703960ae75c7ecc7eb68895446a993') version('0.17.2', 'bf2226be4cd192606af677cf178088e5') @@ -46,10 +47,6 @@ class Oce(Package): depends_on('cmake@2.8:', type='build') depends_on('tbb', when='+tbb') - def url_for_version(self, version): - return 'https://github.com/tpaviot/oce/archive/OCE-%s.tar.gz' % ( - version.dotted) - # There is a bug in OCE which appears with Clang (version?) or GCC 6.0 # and has to do with compiler optimization, see # https://github.com/tpaviot/oce/issues/576 diff --git a/var/spack/repos/builtin/packages/octopus/package.py b/var/spack/repos/builtin/packages/octopus/package.py index 88350f50bc..8999b081e3 100644 --- a/var/spack/repos/builtin/packages/octopus/package.py +++ b/var/spack/repos/builtin/packages/octopus/package.py @@ -30,17 +30,11 @@ class Octopus(Package): theory code.""" homepage = "http://www.tddft.org/programs/octopus/" - base_url = "http://www.tddft.org/programs/octopus/down.php?file=" + url = "http://www.tddft.org/programs/octopus/down.php?file=6.0/octopus-6.0.tar.gz" version('6.0', '5d1168c2a8d7fd9cb9492eaebaa7182e') version('5.0.1', '2b6392ab67b843f9d4ca7413fc07e822') - # Sample url is: - # "http://www.tddft.org/programs/octopus/down.php?file=5.0.1/octopus-5.0.1.tar.gz" - def url_for_version(self, version): - return '{0}/{1}/octopus-{1}.tar.gz'.format(Octopus.base_url, - version.dotted) - variant('scalapack', default=False, description='Compile with Scalapack') variant('metis', default=True, diff --git a/var/spack/repos/builtin/packages/openjpeg/package.py b/var/spack/repos/builtin/packages/openjpeg/package.py index 9790c52e7d..b22de4452a 100644 --- a/var/spack/repos/builtin/packages/openjpeg/package.py +++ b/var/spack/repos/builtin/packages/openjpeg/package.py @@ -43,7 +43,3 @@ class Openjpeg(CMakePackage): version('2.0', 'cdf266530fee8af87454f15feb619609') version('1.5.2', '545f98923430369a6b046ef3632ef95c') version('1.5.1', 'd774e4b5a0db5f0f171c4fc0aabfa14e') - - def url_for_version(self, version): - fmt = 'https://github.com/uclouvain/openjpeg/archive/version.{0}.tar.gz' - return fmt.format(version.dotted) diff --git a/var/spack/repos/builtin/packages/panda/package.py b/var/spack/repos/builtin/packages/panda/package.py index e30c2c869d..fb14bd5643 100644 --- a/var/spack/repos/builtin/packages/panda/package.py +++ b/var/spack/repos/builtin/packages/panda/package.py @@ -29,9 +29,9 @@ from spack import * class Panda(Package): """PANDA: Parallel AdjaceNcy Decomposition Algorithm""" homepage = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/index.html" - url = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/downloads/current_panda.tar" + url = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/downloads/panda-2016-03-07.tar" - version('current', 'b06dc312ee56e13eefea9c915b70fcef') + version('2016-03-07', 'b06dc312ee56e13eefea9c915b70fcef') # Note: Panda can also be built without MPI support diff --git a/var/spack/repos/builtin/packages/parmetis/package.py b/var/spack/repos/builtin/packages/parmetis/package.py index 0e6cd5390a..b07c796dd7 100644 --- a/var/spack/repos/builtin/packages/parmetis/package.py +++ b/var/spack/repos/builtin/packages/parmetis/package.py @@ -33,7 +33,8 @@ class Parmetis(Package): computing fill-reducing orderings of sparse matrices.""" homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview' - base_url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis' + url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz' + list_url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/OLD' version('4.0.3', 'f69c479586bf6bb7aff6a9bc0c739628') version('4.0.2', '0912a953da5bb9b5e5e10542298ffdce') @@ -54,8 +55,11 @@ class Parmetis(Package): patch('pkg-parmetis-82409d68aa1d6cbc70740d0f35024aae17f7d5cb.patch') def url_for_version(self, version): - verdir = 'OLD/' if version < Version('3.2.0') else '' - return '%s/%sparmetis-%s.tar.gz' % (Parmetis.base_url, verdir, version) + url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis' + if version < Version('3.2.0'): + url += '/OLD' + url += '/parmetis-{0}.tar.gz'.format(version) + return url def install(self, spec, prefix): source_directory = self.stage.source_path @@ -72,7 +76,7 @@ class Parmetis(Package): if '+shared' in spec: options.append('-DSHARED:BOOL=ON') else: - # Remove all RPATH options + # Remove all RPATH options # (RPATHxxx options somehow trigger cmake to link dynamically) rpath_options = [] for o in options: diff --git a/var/spack/repos/builtin/packages/prank/package.py b/var/spack/repos/builtin/packages/prank/package.py index d627e8a0b6..09b73e795f 100644 --- a/var/spack/repos/builtin/packages/prank/package.py +++ b/var/spack/repos/builtin/packages/prank/package.py @@ -29,7 +29,7 @@ class Prank(Package): """A powerful multiple sequence alignment browser.""" homepage = "http://wasabiapp.org/software/prank/" - url = "http://wasabiapp.org/download/prank/prank.source.140603.tgz" + url = "http://wasabiapp.org/download/prank/prank.source.150803.tgz" version('150803', '71ac2659e91c385c96473712c0a23e8a') diff --git a/var/spack/repos/builtin/packages/py-autopep8/package.py b/var/spack/repos/builtin/packages/py-autopep8/package.py index c892e2979c..6c92def415 100644 --- a/var/spack/repos/builtin/packages/py-autopep8/package.py +++ b/var/spack/repos/builtin/packages/py-autopep8/package.py @@ -30,10 +30,10 @@ class PyAutopep8(PythonPackage): PEP 8 style guide.""" homepage = "https://github.com/hhatto/autopep8" - url = "https://github.com/hhatto/autopep8/archive/v1.2.4.tar.gz" + url = "https://pypi.io/packages/source/a/autopep8/autopep8-1.2.4.tar.gz" - version('1.2.4', '0458db85159a9e1b45f3e71ce6c158da') - version('1.2.2', 'def3d023fc9dfd1b7113602e965ad8e1') + version('1.2.4', 'fcea19c0c5e505b425e2a78afb771f5c') + version('1.2.2', '3d97f9c89d14a0975bffd32a2c61c36c') extends('python', ignore='bin/pep8') depends_on('python@2.6:2.7,3.2:') @@ -41,10 +41,3 @@ class PyAutopep8(PythonPackage): depends_on('py-pycodestyle@1.5.7:1.7.0', type=('build', 'run')) depends_on('py-setuptools', type='build') - - def url_for_version(self, version): - url = "https://github.com/hhatto/autopep8/archive/{0}{1}.tar.gz" - if version >= Version('1.2.3'): - return url.format('v', version) - else: - return url.format('ver', version) diff --git a/var/spack/repos/builtin/packages/py-cdo/package.py b/var/spack/repos/builtin/packages/py-cdo/package.py index 3f1306a183..2bf4a2623c 100644 --- a/var/spack/repos/builtin/packages/py-cdo/package.py +++ b/var/spack/repos/builtin/packages/py-cdo/package.py @@ -30,10 +30,9 @@ class PyCdo(PythonPackage): Operators from Python.""" homepage = "https://pypi.python.org/pypi/cdo" - url = "https://pypi.python.org/packages/sources/c/cdo/cdo-1.3.2.tar.gz" + url = "https://pypi.io/packages/source/c/cdo/cdo-1.3.2.tar.gz" - version('1.3.2', '4b3686ec1b9b891f166c1c466c6db745', - url="https://pypi.python.org/packages/d6/13/908e7c1451e1f5fb68405f341cdcb3196a16952ebfe1f172cb788f864aa9/cdo-1.3.2.tar.gz") + version('1.3.2', '4b3686ec1b9b891f166c1c466c6db745') depends_on('cdo') diff --git a/var/spack/repos/builtin/packages/py-markdown/package.py b/var/spack/repos/builtin/packages/py-markdown/package.py index 23c8167021..af10f1c5d3 100644 --- a/var/spack/repos/builtin/packages/py-markdown/package.py +++ b/var/spack/repos/builtin/packages/py-markdown/package.py @@ -50,7 +50,3 @@ class PyMarkdown(PythonPackage): depends_on('py-setuptools', type='build') depends_on('python@2.7:2.8,3.2:3.4') - - def url_for_version(self, version): - base_url = "https://github.com/waylan/Python-Markdown/archive" - return "{0}/{1}-final.tar.gz".format(base_url, version) diff --git a/var/spack/repos/builtin/packages/py-proj/package.py b/var/spack/repos/builtin/packages/py-proj/package.py index 949aab88c3..cf230eb49f 100644 --- a/var/spack/repos/builtin/packages/py-proj/package.py +++ b/var/spack/repos/builtin/packages/py-proj/package.py @@ -32,9 +32,8 @@ class PyProj(PythonPackage): # This is not a tagged release of pyproj. # The changes in this "version" fix some bugs, especially with Python3 use. - version('1.9.5.1.1', 'd035e4bc704d136db79b43ab371b27d2', - url='https://www.github.com/jswhit/pyproj/tarball/0be612cc9f972e38b50a90c946a9b353e2ab140f') - + version('1.9.5.1.1', git='https://www.github.com/jswhit/pyproj.git', + commit='0be612cc9f972e38b50a90c946a9b353e2ab140f') version('1.9.5.1', 'a4b80d7170fc82aee363d7f980279835') depends_on('py-cython', type='build') diff --git a/var/spack/repos/builtin/packages/py-pypar/package.py b/var/spack/repos/builtin/packages/py-pypar/package.py index 6ba999c063..c95698d83d 100644 --- a/var/spack/repos/builtin/packages/py-pypar/package.py +++ b/var/spack/repos/builtin/packages/py-pypar/package.py @@ -38,6 +38,3 @@ class PyPypar(PythonPackage): depends_on('py-numpy', type=('build', 'run')) build_directory = 'source' - - def url_for_version(self, version): - return "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/pypar/pypar-%s.tgz" % version diff --git a/var/spack/repos/builtin/packages/py-rtree/package.py b/var/spack/repos/builtin/packages/py-rtree/package.py index 55f98ad19e..a3604b467d 100644 --- a/var/spack/repos/builtin/packages/py-rtree/package.py +++ b/var/spack/repos/builtin/packages/py-rtree/package.py @@ -28,22 +28,9 @@ from spack import * class PyRtree(PythonPackage): """Python interface to the RTREE.4 Library.""" homepage = "http://toblerity.org/rtree/" - url = "https://github.com/Toblerity/rtree/tarball/0.8.2" + url = "https://pypi.io/packages/source/R/Rtree/Rtree-0.8.3.tar.gz" - # Not an official release yet. But changes in here are required - # to work with Spack. As it does with all packages, Spack - # installs libspatialindex in a non-system location. Without the - # changes in this fork, py-rtree requires an environment variables - # to be set *at runtime*, in order to find libspatialindex. That - # is not feasible within the Spack worldview. - version('0.8.2.2', 'b1fe96a73153db49ea6ce45a063d82cb', - url='https://github.com/citibeth/rtree/tarball/95a678cc7350857a1bb631bc41254efcd1fc0a0d') - - version('0.8.2.1', '394696ca849dd9f3a5ef24fb02a41ef4', - url='https://github.com/citibeth/rtree/tarball/3a87d86f66a3955676b2507d3bf424ade938a22b') - - # Does not work with Spack - # version('0.8.2', '593c7ac6babc397b8ba58f1636c1e0a0') + version('0.8.3', 'a27cb05a85eed0a3605c45ebccc432f8') depends_on('py-setuptools', type='build') depends_on('libspatialindex') diff --git a/var/spack/repos/builtin/packages/r-lava/package.py b/var/spack/repos/builtin/packages/r-lava/package.py index c38f9003ea..263e859c48 100644 --- a/var/spack/repos/builtin/packages/r-lava/package.py +++ b/var/spack/repos/builtin/packages/r-lava/package.py @@ -29,7 +29,7 @@ class RLava(RPackage): """Estimation and simulation of latent variable models.""" homepage = "https://cran.r-project.org/package=lava" - url = "https://cran.r-project.org/src/contrib/lava_1.4.6.tar.gz" + url = "https://cran.r-project.org/src/contrib/lava_1.4.7.tar.gz" list_url = "https://cran.r-project.org/src/contrib/Archive/lava" version('1.4.7', '28039248a7039ba9281d172e4dbf9543') diff --git a/var/spack/repos/builtin/packages/root/package.py b/var/spack/repos/builtin/packages/root/package.py index a96d7f6bbc..a5939ace8f 100644 --- a/var/spack/repos/builtin/packages/root/package.py +++ b/var/spack/repos/builtin/packages/root/package.py @@ -30,7 +30,7 @@ import sys class Root(Package): """ROOT is a data analysis framework.""" homepage = "https://root.cern.ch" - url = "https://root.cern.ch/download/root_v6.07.02.source.tar.gz" + url = "https://root.cern.ch/download/root_v6.06.06.source.tar.gz" version('6.06.06', '4308449892210c8d36e36924261fea26') version('6.06.04', '55a2f98dd4cea79c9c4e32407c2d6d17') @@ -83,7 +83,3 @@ class Root(Package): spack_env.set('ROOTSYS', self.prefix) spack_env.set('ROOT_VERSION', 'v6') spack_env.prepend_path('PYTHONPATH', self.prefix.lib) - - def url_for_version(self, version): - """Handle ROOT's unusual version string.""" - return "https://root.cern.ch/download/root_v%s.source.tar.gz" % version diff --git a/var/spack/repos/builtin/packages/rose/package.py b/var/spack/repos/builtin/packages/rose/package.py index 02b09f0126..5f0d12427c 100644 --- a/var/spack/repos/builtin/packages/rose/package.py +++ b/var/spack/repos/builtin/packages/rose/package.py @@ -35,10 +35,11 @@ class Rose(Package): (Developed at Lawrence Livermore National Lab)""" homepage = "http://rosecompiler.org/" - url = "https://github.com/rose-compiler/edg4x-rose" + url = "https://github.com/rose-compiler/rose/archive/v0.9.7.tar.gz" + version('0.9.7', 'e14ce5250078df4b09f4f40559d46c75') version('master', branch='master', - git='https://github.com/rose-compiler/edg4x-rose.git') + git='https://github.com/rose-compiler/rose.git') patch('add_spack_compiler_recognition.patch') @@ -46,7 +47,7 @@ class Rose(Package): depends_on("automake@1.14", type='build') depends_on("libtool@2.4", type='build') depends_on("boost@1.54.0") - depends_on("jdk@8u25-linux-x64") + depends_on("jdk@8u25") def install(self, spec, prefix): # Bootstrap with autotools diff --git a/var/spack/repos/builtin/packages/rust-bindgen/package.py b/var/spack/repos/builtin/packages/rust-bindgen/package.py index c411bc15d1..00ccbb71cf 100644 --- a/var/spack/repos/builtin/packages/rust-bindgen/package.py +++ b/var/spack/repos/builtin/packages/rust-bindgen/package.py @@ -29,9 +29,9 @@ import os class RustBindgen(Package): """The rust programming language toolchain""" homepage = "http://www.rust-lang.org" - url = "https://github.com/crabtw/rust-bindgen" + url = "https://github.com/servo/rust-bindgen/archive/v0.20.5.tar.gz" - version('0.16', tag='0.16', git='https://github.com/crabtw/rust-bindgen') + version('0.20.5', '3e4d70a5bec540324fdd95bc9e82bebc') extends("rust") depends_on("llvm") diff --git a/var/spack/repos/builtin/packages/scorep/package.py b/var/spack/repos/builtin/packages/scorep/package.py index 6b3345d83b..1a5a591c3f 100644 --- a/var/spack/repos/builtin/packages/scorep/package.py +++ b/var/spack/repos/builtin/packages/scorep/package.py @@ -32,14 +32,11 @@ class Scorep(Package): """ homepage = "http://www.vi-hps.org/projects/score-p" - url = "http://www.vi-hps.org/upload/packages/scorep/scorep-1.2.3.tar.gz" + url = "http://www.vi-hps.org/upload/packages/scorep/scorep-2.0.2.tar.gz" - version('2.0.2', '8f00e79e1b5b96e511c5ebecd10b2888', - url='http://www.vi-hps.org/upload/packages/scorep/scorep-2.0.2.tar.gz') - version('1.4.2', '3b9a042b13bdd5836452354e6567f71e', - url='http://www.vi-hps.org/upload/packages/scorep/scorep-1.4.2.tar.gz') - version('1.3', '9db6f957b7f51fa01377a9537867a55c', - url='http://www.vi-hps.org/upload/packages/scorep/scorep-1.3.tar.gz') + version('2.0.2', '8f00e79e1b5b96e511c5ebecd10b2888') + version('1.4.2', '3b9a042b13bdd5836452354e6567f71e') + version('1.3', '9db6f957b7f51fa01377a9537867a55c') ########## # Dependencies for SCORE-P are quite tight. See the homepage for more diff --git a/var/spack/repos/builtin/packages/scotch/package.py b/var/spack/repos/builtin/packages/scotch/package.py index b878349485..8efb629487 100644 --- a/var/spack/repos/builtin/packages/scotch/package.py +++ b/var/spack/repos/builtin/packages/scotch/package.py @@ -31,8 +31,7 @@ class Scotch(Package): partitioning, graph clustering, and sparse matrix ordering.""" homepage = "http://www.labri.fr/perso/pelegrin/scotch/" - url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_6.0.3.tar.gz" # noqa: E501 - base_url = "http://gforge.inria.fr/frs/download.php/latestfile/298" + url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_6.0.4.tar.gz" list_url = "http://gforge.inria.fr/frs/?group_id=248" version('6.0.4', 'd58b825eb95e1db77efe8c6ff42d329f') @@ -71,12 +70,10 @@ class Scotch(Package): # from the Scotch hosting site. These alternative archives include a # superset of the behavior in their default counterparts, so we choose to # always grab these versions for older Scotch versions for simplicity. - def url_for_version(self, version): - return super(Scotch, self).url_for_version(version) - @when('@:6.0.0') def url_for_version(self, version): - return '%s/scotch_%s_esmumps.tar.gz' % (Scotch.base_url, version) + url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_{0}_esmumps.tar.gz" + return url.format(version) def patch(self): self.configure() diff --git a/var/spack/repos/builtin/packages/silo/package.py b/var/spack/repos/builtin/packages/silo/package.py index 6a9326517b..eca5d1a605 100644 --- a/var/spack/repos/builtin/packages/silo/package.py +++ b/var/spack/repos/builtin/packages/silo/package.py @@ -30,7 +30,7 @@ class Silo(Package): data to binary, disk files.""" homepage = "http://wci.llnl.gov/simulation/computer-codes/silo" - base_url = "https://wci.llnl.gov/content/assets/docs/simulation/computer-codes/silo" + url = "https://wci.llnl.gov/content/assets/docs/simulation/computer-codes/silo/silo-4.10.2/silo-4.10.2.tar.gz" version('4.10.2', '9ceac777a2f2469ac8cef40f4fab49c8') version('4.9', 'a83eda4f06761a86726e918fc55e782a') @@ -67,6 +67,3 @@ class Silo(Package): make() make('install') - - def url_for_version(self, version): - return '%s/silo-%s/silo-%s.tar.gz' % (Silo.base_url, version, version) diff --git a/var/spack/repos/builtin/packages/star-ccm-plus/package.py b/var/spack/repos/builtin/packages/star-ccm-plus/package.py index ba1516b62a..4197aec339 100644 --- a/var/spack/repos/builtin/packages/star-ccm-plus/package.py +++ b/var/spack/repos/builtin/packages/star-ccm-plus/package.py @@ -31,6 +31,7 @@ class StarCcmPlus(Package): """STAR-CCM+ (Computational Continuum Mechanics) CFD solver.""" homepage = "http://mdx.plm.automation.siemens.com/star-ccm-plus" + url = "file://{0}/STAR-CCM+11.06.010_02_linux-x86_64.tar.gz".format(os.getcwd()) version('11.06.010_02', 'd349c6ac8293d8e6e7a53533d695588f') @@ -40,10 +41,6 @@ class StarCcmPlus(Package): license_required = True license_vars = ['CDLMD_LICENSE_FILE', 'LM_LICENSE_FILE'] - def url_for_version(self, version): - return "file://{0}/STAR-CCM+{1}_linux-x86_64.tar.gz".format( - os.getcwd(), version) - def install(self, spec, prefix): # There is a known issue with the LaunchAnywhere application. # Specifically, it cannot handle long prompts or prompts diff --git a/var/spack/repos/builtin/packages/sublime-text/package.py b/var/spack/repos/builtin/packages/sublime-text/package.py index 81d8690db8..1cfb117a05 100644 --- a/var/spack/repos/builtin/packages/sublime-text/package.py +++ b/var/spack/repos/builtin/packages/sublime-text/package.py @@ -33,8 +33,8 @@ class SublimeText(Package): homepage = "http://www.sublimetext.com/" url = "https://download.sublimetext.com/sublime_text_3_build_3126_x64.tar.bz2" - version('3126', 'acc34252b0ea7dff1f581c5db1564dcb') - version('2.0.2', '699cd26d7fe0bada29eb1b2cd7b50e4b') + version('3_build_3126', 'acc34252b0ea7dff1f581c5db1564dcb') + version('2.0.2', '699cd26d7fe0bada29eb1b2cd7b50e4b') # Sublime text comes as a pre-compiled binary. # Since we can't link to Spack packages, we'll just have to diff --git a/var/spack/repos/builtin/packages/tcl/package.py b/var/spack/repos/builtin/packages/tcl/package.py index 79d4bc7544..8ddfc903b3 100644 --- a/var/spack/repos/builtin/packages/tcl/package.py +++ b/var/spack/repos/builtin/packages/tcl/package.py @@ -34,6 +34,7 @@ class Tcl(AutotoolsPackage): that is truly cross platform, easily deployed and highly extensible.""" homepage = "http://www.tcl.tk" + url = "http://prdownloads.sourceforge.net/tcl/tcl8.6.5-src.tar.gz" version('8.6.6', '5193aea8107839a79df8ac709552ecb7') version('8.6.5', '0e6426a4ca9401825fbc6ecf3d89a326') @@ -45,10 +46,6 @@ class Tcl(AutotoolsPackage): configure_directory = 'unix' - def url_for_version(self, version): - base_url = 'http://prdownloads.sourceforge.net/tcl' - return '{0}/tcl{1}-src.tar.gz'.format(base_url, version) - def setup_environment(self, spack_env, run_env): # When using Tkinter from within spack provided python+tk, python # will not be able to find Tcl/Tk unless TCL_LIBRARY is set. diff --git a/var/spack/repos/builtin/packages/tetgen/package.py b/var/spack/repos/builtin/packages/tetgen/package.py index 6e5ed79c36..2ccc9504e2 100644 --- a/var/spack/repos/builtin/packages/tetgen/package.py +++ b/var/spack/repos/builtin/packages/tetgen/package.py @@ -34,7 +34,7 @@ class Tetgen(Package): boundary conforming Delaunay meshes, and Voronoi paritions. """ - homepage = "http://www.tetgen.org" + homepage = "http://wias-berlin.de/software/tetgen/" version('1.5.0', '3b9fd9cdec121e52527b0308f7aad5c1', url='http://www.tetgen.org/1.5/src/tetgen1.5.0.tar.gz') version('1.4.3', 'd6a4bcdde2ac804f7ec66c29dcb63c18', url='http://www.tetgen.org/files/tetgen1.4.3.tar.gz') diff --git a/var/spack/repos/builtin/packages/tinyxml/package.py b/var/spack/repos/builtin/packages/tinyxml/package.py index 1789d9022e..9cb4b715df 100644 --- a/var/spack/repos/builtin/packages/tinyxml/package.py +++ b/var/spack/repos/builtin/packages/tinyxml/package.py @@ -34,6 +34,10 @@ class Tinyxml(CMakePackage): version('2.6.2', 'cba3f50dd657cb1434674a03b21394df9913d764') + def url_for_version(self, version): + url = "https://sourceforge.net/projects/tinyxml/files/tinyxml/{0}/tinyxml_{1}.tar.gz" + return url.format(version.dotted, version.underscored) + def patch(self): copyfile(join_path(os.path.dirname(__file__), "CMakeLists.txt"), "CMakeLists.txt") diff --git a/var/spack/repos/builtin/packages/tk/package.py b/var/spack/repos/builtin/packages/tk/package.py index 4d9651315a..fdcb29a785 100644 --- a/var/spack/repos/builtin/packages/tk/package.py +++ b/var/spack/repos/builtin/packages/tk/package.py @@ -33,6 +33,7 @@ class Tk(AutotoolsPackage): applications that run unchanged across Windows, Mac OS X, Linux and more.""" homepage = "http://www.tcl.tk" + url = "http://prdownloads.sourceforge.net/tcl/tk8.6.5-src.tar.gz" version('8.6.6', 'dd7dbb3a6523c42d05f6ab6e86096e99') version('8.6.5', '11dbbd425c3e0201f20d6a51482ce6c4') @@ -43,10 +44,6 @@ class Tk(AutotoolsPackage): configure_directory = 'unix' - def url_for_version(self, version): - base_url = "http://prdownloads.sourceforge.net/tcl" - return "{0}/tk{1}-src.tar.gz".format(base_url, version) - def setup_environment(self, spack_env, run_env): # When using Tkinter from within spack provided python+tk, python # will not be able to find Tcl/Tk unless TK_LIBRARY is set. diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py index 3de72ea6c8..0e0d86fa3c 100644 --- a/var/spack/repos/builtin/packages/trilinos/package.py +++ b/var/spack/repos/builtin/packages/trilinos/package.py @@ -44,7 +44,7 @@ class Trilinos(CMakePackage): A unique design feature of Trilinos is its focus on packages. """ homepage = "https://trilinos.org/" - base_url = "https://github.com/trilinos/Trilinos/archive" + url = "https://github.com/trilinos/Trilinos/archive/trilinos-release-12-10-1.tar.gz" version('develop', git='https://github.com/trilinos/Trilinos.git', tag='develop') @@ -63,10 +63,6 @@ class Trilinos(CMakePackage): version('11.14.2', 'e7c3cdbbfe3279a8a68838b873ad6d51') version('11.14.1', 'b7760b142eef66c79ed13de7c9560f81') - def url_for_version(self, version): - return '%s/trilinos-release-%s.tar.gz' % \ - (Trilinos.base_url, version.dashed) - variant('xsdkflags', default=False, description='Compile using the default xSDK configuration') variant('metis', default=True, @@ -125,6 +121,10 @@ class Trilinos(CMakePackage): patch('umfpack_from_suitesparse.patch', when='@:12.8.1') + def url_for_version(self, version): + url = "https://github.com/trilinos/Trilinos/archive/trilinos-release-{0}.tar.gz" + return url.format(version.dashed) + # check that the combination of variants makes sense def variants_check(self): if '+superlu-dist' in self.spec and self.spec.satisfies('@:11.4.3'): diff --git a/var/spack/repos/builtin/packages/unison/package.py b/var/spack/repos/builtin/packages/unison/package.py index 181e1e6410..aa890ea869 100644 --- a/var/spack/repos/builtin/packages/unison/package.py +++ b/var/spack/repos/builtin/packages/unison/package.py @@ -34,7 +34,7 @@ class Unison(Package): other.""" homepage = "https://www.cis.upenn.edu/~bcpierce/unison/" - url = "https://www.seas.upenn.edu/~bcpierce/unison//download/releases/stable/unison-2.48.3.tar.gz" + url = "https://www.seas.upenn.edu/~bcpierce/unison//download/releases/stable/unison-2.48.4.tar.gz" version('2.48.4', '5334b78c7e68169df7de95f4c6c4b60f') diff --git a/var/spack/repos/builtin/packages/voropp/package.py b/var/spack/repos/builtin/packages/voropp/package.py index 0e39769927..0fc84ef252 100644 --- a/var/spack/repos/builtin/packages/voropp/package.py +++ b/var/spack/repos/builtin/packages/voropp/package.py @@ -31,19 +31,10 @@ class Voropp(MakefilePackage): scientific fields.""" homepage = "http://math.lbl.gov/voro++/about.html" - - # This url is wrong but it passes the test the ++ make the url parser fail, - # the correct url is constructed by url_for_version that has to be used in - # any case due to the difference between the package name and the url - url = "http://math.lbl.gov/voropp/download/dir/voropp-0.4.6.tar.gz" + url = "http://math.lbl.gov/voro++/download/dir/voro++-0.4.6.tar.gz" version('0.4.6', '2338b824c3b7b25590e18e8df5d68af9') - def url_for_version(self, version): - url = "http://math.lbl.gov/voro++/download/dir/voro++-{0}.tar.gz".format( # noqa: E501 - str(version)) - return url - def edit(self, spec, prefix): filter_file(r'CC=g\+\+', 'CC={0}'.format(self.compiler.cxx), diff --git a/var/spack/repos/builtin/packages/vtk/package.py b/var/spack/repos/builtin/packages/vtk/package.py index c577949c3a..dafeae6dbb 100644 --- a/var/spack/repos/builtin/packages/vtk/package.py +++ b/var/spack/repos/builtin/packages/vtk/package.py @@ -33,6 +33,7 @@ class Vtk(CMakePackage): homepage = "http://www.vtk.org" url = "http://www.vtk.org/files/release/7.1/VTK-7.1.0.tar.gz" + list_url = "http://www.vtk.org/download/" version('7.1.0', 'a7e814c1db503d896af72458c2d0228f') version('7.0.0', '5fe35312db5fb2341139b8e4955c367d') diff --git a/var/spack/repos/builtin/packages/xsdktrilinos/package.py b/var/spack/repos/builtin/packages/xsdktrilinos/package.py index ea49054435..7e88b2f9eb 100644 --- a/var/spack/repos/builtin/packages/xsdktrilinos/package.py +++ b/var/spack/repos/builtin/packages/xsdktrilinos/package.py @@ -32,16 +32,12 @@ class Xsdktrilinos(CMakePackage): Trilinos. """ homepage = "https://trilinos.org/" - base_url = "https://github.com/trilinos/xSDKTrilinos/archive" + url = "https://github.com/trilinos/xSDKTrilinos/archive/trilinos-release-12-8-1.tar.gz" version('develop', git='https://github.com/trilinos/xSDKTrilinos.git', tag='master') version('12.8.1', '9cc338ded17d1e10ea6c0dc18b22dcd4') version('12.6.4', '44c4c54ccbac73bb8939f68797b9454a') - def url_for_version(self, version): - return '%s/trilinos-release-%s.tar.gz' % \ - (Xsdktrilinos.base_url, version.dashed) - variant('hypre', default=True, description='Compile with Hypre preconditioner') variant('petsc', default=True, @@ -59,6 +55,10 @@ class Xsdktrilinos(CMakePackage): depends_on('trilinos@12.8.1', when='@12.8.1') depends_on('trilinos@develop', when='@develop') + def url_for_version(self, version): + url = "https://github.com/trilinos/xSDKTrilinos/archive/trilinos-release-{0}.tar.gz" + return url.format(version.dashed) + def cmake_args(self): spec = self.spec diff --git a/var/spack/repos/builtin/packages/yorick/package.py b/var/spack/repos/builtin/packages/yorick/package.py index 52a4d8787d..9cbd417e4e 100644 --- a/var/spack/repos/builtin/packages/yorick/package.py +++ b/var/spack/repos/builtin/packages/yorick/package.py @@ -31,7 +31,7 @@ import glob class Yorick(Package): """Yorick is an interpreted programming language for scientific simulations or calculations, postprocessing or steering large simulation codes, - interactive scientific graphics, and reading, writing, or translating + interactive scientific graphics, and reading, writing, or translating files of numbers. Yorick includes an interactive graphics package, and a binary file package capable of translating to and from the raw numeric formats of all modern computers. Yorick is written in ANSI C and runs on @@ -39,9 +39,9 @@ class Yorick(Package): """ homepage = "http://dhmunro.github.io/yorick-doc/" - url = "https://github.com/dhmunro/yorick/archive/y_2_2_04.tar.gz" + url = "https://github.com/dhmunro/yorick/archive/y_2_2_04.tar.gz" - version('2.2.04', md5='1b5b0da6ad81b2d9dba64d991ec17939') + version('2.2.04', '1b5b0da6ad81b2d9dba64d991ec17939') version('master', branch='master', git='https://github.com/dhmunro/yorick.git') version('f90-plugin', branch='f90-plugin', @@ -51,6 +51,10 @@ class Yorick(Package): depends_on('libx11', when='+X') + def url_for_version(self, version): + url = "https://github.com/dhmunro/yorick/archive/y_{0}.tar.gz" + return url.format(version.underscored) + def install(self, spec, prefix): os.environ['FORTRAN_LINKAGE'] = '-Df_linkage' diff --git a/var/spack/repos/builtin/packages/zoltan/package.py b/var/spack/repos/builtin/packages/zoltan/package.py index 21c90a05e4..b6720b7b1e 100644 --- a/var/spack/repos/builtin/packages/zoltan/package.py +++ b/var/spack/repos/builtin/packages/zoltan/package.py @@ -41,7 +41,7 @@ class Zoltan(Package): """ homepage = "http://www.cs.sandia.gov/zoltan" - base_url = "http://www.cs.sandia.gov/~kddevin/Zoltan_Distributions" + url = "http://www.cs.sandia.gov/~kddevin/Zoltan_Distributions/zoltan_distrib_v3.83.tar.gz" version('3.83', '1ff1bc93f91e12f2c533ddb01f2c095f') version('3.8', '9d8fba8a990896881b85351d4327c4a9') @@ -56,9 +56,6 @@ class Zoltan(Package): depends_on('mpi', when='+mpi') - def url_for_version(self, version): - return '%s/zoltan_distrib_v%s.tar.gz' % (Zoltan.base_url, version) - def install(self, spec, prefix): # FIXME: The older Zoltan versions fail to compile the F90 MPI wrappers # because of some complicated generic type problem. |