2022-09-16T16:13:28,485 Created temporary directory: /tmp/pip-ephem-wheel-cache-8lsx4iac 2022-09-16T16:13:28,491 Created temporary directory: /tmp/pip-build-tracker-e07o_usu 2022-09-16T16:13:28,492 Initialized build tracking at /tmp/pip-build-tracker-e07o_usu 2022-09-16T16:13:28,493 Created build tracker: /tmp/pip-build-tracker-e07o_usu 2022-09-16T16:13:28,493 Entered build tracker: /tmp/pip-build-tracker-e07o_usu 2022-09-16T16:13:28,494 Created temporary directory: /tmp/pip-wheel-an9sh8tg 2022-09-16T16:13:28,560 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2022-09-16T16:13:28,568 2 location(s) to search for versions of cvi: 2022-09-16T16:13:28,568 * https://pypi.org/simple/cvi/ 2022-09-16T16:13:28,568 * https://www.piwheels.org/simple/cvi/ 2022-09-16T16:13:28,570 Fetching project page and analyzing links: https://pypi.org/simple/cvi/ 2022-09-16T16:13:28,571 Getting page https://pypi.org/simple/cvi/ 2022-09-16T16:13:28,575 Found index url https://pypi.org/simple 2022-09-16T16:13:28,779 Skipping link: No binaries permitted for cvi: https://files.pythonhosted.org/packages/d9/40/a81a72ef45bf5dcd7ee12fd4e521b20050e46f8f95e6cc08ad895e79d35b/cvi-0.1.0a1-py3-none-any.whl#sha256=7e877b129300c82100b1c97ab4e07799a6f6f8f691b9bdd04d569339b082d302 (from https://pypi.org/simple/cvi/) (requires-python:>=3.6) 2022-09-16T16:13:28,781 Found link https://files.pythonhosted.org/packages/15/63/c98fc65fb527bf3c326122ac38adf2f99075db7e65b62e15c1f2e06ae63e/cvi-0.1.0a1.tar.gz#sha256=a5ceb4d5e0aaa6cffb73a85dabf0fafd8e53596c960af96660c8d86dad39d4cf (from https://pypi.org/simple/cvi/) (requires-python:>=3.6), version: 0.1.0a1 2022-09-16T16:13:28,782 Skipping link: No binaries permitted for cvi: https://files.pythonhosted.org/packages/a6/26/f61a6400e5756141b96f426c713eab9130857c53b76b13b1b4e1be3563ee/cvi-0.1.0a2-py3-none-any.whl#sha256=414fff40901f34feaf8b41d0518ecdddfce2642a1580efcce0fff4f9abe71123 (from https://pypi.org/simple/cvi/) (requires-python:>=3.6) 2022-09-16T16:13:28,783 Found link https://files.pythonhosted.org/packages/0a/92/7dca8984b7158ac5b286ad7af4379960075bf8434c53e4a1e3a49f0e5cf0/cvi-0.1.0a2.tar.gz#sha256=716a4a99992c8d41c9649831b53d638474d7c1b5fe3ede22440cda817aefaefa (from https://pypi.org/simple/cvi/) (requires-python:>=3.6), version: 0.1.0a2 2022-09-16T16:13:28,784 Skipping link: No binaries permitted for cvi: https://files.pythonhosted.org/packages/26/e0/07beb00e46f3d00b2fd106c0884111e445dc15e87bcab4eb7444d8a5be8e/cvi-0.1.0a3-py3-none-any.whl#sha256=c93c63471308195e78b854e3ad1e896a46efcdf44af044eaf21f789c9f3a44bb (from https://pypi.org/simple/cvi/) (requires-python:>=3.6) 2022-09-16T16:13:28,785 Found link https://files.pythonhosted.org/packages/83/38/17e2d7569d5c565643e0ebd63f62071c43dd1a96cde5719066c6ec4455c9/cvi-0.1.0a3.tar.gz#sha256=2d8f9946ea904ed06b75fba150f6ccdf3663e6a47f7df3e346e6896b0b198dba (from https://pypi.org/simple/cvi/) (requires-python:>=3.6), version: 0.1.0a3 2022-09-16T16:13:28,786 Skipping link: No binaries permitted for cvi: https://files.pythonhosted.org/packages/72/42/353ccfab1cfdb5d7e0cda90e5a9cb4d3dd24932a153fd3b466e8891ea793/cvi-0.1.0a4-py3-none-any.whl#sha256=53f03da20832bbdad26e2adc6f65323908ef19b82171e451a0cc677f5ea419ef (from https://pypi.org/simple/cvi/) (requires-python:>=3.6) 2022-09-16T16:13:28,787 Found link https://files.pythonhosted.org/packages/91/6f/fa2f196409f1c29910f5e3168d25240004b9277ea75f042c60dcf621c99b/cvi-0.1.0a4.tar.gz#sha256=e5c42aba908237e8c6f7b047b3873012cd6f726943f18913e6caad62e7399b8a (from https://pypi.org/simple/cvi/) (requires-python:>=3.6), version: 0.1.0a4 2022-09-16T16:13:28,788 Fetching project page and analyzing links: https://www.piwheels.org/simple/cvi/ 2022-09-16T16:13:28,789 Getting page https://www.piwheels.org/simple/cvi/ 2022-09-16T16:13:28,791 Found index url https://www.piwheels.org/simple 2022-09-16T16:13:29,017 Skipping link: No binaries permitted for cvi: https://www.piwheels.org/simple/cvi/cvi-0.1.0a3-py3-none-any.whl#sha256=bb395c30ea5296b3868487281bdbe627dc964ce445bd373fdb2da96cc5f3816f (from https://www.piwheels.org/simple/cvi/) (requires-python:>=3.6) 2022-09-16T16:13:29,018 Skipping link: No binaries permitted for cvi: https://www.piwheels.org/simple/cvi/cvi-0.1.0a2-py3-none-any.whl#sha256=a998d2e799675b32bbeb3f318b8fde028492384f668cebb508490f8301db46d2 (from https://www.piwheels.org/simple/cvi/) (requires-python:>=3.6) 2022-09-16T16:13:29,019 Skipping link: No binaries permitted for cvi: https://www.piwheels.org/simple/cvi/cvi-0.1.0a1-py3-none-any.whl#sha256=39f62718e2c3fcfa9defdf829d0a94f402dee719ea66a6a6f11de8095de1f43f (from https://www.piwheels.org/simple/cvi/) (requires-python:>=3.6) 2022-09-16T16:13:29,019 Skipping link: not a file: https://www.piwheels.org/simple/cvi/ 2022-09-16T16:13:29,020 Skipping link: not a file: https://pypi.org/simple/cvi/ 2022-09-16T16:13:29,055 Given no hashes to check 1 links for project 'cvi': discarding no candidates 2022-09-16T16:13:29,087 Collecting cvi==0.1.0a4 2022-09-16T16:13:29,091 Created temporary directory: /tmp/pip-unpack-2ar3u86a 2022-09-16T16:13:29,577 Downloading cvi-0.1.0a4.tar.gz (13 kB) 2022-09-16T16:13:29,687 Added cvi==0.1.0a4 from https://files.pythonhosted.org/packages/91/6f/fa2f196409f1c29910f5e3168d25240004b9277ea75f042c60dcf621c99b/cvi-0.1.0a4.tar.gz#sha256=e5c42aba908237e8c6f7b047b3873012cd6f726943f18913e6caad62e7399b8a to build tracker '/tmp/pip-build-tracker-e07o_usu' 2022-09-16T16:13:29,694 Created temporary directory: /tmp/pip-build-env-xx8pqerj 2022-09-16T16:13:29,709 Created temporary directory: /tmp/pip-standalone-pip-pdvtm7pt 2022-09-16T16:13:32,143 Installing build dependencies: started 2022-09-16T16:13:32,145 Running command pip subprocess to install build dependencies 2022-09-16T16:13:41,832 Using pip 22.1.2 from /tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip (python 3.7) 2022-09-16T16:13:44,064 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2022-09-16T16:13:48,309 Collecting setuptools>=42 2022-09-16T16:13:48,593 Using cached https://www.piwheels.org/simple/setuptools/setuptools-65.3.0-py3-none-any.whl (1.2 MB) 2022-09-16T16:14:00,890 Installing collected packages: setuptools 2022-09-16T16:14:05,818 Successfully installed setuptools-65.3.0 2022-09-16T16:14:06,064 --- Logging error --- 2022-09-16T16:14:06,064 Traceback (most recent call last): 2022-09-16T16:14:06,065 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/utils/logging.py", line 177, in emit 2022-09-16T16:14:06,065 self.console.print(renderable, overflow="ignore", crop=False, style=style) 2022-09-16T16:14:06,066 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_vendor/rich/console.py", line 1752, in print 2022-09-16T16:14:06,066 extend(render(renderable, render_options)) 2022-09-16T16:14:06,066 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_vendor/rich/console.py", line 1390, in render 2022-09-16T16:14:06,067 for render_output in iter_render: 2022-09-16T16:14:06,067 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/utils/logging.py", line 134, in __rich_console__ 2022-09-16T16:14:06,068 for line in lines: 2022-09-16T16:14:06,068 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_vendor/rich/segment.py", line 245, in split_lines 2022-09-16T16:14:06,068 for segment in segments: 2022-09-16T16:14:06,069 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_vendor/rich/console.py", line 1368, in render 2022-09-16T16:14:06,069 renderable = rich_cast(renderable) 2022-09-16T16:14:06,069 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_vendor/rich/protocol.py", line 36, in rich_cast 2022-09-16T16:14:06,070 renderable = cast_method() 2022-09-16T16:14:06,070 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/self_outdated_check.py", line 130, in __rich__ 2022-09-16T16:14:06,070 pip_cmd = get_best_invocation_for_this_pip() 2022-09-16T16:14:06,071 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/utils/entrypoints.py", line 60, in get_best_invocation_for_this_pip 2022-09-16T16:14:06,071 os.path.join(binary_prefix, exe_name), 2022-09-16T16:14:06,071 File "/usr/lib/python3.7/genericpath.py", line 97, in samefile 2022-09-16T16:14:06,072 s2 = os.stat(f2) 2022-09-16T16:14:06,072 FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/pip3.7' 2022-09-16T16:14:06,072 Call stack: 2022-09-16T16:14:06,073 File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main 2022-09-16T16:14:06,073 "__main__", mod_spec) 2022-09-16T16:14:06,073 File "/usr/lib/python3.7/runpy.py", line 85, in _run_code 2022-09-16T16:14:06,074 exec(code, run_globals) 2022-09-16T16:14:06,074 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/__main__.py", line 31, in 2022-09-16T16:14:06,074 sys.exit(_main()) 2022-09-16T16:14:06,075 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/cli/main.py", line 70, in main 2022-09-16T16:14:06,075 return command.main(cmd_args) 2022-09-16T16:14:06,075 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/cli/base_command.py", line 101, in main 2022-09-16T16:14:06,076 return self._main(args) 2022-09-16T16:14:06,076 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/cli/base_command.py", line 223, in _main 2022-09-16T16:14:06,076 self.handle_pip_version_check(options) 2022-09-16T16:14:06,077 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/cli/req_command.py", line 148, in handle_pip_version_check 2022-09-16T16:14:06,077 pip_self_version_check(session, options) 2022-09-16T16:14:06,077 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/self_outdated_check.py", line 237, in pip_self_version_check 2022-09-16T16:14:06,078 logger.info("[present-rich] %s", upgrade_prompt) 2022-09-16T16:14:06,078 File "/usr/lib/python3.7/logging/__init__.py", line 1383, in info 2022-09-16T16:14:06,078 self._log(INFO, msg, args, **kwargs) 2022-09-16T16:14:06,079 File "/usr/lib/python3.7/logging/__init__.py", line 1519, in _log 2022-09-16T16:14:06,079 self.handle(record) 2022-09-16T16:14:06,080 File "/usr/lib/python3.7/logging/__init__.py", line 1529, in handle 2022-09-16T16:14:06,080 self.callHandlers(record) 2022-09-16T16:14:06,080 File "/usr/lib/python3.7/logging/__init__.py", line 1591, in callHandlers 2022-09-16T16:14:06,081 hdlr.handle(record) 2022-09-16T16:14:06,081 File "/usr/lib/python3.7/logging/__init__.py", line 905, in handle 2022-09-16T16:14:06,081 self.emit(record) 2022-09-16T16:14:06,082 File "/tmp/pip-standalone-pip-pdvtm7pt/__env_pip__.zip/pip/_internal/utils/logging.py", line 179, in emit 2022-09-16T16:14:06,082 self.handleError(record) 2022-09-16T16:14:06,082 Message: '[present-rich] %s' 2022-09-16T16:14:06,083 Arguments: (UpgradePrompt(old='22.1.2', new='22.2.2'),) 2022-09-16T16:14:06,578 Installing build dependencies: finished with status 'done' 2022-09-16T16:14:06,604 Getting requirements to build wheel: started 2022-09-16T16:14:06,607 Running command Getting requirements to build wheel 2022-09-16T16:14:11,072 /usr/local/lib/python3.7/dist-packages/setuptools/config/pyprojecttoml.py:102: _ExperimentalProjectMetadata: Support for project metadata in `pyproject.toml` is still experimental and may be removed (or change) in future releases. 2022-09-16T16:14:11,073 warnings.warn(msg, _ExperimentalProjectMetadata) 2022-09-16T16:14:11,073 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:11,075 ########################################################################## 2022-09-16T16:14:11,075 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:11,075 ########################################################################## 2022-09-16T16:14:11,076 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:11,077 `readme = "# cvi\n\nA Python package implementing both batch and incremental cluster validity indices (CVIs).\n\n| **Stable Docs** | **Dev Docs** | **Build Status** | **Coverage** |\n|:----------------:|:------------:|:----------------:|:------------:|\n| [![Stable][docs-stable-img]][docs-stable-url] | [![Dev][docs-dev-img]][docs-dev-url]| [![Build Status][ci-img]][ci-url] | [![Codecov][codecov-img]][codecov-url] |\n| **Version** | **Issues** | **Commits** | **Commits Since Release**\n| [![version][version-img]][version-url] | [![issues][issues-img]][issues-url] | [![commits][commits-img]][commits-url] | [![compare][compare-img]][compare-url] |\n\n\n\n[docs-stable-img]: https://readthedocs.org/projects/cluster-validity-indices/badge/?version=latest\n[docs-stable-url]: https://cluster-validity-indices.readthedocs.io/en/latest/?badge=latest\n\n[docs-dev-img]: https://readthedocs.org/projects/cluster-validity-indices/badge/?version=develop\n[docs-dev-url]: https://cluster-validity-indices.readthedocs.io/en/develop/?badge=develop\n\n[ci-img]: https://github.com/AP6YC/cvi/actions/workflows/Test.yml/badge.svg\n[ci-url]: https://github.com/AP6YC/cvi/actions/workflows/Test.yml\n\n[codecov-img]: https://codecov.io/gh/AP6YC/cvi/branch/main/graph/badge.svg\n[codecov-url]: https://codecov.io/gh/AP6YC/cvi\n\n[version-img]: https://img.shields.io/pypi/v/cvi.svg\n[version-url]: https://pypi.org/project/cvi\n\n[issues-img]: https://img.shields.io/github/issues/AP6YC/cvi?style=flat\n[issues-url]: https://github.com/AP6YC/cvi/issues\n\n[commits-img]: https://img.shields.io/github/commit-activity/m/AP6YC/cvi?style=flat\n[commits-url]: https://github.com/AP6YC/cvi/commits/main\n\n[compare-img]: https://img.shields.io/github/commits-since/AP6YC/cvi/latest/develop\n[compare-url]: https://github.com/AP6YC/cvi/compare/v0.1.0-alpha.4...develop\n\n## Table of Contents\n\n- [cvi](#cvi)\n - [Table of Contents](#table-of-contents)\n - [Cluster Validity Indices](#cluster-validity-indices)\n - [Installation](#installation)\n - [Usage](#usage)\n - [History](#history)\n - [Acknowledgements](#acknowledgements)\n - [Related Projects](#related-projects)\n\n## Cluster Validity Indices\n\nSay you have a clustering algorithm that clusters a set of samples containing features of some kind and some dimensionality.\nGreat!\nThat was a lot of work, and you should feel accomplished.\nBut how do you know that the algorithm performed _well_?\nBy definition, you wouldn't have the _true_ label belonging to each sample (if one could even exist in your context), just the label prescribed by your clustering algorithm.\n\n**Enter Cluster Validity Indices (CVIs)**.\n\nCVIs are metrics of cluster partitioning when true cluster labels are unavailable.\nEach operates on only the information available (i.e., the provided samples of features and the labels prescribed by the clustering algorithm) and produces a _metric_, a number that goes up or down according to how well the CVI believes the clustering algorithm appears to, well, _cluster_.\nClustering well in this context means correctly partitioning (i.e., separating) the data rather than prescribing too many different clusters (over partitioning) or too few (under partitioning)\nEvery CVI itself also behaves differently in terms of the range and scale of their numbers.\n**Furthermore, each CVI has an original batch implementation and incremental implementation that are equivalent**.\n\nThe `cvi` Python package contains a variety of these batch and incremental CVIs.\n\n## Installation\n\nThe `cvi` package is listed on PyPi, so you may install the latest version with\n\n```python\npip install cvi\n```\n\nYou can also specify a version to install in the usual way with\n\n```python\npip install cvi==v0.1.0-alpha.2\n```\n\nAlternatively, you can manually install a release from the [releases page](https://github.com/AP6YC/cvi/releases) on GitHub.\n\n## Usage\n\nTODO\n\n## History\n\n- 8/18/2022: Initialize project.\n- 9/8/2022: First release on PyPi and initiate GitFlow.\n\n## Acknowledgements\n\nThe incremental and batch CVI implementations in this package are largely derived from the following Julia language implementations:\n\n- https://github.com/AP6YC/ClusterValidityIndices.jl\n\nThe principal authors of the `cvi` pacakge are:\n\n- Sasha Petrenko \n- Nik Melton \n\n## Related Projects\n\nIf this package is missing something that you need, feel free to check out some related Python cluster validity packages:\n\n- [validclust](https://github.com/crew102/validclust)\n- [clusterval](https://github.com/Nuno09/clusterval)\n"` 2022-09-16T16:14:11,078 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:11,079 consider this value unless 'readme' is listed as `dynamic`. 2022-09-16T16:14:11,079 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:11,080 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:11,081 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:11,081 follow strictly the standard. 2022-09-16T16:14:11,082 To prevent this warning, you can list 'readme' under `dynamic` or alternatively 2022-09-16T16:14:11,082 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:11,082 configuration. 2022-09-16T16:14:11,084 !! 2022-09-16T16:14:11,084 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:11,085 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:11,086 ########################################################################## 2022-09-16T16:14:11,086 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:11,087 ########################################################################## 2022-09-16T16:14:11,087 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:11,088 `requires-python = =3.6')>` 2022-09-16T16:14:11,089 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:11,089 consider this value unless 'requires-python' is listed as `dynamic`. 2022-09-16T16:14:11,090 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:11,090 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:11,091 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:11,091 follow strictly the standard. 2022-09-16T16:14:11,092 To prevent this warning, you can list 'requires-python' under `dynamic` or alternatively 2022-09-16T16:14:11,092 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:11,093 configuration. 2022-09-16T16:14:11,094 !! 2022-09-16T16:14:11,094 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:11,095 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:11,096 ########################################################################## 2022-09-16T16:14:11,096 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:11,096 ########################################################################## 2022-09-16T16:14:11,097 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:11,098 `classifiers = ['Programming Language :: Python :: 3', 'License :: OSI Approved :: MIT License', 'Operating System :: OS Independent']` 2022-09-16T16:14:11,098 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:11,098 consider this value unless 'classifiers' is listed as `dynamic`. 2022-09-16T16:14:11,099 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:11,100 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:11,100 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:11,101 follow strictly the standard. 2022-09-16T16:14:11,101 To prevent this warning, you can list 'classifiers' under `dynamic` or alternatively 2022-09-16T16:14:11,102 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:11,102 configuration. 2022-09-16T16:14:11,103 !! 2022-09-16T16:14:11,104 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:12,704 running egg_info 2022-09-16T16:14:13,347 writing src/cvi.egg-info/PKG-INFO 2022-09-16T16:14:13,956 writing dependency_links to src/cvi.egg-info/dependency_links.txt 2022-09-16T16:14:16,971 writing requirements to src/cvi.egg-info/requires.txt 2022-09-16T16:14:17,575 writing top-level names to src/cvi.egg-info/top_level.txt 2022-09-16T16:14:18,294 reading manifest file 'src/cvi.egg-info/SOURCES.txt' 2022-09-16T16:14:18,299 adding license file 'LICENSE' 2022-09-16T16:14:18,304 writing manifest file 'src/cvi.egg-info/SOURCES.txt' 2022-09-16T16:14:18,308 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:18,310 ########################################################################## 2022-09-16T16:14:18,310 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:18,311 ########################################################################## 2022-09-16T16:14:18,312 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:18,313 `urls = {'Bug Tracker': 'https://github.com/AP6YC/cvi/issues', 'Documentation': 'https://cluster-validity-indices.readthedocs.io/'}` 2022-09-16T16:14:18,314 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:18,314 consider this value unless 'urls' is listed as `dynamic`. 2022-09-16T16:14:18,315 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:18,316 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:18,317 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:18,317 follow strictly the standard. 2022-09-16T16:14:18,318 To prevent this warning, you can list 'urls' under `dynamic` or alternatively 2022-09-16T16:14:18,319 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:18,319 configuration. 2022-09-16T16:14:18,321 !! 2022-09-16T16:14:18,321 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:18,614 Getting requirements to build wheel: finished with status 'done' 2022-09-16T16:14:18,640 Created temporary directory: /tmp/pip-standalone-pip-180ljc1v 2022-09-16T16:14:21,043 Installing backend dependencies: started 2022-09-16T16:14:21,045 Running command pip subprocess to install backend dependencies 2022-09-16T16:14:30,774 Using pip 22.1.2 from /tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip (python 3.7) 2022-09-16T16:14:32,982 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2022-09-16T16:14:33,860 Collecting wheel 2022-09-16T16:14:33,896 Using cached https://www.piwheels.org/simple/wheel/wheel-0.37.1-py2.py3-none-any.whl (35 kB) 2022-09-16T16:14:45,300 Installing collected packages: wheel 2022-09-16T16:14:45,585 Creating /tmp/pip-build-env-xx8pqerj/normal/bin 2022-09-16T16:14:45,590 changing mode of /tmp/pip-build-env-xx8pqerj/normal/bin/wheel to 755 2022-09-16T16:14:45,617 Successfully installed wheel-0.37.1 2022-09-16T16:14:45,864 --- Logging error --- 2022-09-16T16:14:45,865 Traceback (most recent call last): 2022-09-16T16:14:45,865 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/utils/logging.py", line 177, in emit 2022-09-16T16:14:45,865 self.console.print(renderable, overflow="ignore", crop=False, style=style) 2022-09-16T16:14:45,866 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_vendor/rich/console.py", line 1752, in print 2022-09-16T16:14:45,866 extend(render(renderable, render_options)) 2022-09-16T16:14:45,867 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_vendor/rich/console.py", line 1390, in render 2022-09-16T16:14:45,867 for render_output in iter_render: 2022-09-16T16:14:45,867 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/utils/logging.py", line 134, in __rich_console__ 2022-09-16T16:14:45,868 for line in lines: 2022-09-16T16:14:45,868 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_vendor/rich/segment.py", line 245, in split_lines 2022-09-16T16:14:45,868 for segment in segments: 2022-09-16T16:14:45,869 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_vendor/rich/console.py", line 1368, in render 2022-09-16T16:14:45,869 renderable = rich_cast(renderable) 2022-09-16T16:14:45,869 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_vendor/rich/protocol.py", line 36, in rich_cast 2022-09-16T16:14:45,870 renderable = cast_method() 2022-09-16T16:14:45,870 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/self_outdated_check.py", line 130, in __rich__ 2022-09-16T16:14:45,870 pip_cmd = get_best_invocation_for_this_pip() 2022-09-16T16:14:45,871 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/utils/entrypoints.py", line 60, in get_best_invocation_for_this_pip 2022-09-16T16:14:45,871 os.path.join(binary_prefix, exe_name), 2022-09-16T16:14:45,871 File "/usr/lib/python3.7/genericpath.py", line 97, in samefile 2022-09-16T16:14:45,872 s2 = os.stat(f2) 2022-09-16T16:14:45,872 FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/pip3.7' 2022-09-16T16:14:45,872 Call stack: 2022-09-16T16:14:45,873 File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main 2022-09-16T16:14:45,873 "__main__", mod_spec) 2022-09-16T16:14:45,873 File "/usr/lib/python3.7/runpy.py", line 85, in _run_code 2022-09-16T16:14:45,874 exec(code, run_globals) 2022-09-16T16:14:45,874 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/__main__.py", line 31, in 2022-09-16T16:14:45,874 sys.exit(_main()) 2022-09-16T16:14:45,875 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/cli/main.py", line 70, in main 2022-09-16T16:14:45,875 return command.main(cmd_args) 2022-09-16T16:14:45,875 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/cli/base_command.py", line 101, in main 2022-09-16T16:14:45,876 return self._main(args) 2022-09-16T16:14:45,876 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/cli/base_command.py", line 223, in _main 2022-09-16T16:14:45,876 self.handle_pip_version_check(options) 2022-09-16T16:14:45,877 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/cli/req_command.py", line 148, in handle_pip_version_check 2022-09-16T16:14:45,877 pip_self_version_check(session, options) 2022-09-16T16:14:45,877 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/self_outdated_check.py", line 237, in pip_self_version_check 2022-09-16T16:14:45,878 logger.info("[present-rich] %s", upgrade_prompt) 2022-09-16T16:14:45,878 File "/usr/lib/python3.7/logging/__init__.py", line 1383, in info 2022-09-16T16:14:45,878 self._log(INFO, msg, args, **kwargs) 2022-09-16T16:14:45,879 File "/usr/lib/python3.7/logging/__init__.py", line 1519, in _log 2022-09-16T16:14:45,879 self.handle(record) 2022-09-16T16:14:45,879 File "/usr/lib/python3.7/logging/__init__.py", line 1529, in handle 2022-09-16T16:14:45,880 self.callHandlers(record) 2022-09-16T16:14:45,880 File "/usr/lib/python3.7/logging/__init__.py", line 1591, in callHandlers 2022-09-16T16:14:45,881 hdlr.handle(record) 2022-09-16T16:14:45,881 File "/usr/lib/python3.7/logging/__init__.py", line 905, in handle 2022-09-16T16:14:45,881 self.emit(record) 2022-09-16T16:14:45,882 File "/tmp/pip-standalone-pip-180ljc1v/__env_pip__.zip/pip/_internal/utils/logging.py", line 179, in emit 2022-09-16T16:14:45,882 self.handleError(record) 2022-09-16T16:14:45,882 Message: '[present-rich] %s' 2022-09-16T16:14:45,883 Arguments: (UpgradePrompt(old='22.1.2', new='22.2.2'),) 2022-09-16T16:14:46,312 Installing backend dependencies: finished with status 'done' 2022-09-16T16:14:46,335 Created temporary directory: /tmp/pip-modern-metadata-ahpce64k 2022-09-16T16:14:46,341 Preparing metadata (pyproject.toml): started 2022-09-16T16:14:46,343 Running command Preparing metadata (pyproject.toml) 2022-09-16T16:14:50,565 /usr/local/lib/python3.7/dist-packages/setuptools/config/pyprojecttoml.py:102: _ExperimentalProjectMetadata: Support for project metadata in `pyproject.toml` is still experimental and may be removed (or change) in future releases. 2022-09-16T16:14:50,566 warnings.warn(msg, _ExperimentalProjectMetadata) 2022-09-16T16:14:50,566 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:50,568 ########################################################################## 2022-09-16T16:14:50,568 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:50,568 ########################################################################## 2022-09-16T16:14:50,569 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:50,571 `readme = "# cvi\n\nA Python package implementing both batch and incremental cluster validity indices (CVIs).\n\n| **Stable Docs** | **Dev Docs** | **Build Status** | **Coverage** |\n|:----------------:|:------------:|:----------------:|:------------:|\n| [![Stable][docs-stable-img]][docs-stable-url] | [![Dev][docs-dev-img]][docs-dev-url]| [![Build Status][ci-img]][ci-url] | [![Codecov][codecov-img]][codecov-url] |\n| **Version** | **Issues** | **Commits** | **Commits Since Release**\n| [![version][version-img]][version-url] | [![issues][issues-img]][issues-url] | [![commits][commits-img]][commits-url] | [![compare][compare-img]][compare-url] |\n\n\n\n[docs-stable-img]: https://readthedocs.org/projects/cluster-validity-indices/badge/?version=latest\n[docs-stable-url]: https://cluster-validity-indices.readthedocs.io/en/latest/?badge=latest\n\n[docs-dev-img]: https://readthedocs.org/projects/cluster-validity-indices/badge/?version=develop\n[docs-dev-url]: https://cluster-validity-indices.readthedocs.io/en/develop/?badge=develop\n\n[ci-img]: https://github.com/AP6YC/cvi/actions/workflows/Test.yml/badge.svg\n[ci-url]: https://github.com/AP6YC/cvi/actions/workflows/Test.yml\n\n[codecov-img]: https://codecov.io/gh/AP6YC/cvi/branch/main/graph/badge.svg\n[codecov-url]: https://codecov.io/gh/AP6YC/cvi\n\n[version-img]: https://img.shields.io/pypi/v/cvi.svg\n[version-url]: https://pypi.org/project/cvi\n\n[issues-img]: https://img.shields.io/github/issues/AP6YC/cvi?style=flat\n[issues-url]: https://github.com/AP6YC/cvi/issues\n\n[commits-img]: https://img.shields.io/github/commit-activity/m/AP6YC/cvi?style=flat\n[commits-url]: https://github.com/AP6YC/cvi/commits/main\n\n[compare-img]: https://img.shields.io/github/commits-since/AP6YC/cvi/latest/develop\n[compare-url]: https://github.com/AP6YC/cvi/compare/v0.1.0-alpha.4...develop\n\n## Table of Contents\n\n- [cvi](#cvi)\n - [Table of Contents](#table-of-contents)\n - [Cluster Validity Indices](#cluster-validity-indices)\n - [Installation](#installation)\n - [Usage](#usage)\n - [History](#history)\n - [Acknowledgements](#acknowledgements)\n - [Related Projects](#related-projects)\n\n## Cluster Validity Indices\n\nSay you have a clustering algorithm that clusters a set of samples containing features of some kind and some dimensionality.\nGreat!\nThat was a lot of work, and you should feel accomplished.\nBut how do you know that the algorithm performed _well_?\nBy definition, you wouldn't have the _true_ label belonging to each sample (if one could even exist in your context), just the label prescribed by your clustering algorithm.\n\n**Enter Cluster Validity Indices (CVIs)**.\n\nCVIs are metrics of cluster partitioning when true cluster labels are unavailable.\nEach operates on only the information available (i.e., the provided samples of features and the labels prescribed by the clustering algorithm) and produces a _metric_, a number that goes up or down according to how well the CVI believes the clustering algorithm appears to, well, _cluster_.\nClustering well in this context means correctly partitioning (i.e., separating) the data rather than prescribing too many different clusters (over partitioning) or too few (under partitioning)\nEvery CVI itself also behaves differently in terms of the range and scale of their numbers.\n**Furthermore, each CVI has an original batch implementation and incremental implementation that are equivalent**.\n\nThe `cvi` Python package contains a variety of these batch and incremental CVIs.\n\n## Installation\n\nThe `cvi` package is listed on PyPi, so you may install the latest version with\n\n```python\npip install cvi\n```\n\nYou can also specify a version to install in the usual way with\n\n```python\npip install cvi==v0.1.0-alpha.2\n```\n\nAlternatively, you can manually install a release from the [releases page](https://github.com/AP6YC/cvi/releases) on GitHub.\n\n## Usage\n\nTODO\n\n## History\n\n- 8/18/2022: Initialize project.\n- 9/8/2022: First release on PyPi and initiate GitFlow.\n\n## Acknowledgements\n\nThe incremental and batch CVI implementations in this package are largely derived from the following Julia language implementations:\n\n- https://github.com/AP6YC/ClusterValidityIndices.jl\n\nThe principal authors of the `cvi` pacakge are:\n\n- Sasha Petrenko \n- Nik Melton \n\n## Related Projects\n\nIf this package is missing something that you need, feel free to check out some related Python cluster validity packages:\n\n- [validclust](https://github.com/crew102/validclust)\n- [clusterval](https://github.com/Nuno09/clusterval)\n"` 2022-09-16T16:14:50,572 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:50,572 consider this value unless 'readme' is listed as `dynamic`. 2022-09-16T16:14:50,573 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:50,574 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:50,574 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:50,575 follow strictly the standard. 2022-09-16T16:14:50,575 To prevent this warning, you can list 'readme' under `dynamic` or alternatively 2022-09-16T16:14:50,576 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:50,576 configuration. 2022-09-16T16:14:50,577 !! 2022-09-16T16:14:50,578 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:50,578 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:50,580 ########################################################################## 2022-09-16T16:14:50,580 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:50,581 ########################################################################## 2022-09-16T16:14:50,581 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:50,582 `requires-python = =3.6')>` 2022-09-16T16:14:50,583 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:50,583 consider this value unless 'requires-python' is listed as `dynamic`. 2022-09-16T16:14:50,584 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:50,585 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:50,585 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:50,585 follow strictly the standard. 2022-09-16T16:14:50,586 To prevent this warning, you can list 'requires-python' under `dynamic` or alternatively 2022-09-16T16:14:50,586 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:50,587 configuration. 2022-09-16T16:14:50,588 !! 2022-09-16T16:14:50,589 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:50,589 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:50,590 ########################################################################## 2022-09-16T16:14:50,591 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:50,591 ########################################################################## 2022-09-16T16:14:50,592 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:50,592 `classifiers = ['Programming Language :: Python :: 3', 'License :: OSI Approved :: MIT License', 'Operating System :: OS Independent']` 2022-09-16T16:14:50,593 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:50,593 consider this value unless 'classifiers' is listed as `dynamic`. 2022-09-16T16:14:50,594 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:50,595 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:50,595 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:50,596 follow strictly the standard. 2022-09-16T16:14:50,597 To prevent this warning, you can list 'classifiers' under `dynamic` or alternatively 2022-09-16T16:14:50,597 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:50,597 configuration. 2022-09-16T16:14:50,598 !! 2022-09-16T16:14:50,599 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:52,232 running dist_info 2022-09-16T16:14:52,870 creating /tmp/pip-modern-metadata-ahpce64k/cvi.egg-info 2022-09-16T16:14:53,503 writing /tmp/pip-modern-metadata-ahpce64k/cvi.egg-info/PKG-INFO 2022-09-16T16:14:54,102 writing dependency_links to /tmp/pip-modern-metadata-ahpce64k/cvi.egg-info/dependency_links.txt 2022-09-16T16:14:57,072 writing requirements to /tmp/pip-modern-metadata-ahpce64k/cvi.egg-info/requires.txt 2022-09-16T16:14:57,667 writing top-level names to /tmp/pip-modern-metadata-ahpce64k/cvi.egg-info/top_level.txt 2022-09-16T16:14:57,671 writing manifest file '/tmp/pip-modern-metadata-ahpce64k/cvi.egg-info/SOURCES.txt' 2022-09-16T16:14:58,385 reading manifest file '/tmp/pip-modern-metadata-ahpce64k/cvi.egg-info/SOURCES.txt' 2022-09-16T16:14:58,388 adding license file 'LICENSE' 2022-09-16T16:14:58,393 writing manifest file '/tmp/pip-modern-metadata-ahpce64k/cvi.egg-info/SOURCES.txt' 2022-09-16T16:14:58,396 creating '/tmp/pip-modern-metadata-ahpce64k/cvi-0.1.0a4.dist-info' 2022-09-16T16:14:58,537 adding license file "LICENSE" (matched pattern "LICEN[CS]E*") 2022-09-16T16:14:58,551 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:14:58,552 ########################################################################## 2022-09-16T16:14:58,553 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:14:58,553 ########################################################################## 2022-09-16T16:14:58,555 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:14:58,556 `urls = {'Bug Tracker': 'https://github.com/AP6YC/cvi/issues', 'Documentation': 'https://cluster-validity-indices.readthedocs.io/'}` 2022-09-16T16:14:58,557 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:14:58,557 consider this value unless 'urls' is listed as `dynamic`. 2022-09-16T16:14:58,558 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:14:58,559 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:14:58,559 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:14:58,560 follow strictly the standard. 2022-09-16T16:14:58,561 To prevent this warning, you can list 'urls' under `dynamic` or alternatively 2022-09-16T16:14:58,561 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:14:58,562 configuration. 2022-09-16T16:14:58,563 !! 2022-09-16T16:14:58,564 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:14:58,863 Preparing metadata (pyproject.toml): finished with status 'done' 2022-09-16T16:14:58,879 Source in /tmp/pip-wheel-an9sh8tg/cvi_12f37e37dd14417f84a263ef0b3a0647 has version 0.1.0a4, which satisfies requirement cvi==0.1.0a4 from https://files.pythonhosted.org/packages/91/6f/fa2f196409f1c29910f5e3168d25240004b9277ea75f042c60dcf621c99b/cvi-0.1.0a4.tar.gz#sha256=e5c42aba908237e8c6f7b047b3873012cd6f726943f18913e6caad62e7399b8a 2022-09-16T16:14:58,881 Removed cvi==0.1.0a4 from https://files.pythonhosted.org/packages/91/6f/fa2f196409f1c29910f5e3168d25240004b9277ea75f042c60dcf621c99b/cvi-0.1.0a4.tar.gz#sha256=e5c42aba908237e8c6f7b047b3873012cd6f726943f18913e6caad62e7399b8a from build tracker '/tmp/pip-build-tracker-e07o_usu' 2022-09-16T16:14:58,895 Created temporary directory: /tmp/pip-unpack-npthgzsn 2022-09-16T16:14:58,896 Building wheels for collected packages: cvi 2022-09-16T16:14:58,906 Created temporary directory: /tmp/pip-wheel-r_yzrkur 2022-09-16T16:14:58,907 Destination directory: /tmp/pip-wheel-r_yzrkur 2022-09-16T16:14:58,912 Building wheel for cvi (pyproject.toml): started 2022-09-16T16:14:58,914 Running command Building wheel for cvi (pyproject.toml) 2022-09-16T16:15:03,103 /usr/local/lib/python3.7/dist-packages/setuptools/config/pyprojecttoml.py:102: _ExperimentalProjectMetadata: Support for project metadata in `pyproject.toml` is still experimental and may be removed (or change) in future releases. 2022-09-16T16:15:03,105 warnings.warn(msg, _ExperimentalProjectMetadata) 2022-09-16T16:15:03,105 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:15:03,106 ########################################################################## 2022-09-16T16:15:03,107 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:15:03,107 ########################################################################## 2022-09-16T16:15:03,108 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:15:03,109 `readme = "# cvi\n\nA Python package implementing both batch and incremental cluster validity indices (CVIs).\n\n| **Stable Docs** | **Dev Docs** | **Build Status** | **Coverage** |\n|:----------------:|:------------:|:----------------:|:------------:|\n| [![Stable][docs-stable-img]][docs-stable-url] | [![Dev][docs-dev-img]][docs-dev-url]| [![Build Status][ci-img]][ci-url] | [![Codecov][codecov-img]][codecov-url] |\n| **Version** | **Issues** | **Commits** | **Commits Since Release**\n| [![version][version-img]][version-url] | [![issues][issues-img]][issues-url] | [![commits][commits-img]][commits-url] | [![compare][compare-img]][compare-url] |\n\n\n\n[docs-stable-img]: https://readthedocs.org/projects/cluster-validity-indices/badge/?version=latest\n[docs-stable-url]: https://cluster-validity-indices.readthedocs.io/en/latest/?badge=latest\n\n[docs-dev-img]: https://readthedocs.org/projects/cluster-validity-indices/badge/?version=develop\n[docs-dev-url]: https://cluster-validity-indices.readthedocs.io/en/develop/?badge=develop\n\n[ci-img]: https://github.com/AP6YC/cvi/actions/workflows/Test.yml/badge.svg\n[ci-url]: https://github.com/AP6YC/cvi/actions/workflows/Test.yml\n\n[codecov-img]: https://codecov.io/gh/AP6YC/cvi/branch/main/graph/badge.svg\n[codecov-url]: https://codecov.io/gh/AP6YC/cvi\n\n[version-img]: https://img.shields.io/pypi/v/cvi.svg\n[version-url]: https://pypi.org/project/cvi\n\n[issues-img]: https://img.shields.io/github/issues/AP6YC/cvi?style=flat\n[issues-url]: https://github.com/AP6YC/cvi/issues\n\n[commits-img]: https://img.shields.io/github/commit-activity/m/AP6YC/cvi?style=flat\n[commits-url]: https://github.com/AP6YC/cvi/commits/main\n\n[compare-img]: https://img.shields.io/github/commits-since/AP6YC/cvi/latest/develop\n[compare-url]: https://github.com/AP6YC/cvi/compare/v0.1.0-alpha.4...develop\n\n## Table of Contents\n\n- [cvi](#cvi)\n - [Table of Contents](#table-of-contents)\n - [Cluster Validity Indices](#cluster-validity-indices)\n - [Installation](#installation)\n - [Usage](#usage)\n - [History](#history)\n - [Acknowledgements](#acknowledgements)\n - [Related Projects](#related-projects)\n\n## Cluster Validity Indices\n\nSay you have a clustering algorithm that clusters a set of samples containing features of some kind and some dimensionality.\nGreat!\nThat was a lot of work, and you should feel accomplished.\nBut how do you know that the algorithm performed _well_?\nBy definition, you wouldn't have the _true_ label belonging to each sample (if one could even exist in your context), just the label prescribed by your clustering algorithm.\n\n**Enter Cluster Validity Indices (CVIs)**.\n\nCVIs are metrics of cluster partitioning when true cluster labels are unavailable.\nEach operates on only the information available (i.e., the provided samples of features and the labels prescribed by the clustering algorithm) and produces a _metric_, a number that goes up or down according to how well the CVI believes the clustering algorithm appears to, well, _cluster_.\nClustering well in this context means correctly partitioning (i.e., separating) the data rather than prescribing too many different clusters (over partitioning) or too few (under partitioning)\nEvery CVI itself also behaves differently in terms of the range and scale of their numbers.\n**Furthermore, each CVI has an original batch implementation and incremental implementation that are equivalent**.\n\nThe `cvi` Python package contains a variety of these batch and incremental CVIs.\n\n## Installation\n\nThe `cvi` package is listed on PyPi, so you may install the latest version with\n\n```python\npip install cvi\n```\n\nYou can also specify a version to install in the usual way with\n\n```python\npip install cvi==v0.1.0-alpha.2\n```\n\nAlternatively, you can manually install a release from the [releases page](https://github.com/AP6YC/cvi/releases) on GitHub.\n\n## Usage\n\nTODO\n\n## History\n\n- 8/18/2022: Initialize project.\n- 9/8/2022: First release on PyPi and initiate GitFlow.\n\n## Acknowledgements\n\nThe incremental and batch CVI implementations in this package are largely derived from the following Julia language implementations:\n\n- https://github.com/AP6YC/ClusterValidityIndices.jl\n\nThe principal authors of the `cvi` pacakge are:\n\n- Sasha Petrenko \n- Nik Melton \n\n## Related Projects\n\nIf this package is missing something that you need, feel free to check out some related Python cluster validity packages:\n\n- [validclust](https://github.com/crew102/validclust)\n- [clusterval](https://github.com/Nuno09/clusterval)\n"` 2022-09-16T16:15:03,111 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:15:03,111 consider this value unless 'readme' is listed as `dynamic`. 2022-09-16T16:15:03,112 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:15:03,113 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:15:03,113 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:15:03,114 follow strictly the standard. 2022-09-16T16:15:03,114 To prevent this warning, you can list 'readme' under `dynamic` or alternatively 2022-09-16T16:15:03,115 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:15:03,115 configuration. 2022-09-16T16:15:03,116 !! 2022-09-16T16:15:03,117 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:15:03,117 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:15:03,119 ########################################################################## 2022-09-16T16:15:03,119 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:15:03,120 ########################################################################## 2022-09-16T16:15:03,120 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:15:03,121 `requires-python = =3.6')>` 2022-09-16T16:15:03,122 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:15:03,122 consider this value unless 'requires-python' is listed as `dynamic`. 2022-09-16T16:15:03,123 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:15:03,124 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:15:03,124 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:15:03,124 follow strictly the standard. 2022-09-16T16:15:03,125 To prevent this warning, you can list 'requires-python' under `dynamic` or alternatively 2022-09-16T16:15:03,125 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:15:03,126 configuration. 2022-09-16T16:15:03,127 !! 2022-09-16T16:15:03,128 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:15:03,128 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:15:03,129 ########################################################################## 2022-09-16T16:15:03,130 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:15:03,130 ########################################################################## 2022-09-16T16:15:03,131 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:15:03,131 `classifiers = ['Programming Language :: Python :: 3', 'License :: OSI Approved :: MIT License', 'Operating System :: OS Independent']` 2022-09-16T16:15:03,132 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:15:03,132 consider this value unless 'classifiers' is listed as `dynamic`. 2022-09-16T16:15:03,133 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:15:03,134 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:15:03,134 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:15:03,135 follow strictly the standard. 2022-09-16T16:15:03,136 To prevent this warning, you can list 'classifiers' under `dynamic` or alternatively 2022-09-16T16:15:03,136 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:15:03,136 configuration. 2022-09-16T16:15:03,137 !! 2022-09-16T16:15:03,138 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:15:04,134 running bdist_wheel 2022-09-16T16:15:04,931 running build 2022-09-16T16:15:04,931 running build_py 2022-09-16T16:15:05,567 creating build 2022-09-16T16:15:05,568 creating build/lib 2022-09-16T16:15:05,569 creating build/lib/cvi 2022-09-16T16:15:05,571 copying src/cvi/__init__.py -> build/lib/cvi 2022-09-16T16:15:05,575 copying src/cvi/icvi.py -> build/lib/cvi 2022-09-16T16:15:05,582 creating build/lib/cvi/modules 2022-09-16T16:15:05,584 copying src/cvi/modules/_base.py -> build/lib/cvi/modules 2022-09-16T16:15:05,589 copying src/cvi/modules/__init__.py -> build/lib/cvi/modules 2022-09-16T16:15:05,594 copying src/cvi/modules/CH.py -> build/lib/cvi/modules 2022-09-16T16:15:05,598 copying src/cvi/modules/DB.py -> build/lib/cvi/modules 2022-09-16T16:15:05,604 copying src/cvi/modules/cSIL.py -> build/lib/cvi/modules 2022-09-16T16:15:05,608 running egg_info 2022-09-16T16:15:06,882 writing src/cvi.egg-info/PKG-INFO 2022-09-16T16:15:07,485 writing dependency_links to src/cvi.egg-info/dependency_links.txt 2022-09-16T16:15:10,470 writing requirements to src/cvi.egg-info/requires.txt 2022-09-16T16:15:11,069 writing top-level names to src/cvi.egg-info/top_level.txt 2022-09-16T16:15:11,115 reading manifest file 'src/cvi.egg-info/SOURCES.txt' 2022-09-16T16:15:11,120 adding license file 'LICENSE' 2022-09-16T16:15:11,125 writing manifest file 'src/cvi.egg-info/SOURCES.txt' 2022-09-16T16:15:12,396 installing to build/bdist.linux-armv7l/wheel 2022-09-16T16:15:12,396 running install 2022-09-16T16:15:12,459 running install_lib 2022-09-16T16:15:13,098 creating build/bdist.linux-armv7l 2022-09-16T16:15:13,100 creating build/bdist.linux-armv7l/wheel 2022-09-16T16:15:13,104 creating build/bdist.linux-armv7l/wheel/cvi 2022-09-16T16:15:13,106 copying build/lib/cvi/__init__.py -> build/bdist.linux-armv7l/wheel/cvi 2022-09-16T16:15:13,111 copying build/lib/cvi/icvi.py -> build/bdist.linux-armv7l/wheel/cvi 2022-09-16T16:15:13,117 creating build/bdist.linux-armv7l/wheel/cvi/modules 2022-09-16T16:15:13,120 copying build/lib/cvi/modules/_base.py -> build/bdist.linux-armv7l/wheel/cvi/modules 2022-09-16T16:15:13,125 copying build/lib/cvi/modules/__init__.py -> build/bdist.linux-armv7l/wheel/cvi/modules 2022-09-16T16:15:13,129 copying build/lib/cvi/modules/CH.py -> build/bdist.linux-armv7l/wheel/cvi/modules 2022-09-16T16:15:13,134 copying build/lib/cvi/modules/DB.py -> build/bdist.linux-armv7l/wheel/cvi/modules 2022-09-16T16:15:13,139 copying build/lib/cvi/modules/cSIL.py -> build/bdist.linux-armv7l/wheel/cvi/modules 2022-09-16T16:15:13,144 running install_egg_info 2022-09-16T16:15:13,776 Copying src/cvi.egg-info to build/bdist.linux-armv7l/wheel/cvi-0.1.0a4-py3.7.egg-info 2022-09-16T16:15:13,800 running install_scripts 2022-09-16T16:15:13,836 adding license file "LICENSE" (matched pattern "LICEN[CS]E*") 2022-09-16T16:15:13,847 creating build/bdist.linux-armv7l/wheel/cvi-0.1.0a4.dist-info/WHEEL 2022-09-16T16:15:13,853 creating '/tmp/pip-wheel-r_yzrkur/tmpo1pfbuif/cvi-0.1.0a4-py3-none-any.whl' and adding 'build/bdist.linux-armv7l/wheel' to it 2022-09-16T16:15:13,859 adding 'cvi/__init__.py' 2022-09-16T16:15:13,864 adding 'cvi/icvi.py' 2022-09-16T16:15:13,870 adding 'cvi/modules/CH.py' 2022-09-16T16:15:13,874 adding 'cvi/modules/DB.py' 2022-09-16T16:15:13,877 adding 'cvi/modules/__init__.py' 2022-09-16T16:15:13,881 adding 'cvi/modules/_base.py' 2022-09-16T16:15:13,885 adding 'cvi/modules/cSIL.py' 2022-09-16T16:15:13,890 adding 'cvi-0.1.0a4.dist-info/LICENSE' 2022-09-16T16:15:13,894 adding 'cvi-0.1.0a4.dist-info/METADATA' 2022-09-16T16:15:13,896 adding 'cvi-0.1.0a4.dist-info/WHEEL' 2022-09-16T16:15:13,898 adding 'cvi-0.1.0a4.dist-info/top_level.txt' 2022-09-16T16:15:13,901 adding 'cvi-0.1.0a4.dist-info/RECORD' 2022-09-16T16:15:13,904 removing build/bdist.linux-armv7l/wheel 2022-09-16T16:15:13,919 /usr/local/lib/python3.7/dist-packages/setuptools/config/_apply_pyprojecttoml.py:101: _WouldIgnoreField: !! 2022-09-16T16:15:13,920 ########################################################################## 2022-09-16T16:15:13,921 # configuration would be ignored/result in error due to `pyproject.toml` # 2022-09-16T16:15:13,921 ########################################################################## 2022-09-16T16:15:13,922 The following seems to be defined outside of `pyproject.toml`: 2022-09-16T16:15:13,922 `urls = {'Bug Tracker': 'https://github.com/AP6YC/cvi/issues', 'Documentation': 'https://cluster-validity-indices.readthedocs.io/'}` 2022-09-16T16:15:13,923 According to the spec (see the link bellow), however, setuptools CANNOT 2022-09-16T16:15:13,923 consider this value unless 'urls' is listed as `dynamic`. 2022-09-16T16:15:13,924 https://packaging.python.org/en/latest/specifications/declaring-project-metadata/ 2022-09-16T16:15:13,924 For the time being, `setuptools` will still consider the given value (as a 2022-09-16T16:15:13,925 **transitional** measure), but please note that future releases of setuptools will 2022-09-16T16:15:13,925 follow strictly the standard. 2022-09-16T16:15:13,926 To prevent this warning, you can list 'urls' under `dynamic` or alternatively 2022-09-16T16:15:13,926 remove the `[project]` table from your file and rely entirely on other means of 2022-09-16T16:15:13,926 configuration. 2022-09-16T16:15:13,927 !! 2022-09-16T16:15:13,928 warnings.warn(msg, _WouldIgnoreField) 2022-09-16T16:15:14,243 Building wheel for cvi (pyproject.toml): finished with status 'done' 2022-09-16T16:15:14,255 Created wheel for cvi: filename=cvi-0.1.0a4-py3-none-any.whl size=15058 sha256=ef3ec965a1fc2d155cca6d3fda93d1fe7a2d9e3b78211ab5351752a6c3e3f8dc 2022-09-16T16:15:14,258 Stored in directory: /tmp/pip-ephem-wheel-cache-8lsx4iac/wheels/24/f8/16/9afb4abf01118331efce9320ec75626e20aff9f147ef873180 2022-09-16T16:15:14,281 Successfully built cvi 2022-09-16T16:15:14,288 Removed build tracker: '/tmp/pip-build-tracker-e07o_usu'