-
Notifications
You must be signed in to change notification settings - Fork 61
/
setup.cfg
143 lines (126 loc) · 3.57 KB
/
setup.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# This file is used to configure your project.
# Read more about the various options under:
# http://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files
[metadata]
name = rayoptics
description = Tools for image forming optical design and analysis
author = Michael J Hayford
author_email = [email protected]
license = BSD 3 Clause
url = https://github.com/mjhoptics/ray-optics
long_description = file: README.rst
long_description_content_type = text/x-rst
# Change if running only on Windows, Mac or Linux (comma-separated)
platforms = any
# Add here all kinds of additional classifiers as defined under
# https://pypi.python.org/pypi?%3Aaction=list_classifiers
classifiers =
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
Programming Language :: Python :: 3.12
License :: OSI Approved :: BSD License
Operating System :: OS Independent
Topic :: Scientific/Engineering :: Physics
keywords = geometric optics, ray tracing, image forming optics,
paraxial optics, optical design, lens design,
aberrations, opd, psf
[options]
zip_safe = False
packages = find_namespace:
include_package_data = True
package_dir =
=src
install_requires =
opticalglass>=1.1.0
numpy>=2.1.3
scipy>=1.14.1
matplotlib>=3.9.2
pandas>=2.2.3
anytree>=2.12.1
parsimonious>=0.10.0
transforms3d>=0.4.2
requests>=2.32.3
packaging>=24.2
json_tricks>=3.17.3
deprecation>=2.1.0
# gui package requires
ipywidgets>=8.1.5
# qtgui package requires
pyside6>=6.7.3
qdarkstyle>=3.2.3
qtconsole>=5.6.1
ipython>=8.29.0
traitlets>=5.14.3
# option to install pyside6 separately, either via pip or Anaconda
#extras_require =
# QtGUI = pyside6
# The usage of test_requires is discouraged, see `Dependency Management` docs
# tests_require = pytest; pytest-cov
python_requires = >=3.10
[options.packages.find]
where = src
exclude =
tests
[options.extras_require]
# Add here additional requirements for extra features, to install with:
# `pip install ray-optics[PDF]` like:
# PDF = ReportLab; RXP
# Add here test requirements (semicolon/line-separated)
testing =
pytest
pytest-cov
[options.entry_points]
gui_scripts =
rayoptics = rayoptics.qtgui.rayopticsapp:main
[options.package_data]
codev = tla_mapping.csv, tests/*.seq, tests/*.roa
util = cie-cmf.txt, *.csv
models = models/*.roa
[test]
# py.test options when running `python setup.py test`
# addopts = --verbose
extras = True
[tool:pytest]
# Options for py.test:
# Specify command line options as you would do when invoking py.test directly.
# e.g. --cov-report html (or xml) for html/xml output or --junitxml junit.xml
# in order to write a coverage file that can be read by Jenkins.
addopts =
# --cov rayoptics --cov-report term-missing
--verbose
filterwarnings =
ignore::DeprecationWarning
ignore::PendingDeprecationWarning
norecursedirs =
dist
build
.tox
testpaths =
src
tests
[aliases]
build = bdist_wheel
release = build upload
[build_sphinx]
source_dir = docs/source
build_dir = docs/build
[devpi:upload]
# Options for the devpi: PyPI server and packaging tool
# VCS export must be deactivated since we are using setuptools-scm
no-vcs = 1
formats = bdist_wheel
[flake8]
# Some sane defaults for the code style checker flake8
exclude =
.tox
build
dist
.eggs
docs/conf.py
[pyscaffold]
# PyScaffold's parameters when the project was created.
# This will be used when updating. Do not change!
version = 4.3
package = rayoptics
extensions =
no_skeleton