Commit Graph

4669 Commits

Author SHA1 Message Date
Peter Scheibel
d50a18d9eb XML output for unit tests is now enabled with an option (disabled by default) 2015-11-25 17:10:45 -08:00
Peter Scheibel
60f7756626 Executable.__call__ original semantics were to avoid redirecting process output
to the output stream if return_output was set. This branch undid that and this
commit restores those semantics.
2015-11-25 12:28:43 -08:00
Todd Gamblin
04f032d6e3 Rename spack.db -> spack.repo
Making distinction between install database and package repositories clearer.
2015-11-25 10:01:44 -08:00
Todd Gamblin
e6d232bfef Rename packages.py to repository.py, PackageFinder to RepoPath. 2015-11-25 09:58:10 -08:00
Peter Scheibel
18dea24df8 Use the xunit nose plugin to generate JUnit XML test results from Spack's unit
tests.
2015-11-24 19:08:37 -08:00
Peter Scheibel
0adf93853d Update log_output to handle cases where sys.stdout/stderr streams do not have
an associated file descriptor (e.g. holds for nose tests where sys.stdout is
assigned to a StringIO object)
2015-11-24 17:58:17 -08:00
Peter Scheibel
5081ba6802 It appears the same test object was returned multiple times for different
unit tests, so tracking tests with sets wouldn't work unless I extracted the
details relevant to the particular test. For now a simple count will work so
using a set was unnecessary anyways.
2015-11-24 10:45:07 -08:00
Peter Scheibel
70049185a5 Activation of Tally plugin to count tests. It doesn't appear to be actually
counting the individual unit tests correctly so I need to chase that down.
2015-11-24 10:39:42 -08:00
Peter Scheibel
099fa1df34 Use nose to run unit tests.
1. Adding a plugin to keep track of the total number of tests run as well as the
number of tests with failures/errors.
2. Some nose plugins (including xunit which will be added in a future commit)
assign stdout to a stream object that does not have a .fileno attribute.
spack.util.executable.Executable now avoids passing stdout to subprocess (and
always uses subprocess.PIPE)

TODO:
1. Still need to figure out how to activate the plugin (as of now it is
being ignored by nose). Newer versions of nose appear to make this simpler
(e.g. the "addplugins" argument to nose.run)
2. Need to include new version of nose in order to use xunit
2015-11-23 18:59:48 -08:00
Todd Gamblin
cf3d236b9f Merge branch 'scheibelp-features/externaldeps' into develop 2015-11-23 17:50:49 -08:00
Todd Gamblin
1447fd0a12 Merge pull request #160 from SteVwonder/stevwonder/develop
Fixed -l flag for 'spack extensions'
2015-11-23 15:50:18 -08:00
Todd Gamblin
8c06b92225 Working PackageFinder / Repo 2015-11-22 20:28:59 -08:00
Tom Scogland
5e93dd6592 modified warning to reference spack clean
clean --dist has been removed, command fixed to something that works.
2015-11-20 11:49:46 -08:00
Mario Melara
fceb5a75b0 Adding new files to compilers 2015-11-13 11:53:38 -08:00
Mario Melara
bfd05d3d27 Changed name of file and class to craype to avoid spack freaking out about versions 2015-11-13 11:48:49 -08:00
Mario Melara
72fa3c0492 Added craype support 2015-11-13 11:48:15 -08:00
Mario Melara
9458f7c7d0 Got rid of my old method of finding in LOADEDMODULES 2015-11-13 11:47:36 -08:00
Mario Melara
a5ba69d68d Added a _cmp_key for the architecture class 2015-11-13 11:46:13 -08:00
Todd Gamblin
38fdd063d9 Fix and move NamespaceTrie to spack.util.naming
- fix up routines in namespace trie.
- trie can now hold intermediate elements.
- trie now has a test case.
2015-11-12 15:17:39 -08:00
Todd Gamblin
72c9604bcb Small fix to prevent this test from interfering with others. 2015-11-12 15:17:09 -08:00
Todd Gamblin
55662eca69 Merge branch 'develop' into mplegendre-multi_pkgsrc_roots
Conflicts:
	lib/spack/spack/__init__.py
	lib/spack/spack/directives.py
	lib/spack/spack/packages.py
