2026-03-04T05:28:14,522 Created temporary directory: /tmp/pip-ephem-wheel-cache-rxcwoza9 2026-03-04T05:28:14,524 Created temporary directory: /tmp/pip-build-tracker-98s73m58 2026-03-04T05:28:14,524 Initialized build tracking at /tmp/pip-build-tracker-98s73m58 2026-03-04T05:28:14,525 Created build tracker: /tmp/pip-build-tracker-98s73m58 2026-03-04T05:28:14,526 Entered build tracker: /tmp/pip-build-tracker-98s73m58 2026-03-04T05:28:14,527 Created temporary directory: /tmp/pip-wheel-iebwydb4 2026-03-04T05:28:14,530 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-03-04T05:28:14,532 Created temporary directory: /tmp/pip-ephem-wheel-cache-d22s64ac 2026-03-04T05:28:14,555 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-03-04T05:28:14,559 2 location(s) to search for versions of canvas-mcp: 2026-03-04T05:28:14,559 * https://pypi.org/simple/canvas-mcp/ 2026-03-04T05:28:14,559 * https://www.piwheels.org/simple/canvas-mcp/ 2026-03-04T05:28:14,560 Fetching project page and analyzing links: https://pypi.org/simple/canvas-mcp/ 2026-03-04T05:28:14,560 Getting page https://pypi.org/simple/canvas-mcp/ 2026-03-04T05:28:14,562 Found index url https://pypi.org/simple 2026-03-04T05:28:14,820 Fetched page https://pypi.org/simple/canvas-mcp/ as application/vnd.pypi.simple.v1+json 2026-03-04T05:28:14,826 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/8c/5d/d8a192a93f28196428e9eb6b3494e27c2a05cc8ae2e5098919dd3426e3d7/canvas_mcp-1.0.0-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,827 Found link https://files.pythonhosted.org/packages/95/83/4b093b9b3ddc8333c5a270c3e36521883b9e7e279ee26c3d40caa0dc9ad9/canvas_mcp-1.0.0.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.0 2026-03-04T05:28:14,828 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/d9/49/e85b1af8380fc41bf5e8dc4e522e3707812d72b9249ea53b27f97e2ecc67/canvas_mcp-1.0.1-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,829 Found link https://files.pythonhosted.org/packages/4c/d8/4b2a81e1caeacca26a2dc9f1dfb5079f8447989a229c7dc485fe3182253b/canvas_mcp-1.0.1.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.1 2026-03-04T05:28:14,831 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/7a/90/2d278b9697dbf85bd8cdcac17caf3541a493c9a5c8ca2f21415317dbc0ee/canvas_mcp-1.0.2-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,832 Found link https://files.pythonhosted.org/packages/5a/5f/9eae66f31ebfee96db53d31fe0fa5c214d948a51616ef966653e1ca2d744/canvas_mcp-1.0.2.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.2 2026-03-04T05:28:14,833 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/e7/85/ec2cf2fe57d705df870b860061a38a04aeb3059b7ce64f9a0f50e21f4a7d/canvas_mcp-1.0.3-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,835 Found link https://files.pythonhosted.org/packages/88/68/7d54ac1e2c58bbfa1e05aad183929025299a22d9a46ebab7f13fe43988a9/canvas_mcp-1.0.3.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.3 2026-03-04T05:28:14,835 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/77/92/9e3ebda8183979dc6afb059caeb38aa035bcba445c4f1db53914dac0940d/canvas_mcp-1.0.4-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,837 Found link https://files.pythonhosted.org/packages/dc/b5/7b62d7cffdc72537590ab1579af2b0ef74d9517425311e925955b5ccd8ea/canvas_mcp-1.0.4.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.4 2026-03-04T05:28:14,839 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/50/9e/4a2ea0c8bc6f4e7f42d6651775cacdea843bf3e847d7a4f417fcbdbb7b87/canvas_mcp-1.0.5-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,840 Found link https://files.pythonhosted.org/packages/98/a3/6bdb2212a849646da39b1fe33eb3a5fb3d56594f4782c897e4fd3bca0085/canvas_mcp-1.0.5.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.5 2026-03-04T05:28:14,841 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/63/9b/a49240668e6fd27948ed308fe3e49f9b4be30b36ede98b366a8d9d08fa16/canvas_mcp-1.0.6-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,843 Found link https://files.pythonhosted.org/packages/a1/87/13c039b959bd6c4b57db1ba41411afe9d070bbcf0013227d5e782742fc41/canvas_mcp-1.0.6.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.6 2026-03-04T05:28:14,844 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/12/ee/a84350730d513e7e02983f963b4f2c6386ed1b13a64e9474c3082179a224/canvas_mcp-1.0.7-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,846 Found link https://files.pythonhosted.org/packages/32/26/661b771ab02bb1256bf4397b60831cb0c3addbd650a63d75a8bf935bdfde/canvas_mcp-1.0.7.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.7 2026-03-04T05:28:14,847 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/59/22/1948e9495e4e03280a7eeca0e1376f70e1b907cd339590392f64640eac1b/canvas_mcp-1.0.8-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,848 Found link https://files.pythonhosted.org/packages/ec/f6/3cc63cd4ee9e3c83780cc49c04b1584f794bafaa1bd1d76d14c04e9fa62f/canvas_mcp-1.0.8.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.0.8 2026-03-04T05:28:14,849 Skipping link: No binaries permitted for canvas-mcp: https://files.pythonhosted.org/packages/09/eb/b329e78ee6e8f838c219e5f4dff02439173b74baad4651e8fe0b32255cf7/canvas_mcp-1.1.0-py3-none-any.whl (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:14,851 Found link https://files.pythonhosted.org/packages/2b/58/44d33b33ce3d8bbe88faf01e5004dbf6455a6cde6baf2af3b3dee6d9e8f8/canvas_mcp-1.1.0.tar.gz (from https://pypi.org/simple/canvas-mcp/) (requires-python:>=3.10), version: 1.1.0 2026-03-04T05:28:14,852 Fetching project page and analyzing links: https://www.piwheels.org/simple/canvas-mcp/ 2026-03-04T05:28:14,853 Getting page https://www.piwheels.org/simple/canvas-mcp/ 2026-03-04T05:28:14,855 Found index url https://www.piwheels.org/simple 2026-03-04T05:28:15,018 Fetched page https://www.piwheels.org/simple/canvas-mcp/ as text/html 2026-03-04T05:28:15,022 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.8-py3-none-any.whl#sha256=f40e10070f3e11ad128787601244c917442652108d58fca13a4354a544911272 (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,023 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.7-py3-none-any.whl#sha256=dabf4f9506d0b59f7879a809b4ca73678da8205c365cbde241e6370a92abb148 (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,023 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.6-py3-none-any.whl#sha256=849e6b5df8d4d2030fb3010b78e39d6e1f42c7a6e4c409eb3c2eaa39ef7b70df (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,024 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.5-py3-none-any.whl#sha256=aaf1a61d419372df09e8b913e38c664168ccefa4ecedb7ca49c798830688822c (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,025 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.4-py3-none-any.whl#sha256=7eb570cce7f1b44e18cfbe2e92324c1f2035509edc507e6f19257e5bad4e9137 (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,026 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.3-py3-none-any.whl#sha256=b7b7ceffd7213747f8b2770d9e59919fcea30ea2f04fe2e96edb74bed65c6426 (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,027 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.2-py3-none-any.whl#sha256=c795b6cf0f39c55fd828f76a0287b1f1fe878c62298e4fe234f014cb0c2e2926 (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,027 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.1-py3-none-any.whl#sha256=7baec6673ffa4671d87473937c3430672f876d1a659cd3080a4e18a227451a58 (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,028 Skipping link: No binaries permitted for canvas-mcp: https://archive1.piwheels.org/simple/canvas-mcp/canvas_mcp-1.0.0-py3-none-any.whl#sha256=1d2e203bf9933ab554bba4468eb94fb9a5da714d563d6d9df7bd3db40d7ec598 (from https://www.piwheels.org/simple/canvas-mcp/) (requires-python:>=3.10) 2026-03-04T05:28:15,029 Skipping link: not a file: https://www.piwheels.org/simple/canvas-mcp/ 2026-03-04T05:28:15,030 Skipping link: not a file: https://pypi.org/simple/canvas-mcp/ 2026-03-04T05:28:15,050 Given no hashes to check 1 links for project 'canvas-mcp': discarding no candidates 2026-03-04T05:28:15,068 Collecting canvas-mcp==1.1.0 2026-03-04T05:28:15,071 Created temporary directory: /tmp/pip-unpack-x_33jzww 2026-03-04T05:28:15,672 Downloading canvas_mcp-1.1.0.tar.gz (540 kB) 2026-03-04T05:28:16,367 Added canvas-mcp==1.1.0 from https://files.pythonhosted.org/packages/2b/58/44d33b33ce3d8bbe88faf01e5004dbf6455a6cde6baf2af3b3dee6d9e8f8/canvas_mcp-1.1.0.tar.gz to build tracker '/tmp/pip-build-tracker-98s73m58' 2026-03-04T05:28:16,374 Created temporary directory: /tmp/pip-build-env-ir_sahag 2026-03-04T05:28:16,379 Installing build dependencies: started 2026-03-04T05:28:16,380 Running command pip subprocess to install build dependencies 2026-03-04T05:28:17,526 Using pip 23.0.1 from /usr/lib/python3/dist-packages/pip (python 3.11) 2026-03-04T05:28:18,126 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-03-04T05:28:18,149 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-03-04T05:28:18,654 Collecting hatchling 2026-03-04T05:28:18,675 Using cached https://www.piwheels.org/simple/hatchling/hatchling-1.29.0-py3-none-any.whl (76 kB) 2026-03-04T05:28:18,870 Collecting packaging>=24.2 2026-03-04T05:28:18,887 Using cached https://www.piwheels.org/simple/packaging/packaging-26.0-py3-none-any.whl (74 kB) 2026-03-04T05:28:19,005 Collecting pathspec>=0.10.1 2026-03-04T05:28:19,022 Using cached https://www.piwheels.org/simple/pathspec/pathspec-1.0.4-py3-none-any.whl (55 kB) 2026-03-04T05:28:19,143 Collecting pluggy>=1.0.0 2026-03-04T05:28:19,159 Using cached https://www.piwheels.org/simple/pluggy/pluggy-1.6.0-py3-none-any.whl (20 kB) 2026-03-04T05:28:19,407 Collecting trove-classifiers 2026-03-04T05:28:19,423 Using cached https://www.piwheels.org/simple/trove-classifiers/trove_classifiers-2026.1.14.14-py3-none-any.whl (14 kB) 2026-03-04T05:28:22,131 Installing collected packages: trove-classifiers, pluggy, pathspec, packaging, hatchling 2026-03-04T05:28:22,165 Creating /tmp/pip-build-env-ir_sahag/overlay/local/bin 2026-03-04T05:28:22,167 changing mode of /tmp/pip-build-env-ir_sahag/overlay/local/bin/trove-classifiers to 755 2026-03-04T05:28:23,168 changing mode of /tmp/pip-build-env-ir_sahag/overlay/local/bin/hatchling to 755 2026-03-04T05:28:23,204 Successfully installed hatchling-1.29.0 packaging-26.0 pathspec-1.0.4 pluggy-1.6.0 trove-classifiers-2026.1.14.14 2026-03-04T05:28:23,456 Installing build dependencies: finished with status 'done' 2026-03-04T05:28:23,462 Getting requirements to build wheel: started 2026-03-04T05:28:23,463 Running command Getting requirements to build wheel 2026-03-04T05:28:23,814 Getting requirements to build wheel: finished with status 'done' 2026-03-04T05:28:23,817 Created temporary directory: /tmp/pip-modern-metadata-vd9w6paq 2026-03-04T05:28:23,820 Preparing metadata (pyproject.toml): started 2026-03-04T05:28:23,821 Running command Preparing metadata (pyproject.toml) 2026-03-04T05:28:24,494 Preparing metadata (pyproject.toml): finished with status 'done' 2026-03-04T05:28:24,501 Source in /tmp/pip-wheel-iebwydb4/canvas-mcp_4d24cf5e3a6f4f19ac94b75f31fced25 has version 1.1.0, which satisfies requirement canvas-mcp==1.1.0 from https://files.pythonhosted.org/packages/2b/58/44d33b33ce3d8bbe88faf01e5004dbf6455a6cde6baf2af3b3dee6d9e8f8/canvas_mcp-1.1.0.tar.gz 2026-03-04T05:28:24,502 Removed canvas-mcp==1.1.0 from https://files.pythonhosted.org/packages/2b/58/44d33b33ce3d8bbe88faf01e5004dbf6455a6cde6baf2af3b3dee6d9e8f8/canvas_mcp-1.1.0.tar.gz from build tracker '/tmp/pip-build-tracker-98s73m58' 2026-03-04T05:28:24,513 Created temporary directory: /tmp/pip-unpack-03hb4nbt 2026-03-04T05:28:24,513 Building wheels for collected packages: canvas-mcp 2026-03-04T05:28:24,517 Created temporary directory: /tmp/pip-wheel-gzu7yryv 2026-03-04T05:28:24,518 Destination directory: /tmp/pip-wheel-gzu7yryv 2026-03-04T05:28:24,520 Building wheel for canvas-mcp (pyproject.toml): started 2026-03-04T05:28:24,521 Running command Building wheel for canvas-mcp (pyproject.toml) 2026-03-04T05:28:24,657 Building wheel for canvas-mcp (pyproject.toml): finished with status 'done' 2026-03-04T05:28:24,662 Created wheel for canvas-mcp: filename=canvas_mcp-1.1.0-py3-none-any.whl size=152358 sha256=377d51b04859f7975acf6656bbd4b54df51b1df9924af48b576526f46aea4836 2026-03-04T05:28:24,663 Stored in directory: /tmp/pip-ephem-wheel-cache-d22s64ac/wheels/ad/ac/2d/bbd7765c900cd140001ba1fdcc382b04af8324a3c19e81c570 2026-03-04T05:28:24,685 Successfully built canvas-mcp 2026-03-04T05:28:24,693 Removed build tracker: '/tmp/pip-build-tracker-98s73m58'