From 2982766da97ea401506a029620c15f9b9b722df1 Mon Sep 17 00:00:00 2001 From: Kayla Clements Date: Tue, 30 Apr 2024 14:27:45 -0700 Subject: [PATCH 1/3] Updating references to Read the Docs slug --- CITATION.cff | 2 +- README.md | 12 ++++++------ pyproject.toml | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index 749dec70..12c6fc35 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -93,7 +93,7 @@ identifiers: value: 10.21105/joss.06415 description: Paper description of MC/DC repository-code: 'https://github.com/CEMeNT-PSAAP/MCDC' -url: 'https://cement-psaapgithubio.readthedocs.io/en/latest/' +url: 'https://mcdc.readthedocs.io/en/latest/' abstract: >- MC/DC is a performant, scalable, and machine-portable Python-based Monte Carlo neutron transport software diff --git a/README.md b/README.md index c92fac8d..4190ada2 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ ![mcdc_logo v1](https://user-images.githubusercontent.com/26186244/173467190-74d9b09a-ef7d-4f0e-8bdf-4a076de7c43c.svg) [![Build](https://github.com/CEMeNT-PSAAP/MCDC/actions/workflows/mpi_numba_reg.yml/badge.svg)](https://github.com/CEMeNT-PSAAP/MCDC/actions/workflows/mpi_numba_reg.yml) -[![ReadTheDocs](https://readthedocs.org/projects/cement-psaapgithubio/badge/?version=latest&style=flat)](https://cement-psaapgithubio.readthedocs.org/en/latest/ ) +[![ReadTheDocs](https://readthedocs.org/projects/mcdc/badge/?version=latest&style=flat)](https://mcdc.readthedocs.org/en/latest/ ) [![License](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause) @@ -12,7 +12,7 @@ MC/DC is a performant, scalable, and machine-portable Python-based Monte Carlo neutron transport software currently developed in the Center for Exascale Monte Carlo Neutron Transport ([CEMeNT](https://cement-psaap.github.io/)). -Our documentation on installation, contribution, and a brief user guide is on [Read the Docs](https://cement-psaapgithubio.readthedocs.io/en/latest/). +Our documentation on installation, contribution, and a brief user guide is on [Read the Docs](https://mcdc.readthedocs.io/en/latest/). ## Installation @@ -22,18 +22,18 @@ For most users working on a single machine of which they are administrators, MC/ ```bash pip install mcdc ``` -For developers or users on HPC machines, we recommend that you *not* use the pip distribution and instead install MC/DC and its dependencies via the included [install script](https://cement-psaapgithubio.readthedocs.io/en/latest/install.html), which builds `mpi4py` from source and uses conda to manage your environment. *This is the most reliable way to install and configure MC/DC*. It also takes care of the [Numba patch]() and can configure the [continuous energy data library](), if you have access. +For developers or users on HPC machines, we recommend that you *not* use the pip distribution and instead install MC/DC and its dependencies via the included [install script](https://mcdc.readthedocs.io/en/latest/install.html), which builds `mpi4py` from source and uses conda to manage your environment. *This is the most reliable way to install and configure MC/DC*. It also takes care of the [Numba patch]() and can configure the [continuous energy data library](), if you have access. ### Common issues with `mpi4py` The `pip mpi4py` distribution commonly has errors when building due to incompatible local MPI dependencies it builds off of. While pip does have some remedy for this, we recommend the following: * **Mac users:** we recommend `openmpi` is [installed via homebrew](https://formulae.brew.sh/formula/open-mpi) (note that more reliable mpi4py distribution can also be [found on homebrew](https://formulae.brew.sh/formula/mpi4py)), alternatively you can use `conda` if you don't have admin privileges; * **Linux users:** we recommend `openmpi` is installed via a root package manager if possible (e.g. `sudo apt install openmpi`) or a conda distribution (e.g. `conda install openmpi`) -* **HPC users and developers on any system:** On HPC systems in particular, `mpi4py` must be built using the system's existing `mpi` installation. Installing MC/DC using the [install script](https://cement-psaapgithubio.readthedocs.io/en/latest/install.html) we've included will handle that for you by installing dependencies using conda rather than pip. It also takes care of the [Numba patch]() and can configure the [continuous energy data library](), if you have access. +* **HPC users and developers on any system:** On HPC systems in particular, `mpi4py` must be built using the system's existing `mpi` installation. Installing MC/DC using the [install script](https://mcdc.readthedocs.io/en/latest/install.html) we've included will handle that for you by installing dependencies using conda rather than pip. It also takes care of the [Numba patch]() and can configure the [continuous energy data library](), if you have access. ### Numba Config -Running MC/DC performantly in [Numba mode](#numba-mode) requires a patch to a single Numba file. If you installed MC/DC with the [install script](https://cement-psaapgithubio.readthedocs.io/en/latest/install.html), this patch has already been taken care of. If you installed via pip, we have a patch script will make the necessary changes for you: +Running MC/DC performantly in [Numba mode](#numba-mode) requires a patch to a single Numba file. If you installed MC/DC with the [install script](https://mcdc.readthedocs.io/en/latest/install.html), this patch has already been taken care of. If you installed via pip, we have a patch script will make the necessary changes for you: 1. Download the `patch.sh` file [here]() (If you've cloned MC/DC's GitHub repository, you already have this file in your MCDC/ directory). 2. In your active conda environment, run `bash patch_numba.sh`. *If you manage your environment with conda, you will not need admin privileges*. @@ -91,7 +91,7 @@ For systems that do not use SLURM (*i.e.*, a local system) try `mpiexec` or `mpi We welcome any contributions to this code base. Please keep in mind that we do take our [code of conduct](https://github.com/CEMeNT-PSAAP/MCDC/blob/main/CODE_OF_CONDUCT.md) seriously. -Our development structure is fork-based: a developer makes a personal fork of this repo, commits contributions to their personal fork, then opens a pull request when they're ready to merge their changes into the main code base. Their contributions will then be reviewed by the primary developers. For more information on how to do this, see our [contribution guide](https://cement-psaapgithubio.readthedocs.io/en/latest/contribution.html). +Our development structure is fork-based: a developer makes a personal fork of this repo, commits contributions to their personal fork, then opens a pull request when they're ready to merge their changes into the main code base. Their contributions will then be reviewed by the primary developers. For more information on how to do this, see our [contribution guide](https://mcdc.readthedocs.io/en/latest/contribution.html). ## Bugs and Issues diff --git a/pyproject.toml b/pyproject.toml index ae23d6fa..9877968a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -67,5 +67,5 @@ dependencies = [ [project.urls] Repository = "https://github.com/CEMeNT-PSAAP/MCDC" Homepage = "https://cement-psaap.github.io/" -Documentation = "https://cement-psaapgithubio.readthedocs.io/en/latest/" -Issues = "https://github.com/CEMeNT-PSAAP/MCDC/issues" \ No newline at end of file +Documentation = "https://mcdc.readthedocs.io/en/latest/" +Issues = "https://github.com/CEMeNT-PSAAP/MCDC/issues" From 2522d41d14abb96c3e110c2bf405cb0892c5283f Mon Sep 17 00:00:00 2001 From: Kayla Clements Date: Tue, 30 Apr 2024 14:29:09 -0700 Subject: [PATCH 2/3] Removed obsolete setup.py file --- setup.py | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 setup.py diff --git a/setup.py b/setup.py deleted file mode 100644 index c36fb4e6..00000000 --- a/setup.py +++ /dev/null @@ -1,9 +0,0 @@ -from setuptools import setup, find_packages - -kwargs = { - "name": "mcdc", - "version": "0.1.0", - "packages": find_packages(include=["mcdc"]), -} - -setup(**kwargs) From 3eb7ed1150bcf98353a2d4bf129d6e0705307c2b Mon Sep 17 00:00:00 2001 From: Kayla Clements Date: Tue, 30 Apr 2024 14:35:09 -0700 Subject: [PATCH 3/3] Remove upper version bound from pyproject.toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 9877968a..f94f9096 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,7 +35,7 @@ maintainers = [ description = "Monte Carlo / Dynamic Code, a pure python high performance Monte Carlo neutronics package" readme = "README.md" -requires-python = ">=3.9, <=3.11.8" +requires-python = ">=3.9.1" license = {file = "LICENSE"} keywords = ["Monte Carlo", "Nuclear", "GPU", "numba", "mpi4py", "neutron transport", "neutronics", "HPC"] classifiers = [