summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2013-12-09use get instead of setdefault for kwargs.Todd Gamblin1-4/+4
2013-12-09type(foo) == bar -> isinstance(foo, bar)Todd Gamblin5-19/+21
Changed type checks in most places.
2013-12-08Additional circular reference checkingTodd Gamblin1-4/+8
2013-12-08Fixes for virtual packages.Todd Gamblin14-117/+393
- Added more tests - cleaned up spec preorder traversal - fixed concretization
2013-12-07Better test output -- include totals.Todd Gamblin2-24/+55
2013-12-07Added support for virtual dependencies ("provides")Todd Gamblin10-155/+533
2013-12-01More stage tests.Todd Gamblin2-14/+49
2013-11-24Reworked stage paths to allow %u for username. Added stage test.Todd Gamblin8-66/+385
2013-11-23Gracefully handle lack of network connection.Todd Gamblin3-19/+31
2013-11-23Generalize package relations like depends_on, provides, conflicts.Todd Gamblin3-19/+34
All of these do the same thing. So they are all now generalized to a single closure function; just the name of the updated variable in the package is different.
2013-11-23Move concretization into its own class.Todd Gamblin5-56/+73
Allows easy overriding of a single policy.
2013-11-23Cleanup and comments.Todd Gamblin8-31/+60
2013-11-23Fix virtual method.Todd Gamblin1-2/+9
2013-11-23Added web spider capability for listing versions.Todd Gamblin18-55/+311
2013-11-20Update libdwarf URL.Todd Gamblin2-9/+8
2013-10-26First cut concretization works, with tests.Todd Gamblin18-119/+268
Mock packages now all have their own version lists.
2013-10-18Added unit tests for spec normalization.Todd Gamblin3-25/+135
2013-10-17spack test runs all tests by defaultTodd Gamblin1-6/+6
'spack test -a' formerly ran all test and 'spack test' listed available tests. Now, 'spack test' runs all tests and 'spack test -l' lists available ones.
2013-10-17spec flatten, normalize, validate; package validateTodd Gamblin21-167/+641
New operations for manipulating spec and package DAGs. For specs: flatten: gather all deps to the root normalize: Merge constraints and make spec match package DAG For packages: validate_dependencies: Make sure spec constraints in package DAG are sane. Added tests for above methods. Also added beginnings of concretization logic, to turn abstract spec into a concrete one. Still need proper tests for normalize().
2013-10-15Spec constraints and normalization now work.Todd Gamblin17-191/+473
- Specs can be "constrained" by other specs, throw exceptions when constraint can't be satisfied. - Normalize will put a spec in DAG form and merge all package constraints with the spec. - Ready to add concretization policies for abstract specs now.
2013-10-11Command to launch interpreter with spack in sys.pathTodd Gamblin1-0/+21
2013-10-11Command to run pydoc on spack classes.Todd Gamblin1-0/+9
2013-10-07Refactor utils into separate modules.Todd Gamblin14-225/+221
2013-10-07Start to make a bigger package out of utils.pyTodd Gamblin14-79/+111
- moved none_compare functions to util.none_high and util.none_low packages - renamed utils.py to util package
2013-10-07Checkpoint commit: much-improved spec class.Todd Gamblin26-361/+1403
Still organizing things.
2013-06-29Add spec architeccture, redo color output support.Todd Gamblin5-69/+128
2013-06-29Clean up half-downloaded tarballs.Todd Gamblin1-5/+11
2013-06-29Adding expression syntax for console colors.Todd Gamblin1-0/+162
2013-06-02Add checks for version 2.7Todd Gamblin1-0/+3
2013-05-17Better error messages for spack list -v.Todd Gamblin1-16/+20
2013-05-17Ability to list versions from web page with spack list -v PACKAGETodd Gamblin7-27/+129
Experimental feature automatically parses versions out of web pages and prints what it thinks are avaialble versions of a package, e.g.: $ spack list -v libunwind 1.1 1.0 0.98.6 0.98.4 0.98.2 0.98 0.96 0.93 0.91 0.1 1.0.1 0.99 0.98.5 0.98.3 0.98.1 0.97 0.95 0.92 0.9 0.0
2013-05-17Added command to print out URL and homepage.Todd Gamblin1-0/+13
2013-05-17Renamed variables called 'spec' to 'path'Todd Gamblin1-31/+36
2013-05-13list_modules will now find directories.Todd Gamblin1-4/+11
2013-05-12Added EBNF grammar.Todd Gamblin1-0/+22
2013-05-12Commands take specs as input instead of names.Todd Gamblin15-180/+265
modified clean, create, fetch, install, and uninstall
2013-05-12More rubust spec parsing and error messagesTodd Gamblin4-41/+120
2013-05-09Initial implementation of package specs, including parser.Todd Gamblin10-76/+821
spec.py can parse full dependence specs like this: openmpi@1.4.3:1.4.5%intel+debug ^hwloc@1.2 These will be used to specify how to install packages and their dependencies, as well as to specify restrictions (e.g., on particular versions) for dependencies. e.g.: class SomePackage(Package): depends_on('boost@1.46,1.49') This would require either of those two versions of boost. This also moves depends_on out to relations.py and adds "provides", which will allow packages to provide virtual dependences. This is just initial implementation of the parsing and objects to represent specs. They're not integrated with packages yet.
2013-05-09Removed old versions.pyTodd Gamblin1-245/+0
2013-05-09Don't exit after one test.Todd Gamblin1-1/+1
2013-05-09Changed class name.Todd Gamblin1-0/+244
2013-05-09Removed executable bit.Todd Gamblin1-0/+0
2013-04-28Tests can be run via spack test <test_name>Todd Gamblin8-217/+325
2013-04-04This adds support for multi-platform methods.Todd Gamblin13-81/+329
You can now do this: class MyPackage(Package): def install(self): ...default install... @platform('bgqos_0') def install(self): ...specialized install for bgq... This works on functions other than install, as well (as long as they're in a Package)
2013-03-25Moved install-spack to its own simpler command.Todd Gamblin2-3/+53
2013-03-22Fix in docs.Todd Gamblin1-1/+1
2013-03-22Documentation and small changes.Todd Gamblin10-163/+444
2013-02-25Simpler implementation of depends_on.Todd Gamblin1-6/+5
2013-02-22Better spack -h: added cmd descriptions.Todd Gamblin12-3/+29
- each cmd has a desscription attribute that is used for the help strign in argparse.
2013-02-21Better handling of stage.Todd Gamblin2-10/+35
- better symlink handling - remove stage directories on successful install.