Commit graph

7495 commits

Author SHA1 Message Date
Todd Gamblin
5449884b2e Fix bare 'except:' to placate errors in new flake8 version.
- fixes E722 errors from latest version of flake8
- requires us to not use 'bare except:' and catch BaseException instead
2017-10-24 10:05:36 +02:00
Todd Gamblin
b98fc48273 log tests use tmpdir properly 2017-10-24 10:05:36 +02:00
Todd Gamblin
0bb1eb32f2 fix bugs found with stricter flake8 rules
- When you don't use wildcards, flake8 will find places where you used an
  undefined name.

- This commit has all the bugfixes resulting from this static check.
2017-10-24 10:05:36 +02:00
Todd Gamblin
7dd79094b0 remove wildcards from make spack core and packages
- This removes all wildcard imports EXCEPT `from spack import *` in packages
2017-10-24 10:05:36 +02:00
Todd Gamblin
7757ebc0bc flake8: no wildcards in core; only import * from spack in packages
There are now separate flake8 configs for core vs. packages:
- core has a smaller set of flake8 exceptions
- packages allow `from spack import *` and module globals
- Allows core to take advantage of static checking for undefined names
- Allows packages to keep using Spack tricks like `from spack import *`
  and dependencies setting globals for dependents.
2017-10-24 10:05:36 +02:00
Todd Gamblin
beab0cb92e add newlines at end of some package files 2017-10-24 10:05:36 +02:00
Todd Gamblin
78e22940c2 add --all option to spack flake8
- `-a`/`--all` causes flake8 to run on all files rather than just
  different ones.
