Commit graph

2757 commits

Author SHA1 Message Date
Todd Gamblin
0b5d531f31 make empty _static directory "exist" to git
Sphinx really wants the _static directory to exist, but git doesn't.
This is a compromise to avoid superfluous warnings from sphinx.

See here:

http://stackoverflow.com/questions/115983/how-do-i-add-an-empty-directory-to-a-git-repository
2014-01-09 14:03:32 +01:00
Todd Gamblin
837fc18d14 Add release number to docs and license. 2014-01-08 11:23:15 +01:00
Todd Gamblin
402c158f3b Change to github URL in docs. 2014-01-08 11:02:12 +01:00
Todd Gamblin
ce9b3511d0 Add license to python files and spack script. 2014-01-08 10:21:35 +01:00
Todd Gamblin
2f520d6119 Change multimethods to take first match instead of being rigid.
- Formerly required that one and only one spec match
- Now allows first match in a list (more flexible and more intuitive)

- introduces new bug that provides() doesn't do the correct thing
  when a version is not in a range that has been explicitly provided.
- TODO: fix this.
2014-01-07 09:52:29 +01:00
Todd Gamblin
36e6ef9fbd Packaging docs are mostly done. 2014-01-06 18:21:27 +01:00
Todd Gamblin
40229f6ed2 More packaging docs 2014-01-06 17:15:25 +01:00
Todd Gamblin
4c9c7ab65f Local specs now called "anonymous specs"
- anonymous specs have no name
- "local spec" came from these first being used in multimethods, i.e. "name of the local Package"
- not the most intuitive name.
2014-01-06 15:18:15 +01:00
Todd Gamblin
93e288859a Simpler prefix args. 2014-01-06 14:14:57 +01:00
Todd Gamblin
5f2feac92c Remove install methods from mock packages (not needed) 2014-01-06 11:05:58 +01:00
Todd Gamblin
df0c1134c9 SPACK-14: Bugfix in Spec.normalize()
- Normalize now updates the provider index as it addes package dependencies.
- Fixes problem where this breaks:

  a depends_on mpi
  a depends_on b
  b depends_on mpich

- Packages now restrict the mpi dependency to mpich
2014-01-06 09:25:51 +01:00
Todd Gamblin
d0b82d291f Change deps on 'mpich' to 'mpi' 2014-01-04 14:44:16 -08:00
Todd Gamblin
b579ba213d More packaging documentation 2014-01-04 14:43:44 -08:00
Todd Gamblin
30d3b32085 Bug fix in how class names are determined 2014-01-03 11:43:29 -08:00
Todd Gamblin
208db9b002 More packaging documentation. 2013-12-26 13:47:13 -08:00
Todd Gamblin
a4cda94524 install() now takes spec AND prefix 2013-12-25 17:19:51 -08:00
Todd Gamblin
0cd5866eea Some fixes recommended by PyCharm 2013-12-25 15:40:32 -08:00
Todd Gamblin
4ff8766a22 Starting on packaging docs. 2013-12-25 15:30:42 -08:00
Todd Gamblin
354c8a281b make create and checksum consistent.
- create now searches and prompts for checksums.
- makes package creation easier
2013-12-24 00:57:56 -08:00
Todd Gamblin
2f1eae8c0d spack checksum works. 2013-12-23 16:12:02 -08:00
Todd Gamblin
db32769347 spack edit fixed. 2013-12-23 14:01:10 -08:00
Todd Gamblin
7267734a5b Spack create works again w/new package format. 2013-12-23 12:09:19 -08:00
Todd Gamblin
358bfdaaf1 Another multimethod test for vdeps 2013-12-23 10:28:50 -08:00
Todd Gamblin
87dc2151b7 constrain() now consistent with satisfies()
- Added checks to constrain() so that it is consistent with satisfies()
- Added many more test cases for satisfiability and constraints on deps
- Virtual packages are handled properly in satisfies() and constrain()
	- bugfix: mpileaks^mpich2 would satisfy mpileaks^mpi@3:
	- this case is now handled.
