Skip to content
Permalink
Browse files

[DATALAD RUNCMD] git-sedi NICEMAN ReproMan

=== Do not change lines below ===
{
 "chain": [],
 "cmd": "git-sedi NICEMAN ReproMan",
 "exit": 0,
 "extra_inputs": [],
 "inputs": [],
 "outputs": [],
 "pwd": "."
}
^^^ Do not change lines above ^^^
  • Loading branch information...
yarikoptic committed Jan 17, 2019
1 parent d3b0ed0 commit 23e65fa7699c313ad3d0d83ea62eff780b31317e
Showing with 85 additions and 85 deletions.
  1. +1 −1 .travis.yml
  2. +6 −6 CONTRIBUTING.md
  3. +4 −4 COPYING
  4. +6 −6 README.md
  5. +1 −1 Singularity
  6. +1 −1 docs/source/acknowledgements.rst
  7. +3 −3 docs/source/conf.py
  8. +2 −2 docs/source/glossary.rst
  9. +1 −1 docs/source/index.rst
  10. +8 −8 docs/source/sandbox/packages.rst
  11. +1 −1 formatters.py
  12. +1 −1 reproman/__init__.py
  13. +1 −1 reproman/api.py
  14. +3 −3 reproman/cmdline/main.py
  15. +1 −1 reproman/distributions/tests/__init__.py
  16. +1 −1 reproman/distributions/tests/files/conda.yaml
  17. +2 −2 reproman/distributions/tests/test_redhat.py
  18. +1 −1 reproman/examples/tests/__init__.py
  19. +1 −1 reproman/examples/tests/test_example.py
  20. +5 −5 reproman/formats/niceman.py
  21. +1 −1 reproman/formats/tests/test_provenance.py
  22. +2 −2 reproman/interface/diff.py
  23. +2 −2 reproman/interface/execute.py
  24. +2 −2 reproman/interface/test.py
  25. +1 −1 reproman/interface/tests/files/diff_1.yaml
  26. +1 −1 reproman/interface/tests/files/diff_2.yaml
  27. +1 −1 reproman/interface/tests/files/diff_satisfies_1.yaml
  28. +1 −1 reproman/interface/tests/files/diff_satisfies_2.yaml
  29. +1 −1 reproman/interface/tests/files/diff_satisfies_unsupported.yaml
  30. +1 −1 reproman/interface/tests/files/empty.yaml
  31. +1 −1 reproman/interface/tests/files/multi_debian.yaml
  32. +1 −1 reproman/resource/base.py
  33. +1 −1 reproman/resource/session.py
  34. +1 −1 reproman/resource/tests/__init__.py
  35. +3 −3 reproman/resource/tests/test_session.py
  36. +1 −1 reproman/support/configparserinc.py
  37. +1 −1 reproman/tests/test_api.py
  38. +1 −1 reproman/tests/test_constraints.py
  39. +1 −1 reproman/ui/__init__.py
  40. +1 −1 reproman/ui/base.py
  41. +1 −1 reproman/ui/dialog.py
  42. +1 −1 reproman/ui/progressbars.py
  43. +1 −1 reproman/ui/tests/__init__.py
  44. +1 −1 reproman/ui/tests/test_base.py
  45. +1 −1 reproman/ui/tests/test_dialog.py
  46. +2 −2 setup.py
  47. +2 −2 setup_support.py
  48. +1 −1 tools/mkcontrib
@@ -1,5 +1,5 @@
# vim ft=yaml
# travis-ci.org definition for NICEMAN build
# travis-ci.org definition for ReproMan build
language: python
sudo: required
#dist: precise
@@ -1,4 +1,4 @@
Contributing to NICEMAN
Contributing to ReproMan
========================

[gh-reproman]: http://github.com/ReproNim/reproman
@@ -25,13 +25,13 @@ Files organization
- `bash-completions` - bash and zsh completion setup for reproman (just
`source` it)
- `tools/` contains helper utilities used during development, testing, and
benchmarking of NICEMAN. Implemented in any most appropriate language
benchmarking of ReproMan. Implemented in any most appropriate language
(Python, bash, etc.)

How to contribute
-----------------

The preferred way to contribute to the NICEMAN code base is
The preferred way to contribute to the ReproMan code base is
to fork the [main repository][gh-reproman] on GitHub. Here
we outline the workflow used by the developers:

