Description
In order to improve the development environment setup process, it is desired to update the instructions for configuring this environment.
Here are the goals:
- Reduce redundancy of instructions.
- Improve organization of instructions.
- After following the instructions, the local environment is configured the same as the build server environment.
Here are some differences:
- The instructions don't specify what version of modules to install, which causes the latest to be installed. However, the PySherlock configuration specifies the versions for some modules in pyproject.toml. When following the instructions currently, some of the modules that are installed are newer than when installing PySherlock.
- The Sphinx section for "Note" is not showing up the same locally compared to how it shows in GitHub. Locally, this section is missing. This is likely due to the differences in versions of installed Python modules. When building the docs, it shows a warning like this:
C:\Users\jmoody\.virtualenvs\.venv10\lib\site-packages\numpydoc\docscrape.py:421: UserWarning: Unknown section Note in the docstring of update_conductor_layer in C:\Git\pysherlock\src\ansys\sherlock\core\utils\version_check.py. self[section] = content
Here is the web page for Stackup.update_conductor_layer():
https://sherlock.docs.pyansys.com/version/stable/api/_autosummary/ansys.sherlock.core.stackup.Stackup.update_conductor_layer.html#ansys.sherlock.core.stackup.Stackup.update_conductor_layer
AC
A developer can follow the instructions and build the documentation without the above warning and the Note section shows when viewing the HTML locally.
Proposed New AC
Redundancy is reduced.
The instructions are easier to follow.
A developer can follow the instructions to install a version of Python that works for compiling the grpc files (currently, these are 3.10, 3.11, or 3.12).
The Python modules that are explicitly installed by following the instructions are the same versions as the ones that are installed on the build server.
If there are issues that remain such as the warning when building the docs, new issues are created to address them.