scikit-package 0.0.1rc0__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.
@@ -0,0 +1,14 @@
1
+ Authors
2
+ =======
3
+
4
+ Sangjoon Lee (sl5400@columbia.edu)
5
+ Andrew Yang (ay2546@columbia.edu)
6
+ Simon Billinge (sb2896@columbia.edu)
7
+
8
+ Billinge Group and community contributors.
9
+
10
+ Contributors
11
+ ------------
12
+
13
+ For a list of contributors, visit
14
+ https://github.com/Billingegroup/scikit_package/graphs/contributors
@@ -0,0 +1,30 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) 2024, The Trustees of Columbia University
4
+ in the City of New York.
5
+ All rights reserved.
6
+
7
+ Redistribution and use in source and binary forms, with or without
8
+ modification, are permitted provided that the following conditions are met:
9
+
10
+ 1. Redistributions of source code must retain the above copyright notice, this
11
+ list of conditions and the following disclaimer.
12
+
13
+ 2. Redistributions in binary form must reproduce the above copyright notice,
14
+ this list of conditions and the following disclaimer in the documentation
15
+ and/or other materials provided with the distribution.
16
+
17
+ 3. Neither the name of the copyright holder nor the names of its contributors
18
+ may be used to endorse or promote products derived from this software
19
+ without specific prior written permission.
20
+
21
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
24
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
25
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,12 @@
1
+ graft src
2
+ graft tests
3
+ graft requirements
4
+
5
+ include AUTHORS.rst LICENSE*.rst README.rst
6
+
7
+ # Exclude all bytecode files and __pycache__ directories
8
+ global-exclude *.py[cod] # Exclude all .pyc, .pyo, and .pyd files.
9
+ global-exclude .DS_Store # Exclude Mac filesystem artifacts.
10
+ global-exclude __pycache__ # Exclude Python cache directories.
11
+ global-exclude .git* # Exclude git files and directories.
12
+ global-exclude .idea # Exclude PyCharm project settings.
@@ -0,0 +1,93 @@
1
+ Metadata-Version: 2.2
2
+ Name: scikit-package
3
+ Version: 0.0.1rc0
4
+ Summary: A Python package standard and generator for scientific code. Use scikit-package to launch a new project or migrate existing ones to support the latest Python versions and streamline the process of distributing and maintaining your software package.
5
+ Author-email: "Simon J.L. Billinge group" <simon.billinge@gmail.com>
6
+ Maintainer-email: "Simon J.L. Billinge group" <simon.billinge@gmail.com>
7
+ Project-URL: Homepage, https://github.com/Billingegroup/scikit-package/
8
+ Project-URL: Issues, https://github.com/Billingegroup/scikit-package/issues/
9
+ Keywords: Package template,open-source software
10
+ Classifier: Development Status :: 5 - Production/Stable
11
+ Classifier: Environment :: Console
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: License :: OSI Approved :: BSD License
15
+ Classifier: Operating System :: MacOS :: MacOS X
16
+ Classifier: Operating System :: Microsoft :: Windows
17
+ Classifier: Operating System :: POSIX
18
+ Classifier: Operating System :: Unix
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Topic :: Scientific/Engineering :: Physics
23
+ Classifier: Topic :: Scientific/Engineering :: Chemistry
24
+ Requires-Python: <3.14,>=3.11
25
+ Description-Content-Type: text/x-rst
26
+ License-File: LICENSE.rst
27
+ License-File: AUTHORS.rst
28
+ Requires-Dist: cookiecutter
29
+
30
+ |Icon| |title|_
31
+ ===============
32
+
33
+ .. |title| replace:: scikit-package
34
+ .. _title: https://Billingegroup.github.io/scikit-package
35
+
36
+ .. |Icon| image:: https://avatars.githubusercontent.com/Billingegroup
37
+ :target: https://Billingegroup.github.io/scikit-package
38
+ :height: 100px
39
+
40
+ |PyPi| |Forge| |PythonVersion| |PR|
41
+
42
+ |CI| |Codecov| |Black| |Tracking|
43
+
44
+ .. |Black| image:: https://img.shields.io/badge/code_style-black-black
45
+ :target: https://github.com/psf/black
46
+
47
+ .. |CI| image:: https://github.com/Billingegroup/scikit-package/actions/workflows/matrix-and-codecov-on-merge-to-main.yml/badge.svg
48
+ :target: https://github.com/Billingegroup/scikit-package/actions/workflows/matrix-and-codecov-on-merge-to-main.yml
49
+
50
+ .. |Codecov| image:: https://codecov.io/gh/Billingegroup/scikit-package/branch/main/graph/badge.svg
51
+ :target: https://codecov.io/gh/Billingegroup/scikit-package
52
+
53
+ .. |Forge| image:: https://img.shields.io/conda/vn/conda-forge/scikit-package
54
+ :target: https://anaconda.org/conda-forge/scikit-package
55
+
56
+ .. |PR| image:: https://img.shields.io/badge/PR-Welcome-29ab47ff
57
+
58
+ .. |PyPi| image:: https://img.shields.io/pypi/v/scikit-package
59
+ :target: https://pypi.org/project/scikit-package/
60
+
61
+ .. |PythonVersion| image:: https://img.shields.io/pypi/pyversions/scikit-package
62
+ :target: https://pypi.org/project/scikit-package/
63
+
64
+ .. |Tracking| image:: https://img.shields.io/badge/issue_tracking-github-blue
65
+ :target: https://github.com/Billingegroup/scikit-package/issues
66
+
67
+ ``scikit-package`` is a Python package standard and generator for scientific code. Use ``scikit-package`` to launch a new project or migrate existing ones to support the latest Python versions and streamline the process of distributing and maintaining your software package.
68
+
69
+ - Automated `PEP8 <https://peps.python.org/pep-0008/>`_ and `PEP256 <https://peps.python.org/pep-0256/>`_ standard checks.
70
+ - Automated PyPI/GitHub release, testing, documentation, and CHANGELOG updates.
71
+ - Streamlined package release workflow with a checklist.
72
+ - Latest Python version support compatible with `SPEC0 <https://scientific-python.org/specs/spec-0000/>`_.
73
+ - Rich README template containing badges, installation, support, and contribution guide.
74
+ - Automatic spelling check, linting for .json, .yml, and .md files.
75
+
76
+ Demo
77
+ ----
78
+
79
+ .. image:: doc/source/gif/demo.gif
80
+ :alt: scikit-package demo
81
+ :align: center
82
+
83
+ Getting started
84
+ ---------------
85
+
86
+ Are you interested in amplifying your scientific contribution by standarlizing and distributing your Python code? Begin with the ``Getting started`` page in our online documentation at https://Billingegroup.github.io/scikit-package!
87
+
88
+ How to cite scikit-package
89
+ ---------------------------
90
+
91
+ If you use ``scikit-package`` to standardize your Python software, we would like you to cite scikit-package as follows:
92
+
93
+ scikit-package, https://github.com/Billingegroup/scikit-package
@@ -0,0 +1,64 @@
1
+ |Icon| |title|_
2
+ ===============
3
+
4
+ .. |title| replace:: scikit-package
5
+ .. _title: https://Billingegroup.github.io/scikit-package
6
+
7
+ .. |Icon| image:: https://avatars.githubusercontent.com/Billingegroup
8
+ :target: https://Billingegroup.github.io/scikit-package
9
+ :height: 100px
10
+
11
+ |PyPi| |Forge| |PythonVersion| |PR|
12
+
13
+ |CI| |Codecov| |Black| |Tracking|
14
+
15
+ .. |Black| image:: https://img.shields.io/badge/code_style-black-black
16
+ :target: https://github.com/psf/black
17
+
18
+ .. |CI| image:: https://github.com/Billingegroup/scikit-package/actions/workflows/matrix-and-codecov-on-merge-to-main.yml/badge.svg
19
+ :target: https://github.com/Billingegroup/scikit-package/actions/workflows/matrix-and-codecov-on-merge-to-main.yml
20
+
21
+ .. |Codecov| image:: https://codecov.io/gh/Billingegroup/scikit-package/branch/main/graph/badge.svg
22
+ :target: https://codecov.io/gh/Billingegroup/scikit-package
23
+
24
+ .. |Forge| image:: https://img.shields.io/conda/vn/conda-forge/scikit-package
25
+ :target: https://anaconda.org/conda-forge/scikit-package
26
+
27
+ .. |PR| image:: https://img.shields.io/badge/PR-Welcome-29ab47ff
28
+
29
+ .. |PyPi| image:: https://img.shields.io/pypi/v/scikit-package
30
+ :target: https://pypi.org/project/scikit-package/
31
+
32
+ .. |PythonVersion| image:: https://img.shields.io/pypi/pyversions/scikit-package
33
+ :target: https://pypi.org/project/scikit-package/
34
+
35
+ .. |Tracking| image:: https://img.shields.io/badge/issue_tracking-github-blue
36
+ :target: https://github.com/Billingegroup/scikit-package/issues
37
+
38
+ ``scikit-package`` is a Python package standard and generator for scientific code. Use ``scikit-package`` to launch a new project or migrate existing ones to support the latest Python versions and streamline the process of distributing and maintaining your software package.
39
+
40
+ - Automated `PEP8 <https://peps.python.org/pep-0008/>`_ and `PEP256 <https://peps.python.org/pep-0256/>`_ standard checks.
41
+ - Automated PyPI/GitHub release, testing, documentation, and CHANGELOG updates.
42
+ - Streamlined package release workflow with a checklist.
43
+ - Latest Python version support compatible with `SPEC0 <https://scientific-python.org/specs/spec-0000/>`_.
44
+ - Rich README template containing badges, installation, support, and contribution guide.
45
+ - Automatic spelling check, linting for .json, .yml, and .md files.
46
+
47
+ Demo
48
+ ----
49
+
50
+ .. image:: doc/source/gif/demo.gif
51
+ :alt: scikit-package demo
52
+ :align: center
53
+
54
+ Getting started
55
+ ---------------
56
+
57
+ Are you interested in amplifying your scientific contribution by standarlizing and distributing your Python code? Begin with the ``Getting started`` page in our online documentation at https://Billingegroup.github.io/scikit-package!
58
+
59
+ How to cite scikit-package
60
+ ---------------------------
61
+
62
+ If you use ``scikit-package`` to standardize your Python software, we would like you to cite scikit-package as follows:
63
+
64
+ scikit-package, https://github.com/Billingegroup/scikit-package
@@ -0,0 +1,87 @@
1
+ [build-system]
2
+ requires = ["setuptools>=62.0", "setuptools-git-versioning>=2.0"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "scikit-package"
7
+ dynamic=['version', 'dependencies']
8
+ authors = [
9
+ { name="Simon J.L. Billinge group", email="simon.billinge@gmail.com" },
10
+ ]
11
+ maintainers = [
12
+ { name="Simon J.L. Billinge group", email="simon.billinge@gmail.com" },
13
+ ]
14
+ description = "A Python package standard and generator for scientific code. Use scikit-package to launch a new project or migrate existing ones to support the latest Python versions and streamline the process of distributing and maintaining your software package."
15
+ keywords = ['Package template', 'open-source software']
16
+ readme = "README.rst"
17
+ requires-python = ">=3.11, <3.14"
18
+ classifiers = [
19
+ 'Development Status :: 5 - Production/Stable',
20
+ 'Environment :: Console',
21
+ 'Intended Audience :: Developers',
22
+ 'Intended Audience :: Science/Research',
23
+ 'License :: OSI Approved :: BSD License',
24
+ 'Operating System :: MacOS :: MacOS X',
25
+ 'Operating System :: Microsoft :: Windows',
26
+ 'Operating System :: POSIX',
27
+ 'Operating System :: Unix',
28
+ 'Programming Language :: Python :: 3.11',
29
+ 'Programming Language :: Python :: 3.12',
30
+ 'Programming Language :: Python :: 3.13',
31
+ 'Topic :: Scientific/Engineering :: Physics',
32
+ 'Topic :: Scientific/Engineering :: Chemistry',
33
+ ]
34
+
35
+ [project.urls]
36
+ Homepage = "https://github.com/Billingegroup/scikit-package/"
37
+ Issues = "https://github.com/Billingegroup/scikit-package/issues/"
38
+
39
+ [tool.setuptools-git-versioning]
40
+ enabled = true
41
+ template = "{tag}"
42
+ dev_template = "{tag}"
43
+ dirty_template = "{tag}"
44
+
45
+ [tool.setuptools.packages.find]
46
+ where = ["src"] # list of folders that contain the packages (["."] by default)
47
+ include = ["*"] # package names should match these glob patterns (["*"] by default)
48
+ exclude = [] # exclude packages matching these glob patterns (empty by default)
49
+ namespaces = false # to disable scanning PEP 420 namespaces (true by default)
50
+
51
+ [tool.setuptools.dynamic]
52
+ dependencies = {file = ["requirements/pip.txt"]}
53
+
54
+ [project.scripts]
55
+ package = "scikit_package.app:main"
56
+
57
+ [tool.codespell]
58
+ exclude-file = ".codespell/ignore_lines.txt"
59
+ ignore-words = ".codespell/ignore_words.txt"
60
+ skip = "*.cif,*.dat"
61
+
62
+ [tool.black]
63
+ line-length = 79
64
+ include = '\.pyi?$'
65
+ exclude = '''
66
+ /(
67
+ \.git
68
+ | \.hg
69
+ | \.mypy_cache
70
+ | \.tox
71
+ | \.venv
72
+ | \.rst
73
+ | \.txt
74
+ | _build
75
+ | buck-out
76
+ | build
77
+ | dist
78
+ # The following are specific to Black, you probably don't want those.
79
+ | blib2to3
80
+ | tests/data
81
+ )/
82
+ '''
83
+
84
+ [tool.pytest.ini_options]
85
+ addopts = [
86
+ "--ignore={{ cookiecutter.github_repo_name }}",
87
+ ]
File without changes
@@ -0,0 +1 @@
1
+ cookiecutter
@@ -0,0 +1,4 @@
1
+ sphinx
2
+ sphinx_rtd_theme
3
+ doctr
4
+ m2r
@@ -0,0 +1 @@
1
+ cookiecutter
@@ -0,0 +1,5 @@
1
+ pytest
2
+ codecov
3
+ coverage
4
+ pytest-env
5
+ pytest-cov
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env python
2
+ ##############################################################################
3
+ #
4
+ # (c) 2024 The Trustees of Columbia University in the City of New York.
5
+ # All rights reserved.
6
+ #
7
+ # File coded by: Billinge Group members and community contributors.
8
+ #
9
+ # See GitHub contributions for a more detailed list of contributors.
10
+ # https://github.com/Billingegroup/scikit-package/graphs/contributors
11
+ #
12
+ # See LICENSE.rst for license information.
13
+ #
14
+ ##############################################################################
15
+ """A Python package standard and generator for scientific code.
16
+
17
+ Use scikit-package to launch a new project or migrate existing ones to
18
+ support the latest Python versions and streamline the process of
19
+ distributing and maintaining your software package.
20
+ """
21
+
22
+ # package version
23
+ from scikit_package.version import __version__
24
+
25
+ # silence the pyflakes syntax checker
26
+ assert __version__ or True
27
+
28
+ # End of file
@@ -0,0 +1,58 @@
1
+ import subprocess
2
+ from argparse import ArgumentParser
3
+
4
+
5
+ def create():
6
+ run_cookiecutter()
7
+
8
+
9
+ def update():
10
+ # FIXME: Implement the update command.
11
+ # As of now it does the same as the create command.
12
+ run_cookiecutter()
13
+
14
+
15
+ def run_cookiecutter():
16
+ try:
17
+ subprocess.run(
18
+ [
19
+ "cookiecutter",
20
+ "https://github.com/Billingegroup/scikit-package",
21
+ ],
22
+ check=True,
23
+ )
24
+ except subprocess.CalledProcessError as e:
25
+ print(f"Failed to run scikit-package for the following reason: {e}")
26
+
27
+
28
+ def setup_subparsers(parser):
29
+ # Create "create" subparser
30
+ parser_create = parser.add_parser("create", help="Create a new package")
31
+ parser_create.set_defaults(func=create)
32
+ # Create "update" subparser
33
+ parser_update = parser.add_parser(
34
+ "update", help="Update an existing package"
35
+ )
36
+ parser_update.set_defaults(func=update)
37
+
38
+
39
+ def main():
40
+ """Entry point for the scikit-package CLI.
41
+
42
+ Examples
43
+ --------
44
+ >>> package create
45
+ >>> package update
46
+ """
47
+
48
+ parser = ArgumentParser(
49
+ description="Manage package operations with scikit-package."
50
+ )
51
+ subparsers = parser.add_subparsers(dest="command", required=True)
52
+ setup_subparsers(subparsers)
53
+ args = parser.parse_args()
54
+ args.func()
55
+
56
+
57
+ if __name__ == "__main__":
58
+ main()
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env python
2
+ ##############################################################################
3
+ #
4
+ # (c) 2024 The Trustees of Columbia University in the City of New York.
5
+ # All rights reserved.
6
+ #
7
+ # File coded by: Billinge Group members and community contributors.
8
+ #
9
+ # See GitHub contributions for a more detailed list of contributors.
10
+ # https://github.com/Billingegroup/scikit-package/graphs/contributors
11
+ #
12
+ # See LICENSE.rst for license information.
13
+ #
14
+ ##############################################################################
15
+ """Definition of __version__."""
16
+
17
+ # We do not use the other three variables, but can be added back if needed.
18
+ # __all__ = ["__date__", "__git_commit__", "__timestamp__", "__version__"]
19
+
20
+ # obtain version information
21
+ from importlib.metadata import version
22
+
23
+ __version__ = version("scikit_package")
24
+
25
+ # End of file
@@ -0,0 +1,93 @@
1
+ Metadata-Version: 2.2
2
+ Name: scikit-package
3
+ Version: 0.0.1rc0
4
+ Summary: A Python package standard and generator for scientific code. Use scikit-package to launch a new project or migrate existing ones to support the latest Python versions and streamline the process of distributing and maintaining your software package.
5
+ Author-email: "Simon J.L. Billinge group" <simon.billinge@gmail.com>
6
+ Maintainer-email: "Simon J.L. Billinge group" <simon.billinge@gmail.com>
7
+ Project-URL: Homepage, https://github.com/Billingegroup/scikit-package/
8
+ Project-URL: Issues, https://github.com/Billingegroup/scikit-package/issues/
9
+ Keywords: Package template,open-source software
10
+ Classifier: Development Status :: 5 - Production/Stable
11
+ Classifier: Environment :: Console
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: License :: OSI Approved :: BSD License
15
+ Classifier: Operating System :: MacOS :: MacOS X
16
+ Classifier: Operating System :: Microsoft :: Windows
17
+ Classifier: Operating System :: POSIX
18
+ Classifier: Operating System :: Unix
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Topic :: Scientific/Engineering :: Physics
23
+ Classifier: Topic :: Scientific/Engineering :: Chemistry
24
+ Requires-Python: <3.14,>=3.11
25
+ Description-Content-Type: text/x-rst
26
+ License-File: LICENSE.rst
27
+ License-File: AUTHORS.rst
28
+ Requires-Dist: cookiecutter
29
+
30
+ |Icon| |title|_
31
+ ===============
32
+
33
+ .. |title| replace:: scikit-package
34
+ .. _title: https://Billingegroup.github.io/scikit-package
35
+
36
+ .. |Icon| image:: https://avatars.githubusercontent.com/Billingegroup
37
+ :target: https://Billingegroup.github.io/scikit-package
38
+ :height: 100px
39
+
40
+ |PyPi| |Forge| |PythonVersion| |PR|
41
+
42
+ |CI| |Codecov| |Black| |Tracking|
43
+
44
+ .. |Black| image:: https://img.shields.io/badge/code_style-black-black
45
+ :target: https://github.com/psf/black
46
+
47
+ .. |CI| image:: https://github.com/Billingegroup/scikit-package/actions/workflows/matrix-and-codecov-on-merge-to-main.yml/badge.svg
48
+ :target: https://github.com/Billingegroup/scikit-package/actions/workflows/matrix-and-codecov-on-merge-to-main.yml
49
+
50
+ .. |Codecov| image:: https://codecov.io/gh/Billingegroup/scikit-package/branch/main/graph/badge.svg
51
+ :target: https://codecov.io/gh/Billingegroup/scikit-package
52
+
53
+ .. |Forge| image:: https://img.shields.io/conda/vn/conda-forge/scikit-package
54
+ :target: https://anaconda.org/conda-forge/scikit-package
55
+
56
+ .. |PR| image:: https://img.shields.io/badge/PR-Welcome-29ab47ff
57
+
58
+ .. |PyPi| image:: https://img.shields.io/pypi/v/scikit-package
59
+ :target: https://pypi.org/project/scikit-package/
60
+
61
+ .. |PythonVersion| image:: https://img.shields.io/pypi/pyversions/scikit-package
62
+ :target: https://pypi.org/project/scikit-package/
63
+
64
+ .. |Tracking| image:: https://img.shields.io/badge/issue_tracking-github-blue
65
+ :target: https://github.com/Billingegroup/scikit-package/issues
66
+
67
+ ``scikit-package`` is a Python package standard and generator for scientific code. Use ``scikit-package`` to launch a new project or migrate existing ones to support the latest Python versions and streamline the process of distributing and maintaining your software package.
68
+
69
+ - Automated `PEP8 <https://peps.python.org/pep-0008/>`_ and `PEP256 <https://peps.python.org/pep-0256/>`_ standard checks.
70
+ - Automated PyPI/GitHub release, testing, documentation, and CHANGELOG updates.
71
+ - Streamlined package release workflow with a checklist.
72
+ - Latest Python version support compatible with `SPEC0 <https://scientific-python.org/specs/spec-0000/>`_.
73
+ - Rich README template containing badges, installation, support, and contribution guide.
74
+ - Automatic spelling check, linting for .json, .yml, and .md files.
75
+
76
+ Demo
77
+ ----
78
+
79
+ .. image:: doc/source/gif/demo.gif
80
+ :alt: scikit-package demo
81
+ :align: center
82
+
83
+ Getting started
84
+ ---------------
85
+
86
+ Are you interested in amplifying your scientific contribution by standarlizing and distributing your Python code? Begin with the ``Getting started`` page in our online documentation at https://Billingegroup.github.io/scikit-package!
87
+
88
+ How to cite scikit-package
89
+ ---------------------------
90
+
91
+ If you use ``scikit-package`` to standardize your Python software, we would like you to cite scikit-package as follows:
92
+
93
+ scikit-package, https://github.com/Billingegroup/scikit-package
@@ -0,0 +1,21 @@
1
+ AUTHORS.rst
2
+ LICENSE.rst
3
+ MANIFEST.in
4
+ README.rst
5
+ pyproject.toml
6
+ requirements/build.txt
7
+ requirements/conda.txt
8
+ requirements/docs.txt
9
+ requirements/pip.txt
10
+ requirements/test.txt
11
+ src/scikit_package/__init__.py
12
+ src/scikit_package/app.py
13
+ src/scikit_package/version.py
14
+ src/scikit_package.egg-info/PKG-INFO
15
+ src/scikit_package.egg-info/SOURCES.txt
16
+ src/scikit_package.egg-info/dependency_links.txt
17
+ src/scikit_package.egg-info/entry_points.txt
18
+ src/scikit_package.egg-info/requires.txt
19
+ src/scikit_package.egg-info/top_level.txt
20
+ tests/conftest.py
21
+ tests/test_version.py
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ package = scikit_package.app:main
@@ -0,0 +1,19 @@
1
+ import json
2
+ from pathlib import Path
3
+
4
+ import pytest
5
+
6
+
7
+ @pytest.fixture
8
+ def user_filesystem(tmp_path):
9
+ base_dir = Path(tmp_path)
10
+ home_dir = base_dir / "home_dir"
11
+ home_dir.mkdir(parents=True, exist_ok=True)
12
+ cwd_dir = base_dir / "cwd_dir"
13
+ cwd_dir.mkdir(parents=True, exist_ok=True)
14
+
15
+ home_config_data = {"username": "home_username", "email": "home@email.com"}
16
+ with open(home_dir / "diffpyconfig.json", "w") as f:
17
+ json.dump(home_config_data, f)
18
+
19
+ yield tmp_path
@@ -0,0 +1,11 @@
1
+ """Unit tests for __version__.py."""
2
+
3
+ import scikit_package
4
+
5
+
6
+ def test_package_version():
7
+ """Ensure the package version is defined and not set to the initial
8
+ placeholder."""
9
+ assert hasattr(scikit_package, "__version__")
10
+ assert scikit_package.__version__ != "0.0.0"
11
+ print(scikit_package.__version__)