Skip to content

Commit 7cf01be

Browse files
authored
Align package structure with scientific-python template (#16)
* style: pre-commit fixes * improve dataset handling and package data inclusion
1 parent 109e6bf commit 7cf01be

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+17569
-749
lines changed

.circleci/config.yml

Lines changed: 0 additions & 40 deletions
This file was deleted.

.copier-answers.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY
2+
_commit: 2025.01.22-32-g5e4b0c5
3+
_src_path: gh:scientific-python/cookie
4+
backend: hatch
5+
email: alexabois+magpylib@gmail.com
6+
full_name: Alexandre Boisselet
7+
license: BSD
8+
org: magpylib
9+
project_name: magpylib-material-response
10+
project_short_description: Python package extending the Magpylib library by providing
11+
magnetic field analysis for soft materials and demagnetization of hard magnets.
12+
url: https://github.com/magpylib/magpylib-material-response
13+
vcs: true

.flake8

Lines changed: 0 additions & 4 deletions
This file was deleted.

.git_archival.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
node: $Format:%H$
2+
node-date: $Format:%cI$
3+
describe-name: $Format:%(describe:tags=true,match=*[0-9]*)$

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.git_archival.txt export-subst

.github/CONTRIBUTING.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
See the [Scientific Python Developer Guide][spc-dev-intro] for a detailed
2+
description of best practices for developing scientific packages.
3+
4+
[spc-dev-intro]: https://learn.scientific-python.org/development/
5+
6+
# Quick development
7+
8+
The fastest way to start with development is to use nox. If you don't have nox,
9+
you can use `pipx run nox` to run it without installing, or `pipx install nox`.
10+
If you don't have pipx (pip for applications), then you can install with
11+
`pip install pipx` (the only case were installing an application with regular
12+
pip is reasonable). If you use macOS, then pipx and nox are both in brew, use
13+
`brew install pipx nox`.
14+
15+
To use, run `nox`. This will lint and test using every installed version of
16+
Python on your system, skipping ones that are not installed. You can also run
17+
specific jobs:
18+
19+
```console
20+
$ nox -s lint # Lint only
21+
$ nox -s tests # Python tests
22+
$ nox -s docs # Build and serve the docs
23+
$ nox -s build # Make an SDist and wheel
24+
```
25+
26+
Nox handles everything for you, including setting up an temporary virtual
27+
environment for each run.
28+
29+
# Setting up a development environment manually
30+
31+
You can set up a development environment by running:
32+
33+
```bash
34+
python3 -m venv .venv
35+
source ./.venv/bin/activate
36+
pip install -v -e .[dev]
37+
```
38+
39+
If you have the
40+
[Python Launcher for Unix](https://github.com/brettcannon/python-launcher), you
41+
can instead do:
42+
43+
```bash
44+
py -m venv .venv
45+
py -m install -v -e .[dev]
46+
```
47+
48+
# Pre-commit
49+
50+
You should prepare pre-commit, which will help you by checking that commits pass
51+
required checks:
52+
53+
```bash
54+
pip install pre-commit # or brew install pre-commit on macOS
55+
pre-commit install # Will install a pre-commit hook into the git repo
56+
```
57+
58+
You can also/alternatively run `pre-commit run` (changes only) or
59+
`pre-commit run --all-files` to check even without installing the hook.
60+
61+
# Testing
62+
63+
Use pytest to run the unit checks:
64+
65+
```bash
66+
pytest
67+
```
68+
69+
# Coverage
70+
71+
Use pytest-cov to generate coverage reports:
72+
73+
```bash
74+
pytest --cov=magpylib-material-response
75+
```
76+
77+
# Building docs
78+
79+
You can build and serve the docs using:
80+
81+
```bash
82+
nox -s docs
83+
```
84+
85+
You can build the docs only with:
86+
87+
```bash
88+
nox -s docs --non-interactive
89+
```

.github/ISSUE_TEMPLATES/bug_report.md

Lines changed: 0 additions & 46 deletions
This file was deleted.

.github/ISSUE_TEMPLATES/documentation-improvements.md

Lines changed: 0 additions & 16 deletions
This file was deleted.

.github/ISSUE_TEMPLATES/feature_request.md

Lines changed: 0 additions & 24 deletions
This file was deleted.

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
version: 2
2+
updates:
3+
# Maintain dependencies for GitHub Actions
4+
- package-ecosystem: "github-actions"
5+
directory: "/"
6+
schedule:
7+
interval: "weekly"
8+
groups:
9+
actions:
10+
patterns:
11+
- "*"

0 commit comments

Comments
 (0)