@@ -5,10 +5,10 @@ For Developers
55==============
66
77Developers should consult this section for detailed information relevant to development and maintenance
8- of ``fremorizer ``, after familiarizing themselves with the rest of the user-targeted documentation.
8+ of ``fremor ``, after familiarizing themselves with the rest of the user-targeted documentation.
99
1010
11- Contributing to ``fremorizer ``
11+ Contributing to ``fremor ``
1212==============================
1313
1414
@@ -19,7 +19,7 @@ Get your own copy of the code:
1919
2020.. code-block :: bash
2121
22- git clone --recursive git@github.com:ilaflott/fremorizer .git
22+ git clone --recursive git@github.com:ilaflott/fremor .git
2323
2424 Or replace with your fork's link (recommended).
2525
@@ -29,16 +29,16 @@ Local/Editable Installation
2929
3030Developers can test local changes by running ``pip install [-e] . `` inside of the root directory after
3131activating a virtual environment with ``python>=3.11 `` and all requirements. This installs the
32- ``fremorizer `` package locally with any local changes.
32+ ``fremor `` package locally with any local changes.
3333
34- Development work on ``fremorizer `` should occur within a conda environment housing ``fremorizer ``'s
34+ Development work on ``fremor `` should occur within a conda environment housing ``fremor ``'s
3535requirements, and a local copy of the repository installed with ``pip `` using the ``-e/--editable `` flag.
3636
3737.. code-block :: bash
3838
3939 # Create the conda environment from environment.yaml
4040 conda env create -f environment.yaml
41- conda activate fremorizer
41+ conda activate fremor
4242
4343 # Install in editable mode
4444 pip install -e .
@@ -48,7 +48,7 @@ Testing Your Local Changes
4848--------------------------
4949
5050There are several ways to test your efforts locally during your development cycle. A few examples and
51- ``fremorizer ``-specific recommendations are described here, but contributors are welcome to be creative
51+ ``fremor ``-specific recommendations are described here, but contributors are welcome to be creative
5252so long as they provide documentation of what they have contributed.
5353
5454All contributed code should come with a corresponding unit test.
@@ -59,12 +59,12 @@ Running CLI Calls
5959
6060Most development cycles will involve focused efforts isolated to a specific ``fremor COMMAND *ARGV ``,
6161where ``*ARGV `` stands in for a shell-style argument vector (e.g. ``-d /path/to/input -l varlist.json ``).
62- The code is housed in the ``fremorizer / `` package directory, with the ``click `` CLI entry-point in
63- ``fremorizer /fremor.py ``.
62+ The code is housed in the ``fremor / `` package directory, with the ``click `` CLI entry-point in
63+ ``fremor /fremor.py ``.
6464
6565The developer usually uses ``fremor COMMAND *ARGV `` as a test, focused on seeing the changes they are
6666introducing, developing the code until the desired result is achieved. The specific ``fremor COMMAND *ARGV ``
67- call can often become a unit test in one of the corresponding files in ``fremorizer /tests/ ``. The
67+ call can often become a unit test in one of the corresponding files in ``fremor /tests/ ``. The
6868sought-after changes should become ``assert `` conditions encoded within the unit test. Both success and
6969failure conditions should ideally be tested.
7070
@@ -74,18 +74,18 @@ Running Without ``click``
7474
7575Every ``fremor COMMAND *ARGV `` approximately maps to a single function call (a ``*_subtool `` function
7676in the corresponding module). To remove ``click `` and the CLI aspect from testing, assuming the code
77- being executed is in ``fremorizer /cmor_mixer.py `` in a function called ``cmor_run_subtool ``:
77+ being executed is in ``fremor /cmor_mixer.py `` in a function called ``cmor_run_subtool ``:
7878
7979.. code-block :: bash
8080
81- python -i -c ' from fremorizer .cmor_mixer import cmor_run_subtool; cmor_run_subtool(**args)'
81+ python -i -c ' from fremor .cmor_mixer import cmor_run_subtool; cmor_run_subtool(**args)'
8282
8383
8484 Writing ``pytest `` Unit Tests
8585~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
8686
8787If the functionality to test is that of a CLI call, tests should use the ``CliRunner `` approach shown in
88- ``fremorizer /tests/ ``. ``click ``-based CLI calls should **not ** be tested with ``subprocess.run `` within
88+ ``fremor /tests/ ``. ``click ``-based CLI calls should **not ** be tested with ``subprocess.run `` within
8989``pytest ``. See `click's testing documentation <https://click.palletsprojects.com/en/stable/testing/ >`_
9090for more information.
9191
@@ -95,17 +95,17 @@ Run the test suite:
9595
9696.. code-block :: bash
9797
98- pytest fremorizer /tests/ -v
98+ pytest fremor /tests/ -v
9999
100100
101101 Running the Linter
102102~~~~~~~~~~~~~~~~~~
103103
104- ``fremorizer `` uses ``pylint `` for code quality checks:
104+ ``fremor `` uses ``pylint `` for code quality checks:
105105
106106.. code-block :: bash
107107
108- pylint --rcfile pylintrc fremorizer /
108+ pylint --rcfile pylintrc fremor /
109109
110110
111111 Adding a New Requirement
@@ -115,7 +115,7 @@ Currently, all required packages are ``conda`` packages listed in ``environment.
115115equivalently in ``meta.yaml ``. ``conda `` packages that have a corresponding ``pip `` package should
116116also be listed in ``pyproject.toml ``.
117117
118- New dependencies for ``fremorizer `` must have a ``conda `` package available through a non-proprietary
118+ New dependencies for ``fremor `` must have a ``conda `` package available through a non-proprietary
119119``conda `` channel, preferably the open-source ``conda-forge `` channel. Only ``conda-forge `` and
120120``noaa-gfdl `` channels are used.
121121
@@ -125,10 +125,10 @@ functionality via standard-library approaches first, and be prepared to defend t
125125adding a new third-party package.
126126
127127
128- How ``fremorizer `` is Updated
128+ How ``fremor `` is Updated
129129-----------------------------
130130
131- ``fremorizer `` is published and hosted as a Conda package on the
131+ ``fremor `` is published and hosted as a Conda package on the
132132`NOAA-GFDL conda channel <https://anaconda.org/NOAA-GFDL >`_. On pushes to the ``main `` branch, the
133133package is automatically updated using the workflow defined in ``.github/workflows/publish_conda.yml ``,
134134which is equivalent to ``.github/workflows/build_conda.yml `` with an extra ``conda publish `` step.
@@ -157,7 +157,7 @@ a merge.
157157~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
158158
159159Avoid calling ``logging.basicConfig `` to re-configure logging behavior **outside ** of
160- ``fremorizer /__init__.py ``. This creates another ``logging.handler `` without resolving the ambiguity
160+ ``fremor /__init__.py ``. This creates another ``logging.handler `` without resolving the ambiguity
161161to previously defined loggers about which handler to use. If left in a PR at merge-time, this can cause
162162oddly silent logging behavior that is very tricky to debug.
163163
@@ -188,7 +188,7 @@ instances, use the following pattern to safely ``chdir`` and ``chdir`` back:
188188---------------
189189
190190In the case where non-Python files like templates, examples, and outputs are to be included in the
191- ``fremorizer `` package, ``MANIFEST.in `` can provide the solution. Ensure the file exists within the
191+ ``fremor `` package, ``MANIFEST.in `` can provide the solution. Ensure the file exists within the
192192correct folder and add a line such as ``include fremor/fileName.fileExtension ``.
193193
194194For more efficiency, if there are multiple files of the same type needed, use something like
0 commit comments