%global _empty_manifest_terminate_build 0 Name: python-calcipy Version: 1.2.5 Release: 1 Summary: Python package to simplify development License: MIT URL: https://github.com/kyleking/calcipy Source0: https://mirrors.aliyun.com/pypi/web/packages/ca/9d/0811bc8e6db205a3d935972bbdfe0d0767040abcc41b4eaf9588c2df7a50/calcipy-1.2.5.tar.gz BuildArch: noarch Requires: python3-arrow Requires: python3-autopep8 Requires: python3-bandit Requires: python3-beartype Requires: python3-bidict Requires: python3-commitizen Requires: python3-corallium Requires: python3-dlint Requires: python3-flake8 Requires: python3-flake8-adjustable-complexity Requires: python3-flake8-annotations-complexity Requires: python3-flake8-executable Requires: python3-flake8-expression-complexity Requires: python3-flake8-functions Requires: python3-flake8-pep3101 Requires: python3-flake8-pie Requires: python3-flake8-printf-formatting Requires: python3-flake8-raise Requires: python3-flake8-require-beartype Requires: python3-flake8-sql Requires: python3-flake8-string-format Requires: python3-flake8-super Requires: python3-flake8-tuple Requires: python3-flake8-typing-imports Requires: python3-flake8-use-pathlib Requires: python3-flake8-variables-names Requires: python3-invoke Requires: python3-mkdocs Requires: python3-mkdocs-build-plantuml-plugin Requires: python3-mkdocs-gen-files Requires: python3-mkdocs-git-revision-date-localized-plugin Requires: python3-mkdocs-include-markdown-plugin Requires: python3-mkdocs-literate-nav Requires: python3-mkdocs-material Requires: python3-mkdocs-section-index Requires: python3-mkdocstrings[python] Requires: python3-mypy Requires: python3-nox-poetry Requires: python3-pandas Requires: python3-pip-check Requires: python3-pydantic Requires: python3-pylint Requires: python3-pymdown-extensions Requires: python3-pyrate_limiter Requires: python3-pytest Requires: python3-pytest-cov Requires: python3-pytest-randomly Requires: python3-pytest-watcher Requires: python3-box Requires: python3-pyyaml Requires: python3-requests Requires: python3-ruff Requires: python3-semgrep Requires: python3-tabulate Requires: python3-transitions %description # calcipy ![./calcipy-banner-wide.svg](https://raw.githubusercontent.com/KyleKing/calcipy/main/docs/calcipy-banner-wide.svg) `calcipy` is a Python package that implements best practices such as code style (linting, auto-fixes), documentation, CI/CD, and logging. Like the calcium carbonate in hard coral, packages can be built on the `calcipy` foundation. `calcipy` has some configurability, but is tailored for my particular use cases. If you want the same sort of functionality, there are a number of alternatives to consider: - [pyscaffold](https://github.com/pyscaffold/pyscaffold) is a much more mature project that aims for the same goals, but with a slightly different approach and tech stack (tox vs. nox, cookiecutter vs. copier, etc.) - [tidypy](https://github.com/jayclassless/tidypy#features), [pylama](https://github.com/klen/pylama), and [codecheck](https://pypi.org/project/codecheck/) offer similar functionality of bundling and running static checkers, but makes far fewer assumptions - [pytoil](https://github.com/FollowTheProcess/pytoil) is a general CLI tool for developer automation - And many more such as [pyta](https://github.com/pyta-uoft/pyta), [prospector](https://github.com/PyCQA/prospector), [wemake-python-styleguide](https://github.com/wemake-services/wemake-python-styleguide) / [cjolowicz/cookiecutter-hypermodern-python](https://github.com/cjolowicz/cookiecutter-hypermodern-python), [formate](https://github.com/python-formate/formate), [johnthagen/python-blueprint](https://github.com/johnthagen/python-blueprint), [oxsecurity/megalinter](https://github.com/oxsecurity/megalinter), etc. ## Installation Calcipy needs a few static files managed using copier and a template project: [kyleking/calcipy_template](https://github.com/KyleKing/calcipy_template/) You can quickly use the template to create a new project or add calcipy to an existing one: ```sh # Install copier. pipx is recommended pipx install copier # To create a new project copier copy gh:KyleKing/calcipy_template new_project cd new_project # Or convert/update an existing one cd my_project copier copy gh:KyleKing/calcipy_template . copier update ``` See [./Advanced_Configuration.md](./Advanced_Configuration.md) for documentation on the configurable aspects of `calcipy` ### Calcipy CLI Additionally, `calcipy` can be run as a CLI application without adding the package as a dependency. Quick Start: ```sh pipx install calcipy # Use 'tags' to create a CODE_TAG_SUMMARY of the specified directory calcipy tags --help calcipy tags --base-dir=~/path/to/my_project # See additional documentation from the CLI help > calcipy Subcommands: main Main task pipeline. other Run tasks that are otherwise not exercised in main. release Release pipeline. cl.bump Bumps project version based on commits & settings in pyproject.toml. cl.write Write a Changelog file with the raw Git history. doc.build Build documentation with mkdocs. doc.deploy Deploy docs to the Github `gh-pages` branch. doc.watch Serve local documentation for local editing. lint.autopep8 Run autopep8. lint.check (lint) Run ruff as check-only. lint.fix Run ruff and apply fixes. lint.flake8 Run ruff and apply fixes. lint.pre-commit Run pre-commit. lint.pylint Run ruff and apply fixes. lint.security Attempt to identify possible security vulnerabilities. lint.watch Run ruff as check-only. nox.noxfile (nox) Run nox from the local noxfile. pack.check-licenses Check licenses for compatibility with `licensecheck`. pack.lock Ensure poetry.lock is up-to-date. pack.publish Build the distributed format(s) and publish. stale.check-for-stale-packages (stale) Identify stale dependencies. tags.collect-code-tags (tags) Create a `CODE_TAG_SUMMARY.md` with a table for TODO- and FIXME-style code comments. test.coverage Generate useful coverage outputs after running pytest. test.pytest (test) Run pytest with default arguments. test.step Run pytest optimized to stop on first error. test.watch Run pytest with polling and optimized to stop on first error. types.mypy Run mypy. types.pyright Run pyright. Global Task Options: working_dir Set the cwd for the program. Example: "../run --working-dir .. lint test" *file_args List of Paths available globally to all tasks. Will resolve paths with working_dir verbose Globally configure logger verbosity (-vvv for most verbose) ``` ### Calcipy Pre-Commit `calcipy` can also be used as a `pre-commit` task by adding the below snippet to your `pre-commit` file: ```yaml repos: - repo: https://github.com/KyleKing/calcipy rev: main hooks: - id: tags - id: lint-fix - id: types ``` ## Project Status See the `Open Issues` and/or the [CODE_TAG_SUMMARY]. For release history, see the [CHANGELOG]. ## Contributing We welcome pull requests! For your pull request to be accepted smoothly, we suggest that you first open a GitHub issue to discuss your idea. For resources on getting started with the code base, see the below documentation: - [DEVELOPER_GUIDE] - [STYLE_GUIDE] ## Code of Conduct We follow the [Contributor Covenant Code of Conduct][contributor-covenant]. ### Open Source Status We try to reasonably meet most aspects of the "OpenSSF scorecard" from [Open Source Insights](https://deps.dev/pypi/calcipy) ## Responsible Disclosure If you have any security issue to report, please contact the project maintainers privately. You can reach us at [dev.act.kyle@gmail.com](mailto:dev.act.kyle@gmail.com). ## License [LICENSE] [changelog]: https://calcipy.kyleking.me/docs/CHANGELOG [code_tag_summary]: https://calcipy.kyleking.me/docs/CODE_TAG_SUMMARY [contributor-covenant]: https://www.contributor-covenant.org [developer_guide]: https://calcipy.kyleking.me/docs/DEVELOPER_GUIDE [license]: https://github.com/kyleking/calcipy/blob/main/LICENSE [style_guide]: https://calcipy.kyleking.me/docs/STYLE_GUIDE %package -n python3-calcipy Summary: Python package to simplify development Provides: python-calcipy BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-calcipy # calcipy ![./calcipy-banner-wide.svg](https://raw.githubusercontent.com/KyleKing/calcipy/main/docs/calcipy-banner-wide.svg) `calcipy` is a Python package that implements best practices such as code style (linting, auto-fixes), documentation, CI/CD, and logging. Like the calcium carbonate in hard coral, packages can be built on the `calcipy` foundation. `calcipy` has some configurability, but is tailored for my particular use cases. If you want the same sort of functionality, there are a number of alternatives to consider: - [pyscaffold](https://github.com/pyscaffold/pyscaffold) is a much more mature project that aims for the same goals, but with a slightly different approach and tech stack (tox vs. nox, cookiecutter vs. copier, etc.) - [tidypy](https://github.com/jayclassless/tidypy#features), [pylama](https://github.com/klen/pylama), and [codecheck](https://pypi.org/project/codecheck/) offer similar functionality of bundling and running static checkers, but makes far fewer assumptions - [pytoil](https://github.com/FollowTheProcess/pytoil) is a general CLI tool for developer automation - And many more such as [pyta](https://github.com/pyta-uoft/pyta), [prospector](https://github.com/PyCQA/prospector), [wemake-python-styleguide](https://github.com/wemake-services/wemake-python-styleguide) / [cjolowicz/cookiecutter-hypermodern-python](https://github.com/cjolowicz/cookiecutter-hypermodern-python), [formate](https://github.com/python-formate/formate), [johnthagen/python-blueprint](https://github.com/johnthagen/python-blueprint), [oxsecurity/megalinter](https://github.com/oxsecurity/megalinter), etc. ## Installation Calcipy needs a few static files managed using copier and a template project: [kyleking/calcipy_template](https://github.com/KyleKing/calcipy_template/) You can quickly use the template to create a new project or add calcipy to an existing one: ```sh # Install copier. pipx is recommended pipx install copier # To create a new project copier copy gh:KyleKing/calcipy_template new_project cd new_project # Or convert/update an existing one cd my_project copier copy gh:KyleKing/calcipy_template . copier update ``` See [./Advanced_Configuration.md](./Advanced_Configuration.md) for documentation on the configurable aspects of `calcipy` ### Calcipy CLI Additionally, `calcipy` can be run as a CLI application without adding the package as a dependency. Quick Start: ```sh pipx install calcipy # Use 'tags' to create a CODE_TAG_SUMMARY of the specified directory calcipy tags --help calcipy tags --base-dir=~/path/to/my_project # See additional documentation from the CLI help > calcipy Subcommands: main Main task pipeline. other Run tasks that are otherwise not exercised in main. release Release pipeline. cl.bump Bumps project version based on commits & settings in pyproject.toml. cl.write Write a Changelog file with the raw Git history. doc.build Build documentation with mkdocs. doc.deploy Deploy docs to the Github `gh-pages` branch. doc.watch Serve local documentation for local editing. lint.autopep8 Run autopep8. lint.check (lint) Run ruff as check-only. lint.fix Run ruff and apply fixes. lint.flake8 Run ruff and apply fixes. lint.pre-commit Run pre-commit. lint.pylint Run ruff and apply fixes. lint.security Attempt to identify possible security vulnerabilities. lint.watch Run ruff as check-only. nox.noxfile (nox) Run nox from the local noxfile. pack.check-licenses Check licenses for compatibility with `licensecheck`. pack.lock Ensure poetry.lock is up-to-date. pack.publish Build the distributed format(s) and publish. stale.check-for-stale-packages (stale) Identify stale dependencies. tags.collect-code-tags (tags) Create a `CODE_TAG_SUMMARY.md` with a table for TODO- and FIXME-style code comments. test.coverage Generate useful coverage outputs after running pytest. test.pytest (test) Run pytest with default arguments. test.step Run pytest optimized to stop on first error. test.watch Run pytest with polling and optimized to stop on first error. types.mypy Run mypy. types.pyright Run pyright. Global Task Options: working_dir Set the cwd for the program. Example: "../run --working-dir .. lint test" *file_args List of Paths available globally to all tasks. Will resolve paths with working_dir verbose Globally configure logger verbosity (-vvv for most verbose) ``` ### Calcipy Pre-Commit `calcipy` can also be used as a `pre-commit` task by adding the below snippet to your `pre-commit` file: ```yaml repos: - repo: https://github.com/KyleKing/calcipy rev: main hooks: - id: tags - id: lint-fix - id: types ``` ## Project Status See the `Open Issues` and/or the [CODE_TAG_SUMMARY]. For release history, see the [CHANGELOG]. ## Contributing We welcome pull requests! For your pull request to be accepted smoothly, we suggest that you first open a GitHub issue to discuss your idea. For resources on getting started with the code base, see the below documentation: - [DEVELOPER_GUIDE] - [STYLE_GUIDE] ## Code of Conduct We follow the [Contributor Covenant Code of Conduct][contributor-covenant]. ### Open Source Status We try to reasonably meet most aspects of the "OpenSSF scorecard" from [Open Source Insights](https://deps.dev/pypi/calcipy) ## Responsible Disclosure If you have any security issue to report, please contact the project maintainers privately. You can reach us at [dev.act.kyle@gmail.com](mailto:dev.act.kyle@gmail.com). ## License [LICENSE] [changelog]: https://calcipy.kyleking.me/docs/CHANGELOG [code_tag_summary]: https://calcipy.kyleking.me/docs/CODE_TAG_SUMMARY [contributor-covenant]: https://www.contributor-covenant.org [developer_guide]: https://calcipy.kyleking.me/docs/DEVELOPER_GUIDE [license]: https://github.com/kyleking/calcipy/blob/main/LICENSE [style_guide]: https://calcipy.kyleking.me/docs/STYLE_GUIDE %package help Summary: Development documents and examples for calcipy Provides: python3-calcipy-doc %description help # calcipy ![./calcipy-banner-wide.svg](https://raw.githubusercontent.com/KyleKing/calcipy/main/docs/calcipy-banner-wide.svg) `calcipy` is a Python package that implements best practices such as code style (linting, auto-fixes), documentation, CI/CD, and logging. Like the calcium carbonate in hard coral, packages can be built on the `calcipy` foundation. `calcipy` has some configurability, but is tailored for my particular use cases. If you want the same sort of functionality, there are a number of alternatives to consider: - [pyscaffold](https://github.com/pyscaffold/pyscaffold) is a much more mature project that aims for the same goals, but with a slightly different approach and tech stack (tox vs. nox, cookiecutter vs. copier, etc.) - [tidypy](https://github.com/jayclassless/tidypy#features), [pylama](https://github.com/klen/pylama), and [codecheck](https://pypi.org/project/codecheck/) offer similar functionality of bundling and running static checkers, but makes far fewer assumptions - [pytoil](https://github.com/FollowTheProcess/pytoil) is a general CLI tool for developer automation - And many more such as [pyta](https://github.com/pyta-uoft/pyta), [prospector](https://github.com/PyCQA/prospector), [wemake-python-styleguide](https://github.com/wemake-services/wemake-python-styleguide) / [cjolowicz/cookiecutter-hypermodern-python](https://github.com/cjolowicz/cookiecutter-hypermodern-python), [formate](https://github.com/python-formate/formate), [johnthagen/python-blueprint](https://github.com/johnthagen/python-blueprint), [oxsecurity/megalinter](https://github.com/oxsecurity/megalinter), etc. ## Installation Calcipy needs a few static files managed using copier and a template project: [kyleking/calcipy_template](https://github.com/KyleKing/calcipy_template/) You can quickly use the template to create a new project or add calcipy to an existing one: ```sh # Install copier. pipx is recommended pipx install copier # To create a new project copier copy gh:KyleKing/calcipy_template new_project cd new_project # Or convert/update an existing one cd my_project copier copy gh:KyleKing/calcipy_template . copier update ``` See [./Advanced_Configuration.md](./Advanced_Configuration.md) for documentation on the configurable aspects of `calcipy` ### Calcipy CLI Additionally, `calcipy` can be run as a CLI application without adding the package as a dependency. Quick Start: ```sh pipx install calcipy # Use 'tags' to create a CODE_TAG_SUMMARY of the specified directory calcipy tags --help calcipy tags --base-dir=~/path/to/my_project # See additional documentation from the CLI help > calcipy Subcommands: main Main task pipeline. other Run tasks that are otherwise not exercised in main. release Release pipeline. cl.bump Bumps project version based on commits & settings in pyproject.toml. cl.write Write a Changelog file with the raw Git history. doc.build Build documentation with mkdocs. doc.deploy Deploy docs to the Github `gh-pages` branch. doc.watch Serve local documentation for local editing. lint.autopep8 Run autopep8. lint.check (lint) Run ruff as check-only. lint.fix Run ruff and apply fixes. lint.flake8 Run ruff and apply fixes. lint.pre-commit Run pre-commit. lint.pylint Run ruff and apply fixes. lint.security Attempt to identify possible security vulnerabilities. lint.watch Run ruff as check-only. nox.noxfile (nox) Run nox from the local noxfile. pack.check-licenses Check licenses for compatibility with `licensecheck`. pack.lock Ensure poetry.lock is up-to-date. pack.publish Build the distributed format(s) and publish. stale.check-for-stale-packages (stale) Identify stale dependencies. tags.collect-code-tags (tags) Create a `CODE_TAG_SUMMARY.md` with a table for TODO- and FIXME-style code comments. test.coverage Generate useful coverage outputs after running pytest. test.pytest (test) Run pytest with default arguments. test.step Run pytest optimized to stop on first error. test.watch Run pytest with polling and optimized to stop on first error. types.mypy Run mypy. types.pyright Run pyright. Global Task Options: working_dir Set the cwd for the program. Example: "../run --working-dir .. lint test" *file_args List of Paths available globally to all tasks. Will resolve paths with working_dir verbose Globally configure logger verbosity (-vvv for most verbose) ``` ### Calcipy Pre-Commit `calcipy` can also be used as a `pre-commit` task by adding the below snippet to your `pre-commit` file: ```yaml repos: - repo: https://github.com/KyleKing/calcipy rev: main hooks: - id: tags - id: lint-fix - id: types ``` ## Project Status See the `Open Issues` and/or the [CODE_TAG_SUMMARY]. For release history, see the [CHANGELOG]. ## Contributing We welcome pull requests! For your pull request to be accepted smoothly, we suggest that you first open a GitHub issue to discuss your idea. For resources on getting started with the code base, see the below documentation: - [DEVELOPER_GUIDE] - [STYLE_GUIDE] ## Code of Conduct We follow the [Contributor Covenant Code of Conduct][contributor-covenant]. ### Open Source Status We try to reasonably meet most aspects of the "OpenSSF scorecard" from [Open Source Insights](https://deps.dev/pypi/calcipy) ## Responsible Disclosure If you have any security issue to report, please contact the project maintainers privately. You can reach us at [dev.act.kyle@gmail.com](mailto:dev.act.kyle@gmail.com). ## License [LICENSE] [changelog]: https://calcipy.kyleking.me/docs/CHANGELOG [code_tag_summary]: https://calcipy.kyleking.me/docs/CODE_TAG_SUMMARY [contributor-covenant]: https://www.contributor-covenant.org [developer_guide]: https://calcipy.kyleking.me/docs/DEVELOPER_GUIDE [license]: https://github.com/kyleking/calcipy/blob/main/LICENSE [style_guide]: https://calcipy.kyleking.me/docs/STYLE_GUIDE %prep %autosetup -n calcipy-1.2.5 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-calcipy -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri Jun 09 2023 Python_Bot - 1.2.5-1 - Package Spec generated