cornalin: modulefiles are generated with jinja2#69
Merged
alalazo merged 15 commits intoreleases/cornalinfrom Apr 26, 2017
Merged
Conversation
8ef9eff to
07386bb
Compare
2464e19 to
c68e3b9
Compare
refers spack#2902 refers spack#3173 Modifications in detail: - hooked `jinja2` into spack (but still need to fix the facade) - refactored `modules.py` into the package `spack/modules` - refactored `test/modules.py` accordingly to the item above - added templates for the three kind of module files we generate - extended lmod to multi-providers and deeper hierarchies
Modifications:
- added the entry 'template_dirs' to config.yaml
- added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default')
- added unit tests
Modifications: - factored common fixtures in conftest.py - extracted configurations from tests and put them into yaml files - fixed 'verbose' keyword in modules.yaml and corresponding tests
Modifications: - added a 'context_property' decorator - simplified file layout for tengine (python module instead of package) - added tests for tengine.Context
Modifications: - spack module refresh without `--module-type` specified tries to regenerate all known module types - spack module rm without `--module-type` specified tries to delete all known module types - added tests for the new behavior
The idea is to have only three topics at the highest level: - shell support + spack load/unload use/unuse - module file generation (a.k.a. APIs + modules.yaml) - module file maintenance (spack module refresh/rm) Module file generation will cover the entries in modules.yaml
00bbb8b to
a4885ca
Compare
c68e3b9 to
93a3f48
Compare
alalazo
added a commit
that referenced
this pull request
May 3, 2017
* modulefiles: are now generated using a template engine refers spack#2902 refers spack#3173 Modifications in detail: - hooked `jinja2` into spack (but still need to fix the facade) - refactored `modules.py` into the package `spack/modules` - refactored `test/modules.py` accordingly to the item above - added templates for the three kind of module files we generate - extended lmod to multi-providers and deeper hierarchies * template dirs in config.yaml + override mechanism for pkgs Modifications: - added the entry 'template_dirs' to config.yaml - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default') - added unit tests * modules: improved test layout and readability Modifications: - factored common fixtures in conftest.py - extracted configurations from tests and put them into yaml files - fixed 'verbose' keyword in modules.yaml and corresponding tests * simplified template engine file layout Modifications: - added a 'context_property' decorator - simplified file layout for tengine (python module instead of package) - added tests for tengine.Context * contexts can be extended from packages and modules.yaml * short description it's the first paragraph of docstrings * module refresh: changed behavior when no module type is specified Modifications: - spack module refresh without `--module-type` specified tries to regenerate all known module types - spack module rm without `--module-type` specified tries to delete all known module types - added tests for the new behavior * module file: added configure options to module files if applicable * lmod: added tests on exceptional paths of execution * python3: fixed issues with python2 vs python3 compatibility * jinja2: added external package * tcl: fixed bugs with naming_scheme and autoload. Added regression tests. * markupsafe: added external package * module tutorial: updated docs, fixed a few bugs caught in the meanwhile. * reference docs for modules: reorganized section The idea is to have only three topics at the highest level: - shell support + spack load/unload use/unuse - module file generation (a.k.a. APIs + modules.yaml) - module file maintenance (spack module refresh/rm) Module file generation will cover the entries in modules.yaml
alalazo
added a commit
that referenced
this pull request
May 5, 2017
* modulefiles: are now generated using a template engine refers spack#2902 refers spack#3173 Modifications in detail: - hooked `jinja2` into spack (but still need to fix the facade) - refactored `modules.py` into the package `spack/modules` - refactored `test/modules.py` accordingly to the item above - added templates for the three kind of module files we generate - extended lmod to multi-providers and deeper hierarchies * template dirs in config.yaml + override mechanism for pkgs Modifications: - added the entry 'template_dirs' to config.yaml - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default') - added unit tests * modules: improved test layout and readability Modifications: - factored common fixtures in conftest.py - extracted configurations from tests and put them into yaml files - fixed 'verbose' keyword in modules.yaml and corresponding tests * simplified template engine file layout Modifications: - added a 'context_property' decorator - simplified file layout for tengine (python module instead of package) - added tests for tengine.Context * contexts can be extended from packages and modules.yaml * short description it's the first paragraph of docstrings * module refresh: changed behavior when no module type is specified Modifications: - spack module refresh without `--module-type` specified tries to regenerate all known module types - spack module rm without `--module-type` specified tries to delete all known module types - added tests for the new behavior * module file: added configure options to module files if applicable * lmod: added tests on exceptional paths of execution * python3: fixed issues with python2 vs python3 compatibility * jinja2: added external package * tcl: fixed bugs with naming_scheme and autoload. Added regression tests. * markupsafe: added external package * module tutorial: updated docs, fixed a few bugs caught in the meanwhile. * reference docs for modules: reorganized section The idea is to have only three topics at the highest level: - shell support + spack load/unload use/unuse - module file generation (a.k.a. APIs + modules.yaml) - module file maintenance (spack module refresh/rm) Module file generation will cover the entries in modules.yaml
alalazo
added a commit
that referenced
this pull request
May 7, 2017
* modulefiles: are now generated using a template engine refers spack#2902 refers spack#3173 Modifications in detail: - hooked `jinja2` into spack (but still need to fix the facade) - refactored `modules.py` into the package `spack/modules` - refactored `test/modules.py` accordingly to the item above - added templates for the three kind of module files we generate - extended lmod to multi-providers and deeper hierarchies * template dirs in config.yaml + override mechanism for pkgs Modifications: - added the entry 'template_dirs' to config.yaml - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default') - added unit tests * modules: improved test layout and readability Modifications: - factored common fixtures in conftest.py - extracted configurations from tests and put them into yaml files - fixed 'verbose' keyword in modules.yaml and corresponding tests * simplified template engine file layout Modifications: - added a 'context_property' decorator - simplified file layout for tengine (python module instead of package) - added tests for tengine.Context * contexts can be extended from packages and modules.yaml * short description it's the first paragraph of docstrings * module refresh: changed behavior when no module type is specified Modifications: - spack module refresh without `--module-type` specified tries to regenerate all known module types - spack module rm without `--module-type` specified tries to delete all known module types - added tests for the new behavior * module file: added configure options to module files if applicable * lmod: added tests on exceptional paths of execution * python3: fixed issues with python2 vs python3 compatibility * jinja2: added external package * tcl: fixed bugs with naming_scheme and autoload. Added regression tests. * markupsafe: added external package * module tutorial: updated docs, fixed a few bugs caught in the meanwhile. * reference docs for modules: reorganized section The idea is to have only three topics at the highest level: - shell support + spack load/unload use/unuse - module file generation (a.k.a. APIs + modules.yaml) - module file maintenance (spack module refresh/rm) Module file generation will cover the entries in modules.yaml
alalazo
added a commit
that referenced
this pull request
May 9, 2017
* modulefiles: are now generated using a template engine refers spack#2902 refers spack#3173 Modifications in detail: - hooked `jinja2` into spack (but still need to fix the facade) - refactored `modules.py` into the package `spack/modules` - refactored `test/modules.py` accordingly to the item above - added templates for the three kind of module files we generate - extended lmod to multi-providers and deeper hierarchies * template dirs in config.yaml + override mechanism for pkgs Modifications: - added the entry 'template_dirs' to config.yaml - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default') - added unit tests * modules: improved test layout and readability Modifications: - factored common fixtures in conftest.py - extracted configurations from tests and put them into yaml files - fixed 'verbose' keyword in modules.yaml and corresponding tests * simplified template engine file layout Modifications: - added a 'context_property' decorator - simplified file layout for tengine (python module instead of package) - added tests for tengine.Context * contexts can be extended from packages and modules.yaml * short description it's the first paragraph of docstrings * module refresh: changed behavior when no module type is specified Modifications: - spack module refresh without `--module-type` specified tries to regenerate all known module types - spack module rm without `--module-type` specified tries to delete all known module types - added tests for the new behavior * module file: added configure options to module files if applicable * lmod: added tests on exceptional paths of execution * python3: fixed issues with python2 vs python3 compatibility * jinja2: added external package * tcl: fixed bugs with naming_scheme and autoload. Added regression tests. * markupsafe: added external package * module tutorial: updated docs, fixed a few bugs caught in the meanwhile. * reference docs for modules: reorganized section The idea is to have only three topics at the highest level: - shell support + spack load/unload use/unuse - module file generation (a.k.a. APIs + modules.yaml) - module file maintenance (spack module refresh/rm) Module file generation will cover the entries in modules.yaml
alalazo
added a commit
that referenced
this pull request
May 10, 2017
* modulefiles: are now generated using a template engine refers spack#2902 refers spack#3173 Modifications in detail: - hooked `jinja2` into spack (but still need to fix the facade) - refactored `modules.py` into the package `spack/modules` - refactored `test/modules.py` accordingly to the item above - added templates for the three kind of module files we generate - extended lmod to multi-providers and deeper hierarchies * template dirs in config.yaml + override mechanism for pkgs Modifications: - added the entry 'template_dirs' to config.yaml - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default') - added unit tests * modules: improved test layout and readability Modifications: - factored common fixtures in conftest.py - extracted configurations from tests and put them into yaml files - fixed 'verbose' keyword in modules.yaml and corresponding tests * simplified template engine file layout Modifications: - added a 'context_property' decorator - simplified file layout for tengine (python module instead of package) - added tests for tengine.Context * contexts can be extended from packages and modules.yaml * short description it's the first paragraph of docstrings * module refresh: changed behavior when no module type is specified Modifications: - spack module refresh without `--module-type` specified tries to regenerate all known module types - spack module rm without `--module-type` specified tries to delete all known module types - added tests for the new behavior * module file: added configure options to module files if applicable * lmod: added tests on exceptional paths of execution * python3: fixed issues with python2 vs python3 compatibility * jinja2: added external package * tcl: fixed bugs with naming_scheme and autoload. Added regression tests. * markupsafe: added external package * module tutorial: updated docs, fixed a few bugs caught in the meanwhile. * reference docs for modules: reorganized section The idea is to have only three topics at the highest level: - shell support + spack load/unload use/unuse - module file generation (a.k.a. APIs + modules.yaml) - module file maintenance (spack module refresh/rm) Module file generation will cover the entries in modules.yaml
rmsds
pushed a commit
that referenced
this pull request
Jul 30, 2018
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See spack#3183