2017-10-24 10:05:36 +02:00
scheibelp
e660611a87 package: remove bare except statements (#5896) 2017-10-23 19:28:53 -07:00
Mark Grondona
328dc3d140 jansson: enable shared library (#5857)
Jansson builds only a static library by default, which is probably
not what most users want. Add Cmake args required to build a shared
library and enable those via a default 'shared' variant of the
package.
2017-10-23 13:32:51 +02:00
Massimiliano Culpo
3e7680e24a getting_started.rst: removed tip suggesting the use of 2 Spack instances (#4061) 2017-10-20 21:09:08 -07:00
Massimiliano Culpo
3afc6770f0 module-type argument defaults to 'tcl' instead of every known type (#5751)
fixes #5721

This is to solve the fact that lmod needs to be configured
by the user (to specify a core compiler).
2017-10-20 20:41:25 -07:00
Patrick Gartung
a8ee2a912b buildcache command updates (#5860)
* Add better spec matching to spack buildcache

* skip download of spec.yaml and keys if they exist

* autopep8
2017-10-20 20:33:01 -07:00
jiseung
969c8b177f new package: hpgmg (#4888)
* new package: hpgmg

* removed build and changed extend() to append()

* changes based on comments

* pep8 compliant

* addressed rest of comments

* trigger checks

* changed from fe_fv to two boolean variants

* fixed compilation issues

* cleared up ambiguities in solver variants

* removed +mpi condition

* changes based on review
2017-10-20 17:34:55 -07:00
Adam J. Stewart
2570dfb4d9 Update Getting Started docs to clarify that full Xcode suite is required for qt (#4958)
* Update Getting Started docs to clarify that full Xcode suite is required for qt

* Better error message when only the command-line tools are installed
2017-10-20 17:31:12 -07:00
George Hartzell
c9d9901e43 perl: add old version (#5844) 2017-10-20 16:18:24 -07:00
Christoph Junghans
2e1a96f262 xsbench: add v14 (#5835) 2017-10-20 08:52:17 +02:00
Todd Gamblin
4dac4736e7 spack blame can take a path to a file in the Spack repo (#5793)
- Previously `spack blame` only worked for package names; now it works
  for paths as well, so developers can use it on core spack files.
2017-10-19 14:27:15 -07:00
Milton Woods
d72bcc91f4 perl: ignore perllocal.pod files during package activation (#5271) 2017-10-19 14:24:49 -07:00
Adam J. Stewart
a1c19f8389 Allow documentation to build in Python 3 (#5736) 2017-10-19 00:26:04 -07:00
George Hartzell
b46f1e3605 bcl2fastq needs with working_dir: after changes in #5776 (#5803)
#5776  cleaned up the way the the current working directory is
managed (less magic state).

bcl2fastq is packaged like a russian doll, rather than an archive file
that contains the source, there's a zip file that contains a tar.gz
file that contains the source.  The package definition has a bit of
extra code that unpacks the inner tarball.

That extra bit of code now needs to explicitly arrange to be in the
correct directory before it does its work.
2017-10-19 08:59:25 +02:00
Christoph Junghans
4774c9887e libxml2: use spack's xz (#5816) 2017-10-19 08:32:37 +02:00
lingnanyuan
6642f62eb9 r-affyexpress: Create new package. (#5807) 2017-10-18 19:07:04 -06:00
Yifan Zhu
5e2c4dbb5c r-rtracklayer: new package (#5808) 2017-10-18 19:06:36 -06:00
lingnanyuan
76cce82d65 r-affyilm: Create new package. (#5810) 2017-10-18 19:06:16 -06:00
Yifan Zhu
d701c4afd6 r-genomicfeatures: new package (#5811)
* r-genomicfeatures: created new package

* modified version number and added versioned dependency on r

* fixed typo
2017-10-18 19:05:53 -06:00
Denis Davydov
3e67b98e29 dealii: blacklist boost 1.64 and 1.65 (#5805)
* dealii: blacklist boost 1.64 and 1.65

* flake8
2017-10-18 15:58:05 -06:00
Stephen Hudson
0b62625e9d py-mpi4py: Add develop version and dependencies (#5798)
* py-mpi4py: Add develop version and dependencies

- Add cython dependency for develop version

- Add explicit python dependency

* py-mpi4py: Specify 2.0.1 instead of develop for conditional dep
2017-10-18 15:56:48 -06:00
Akhil Reddy Patlolla
9b994c05f4 CoMD Proxy App with Serial, MPI, OpenMP Support (#4864) 2017-10-17 19:59:57 -06:00
George Hartzell
ad5fb40d75 perl: add write permissions to update config files (#5746)
Perl installs a couple of config files that need to be munged so that
they don't refer to the spack compiler.  These files are installed
read-only.  Behind the scenes 'filter_file' moves its file to a safe
place, and tries to create a working file that is both O_WRONLY and
has the perms of the original file.  On an NFSv4 filesystem, the
combination of 'r--r--r--' and O_WRONLY throws a permissions error.

This commit adds a simple context manager that temporarily makes the
files writable.
2017-10-17 18:38:23 -07:00
George Hartzell
464e558aea filter_file, don't remove absent backup file (#5733)
I'm tracking down a problem with the perl package that's been
generating this error:

```
OSError: OSError: [Errno 2] No such file or directory: '/blah/blah/blah/lib/5.24.1/x86_64-linux/Config.pm~'
```

The real problem is upstream, but it's being masked by an exception
raised in `filter_file`s finally block.

In my case, `backup` is `False`.

The backup is created around line 127, the `re.sub()` calls
fails (working on that), the `except` block fires and moves the backup
file back, then the finally block tries to remove the non-existent
backup file.

This change just avoids trying to remove the non-existent file.
2017-10-17 11:26:05 -07:00
David Hows
ffc4c31b82 Add a new +clanglibcpp option for Boost (#5708)
* Add a new +clanglibcpp option for Boost

Currently, the compile of boost with clang will use the stdlibc++. This patch adds an optional flag to use clangs included libc++ instead.

* Linting

Fix long lines and white space errors
2017-10-17 01:40:09 -07:00
Christoph Junghans
5f592fb911 votca-xtp: added url (#5772) 2017-10-17 01:39:02 -07:00
Christoph Junghans
244c7af864 flang: clean up (#5766) 2017-10-17 01:38:41 -07:00
Christoph Junghans
1a12e6022b liquo: added 1.3 and develop (#5781) 2017-10-17 01:36:54 -07:00
Michael F. Herbst
1952a92820 Minor typos and corections (#5789)
- The shell script uses arrays and hence only works on sophisticated shells and not the default `sh`. For clarity the shebang `#!/bin/bash` has been used instead.
2017-10-17 01:36:03 -07:00
Douglas Duckworth
f0da8251b3 singularity 2.4 added (#5782) 2017-10-17 01:28:19 -07:00
Todd Gamblin
100fb1e6ee Exercise more code paths in the git fetcher.
- This fakes out GitFetchStrategy to try code paths for different git
  versions.

- This allows us to test code paths for old versions using a newer git
  version.
2017-10-17 01:26:31 -07:00
Todd Gamblin
d14816cbaf Spack tests no longer clutter var/spack/stage
- Tests use a session-scoped mock stage directory so as not to interfere
  with the real install.

- Every test is forced to clean up after itself with an additional check.
  We now automatically assert that no new files have been added to
  `spack.stage_path` during each test.

  - This means that tests that fail installs now need to clean up their
    stages, but in all other cases the check is useful.
2017-10-17 01:26:31 -07:00
Todd Gamblin
44bebd7a8f `Package.stage` no longer implicitly makes stage directory
- Be explicit about stage creation during the install process.

- This avoids accidental creation of stages
  - e.g., during `spack install --fake`, stages were erroneously recreated
    after being destroyed
2017-10-17 01:26:31 -07:00
Todd Gamblin
894a1a73a4 Spack tests no longer use the var/spack/stage directory.
- This prevents the main spack install from being clusttered by
  invocations of `spack test`.

- This uses a session-scoped stage fixture to ensure tests don't
  interfere.
2017-10-17 01:26:31 -07:00
Todd Gamblin
c14f2dc7b4 Spack core and tests no longer use os.chdir()
- Spack's core package interface was previously overly stateful, in that
  calling methods like `do_stage()` could change your working directory.

- This removes Stage's `chdir` and `chdir_to_source` methods and replaces
  their usages with `with working_dir(stage.path)` and `with
  working_dir(stage.source_path)`, respectively.  These ensure the
  original working directory is preserved.

- This not only makes the API more usable, it makes the tests more
  deterministic, as previously a test could leave the current working
  directory in a bad state and cause subsequent tests to fail
  mysteriously.
2017-10-17 01:26:31 -07:00
Jon Rood
890c5ad329 Forcing Paraview to avoid using git describe to determine its own version number (#5783)
* Forcing Paraview to avoid using git describe to determine its own version number.

* Shortening references to spec in paraview.
2017-10-16 15:32:23 -06:00
Aaron Fisher
639d9c305a Updated the rc tag and version. (#5761) 2017-10-16 11:26:26 -07:00
Christoph Junghans
89344ebd44 portage: fixes + added v1.1.* (#5706) 2017-10-16 09:59:41 -07:00
Michael F. Herbst
d0cf3db46e armadillo: use libs to provide arpack and superlu libraries (#5777) 2017-10-16 12:57:01 +02:00
Denis Davydov
f6c16de6de petsc: a temporary workaround for concretizer bug in all packages which depend on SLEPc (#5755) 2017-10-16 00:53:55 -07:00
Johann Klähn
6c67de48e8 Update llvm to version 5.0.0 (#5773) 2017-10-15 13:04:40 -06:00
Michael F. Herbst
5656554922 Add krims and lazyten (#5771)
* Add krims to spack

* Add lazyten to spack

* Add description for lazyten

* Changes suggested by @davydden and @junghans
2017-10-15 11:45:11 -06:00
Denis Davydov
a16ec21fbe boost: remove preferred 1.63 (#5770)
1.64 had issues serialization (make_array and others) when built with
+mpi+python. It appears that those issues are fixed in 1.65.1
so we can remove preferred tag from 1.63.
2017-10-14 16:50:28 -06:00
Denis Davydov
cfd823c3f7 intel-tbb: add 2018.1 (#5769) 2017-10-14 16:40:23 -06:00