@@ -94,14 +94,14 @@ we outline the workflow used by the developers:
also use `TST` for commits concerned solely with tests, and `BK` to signal
that the commit causes a breakage (e.g. of tests) at that point. Multiple
entries could be listed joined with a `+` (e.g. `rf+doc-`). See `git log` for
examples. If a commit closes an existing NICEMAN issue, then add to the end
examples. If a commit closes an existing ReproMan issue, then add to the end
of the message `(Closes #ISSUE_NUMER)`
5. Push to GitHub with:
git push -u gh-YourLogin nf-my-feature
Finally, go to the web page of your fork of the NICEMAN repo, and click
Finally, go to the web page of your fork of the ReproMan repo, and click
'Pull request' (PR) to send your changes to the maintainers for review. This
will send an email to the committers. You can commit new changes to this branch
and keep pushing to your remote -- github automagically adds them to your
@@ -304,7 +304,7 @@ package to ease pycharm installation even further.
Easy Issues
-----------

A great way to start contributing to NICEMAN is to pick an item from the list of
A great way to start contributing to ReproMan is to pick an item from the list of
[Easy issues](https://github.com/ReproNim/reproman/labels/easy) in the issue
tracker. Resolving these issues allows you to start contributing to the project
without much prior knowledge. Your assistance in this area will be greatly
@@ -1,6 +1,6 @@
# Main Copyright/License

NICEMAN, including all examples, code snippets and attached
ReproMan, including all examples, code snippets and attached
documentation is covered by the MIT license. A good portion of the source
code base was bootstrapped with materials from the DataLad project
(http://datalad.org)
@@ -9,7 +9,7 @@ code base was bootstrapped with materials from the DataLad project

Copyright (c) 2013-2016 Yaroslav Halchenko
2015-2016 DataLad Team
2016- NICEMAN Team
2016- ReproMan Team

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -29,12 +29,12 @@ code base was bootstrapped with materials from the DataLad project
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

See CONTRIBUTORS file for a full list of contributors within NICEMAN code-base.
See CONTRIBUTORS file for a full list of contributors within ReproMan code-base.


# 3rd Party Code

Some code distributed within NICEMAN was not developed by the NICEMAN team,
Some code distributed within ReproMan was not developed by the ReproMan team,
hence you should adhere to the copyright and license terms of respective
authors if you are to use corresponding parts.

@@ -1,13 +1,13 @@
# NICEMAN
# ReproMan

NICEMAN aims to simplify creation and management of computing environments
ReproMan aims to simplify creation and management of computing environments
in Neuroimaging. While concentrating on Neuroimaging use-cases, it is
by no means is limited to this field of science and tools will find
utility in other fields as well.

# Status

NICEMAN is under initial rapid development to establish core functionality. While
ReproMan is under initial rapid development to establish core functionality. While
the code base is still growing the focus is increasingly shifting towards
robust and safe operation with a sensible API. There has been no major public
release yet, as organization and configuration are still subject of
@@ -23,14 +23,14 @@ internals and/or contributing to the project.

* [![codecov.io](https://codecov.io/github/ReproNim/reproman/coverage.svg?branch=master)](https://codecov.io/github/ReproNim/reproman?branch=master)

* [![Documentation](https://readthedocs.org/projects/NICEMAN/badge/?version=latest)](http://reproman.rtfd.org)
* [![Documentation](https://readthedocs.org/projects/ReproMan/badge/?version=latest)](http://reproman.rtfd.org)

# Installation

## Debian-based systems

On Debian-based systems we recommend to enable [NeuroDebian](http://neuro.debian.net)
from which we will soon provide recent releases of NICEMAN (as soon as
from which we will soon provide recent releases of ReproMan (as soon as
there is something to release). We will also provide backports of
all necessary packages from that repository.

@@ -59,7 +59,7 @@ depend upon. Additionally, if you would
like to develop and run our tests battery see [CONTRIBUTING.md](CONTRIBUTING.md)
regarding additional dependencies.

Later we will provide bundled installations of NICEMAN across popular
Later we will provide bundled installations of ReproMan across popular
platforms.


@@ -3,7 +3,7 @@ From:repronim/simple_workflow:latest

# so if image is executed we just enter the environment
%runscript
echo "Welcome to the NICEMAN development environment."
echo "Welcome to the ReproMan development environment."
echo "Reprozip pre-installed via pip. "
echo "Niceman git repo under /opt/reproman and installed for development systemwide"
/bin/bash
@@ -5,7 +5,7 @@
Acknowledgments
***************

NICEMAN development is being performed as part of an NIH_ funded
ReproMan development is being performed as part of an NIH_ funded
(1P41EB019936-01A1_) "Center for Reproducible Neuroimaging Computation
(CRNC)". It's initial development aims to provide a suite of tools for
management of computational environments, which is the TR&D 3 sub-project of
@@ -75,8 +75,8 @@

# General information about the project.
project = u'reproman'
copyright = u'2016, NICEMAN team (in parts DataLad Team)'
author = u'NICEMAN team'
copyright = u'2016, ReproMan team (in parts DataLad Team)'
author = u'ReproMan team'

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
@@ -252,7 +252,7 @@
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'reproman.tex', u'reproman Documentation',
u'NICEMAN team', 'manual'),
u'ReproMan team', 'manual'),
]

# The name of an image file (relative to this directory) to place at the top of
@@ -13,8 +13,8 @@
Glossary
********

NICEMAN uses terminology which is collated from various technologies. This
glossary provides definitions for terms used in the NICEMAN documentation
ReproMan uses terminology which is collated from various technologies. This
glossary provides definitions for terms used in the ReproMan documentation
and API, and provides additional references where to seek more information

.. glossary::
@@ -1,4 +1,4 @@
NICEMAN |---| tools for reproducible neuroimaging
ReproMan |---| tools for reproducible neuroimaging
**************************************************

.. toctree::
@@ -1,7 +1,7 @@
High-level Package Handling (and ReproZip Architecture Discussion)
******************************************************************

What NICEMAN aims (not) to be
What ReproMan aims (not) to be
==============================

We want to leverage existing solutions (such as existing containers, cloud
@@ -21,7 +21,7 @@ distribution.

Construction of such environments would heavily depend on specification of
"packages" which contain sufficient information to reconstruct and execute in
the environment. Such specifications could be constructed manually, by NICEMAN
the environment. Such specifications could be constructed manually, by ReproMan
from loose human description, or via automated provenance collection of "shell"
command. They also should provide sufficient expressive power to be able to
tune them quickly for most common cases (e.g. upgrade from release X to
@@ -67,16 +67,16 @@ packages (yum & apt-get) will need to be installed first, enabling other
package managers (pip, conda, npm) to then run and build upon the base
packages.

The fundamental challenge of NICEMAN's "trace" ability is to identify and
The fundamental challenge of ReproMan's "trace" ability is to identify and
record the package managers, distributions, and packages from the files used in
an experiment. Then to "create" an environment, NICEMAN needs to reinstall the
an experiment. Then to "create" an environment, ReproMan needs to reinstall the
packages from the specification (ideally matching as many properties, such as
version, architecture, size, and hash as possible).

Package Management and Environment Configuration
------------------------------------------------

Here we discuss package managers and key distributions that NICEMAN should
Here we discuss package managers and key distributions that ReproMan should
cover (and list other potential package managers to consider)

OS Package Managers
@@ -97,9 +97,9 @@ stand on their own but depend upon specific OS distributions or configurations:

Finally, OS package managers (and related repositories and distributions) are
typically used to install the language-specific package managers described in
the next section. Therefore, NICEMAN "create" will need to install OS packages
the next section. Therefore, ReproMan "create" will need to install OS packages
first, followed by language-specific packages. We may need to allow the
NICEMAN environment specification to allow the user to order the package
ReproMan environment specification to allow the user to order the package
installation across multiple package managers to ensure resolution of
dependencies.

@@ -158,7 +158,7 @@ Provisioners

Provisioners allow you to automatically install software, alter configurations,
and maintain files across multiple machines from a central server (or
configuration specification). NICEMAN may need to both recognize its use to
configuration specification). ReproMan may need to both recognize its use to
create an environment and may have an opportunity to use any of the following
provisioners to recreate an environment:

@@ -1,6 +1,6 @@
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
#
# See COPYING file distributed along with the NICEMAN package for the
# See COPYING file distributed along with the ReproMan package for the
# copyright and license terms.
#
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
@@ -6,7 +6,7 @@
# copyright and license terms.
#
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
"""NICEMAN - Neuroimaging Computation Environments Manager
"""ReproMan - Neuroimaging Computation Environments Manager
It is a part of the ReproNim (Reproducible Neuroimaging) suite of tools
to ease construction and execution of computation environments based on the
@@ -6,7 +6,7 @@
# copyright and license terms.
#
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
"""Python NICEMAN API exposing user-oriented commands (also available via CLI)"""
"""Python ReproMan API exposing user-oriented commands (also available via CLI)"""


def _generate_func_api():
@@ -30,7 +30,7 @@

def _license_info():
return """\
Copyright (c) 2016- NICEMAN developers (parts 2013-2016 DataLad developers)
Copyright (c) 2016- ReproMan developers (parts 2013-2016 DataLad developers)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -71,7 +71,7 @@ def setup_parser(
parser = argparse.ArgumentParser(
fromfile_prefix_chars='@',
description=dedent_docstring("""\
NICEMAN aims to ease construction and execution of computation environments
ReproMan aims to ease construction and execution of computation environments
based on collected provenance data."""),
epilog='"Nicely Manage Your Environments"',
formatter_class=formatter_class,
@@ -101,7 +101,7 @@ def setup_parser(

parser.add_argument(
"-c", "--config", metavar="CONFIG", action="append",
help="""path to NICEMAN configuration file. This option can be given
help="""path to ReproMan configuration file. This option can be given
multiple times, in which case values in the later files override
previous ones.""")

@@ -2,7 +2,7 @@
# ex: set sts=4 ts=4 sw=4 noet:
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
#
# See COPYING file distributed along with the NICEMAN package for the
# See COPYING file distributed along with the ReproMan package for the
# copyright and license terms.
#
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
@@ -1,4 +1,4 @@
# NICEMAN Environment Configuration File
# ReproMan Environment Configuration File
version: 0.0.1
distributions:
- name: conda
@@ -36,8 +36,8 @@ def docker_container():
def centos_spec():
tmp = tempfile.NamedTemporaryFile(delete=False)
with open(tmp.name, 'w') as f:
f.write("""# NICEMAN Environment Configuration File
# This file was created by NICEMAN 0.0.5 on 2018-05-23 22:03:22.820177
f.write("""# ReproMan Environment Configuration File
# This file was created by ReproMan 0.0.5 on 2018-05-23 22:03:22.820177
version: 0.0.1
distributions:
- name: redhat
@@ -2,7 +2,7 @@
# ex: set sts=4 ts=4 sw=4 noet:
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
#
# See COPYING file distributed along with the NICEMAN package for the
# See COPYING file distributed along with the ReproMan package for the
# copyright and license terms.
#
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
@@ -2,7 +2,7 @@
# ex: set sts=4 ts=4 sw=4 noet:
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
#
# See COPYING file distributed along with the NICEMAN package for the
# See COPYING file distributed along with the ReproMan package for the
# copyright and license terms.
#
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
@@ -7,7 +7,7 @@
#
# ## ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ##
"""
Plugin support for provenance YAML files following NICEMAN spec.
Plugin support for provenance YAML files following ReproMan spec.
"""
from __future__ import absolute_import
@@ -37,7 +37,7 @@

class NicemanProvenance(Provenance):
"""
Parser for NICEMAN Spec (YAML specification)
Parser for ReproMan Spec (YAML specification)
"""

@classmethod
@@ -275,8 +275,8 @@ def write(cls, output, spec):

utils.safe_write(
output,
("# NICEMAN Environment Configuration File\n"
"# This file was created by NICEMAN {0} on {1}\n").format(
("# ReproMan Environment Configuration File\n"
"# This file was created by ReproMan {0} on {1}\n").format(
reproman.__version__, datetime.datetime.now()))

#c = "\n# Runs: Commands and related environment variables\n\n"
@@ -330,7 +330,7 @@ def spec_to_dict(spec):
write_config_key(output, envconfig, "other_files", c)
if envconfig:
utils.safe_write(output, "\n# Other ReproZip keys (not used by NICEMAN) \n\n")
utils.safe_write(output, "\n# Other ReproZip keys (not used by ReproMan) \n\n")
utils.safe_write(output, yaml.safe_dump(envconfig,
encoding="utf-8",
allow_unicode=True))
@@ -15,7 +15,7 @@

def test_get_distributions(demo1_spec):

# Test reading the distributions from the NICEMAN spec file.
# Test reading the distributions from the ReproMan spec file.
provenance = Provenance.factory(demo1_spec, 'reproman')

with swallow_logs(new_level=logging.DEBUG) as log:
Oops, something went wrong.

0 comments on commit 23e65fa

Please sign in to comment.
You can’t perform that action at this time.