2013-12-23 10:19:55 -08:00
Todd Gamblin
7088cdf25f Fix for SPACK-13, and satisfies() now handles deps.
Added more test cases for multimethods.  In doing so, (re)discovered that
satisfies() really needs to handle dependencies properly.

Implemented support for dependencies in satisfies, but constrain() now
isn't consistent (as we do not currently constrain deps), so need to
implement that.

Virtual dependency support probably needs some deeper thought.  i.e.,
there is probably an intermediate DAG form that would make the needed
checks easier.  Right now we have to build ProviderIndexes to figure out
how virtual dependencies are set up.  If the vdep were preserved in the DAG,
then we could just check for things like incompatible providers directly.
2013-12-22 17:55:58 -08:00
Todd Gamblin
f7706d231d SPACK-2: Multimethods for specs.
- multi_function.py -> multimethod.py
- Added @when decorator, which takes a spec and implements matching for method dispatch
- Added multimethod unit test, covers basic cases.
2013-12-21 17:19:05 -08:00
Todd Gamblin
99b05fd571 More docs. 2013-12-21 15:32:34 -08:00
Todd Gamblin
dfd0440a7e Color tweaks for find. 2013-12-21 15:30:35 -08:00
Todd Gamblin
a63482be73 Docs for spack find 2013-12-21 15:30:35 -08:00
Todd Gamblin
88017ec49e Made formatting specs easier with format() syntax.
- Replaced existing str_no_deps() function with more flexible format() function.
- Spec.tree() can take a format argument now, as well.
2013-12-21 15:30:35 -08:00
Todd Gamblin
e645bb065a SPACK-1: Multi-version installation now works front to back with specs. 2013-12-21 15:30:10 -08:00
Todd Gamblin
af639dca16 Make dirty installs part of package lifecycle 2013-12-18 11:42:56 -08:00
Todd Gamblin
c7beac295d More on installing with virtual packages 2013-12-18 11:36:55 -08:00
Todd Gamblin
256c42a34c Added a target to upload docs automatically. 2013-12-18 11:18:11 -08:00
Todd Gamblin
7be511a352 Finished basic usage. 2013-12-18 11:02:31 -08:00
Todd Gamblin
c9e40b725d Start of basic documentation 2013-12-12 04:25:31 -08:00
Todd Gamblin
c7539fe950 Better info command. 2013-12-12 01:04:32 -08:00
Todd Gamblin
7575f99bea Documentation skeleton 2013-12-09 20:17:08 -08:00
Todd Gamblin
9ef471420d Tweak for help output 2013-12-09 20:14:47 -08:00
Todd Gamblin
8d51c95e68 use get instead of setdefault for kwargs. 2013-12-09 10:44:46 -08:00
Todd Gamblin
936f54761b type(foo) == bar -> isinstance(foo, bar)
Changed type checks in most places.
2013-12-09 00:47:17 -08:00
Todd Gamblin
fa2e8dab11 Additional circular reference checking 2013-12-08 21:38:37 -08:00
Todd Gamblin
e0c029c347 Fixes for virtual packages.
- Added more tests
- cleaned up spec preorder traversal
- fixed concretization
2013-12-08 19:26:29 -08:00
Todd Gamblin
90f2154a32 Better test output -- include totals. 2013-12-07 15:16:09 -08:00
Todd Gamblin
87fedc7e1e Added support for virtual dependencies ("provides") 2013-12-07 13:51:46 -08:00
Todd Gamblin
344e902b15 More stage tests. 2013-12-01 23:57:07 -08:00
Todd Gamblin
ff2018bc85 Reworked stage paths to allow %u for username. Added stage test. 2013-11-24 14:06:11 -08:00
Todd Gamblin
3de3efc75d Gracefully handle lack of network connection. 2013-11-23 21:01:07 -08:00
Todd Gamblin
1247036141 Generalize package relations like depends_on, provides, conflicts.
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-23 15:46:04 -08:00
Todd Gamblin
6cf6eac3de Move concretization into its own class.
Allows easy overriding of a single policy.
2013-11-23 15:18:43 -08:00