summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-07-22Fix version scraping for CRAN packages (#12021)Adam J. Stewart2-20/+20
* Fix version scraping for CRAN packages * Remove set literals
2019-07-22bugfix: env.write() should stringify Spec lists.Todd Gamblin2-2/+8
- Setting specs from lockfiles was not correctly stringifying concretized user specs. - Fix `_set_user_specs_from_lockfile` - Add some validation code to `SpecList` constructor
2019-07-22hashes: consolidate and make hashing logic more consistentPeter Josef Scheibel8-84/+254
Spack has evolved to have three types of hash functions, and it's becoming hard to tell when each one is called. Whlie we aren't yet ready to get rid of them, we can refactor them so that the code is clearer and easier to track. - Add a `hash_types` module with concise descriptors for hashes. - Consolidate hashing logic in a private `Spec._spec_hash()` function. - `dag_hash()`, `build_hash()`, and `full_hash()` all call `_spec_hash()` - `to_node_dict()`, `to_dict()`, `to_yaml()` and `to_json()` now take a `hash` parameter consistent with the one that `_spec_hash()` requires. Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
2019-07-22env: environments index specs by full DAG w/build depsPeter Josef Scheibel3-30/+257
- ensure that Spec._build_hash attr is defined - add logic to compute _build_hash when it is not already computed (e.g. for specs prior to this PR) - add test to ensure that different instance of a build dep are preserved - test conversion of old env lockfile format to new format - tests: avoid view creation, DAG display in tests using MockPackage - add regression test for more-general bug also fixed by this PR - update lockfile version since the way we are maintaining hashes has changed - write out backup for version-1 lockfiles and test that
2019-07-22openjdk (#10446)zschulte1-2/+18
* openjdk * Removing preferred from latest and adding a few lines for readability. * Remove bad whitesapce * removing formatting changes * stable url for openjdk 1.8 * remove extra blank line * actual binary
2019-07-22tealeaf: Don't add -march=native on ARM and gcc 5.x or before. (#12080)Toyohisa Kameyama1-0/+6
2019-07-22jdk: Add JDK 12.0.2_10 (#12081)Hironori-Yamaji1-0/+2
2019-07-21hpctoolkit: add version gpu and variant cuda (#12068)Mark W. Krentel1-6/+30
Add version for 'gpu' and variant for 'cuda'. These are currently available from the 'master-gpu' branch. * hpctoolkit: add version gpu and variant cuda * The gcc >= 4.8.x requirement only applies for dyninst >= 10.x.
2019-07-21libsharp: Don't add -march=native on ARM (#12064)Toyohisa Kameyama3-1/+32
* libsharp: Don't add -march=native on ARM * Add preferred=True to version 1.0.0.
2019-07-20docker: fix builds, remove extra distros, add ci builds (#11621)Omar Padron26-643/+383
* fix docker builds/remove extra builds/add ci builds * preinstall vim in CI builder images * simplify & streamline docker resources * restore os-container-mapping.yaml file
2019-07-20Add OpenMP flag for Apple Clang (#12049)Adam J. Stewart2-5/+3
2019-07-20tests: speed up tests that rely on the database fixture (#12031)Massimiliano Culpo6-61/+95
The database and mutable_database fixtures were installing and uninstalling the same specs multiple times to ensure the database for tests has the correct state. This commit optimizes the procedure by caching the state in an external directory, and copying it in instead of going through the installation or uninstallation again. The database fixture is meant not to be modified by tests. This commit enforces this invariant by making the database read-only before starting the test. * Added missing db markers to tests * Added test for uninstall_by_spec * `database` fixture now returns a read-only database * Tests that modify the DB now use `mutable_database` fixture
2019-07-20hpcviewer: add version 2019.07 (#12067)Mark W. Krentel2-2/+8
ibm-java: fix the URL to only use a machine type that ibm-java supports so that 'spack info' doesn't report a non-existent URL on platforms that it doesn't support.
2019-07-20environment views: refactor stripping build deps (#12069)Greg Becker1-3/+1
2019-07-20compilers: don't raise errors for duplicate compiler definitions (#11910)Greg Becker2-1/+29
Summary: - Allow multiple definitions of compiler in compilers.yaml (use first instance) - Still print debug messages when there are duplicates, to assist users in finding this issue. Merging configs from different scopes can result in multiple compiler being present in the same configuration list. Instead of raising when there are duplicates, take the one with highest precedence. Print a debug message instead of raising, so that we can still diagnose this. We don't have a good way of warning the user about inconsistent configuration *in the same file* -- we'd need to dig into YAML file/line info for that.
2019-07-20environments: add activate/deactivate tests, work wtih `set -u`Todd Gamblin3-15/+143
- [x] Add shell tests to ensure that `spack env activate`, `spack env deactivate`, and `despacktivate` continue to work. - [x] Also ensure that activate and deactivate both work with `set -u`
2019-07-19Package inheritance: Find patch files defined in parent classes using MRO ↵Greg Becker4-1/+51
(#12051) Fixes #8908, 11844 Use Python MRO to find patch files from parent classes.
2019-07-19font-util package: add autoconf/automake build deps (#12071)Peter Scheibel1-0/+3
Fixes #12026 These are required on some systems
2019-07-19Fix #11240 (#11995)albestro2-1/+37
* extends mkdirs with permissions for intermediate folders Does not use os.makedirs mode parameter because its behavior is changed with Python 3.7 (it ignores it for intermediate dirs), and moreover it was not possible to set different modes for newly-created folders and leaf folder. reference: - https://bugs.python.org/issue19930 - https://docs.python.org/3.7/library/os.html#os.makedirs * comment mkdirp step easing code understanding * revert mkdir to default for package metapath since metapath is nested in package folder, there is no need to specify permissions for intermediate folders because the prefix already exists. * comment create_install_directory package modes
2019-07-19leveldb: add 1.22 (#12044)Michael Kuhn1-9/+56
2019-07-19libxpm: cope with system gettext if configured. (#10881)Chris Green1-2/+6
* If gettext is installed in the system it won't be in the spec tree.
2019-07-18concretization: fix transient hang in python 3.5Gregory Becker1-1/+2
Bug relates to the interplay between: 1. random dict orders in python 3.5 2. bugfix in initial implementation of stacks for `_concretize_dependencies` when `self._dependencies` is empty 3. bug in coconcretization algorithm computation of split specs Result was transient hang in coconcretization. Fixed #3 (bug in coconcretization) to resolve.
2019-07-18stacks: add option to link only roots or all specs, default to allGregory Becker3-37/+134
2019-07-18stacks: refactor view descriptors into a separate objectGregory Becker2-105/+123
2019-07-18refactor: clean up Environment classGregory Becker2-74/+65
- remove redundant code in Environment.__init__ - use socket.gethostname() instead of which('hostname') - refactor updating SpecList references - refactor 'specs' literals to a single variable for default list name - use six.string_types for python 2/3 compatibility
2019-07-18bugfix: spec lists can now include multiple referencesGregory Becker2-3/+3
2019-07-18stacks: use new format string syntax in environments codeGregory Becker4-11/+12
- Change old spec expressions to use Spack's new spec formatting sytnax.
2019-07-18docs: Add documentation for views in environmentsGregory Becker2-3/+145
2019-07-18stacks: update view management for multiple/combinatorial viewsGregory Becker9-83/+406
This adds notion of a default view, other views in environments
2019-07-18stacks: environment add/remove respect multiply-defined listsGregory Becker2-7/+53
2019-07-18stacks: allow force-removing from a speclist used in a matrixGregory Becker2-12/+21
2019-07-18stacks: update environment add/remove algorithmsGregory Becker3-59/+74
2019-07-18concretization: regression test for constrain() with depsGregory Becker1-0/+1
- ensure that `Spec('foo').constrain('foo ^bar')` works - prior to stacks implementation, this constraint would have done nothing.
2019-07-18docs: initial documentation for environmentsGregory Becker2-0/+636
2019-07-18stacks: initial implementation of stacks on environmentsGregory Becker9-61/+875
- stack syntax in env schema - switch environment specs over to SpecList object - add stack functionality to environments - handle definition extensions through stack.yaml and SpecList - implement conditional definitions - tests
2019-07-18cmake: add version 3.15.0 (#12058)Matthias Diener1-0/+1
2019-07-18Add master version to sklearn (#12057)Adam J. Stewart1-3/+16
2019-07-18pkg PRRTE: added version 1.0.0 (#12054)Matthieu Dorier1-1/+2
2019-07-18added version 3.1.3 of PMIx (#12055)Matthieu Dorier1-1/+2
2019-07-18Workaround for #9149 (#12050)Adam J. Stewart1-9/+12
2019-07-18py-mlxtend: new package at 0.16.0 (#12039)Justin S1-0/+23
* py-mlxtend: new package at 0.16.0 * py-mlxtend: fix dependencies
2019-07-17update web site and git url for BMI package (#12036)Phil Carns1-2/+2
2019-07-17add charliecloud v0.10 (#12046)Jordan Ogas1-0/+1
2019-07-17Fix scikit-learn build with Apple clang (#11496)Adam J. Stewart4-14/+111
* Fix scikit-learn build with Apple clang * Update compiler unit tests * Fix unit tests * Fix OpenMP dep * recursive=True no longer necessary * Add myself as a maintainer * Specify which versions require OpenMP * Typo fixes * LLVM-OpenMP is the correct dependency, no OMPT * Flake8 fix * Undo Apple Clang OpenMP flag change, split into a separate PR
2019-07-17libjpeg-turbo: set compiler flags with CMake args (#11938)t-karatsu1-0/+18
Later versions of libjpeg-turbo build with CMake; to build with user-specified cflags, the user must supply these to CMake as -DCMAKE_C_FLAGS (Spack's typical approach of injecting these flags into the compiler wrapper invocation is insufficient in this case). Currently libjpeg-turbo cannot be implemented as a CMakePackage (and thereby take advantage of the flag_handler implementation it provides) because not all versions of libjpeg-turbo use CMake, so this adds a custom implementation of flag_handler and flags_to_build_system_args to libjpeg-turbo.
2019-07-17Add support for .txz and .tbz2 file extensions (#12048)Adam J. Stewart5-9/+50
2019-07-17tests: uninstall_by_spec error and rpath_args tests (#11971)Tamara Dahlgren2-0/+26
* tests: Add uninstall_by_spec error tests. These tests were originally included in PR #11797.
2019-07-17feature: Allow developers to use Spack for partial builds (#12006)Greg Becker2-2/+6
Added new diy option.
2019-07-17kim-api 2.1.0 (#12041)Ryan S. Elliott1-1/+2
2019-07-17package opencoarrays: add new version: 2.7.1 (#12043)brietzke1-0/+1