Skip to content

Commit 46fa218

Browse files
authored
Merge pull request #350 from cyndy-llnl/llnl-edits
Copyedits for grammar and standardization
2 parents 907a126 + db1b9f7 commit 46fa218

File tree

14 files changed

+149
-155
lines changed

14 files changed

+149
-155
lines changed

CONTRIBUTING.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ details how to contribute in a standardized and efficient manner.
88

99
## Git Workflow Summary
1010

11-
- Ensure that you've opened an Issue on Github and consensus around the
12-
solution has be reached.
11+
- Ensure that you've opened an Issue on GitHub and consensus around the
12+
solution has been reached.
1313
- Minor changes (e.g., grammatical fixes) do not require an Issue first.
14-
- Make a new branch for each separable set of changes["one task, one
15-
branch"](https://mail.python.org/pipermail/ipython-dev/2010-October/005632.html).
16-
- [Each commit should make one change](https://dev.to/ruanbrandao/how-to-make-good-git-commits-256k).
17-
to aide reviewing and (in the worst case) simplify reverting it in the future.
14+
- Make a new branch for each separable set of changes["one task, one
15+
branch."](https://mail.python.org/pipermail/ipython-dev/2010-October/005632.html).
16+
- [Each commit should make one change](https://dev.to/ruanbrandao/how-to-make-good-git-commits-256k)
17+
to aid reviewing and (in the worst case) simplify reverting it in the future.
1818
- A patch commit message should consist of a single short (less than 50
1919
character) sentence summarizing the change, optionally followed by a blank line
2020
and then a more thorough description.
@@ -25,16 +25,16 @@ details how to contribute in a standardized and efficient manner.
2525
- If you do find yourself merging from upstream, consider [Rebasing on
2626
upstream](https://matplotlib.org/stable/devel/gitwash/development_workflow.html#rebase-on-trunk).
2727
- Submit a Pull Request from your feature branch against upstream.
28-
- Use the Draft PR feature on Github or title your PR with `WIP` if your PR is
28+
- Use the Draft PR feature on GitHub or title your PR with `WIP` if your PR is
2929
not ready for a complete review immediately upon submission.
30-
- Ask on the [Exaworks slack](https://exaworks.slack.com) if you get stuck.
30+
- Ask on the [Exaworks Slack](https://exaworks.slack.com) if you get stuck.
3131

3232

3333
## Pull Request (PR) Merging Process
3434

3535
- PR reviews should be timely. Both reviewer and PR issuer should make a good
3636
attempt at resolving the conversation as quickly as possible.
37-
- PR reviews exist to check obvious things aren't missed, not to achieve
37+
- PR reviews exist to check that obvious things aren't missed, not to achieve
3838
perfection.
3939
- A PR is eligible for merging if it has at least one approval from a
4040
project maintainer, no outstanding requested changes or discussions, and passes
@@ -55,16 +55,16 @@ under-the-hood. PEP8 compliance is also verified as part of the CI by `flake8`.
5555

5656
## Type Annotations
5757

58-
As much python code in this repo as is feasible should include type annotations.
58+
As much Python code in this repo as is feasible should include type annotations.
5959
These type annotations can then be ingested and checked by `mypy`, which can be
6060
run with `make typecheck` and `make checks`.
6161

6262
## Docstrings
6363

64-
As many public python interfaces in this repo as is feasible should
64+
As many public Python interfaces in this repo as is feasible should
6565
include docstring documentation. All docstrings should follow the
6666
[numpy format](https://numpydoc.readthedocs.io/en/latest/format.html). These
6767
docstrings are automatically parsed by Sphinx and turned into html-based
6868
documentation hosted on readthedocs. Document generation can be run locally
6969
with `make docs`. For more details about building the documentation, please
70-
see [`README-dev`][README-dev.md].
70+
see [`README-dev`](README-dev.md).

QuickStart.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Quick start guide
1+
# Quick Start Guide
22

33
This document will guide you through the install procedure and your first hello world example.
44

@@ -17,9 +17,9 @@ If you have conda installed you might want to start from a fresh environment. Th
1717
2. `conda activate psij`
1818

1919

20-
Install psij from the github repository:
20+
Install psij from the GitHub repository:
2121

22-
1. Clone repository into your working directory:
22+
1. Clone the repository into your working directory:
2323

2424
`git clone https://github.com/ExaWorks/psij-python.git`
2525

@@ -32,15 +32,15 @@ Install psij from the github repository:
3232

3333

3434

35-
## Hello world
35+
## Hello World
3636

3737
**Requirements**
3838
- python3.7
39-
- job executioner, e.g. slurm in this example
39+
- Job executor, e.g. Slurm in this example
4040

4141
**Steps**
4242

43-
1. Create a file *my-workflow.py* and copy and paste the code below:
43+
1. Create a file *my-workflow.py* and copy and paste this code:
4444

4545
```python
4646

@@ -82,7 +82,6 @@ for i in range(N):
8282
jobs[i].wait()
8383

8484
```
85-
2. In this example the number of jobs is 1. Set *N* to the number of jobs you want to run and save file.
85+
2. In this example the number of jobs is 1. Set *N* to the number of jobs you want to run and save the file.
8686

8787
3. `python my-workflow.py`
88-

README-dev.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
There are two ways to build the documentation. One is the plain one, where
66
the plain Sphinx output is desired, and the other is the themed version that
7-
is meant to integrate with the web site.
7+
is meant to integrate with the website.
88

99
!!! Note
1010

@@ -30,15 +30,15 @@ The output will be in `docs/.build`
3030

3131
### Building the Themed Documentation
3232

33-
This builds the themed version of the docs as well as the web site. The steps
33+
This builds the themed version of the docs as well as the website. The steps
3434
are:
3535

3636
1. Make sure you have the dependencies installed:
3737
```sh
3838
pip install -r requirements-docs.txt
3939
```
4040

41-
2. Build the web site, which builds the themed version of the documentation
41+
2. Build the website, which builds the themed version of the documentation
4242
automatically:
4343
```
4444
web/build.sh
@@ -62,16 +62,17 @@ which will output something like this:
6262
Server running... press ctrl-c to stop.
6363
```
6464
65+
6566
Pointing your web browser to the URL printed by Jekyll will show the PSI/J
6667
web site. The themed documentation will be found under the "Documentation"
6768
tab.
6869
6970
70-
### Release process
71+
### Release Process
7172
7273
Here are the steps for putting out a fresh release to Pypi.
7374
74-
1. Create a new branch from main, and make release specific updates:
75+
1. Create a new branch from main and make release specific updates:
7576
* Update `src/psij/version.py` to the new version number
7677
7778
2. Use the standard PR process and get changes from the above step merged to main.
@@ -80,6 +81,6 @@ Here are the steps for putting out a fresh release to Pypi.
8081
setup tokens on your machine.
8182
8283
4. Run `make VERSION="version string" tag-and-release`. This will:
83-
1. Create and push tags to github
84-
2. Build the package
85-
3. Push built package to Pypi.
84+
* Create and push tags to GitHub.
85+
* Build the package.
86+
* Push built package to Pypi.

README-testing.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@ are uploaded to a test aggregation service. The compatibility of various
1010
PSI/J branches with various resources can then be assessed and is
1111
available at https://testing.exaworks.org
1212

13-
How to run tests
13+
How to Run Tests
1414
================
1515

1616
There are a number of ways to run tests. Invoking `pytest` directly,
17-
running the integration tests and through `cron` (or a similar tool).
17+
running the integration tests, and through `cron` (or a similar tool).
1818

19-
Setting up an automated testing job
19+
Setting up an Automated Testing Job
2020
===================================
2121

22-
This is the preferred way of running the tests since it allows the PSI/J
22+
This is the preferred way of running tests since it allows the PSI/J
2323
team to keep a constant eye on the state of the library on various
2424
resources. To set up the Cron job (or an alternative method), you can either
2525
use the provided setup script:
@@ -37,7 +37,7 @@ virtual environment, please run the relevant commands before invoking
3737
`psij-ci-setup`.
3838

3939

40-
Testing with the CI runner
40+
Testing with the CI Runner
4141
==========================
4242

4343
The CI runner is a convenience script which can clone the PSI/J
@@ -106,4 +106,3 @@ or, using `make`, prefix all options with a double dash ("--"):
106106
Care must, however, be taken since it is impossible to preserve
107107
whitespace and certain special characters (such as the double quotes)
108108
when passing arguments through `make`.
109-

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ documentation](https://exaworks.org/psij-python/#docs).
1414

1515
## Introduction
1616

17-
1. [Quick start guide](QuickStart.md)
18-
2. [Workflow examples](scripts/WORKFLOW-EXAMPLES.md)
19-
3. [Setting up tests](README-testing.md)
20-
4. [How to contribute](CONTRIBUTING.md)
21-
5. [Building the documentation](README-dev.md)
17+
1. [Quick Start Guide](QuickStart.md)
18+
2. [Workflow Examples](scripts/WORKFLOW-EXAMPLES.md)
19+
3. [Setting up Tests](README-testing.md)
20+
4. [How to Contribute](CONTRIBUTING.md)
21+
5. [Building the Documentation](README-dev.md)

docs/api.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ The PSI/J API
44
The most important classes in this library are ``Job`` and ``JobExecutor``,
55
followed by ``Launcher``.
66

7-
The Job class and its modifiers
7+
The Job Class and Its Modifiers
88
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
99

1010
The Job-related classes listed in this section (``Job``, ``JobSpec``,
1111
``ResourceSpec``, and ``JobAttributes``) are independent of
1212
executor implementations. The authors strongly recommend that users
13-
program against these classes, rather than adding executor-specific
13+
program against these classes rather than adding executor-specific
1414
configuration options, to the extent possible.
1515

1616
.. autoclass:: psij.Job
@@ -25,15 +25,15 @@ configuration options, to the extent possible.
2525
:members:
2626
:noindex:
2727

28-
Job modifiers
28+
Job Modifiers
2929
^^^^^^^^^^^^^
3030

3131
There can be a lot of configuration information that goes into each
3232
resource manager job. Its walltime, partition/queue, the number of nodes
3333
it needs, what kind of nodes, what quality of service the job requires, and
3434
so on.
3535

36-
PSI/J splits those three attributes into three groups: one for generic
36+
PSI/J splits those attributes into three groups: one for generic
3737
POSIX information, one for resource information, and one for resource manager
3838
scheduling policies.
3939

@@ -59,15 +59,15 @@ Executors are concrete implementations of mechanisms that execute jobs.
5959
To get an instance of a specific executor, call
6060
:meth:`JobExecutor.get_instance(name) <psij.job_executor.JobExecutor.get_instance>`,
6161
with ``name`` being one of the installed executor names. Alternatively, directly
62-
instantiate the executor, e.g.
62+
instantiate the executor, e.g.:
6363

6464
.. code-block:: python
6565
6666
from psij.executors.flux import FluxJobExecutor
6767
6868
ex = FluxJobExecutor()
6969
70-
Rather than
70+
Rather than:
7171

7272
.. code-block:: python
7373
@@ -152,15 +152,15 @@ are wrappers around the job executable which can provide additional
152152
features, such as setting up an MPI environment, starting a copy of the
153153
job executable on each allocated node, etc. To get a launcher instance,
154154
call :meth:`Launcher.get_instance(name) <psij.launcher.Launcher.get_instance>`
155-
with ``name`` being the name of a launcher. Like job executors, above,
155+
with ``name`` being the name of a launcher. Like job executors,
156156
launchers are plugins and can come from various places. To obtain a list
157157
of launchers, you can run:
158158

159159
.. code-block:: shell
160160
161161
$ python -m psij plugins
162162
163-
Launcher base class
163+
Launcher Base Class
164164
^^^^^^^^^^^^^^^^^^^
165165

166166
Like the executor, the ``Launcher`` base class is abstract, but offers

docs/development/contributing.rst

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ to create issues and pull requests. Please follow the
1212
`contributing guide <https://github.com/ExaWorks/psij-python/blob/main/CONTRIBUTING.md>`_.
1313

1414
Please note that many high-level design questions may be better discussed in
15-
the `PSI/J design repo <https://github.com/ExaWorks/job-api-spec>`_, rather than the Python library implementation
16-
linked to above.
15+
the `PSI/J design repo <https://github.com/ExaWorks/job-api-spec>`_, rather than the Python library implementation.
1716

1817
Feel free to chat with the developers on our `Slack <https://exaworks.slack.com>`_!
1918

@@ -26,7 +25,7 @@ Once you have cloned the code and installed the dependencies
2625
suite with ``make tests``. To run the style and type checks, run
2726
``make checks``.
2827

29-
The testing dashboard website
28+
The Testing Dashboard Website
3029
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3130

3231
To record your test results to PSI/J's public testing dashboard,

docs/development/programming.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ This is an abstract base class for submit-script based executors. It assumes
9292
a Local Resource Manager (LRM) that allows job submission by pointing a
9393
*submit* command (a tool accessible through a standard POSIX `exec()`) to a
9494
file that contains all relevant job information. It also assumes that there
95-
exist commands for cancelling the job, and for querying for the status of one
95+
exist commands for cancelling the job and for querying for the status of one
9696
or more jobs previously submitted.
9797

9898
The general workflow used by the batch scheduler executor to submit a job is as
@@ -151,7 +151,7 @@ standard streams of the actual launcher tool, which is assumed to properly
151151
aggregate the output streams of the job ranks.
152152

153153
In addition to the functions above, PSI/J launchers also take care of invoking
154-
the pre and post launch scripts.
154+
the pre- and post-launch scripts.
155155

156156
Since script based launchers are interchangeable, they must have a well
157157
defined interface. This interface consists of:
@@ -175,5 +175,5 @@ defined interface. This interface consists of:
175175
Writing a custom script based launcher can be as easy as subclassing
176176
:class:`~psij.launchers.script_based_launcher.ScriptBasedLauncher` and passing
177177
a launcher script path to the base class constructor. For example, see the
178-
`MPI launcher class <https://github.com/ExaWorks/psij-python/blob/main/src/psij/launchers/mpirun.py>` and the
179-
`MPI launcher script <https://github.com/ExaWorks/psij-python/blob/main/src/psij/launchers/scripts/mpi_launch.sh>`.
178+
`MPI launcher class <https://github.com/ExaWorks/psij-python/blob/main/src/psij/launchers/mpirun.py>`_ and the
179+
`MPI launcher script <https://github.com/ExaWorks/psij-python/blob/main/src/psij/launchers/scripts/mpi_launch.sh>`_.

0 commit comments

Comments
 (0)