summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-11 07:01:24 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-11 07:01:24 +0000
commit0778d5f7415fae12558b39a6f2b8ab9d1c32f5c5 (patch)
treead478e0a66149110a59f1fb52a4d6b7153845d8c
parent3e01423a514c0165ae4f80b1fc4db2592ed0cd3b (diff)
automatic import of python-cognitive-complexity
-rw-r--r--.gitignore1
-rw-r--r--python-cognitive-complexity.spec306
-rw-r--r--sources1
3 files changed, 308 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..95954c0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/cognitive_complexity-1.3.0.tar.gz
diff --git a/python-cognitive-complexity.spec b/python-cognitive-complexity.spec
new file mode 100644
index 0000000..8925cb2
--- /dev/null
+++ b/python-cognitive-complexity.spec
@@ -0,0 +1,306 @@
+%global _empty_manifest_terminate_build 0
+Name: python-cognitive-complexity
+Version: 1.3.0
+Release: 1
+Summary: Library to calculate Python functions cognitive complexity via code
+License: MIT
+URL: https://github.com/Melevir/cognitive_complexity
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/6a/ff/3cd46792fcbf742458083527407bc336efe382b168595583a06c70bf8e54/cognitive_complexity-1.3.0.tar.gz
+BuildArch: noarch
+
+
+%description
+# congnitive-complexity
+
+[![Build Status](https://travis-ci.org/Melevir/cognitive_complexity.svg?branch=master)](https://travis-ci.org/Melevir/cognitive_complexity)
+[![Maintainability](https://api.codeclimate.com/v1/badges/853d47d353e7becc9f09/maintainability)](https://codeclimate.com/github/Melevir/cognitive_complexity/maintainability)
+[![Test Coverage](https://api.codeclimate.com/v1/badges/853d47d353e7becc9f09/test_coverage)](https://codeclimate.com/github/Melevir/cognitive_complexity/test_coverage)
+[![PyPI version](https://badge.fury.io/py/cognitive-complexity.svg)](https://badge.fury.io/py/cognitive-complexity)
+![PyPI - Python Version](https://img.shields.io/pypi/pyversions/cognitive-complexity)
+
+Library to calculate Python functions cognitive complexity via code.
+
+## Installation
+
+```bash
+pip install cognitive_complexity
+```
+
+## Usage
+
+```python
+>>> import ast
+
+>>> funcdef = ast.parse("""
+... def f(a):
+... return a * f(a - 1) # +1 for recursion
+... """).body[0]
+
+>>> from cognitive_complexity.api import get_cognitive_complexity
+>>> get_cognitive_complexity(funcdef)
+1
+```
+
+### Flake8-Cognitive-Complexity Extension
+
+Perhaps the most common way to use this library (especially if you are
+already using the [Flake8 linter](https://flake8.pycqa.org/en/latest/))
+is to use the
+[flake8-cognitive-complexity extension](https://github.com/Melevir/flake8-cognitive-complexity).
+If you run Flake8 with this extension installed, Flake8 will let you know
+if your code is too complex. For more details and documentation, visit the
+[flake8-cognitive-complexity extension repository](https://github.com/Melevir/flake8-cognitive-complexity).
+
+## What is cognitive complexity
+
+Here are some readings about cognitive complexity:
+
+- [Cognitive Complexity, Because Testability != Understandability](https://blog.sonarsource.com/cognitive-complexity-because-testability-understandability);
+- [Cognitive Complexity: A new way of measuring understandability](https://www.sonarsource.com/docs/CognitiveComplexity.pdf),
+ white paper by G. Ann Campbell;
+- [Cognitive Complexity: the New Guide to Refactoring for Maintainable Code](https://www.youtube.com/watch?v=5C6AGTlKSjY);
+- [Cognitive Complexity](https://docs.codeclimate.com/docs/cognitive-complexity)
+ from CodeClimate docs;
+- [Is Your Code Readable By Humans? Cognitive Complexity Tells You](https://www.tomasvotruba.cz/blog/2018/05/21/is-your-code-readable-by-humans-cognitive-complexity-tells-you/).
+
+## Realization details
+
+This is not precise realization of original algorithm
+proposed by [G. Ann Campbell](https://github.com/ganncamp),
+but it gives rather similar results.
+The algorithm gives complexity points for breaking control flow, nesting,
+recursion, stacks logic operation etc.
+
+## Contributing
+
+We would love you to contribute to our project. It's simple:
+
+- Create an issue with bug you found or proposal you have. Wait for
+ approve from maintainer.
+- Create a pull request. Make sure all checks are green.
+- Fix review comments if any.
+- Be awesome.
+
+Here are useful tips:
+
+- You can run all checks and tests with `make check`. Please do it
+ before TravisCI does.
+- We use [BestDoctor python styleguide](https://github.com/best-doctor/guides/blob/master/guides/python_styleguide.md).
+ Sorry, styleguide is available only in Russian for now.
+- We respect [Django CoC](https://www.djangoproject.com/conduct/).
+ Make soft, not bullshit.
+
+%package -n python3-cognitive-complexity
+Summary: Library to calculate Python functions cognitive complexity via code
+Provides: python-cognitive-complexity
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-cognitive-complexity
+# congnitive-complexity
+
+[![Build Status](https://travis-ci.org/Melevir/cognitive_complexity.svg?branch=master)](https://travis-ci.org/Melevir/cognitive_complexity)
+[![Maintainability](https://api.codeclimate.com/v1/badges/853d47d353e7becc9f09/maintainability)](https://codeclimate.com/github/Melevir/cognitive_complexity/maintainability)
+[![Test Coverage](https://api.codeclimate.com/v1/badges/853d47d353e7becc9f09/test_coverage)](https://codeclimate.com/github/Melevir/cognitive_complexity/test_coverage)
+[![PyPI version](https://badge.fury.io/py/cognitive-complexity.svg)](https://badge.fury.io/py/cognitive-complexity)
+![PyPI - Python Version](https://img.shields.io/pypi/pyversions/cognitive-complexity)
+
+Library to calculate Python functions cognitive complexity via code.
+
+## Installation
+
+```bash
+pip install cognitive_complexity
+```
+
+## Usage
+
+```python
+>>> import ast
+
+>>> funcdef = ast.parse("""
+... def f(a):
+... return a * f(a - 1) # +1 for recursion
+... """).body[0]
+
+>>> from cognitive_complexity.api import get_cognitive_complexity
+>>> get_cognitive_complexity(funcdef)
+1
+```
+
+### Flake8-Cognitive-Complexity Extension
+
+Perhaps the most common way to use this library (especially if you are
+already using the [Flake8 linter](https://flake8.pycqa.org/en/latest/))
+is to use the
+[flake8-cognitive-complexity extension](https://github.com/Melevir/flake8-cognitive-complexity).
+If you run Flake8 with this extension installed, Flake8 will let you know
+if your code is too complex. For more details and documentation, visit the
+[flake8-cognitive-complexity extension repository](https://github.com/Melevir/flake8-cognitive-complexity).
+
+## What is cognitive complexity
+
+Here are some readings about cognitive complexity:
+
+- [Cognitive Complexity, Because Testability != Understandability](https://blog.sonarsource.com/cognitive-complexity-because-testability-understandability);
+- [Cognitive Complexity: A new way of measuring understandability](https://www.sonarsource.com/docs/CognitiveComplexity.pdf),
+ white paper by G. Ann Campbell;
+- [Cognitive Complexity: the New Guide to Refactoring for Maintainable Code](https://www.youtube.com/watch?v=5C6AGTlKSjY);
+- [Cognitive Complexity](https://docs.codeclimate.com/docs/cognitive-complexity)
+ from CodeClimate docs;
+- [Is Your Code Readable By Humans? Cognitive Complexity Tells You](https://www.tomasvotruba.cz/blog/2018/05/21/is-your-code-readable-by-humans-cognitive-complexity-tells-you/).
+
+## Realization details
+
+This is not precise realization of original algorithm
+proposed by [G. Ann Campbell](https://github.com/ganncamp),
+but it gives rather similar results.
+The algorithm gives complexity points for breaking control flow, nesting,
+recursion, stacks logic operation etc.
+
+## Contributing
+
+We would love you to contribute to our project. It's simple:
+
+- Create an issue with bug you found or proposal you have. Wait for
+ approve from maintainer.
+- Create a pull request. Make sure all checks are green.
+- Fix review comments if any.
+- Be awesome.
+
+Here are useful tips:
+
+- You can run all checks and tests with `make check`. Please do it
+ before TravisCI does.
+- We use [BestDoctor python styleguide](https://github.com/best-doctor/guides/blob/master/guides/python_styleguide.md).
+ Sorry, styleguide is available only in Russian for now.
+- We respect [Django CoC](https://www.djangoproject.com/conduct/).
+ Make soft, not bullshit.
+
+%package help
+Summary: Development documents and examples for cognitive-complexity
+Provides: python3-cognitive-complexity-doc
+%description help
+# congnitive-complexity
+
+[![Build Status](https://travis-ci.org/Melevir/cognitive_complexity.svg?branch=master)](https://travis-ci.org/Melevir/cognitive_complexity)
+[![Maintainability](https://api.codeclimate.com/v1/badges/853d47d353e7becc9f09/maintainability)](https://codeclimate.com/github/Melevir/cognitive_complexity/maintainability)
+[![Test Coverage](https://api.codeclimate.com/v1/badges/853d47d353e7becc9f09/test_coverage)](https://codeclimate.com/github/Melevir/cognitive_complexity/test_coverage)
+[![PyPI version](https://badge.fury.io/py/cognitive-complexity.svg)](https://badge.fury.io/py/cognitive-complexity)
+![PyPI - Python Version](https://img.shields.io/pypi/pyversions/cognitive-complexity)
+
+Library to calculate Python functions cognitive complexity via code.
+
+## Installation
+
+```bash
+pip install cognitive_complexity
+```
+
+## Usage
+
+```python
+>>> import ast
+
+>>> funcdef = ast.parse("""
+... def f(a):
+... return a * f(a - 1) # +1 for recursion
+... """).body[0]
+
+>>> from cognitive_complexity.api import get_cognitive_complexity
+>>> get_cognitive_complexity(funcdef)
+1
+```
+
+### Flake8-Cognitive-Complexity Extension
+
+Perhaps the most common way to use this library (especially if you are
+already using the [Flake8 linter](https://flake8.pycqa.org/en/latest/))
+is to use the
+[flake8-cognitive-complexity extension](https://github.com/Melevir/flake8-cognitive-complexity).
+If you run Flake8 with this extension installed, Flake8 will let you know
+if your code is too complex. For more details and documentation, visit the
+[flake8-cognitive-complexity extension repository](https://github.com/Melevir/flake8-cognitive-complexity).
+
+## What is cognitive complexity
+
+Here are some readings about cognitive complexity:
+
+- [Cognitive Complexity, Because Testability != Understandability](https://blog.sonarsource.com/cognitive-complexity-because-testability-understandability);
+- [Cognitive Complexity: A new way of measuring understandability](https://www.sonarsource.com/docs/CognitiveComplexity.pdf),
+ white paper by G. Ann Campbell;
+- [Cognitive Complexity: the New Guide to Refactoring for Maintainable Code](https://www.youtube.com/watch?v=5C6AGTlKSjY);
+- [Cognitive Complexity](https://docs.codeclimate.com/docs/cognitive-complexity)
+ from CodeClimate docs;
+- [Is Your Code Readable By Humans? Cognitive Complexity Tells You](https://www.tomasvotruba.cz/blog/2018/05/21/is-your-code-readable-by-humans-cognitive-complexity-tells-you/).
+
+## Realization details
+
+This is not precise realization of original algorithm
+proposed by [G. Ann Campbell](https://github.com/ganncamp),
+but it gives rather similar results.
+The algorithm gives complexity points for breaking control flow, nesting,
+recursion, stacks logic operation etc.
+
+## Contributing
+
+We would love you to contribute to our project. It's simple:
+
+- Create an issue with bug you found or proposal you have. Wait for
+ approve from maintainer.
+- Create a pull request. Make sure all checks are green.
+- Fix review comments if any.
+- Be awesome.
+
+Here are useful tips:
+
+- You can run all checks and tests with `make check`. Please do it
+ before TravisCI does.
+- We use [BestDoctor python styleguide](https://github.com/best-doctor/guides/blob/master/guides/python_styleguide.md).
+ Sorry, styleguide is available only in Russian for now.
+- We respect [Django CoC](https://www.djangoproject.com/conduct/).
+ Make soft, not bullshit.
+
+%prep
+%autosetup -n cognitive-complexity-1.3.0
+
+%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-cognitive-complexity -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 1.3.0-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..1c77e24
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+eb2718408f8667e6ee11143aa04340fe cognitive_complexity-1.3.0.tar.gz