2015-11-12 15:16:06 -08:00
Gregory Becker
7c89f9d18c Added the basic ouline of a cray compiler class in lib/spack/spack/compilers/cray.py 2015-11-12 14:31:41 -08:00
Gregory Becker
e78b8c16be used key_comparator decorator from util.lang to compare targets. Fixes find bug 2015-11-12 13:27:10 -08:00
Stephen Herbein
9c30e0210b Fixed -l flag for 'spack extensions' 2015-11-12 08:15:38 -08:00
Peter Scheibel
6d7b26d4e0 Insert lib/spack/external into sys.path. This avoids cases where the system
python install and lib/spack/external have the same library installed. This
requires modifying the names of some modules in lib/spack/external in cases
where both the system python and backported features of future python versions
(i.e. after 2.6) are used (previously distinguished by "from external import X"
and "import X").
2015-11-11 18:04:22 -08:00
Gregory Becker
eb2c083159 Fixed the to_dict from_dict for targets on cray. First version to build/find properly on Cray 2015-11-11 17:29:47 -08:00
Gregory Becker
185f40eb8b fixed my git problems 2015-11-11 16:33:22 -08:00
Gregory Becker
3067705c10 made a to_dict for targets. Also a from_dict for sanity 2015-11-11 16:16:47 -08:00
Gregory Becker
8a13d344a8 bug fix in spec.py 2015-11-11 15:07:57 -08:00
Gregory Becker
271a839957 First possibly working version of the crayport. Not sufficiently tested at all. 2015-11-11 14:22:07 -08:00
Gregory Becker
95a34628a3 Add modules to compilers. Changed compiler to take paths as a list. Changed compiler_for_spec to be aware of different compiler stratigies 2015-11-11 11:32:18 -08:00
Gregory Becker
7e6fc79eb2 Merge branch 'features/spackathon' of github.com:NERSC/spack into crayport
Conflicts:
	lib/spack/spack/compiler.py
2015-11-11 10:35:59 -08:00
Gregory Becker
5347f460b4 adding module find to find command 2015-11-11 10:31:37 -08:00
Gregory Becker
cd69681ae5 merged in work from other computer and starting to track down bugs 2015-11-11 10:09:03 -08:00
Todd Gamblin
5417a514e9 Eliminated two bugs found by spack test and rewrote the parser to be more sane 2015-11-10 18:44:01 -08:00
Gregory Becker
5e75a5c81c Fixed bug that spack.db.exists() returned True for anonymous specs 2015-11-10 15:45:22 -08:00
Gregory Becker
6f339939c4 Removed "any-pkg-name" and replaced it with empty string. Also changed cflag concretizer to concretize each flag individually, allowing us to have unconcretized FlagMap objects for find and uninstall. Now empty flags in find match any, whereas specifying +cflags=\'\' matches only those with empty strings for flags 2015-11-10 15:45:22 -08:00
Gregory Becker
6fa0bb991a Removed cflags from default format string and made them an option within the compiler string. Added -f option to find command; with -f, find prints flags 2015-11-10 15:45:22 -08:00
Gregory Becker
5a9394c65f added default compilers into spec and fixed constrain/concretize bug 2015-11-10 15:45:22 -08:00
Gregory Becker
cb5bc242db Changed flag default to "". Updated printing and other logic to match. Seems to have solved error in normalize. 2015-11-10 15:45:22 -08:00
Gregory Becker
2d77173dfa partial commit of cflags for debugging 2015-11-10 15:45:22 -08:00
Gregory Becker
42b5b7d2dd Commit of compiler flags addition:
Flags are passed from the command line all the way through
build environments to environment variables.
      Flags are specified using +name=value and values are quoted
using escaped quotes when necessary.

Future work includes using the flags in the compiler wrapper script
and hopefully updating the parser for a gentler user experience of
the spec language.
2015-11-10 15:45:22 -08:00
Gregory Becker
db1b21b9aa reclaimed the = sign. Architectures now specified by +arch= instead. Decided to prepend flag names with + for clarity in spec names and ease of parsing. Also generalized variants, although there is not yet a way to specify a generalized (name=value) variant. 2015-11-10 15:45:22 -08:00
Gregory Becker
7989a7f903 Headless specs and /hash spec specification 2015-11-10 15:42:10 -08:00
Gregory Becker
f9c8c4d216 partial commit to merge database 2015-11-10 15:40:00 -08:00
Gregory Becker
4ed22ad932 partial commit of cflags work 2015-11-10 15:39:27 -08:00
Gregory Becker
08729315c6 Added bgq architecture subclass: may require additional functionality to support 2015-11-05 09:21:56 -08:00
Todd Gamblin
0d993947ee Fix SPACK-93, SPACK-94, GitHub #150
- `remove_prefix` was modified to remove from the DB, but the package
  may not have been added to the DB yet when `remove_prefix` is called
  from `cleanup`.

- Made `remove_prefix` a pure utility function (it just removes the prefix)

- Added `installed_db.remove()` call only after the `remove_prefix` in
  `uninstall`.
2015-11-04 16:44:33 -08:00
Mario Melara
b61d554dc8 Fixed architecture.py file so it doesn't have the weird merge changes i.e <<<HEAD etc. Also added target method of recognizing it's own architecture 2015-11-04 13:28:12 -08:00
Mario Melara
2bc73b4a27 Merge branch 'features/spackathon' of https://github.com/NERSC/spack into features/spackathon 2015-11-04 13:21:33 -08:00