From 75280d3d4f61531704e2302a2f5fc6792d309edc Mon Sep 17 00:00:00 2001 From: Alexander Goscinski Date: Thu, 13 Apr 2023 19:00:43 +0200 Subject: [PATCH] init src-layout project with configured setuptools --- .gitignore | 19 +++++++++++++++++++ LICENSE | 28 ++++++++++++++++++++++++++++ README.rst | 11 +++++++++++ pyproject.toml | 36 ++++++++++++++++++++++++++++++++++++ src/scwidgets/__init__.py | 2 ++ tests/__init__.py | 0 6 files changed, 96 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.rst create mode 100644 pyproject.toml create mode 100644 src/scwidgets/__init__.py create mode 100644 tests/__init__.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3ef56a3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,19 @@ +.tox/ +build/ +dist/ +*.egg-info +__pycache__/ + +# Unit test / coverage reports +.coverage +.coverage.* +nosetests.xml +coverage.xml +*.cover +.hypothesis/ + +# editors and IDEs +*.sw[a-z] +*~ +.idea +.vscode diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..2b5da38 --- /dev/null +++ b/LICENSE @@ -0,0 +1,28 @@ +BSD 3-Clause License + +Copyright (c) 2023, scicode-widgets developer team + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..31aa485 --- /dev/null +++ b/README.rst @@ -0,0 +1,11 @@ +scicode-widgets +=============== + +A collection of ipywidgets for the creation of interactive code demos and educational notebooks with exercises that can be checked and exported. + +Installation +------------ + +.. code-block:: bash + + pip install . diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..3771d83 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,36 @@ +[build-system] +# setuptools requirement due to specifiying the version the in pyproject.toml +# https://packaging.python.org/en/latest/guides/single-sourcing-package-version/ +requires = [ + "setuptools>=61.0.0", + "wheel" +] +build-backend = "setuptools.build_meta" + +[project] +name = "scwidgets" +description = "ipywidgets for the creation of interactive code demos and educational notebooks" +readme = "README.rst" +requires-python = ">=3.7" +license = {text = "BSD-3-Clause"} +classifiers = [ + "Intended Audience :: Science/Research", + "Operating System :: POSIX", + "License :: OSI Approved :: BSD License", + "Programming Language :: Python", + "Programming Language :: Python :: 4.8", + "Programming Language :: Python :: 4.9", + "Programming Language :: Python :: 4.10", + "Topic :: Scientific/Engineering", + "Topic :: Scientific/Engineering :: Chemistry", + "Topic :: Scientific/Engineering :: Physics", + "Topic :: Software Development :: Libraries :: Python Modules", +] +dependencies = [ + "ipywidgets>=8.0.0", +] +dynamic = ["version"] + +[tool.setuptools.dynamic] +version = {attr = "scwidgets.__version__"} +readme = {file = ["README.rst"]} diff --git a/src/scwidgets/__init__.py b/src/scwidgets/__init__.py new file mode 100644 index 0000000..99dbfbc --- /dev/null +++ b/src/scwidgets/__init__.py @@ -0,0 +1,2 @@ +__version__ = "0.0.0-dev" +__authors__ = "the scicode-widgets developer team" diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29