2026-03-04T06:59:00,340 Created temporary directory: /tmp/pip-ephem-wheel-cache-9m1hmpkv 2026-03-04T06:59:00,342 Created temporary directory: /tmp/pip-build-tracker-ry5r21ai 2026-03-04T06:59:00,343 Initialized build tracking at /tmp/pip-build-tracker-ry5r21ai 2026-03-04T06:59:00,343 Created build tracker: /tmp/pip-build-tracker-ry5r21ai 2026-03-04T06:59:00,343 Entered build tracker: /tmp/pip-build-tracker-ry5r21ai 2026-03-04T06:59:00,344 Created temporary directory: /tmp/pip-wheel-qv7m5ujw 2026-03-04T06:59:00,347 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-04T06:59:00,350 Created temporary directory: /tmp/pip-ephem-wheel-cache-dj344et4 2026-03-04T06:59:00,372 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-03-04T06:59:00,376 2 location(s) to search for versions of routilux: 2026-03-04T06:59:00,376 * https://pypi.org/simple/routilux/ 2026-03-04T06:59:00,376 * https://www.piwheels.org/simple/routilux/ 2026-03-04T06:59:00,377 Fetching project page and analyzing links: https://pypi.org/simple/routilux/ 2026-03-04T06:59:00,377 Getting page https://pypi.org/simple/routilux/ 2026-03-04T06:59:00,379 Found index url https://pypi.org/simple 2026-03-04T06:59:00,595 Fetched page https://pypi.org/simple/routilux/ as application/vnd.pypi.simple.v1+json 2026-03-04T06:59:00,602 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/51/21/d2b90189d476940a4e679e08fcc2be4f8faf4b6c8b41ac34ebf74c468c01/routilux-0.8.0-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:>=3.7) 2026-03-04T06:59:00,603 Found link https://files.pythonhosted.org/packages/28/00/2ccf843850b6ec1084f50c3a7e362838cba18556eb4522aab0d95f37c86a/routilux-0.8.0.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:>=3.7), version: 0.8.0 2026-03-04T06:59:00,604 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/47/43/bb8f9fb8e65ac6644b6858494fd045d89e7d36aefcdbf16b3d3d3dbb73e3/routilux-0.8.1-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:>=3.7) 2026-03-04T06:59:00,605 Found link https://files.pythonhosted.org/packages/bc/bc/c2e994e6aeeda7638b70fef87733145ca352058559718e617f3b1c1e4b79/routilux-0.8.1.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:>=3.7), version: 0.8.1 2026-03-04T06:59:00,606 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/06/d2/b6a0769195ec2d53554226d2db1f5600c76ab30d70e5d35769d289f0ae56/routilux-0.9.0-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:>=3.7) 2026-03-04T06:59:00,607 Found link https://files.pythonhosted.org/packages/a7/6f/11907b69512fb1bb7769513fca385e5124184e6ec7c23d0689048cb23470/routilux-0.9.0.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:>=3.7), version: 0.9.0 2026-03-04T06:59:00,607 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/5d/b2/bd1b560d3df6a489e37b11d8a3505fc4d792e1e9ad3ac303e8612a0fa721/routilux-0.10.0-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,608 Found link https://files.pythonhosted.org/packages/b1/55/c61e8e6511935e73ff8f2633886dbfe3ae73d54eee6aa5035a4e4ab024d4/routilux-0.10.0.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.10.0 2026-03-04T06:59:00,609 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/ef/42/4f7f7e7997065df63d847e7ffd627cdb03fa414fa50bb13f198e1ebd5f96/routilux-0.11.0-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,610 Found link https://files.pythonhosted.org/packages/1e/be/bd8f99794868aeece1c4c33841a0a7de0e78e7ce7a208ddf9ee226cb58e4/routilux-0.11.0.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.11.0 2026-03-04T06:59:00,611 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/b6/5d/cc23999025384e50fd001bf35de7fab7bae937f5308c84ad26e9e3cbb224/routilux-0.11.1-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,612 Found link https://files.pythonhosted.org/packages/f1/d6/b11e05d57155e1a559a055b044c20319976b0eba58b2f09f2b3d6828f3a3/routilux-0.11.1.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.11.1 2026-03-04T06:59:00,613 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/e5/30/b8839a73b5437b457d58dac59cb27f8d4b02950c62523681968a063a39d1/routilux-0.13.0-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,614 Found link https://files.pythonhosted.org/packages/0f/87/dad18cd8c206d84afa32132e64e4d1a60fe56decbc05d8ac6d695061c344/routilux-0.13.0.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.13.0 2026-03-04T06:59:00,615 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/d6/7b/dd3b433951382f9cf58f6cc055bd9c0cd2fea32f4fe595bb42883825e2b5/routilux-0.13.1-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,616 Found link https://files.pythonhosted.org/packages/73/81/54c8c4797bfcfd7517e21c92e50bf8986bf66e4af2f17b397239e1f8d437/routilux-0.13.1.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.13.1 2026-03-04T06:59:00,616 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/34/2c/3a170059577a615c0ade9309c04757cdcff4ad1f1c1a9dbe4ffd659bace0/routilux-0.14.0-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,617 Found link https://files.pythonhosted.org/packages/7e/1c/f1c1a3caf3a6469fd0e6db1855971b3dc46de2023bf4f2d762ddc8dbd2ef/routilux-0.14.0.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.14.0 2026-03-04T06:59:00,618 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/93/86/54b7c4bca4b998311bfd994fcb0a6cd5b5974fd8521999b8c4d9dded3594/routilux-0.14.1-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,619 Found link https://files.pythonhosted.org/packages/ec/ee/12ee2f1805abb4936ccc64b70fbc10b0eeefc1837155f1e4404fce3b3d7b/routilux-0.14.1.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.14.1 2026-03-04T06:59:00,620 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/66/89/8c0408fb1a53749bbc6694fc02de635c731999edc18b339cd93ba8db31ef/routilux-0.14.2-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,621 Found link https://files.pythonhosted.org/packages/0b/6d/eaa401ac5c3b9ad6eb27c4e2808de349886804fc1008e1e2d652a057fe59/routilux-0.14.2.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.14.2 2026-03-04T06:59:00,622 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/ff/09/5e3486eec14c1ab3b7222313705f720de9c4df7f48be681b7cf845768c68/routilux-0.14.3-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,623 Found link https://files.pythonhosted.org/packages/f9/a3/4674e54a4aeb9cd60cc5503e1926d9bf81efcf5fc21912bf7660d38d5d43/routilux-0.14.3.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.14.3 2026-03-04T06:59:00,623 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/29/12/94283365725a2882a1584618d1b9d5f9abb889de990aecc2a03dfa3a7899/routilux-0.14.4-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,624 Found link https://files.pythonhosted.org/packages/8d/62/b4a89ca3b99b16896a1ac17ee1f850f843ce68f24fa274a864283ab18aae/routilux-0.14.4.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.14.4 2026-03-04T06:59:00,625 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/cc/1d/95e2c82df515a47f2c2095e2e9f7edc46a8fcfe0b3289f786cfc84b3dc5b/routilux-0.15.1-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,626 Found link https://files.pythonhosted.org/packages/7c/68/1f83451806fedda7b7bb9c495808b8f960d50fc107641540f4a51cbfac80/routilux-0.15.1.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.15.1 2026-03-04T06:59:00,627 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/f8/ff/21d0825e1bb82ce1987643377767a4c67166486f38cd8db50e6ade35c9c1/routilux-0.15.2-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,628 Found link https://files.pythonhosted.org/packages/98/5f/631e103af53bb8768fe42efd64e58cafe603e55c0e48462a9f1488fe1c96/routilux-0.15.2.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.15.2 2026-03-04T06:59:00,628 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/22/46/7b5d0523b11bdb20d73b010fc7cba05bd51a13a68cb95e8c08e4e8b7443c/routilux-0.15.3-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,629 Found link https://files.pythonhosted.org/packages/75/26/153719a5fd7deb2ebcd2f40098f2341dac7bcef862b94e8e992ec1d245c6/routilux-0.15.3.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 0.15.3 2026-03-04T06:59:00,630 Skipping link: No binaries permitted for routilux: https://files.pythonhosted.org/packages/9b/4d/e4391dd380abc669c68653b707a7e6676d3c9dbd04c8f6e15be8a8ac263c/routilux-1.1.0-py3-none-any.whl (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,631 Found link https://files.pythonhosted.org/packages/ff/1e/3c59e4e9be4563c0b0b70a676ecdca60f064dd88043979143286780515c2/routilux-1.1.0.tar.gz (from https://pypi.org/simple/routilux/) (requires-python:<3.15,>=3.8), version: 1.1.0 2026-03-04T06:59:00,632 Fetching project page and analyzing links: https://www.piwheels.org/simple/routilux/ 2026-03-04T06:59:00,633 Getting page https://www.piwheels.org/simple/routilux/ 2026-03-04T06:59:00,634 Found index url https://www.piwheels.org/simple 2026-03-04T06:59:00,794 Fetched page https://www.piwheels.org/simple/routilux/ as text/html 2026-03-04T06:59:00,800 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.15.3-py3-none-any.whl#sha256=33c9a0edb0010f82261bf38ef01735c3231d18e34fa6ec1f301d468758c48bdd (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,800 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.15.2-py3-none-any.whl#sha256=f539e37299fecc858783a90c1c8283f236025c19fb8c95dff13ea1f56ea0abf1 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,801 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.15.1-py3-none-any.whl#sha256=33e01818b597514b22ffac98495bab0cb08449f13180f3508780678b2fc255d5 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,802 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.14.4-py3-none-any.whl#sha256=fa2daae87e75fdc40e87f8e1d57f46fecc84beefb1c23e1fad2065002b4654c9 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,802 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.14.3-py3-none-any.whl#sha256=5f20f75a50bef4183e402b1e7244cb5f802a6d43843e284620be0393c4c654bc (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,803 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.14.2-py3-none-any.whl#sha256=aa8fe0fd1bd3a53bcf93f9cfe89f65d448580c186e18db6b00b3943a733cce03 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,804 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.14.1-py3-none-any.whl#sha256=4e4688f41e457a3e23380746e468b7ac8cd697f2c7dc360a829fe6a95878e1f7 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,804 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.14.0-py3-none-any.whl#sha256=be1105bfb1724b48aba8517c0f87a9e41d897b072ebfbbb747eedcb43358f758 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,804 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.13.1-py3-none-any.whl#sha256=97b9236fb1c05c88aaa50dfbcfb0793b5fd6befef7ce00309110e873b1c4be61 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,805 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.13.0-py3-none-any.whl#sha256=2ba3460fae93e1ed1515fcf26e19d10d1308dd5d6127ab274308c325c0e6445a (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,805 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.11.1-py3-none-any.whl#sha256=71f68edd1b0bbc0b5657c2b5e5eefb4c2694248f6760dca8e2c849aac9cfffb0 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,806 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.11.0-py3-none-any.whl#sha256=b2d46b23e2496ce44c2d64333b537a6781eeaefbdfbf9b777a7e6a2b85ff13f9 (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,807 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.10.0-py3-none-any.whl#sha256=118693b3e9f4cd07a67542e8414097612334d9d4e87230b8ffa54de058c0826e (from https://www.piwheels.org/simple/routilux/) (requires-python:<3.15,>=3.8) 2026-03-04T06:59:00,807 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.9.0-py3-none-any.whl#sha256=4526fcb0e9602a54264ed5ee2ec6ede07370c38a04ad043f73ebb8f342e3419f (from https://www.piwheels.org/simple/routilux/) (requires-python:>=3.7) 2026-03-04T06:59:00,808 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.8.1-py3-none-any.whl#sha256=182b3cdfb139a9f416dfb5d326a67ef14853833feb2754e5e3cc46d5f2b73425 (from https://www.piwheels.org/simple/routilux/) (requires-python:>=3.7) 2026-03-04T06:59:00,808 Skipping link: No binaries permitted for routilux: https://archive1.piwheels.org/simple/routilux/routilux-0.8.0-py3-none-any.whl#sha256=be59a5d075526efa23f9e11c6b58b6e8568601f95e7f58807657a846ebffabcf (from https://www.piwheels.org/simple/routilux/) (requires-python:>=3.7) 2026-03-04T06:59:00,809 Skipping link: not a file: https://www.piwheels.org/simple/routilux/ 2026-03-04T06:59:00,810 Skipping link: not a file: https://pypi.org/simple/routilux/ 2026-03-04T06:59:00,830 Given no hashes to check 1 links for project 'routilux': discarding no candidates 2026-03-04T06:59:00,848 Collecting routilux==1.1.0 2026-03-04T06:59:00,851 Created temporary directory: /tmp/pip-unpack-dec83843 2026-03-04T06:59:01,068 Downloading routilux-1.1.0.tar.gz (610 kB) 2026-03-04T06:59:01,814 Added routilux==1.1.0 from https://files.pythonhosted.org/packages/ff/1e/3c59e4e9be4563c0b0b70a676ecdca60f064dd88043979143286780515c2/routilux-1.1.0.tar.gz to build tracker '/tmp/pip-build-tracker-ry5r21ai' 2026-03-04T06:59:01,821 Created temporary directory: /tmp/pip-build-env-r07z0kc8 2026-03-04T06:59:01,826 Installing build dependencies: started 2026-03-04T06:59:01,827 Running command pip subprocess to install build dependencies 2026-03-04T06:59:02,958 Using pip 23.0.1 from /usr/lib/python3/dist-packages/pip (python 3.11) 2026-03-04T06:59:03,527 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-04T06:59:03,550 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-03-04T06:59:05,298 Collecting setuptools>=61.0 2026-03-04T06:59:05,420 Using cached https://www.piwheels.org/simple/setuptools/setuptools-82.0.0-py3-none-any.whl (1.0 MB) 2026-03-04T06:59:05,684 Collecting wheel 2026-03-04T06:59:05,698 Using cached https://www.piwheels.org/simple/wheel/wheel-0.46.3-py3-none-any.whl (30 kB) 2026-03-04T06:59:05,884 Collecting packaging>=24.0 2026-03-04T06:59:05,902 Using cached https://www.piwheels.org/simple/packaging/packaging-26.0-py3-none-any.whl (74 kB) 2026-03-04T06:59:08,878 Installing collected packages: setuptools, packaging, wheel 2026-03-04T06:59:12,314 Creating /tmp/pip-build-env-r07z0kc8/overlay/local/bin 2026-03-04T06:59:12,316 changing mode of /tmp/pip-build-env-r07z0kc8/overlay/local/bin/wheel to 755 2026-03-04T06:59:12,344 Successfully installed packaging-26.0 setuptools-82.0.0 wheel-0.46.3 2026-03-04T06:59:12,637 Installing build dependencies: finished with status 'done' 2026-03-04T06:59:12,644 Getting requirements to build wheel: started 2026-03-04T06:59:12,645 Running command Getting requirements to build wheel 2026-03-04T06:59:13,348 running egg_info 2026-03-04T06:59:13,354 writing routilux.egg-info/PKG-INFO 2026-03-04T06:59:13,362 writing dependency_links to routilux.egg-info/dependency_links.txt 2026-03-04T06:59:13,364 writing entry points to routilux.egg-info/entry_points.txt 2026-03-04T06:59:13,369 writing requirements to routilux.egg-info/requires.txt 2026-03-04T06:59:13,370 writing top-level names to routilux.egg-info/top_level.txt 2026-03-04T06:59:13,426 reading manifest file 'routilux.egg-info/SOURCES.txt' 2026-03-04T06:59:13,457 reading manifest template 'MANIFEST.in' 2026-03-04T06:59:13,601 warning: no files found matching '*.conf' under directory 'docs' 2026-03-04T06:59:13,671 warning: no previously-included files matching '__pycache__' found under directory '*' 2026-03-04T06:59:13,673 warning: no previously-included files matching '*.py[co]' found under directory '*' 2026-03-04T06:59:13,675 warning: no previously-included files matching '.pytest_cache' found under directory '*' 2026-03-04T06:59:13,676 warning: no previously-included files matching '.mypy_cache' found under directory '*' 2026-03-04T06:59:13,678 warning: no previously-included files matching '*.egg-info' found under directory '*' 2026-03-04T06:59:13,680 warning: no previously-included files matching 'build' found under directory '*' 2026-03-04T06:59:13,681 warning: no previously-included files matching 'dist' found under directory '*' 2026-03-04T06:59:13,682 adding license file 'LICENSE' 2026-03-04T06:59:13,697 writing manifest file 'routilux.egg-info/SOURCES.txt' 2026-03-04T06:59:13,794 Getting requirements to build wheel: finished with status 'done' 2026-03-04T06:59:13,798 Created temporary directory: /tmp/pip-modern-metadata-k5pt56ac 2026-03-04T06:59:13,800 Preparing metadata (pyproject.toml): started 2026-03-04T06:59:13,801 Running command Preparing metadata (pyproject.toml) 2026-03-04T06:59:14,460 running dist_info 2026-03-04T06:59:14,470 creating /tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info 2026-03-04T06:59:14,471 writing /tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/PKG-INFO 2026-03-04T06:59:14,479 writing dependency_links to /tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/dependency_links.txt 2026-03-04T06:59:14,481 writing entry points to /tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/entry_points.txt 2026-03-04T06:59:14,485 writing requirements to /tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/requires.txt 2026-03-04T06:59:14,486 writing top-level names to /tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/top_level.txt 2026-03-04T06:59:14,488 writing manifest file '/tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/SOURCES.txt' 2026-03-04T06:59:14,536 reading manifest file '/tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/SOURCES.txt' 2026-03-04T06:59:14,538 reading manifest template 'MANIFEST.in' 2026-03-04T06:59:14,681 warning: no files found matching '*.conf' under directory 'docs' 2026-03-04T06:59:14,745 warning: no previously-included files matching '__pycache__' found under directory '*' 2026-03-04T06:59:14,746 warning: no previously-included files matching '*.py[co]' found under directory '*' 2026-03-04T06:59:14,747 warning: no previously-included files matching '.pytest_cache' found under directory '*' 2026-03-04T06:59:14,748 warning: no previously-included files matching '.mypy_cache' found under directory '*' 2026-03-04T06:59:14,749 warning: no previously-included files matching '*.egg-info' found under directory '*' 2026-03-04T06:59:14,750 warning: no previously-included files matching 'build' found under directory '*' 2026-03-04T06:59:14,751 warning: no previously-included files matching 'dist' found under directory '*' 2026-03-04T06:59:14,752 adding license file 'LICENSE' 2026-03-04T06:59:14,763 writing manifest file '/tmp/pip-modern-metadata-k5pt56ac/routilux.egg-info/SOURCES.txt' 2026-03-04T06:59:14,764 creating '/tmp/pip-modern-metadata-k5pt56ac/routilux-1.1.0.dist-info' 2026-03-04T06:59:14,893 Preparing metadata (pyproject.toml): finished with status 'done' 2026-03-04T06:59:14,899 Source in /tmp/pip-wheel-qv7m5ujw/routilux_444fda97c2604a46a20cd7d2e9577da1 has version 1.1.0, which satisfies requirement routilux==1.1.0 from https://files.pythonhosted.org/packages/ff/1e/3c59e4e9be4563c0b0b70a676ecdca60f064dd88043979143286780515c2/routilux-1.1.0.tar.gz 2026-03-04T06:59:14,900 Removed routilux==1.1.0 from https://files.pythonhosted.org/packages/ff/1e/3c59e4e9be4563c0b0b70a676ecdca60f064dd88043979143286780515c2/routilux-1.1.0.tar.gz from build tracker '/tmp/pip-build-tracker-ry5r21ai' 2026-03-04T06:59:14,909 Created temporary directory: /tmp/pip-unpack-iaqsd6wl 2026-03-04T06:59:14,910 Building wheels for collected packages: routilux 2026-03-04T06:59:14,915 Created temporary directory: /tmp/pip-wheel-1_idkpyf 2026-03-04T06:59:14,916 Destination directory: /tmp/pip-wheel-1_idkpyf 2026-03-04T06:59:14,918 Building wheel for routilux (pyproject.toml): started 2026-03-04T06:59:14,920 Running command Building wheel for routilux (pyproject.toml) 2026-03-04T06:59:15,562 running bdist_wheel 2026-03-04T06:59:15,580 running build 2026-03-04T06:59:15,581 running build_py 2026-03-04T06:59:15,587 creating build/lib/tools 2026-03-04T06:59:15,589 copying tools/analyze_codebase_ast.py -> build/lib/tools 2026-03-04T06:59:15,593 creating build/lib/playground 2026-03-04T06:59:15,594 copying playground/__init__.py -> build/lib/playground 2026-03-04T06:59:15,597 creating build/lib/routilux 2026-03-04T06:59:15,598 copying routilux/validators.py -> build/lib/routilux 2026-03-04T06:59:15,601 copying routilux/simple.py -> build/lib/routilux 2026-03-04T06:59:15,603 copying routilux/metrics.py -> build/lib/routilux 2026-03-04T06:59:15,606 copying routilux/__init__.py -> build/lib/routilux 2026-03-04T06:59:15,608 copying routilux/exceptions.py -> build/lib/routilux 2026-03-04T06:59:15,610 copying routilux/decorators.py -> build/lib/routilux 2026-03-04T06:59:15,613 creating build/lib/scripts 2026-03-04T06:59:15,614 copying scripts/generate_release_notes.py -> build/lib/scripts 2026-03-04T06:59:15,617 creating build/lib/playground/concurrent_execution_demo 2026-03-04T06:59:15,618 copying playground/concurrent_execution_demo/concurrent_demo.py -> build/lib/playground/concurrent_execution_demo 2026-03-04T06:59:15,621 copying playground/concurrent_execution_demo/data_generator_routines.py -> build/lib/playground/concurrent_execution_demo 2026-03-04T06:59:15,623 copying playground/concurrent_execution_demo/__init__.py -> build/lib/playground/concurrent_execution_demo 2026-03-04T06:59:15,626 creating build/lib/playground/retry_serialization_demo 2026-03-04T06:59:15,627 copying playground/retry_serialization_demo/retry_demo.py -> build/lib/playground/retry_serialization_demo 2026-03-04T06:59:15,630 copying playground/retry_serialization_demo/enhanced_retry_demo.py -> build/lib/playground/retry_serialization_demo 2026-03-04T06:59:15,633 copying playground/retry_serialization_demo/failing_routine.py -> build/lib/playground/retry_serialization_demo 2026-03-04T06:59:15,635 copying playground/retry_serialization_demo/showcase_scenarios.py -> build/lib/playground/retry_serialization_demo 2026-03-04T06:59:15,637 copying playground/retry_serialization_demo/data_processing_routines.py -> build/lib/playground/retry_serialization_demo 2026-03-04T06:59:15,640 copying playground/retry_serialization_demo/__init__.py -> build/lib/playground/retry_serialization_demo 2026-03-04T06:59:15,642 creating build/lib/playground/analyzer_demo 2026-03-04T06:59:15,643 copying playground/analyzer_demo/demo_routines.py -> build/lib/playground/analyzer_demo 2026-03-04T06:59:15,646 copying playground/analyzer_demo/__init__.py -> build/lib/playground/analyzer_demo 2026-03-04T06:59:15,648 copying playground/analyzer_demo/analyzer_demo.py -> build/lib/playground/analyzer_demo 2026-03-04T06:59:15,651 creating build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,652 copying playground/llm_agent_cross_host/mock_storage.py -> build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,654 copying playground/llm_agent_cross_host/enhanced_routine.py -> build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,657 copying playground/llm_agent_cross_host/cross_host_demo.py -> build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,659 copying playground/llm_agent_cross_host/mock_llm.py -> build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,661 copying playground/llm_agent_cross_host/logger.py -> build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,664 copying playground/llm_agent_cross_host/llm_agent_routine.py -> build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,666 copying playground/llm_agent_cross_host/__init__.py -> build/lib/playground/llm_agent_cross_host 2026-03-04T06:59:15,668 creating build/lib/playground/misconfiguration_demo 2026-03-04T06:59:15,669 copying playground/misconfiguration_demo/misconfiguration_demo.py -> build/lib/playground/misconfiguration_demo 2026-03-04T06:59:15,672 copying playground/misconfiguration_demo/__init__.py -> build/lib/playground/misconfiguration_demo 2026-03-04T06:59:15,674 creating build/lib/routilux/tools 2026-03-04T06:59:15,675 copying routilux/tools/__init__.py -> build/lib/routilux/tools 2026-03-04T06:59:15,678 creating build/lib/routilux/cli 2026-03-04T06:59:15,679 copying routilux/cli/discovery.py -> build/lib/routilux/cli 2026-03-04T06:59:15,682 copying routilux/cli/server_wrapper.py -> build/lib/routilux/cli 2026-03-04T06:59:15,684 copying routilux/cli/main.py -> build/lib/routilux/cli 2026-03-04T06:59:15,686 copying routilux/cli/config.py -> build/lib/routilux/cli 2026-03-04T06:59:15,689 copying routilux/cli/__init__.py -> build/lib/routilux/cli 2026-03-04T06:59:15,691 copying routilux/cli/decorators.py -> build/lib/routilux/cli 2026-03-04T06:59:15,694 creating build/lib/routilux/core 2026-03-04T06:59:15,695 copying routilux/core/context.py -> build/lib/routilux/core 2026-03-04T06:59:15,697 copying routilux/core/task.py -> build/lib/routilux/core 2026-03-04T06:59:15,699 copying routilux/core/flow.py -> build/lib/routilux/core 2026-03-04T06:59:15,702 copying routilux/core/connection.py -> build/lib/routilux/core 2026-03-04T06:59:15,704 copying routilux/core/migration.py -> build/lib/routilux/core 2026-03-04T06:59:15,706 copying routilux/core/slot.py -> build/lib/routilux/core 2026-03-04T06:59:15,708 copying routilux/core/runtime.py -> build/lib/routilux/core 2026-03-04T06:59:15,711 copying routilux/core/interfaces.py -> build/lib/routilux/core 2026-03-04T06:59:15,713 copying routilux/core/worker.py -> build/lib/routilux/core 2026-03-04T06:59:15,715 copying routilux/core/output.py -> build/lib/routilux/core 2026-03-04T06:59:15,718 copying routilux/core/hooks.py -> build/lib/routilux/core 2026-03-04T06:59:15,720 copying routilux/core/event.py -> build/lib/routilux/core 2026-03-04T06:59:15,722 copying routilux/core/registry.py -> build/lib/routilux/core 2026-03-04T06:59:15,725 copying routilux/core/__init__.py -> build/lib/routilux/core 2026-03-04T06:59:15,727 copying routilux/core/status.py -> build/lib/routilux/core 2026-03-04T06:59:15,729 copying routilux/core/routine.py -> build/lib/routilux/core 2026-03-04T06:59:15,732 copying routilux/core/manager.py -> build/lib/routilux/core 2026-03-04T06:59:15,734 copying routilux/core/executor.py -> build/lib/routilux/core 2026-03-04T06:59:15,737 copying routilux/core/error.py -> build/lib/routilux/core 2026-03-04T06:59:15,739 creating build/lib/routilux/analysis 2026-03-04T06:59:15,740 copying routilux/analysis/__init__.py -> build/lib/routilux/analysis 2026-03-04T06:59:15,743 creating build/lib/routilux/builtin_routines 2026-03-04T06:59:15,744 copying routilux/builtin_routines/__init__.py -> build/lib/routilux/builtin_routines 2026-03-04T06:59:15,746 creating build/lib/routilux/server 2026-03-04T06:59:15,747 copying routilux/server/audit.py -> build/lib/routilux/server 2026-03-04T06:59:15,750 copying routilux/server/validators.py -> build/lib/routilux/server 2026-03-04T06:59:15,752 copying routilux/server/main.py -> build/lib/routilux/server 2026-03-04T06:59:15,754 copying routilux/server/config.py -> build/lib/routilux/server 2026-03-04T06:59:15,756 copying routilux/server/errors.py -> build/lib/routilux/server 2026-03-04T06:59:15,758 copying routilux/server/__init__.py -> build/lib/routilux/server 2026-03-04T06:59:15,760 copying routilux/server/security.py -> build/lib/routilux/server 2026-03-04T06:59:15,763 copying routilux/server/dependencies.py -> build/lib/routilux/server 2026-03-04T06:59:15,765 creating build/lib/routilux/monitoring 2026-03-04T06:59:15,766 copying routilux/monitoring/breakpoint_manager.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,769 copying routilux/monitoring/execution_hooks.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,772 copying routilux/monitoring/monitor_collector.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,774 copying routilux/monitoring/websocket_manager.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,777 copying routilux/monitoring/breakpoint_condition.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,779 copying routilux/monitoring/runtime_registry.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,782 copying routilux/monitoring/storage.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,784 copying routilux/monitoring/registry.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,786 copying routilux/monitoring/__init__.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,788 copying routilux/monitoring/event_manager.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,791 copying routilux/monitoring/debug_session.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,793 copying routilux/monitoring/monitor_service.py -> build/lib/routilux/monitoring 2026-03-04T06:59:15,796 creating build/lib/routilux/tools/dsl 2026-03-04T06:59:15,797 copying routilux/tools/dsl/__init__.py -> build/lib/routilux/tools/dsl 2026-03-04T06:59:15,799 copying routilux/tools/dsl/spec_parser.py -> build/lib/routilux/tools/dsl 2026-03-04T06:59:15,801 copying routilux/tools/dsl/loader.py -> build/lib/routilux/tools/dsl 2026-03-04T06:59:15,804 creating build/lib/routilux/tools/factory 2026-03-04T06:59:15,805 copying routilux/tools/factory/metadata.py -> build/lib/routilux/tools/factory 2026-03-04T06:59:15,807 copying routilux/tools/factory/factory.py -> build/lib/routilux/tools/factory 2026-03-04T06:59:15,809 copying routilux/tools/factory/cloning.py -> build/lib/routilux/tools/factory 2026-03-04T06:59:15,811 copying routilux/tools/factory/__init__.py -> build/lib/routilux/tools/factory 2026-03-04T06:59:15,814 creating build/lib/routilux/tools/testing 2026-03-04T06:59:15,815 copying routilux/tools/testing/__init__.py -> build/lib/routilux/tools/testing 2026-03-04T06:59:15,817 copying routilux/tools/testing/routine_tester.py -> build/lib/routilux/tools/testing 2026-03-04T06:59:15,819 creating build/lib/routilux/tools/analysis 2026-03-04T06:59:15,820 copying routilux/tools/analysis/__init__.py -> build/lib/routilux/tools/analysis 2026-03-04T06:59:15,823 creating build/lib/routilux/tools/analysis/analyzers 2026-03-04T06:59:15,824 copying routilux/tools/analysis/analyzers/__init__.py -> build/lib/routilux/tools/analysis/analyzers 2026-03-04T06:59:15,826 copying routilux/tools/analysis/analyzers/routine.py -> build/lib/routilux/tools/analysis/analyzers 2026-03-04T06:59:15,829 copying routilux/tools/analysis/analyzers/workflow.py -> build/lib/routilux/tools/analysis/analyzers 2026-03-04T06:59:15,832 creating build/lib/routilux/tools/analysis/exporters 2026-03-04T06:59:15,833 copying routilux/tools/analysis/exporters/workflow_d2.py -> build/lib/routilux/tools/analysis/exporters 2026-03-04T06:59:15,836 copying routilux/tools/analysis/exporters/routine_markdown.py -> build/lib/routilux/tools/analysis/exporters 2026-03-04T06:59:15,838 copying routilux/tools/analysis/exporters/base.py -> build/lib/routilux/tools/analysis/exporters 2026-03-04T06:59:15,840 copying routilux/tools/analysis/exporters/__init__.py -> build/lib/routilux/tools/analysis/exporters 2026-03-04T06:59:15,843 creating build/lib/routilux/cli/commands 2026-03-04T06:59:15,844 copying routilux/cli/commands/run.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,846 copying routilux/cli/commands/job.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,848 copying routilux/cli/commands/validate.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,851 copying routilux/cli/commands/completion.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,854 copying routilux/cli/commands/init.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,856 copying routilux/cli/commands/__init__.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,858 copying routilux/cli/commands/server.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,860 copying routilux/cli/commands/list.py -> build/lib/routilux/cli/commands 2026-03-04T06:59:15,863 creating build/lib/routilux/analysis/analyzers 2026-03-04T06:59:15,864 copying routilux/analysis/analyzers/__init__.py -> build/lib/routilux/analysis/analyzers 2026-03-04T06:59:15,866 copying routilux/analysis/analyzers/routine.py -> build/lib/routilux/analysis/analyzers 2026-03-04T06:59:15,869 copying routilux/analysis/analyzers/workflow.py -> build/lib/routilux/analysis/analyzers 2026-03-04T06:59:15,872 creating build/lib/routilux/analysis/exporters 2026-03-04T06:59:15,873 copying routilux/analysis/exporters/workflow_d2.py -> build/lib/routilux/analysis/exporters 2026-03-04T06:59:15,876 copying routilux/analysis/exporters/routine_markdown.py -> build/lib/routilux/analysis/exporters 2026-03-04T06:59:15,878 copying routilux/analysis/exporters/base.py -> build/lib/routilux/analysis/exporters 2026-03-04T06:59:15,880 copying routilux/analysis/exporters/__init__.py -> build/lib/routilux/analysis/exporters 2026-03-04T06:59:15,883 creating build/lib/routilux/builtin_routines/utils 2026-03-04T06:59:15,883 copying routilux/builtin_routines/utils/__init__.py -> build/lib/routilux/builtin_routines/utils 2026-03-04T06:59:15,886 creating build/lib/routilux/builtin_routines/reliability 2026-03-04T06:59:15,887 copying routilux/builtin_routines/reliability/__init__.py -> build/lib/routilux/builtin_routines/reliability 2026-03-04T06:59:15,889 copying routilux/builtin_routines/reliability/retry_handler.py -> build/lib/routilux/builtin_routines/reliability 2026-03-04T06:59:15,892 creating build/lib/routilux/builtin_routines/control_flow 2026-03-04T06:59:15,893 copying routilux/builtin_routines/control_flow/debouncer.py -> build/lib/routilux/builtin_routines/control_flow 2026-03-04T06:59:15,895 copying routilux/builtin_routines/control_flow/batcher.py -> build/lib/routilux/builtin_routines/control_flow 2026-03-04T06:59:15,897 copying routilux/builtin_routines/control_flow/aggregator.py -> build/lib/routilux/builtin_routines/control_flow 2026-03-04T06:59:15,900 copying routilux/builtin_routines/control_flow/__init__.py -> build/lib/routilux/builtin_routines/control_flow 2026-03-04T06:59:15,902 copying routilux/builtin_routines/control_flow/conditional_router.py -> build/lib/routilux/builtin_routines/control_flow 2026-03-04T06:59:15,905 copying routilux/builtin_routines/control_flow/splitter.py -> build/lib/routilux/builtin_routines/control_flow 2026-03-04T06:59:15,907 creating build/lib/routilux/builtin_routines/data_processing 2026-03-04T06:59:15,909 copying routilux/builtin_routines/data_processing/mapper.py -> build/lib/routilux/builtin_routines/data_processing 2026-03-04T06:59:15,911 copying routilux/builtin_routines/data_processing/data_transformer.py -> build/lib/routilux/builtin_routines/data_processing 2026-03-04T06:59:15,913 copying routilux/builtin_routines/data_processing/__init__.py -> build/lib/routilux/builtin_routines/data_processing 2026-03-04T06:59:15,915 copying routilux/builtin_routines/data_processing/filter.py -> build/lib/routilux/builtin_routines/data_processing 2026-03-04T06:59:15,918 copying routilux/builtin_routines/data_processing/schema_validator.py -> build/lib/routilux/builtin_routines/data_processing 2026-03-04T06:59:15,920 copying routilux/builtin_routines/data_processing/data_validator.py -> build/lib/routilux/builtin_routines/data_processing 2026-03-04T06:59:15,923 creating build/lib/routilux/builtin_routines/text_processing 2026-03-04T06:59:15,924 copying routilux/builtin_routines/text_processing/__init__.py -> build/lib/routilux/builtin_routines/text_processing 2026-03-04T06:59:15,927 copying routilux/builtin_routines/text_processing/result_extractor.py -> build/lib/routilux/builtin_routines/text_processing 2026-03-04T06:59:15,930 creating build/lib/routilux/server/middleware 2026-03-04T06:59:15,931 copying routilux/server/middleware/rate_limit.py -> build/lib/routilux/server/middleware 2026-03-04T06:59:15,933 copying routilux/server/middleware/auth.py -> build/lib/routilux/server/middleware 2026-03-04T06:59:15,935 copying routilux/server/middleware/error_handler.py -> build/lib/routilux/server/middleware 2026-03-04T06:59:15,938 creating build/lib/routilux/server/storage 2026-03-04T06:59:15,939 copying routilux/server/storage/base.py -> build/lib/routilux/server/storage 2026-03-04T06:59:15,941 copying routilux/server/storage/memory.py -> build/lib/routilux/server/storage 2026-03-04T06:59:15,943 copying routilux/server/storage/__init__.py -> build/lib/routilux/server/storage 2026-03-04T06:59:15,946 creating build/lib/routilux/server/models 2026-03-04T06:59:15,947 copying routilux/server/models/flow.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,950 copying routilux/server/models/runtime.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,952 copying routilux/server/models/execute.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,954 copying routilux/server/models/worker.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,956 copying routilux/server/models/job.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,959 copying routilux/server/models/__init__.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,961 copying routilux/server/models/object.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,963 copying routilux/server/models/monitor.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,966 copying routilux/server/models/debug.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,968 copying routilux/server/models/error.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,970 copying routilux/server/models/breakpoint.py -> build/lib/routilux/server/models 2026-03-04T06:59:15,972 creating build/lib/routilux/server/routes 2026-03-04T06:59:15,973 copying routilux/server/routes/discovery.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,976 copying routilux/server/routes/runtimes.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,979 copying routilux/server/routes/health.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,981 copying routilux/server/routes/execute.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,983 copying routilux/server/routes/jobs.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,987 copying routilux/server/routes/__init__.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,989 copying routilux/server/routes/objects.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,991 copying routilux/server/routes/workers.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,995 copying routilux/server/routes/breakpoints.py -> build/lib/routilux/server/routes 2026-03-04T06:59:15,998 copying routilux/server/routes/websocket.py -> build/lib/routilux/server/routes 2026-03-04T06:59:16,001 copying routilux/server/routes/flows.py -> build/lib/routilux/server/routes 2026-03-04T06:59:16,004 running egg_info 2026-03-04T06:59:16,014 writing routilux.egg-info/PKG-INFO 2026-03-04T06:59:16,022 writing dependency_links to routilux.egg-info/dependency_links.txt 2026-03-04T06:59:16,024 writing entry points to routilux.egg-info/entry_points.txt 2026-03-04T06:59:16,028 writing requirements to routilux.egg-info/requires.txt 2026-03-04T06:59:16,029 writing top-level names to routilux.egg-info/top_level.txt 2026-03-04T06:59:16,068 reading manifest file 'routilux.egg-info/SOURCES.txt' 2026-03-04T06:59:16,084 reading manifest template 'MANIFEST.in' 2026-03-04T06:59:16,233 warning: no files found matching '*.conf' under directory 'docs' 2026-03-04T06:59:16,305 warning: no previously-included files matching '__pycache__' found under directory '*' 2026-03-04T06:59:16,307 warning: no previously-included files matching '*.py[co]' found under directory '*' 2026-03-04T06:59:16,308 warning: no previously-included files matching '.pytest_cache' found under directory '*' 2026-03-04T06:59:16,310 warning: no previously-included files matching '.mypy_cache' found under directory '*' 2026-03-04T06:59:16,311 warning: no previously-included files matching '*.egg-info' found under directory '*' 2026-03-04T06:59:16,313 warning: no previously-included files matching 'build' found under directory '*' 2026-03-04T06:59:16,314 warning: no previously-included files matching 'dist' found under directory '*' 2026-03-04T06:59:16,315 adding license file 'LICENSE' 2026-03-04T06:59:16,328 writing manifest file 'routilux.egg-info/SOURCES.txt' 2026-03-04T06:59:16,372 installing to build/bdist.linux-armv7l/wheel 2026-03-04T06:59:16,372 running install 2026-03-04T06:59:16,396 running install_lib 2026-03-04T06:59:16,401 creating build/bdist.linux-armv7l/wheel 2026-03-04T06:59:16,404 creating build/bdist.linux-armv7l/wheel/tools 2026-03-04T06:59:16,405 copying build/lib/tools/analyze_codebase_ast.py -> build/bdist.linux-armv7l/wheel/./tools 2026-03-04T06:59:16,408 creating build/bdist.linux-armv7l/wheel/playground 2026-03-04T06:59:16,410 creating build/bdist.linux-armv7l/wheel/playground/concurrent_execution_demo 2026-03-04T06:59:16,411 copying build/lib/playground/concurrent_execution_demo/concurrent_demo.py -> build/bdist.linux-armv7l/wheel/./playground/concurrent_execution_demo 2026-03-04T06:59:16,414 copying build/lib/playground/concurrent_execution_demo/data_generator_routines.py -> build/bdist.linux-armv7l/wheel/./playground/concurrent_execution_demo 2026-03-04T06:59:16,416 copying build/lib/playground/concurrent_execution_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/concurrent_execution_demo 2026-03-04T06:59:16,419 creating build/bdist.linux-armv7l/wheel/playground/retry_serialization_demo 2026-03-04T06:59:16,420 copying build/lib/playground/retry_serialization_demo/retry_demo.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-03-04T06:59:16,422 copying build/lib/playground/retry_serialization_demo/enhanced_retry_demo.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-03-04T06:59:16,425 copying build/lib/playground/retry_serialization_demo/failing_routine.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-03-04T06:59:16,428 copying build/lib/playground/retry_serialization_demo/showcase_scenarios.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-03-04T06:59:16,430 copying build/lib/playground/retry_serialization_demo/data_processing_routines.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-03-04T06:59:16,433 copying build/lib/playground/retry_serialization_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-03-04T06:59:16,435 creating build/bdist.linux-armv7l/wheel/playground/analyzer_demo 2026-03-04T06:59:16,436 copying build/lib/playground/analyzer_demo/demo_routines.py -> build/bdist.linux-armv7l/wheel/./playground/analyzer_demo 2026-03-04T06:59:16,439 copying build/lib/playground/analyzer_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/analyzer_demo 2026-03-04T06:59:16,441 copying build/lib/playground/analyzer_demo/analyzer_demo.py -> build/bdist.linux-armv7l/wheel/./playground/analyzer_demo 2026-03-04T06:59:16,444 creating build/bdist.linux-armv7l/wheel/playground/llm_agent_cross_host 2026-03-04T06:59:16,445 copying build/lib/playground/llm_agent_cross_host/mock_storage.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-03-04T06:59:16,447 copying build/lib/playground/llm_agent_cross_host/enhanced_routine.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-03-04T06:59:16,450 copying build/lib/playground/llm_agent_cross_host/cross_host_demo.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-03-04T06:59:16,452 copying build/lib/playground/llm_agent_cross_host/mock_llm.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-03-04T06:59:16,455 copying build/lib/playground/llm_agent_cross_host/logger.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-03-04T06:59:16,457 copying build/lib/playground/llm_agent_cross_host/llm_agent_routine.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-03-04T06:59:16,460 copying build/lib/playground/llm_agent_cross_host/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-03-04T06:59:16,462 copying build/lib/playground/__init__.py -> build/bdist.linux-armv7l/wheel/./playground 2026-03-04T06:59:16,464 creating build/bdist.linux-armv7l/wheel/playground/misconfiguration_demo 2026-03-04T06:59:16,465 copying build/lib/playground/misconfiguration_demo/misconfiguration_demo.py -> build/bdist.linux-armv7l/wheel/./playground/misconfiguration_demo 2026-03-04T06:59:16,468 copying build/lib/playground/misconfiguration_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/misconfiguration_demo 2026-03-04T06:59:16,471 creating build/bdist.linux-armv7l/wheel/routilux 2026-03-04T06:59:16,472 creating build/bdist.linux-armv7l/wheel/routilux/tools 2026-03-04T06:59:16,474 creating build/bdist.linux-armv7l/wheel/routilux/tools/dsl 2026-03-04T06:59:16,475 copying build/lib/routilux/tools/dsl/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/dsl 2026-03-04T06:59:16,477 copying build/lib/routilux/tools/dsl/spec_parser.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/dsl 2026-03-04T06:59:16,480 copying build/lib/routilux/tools/dsl/loader.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/dsl 2026-03-04T06:59:16,483 creating build/bdist.linux-armv7l/wheel/routilux/tools/factory 2026-03-04T06:59:16,485 copying build/lib/routilux/tools/factory/metadata.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-03-04T06:59:16,488 copying build/lib/routilux/tools/factory/factory.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-03-04T06:59:16,491 copying build/lib/routilux/tools/factory/cloning.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-03-04T06:59:16,493 copying build/lib/routilux/tools/factory/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-03-04T06:59:16,495 creating build/bdist.linux-armv7l/wheel/routilux/tools/testing 2026-03-04T06:59:16,496 copying build/lib/routilux/tools/testing/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/testing 2026-03-04T06:59:16,498 copying build/lib/routilux/tools/testing/routine_tester.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/testing 2026-03-04T06:59:16,501 copying build/lib/routilux/tools/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools 2026-03-04T06:59:16,503 creating build/bdist.linux-armv7l/wheel/routilux/tools/analysis 2026-03-04T06:59:16,505 creating build/bdist.linux-armv7l/wheel/routilux/tools/analysis/analyzers 2026-03-04T06:59:16,507 copying build/lib/routilux/tools/analysis/analyzers/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/analyzers 2026-03-04T06:59:16,509 copying build/lib/routilux/tools/analysis/analyzers/routine.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/analyzers 2026-03-04T06:59:16,512 copying build/lib/routilux/tools/analysis/analyzers/workflow.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/analyzers 2026-03-04T06:59:16,515 copying build/lib/routilux/tools/analysis/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis 2026-03-04T06:59:16,518 creating build/bdist.linux-armv7l/wheel/routilux/tools/analysis/exporters 2026-03-04T06:59:16,519 copying build/lib/routilux/tools/analysis/exporters/workflow_d2.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-03-04T06:59:16,522 copying build/lib/routilux/tools/analysis/exporters/routine_markdown.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-03-04T06:59:16,524 copying build/lib/routilux/tools/analysis/exporters/base.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-03-04T06:59:16,526 copying build/lib/routilux/tools/analysis/exporters/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-03-04T06:59:16,529 creating build/bdist.linux-armv7l/wheel/routilux/cli 2026-03-04T06:59:16,530 copying build/lib/routilux/cli/discovery.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-03-04T06:59:16,533 copying build/lib/routilux/cli/server_wrapper.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-03-04T06:59:16,536 copying build/lib/routilux/cli/main.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-03-04T06:59:16,538 copying build/lib/routilux/cli/config.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-03-04T06:59:16,540 copying build/lib/routilux/cli/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-03-04T06:59:16,543 creating build/bdist.linux-armv7l/wheel/routilux/cli/commands 2026-03-04T06:59:16,544 copying build/lib/routilux/cli/commands/run.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,546 copying build/lib/routilux/cli/commands/job.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,549 copying build/lib/routilux/cli/commands/validate.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,551 copying build/lib/routilux/cli/commands/completion.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,553 copying build/lib/routilux/cli/commands/init.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,556 copying build/lib/routilux/cli/commands/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,557 copying build/lib/routilux/cli/commands/server.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,560 copying build/lib/routilux/cli/commands/list.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-03-04T06:59:16,562 copying build/lib/routilux/cli/decorators.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-03-04T06:59:16,564 copying build/lib/routilux/validators.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-03-04T06:59:16,567 copying build/lib/routilux/simple.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-03-04T06:59:16,569 copying build/lib/routilux/metrics.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-03-04T06:59:16,571 copying build/lib/routilux/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-03-04T06:59:16,574 creating build/bdist.linux-armv7l/wheel/routilux/core 2026-03-04T06:59:16,575 copying build/lib/routilux/core/context.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,578 copying build/lib/routilux/core/task.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,580 copying build/lib/routilux/core/flow.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,583 copying build/lib/routilux/core/connection.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,585 copying build/lib/routilux/core/migration.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,588 copying build/lib/routilux/core/slot.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,590 copying build/lib/routilux/core/runtime.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,593 copying build/lib/routilux/core/interfaces.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,595 copying build/lib/routilux/core/worker.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,598 copying build/lib/routilux/core/output.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,600 copying build/lib/routilux/core/hooks.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,603 copying build/lib/routilux/core/event.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,605 copying build/lib/routilux/core/registry.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,608 copying build/lib/routilux/core/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,610 copying build/lib/routilux/core/status.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,612 copying build/lib/routilux/core/routine.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,614 copying build/lib/routilux/core/manager.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,617 copying build/lib/routilux/core/executor.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,620 copying build/lib/routilux/core/error.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-03-04T06:59:16,622 creating build/bdist.linux-armv7l/wheel/routilux/analysis 2026-03-04T06:59:16,624 creating build/bdist.linux-armv7l/wheel/routilux/analysis/analyzers 2026-03-04T06:59:16,625 copying build/lib/routilux/analysis/analyzers/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/analyzers 2026-03-04T06:59:16,627 copying build/lib/routilux/analysis/analyzers/routine.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/analyzers 2026-03-04T06:59:16,630 copying build/lib/routilux/analysis/analyzers/workflow.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/analyzers 2026-03-04T06:59:16,633 copying build/lib/routilux/analysis/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis 2026-03-04T06:59:16,635 creating build/bdist.linux-armv7l/wheel/routilux/analysis/exporters 2026-03-04T06:59:16,636 copying build/lib/routilux/analysis/exporters/workflow_d2.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-03-04T06:59:16,638 copying build/lib/routilux/analysis/exporters/routine_markdown.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-03-04T06:59:16,641 copying build/lib/routilux/analysis/exporters/base.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-03-04T06:59:16,643 copying build/lib/routilux/analysis/exporters/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-03-04T06:59:16,645 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines 2026-03-04T06:59:16,647 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/utils 2026-03-04T06:59:16,648 copying build/lib/routilux/builtin_routines/utils/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/utils 2026-03-04T06:59:16,650 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/reliability 2026-03-04T06:59:16,651 copying build/lib/routilux/builtin_routines/reliability/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/reliability 2026-03-04T06:59:16,653 copying build/lib/routilux/builtin_routines/reliability/retry_handler.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/reliability 2026-03-04T06:59:16,657 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/control_flow 2026-03-04T06:59:16,658 copying build/lib/routilux/builtin_routines/control_flow/debouncer.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-03-04T06:59:16,660 copying build/lib/routilux/builtin_routines/control_flow/batcher.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-03-04T06:59:16,662 copying build/lib/routilux/builtin_routines/control_flow/aggregator.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-03-04T06:59:16,665 copying build/lib/routilux/builtin_routines/control_flow/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-03-04T06:59:16,667 copying build/lib/routilux/builtin_routines/control_flow/conditional_router.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-03-04T06:59:16,669 copying build/lib/routilux/builtin_routines/control_flow/splitter.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-03-04T06:59:16,672 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/data_processing 2026-03-04T06:59:16,673 copying build/lib/routilux/builtin_routines/data_processing/mapper.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-03-04T06:59:16,676 copying build/lib/routilux/builtin_routines/data_processing/data_transformer.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-03-04T06:59:16,678 copying build/lib/routilux/builtin_routines/data_processing/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-03-04T06:59:16,680 copying build/lib/routilux/builtin_routines/data_processing/filter.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-03-04T06:59:16,683 copying build/lib/routilux/builtin_routines/data_processing/schema_validator.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-03-04T06:59:16,685 copying build/lib/routilux/builtin_routines/data_processing/data_validator.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-03-04T06:59:16,687 copying build/lib/routilux/builtin_routines/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines 2026-03-04T06:59:16,690 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/text_processing 2026-03-04T06:59:16,691 copying build/lib/routilux/builtin_routines/text_processing/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/text_processing 2026-03-04T06:59:16,693 copying build/lib/routilux/builtin_routines/text_processing/result_extractor.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/text_processing 2026-03-04T06:59:16,695 copying build/lib/routilux/exceptions.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-03-04T06:59:16,697 copying build/lib/routilux/decorators.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-03-04T06:59:16,700 creating build/bdist.linux-armv7l/wheel/routilux/server 2026-03-04T06:59:16,701 copying build/lib/routilux/server/audit.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,704 creating build/bdist.linux-armv7l/wheel/routilux/server/middleware 2026-03-04T06:59:16,705 copying build/lib/routilux/server/middleware/rate_limit.py -> build/bdist.linux-armv7l/wheel/./routilux/server/middleware 2026-03-04T06:59:16,707 copying build/lib/routilux/server/middleware/auth.py -> build/bdist.linux-armv7l/wheel/./routilux/server/middleware 2026-03-04T06:59:16,709 copying build/lib/routilux/server/middleware/error_handler.py -> build/bdist.linux-armv7l/wheel/./routilux/server/middleware 2026-03-04T06:59:16,711 copying build/lib/routilux/server/validators.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,715 creating build/bdist.linux-armv7l/wheel/routilux/server/storage 2026-03-04T06:59:16,716 copying build/lib/routilux/server/storage/base.py -> build/bdist.linux-armv7l/wheel/./routilux/server/storage 2026-03-04T06:59:16,718 copying build/lib/routilux/server/storage/memory.py -> build/bdist.linux-armv7l/wheel/./routilux/server/storage 2026-03-04T06:59:16,720 copying build/lib/routilux/server/storage/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server/storage 2026-03-04T06:59:16,722 copying build/lib/routilux/server/main.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,725 copying build/lib/routilux/server/config.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,728 creating build/bdist.linux-armv7l/wheel/routilux/server/models 2026-03-04T06:59:16,729 copying build/lib/routilux/server/models/flow.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,731 copying build/lib/routilux/server/models/runtime.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,734 copying build/lib/routilux/server/models/execute.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,736 copying build/lib/routilux/server/models/worker.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,738 copying build/lib/routilux/server/models/job.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,740 copying build/lib/routilux/server/models/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,742 copying build/lib/routilux/server/models/object.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,745 copying build/lib/routilux/server/models/monitor.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,747 copying build/lib/routilux/server/models/debug.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,749 copying build/lib/routilux/server/models/error.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,751 copying build/lib/routilux/server/models/breakpoint.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-03-04T06:59:16,753 copying build/lib/routilux/server/errors.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,755 creating build/bdist.linux-armv7l/wheel/routilux/server/routes 2026-03-04T06:59:16,756 copying build/lib/routilux/server/routes/discovery.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,759 copying build/lib/routilux/server/routes/runtimes.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,761 copying build/lib/routilux/server/routes/health.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,763 copying build/lib/routilux/server/routes/execute.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,766 copying build/lib/routilux/server/routes/jobs.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,769 copying build/lib/routilux/server/routes/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,771 copying build/lib/routilux/server/routes/objects.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,774 copying build/lib/routilux/server/routes/workers.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,777 copying build/lib/routilux/server/routes/breakpoints.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,780 copying build/lib/routilux/server/routes/websocket.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,783 copying build/lib/routilux/server/routes/flows.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-03-04T06:59:16,787 copying build/lib/routilux/server/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,788 copying build/lib/routilux/server/security.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,791 copying build/lib/routilux/server/dependencies.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-03-04T06:59:16,794 creating build/bdist.linux-armv7l/wheel/routilux/monitoring 2026-03-04T06:59:16,795 copying build/lib/routilux/monitoring/breakpoint_manager.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,797 copying build/lib/routilux/monitoring/execution_hooks.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,800 copying build/lib/routilux/monitoring/monitor_collector.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,803 copying build/lib/routilux/monitoring/websocket_manager.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,805 copying build/lib/routilux/monitoring/breakpoint_condition.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,808 copying build/lib/routilux/monitoring/runtime_registry.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,810 copying build/lib/routilux/monitoring/storage.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,812 copying build/lib/routilux/monitoring/registry.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,815 copying build/lib/routilux/monitoring/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,817 copying build/lib/routilux/monitoring/event_manager.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,819 copying build/lib/routilux/monitoring/debug_session.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,822 copying build/lib/routilux/monitoring/monitor_service.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-03-04T06:59:16,825 creating build/bdist.linux-armv7l/wheel/scripts 2026-03-04T06:59:16,827 copying build/lib/scripts/generate_release_notes.py -> build/bdist.linux-armv7l/wheel/./scripts 2026-03-04T06:59:16,829 running install_egg_info 2026-03-04T06:59:16,834 Copying routilux.egg-info to build/bdist.linux-armv7l/wheel/./routilux-1.1.0-py3.11.egg-info 2026-03-04T06:59:16,848 running install_scripts 2026-03-04T06:59:16,862 creating build/bdist.linux-armv7l/wheel/routilux-1.1.0.dist-info/WHEEL 2026-03-04T06:59:16,865 creating '/tmp/pip-wheel-1_idkpyf/.tmp-o3m4sgih/routilux-1.1.0-py3-none-any.whl' and adding 'build/bdist.linux-armv7l/wheel' to it 2026-03-04T06:59:16,867 adding 'playground/__init__.py' 2026-03-04T06:59:16,869 adding 'playground/analyzer_demo/__init__.py' 2026-03-04T06:59:16,871 adding 'playground/analyzer_demo/analyzer_demo.py' 2026-03-04T06:59:16,873 adding 'playground/analyzer_demo/demo_routines.py' 2026-03-04T06:59:16,875 adding 'playground/concurrent_execution_demo/__init__.py' 2026-03-04T06:59:16,878 adding 'playground/concurrent_execution_demo/concurrent_demo.py' 2026-03-04T06:59:16,880 adding 'playground/concurrent_execution_demo/data_generator_routines.py' 2026-03-04T06:59:16,882 adding 'playground/llm_agent_cross_host/__init__.py' 2026-03-04T06:59:16,884 adding 'playground/llm_agent_cross_host/cross_host_demo.py' 2026-03-04T06:59:16,886 adding 'playground/llm_agent_cross_host/enhanced_routine.py' 2026-03-04T06:59:16,888 adding 'playground/llm_agent_cross_host/llm_agent_routine.py' 2026-03-04T06:59:16,889 adding 'playground/llm_agent_cross_host/logger.py' 2026-03-04T06:59:16,891 adding 'playground/llm_agent_cross_host/mock_llm.py' 2026-03-04T06:59:16,892 adding 'playground/llm_agent_cross_host/mock_storage.py' 2026-03-04T06:59:16,894 adding 'playground/misconfiguration_demo/__init__.py' 2026-03-04T06:59:16,897 adding 'playground/misconfiguration_demo/misconfiguration_demo.py' 2026-03-04T06:59:16,898 adding 'playground/retry_serialization_demo/__init__.py' 2026-03-04T06:59:16,900 adding 'playground/retry_serialization_demo/data_processing_routines.py' 2026-03-04T06:59:16,904 adding 'playground/retry_serialization_demo/enhanced_retry_demo.py' 2026-03-04T06:59:16,906 adding 'playground/retry_serialization_demo/failing_routine.py' 2026-03-04T06:59:16,908 adding 'playground/retry_serialization_demo/retry_demo.py' 2026-03-04T06:59:16,910 adding 'playground/retry_serialization_demo/showcase_scenarios.py' 2026-03-04T06:59:16,912 adding 'routilux/__init__.py' 2026-03-04T06:59:16,914 adding 'routilux/decorators.py' 2026-03-04T06:59:16,915 adding 'routilux/exceptions.py' 2026-03-04T06:59:16,917 adding 'routilux/metrics.py' 2026-03-04T06:59:16,919 adding 'routilux/simple.py' 2026-03-04T06:59:16,921 adding 'routilux/validators.py' 2026-03-04T06:59:16,923 adding 'routilux/analysis/__init__.py' 2026-03-04T06:59:16,924 adding 'routilux/analysis/analyzers/__init__.py' 2026-03-04T06:59:16,926 adding 'routilux/analysis/analyzers/routine.py' 2026-03-04T06:59:16,930 adding 'routilux/analysis/analyzers/workflow.py' 2026-03-04T06:59:16,932 adding 'routilux/analysis/exporters/__init__.py' 2026-03-04T06:59:16,934 adding 'routilux/analysis/exporters/base.py' 2026-03-04T06:59:16,935 adding 'routilux/analysis/exporters/routine_markdown.py' 2026-03-04T06:59:16,937 adding 'routilux/analysis/exporters/workflow_d2.py' 2026-03-04T06:59:16,939 adding 'routilux/builtin_routines/__init__.py' 2026-03-04T06:59:16,941 adding 'routilux/builtin_routines/control_flow/__init__.py' 2026-03-04T06:59:16,943 adding 'routilux/builtin_routines/control_flow/aggregator.py' 2026-03-04T06:59:16,944 adding 'routilux/builtin_routines/control_flow/batcher.py' 2026-03-04T06:59:16,947 adding 'routilux/builtin_routines/control_flow/conditional_router.py' 2026-03-04T06:59:16,948 adding 'routilux/builtin_routines/control_flow/debouncer.py' 2026-03-04T06:59:16,950 adding 'routilux/builtin_routines/control_flow/splitter.py' 2026-03-04T06:59:16,952 adding 'routilux/builtin_routines/data_processing/__init__.py' 2026-03-04T06:59:16,953 adding 'routilux/builtin_routines/data_processing/data_transformer.py' 2026-03-04T06:59:16,955 adding 'routilux/builtin_routines/data_processing/data_validator.py' 2026-03-04T06:59:16,957 adding 'routilux/builtin_routines/data_processing/filter.py' 2026-03-04T06:59:16,959 adding 'routilux/builtin_routines/data_processing/mapper.py' 2026-03-04T06:59:16,961 adding 'routilux/builtin_routines/data_processing/schema_validator.py' 2026-03-04T06:59:16,962 adding 'routilux/builtin_routines/reliability/__init__.py' 2026-03-04T06:59:16,964 adding 'routilux/builtin_routines/reliability/retry_handler.py' 2026-03-04T06:59:16,966 adding 'routilux/builtin_routines/text_processing/__init__.py' 2026-03-04T06:59:16,969 adding 'routilux/builtin_routines/text_processing/result_extractor.py' 2026-03-04T06:59:16,970 adding 'routilux/builtin_routines/utils/__init__.py' 2026-03-04T06:59:16,972 adding 'routilux/cli/__init__.py' 2026-03-04T06:59:16,973 adding 'routilux/cli/config.py' 2026-03-04T06:59:16,975 adding 'routilux/cli/decorators.py' 2026-03-04T06:59:16,976 adding 'routilux/cli/discovery.py' 2026-03-04T06:59:16,978 adding 'routilux/cli/main.py' 2026-03-04T06:59:16,980 adding 'routilux/cli/server_wrapper.py' 2026-03-04T06:59:16,981 adding 'routilux/cli/commands/__init__.py' 2026-03-04T06:59:16,983 adding 'routilux/cli/commands/completion.py' 2026-03-04T06:59:16,985 adding 'routilux/cli/commands/init.py' 2026-03-04T06:59:16,986 adding 'routilux/cli/commands/job.py' 2026-03-04T06:59:16,988 adding 'routilux/cli/commands/list.py' 2026-03-04T06:59:16,990 adding 'routilux/cli/commands/run.py' 2026-03-04T06:59:16,992 adding 'routilux/cli/commands/server.py' 2026-03-04T06:59:16,993 adding 'routilux/cli/commands/validate.py' 2026-03-04T06:59:16,995 adding 'routilux/core/__init__.py' 2026-03-04T06:59:16,997 adding 'routilux/core/connection.py' 2026-03-04T06:59:17,000 adding 'routilux/core/context.py' 2026-03-04T06:59:17,001 adding 'routilux/core/error.py' 2026-03-04T06:59:17,003 adding 'routilux/core/event.py' 2026-03-04T06:59:17,006 adding 'routilux/core/executor.py' 2026-03-04T06:59:17,009 adding 'routilux/core/flow.py' 2026-03-04T06:59:17,010 adding 'routilux/core/hooks.py' 2026-03-04T06:59:17,012 adding 'routilux/core/interfaces.py' 2026-03-04T06:59:17,013 adding 'routilux/core/manager.py' 2026-03-04T06:59:17,015 adding 'routilux/core/migration.py' 2026-03-04T06:59:17,017 adding 'routilux/core/output.py' 2026-03-04T06:59:17,019 adding 'routilux/core/registry.py' 2026-03-04T06:59:17,022 adding 'routilux/core/routine.py' 2026-03-04T06:59:17,026 adding 'routilux/core/runtime.py' 2026-03-04T06:59:17,028 adding 'routilux/core/slot.py' 2026-03-04T06:59:17,029 adding 'routilux/core/status.py' 2026-03-04T06:59:17,031 adding 'routilux/core/task.py' 2026-03-04T06:59:17,033 adding 'routilux/core/worker.py' 2026-03-04T06:59:17,035 adding 'routilux/monitoring/__init__.py' 2026-03-04T06:59:17,037 adding 'routilux/monitoring/breakpoint_condition.py' 2026-03-04T06:59:17,039 adding 'routilux/monitoring/breakpoint_manager.py' 2026-03-04T06:59:17,040 adding 'routilux/monitoring/debug_session.py' 2026-03-04T06:59:17,042 adding 'routilux/monitoring/event_manager.py' 2026-03-04T06:59:17,045 adding 'routilux/monitoring/execution_hooks.py' 2026-03-04T06:59:17,048 adding 'routilux/monitoring/monitor_collector.py' 2026-03-04T06:59:17,050 adding 'routilux/monitoring/monitor_service.py' 2026-03-04T06:59:17,051 adding 'routilux/monitoring/registry.py' 2026-03-04T06:59:17,053 adding 'routilux/monitoring/runtime_registry.py' 2026-03-04T06:59:17,054 adding 'routilux/monitoring/storage.py' 2026-03-04T06:59:17,056 adding 'routilux/monitoring/websocket_manager.py' 2026-03-04T06:59:17,058 adding 'routilux/server/__init__.py' 2026-03-04T06:59:17,060 adding 'routilux/server/audit.py' 2026-03-04T06:59:17,061 adding 'routilux/server/config.py' 2026-03-04T06:59:17,063 adding 'routilux/server/dependencies.py' 2026-03-04T06:59:17,064 adding 'routilux/server/errors.py' 2026-03-04T06:59:17,066 adding 'routilux/server/main.py' 2026-03-04T06:59:17,068 adding 'routilux/server/security.py' 2026-03-04T06:59:17,069 adding 'routilux/server/validators.py' 2026-03-04T06:59:17,072 adding 'routilux/server/middleware/auth.py' 2026-03-04T06:59:17,073 adding 'routilux/server/middleware/error_handler.py' 2026-03-04T06:59:17,075 adding 'routilux/server/middleware/rate_limit.py' 2026-03-04T06:59:17,077 adding 'routilux/server/models/__init__.py' 2026-03-04T06:59:17,078 adding 'routilux/server/models/breakpoint.py' 2026-03-04T06:59:17,079 adding 'routilux/server/models/debug.py' 2026-03-04T06:59:17,080 adding 'routilux/server/models/error.py' 2026-03-04T06:59:17,082 adding 'routilux/server/models/execute.py' 2026-03-04T06:59:17,084 adding 'routilux/server/models/flow.py' 2026-03-04T06:59:17,086 adding 'routilux/server/models/job.py' 2026-03-04T06:59:17,087 adding 'routilux/server/models/monitor.py' 2026-03-04T06:59:17,089 adding 'routilux/server/models/object.py' 2026-03-04T06:59:17,090 adding 'routilux/server/models/runtime.py' 2026-03-04T06:59:17,092 adding 'routilux/server/models/worker.py' 2026-03-04T06:59:17,094 adding 'routilux/server/routes/__init__.py' 2026-03-04T06:59:17,096 adding 'routilux/server/routes/breakpoints.py' 2026-03-04T06:59:17,098 adding 'routilux/server/routes/discovery.py' 2026-03-04T06:59:17,100 adding 'routilux/server/routes/execute.py' 2026-03-04T06:59:17,105 adding 'routilux/server/routes/flows.py' 2026-03-04T06:59:17,106 adding 'routilux/server/routes/health.py' 2026-03-04T06:59:17,112 adding 'routilux/server/routes/jobs.py' 2026-03-04T06:59:17,114 adding 'routilux/server/routes/objects.py' 2026-03-04T06:59:17,116 adding 'routilux/server/routes/runtimes.py' 2026-03-04T06:59:17,121 adding 'routilux/server/routes/websocket.py' 2026-03-04T06:59:17,126 adding 'routilux/server/routes/workers.py' 2026-03-04T06:59:17,128 adding 'routilux/server/storage/__init__.py' 2026-03-04T06:59:17,129 adding 'routilux/server/storage/base.py' 2026-03-04T06:59:17,131 adding 'routilux/server/storage/memory.py' 2026-03-04T06:59:17,133 adding 'routilux/tools/__init__.py' 2026-03-04T06:59:17,134 adding 'routilux/tools/analysis/__init__.py' 2026-03-04T06:59:17,136 adding 'routilux/tools/analysis/analyzers/__init__.py' 2026-03-04T06:59:17,138 adding 'routilux/tools/analysis/analyzers/routine.py' 2026-03-04T06:59:17,142 adding 'routilux/tools/analysis/analyzers/workflow.py' 2026-03-04T06:59:17,144 adding 'routilux/tools/analysis/exporters/__init__.py' 2026-03-04T06:59:17,145 adding 'routilux/tools/analysis/exporters/base.py' 2026-03-04T06:59:17,147 adding 'routilux/tools/analysis/exporters/routine_markdown.py' 2026-03-04T06:59:17,149 adding 'routilux/tools/analysis/exporters/workflow_d2.py' 2026-03-04T06:59:17,151 adding 'routilux/tools/dsl/__init__.py' 2026-03-04T06:59:17,152 adding 'routilux/tools/dsl/loader.py' 2026-03-04T06:59:17,153 adding 'routilux/tools/dsl/spec_parser.py' 2026-03-04T06:59:17,155 adding 'routilux/tools/factory/__init__.py' 2026-03-04T06:59:17,157 adding 'routilux/tools/factory/cloning.py' 2026-03-04T06:59:17,160 adding 'routilux/tools/factory/factory.py' 2026-03-04T06:59:17,162 adding 'routilux/tools/factory/metadata.py' 2026-03-04T06:59:17,163 adding 'routilux/tools/testing/__init__.py' 2026-03-04T06:59:17,165 adding 'routilux/tools/testing/routine_tester.py' 2026-03-04T06:59:17,169 adding 'routilux-1.1.0.dist-info/licenses/LICENSE' 2026-03-04T06:59:17,171 adding 'scripts/generate_release_notes.py' 2026-03-04T06:59:17,174 adding 'tools/analyze_codebase_ast.py' 2026-03-04T06:59:17,177 adding 'routilux-1.1.0.dist-info/METADATA' 2026-03-04T06:59:17,178 adding 'routilux-1.1.0.dist-info/WHEEL' 2026-03-04T06:59:17,179 adding 'routilux-1.1.0.dist-info/entry_points.txt' 2026-03-04T06:59:17,180 adding 'routilux-1.1.0.dist-info/top_level.txt' 2026-03-04T06:59:17,183 adding 'routilux-1.1.0.dist-info/RECORD' 2026-03-04T06:59:17,190 removing build/bdist.linux-armv7l/wheel 2026-03-04T06:59:17,338 Building wheel for routilux (pyproject.toml): finished with status 'done' 2026-03-04T06:59:17,351 Created wheel for routilux: filename=routilux-1.1.0-py3-none-any.whl size=376441 sha256=5bbb18bdeed4a1be0da8c8451f36bd0caa1914b3eaa3d8ead8e572657dabedf5 2026-03-04T06:59:17,352 Stored in directory: /tmp/pip-ephem-wheel-cache-dj344et4/wheels/d0/02/68/3aa0814ef4501a1ff4bd992de3760baf3e33f979325d1d60de 2026-03-04T06:59:17,371 Successfully built routilux 2026-03-04T06:59:17,388 Removed build tracker: '/tmp/pip-build-tracker-ry5r21ai'