hklpy2 0.0.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- hklpy2-0.0.4/.github/dependabot.yml +11 -0
- hklpy2-0.0.4/.github/workflows/code.yml +120 -0
- hklpy2-0.0.4/.github/workflows/docs.yml +65 -0
- hklpy2-0.0.4/.github/workflows/pypi.yml +48 -0
- hklpy2-0.0.4/.gitignore +87 -0
- hklpy2-0.0.4/LICENSE +48 -0
- hklpy2-0.0.4/MANIFEST.in +2 -0
- hklpy2-0.0.4/PKG-INFO +103 -0
- hklpy2-0.0.4/README.md +14 -0
- hklpy2-0.0.4/docs/Makefile +20 -0
- hklpy2-0.0.4/docs/make.bat +35 -0
- hklpy2-0.0.4/docs/requirements.txt +5 -0
- hklpy2-0.0.4/docs/source/conf.py +89 -0
- hklpy2-0.0.4/docs/source/index.rst +45 -0
- hklpy2-0.0.4/docs/source/license.rst +7 -0
- hklpy2-0.0.4/docs/source/substitutions.txt +11 -0
- hklpy2-0.0.4/environment.yml +22 -0
- hklpy2-0.0.4/hklpy2/__init__.py +25 -0
- hklpy2-0.0.4/hklpy2/backends/__init__.py +19 -0
- hklpy2-0.0.4/hklpy2/backends/hkl_backend.py +14 -0
- hklpy2-0.0.4/hklpy2/backends/tests/__init__.py +0 -0
- hklpy2-0.0.4/hklpy2/backends/tests/test_hkl_backend.py +6 -0
- hklpy2-0.0.4/hklpy2/tests/__init__.py +0 -0
- hklpy2-0.0.4/hklpy2/tests/test_solver.py +5 -0
- hklpy2-0.0.4/hklpy2.egg-info/PKG-INFO +103 -0
- hklpy2-0.0.4/hklpy2.egg-info/SOURCES.txt +29 -0
- hklpy2-0.0.4/hklpy2.egg-info/dependency_links.txt +1 -0
- hklpy2-0.0.4/hklpy2.egg-info/requires.txt +12 -0
- hklpy2-0.0.4/hklpy2.egg-info/top_level.txt +1 -0
- hklpy2-0.0.4/pyproject.toml +101 -0
- hklpy2-0.0.4/setup.cfg +4 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Set update schedule for GitHub Actions
|
|
2
|
+
# https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
|
|
3
|
+
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
|
|
4
|
+
|
|
5
|
+
version: 2
|
|
6
|
+
updates:
|
|
7
|
+
- package-ecosystem: "github-actions"
|
|
8
|
+
directory: "/"
|
|
9
|
+
schedule:
|
|
10
|
+
# Check for updates to GitHub Actions every week
|
|
11
|
+
interval: "weekly"
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
name: Unit Tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
# Triggers the workflow on push or pull request events but only for the main branch
|
|
5
|
+
push:
|
|
6
|
+
branches:
|
|
7
|
+
- main
|
|
8
|
+
pull_request:
|
|
9
|
+
branches:
|
|
10
|
+
- main
|
|
11
|
+
workflow_dispatch: # allow manual triggering
|
|
12
|
+
|
|
13
|
+
defaults:
|
|
14
|
+
run:
|
|
15
|
+
shell: bash -l {0}
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
|
|
19
|
+
# lint:
|
|
20
|
+
# name: Code style
|
|
21
|
+
# runs-on: ubuntu-latest
|
|
22
|
+
|
|
23
|
+
# steps:
|
|
24
|
+
# - uses: actions/checkout@v4
|
|
25
|
+
|
|
26
|
+
# - uses: actions/setup-python@v2
|
|
27
|
+
|
|
28
|
+
# - name: Install Dependencies
|
|
29
|
+
# run: |
|
|
30
|
+
# python -m pip install --upgrade pip
|
|
31
|
+
# pip install flake8
|
|
32
|
+
|
|
33
|
+
# - name: Run flake8
|
|
34
|
+
# run: |
|
|
35
|
+
# flake8
|
|
36
|
+
|
|
37
|
+
test-matrix:
|
|
38
|
+
name: Python ${{ matrix.python-version }}
|
|
39
|
+
# needs: lint
|
|
40
|
+
runs-on: ubuntu-latest
|
|
41
|
+
strategy:
|
|
42
|
+
matrix:
|
|
43
|
+
python-version:
|
|
44
|
+
- "3.10" # not 3.10 which truncates to 3.1
|
|
45
|
+
- "3.11"
|
|
46
|
+
- "3.12"
|
|
47
|
+
max-parallel: 5
|
|
48
|
+
|
|
49
|
+
steps:
|
|
50
|
+
- uses: actions/checkout@v4
|
|
51
|
+
|
|
52
|
+
- name: Create Python ${{ matrix.python-version }} environment
|
|
53
|
+
uses: mamba-org/provision-with-micromamba@main
|
|
54
|
+
# use main branch to enable choice of channel-priority
|
|
55
|
+
with:
|
|
56
|
+
cache-env: true
|
|
57
|
+
cache-env-key: env-key-${{ matrix.python-version }}
|
|
58
|
+
channel-priority: flexible
|
|
59
|
+
environment-file: environment.yml
|
|
60
|
+
environment-name: anaconda-test-env-py-${{ matrix.python-version }}
|
|
61
|
+
extra-specs: |
|
|
62
|
+
pytest
|
|
63
|
+
python=${{ matrix.python-version }}
|
|
64
|
+
pyyaml
|
|
65
|
+
ruamel_yaml
|
|
66
|
+
yaml
|
|
67
|
+
setuptools-scm
|
|
68
|
+
|
|
69
|
+
- name: Install code coverage requirements by pip
|
|
70
|
+
run: |
|
|
71
|
+
# https://github.com/pradyunsg/furo/discussions/308#discussioncomment-3064061
|
|
72
|
+
pip install coverage coveralls
|
|
73
|
+
|
|
74
|
+
- name: Diagnostic
|
|
75
|
+
run: |
|
|
76
|
+
micromamba info
|
|
77
|
+
micromamba list
|
|
78
|
+
conda config --show-sources
|
|
79
|
+
conda config --show
|
|
80
|
+
micromamba env list
|
|
81
|
+
printenv | sort
|
|
82
|
+
|
|
83
|
+
- name: Run tests with pytest & coverage
|
|
84
|
+
shell: bash -l {0}
|
|
85
|
+
run: |
|
|
86
|
+
coverage run --concurrency=thread --parallel-mode -m pytest -vvv .
|
|
87
|
+
coverage combine
|
|
88
|
+
coverage report --precision 3
|
|
89
|
+
|
|
90
|
+
- name: Upload to coveralls
|
|
91
|
+
# https://github.com/TheKevJames/coveralls-python
|
|
92
|
+
shell: bash -l {0}
|
|
93
|
+
run: |
|
|
94
|
+
micromamba list cover
|
|
95
|
+
which coveralls
|
|
96
|
+
coveralls debug
|
|
97
|
+
coveralls --service=github
|
|
98
|
+
env:
|
|
99
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
100
|
+
COVERALLS_FLAG_NAME: ${{ matrix.test-name }}
|
|
101
|
+
COVERALLS_PARALLEL: true
|
|
102
|
+
|
|
103
|
+
# https://coveralls-python.readthedocs.io/en/latest/usage/configuration.html#github-actions-support
|
|
104
|
+
coveralls:
|
|
105
|
+
name: Report unit test coverage to coveralls
|
|
106
|
+
needs: test-matrix
|
|
107
|
+
runs-on: ubuntu-latest
|
|
108
|
+
container: python:3-slim
|
|
109
|
+
|
|
110
|
+
steps:
|
|
111
|
+
- name: Gather coverage and report to Coveralls
|
|
112
|
+
run: |
|
|
113
|
+
echo "Finally!"
|
|
114
|
+
pip3 install --upgrade coveralls
|
|
115
|
+
# debug mode: output prepared json and reported files list to stdout
|
|
116
|
+
# https://coveralls-python.readthedocs.io/en/latest/troubleshooting.html
|
|
117
|
+
coveralls debug
|
|
118
|
+
coveralls --service=github --finish
|
|
119
|
+
env:
|
|
120
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
name: Publish Sphinx Docs to GitHub Pages
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
# Build the docs on pushes to main branch, PRs to main branch, and new tags.
|
|
5
|
+
# Publish only on demand.
|
|
6
|
+
push:
|
|
7
|
+
branches:
|
|
8
|
+
- main
|
|
9
|
+
tags:
|
|
10
|
+
- '*' # all tags
|
|
11
|
+
pull_request:
|
|
12
|
+
branches:
|
|
13
|
+
- main
|
|
14
|
+
workflow_dispatch: # allow manual triggering
|
|
15
|
+
inputs:
|
|
16
|
+
deploy:
|
|
17
|
+
description: 'Deploy documentation'
|
|
18
|
+
type: boolean
|
|
19
|
+
required: true
|
|
20
|
+
default: false
|
|
21
|
+
|
|
22
|
+
defaults:
|
|
23
|
+
run:
|
|
24
|
+
shell: bash -l {0}
|
|
25
|
+
|
|
26
|
+
jobs:
|
|
27
|
+
|
|
28
|
+
docs:
|
|
29
|
+
name: Publish documentation
|
|
30
|
+
runs-on: ubuntu-latest
|
|
31
|
+
|
|
32
|
+
steps:
|
|
33
|
+
|
|
34
|
+
- name: Deploy Information
|
|
35
|
+
if: ${{ github.event.inputs.deploy }}
|
|
36
|
+
run: |
|
|
37
|
+
echo "The docs will be published from this workflow run."
|
|
38
|
+
|
|
39
|
+
- name: Set time zone
|
|
40
|
+
run: echo "TZ=America/Chicago" >> "$GITHUB_ENV"
|
|
41
|
+
|
|
42
|
+
- name: Sphinx build
|
|
43
|
+
id: deployment
|
|
44
|
+
uses: sphinx-notes/pages@v3
|
|
45
|
+
with:
|
|
46
|
+
documentation_path: ./docs/source
|
|
47
|
+
publish: false
|
|
48
|
+
requirements_path: ./docs/requirements.txt
|
|
49
|
+
|
|
50
|
+
- name: Diagnostic
|
|
51
|
+
run: ls -lAFgh ${{ steps.deployment.outputs.artifact }}
|
|
52
|
+
|
|
53
|
+
- name: Upload Docs ZIP file as artifact
|
|
54
|
+
uses: actions/upload-artifact@v4
|
|
55
|
+
with:
|
|
56
|
+
name: hklpy2-docs
|
|
57
|
+
path: ${{ steps.deployment.outputs.artifact }}
|
|
58
|
+
|
|
59
|
+
- name: Deploy (to gh-pages branch) only on demand
|
|
60
|
+
uses: peaceiris/actions-gh-pages@v4
|
|
61
|
+
if: ${{ github.event.inputs.deploy }}
|
|
62
|
+
with:
|
|
63
|
+
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
64
|
+
publish_branch: gh-pages
|
|
65
|
+
publish_dir: ${{ steps.deployment.outputs.artifact }}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
name: Publish Python 🐍 distributions 📦 to PyPI and TestPyPI
|
|
2
|
+
|
|
3
|
+
on: push
|
|
4
|
+
|
|
5
|
+
permissions:
|
|
6
|
+
id-token: write
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
|
|
10
|
+
build-pypi:
|
|
11
|
+
name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@master
|
|
16
|
+
- name: Set up Python
|
|
17
|
+
uses: actions/setup-python@v5
|
|
18
|
+
# with:
|
|
19
|
+
# python-version: 3.9
|
|
20
|
+
|
|
21
|
+
- name: Install pypa/build
|
|
22
|
+
run: >-
|
|
23
|
+
python -m
|
|
24
|
+
pip install
|
|
25
|
+
build
|
|
26
|
+
twine
|
|
27
|
+
--user
|
|
28
|
+
|
|
29
|
+
- name: Build a binary wheel and a source tarball
|
|
30
|
+
run: >-
|
|
31
|
+
python -m
|
|
32
|
+
build
|
|
33
|
+
--sdist
|
|
34
|
+
--wheel
|
|
35
|
+
--outdir dist/
|
|
36
|
+
.
|
|
37
|
+
|
|
38
|
+
- name: Check package metadata
|
|
39
|
+
run: >-
|
|
40
|
+
twine check dist/*
|
|
41
|
+
|
|
42
|
+
- name: Publish 📦 to PyPI
|
|
43
|
+
if: startsWith(github.ref, 'refs/tags')
|
|
44
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
45
|
+
with:
|
|
46
|
+
user: __token__
|
|
47
|
+
# password: ${{ secrets.PYPI_API_TOKEN }}
|
|
48
|
+
verbose: true
|
hklpy2-0.0.4/.gitignore
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# custom for our GitHub Actions workflow
|
|
2
|
+
conda_env.yml
|
|
3
|
+
pip_req.txt
|
|
4
|
+
|
|
5
|
+
# Byte-compiled / optimized / DLL files
|
|
6
|
+
__pycache__/
|
|
7
|
+
*.py[cod]
|
|
8
|
+
|
|
9
|
+
# C extensions
|
|
10
|
+
*.so
|
|
11
|
+
|
|
12
|
+
# Distribution / packaging
|
|
13
|
+
.Python
|
|
14
|
+
env/
|
|
15
|
+
build/
|
|
16
|
+
develop-eggs/
|
|
17
|
+
dist/
|
|
18
|
+
downloads/
|
|
19
|
+
eggs/
|
|
20
|
+
lib/
|
|
21
|
+
lib64/
|
|
22
|
+
parts/
|
|
23
|
+
sdist/
|
|
24
|
+
var/
|
|
25
|
+
*.egg-info/
|
|
26
|
+
.installed.cfg
|
|
27
|
+
*.egg
|
|
28
|
+
|
|
29
|
+
# PyInstaller
|
|
30
|
+
# Usually these files are written by a python script from a template
|
|
31
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
32
|
+
*.manifest
|
|
33
|
+
*.spec
|
|
34
|
+
|
|
35
|
+
# Installer logs
|
|
36
|
+
pip-log.txt
|
|
37
|
+
pip-delete-this-directory.txt
|
|
38
|
+
|
|
39
|
+
# Unit test / coverage reports
|
|
40
|
+
htmlcov/
|
|
41
|
+
.tox/
|
|
42
|
+
.coverage
|
|
43
|
+
.cache
|
|
44
|
+
nosetests.xml
|
|
45
|
+
coverage.xml
|
|
46
|
+
|
|
47
|
+
# Translations
|
|
48
|
+
*.mo
|
|
49
|
+
*.pot
|
|
50
|
+
|
|
51
|
+
# Django stuff:
|
|
52
|
+
*.log
|
|
53
|
+
|
|
54
|
+
# Sphinx documentation
|
|
55
|
+
docs/_build/
|
|
56
|
+
|
|
57
|
+
# PyBuilder
|
|
58
|
+
target/
|
|
59
|
+
|
|
60
|
+
# Origional File
|
|
61
|
+
*.pyc
|
|
62
|
+
*.swp
|
|
63
|
+
*.bak
|
|
64
|
+
|
|
65
|
+
# PyCharm
|
|
66
|
+
.idea/
|
|
67
|
+
.ropeproject
|
|
68
|
+
|
|
69
|
+
# notebook checkpoints
|
|
70
|
+
.ipynb_checkpoints
|
|
71
|
+
|
|
72
|
+
# generated docs
|
|
73
|
+
docs/source/generated
|
|
74
|
+
|
|
75
|
+
# Microsoft VS Code editor
|
|
76
|
+
.vscode/
|
|
77
|
+
.history/
|
|
78
|
+
docs/source/_build/
|
|
79
|
+
|
|
80
|
+
# PyTest cache
|
|
81
|
+
.pytest_cache/
|
|
82
|
+
|
|
83
|
+
# Bluesky session logger
|
|
84
|
+
.logs/
|
|
85
|
+
|
|
86
|
+
# local developer files
|
|
87
|
+
dev_*
|
hklpy2-0.0.4/LICENSE
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
Copyright (c) 2023-2024, UChicago Argonne, LLC
|
|
2
|
+
|
|
3
|
+
All Rights Reserved
|
|
4
|
+
|
|
5
|
+
hklpy2
|
|
6
|
+
|
|
7
|
+
BCDA, Advanced Photon Source, Argonne National Laboratory
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
OPEN SOURCE LICENSE
|
|
11
|
+
|
|
12
|
+
Redistribution and use in source and binary forms, with or without
|
|
13
|
+
modification, are permitted provided that the following conditions are met:
|
|
14
|
+
|
|
15
|
+
1. Redistributions of source code must retain the above copyright notice,
|
|
16
|
+
this list of conditions and the following disclaimer. Software changes,
|
|
17
|
+
modifications, or derivative works, should be noted with comments and
|
|
18
|
+
the author and organization's name.
|
|
19
|
+
|
|
20
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
21
|
+
this list of conditions and the following disclaimer in the documentation
|
|
22
|
+
and/or other materials provided with the distribution.
|
|
23
|
+
|
|
24
|
+
3. Neither the names of UChicago Argonne, LLC or the Department of Energy
|
|
25
|
+
nor the names of its contributors may be used to endorse or promote
|
|
26
|
+
products derived from this software without specific prior written
|
|
27
|
+
permission.
|
|
28
|
+
|
|
29
|
+
4. The software and the end-user documentation included with the
|
|
30
|
+
redistribution, if any, must include the following acknowledgment:
|
|
31
|
+
|
|
32
|
+
"This product includes software produced by UChicago Argonne, LLC
|
|
33
|
+
under Contract No. DE-AC02-06CH11357 with the Department of Energy."
|
|
34
|
+
|
|
35
|
+
****************************************************************************
|
|
36
|
+
|
|
37
|
+
DISCLAIMER
|
|
38
|
+
|
|
39
|
+
THE SOFTWARE IS SUPPLIED "AS IS" WITHOUT WARRANTY OF ANY KIND.
|
|
40
|
+
|
|
41
|
+
Neither the United States GOVERNMENT, nor the United States Department
|
|
42
|
+
of Energy, NOR uchicago argonne, LLC, nor any of their employees, makes
|
|
43
|
+
any warranty, express or implied, or assumes any legal liability or
|
|
44
|
+
responsibility for the accuracy, completeness, or usefulness of any
|
|
45
|
+
information, data, apparatus, product, or process disclosed, or
|
|
46
|
+
represents that its use would not infringe privately owned rights.
|
|
47
|
+
|
|
48
|
+
****************************************************************************
|
hklpy2-0.0.4/MANIFEST.in
ADDED
hklpy2-0.0.4/PKG-INFO
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: hklpy2
|
|
3
|
+
Version: 0.0.4
|
|
4
|
+
Summary: 2nd generation diffractometer controls for the Bluesky Framework.
|
|
5
|
+
Author-email: Pete Jemian <prjemian+hklpy2@gmail.com>
|
|
6
|
+
Maintainer-email: Pete Jemian <prjemian+hklpy2@gmail.com>
|
|
7
|
+
License: Copyright (c) 2023-2024, UChicago Argonne, LLC
|
|
8
|
+
|
|
9
|
+
All Rights Reserved
|
|
10
|
+
|
|
11
|
+
hklpy2
|
|
12
|
+
|
|
13
|
+
BCDA, Advanced Photon Source, Argonne National Laboratory
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
OPEN SOURCE LICENSE
|
|
17
|
+
|
|
18
|
+
Redistribution and use in source and binary forms, with or without
|
|
19
|
+
modification, are permitted provided that the following conditions are met:
|
|
20
|
+
|
|
21
|
+
1. Redistributions of source code must retain the above copyright notice,
|
|
22
|
+
this list of conditions and the following disclaimer. Software changes,
|
|
23
|
+
modifications, or derivative works, should be noted with comments and
|
|
24
|
+
the author and organization's name.
|
|
25
|
+
|
|
26
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
27
|
+
this list of conditions and the following disclaimer in the documentation
|
|
28
|
+
and/or other materials provided with the distribution.
|
|
29
|
+
|
|
30
|
+
3. Neither the names of UChicago Argonne, LLC or the Department of Energy
|
|
31
|
+
nor the names of its contributors may be used to endorse or promote
|
|
32
|
+
products derived from this software without specific prior written
|
|
33
|
+
permission.
|
|
34
|
+
|
|
35
|
+
4. The software and the end-user documentation included with the
|
|
36
|
+
redistribution, if any, must include the following acknowledgment:
|
|
37
|
+
|
|
38
|
+
"This product includes software produced by UChicago Argonne, LLC
|
|
39
|
+
under Contract No. DE-AC02-06CH11357 with the Department of Energy."
|
|
40
|
+
|
|
41
|
+
****************************************************************************
|
|
42
|
+
|
|
43
|
+
DISCLAIMER
|
|
44
|
+
|
|
45
|
+
THE SOFTWARE IS SUPPLIED "AS IS" WITHOUT WARRANTY OF ANY KIND.
|
|
46
|
+
|
|
47
|
+
Neither the United States GOVERNMENT, nor the United States Department
|
|
48
|
+
of Energy, NOR uchicago argonne, LLC, nor any of their employees, makes
|
|
49
|
+
any warranty, express or implied, or assumes any legal liability or
|
|
50
|
+
responsibility for the accuracy, completeness, or usefulness of any
|
|
51
|
+
information, data, apparatus, product, or process disclosed, or
|
|
52
|
+
represents that its use would not infringe privately owned rights.
|
|
53
|
+
|
|
54
|
+
****************************************************************************
|
|
55
|
+
|
|
56
|
+
Project-URL: Homepage, https://prjemian.github.io/hklpy2
|
|
57
|
+
Project-URL: Bug Tracker, https://github.com/prjemian/hklpy2/issues
|
|
58
|
+
Keywords: bluesky,diffraction,diffractometer
|
|
59
|
+
Classifier: Development Status :: 1 - Planning
|
|
60
|
+
Classifier: Environment :: Console
|
|
61
|
+
Classifier: Intended Audience :: Science/Research
|
|
62
|
+
Classifier: License :: Freely Distributable
|
|
63
|
+
Classifier: License :: Public Domain
|
|
64
|
+
Classifier: Operating System :: OS Independent
|
|
65
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
66
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
67
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
68
|
+
Classifier: Programming Language :: Python :: 3
|
|
69
|
+
Classifier: Programming Language :: Python
|
|
70
|
+
Classifier: Topic :: Scientific/Engineering :: Astronomy
|
|
71
|
+
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
|
|
72
|
+
Classifier: Topic :: Scientific/Engineering :: Chemistry
|
|
73
|
+
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
74
|
+
Classifier: Topic :: Scientific/Engineering :: Physics
|
|
75
|
+
Classifier: Topic :: Scientific/Engineering :: Visualization
|
|
76
|
+
Classifier: Topic :: Scientific/Engineering
|
|
77
|
+
Requires-Python: >=3.10
|
|
78
|
+
Description-Content-Type: text/markdown
|
|
79
|
+
License-File: LICENSE
|
|
80
|
+
Requires-Dist: numpy
|
|
81
|
+
Requires-Dist: ophyd
|
|
82
|
+
Requires-Dist: pint
|
|
83
|
+
Provides-Extra: libhkl
|
|
84
|
+
Requires-Dist: pygobject; extra == "libhkl"
|
|
85
|
+
Provides-Extra: tests
|
|
86
|
+
Requires-Dist: packaging; extra == "tests"
|
|
87
|
+
Provides-Extra: all
|
|
88
|
+
Requires-Dist: hklpy2[libhkl,tests]; extra == "all"
|
|
89
|
+
|
|
90
|
+
# hklpy2
|
|
91
|
+
|
|
92
|
+
NOTE: this project at initial development
|
|
93
|
+
|
|
94
|
+
| Name | Downloads | Version | Platforms | PyPI |
|
|
95
|
+
| --- | --- | --- | --- | --- |
|
|
96
|
+
| [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://pypi.python.org/pypi/hklpy2) |
|
|
97
|
+
|
|
98
|
+
Controls for using diffractometers within the [Bluesky
|
|
99
|
+
Framework](https://blueskyproject.io).
|
|
100
|
+
|
|
101
|
+
## References
|
|
102
|
+
|
|
103
|
+
- hklpy2 documentation: <https://prjemian.github.io/hklpy2>
|
hklpy2-0.0.4/README.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# hklpy2
|
|
2
|
+
|
|
3
|
+
NOTE: this project at initial development
|
|
4
|
+
|
|
5
|
+
| Name | Downloads | Version | Platforms | PyPI |
|
|
6
|
+
| --- | --- | --- | --- | --- |
|
|
7
|
+
| [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://pypi.python.org/pypi/hklpy2) |
|
|
8
|
+
|
|
9
|
+
Controls for using diffractometers within the [Bluesky
|
|
10
|
+
Framework](https://blueskyproject.io).
|
|
11
|
+
|
|
12
|
+
## References
|
|
13
|
+
|
|
14
|
+
- hklpy2 documentation: <https://prjemian.github.io/hklpy2>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Minimal makefile for Sphinx documentation
|
|
2
|
+
#
|
|
3
|
+
|
|
4
|
+
# You can set these variables from the command line, and also
|
|
5
|
+
# from the environment for the first two.
|
|
6
|
+
SPHINXOPTS ?=
|
|
7
|
+
SPHINXBUILD ?= sphinx-build
|
|
8
|
+
SOURCEDIR = source
|
|
9
|
+
BUILDDIR = build
|
|
10
|
+
|
|
11
|
+
# Put it first so that "make" without argument is like "make help".
|
|
12
|
+
help:
|
|
13
|
+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
14
|
+
|
|
15
|
+
.PHONY: help Makefile
|
|
16
|
+
|
|
17
|
+
# Catch-all target: route all unknown targets to Sphinx using the new
|
|
18
|
+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
|
19
|
+
%: Makefile
|
|
20
|
+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
@ECHO OFF
|
|
2
|
+
|
|
3
|
+
pushd %~dp0
|
|
4
|
+
|
|
5
|
+
REM Command file for Sphinx documentation
|
|
6
|
+
|
|
7
|
+
if "%SPHINXBUILD%" == "" (
|
|
8
|
+
set SPHINXBUILD=sphinx-build
|
|
9
|
+
)
|
|
10
|
+
set SOURCEDIR=source
|
|
11
|
+
set BUILDDIR=build
|
|
12
|
+
|
|
13
|
+
%SPHINXBUILD% >NUL 2>NUL
|
|
14
|
+
if errorlevel 9009 (
|
|
15
|
+
echo.
|
|
16
|
+
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
|
|
17
|
+
echo.installed, then set the SPHINXBUILD environment variable to point
|
|
18
|
+
echo.to the full path of the 'sphinx-build' executable. Alternatively you
|
|
19
|
+
echo.may add the Sphinx directory to PATH.
|
|
20
|
+
echo.
|
|
21
|
+
echo.If you don't have Sphinx installed, grab it from
|
|
22
|
+
echo.https://www.sphinx-doc.org/
|
|
23
|
+
exit /b 1
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
if "%1" == "" goto help
|
|
27
|
+
|
|
28
|
+
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
|
|
29
|
+
goto end
|
|
30
|
+
|
|
31
|
+
:help
|
|
32
|
+
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
|
|
33
|
+
|
|
34
|
+
:end
|
|
35
|
+
popd
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# Configuration file for the Sphinx documentation builder.
|
|
2
|
+
#
|
|
3
|
+
# For the full list of built-in configuration values, see the documentation:
|
|
4
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
|
5
|
+
|
|
6
|
+
# flake8: noqa
|
|
7
|
+
|
|
8
|
+
import pathlib
|
|
9
|
+
import sys
|
|
10
|
+
|
|
11
|
+
docs_source = pathlib.Path(__file__).parent
|
|
12
|
+
sys.path.insert(0, str(docs_source.parent.parent))
|
|
13
|
+
|
|
14
|
+
# imports here for sphinx to build the documents without many WARNINGS.
|
|
15
|
+
import hklpy2
|
|
16
|
+
|
|
17
|
+
# -- Project information -----------------------------------------------------
|
|
18
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
|
|
19
|
+
|
|
20
|
+
project = "hklpy2"
|
|
21
|
+
copyright = "2023-2024, Argonne National Laboratory"
|
|
22
|
+
# author = 'Bluesky team'
|
|
23
|
+
release = hklpy2.__version__
|
|
24
|
+
version = ".".join(release.split(".")[:2])
|
|
25
|
+
short_version = version
|
|
26
|
+
if "+g" in version and ".d2" in version:
|
|
27
|
+
# Extra date (1.0.5.dev146+gbb34ee0.d20231102) makes the title too long.
|
|
28
|
+
short_version = short_version.rsplit(".d2", 1)[0]
|
|
29
|
+
today_fmt = "%Y-%m-%d %H:%M"
|
|
30
|
+
|
|
31
|
+
# -- General configuration ---------------------------------------------------
|
|
32
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
|
33
|
+
|
|
34
|
+
extensions = [
|
|
35
|
+
"sphinx.ext.autodoc",
|
|
36
|
+
"sphinx.ext.autosummary",
|
|
37
|
+
"sphinx.ext.coverage",
|
|
38
|
+
"sphinx.ext.inheritance_diagram",
|
|
39
|
+
"sphinx.ext.intersphinx",
|
|
40
|
+
"sphinx.ext.mathjax",
|
|
41
|
+
"sphinx.ext.napoleon",
|
|
42
|
+
"sphinx.ext.viewcode",
|
|
43
|
+
"sphinx_design",
|
|
44
|
+
"nbsphinx",
|
|
45
|
+
]
|
|
46
|
+
extensions.append("sphinx_tabs.tabs") # this must be last
|
|
47
|
+
|
|
48
|
+
templates_path = ["_templates"]
|
|
49
|
+
exclude_patterns = ["**.ipynb_checkpoints"]
|
|
50
|
+
|
|
51
|
+
# -- Options for HTML output -------------------------------------------------
|
|
52
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
|
|
53
|
+
|
|
54
|
+
html_theme = "pydata_sphinx_theme"
|
|
55
|
+
html_title = f"{project} {version}"
|
|
56
|
+
html_static_path = ["_static"]
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
# -- Options for autodoc ---------------------------------------------------
|
|
60
|
+
|
|
61
|
+
autodoc_exclude_members = ",".join(
|
|
62
|
+
"""
|
|
63
|
+
__weakref__
|
|
64
|
+
_component_kinds
|
|
65
|
+
_device_tuple
|
|
66
|
+
_required_for_connection
|
|
67
|
+
_sig_attrs
|
|
68
|
+
_sub_devices
|
|
69
|
+
calc_class
|
|
70
|
+
component_names
|
|
71
|
+
""".split()
|
|
72
|
+
)
|
|
73
|
+
autodoc_default_options = {
|
|
74
|
+
# 'members': 'var1, var2',
|
|
75
|
+
# 'member-order': 'bysource',
|
|
76
|
+
"private-members": True,
|
|
77
|
+
# "special-members": "__init__",
|
|
78
|
+
# 'undoc-members': True,
|
|
79
|
+
"exclude-members": autodoc_exclude_members,
|
|
80
|
+
}
|
|
81
|
+
autodoc_mock_imports = [
|
|
82
|
+
"pint",
|
|
83
|
+
]
|
|
84
|
+
|
|
85
|
+
# Example configuration for intersphinx: refer to the Python standard library.
|
|
86
|
+
intersphinx_mapping = {"python": ("https://docs.python.org/3", None)}
|
|
87
|
+
inheritance_graph_attrs = {"rankdir": "LR"}
|
|
88
|
+
inheritance_node_attrs = {"fontsize": 24}
|
|
89
|
+
autosummary_generate = True
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
======
|
|
2
|
+
hklpy2
|
|
3
|
+
======
|
|
4
|
+
|
|
5
|
+
.. include:: /substitutions.txt
|
|
6
|
+
|
|
7
|
+
.. index:: !hklpy
|
|
8
|
+
|
|
9
|
+
|hklpy2| - the 2nd generation Python package for practical use of diffractometers with the
|
|
10
|
+
`Bluesky Framework <https://blueskyproject.io>`_.
|
|
11
|
+
|
|
12
|
+
.. caution:: Development in progress.
|
|
13
|
+
|
|
14
|
+
.. toctree::
|
|
15
|
+
:glob:
|
|
16
|
+
:hidden:
|
|
17
|
+
|
|
18
|
+
license
|
|
19
|
+
|
|
20
|
+
.. hide, for now
|
|
21
|
+
.. icons: https://fonts.google.com/icons
|
|
22
|
+
|
|
23
|
+
.. grid:: 2
|
|
24
|
+
|
|
25
|
+
.. grid-item-card:: :material-outlined:`summarize;3em` User Guide
|
|
26
|
+
.. grid-item-card:: :material-regular:`install_desktop;3em` Installation
|
|
27
|
+
.. grid-item-card:: :material-regular:`subscriptions;3em` API
|
|
28
|
+
.. grid-item-card:: :material-regular:`history;3em` History of changes
|
|
29
|
+
|
|
30
|
+
.. _about:
|
|
31
|
+
|
|
32
|
+
About
|
|
33
|
+
-----
|
|
34
|
+
|
|
35
|
+
:home: https://prjemian.github.io/hklpy2
|
|
36
|
+
:source: https://github.com/prjemian/hklpy2
|
|
37
|
+
:license: :ref:`license`
|
|
38
|
+
:full version: |release|
|
|
39
|
+
:published: |today|
|
|
40
|
+
:index: :ref:`genindex`
|
|
41
|
+
:module: :ref:`modindex`
|
|
42
|
+
:1st gen: |hklpy|
|
|
43
|
+
|
|
44
|
+
"This product includes software produced by UChicago Argonne, LLC
|
|
45
|
+
under Contract No. DE-AC02-06CH11357 with the Department of Energy."
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
..
|
|
2
|
+
This file is in restructured text format.
|
|
3
|
+
It defines canonical representations of various terms.
|
|
4
|
+
|
|
5
|
+
.. include:: /substitutions.txt
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
.. |hklpy| replace:: https://blueskyproject.io/hklpy
|
|
9
|
+
.. |hklpy2| replace:: **hklpy2**
|
|
10
|
+
.. |libhkl| replace:: **libhkl**
|
|
11
|
+
.. |spec| replace:: **SPEC**
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# environment.yml
|
|
2
|
+
|
|
3
|
+
# User's minimal environment for hklpy2
|
|
4
|
+
|
|
5
|
+
# conda env create -f environment.yml
|
|
6
|
+
# micromamba create -n hklpy2 -f environment.yml
|
|
7
|
+
|
|
8
|
+
name: hklpy2
|
|
9
|
+
|
|
10
|
+
channels:
|
|
11
|
+
- conda-forge # must come before defaults (for gsl version)
|
|
12
|
+
- defaults
|
|
13
|
+
|
|
14
|
+
dependencies:
|
|
15
|
+
- python >=3.10,<3.13
|
|
16
|
+
- hkl
|
|
17
|
+
- numpy
|
|
18
|
+
- ophyd
|
|
19
|
+
- packaging
|
|
20
|
+
- pint
|
|
21
|
+
- pip
|
|
22
|
+
- pygobject
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Package-level initialization.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
__settings_orgName__ = "prjemian"
|
|
6
|
+
__package_name__ = "hklpy2"
|
|
7
|
+
|
|
8
|
+
try:
|
|
9
|
+
from setuptools_scm import get_version
|
|
10
|
+
|
|
11
|
+
__version__ = get_version(root="..", relative_to=__file__)
|
|
12
|
+
del get_version
|
|
13
|
+
except (LookupError, ModuleNotFoundError):
|
|
14
|
+
from importlib.metadata import version
|
|
15
|
+
|
|
16
|
+
__version__ = version(__package_name__)
|
|
17
|
+
del version
|
|
18
|
+
|
|
19
|
+
# -----------------------------------------------------------------------------
|
|
20
|
+
# :copyright: (c) 2023-2024, UChicago Argonne, LLC
|
|
21
|
+
#
|
|
22
|
+
# Distributed under the terms of the Argonne National Laboratory Open Source License.
|
|
23
|
+
#
|
|
24
|
+
# The full license is in the file LICENSE.txt, distributed with this software.
|
|
25
|
+
# -----------------------------------------------------------------------------
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# TODO: add plugin support for selecting the backend solver
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
- https://github.com/bluesky/hklpy/issues/14
|
|
5
|
+
- https://github.com/bluesky/hklpy/issues/161
|
|
6
|
+
- https://github.com/bluesky/hklpy/issues/162
|
|
7
|
+
- https://github.com/bluesky/hklpy/issues/163
|
|
8
|
+
- https://github.com/bluesky/hklpy/issues/165
|
|
9
|
+
- https://github.com/bluesky/hklpy/issues/244
|
|
10
|
+
- https://xrayutilities.sourceforge.io/
|
|
11
|
+
- https://cohere.readthedocs.io
|
|
12
|
+
- https://github.com/AdvancedPhotonSource/cohere-scripts/tree/main/scripts/beamlines/aps_34idc
|
|
13
|
+
- https://xrayutilities.sourceforge.io/_modules/xrayutilities/experiment.html#QConversion
|
|
14
|
+
- https://github.com/DiamondLightSource/diffcalc
|
|
15
|
+
- SPEC server mode
|
|
16
|
+
- https://github.com/prjemian/pyub
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
from .hkl_backend import libhkl as solver # noqa
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Backend: Hkl
|
|
3
|
+
|
|
4
|
+
:home: https://people.debian.org/~picca/hkl/hkl.html
|
|
5
|
+
:source: https://repo.or.cz/hkl.git
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
import gi
|
|
9
|
+
|
|
10
|
+
gi.require_version("Hkl", "5.0")
|
|
11
|
+
|
|
12
|
+
from gi.repository import Hkl as libhkl # noqa: E402
|
|
13
|
+
|
|
14
|
+
__version__ = libhkl.VERSION
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: hklpy2
|
|
3
|
+
Version: 0.0.4
|
|
4
|
+
Summary: 2nd generation diffractometer controls for the Bluesky Framework.
|
|
5
|
+
Author-email: Pete Jemian <prjemian+hklpy2@gmail.com>
|
|
6
|
+
Maintainer-email: Pete Jemian <prjemian+hklpy2@gmail.com>
|
|
7
|
+
License: Copyright (c) 2023-2024, UChicago Argonne, LLC
|
|
8
|
+
|
|
9
|
+
All Rights Reserved
|
|
10
|
+
|
|
11
|
+
hklpy2
|
|
12
|
+
|
|
13
|
+
BCDA, Advanced Photon Source, Argonne National Laboratory
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
OPEN SOURCE LICENSE
|
|
17
|
+
|
|
18
|
+
Redistribution and use in source and binary forms, with or without
|
|
19
|
+
modification, are permitted provided that the following conditions are met:
|
|
20
|
+
|
|
21
|
+
1. Redistributions of source code must retain the above copyright notice,
|
|
22
|
+
this list of conditions and the following disclaimer. Software changes,
|
|
23
|
+
modifications, or derivative works, should be noted with comments and
|
|
24
|
+
the author and organization's name.
|
|
25
|
+
|
|
26
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
27
|
+
this list of conditions and the following disclaimer in the documentation
|
|
28
|
+
and/or other materials provided with the distribution.
|
|
29
|
+
|
|
30
|
+
3. Neither the names of UChicago Argonne, LLC or the Department of Energy
|
|
31
|
+
nor the names of its contributors may be used to endorse or promote
|
|
32
|
+
products derived from this software without specific prior written
|
|
33
|
+
permission.
|
|
34
|
+
|
|
35
|
+
4. The software and the end-user documentation included with the
|
|
36
|
+
redistribution, if any, must include the following acknowledgment:
|
|
37
|
+
|
|
38
|
+
"This product includes software produced by UChicago Argonne, LLC
|
|
39
|
+
under Contract No. DE-AC02-06CH11357 with the Department of Energy."
|
|
40
|
+
|
|
41
|
+
****************************************************************************
|
|
42
|
+
|
|
43
|
+
DISCLAIMER
|
|
44
|
+
|
|
45
|
+
THE SOFTWARE IS SUPPLIED "AS IS" WITHOUT WARRANTY OF ANY KIND.
|
|
46
|
+
|
|
47
|
+
Neither the United States GOVERNMENT, nor the United States Department
|
|
48
|
+
of Energy, NOR uchicago argonne, LLC, nor any of their employees, makes
|
|
49
|
+
any warranty, express or implied, or assumes any legal liability or
|
|
50
|
+
responsibility for the accuracy, completeness, or usefulness of any
|
|
51
|
+
information, data, apparatus, product, or process disclosed, or
|
|
52
|
+
represents that its use would not infringe privately owned rights.
|
|
53
|
+
|
|
54
|
+
****************************************************************************
|
|
55
|
+
|
|
56
|
+
Project-URL: Homepage, https://prjemian.github.io/hklpy2
|
|
57
|
+
Project-URL: Bug Tracker, https://github.com/prjemian/hklpy2/issues
|
|
58
|
+
Keywords: bluesky,diffraction,diffractometer
|
|
59
|
+
Classifier: Development Status :: 1 - Planning
|
|
60
|
+
Classifier: Environment :: Console
|
|
61
|
+
Classifier: Intended Audience :: Science/Research
|
|
62
|
+
Classifier: License :: Freely Distributable
|
|
63
|
+
Classifier: License :: Public Domain
|
|
64
|
+
Classifier: Operating System :: OS Independent
|
|
65
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
66
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
67
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
68
|
+
Classifier: Programming Language :: Python :: 3
|
|
69
|
+
Classifier: Programming Language :: Python
|
|
70
|
+
Classifier: Topic :: Scientific/Engineering :: Astronomy
|
|
71
|
+
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
|
|
72
|
+
Classifier: Topic :: Scientific/Engineering :: Chemistry
|
|
73
|
+
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
74
|
+
Classifier: Topic :: Scientific/Engineering :: Physics
|
|
75
|
+
Classifier: Topic :: Scientific/Engineering :: Visualization
|
|
76
|
+
Classifier: Topic :: Scientific/Engineering
|
|
77
|
+
Requires-Python: >=3.10
|
|
78
|
+
Description-Content-Type: text/markdown
|
|
79
|
+
License-File: LICENSE
|
|
80
|
+
Requires-Dist: numpy
|
|
81
|
+
Requires-Dist: ophyd
|
|
82
|
+
Requires-Dist: pint
|
|
83
|
+
Provides-Extra: libhkl
|
|
84
|
+
Requires-Dist: pygobject; extra == "libhkl"
|
|
85
|
+
Provides-Extra: tests
|
|
86
|
+
Requires-Dist: packaging; extra == "tests"
|
|
87
|
+
Provides-Extra: all
|
|
88
|
+
Requires-Dist: hklpy2[libhkl,tests]; extra == "all"
|
|
89
|
+
|
|
90
|
+
# hklpy2
|
|
91
|
+
|
|
92
|
+
NOTE: this project at initial development
|
|
93
|
+
|
|
94
|
+
| Name | Downloads | Version | Platforms | PyPI |
|
|
95
|
+
| --- | --- | --- | --- | --- |
|
|
96
|
+
| [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://anaconda.org/conda-forge/hklpy2) | [](https://pypi.python.org/pypi/hklpy2) |
|
|
97
|
+
|
|
98
|
+
Controls for using diffractometers within the [Bluesky
|
|
99
|
+
Framework](https://blueskyproject.io).
|
|
100
|
+
|
|
101
|
+
## References
|
|
102
|
+
|
|
103
|
+
- hklpy2 documentation: <https://prjemian.github.io/hklpy2>
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
.gitignore
|
|
2
|
+
LICENSE
|
|
3
|
+
MANIFEST.in
|
|
4
|
+
README.md
|
|
5
|
+
environment.yml
|
|
6
|
+
pyproject.toml
|
|
7
|
+
.github/dependabot.yml
|
|
8
|
+
.github/workflows/code.yml
|
|
9
|
+
.github/workflows/docs.yml
|
|
10
|
+
.github/workflows/pypi.yml
|
|
11
|
+
docs/Makefile
|
|
12
|
+
docs/make.bat
|
|
13
|
+
docs/requirements.txt
|
|
14
|
+
docs/source/conf.py
|
|
15
|
+
docs/source/index.rst
|
|
16
|
+
docs/source/license.rst
|
|
17
|
+
docs/source/substitutions.txt
|
|
18
|
+
hklpy2/__init__.py
|
|
19
|
+
hklpy2.egg-info/PKG-INFO
|
|
20
|
+
hklpy2.egg-info/SOURCES.txt
|
|
21
|
+
hklpy2.egg-info/dependency_links.txt
|
|
22
|
+
hklpy2.egg-info/requires.txt
|
|
23
|
+
hklpy2.egg-info/top_level.txt
|
|
24
|
+
hklpy2/backends/__init__.py
|
|
25
|
+
hklpy2/backends/hkl_backend.py
|
|
26
|
+
hklpy2/backends/tests/__init__.py
|
|
27
|
+
hklpy2/backends/tests/test_hkl_backend.py
|
|
28
|
+
hklpy2/tests/__init__.py
|
|
29
|
+
hklpy2/tests/test_solver.py
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
hklpy2
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = [
|
|
3
|
+
"setuptools_scm[toml]>=8",
|
|
4
|
+
"setuptools>=64.0",
|
|
5
|
+
]
|
|
6
|
+
build-backend = "setuptools.build_meta"
|
|
7
|
+
|
|
8
|
+
[project]
|
|
9
|
+
name = "hklpy2"
|
|
10
|
+
description = "2nd generation diffractometer controls for the Bluesky Framework."
|
|
11
|
+
authors = [
|
|
12
|
+
{ name="Pete Jemian", email="prjemian+hklpy2@gmail.com" },
|
|
13
|
+
]
|
|
14
|
+
maintainers = [
|
|
15
|
+
{ name="Pete Jemian", email="prjemian+hklpy2@gmail.com" },
|
|
16
|
+
]
|
|
17
|
+
dynamic = ["version"]
|
|
18
|
+
readme = "README.md"
|
|
19
|
+
requires-python = ">=3.10"
|
|
20
|
+
keywords = ["bluesky", "diffraction", "diffractometer"]
|
|
21
|
+
# https://packaging.python.org/en/latest/specifications/declaring-project-metadata/?highlight=license
|
|
22
|
+
license = {file = "LICENSE"}
|
|
23
|
+
# https://pypi.org/classifiers/
|
|
24
|
+
classifiers = [
|
|
25
|
+
"Development Status :: 1 - Planning",
|
|
26
|
+
"Environment :: Console",
|
|
27
|
+
"Intended Audience :: Science/Research",
|
|
28
|
+
"License :: Freely Distributable",
|
|
29
|
+
"License :: Public Domain",
|
|
30
|
+
"Operating System :: OS Independent",
|
|
31
|
+
"Programming Language :: Python :: 3.12",
|
|
32
|
+
"Programming Language :: Python :: 3.11",
|
|
33
|
+
"Programming Language :: Python :: 3.10",
|
|
34
|
+
"Programming Language :: Python :: 3",
|
|
35
|
+
"Programming Language :: Python",
|
|
36
|
+
"Topic :: Scientific/Engineering :: Astronomy",
|
|
37
|
+
"Topic :: Scientific/Engineering :: Bio-Informatics",
|
|
38
|
+
"Topic :: Scientific/Engineering :: Chemistry",
|
|
39
|
+
"Topic :: Scientific/Engineering :: Mathematics",
|
|
40
|
+
"Topic :: Scientific/Engineering :: Physics",
|
|
41
|
+
"Topic :: Scientific/Engineering :: Visualization",
|
|
42
|
+
"Topic :: Scientific/Engineering",
|
|
43
|
+
]
|
|
44
|
+
|
|
45
|
+
dependencies = [
|
|
46
|
+
"numpy",
|
|
47
|
+
"ophyd",
|
|
48
|
+
"pint",
|
|
49
|
+
]
|
|
50
|
+
|
|
51
|
+
[project.optional-dependencies]
|
|
52
|
+
libhkl = [
|
|
53
|
+
"pygobject",
|
|
54
|
+
]
|
|
55
|
+
tests = [
|
|
56
|
+
"packaging",
|
|
57
|
+
]
|
|
58
|
+
all = ["hklpy2[libhkl,tests]"]
|
|
59
|
+
|
|
60
|
+
[project.urls]
|
|
61
|
+
"Homepage" = "https://prjemian.github.io/hklpy2"
|
|
62
|
+
"Bug Tracker" = "https://github.com/prjemian/hklpy2/issues"
|
|
63
|
+
|
|
64
|
+
[tool.black]
|
|
65
|
+
line-length = 115 # matches the value of 'max-line-length' in .flake8
|
|
66
|
+
target-version = ['py312']
|
|
67
|
+
include = '\.pyi?$'
|
|
68
|
+
exclude = '''
|
|
69
|
+
|
|
70
|
+
(
|
|
71
|
+
/(
|
|
72
|
+
\.eggs # exclude a few common directories in the
|
|
73
|
+
| \.git # root of the project
|
|
74
|
+
| \.mypy_cache
|
|
75
|
+
| \.tox
|
|
76
|
+
| \.venv
|
|
77
|
+
| _build
|
|
78
|
+
| examples/archive
|
|
79
|
+
| build
|
|
80
|
+
| dist
|
|
81
|
+
)/
|
|
82
|
+
| hkl/_version.py
|
|
83
|
+
)
|
|
84
|
+
'''
|
|
85
|
+
|
|
86
|
+
[tool.flake8]
|
|
87
|
+
max-line-length = 115
|
|
88
|
+
extend-ignore = ["E501"]
|
|
89
|
+
|
|
90
|
+
[tool.isort]
|
|
91
|
+
profile = "black"
|
|
92
|
+
force_single_line = "True"
|
|
93
|
+
line_length = 115
|
|
94
|
+
multi_line_output = "NOQA"
|
|
95
|
+
src_paths = ["hkl"]
|
|
96
|
+
|
|
97
|
+
[tool.pytest.ini_options]
|
|
98
|
+
addopts = [
|
|
99
|
+
"--import-mode=importlib",
|
|
100
|
+
]
|
|
101
|
+
[tool.setuptools_scm]
|
hklpy2-0.0.4/setup.cfg
ADDED