Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace setup.py with pyproject.toml, update actions to latest versions #1217

Merged
merged 11 commits into from
Jan 23, 2025
24 changes: 6 additions & 18 deletions .github/workflows/CI.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,15 @@ jobs:
name: Checkout Branch / Pull Request

- name: Install Mamba (Linux)
uses: mamba-org/setup-micromamba@v1
uses: mamba-org/setup-micromamba@v2
with:
environment-file: environment-dev.yml
create-args: >-
python=${{ matrix.python-version }}
if: runner.os != 'Windows'

- name: Install Mamba (Windows)
uses: mamba-org/setup-micromamba@v1
uses: mamba-org/setup-micromamba@v2
with:
environment-file: environment-dev-win.yml
create-args: >-
Expand All @@ -52,7 +52,7 @@ jobs:
run: python -m pytest -v --cov=mbuild --cov-report=xml --cov-append --cov-config=setup.cfg --color yes --pyargs mbuild

- name: Upload Coverage Report
uses: codecov/codecov-action@v4
uses: codecov/codecov-action@v5
with:
name: mBuild-Coverage
verbose: true
Expand All @@ -76,15 +76,15 @@ jobs:
name: Checkout Branch / Pull Request

- name: Install Mamba (Linux)
uses: mamba-org/setup-micromamba@v1
uses: mamba-org/setup-micromamba@v2
with:
environment-file: environment-dev.yml
create-args: >-
python=${{ matrix.python-version }}
if: runner.os != 'Windows'

- name: Install Mamba (Windows)
uses: mamba-org/setup-micromamba@v1
uses: mamba-org/setup-micromamba@v2
with:
environment-file: environment-dev-win.yml
create-args: >-
Expand All @@ -110,25 +110,13 @@ jobs:
name: Checkout Branch / Pull Request

- name: Install Mamba
uses: mamba-org/setup-micromamba@v1
uses: mamba-org/setup-micromamba@v2
with:
environment-file: environment-dev.yml
create-args: python=3.12

- name: Clone Foyer and GMSO
run: |
git clone https://github.com/mosdef-hub/foyer.git
git clone https://github.com/mosdef-hub/gmso.git

- name: Update Environment with foyer/gmso Dependencies
run: |
micromamba update --name mbuild-dev --file foyer/environment.yml
micromamba update --name mbuild-dev --file gmso/environment.yml

- name: Install Packages from Source
run: |
pip install -e foyer
pip install -e gmso
pip install -e .

- name: Run Bleeding Edge Tests
Expand Down
51 changes: 32 additions & 19 deletions environment-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,45 @@ name: mbuild-dev
channels:
- conda-forge
dependencies:
- bump2version
- codecov
- ele
- gmso>=0.9.0
- foyer>=0.11.0
- freud>=2.0.0
- garnett>=0.7.1
- gsd>=2.9
- hoomd>=3
- python>=3.9,<=3.12
- boltons
- numpy=1.26.4
- sympy
- unyt>=2.9.5
- boltons
- lark>=1.2
- lxml
- intermol
- mdtraj
- pydantic>=2
- networkx
- nglview>=3
- numpy=1.26.4
- openbabel>=3
- packmol>=20
- parmed>=3.4.3
- pip
- pre-commit
- py3Dmol
- pycifrw
- pytest
- pytest-azurepipelines
- garnett>=0.7.1
- openbabel>=3.0.0
- openff-toolkit-base >=0.11
- openmm
- gsd>=2.9
- parmed>=3.4.3
- packmol>=20
- pytest-cov
- python>=3.8
- pycifrw
- rdkit>=2021
- requests
- requests-mock
- scipy
- treelib
- codecov
- matplotlib
- ipywidgets
- ele>=0.2.0
- pre-commit
- pandas
- symengine
- python-symengine
- hoomd>=4.0,<5.0
- importlib_resources
- pip:
- git+https://github.com/mosdef-hub/gmso.git@main
- git+https://github.com/mosdef-hub/foyer.git@main
- git+https://github.com/mosdef-hub/forcefield-utilities.git@main
54 changes: 54 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
[build-system]
requires = ["setuptools>=61.2"]
build-backend = "setuptools.build_meta"

[project]
name = "mbuild"
description = "A hierarchical, component based molecule builder."
readme = "README.md"
authors = [
{name = "Janos Sallai", email = "janos.sallai@vanderbilt.edu"},
{name = "Christopher Klein", email = "christoph.klein@vanderbilt.edu"},
]
maintainers = [
{name = "Nicholas Craven", email = "nicholas.c.craven@vanderbilt.edu"},
{name = "Chris Jones", email = "chrisjones4@u.boisestate.edu"},
]
license= {text = "MIT"}
classifiers=[
"Intended Audience :: Science/Research",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Natural Language :: English",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Topic :: Scientific/Engineering :: Chemistry",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX",
"Operating System :: Unix",
"Operating System :: MacOS",
]
urls = {Homepage = "https://github.com/mosdef-hub/mbuild"}
requires-python = ">=3.9"
dynamic = ["version"]

[tool.setuptools]
zip-safe = false
include-package-data = true
license-files = ["LICENSE"]

[tool.setuptools.packages]
find = {namespaces = false}

[tool.setuptools.package-data]
mbuild = ['"utils/**"', '"lib/**"']

[tool.setuptools.dynamic]
version = {attr = "mbuild.__version__"}

[project.entry-points."mbuild.plugins"]
Alkane = "mbuild.lib.recipes.alkane:Alkane"
Monolayer = "mbuild.lib.recipes.monolayer:Monolayer"
Polymer = "mbuild.lib.recipes.polymer:Polymer"
SilicaInterface = "mbuild.lib.recipes.silica_interface:SilicaInterface"
TiledCompound = "mbuild.lib.recipes.tiled_compound:TiledCompound"
2 changes: 0 additions & 2 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,4 @@ omit =

[bumpversion:file:mbuild/__init__.py]

[bumpversion:file:setup.py]

[bumpversion:file:docs/conf.py]
106 changes: 0 additions & 106 deletions setup.py

This file was deleted.

Loading