diff options
author | Massimiliano Culpo <massimiliano.culpo@googlemail.com> | 2017-08-23 23:20:40 +0200 |
---|---|---|
committer | Todd Gamblin <tgamblin@llnl.gov> | 2017-08-23 14:20:40 -0700 |
commit | 5d7901b31252e5828eaa99babb827b5dba4eea8e (patch) | |
tree | 0d392c8b2002f2adf22771908598d95e6af587ac /.flake8 | |
parent | fa1d0a8a4d41616e4689ca0c80318269f55c5c9e (diff) | |
download | spack-5d7901b31252e5828eaa99babb827b5dba4eea8e.tar.gz spack-5d7901b31252e5828eaa99babb827b5dba4eea8e.tar.bz2 spack-5d7901b31252e5828eaa99babb827b5dba4eea8e.tar.xz spack-5d7901b31252e5828eaa99babb827b5dba4eea8e.zip |
Improve Spec literals, add Spec.from_dict() (#5151)
* Simplified Spec.__init__ signature by removing the *dep_like argument.
The `*dep_like` argument of `Spec.__init__` is used only for tests. This
PR removes it from the call signature and introduces an equivalent
fixture to be used in tests.
* Refactored ``spec_from_dict`` to be a static method of ``Spec``
The fixture ``spec_from_dict`` has been refactored to be a static method
of ``Spec``. Test code has been updated accordingly. Added tests for
exceptional paths.
* Renamed argument `unique` to `normal` + added LazySpecCache class
As requested in the review the argument `unique` of `Spec.from_literal`
has been renamed to `normal`. To avoid eager evaluations of
`Spec(spec_like)` expressions a subclass of `collections.defaultdict`
has been introduced.
* Spec object can be keys of the dictionary for a spec literal.
Added back the possibility use a spec directly as a key. This permits
to build DAGs that are partially normalized.
Diffstat (limited to '.flake8')
0 files changed, 0 insertions, 0 deletions