summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2016-10-11Make llnl.util.lock use file objects instead of low-level OS fds.Todd Gamblin2-18/+20
- Make sure we write, truncate, flush when setting PID and owning host in the file.
2016-10-11stage : try to remove dead links only of folder that you actually care aboutalalazo2-14/+44
A use case where the previous approach was failing is : - more than one spack process running on compute nodes - stage directory is a link to fast LOCAL storage In this case the processes may try to unlink something that is "dead" for them, but actually used by other processes on storage they cannot see.
2016-10-11lockfiles : creates directory for locks if not already presentalalazo1-0/+2
2016-10-11diy : removed global write lock on the dbalalazo1-34/+31
2016-10-11uninstall : removed global lockalalazo2-16/+15
2016-10-11unit tests : fixed failing testsalalazo1-1/+4
2016-10-11install : finer graned locking for install commandalalazo5-30/+97
2016-10-11Fixed set operation from undefined += to a union (#1963)James Wynne III1-1/+2
Fixed flake8 issues
2016-10-11spack list : merged package-list into list (#1932)Massimiliano Culpo3-128/+116
* spack list : merged package-list into the command * list : removed option for case sensitivity
2016-10-11Make CMake-based builds more verbose by default. (#1988)Kelly Thompson1-1/+2
2016-10-11uninstall : permits to uninstall all installed software fixes #1477 (#1973)Massimiliano Culpo1-30/+38
2016-10-11md5 : normalizes input before computing the md5 fixes #1508 (#1977)Massimiliano Culpo1-2/+13
Bottomline : - fetcher change the current working directory - relative paths were resolved differently depending on the prder f evaluation
2016-10-07Add documentation for standard python repositories. (#1970)Jean-Paul Pelteret1-0/+30
Fixes #1939
2016-10-07Check for `-r` in ccld mode too (#1972)Isuru Fernando1-2/+2
2016-10-07fixes #858 (#1961)Massimiliano Culpo1-1/+1
Fix spack uninstall -f
2016-10-06Restore default RPATH settings but allow packages to limit to immediate ↵Todd Gamblin2-2/+14
deps. (#1954) - Some packages (netcdf) NEED RPATHs for transitive deps. - Others (dealii) will exceed OS limits when the DAG is too large.
2016-10-06Fix bugs preventing readthedocs from rebuilding the documentation (#1945)Adam J. Stewart2-14/+12
2016-10-06[Bug Fix (and docs too)] : Do not select @develop version by default (#1933)Elizabeth Fischer2-5/+47
* This fixes a bug in concretization. Before the recent change to the algorithm, the intent was that the @develop version, although "greater" than numberic versions, is never preferred BY DEFAULT over numeric versions. To test this... suppose you have a package with no `preferred=True` in it, and nothing in `packages.yaml`, but with a `develop` version. For the sake of this example, I've hacked my `python/package.py` to work this way. Without bugfix (WRONG: user should never get develop by default): ``` python@develop%clang@7.3.0-apple~tk~ucs4 arch=darwin-elcapitan-x86_64 ... ``` With bugfix (RIGHT: largest numeric version selected): ``` python@3.5.2%clang@7.3.0-apple~tk~ucs4 arch=darwin-elcapitan-x86_64 ... ``` * Documented version selection in concretization algo. * Fix typos * flake8
2016-10-06add contribution guide focused on Git and PRs (#1664)Denis Davydov2-0/+248
2016-10-06Fix various documentation bugs (#1678)Adam J. Stewart8-108/+97
* Fix various documentation bugs * Keep long option names, but don't include in Command Index * Use long option name * Explicitly designate sections to be listed in the Command Index * Consistent menu bar titles
2016-10-06Fixes bug closing Executable file io-streams (#1890)Matt Belhorn1-3/+3
Input/output/error streams not directed to None or 'str' were not being closed because `close()` method was being called on the argument value (a string type) instead of the open file descriptor object.
2016-10-06Fix fetch() method. Was being called with "wrong" arguments, raising ↵Elizabeth Fischer1-1/+1
exception. (#1916) DIYFetchBugfix
2016-10-06Fix Issues with non-numeric versions, as well as preferred=True (#1561)Elizabeth Fischer3-39/+113
* Fix bug in handling of precedence of preferred=True vs. versions given in packages.yaml (#1556) * Standardized comparison of versions: numeric versions are always greater than non-numeric versions; and non-numeric versions are sorted alphabetically. This is a) simple b) ensures that non-numeric versions (such as 'develop') in package.py are not chosen ahead of numeric versions, when nothing is specified in packages.yaml Fixes Issue #1557 * Removed debugging output * Fix variable shadowing bug * Ensure develop < numeric version. * Bug fix. * Passes all unit tests in versions.py * flake8 fixes * flake8 fixes * Changed type test to be more correct. See http://stackoverflow.com/questions/8203336/difference-between-int-and-numbers-integral-in-python
2016-10-05Handle packages with unparseable extensions (#1758)scheibelp6-21/+21
This closes #1757 which provides an example of a url scheme where the version appears after the extension. Instead of extending the parsing logic to handle this case, this commit allows the user to specify their extension type. This helps Spack choose the appropriate decompressor and mirror archive filename.
2016-10-05docs/getting_started: s/Macintosn/Macintosh/; (#1928)Geoffrey Oxberry1-1/+1
2016-10-05Documentation Improvements for SC16 (#1676)Elizabeth Fischer10-867/+2757
* Transferred pending changes from efischer/develop * 1. Rewrite of "Getting Started": everything you need to set up Spack, even on old/ornery systems. This is not a reference manual section; items covered here are covered more systematically elsewhere in the manual. Some sections were moved here from elsewhere. 2. Beginning to write three methods of application developer support. Two methods were moved from elsewhere. * Edits... * Moved sections in preparation for additional text to be added from old efischer/docs branch. * Moved 2 more sections. * Avoid accid * Applied proofreading edits from @adamjstewart * Fixed non-standard section characters. * Moved section on profiling to the developer's guide. * Still working on Spack workflows... * Finished draft of packaging_guide.rst * Renamed sample projects. * Updates to docstrings * Added documentation to resolve #638 (content taken from #846) * Added section on resolving inconsistent run dependencies. Addresses #645 * Showed how to build Python extensions only compatible with certain versions of Python. * Added examples of getting the right behavior from depends_on(). See #1035 * Added section on Intel compilers and their GCC masquerading feature. Addresses #638, #1687. * Fixed formatting * Added fixes to filesystem views. Added a caveats section to ``spack setup``. * Updated section on Intel compiler configuration because compiler flags currently do not work (see #1687) * Defined trusted downloads, and updated text based on them. (See #1696) * Added workflow to deal with buggy upstream software. See #1683 * Added proper separation between Spack Docs vs. Reference Manual * Renamed spack_workflows to workflows. Resolves a conflict with the .gitignore file. * Removed repeated section. * Created new "Vendor Specific Compiler Configuration" section and organized existing Intel section into it. Added new PGI and NAG sections; but they need to be expanded / rewritten based on the existing text plus research through Spack issues on GitHub. * Fixed text on `spack load --dependencies` to conform to reality. See #1662 * Added patching as option for upstream bugfixes. * Added section on using licensed compilers. * Added section on non-downloadable tarballs. * Wrote sections on NAG and PGI. Arranged compilers in alphabetical order. * Fix indent. * Fixed typos. * Clarified dependency types. * Applied edits from Adam J. Stewart. Spellchecked workflows and getting_started. * Removed spurious header * Fixed Sphinx errors * Fixed erroneous symbol in docstring. * Fix many typos and formatting problems. * Spacing changes * Added section on fixing Git problems. See #1779 * Fixed signature of install() method. * Addressed system packages in greater detail. See #1794 #1795 * Fixed typos * Fixed quotes * Duplicate section on Spack profiling removed from configuration.rst. It had earlier been moved to developer_guide.rst, where it fits better. * Minor edits - Tweak supported platform language. - Various small changes to the new getting started guide. * Fixed bug with quotes.
2016-10-05New command flag: spack install --dependencies-only (#1603)Elizabeth Fischer5-23/+40
* 1. Renamed ignore_deps variable to install_deps (use positive logic). UI remains the same. 2. install_self kwarg added to do_install(). Enables installation of a package's dependencies without installing the package itself. 3. Added `spack install --dependencies-only <package>` command. * Flak8 fixes * Indentation problem
2016-10-05Add package for CONVERGE CFD (#1905)Adam J. Stewart1-0/+5
2016-10-05Added missing function for CMake builds. (#1250)Elizabeth Fischer1-9/+15
* Added missing function for CMake builds. * Update build_environment.py * std_cmake_args Changed std_cmake_args to use get_std_cmake_args(). * Update build_environment.py Delete additional lines subsumed by get_std_cmake_args() * flake8.
2016-10-04Read-only locks should close fd before opening for write. (#1906)Todd Gamblin2-0/+37
- Fixes bad file descriptor error in lock acquire, #1904 - Fix bug introduced in previous PR #1857 - Backported fix from soon-to-be merged fine-grained DB locking branch.
2016-10-04Fix some documentation build warnings. (#1902)Todd Gamblin3-15/+13
- Fix issue with package_list.py regeneration confusing Sphinx. - Add -E option to avoid caching and make Sphinx happy.
2016-10-04Rework build environment and cc to use smaller RPATHs. (#1894)Todd Gamblin3-13/+108
- Fixed up dependency management so that: - build deps go in PATH and -I - link deps go in -L args - only *immediate* link deps are RPATH'd The latter reduces the number of libraries that need to be added to DT_NEEDED / LC_RPATH. This removes redundant RPATHs to transitive dependencies.
2016-10-04Fixes #1893: missing importTodd Gamblin1-0/+1
2016-09-30Fix read locks on read-only file systems (#1857)Michael Kuhn1-1/+2
2016-09-28Fixes #1860. Subversion builds sequentially due to race.Todd Gamblin1-1/+1
2016-09-28Fixes #1720: spack reindex fails with invalid ref count. (#1867)Todd Gamblin3-49/+80
* Fixes #1720: spack reindex fails with invalid ref count. - Database graph wasn't being built properly; dependencies were set up incorrectly in the nodes that ended up in the graph on reindex. - Reworked _add to increment ref count properly and to always build bottom-up to make the logic simpler to understand. * Add checks to ensure DB is a valid merkle tree.
2016-09-28Add single letter arg flags for spack graph (#1871)Adam J. Stewart1-3/+3
2016-09-27Make graph_ascii support deptypes.Todd Gamblin5-27/+36
- fix deptype support - by default, graph command omits build depedencies - update docs to use deptype args
2016-09-27Fixes #1098: spack graph crashes for large graphs.Todd Gamblin1-6/+15
- Fixed logic for collapsing backward edges - Last collapse now depends on whether prior step in left collapse sequence alrady did the collapse.
2016-09-27Improvements to the Spack graph command.Todd Gamblin3-29/+103
- Distinguish between static (package) and dynamic (spec) graphs. - static graphs ignore conditions and multiple instances (hashes) and plot raw dependencies among packages. - dynamic graphs include information from particular specs (instances of packages) and can have multiple instances with hashes. - Allow graphing all packages in the install DB. - useful for debugging.
2016-09-27Factor out canonical_deptype function, cleanup spec.pyTodd Gamblin2-41/+100
2016-09-27Clean up Exceptions in `spec.py`Todd Gamblin2-63/+6
2016-09-23Fix doc bugs, widen columns in the package listTodd Gamblin1-1/+1
2016-09-22package: fix variable name usage (#1829)Ben Boeckel1-1/+1
2016-09-22Fix spack checksum output indentation (#1826)Adam J. Stewart1-1/+1
2016-09-22Fix sbang for perl (#1802)Eric1-5/+7
* Perform shebang fix for all files * Fix sbang for perl scripts Otherwise perl would look at the #! line and call sbang again, resulting in an infinite loop.
2016-09-22Remove SPACK_DIRTY env var (#1818)Elizabeth Fischer3-10/+6
* Removed SPACK_DIRTY env var support. * Finished removing SPACK_DIRTY support. * Minor changes.
2016-09-22fix : stops infinite recursion for python 2.6 (#1823)Massimiliano Culpo1-2/+3
2016-09-21Reworking of `lapack_shared_libs` and similar properties (#1682)Massimiliano Culpo6-38/+303
* Turned <provider>_libs into an iterable Modifications : - added class LibraryList + unit tests - added convenience functions `find_libraries` and `dedupe` - modifed non Intel blas/lapack providers - modified packages using blas_shared_libs and similar functions * atlas : added pthread variant * intel packages : added lapack_libs and blas_libs * find_library_path : removed unused function * PR review : fixed last issues * LibraryList : added test on __add__ return type * LibraryList : added __radd__ fixed unit tests fix : failing unit tests due to missing `self` * cp2k and dependecies : fixed blas-lapack related statements in package.py
2016-09-21Fixed bug propagating --dirty flag to sub-installs. (#1625)Elizabeth Fischer4-5/+18
* Fixed bug propagating --dirty flag to sub-installs. * Fix syntax error * Allow --dirty flag to be set with SPACK_DIRTY env var. * Added dirty flag to `spack diy` and `spack setup`, as is currently in `spack install` * flake8