2024-06-29T13:11:50,996 Created temporary directory: /tmp/pip-build-tracker-8aakm7qm 2024-06-29T13:11:50,998 Initialized build tracking at /tmp/pip-build-tracker-8aakm7qm 2024-06-29T13:11:50,998 Created build tracker: /tmp/pip-build-tracker-8aakm7qm 2024-06-29T13:11:50,998 Entered build tracker: /tmp/pip-build-tracker-8aakm7qm 2024-06-29T13:11:50,998 Created temporary directory: /tmp/pip-wheel-o_v01cdq 2024-06-29T13:11:51,003 Created temporary directory: /tmp/pip-ephem-wheel-cache-w6aa_qeu 2024-06-29T13:11:51,026 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2024-06-29T13:11:51,030 2 location(s) to search for versions of mdpw: 2024-06-29T13:11:51,030 * https://pypi.org/simple/mdpw/ 2024-06-29T13:11:51,030 * https://www.piwheels.org/simple/mdpw/ 2024-06-29T13:11:51,030 Fetching project page and analyzing links: https://pypi.org/simple/mdpw/ 2024-06-29T13:11:51,031 Getting page https://pypi.org/simple/mdpw/ 2024-06-29T13:11:51,032 Found index url https://pypi.org/simple/ 2024-06-29T13:11:51,084 Fetched page https://pypi.org/simple/mdpw/ as application/vnd.pypi.simple.v1+json 2024-06-29T13:11:51,085 Skipping link: No binaries permitted for mdpw: https://files.pythonhosted.org/packages/db/ce/de06092625a0d8b42b8af775d1a6aed45f2b27a03f7329fc1990ea0f506a/mdpw-0.0.1-py3-none-any.whl (from https://pypi.org/simple/mdpw/) 2024-06-29T13:11:51,086 Skipping link: No binaries permitted for mdpw: https://files.pythonhosted.org/packages/48/77/91ecbaf3b7b4b2cc67c05f5b2a4b1c5b028dbc481c5715700ee016b8af9a/mdpw-0.0.2-py3-none-any.whl (from https://pypi.org/simple/mdpw/) 2024-06-29T13:11:51,086 Found link https://files.pythonhosted.org/packages/98/90/9b490551e6796c61fcf97203a80111246630e4330ed3198c5314c3cc560e/mdpw-0.0.2.tar.gz (from https://pypi.org/simple/mdpw/), version: 0.0.2 2024-06-29T13:11:51,086 Skipping link: No binaries permitted for mdpw: https://files.pythonhosted.org/packages/bb/0a/bee4dc581ffc6009b22e0337af4abead794493f1cbbdef2bd13b824a6bd9/mdpw-0.0.3-py3-none-any.whl (from https://pypi.org/simple/mdpw/) 2024-06-29T13:11:51,086 Found link https://files.pythonhosted.org/packages/a9/40/862612ce80fe9dc13c9ac9858308092b9353c8bc45614fd84d179a3c11e5/mdpw-0.0.3.tar.gz (from https://pypi.org/simple/mdpw/), version: 0.0.3 2024-06-29T13:11:51,087 Fetching project page and analyzing links: https://www.piwheels.org/simple/mdpw/ 2024-06-29T13:11:51,087 Getting page https://www.piwheels.org/simple/mdpw/ 2024-06-29T13:11:51,088 Found index url https://www.piwheels.org/simple/ 2024-06-29T13:11:51,156 Fetched page https://www.piwheels.org/simple/mdpw/ as text/html 2024-06-29T13:11:51,157 Skipping link: No binaries permitted for mdpw: https://www.piwheels.org/simple/mdpw/mdpw-0.0.2-py3-none-any.whl#sha256=6bd43f99cb3e2bd82cee4775b41f8b22fcd7efa925d2aa39c0ed67176d6fd5ac (from https://www.piwheels.org/simple/mdpw/) 2024-06-29T13:11:51,158 Skipping link: not a file: https://www.piwheels.org/simple/mdpw/ 2024-06-29T13:11:51,158 Skipping link: not a file: https://pypi.org/simple/mdpw/ 2024-06-29T13:11:51,175 Given no hashes to check 1 links for project 'mdpw': discarding no candidates 2024-06-29T13:11:51,192 Collecting mdpw==0.0.3 2024-06-29T13:11:51,194 Created temporary directory: /tmp/pip-unpack-8skj7c2_ 2024-06-29T13:11:51,237 Downloading mdpw-0.0.3.tar.gz (5.3 kB) 2024-06-29T13:11:51,267 Added mdpw==0.0.3 from https://files.pythonhosted.org/packages/a9/40/862612ce80fe9dc13c9ac9858308092b9353c8bc45614fd84d179a3c11e5/mdpw-0.0.3.tar.gz to build tracker '/tmp/pip-build-tracker-8aakm7qm' 2024-06-29T13:11:51,268 Running setup.py (path:/tmp/pip-wheel-o_v01cdq/mdpw_896c8702f2154a2b9bd67709a2c5fa23/setup.py) egg_info for package mdpw 2024-06-29T13:11:51,269 Created temporary directory: /tmp/pip-pip-egg-info-zb3refkk 2024-06-29T13:11:51,269 Preparing metadata (setup.py): started 2024-06-29T13:11:51,270 Running command python setup.py egg_info 2024-06-29T13:11:51,744 Traceback (most recent call last): 2024-06-29T13:11:51,745 File "", line 2, in 2024-06-29T13:11:51,745 File "", line 34, in 2024-06-29T13:11:51,745 File "/tmp/pip-wheel-o_v01cdq/mdpw_896c8702f2154a2b9bd67709a2c5fa23/setup.py", line 45, in 2024-06-29T13:11:51,745 tests_require=_test_requirements(), 2024-06-29T13:11:51,745 File "/tmp/pip-wheel-o_v01cdq/mdpw_896c8702f2154a2b9bd67709a2c5fa23/setup.py", line 17, in _test_requirements 2024-06-29T13:11:51,746 return [name.rstrip() for name in open(path.join(root_dir, 'test-requirements.txt')).readlines()] 2024-06-29T13:11:51,746 File "/usr/lib/python3.9/codecs.py", line 905, in open 2024-06-29T13:11:51,747 file = builtins.open(filename, mode, buffering) 2024-06-29T13:11:51,747 FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-wheel-o_v01cdq/mdpw_896c8702f2154a2b9bd67709a2c5fa23/test-requirements.txt' 2024-06-29T13:11:51,747 MDPW 2024-06-29T13:11:51,747 ==== 2024-06-29T13:11:51,748 This package generates a PrettyMIDI object from Array of Array. 2024-06-29T13:11:51,748 Here is a sample code. 2024-06-29T13:11:51,748 :: 2024-06-29T13:11:51,749 import mdpw 2024-06-29T13:11:51,749 a = ['s',['n',64,1,64,1],['n',68,1,64,1],['n',71,1,64,1], 2024-06-29T13:11:51,749 ['c',['n',64,1,64,1],['n',68,1,64,1],['n',71,1,64,1]]] 2024-06-29T13:11:51,749 mdpw.compile(a, 120).write("hello.mid") 2024-06-29T13:11:51,750 'n' means a note and followed values are pitch, duration, velocity and instrument. The instrument 129 means Drum. 2024-06-29T13:11:51,750 's' means to play sequentially and 'c' means to play simultaneously. 2024-06-29T13:11:51,751 Here is anther sample code. 2024-06-29T13:11:51,751 :: 2024-06-29T13:11:51,752 from mdpw import INSTRUMENTS as I 2024-06-29T13:11:51,752 from mdpw import DRUMS as D 2024-06-29T13:11:51,752 from mdpw import note, seq, chord, compile 2024-06-29T13:11:51,752 dph = D['PedalHi-Hat'] 2024-06-29T13:11:51,752 i = I['Drum'] 2024-06-29T13:11:51,753 hh = ['s',['n',dph,1,127,i],['n',dph,1],['n',dph,1],['n',dph,1]] 2024-06-29T13:11:51,753 b = seq(note(64,.5,0,I['ElectricBassPick']),note(64,1,127),note(64,1),note(64,1)) 2024-06-29T13:11:51,753 m = chord(seq(hh,hh,hh,hh),seq(b,b,b,b)) 2024-06-29T13:11:51,753 compile(m, 120).write("sample.mid") 2024-06-29T13:11:51,754 In fact, the functions 'note', 'seq', 'chord' return arrays. 2024-06-29T13:11:51,754 You can generate a round chant like this: 2024-06-29T13:11:51,754 :: 2024-06-29T13:11:51,755 import mdpw 2024-06-29T13:11:51,755 from mdpw import note as n 2024-06-29T13:11:51,755 from mdpw import seq as s 2024-06-29T13:11:51,756 from mdpw import chord as c 2024-06-29T13:11:51,756 from mdpw import compile 2024-06-29T13:11:51,756 m0 = s(n(64,1,64,17), n(66), n(68), n(69), n(68),n(66),n(64),n(0,1,0)) 2024-06-29T13:11:51,756 m01 = s(n(64,.5,64,17),n(64), n(66), n(66), n(68),n(68), n(69),n(69), n(68),n(68),n(66),n(66),n(64,1),n(0,1,0)) 2024-06-29T13:11:51,757 m1 = s(n(68,1,64,17), n(69), n(71), n(73), n(71),n(69),n(68),n(0,1,0)) 2024-06-29T13:11:51,757 m2 = s(n(64,2,125,17), n(64), n(64), n(64)) 2024-06-29T13:11:51,757 a = s(m0, m1, m2,m01) 2024-06-29T13:11:51,757 r = n(0,8,0,1) 2024-06-29T13:11:51,757 a =c(a, s(r, a), s(r, r, a)) 2024-06-29T13:11:51,758 mdpw.compile(a, 120).write("frog.mid") 2024-06-29T13:11:51,798 ERROR: python setup.py egg_info exited with 1 2024-06-29T13:11:51,815 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2024-06-29T13:11:51,815 exec(compile('"'"''"'"''"'"' 2024-06-29T13:11:51,815 # This is -- a caller that pip uses to run setup.py 2024-06-29T13:11:51,815 # 2024-06-29T13:11:51,815 # - It imports setuptools before invoking setup.py, to enable projects that directly 2024-06-29T13:11:51,815 # import from `distutils.core` to work with newer packaging standards. 2024-06-29T13:11:51,815 # - It provides a clear error message when setuptools is not installed. 2024-06-29T13:11:51,815 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2024-06-29T13:11:51,815 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2024-06-29T13:11:51,815 # manifest_maker: standard file '"'"'-c'"'"' not found". 2024-06-29T13:11:51,815 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2024-06-29T13:11:51,815 import os, sys, tokenize 2024-06-29T13:11:51,815 2024-06-29T13:11:51,815 try: 2024-06-29T13:11:51,815 import setuptools 2024-06-29T13:11:51,815 except ImportError as error: 2024-06-29T13:11:51,815 print( 2024-06-29T13:11:51,815 "ERROR: Can not execute `setup.py` since setuptools is not available in " 2024-06-29T13:11:51,815 "the build environment.", 2024-06-29T13:11:51,815 file=sys.stderr, 2024-06-29T13:11:51,815 ) 2024-06-29T13:11:51,815 sys.exit(1) 2024-06-29T13:11:51,815 2024-06-29T13:11:51,815 __file__ = %r 2024-06-29T13:11:51,815 sys.argv[0] = __file__ 2024-06-29T13:11:51,815 2024-06-29T13:11:51,815 if os.path.exists(__file__): 2024-06-29T13:11:51,815 filename = __file__ 2024-06-29T13:11:51,815 with tokenize.open(__file__) as f: 2024-06-29T13:11:51,815 setup_py_code = f.read() 2024-06-29T13:11:51,815 else: 2024-06-29T13:11:51,815 filename = "" 2024-06-29T13:11:51,815 setup_py_code = "from setuptools import setup; setup()" 2024-06-29T13:11:51,815 2024-06-29T13:11:51,815 exec(compile(setup_py_code, filename, "exec")) 2024-06-29T13:11:51,815 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-o_v01cdq/mdpw_896c8702f2154a2b9bd67709a2c5fa23/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-zb3refkk[/] 2024-06-29T13:11:51,816 [bold magenta]cwd[/]: /tmp/pip-wheel-o_v01cdq/mdpw_896c8702f2154a2b9bd67709a2c5fa23/ 2024-06-29T13:11:51,816 Preparing metadata (setup.py): finished with status 'error' 2024-06-29T13:11:51,817 ERROR: metadata generation failed 2024-06-29T13:11:51,823 Exception information: 2024-06-29T13:11:51,823 Traceback (most recent call last): 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 64, in generate_metadata 2024-06-29T13:11:51,823 call_subprocess( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/utils/subprocess.py", line 224, in call_subprocess 2024-06-29T13:11:51,823 raise error 2024-06-29T13:11:51,823 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2024-06-29T13:11:51,823 2024-06-29T13:11:51,823 The above exception was the direct cause of the following exception: 2024-06-29T13:11:51,823 2024-06-29T13:11:51,823 Traceback (most recent call last): 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/base_command.py", line 180, in exc_logging_wrapper 2024-06-29T13:11:51,823 status = run_func(*args) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/req_command.py", line 245, in wrapper 2024-06-29T13:11:51,823 return func(self, options, args) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2024-06-29T13:11:51,823 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 95, in resolve 2024-06-29T13:11:51,823 result = self._result = resolver.resolve( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 546, in resolve 2024-06-29T13:11:51,823 state = resolution.resolve(requirements, max_rounds=max_rounds) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 397, in resolve 2024-06-29T13:11:51,823 self._add_to_criteria(self.state.criteria, r, parent=None) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 173, in _add_to_criteria 2024-06-29T13:11:51,823 if not criterion.candidates: 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/structs.py", line 156, in __bool__ 2024-06-29T13:11:51,823 return bool(self._sequence) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in __bool__ 2024-06-29T13:11:51,823 return any(self) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in 2024-06-29T13:11:51,823 return (c for c in iterator if id(c) not in self._incompatible_ids) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 47, in _iter_built 2024-06-29T13:11:51,823 candidate = func() 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 182, in _make_candidate_from_link 2024-06-29T13:11:51,823 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 228, in _make_base_candidate_from_link 2024-06-29T13:11:51,823 self._link_candidate_cache[link] = LinkCandidate( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 290, in __init__ 2024-06-29T13:11:51,823 super().__init__( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 156, in __init__ 2024-06-29T13:11:51,823 self.dist = self._prepare() 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 222, in _prepare 2024-06-29T13:11:51,823 dist = self._prepare_distribution() 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 301, in _prepare_distribution 2024-06-29T13:11:51,823 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/operations/prepare.py", line 525, in prepare_linked_requirement 2024-06-29T13:11:51,823 return self._prepare_linked_requirement(req, parallel_builds) 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/operations/prepare.py", line 640, in _prepare_linked_requirement 2024-06-29T13:11:51,823 dist = _get_prepared_distribution( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2024-06-29T13:11:51,823 abstract_dist.prepare_distribution_metadata( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/distributions/sdist.py", line 67, in prepare_distribution_metadata 2024-06-29T13:11:51,823 self.req.prepare_metadata() 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/req/req_install.py", line 585, in prepare_metadata 2024-06-29T13:11:51,823 self.metadata_directory = generate_metadata_legacy( 2024-06-29T13:11:51,823 File "/usr/local/lib/python3.9/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 71, in generate_metadata 2024-06-29T13:11:51,823 raise MetadataGenerationFailed(package_details=details) from error 2024-06-29T13:11:51,823 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2024-06-29T13:11:51,832 Removed mdpw==0.0.3 from https://files.pythonhosted.org/packages/a9/40/862612ce80fe9dc13c9ac9858308092b9353c8bc45614fd84d179a3c11e5/mdpw-0.0.3.tar.gz from build tracker '/tmp/pip-build-tracker-8aakm7qm' 2024-06-29T13:11:51,833 Removed build tracker: '/tmp/pip-build-tracker-8aakm7qm'