2026-02-14T12:53:29,787 Created temporary directory: /tmp/pip-ephem-wheel-cache-b6izm0vw 2026-02-14T12:53:29,789 Created temporary directory: /tmp/pip-build-tracker-qw_lrl2s 2026-02-14T12:53:29,789 Initialized build tracking at /tmp/pip-build-tracker-qw_lrl2s 2026-02-14T12:53:29,790 Created build tracker: /tmp/pip-build-tracker-qw_lrl2s 2026-02-14T12:53:29,790 Entered build tracker: /tmp/pip-build-tracker-qw_lrl2s 2026-02-14T12:53:29,791 Created temporary directory: /tmp/pip-wheel-rl4k61ew 2026-02-14T12:53:29,794 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-02-14T12:53:29,796 Created temporary directory: /tmp/pip-ephem-wheel-cache-gvx6oc1l 2026-02-14T12:53:29,818 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-02-14T12:53:29,821 2 location(s) to search for versions of routilux: 2026-02-14T12:53:29,821 * https://pypi.org/simple/routilux/ 2026-02-14T12:53:29,821 * https://www.piwheels.org/simple/routilux/ 2026-02-14T12:53:29,822 Fetching project page and analyzing links: https://pypi.org/simple/routilux/ 2026-02-14T12:53:29,823 Getting page https://pypi.org/simple/routilux/ 2026-02-14T12:53:29,824 Found index url https://pypi.org/simple 2026-02-14T12:53:29,965 Fetched page https://pypi.org/simple/routilux/ as application/vnd.pypi.simple.v1+json 2026-02-14T12:53:29,974 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-02-14T12:53:29,975 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-02-14T12:53:29,976 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-02-14T12:53:29,977 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-02-14T12:53:29,978 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-02-14T12:53:29,979 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-02-14T12:53:29,980 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-02-14T12:53:29,981 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-02-14T12:53:29,981 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-02-14T12:53:29,982 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-02-14T12:53:29,983 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-02-14T12:53:29,985 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-02-14T12:53:29,985 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-02-14T12:53:29,987 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-02-14T12:53:29,987 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-02-14T12:53:29,988 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-02-14T12:53:29,989 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-02-14T12:53:29,990 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-02-14T12:53:29,991 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-02-14T12:53:29,992 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-02-14T12:53:29,992 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-02-14T12:53:29,993 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-02-14T12:53:29,994 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-02-14T12:53:29,995 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-02-14T12:53:29,996 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-02-14T12:53:29,997 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-02-14T12:53:29,998 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-02-14T12:53:29,999 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-02-14T12:53:29,999 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-02-14T12:53:30,000 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-02-14T12:53:30,001 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-02-14T12:53:30,002 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-02-14T12:53:30,003 Fetching project page and analyzing links: https://www.piwheels.org/simple/routilux/ 2026-02-14T12:53:30,003 Getting page https://www.piwheels.org/simple/routilux/ 2026-02-14T12:53:30,005 Found index url https://www.piwheels.org/simple 2026-02-14T12:53:30,162 Fetched page https://www.piwheels.org/simple/routilux/ as text/html 2026-02-14T12:53:30,167 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,167 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,168 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,169 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,169 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,170 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,170 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,171 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,172 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,172 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,172 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,173 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,173 Skipping link: No binaries permitted for routilux: https://www.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-02-14T12:53:30,174 Skipping link: not a file: https://www.piwheels.org/simple/routilux/ 2026-02-14T12:53:30,175 Skipping link: not a file: https://pypi.org/simple/routilux/ 2026-02-14T12:53:30,197 Given no hashes to check 1 links for project 'routilux': discarding no candidates 2026-02-14T12:53:30,216 Collecting routilux==0.15.1 2026-02-14T12:53:30,219 Created temporary directory: /tmp/pip-unpack-v2nh1lf0 2026-02-14T12:53:30,351 Downloading routilux-0.15.1.tar.gz (606 kB) 2026-02-14T12:53:31,077 Added routilux==0.15.1 from https://files.pythonhosted.org/packages/7c/68/1f83451806fedda7b7bb9c495808b8f960d50fc107641540f4a51cbfac80/routilux-0.15.1.tar.gz to build tracker '/tmp/pip-build-tracker-qw_lrl2s' 2026-02-14T12:53:31,084 Created temporary directory: /tmp/pip-build-env-0w93j8qv 2026-02-14T12:53:31,089 Installing build dependencies: started 2026-02-14T12:53:31,091 Running command pip subprocess to install build dependencies 2026-02-14T12:53:32,215 Using pip 23.0.1 from /usr/lib/python3/dist-packages/pip (python 3.11) 2026-02-14T12:53:32,790 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-02-14T12:53:32,813 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-02-14T12:53:34,572 Collecting setuptools>=61.0 2026-02-14T12:53:34,664 Using cached https://www.piwheels.org/simple/setuptools/setuptools-82.0.0-py3-none-any.whl (1.0 MB) 2026-02-14T12:53:34,933 Collecting wheel 2026-02-14T12:53:34,947 Using cached https://www.piwheels.org/simple/wheel/wheel-0.46.3-py3-none-any.whl (30 kB) 2026-02-14T12:53:35,132 Collecting packaging>=24.0 2026-02-14T12:53:35,147 Using cached https://www.piwheels.org/simple/packaging/packaging-26.0-py3-none-any.whl (74 kB) 2026-02-14T12:53:38,290 Installing collected packages: setuptools, packaging, wheel 2026-02-14T12:53:42,769 Creating /tmp/pip-build-env-0w93j8qv/overlay/local/bin 2026-02-14T12:53:42,771 changing mode of /tmp/pip-build-env-0w93j8qv/overlay/local/bin/wheel to 755 2026-02-14T12:53:42,792 Successfully installed packaging-26.0 setuptools-82.0.0 wheel-0.46.3 2026-02-14T12:53:43,067 Installing build dependencies: finished with status 'done' 2026-02-14T12:53:43,073 Getting requirements to build wheel: started 2026-02-14T12:53:43,074 Running command Getting requirements to build wheel 2026-02-14T12:53:43,793 running egg_info 2026-02-14T12:53:43,798 writing routilux.egg-info/PKG-INFO 2026-02-14T12:53:43,807 writing dependency_links to routilux.egg-info/dependency_links.txt 2026-02-14T12:53:43,809 writing entry points to routilux.egg-info/entry_points.txt 2026-02-14T12:53:43,813 writing requirements to routilux.egg-info/requires.txt 2026-02-14T12:53:43,814 writing top-level names to routilux.egg-info/top_level.txt 2026-02-14T12:53:44,092 reading manifest file 'routilux.egg-info/SOURCES.txt' 2026-02-14T12:53:44,121 reading manifest template 'MANIFEST.in' 2026-02-14T12:53:44,257 warning: no files found matching '*.conf' under directory 'docs' 2026-02-14T12:53:44,320 warning: no previously-included files matching '__pycache__' found under directory '*' 2026-02-14T12:53:44,321 warning: no previously-included files matching '*.py[co]' found under directory '*' 2026-02-14T12:53:44,323 warning: no previously-included files matching '.pytest_cache' found under directory '*' 2026-02-14T12:53:44,324 warning: no previously-included files matching '.mypy_cache' found under directory '*' 2026-02-14T12:53:44,326 warning: no previously-included files matching '*.egg-info' found under directory '*' 2026-02-14T12:53:44,328 warning: no previously-included files matching 'build' found under directory '*' 2026-02-14T12:53:44,329 warning: no previously-included files matching 'dist' found under directory '*' 2026-02-14T12:53:44,330 adding license file 'LICENSE' 2026-02-14T12:53:44,343 writing manifest file 'routilux.egg-info/SOURCES.txt' 2026-02-14T12:53:44,440 Getting requirements to build wheel: finished with status 'done' 2026-02-14T12:53:44,444 Created temporary directory: /tmp/pip-modern-metadata-ybjf536f 2026-02-14T12:53:44,446 Preparing metadata (pyproject.toml): started 2026-02-14T12:53:44,447 Running command Preparing metadata (pyproject.toml) 2026-02-14T12:53:45,358 running dist_info 2026-02-14T12:53:45,368 creating /tmp/pip-modern-metadata-ybjf536f/routilux.egg-info 2026-02-14T12:53:45,369 writing /tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/PKG-INFO 2026-02-14T12:53:45,377 writing dependency_links to /tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/dependency_links.txt 2026-02-14T12:53:45,379 writing entry points to /tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/entry_points.txt 2026-02-14T12:53:45,383 writing requirements to /tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/requires.txt 2026-02-14T12:53:45,384 writing top-level names to /tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/top_level.txt 2026-02-14T12:53:45,386 writing manifest file '/tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/SOURCES.txt' 2026-02-14T12:53:45,433 reading manifest file '/tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/SOURCES.txt' 2026-02-14T12:53:45,435 reading manifest template 'MANIFEST.in' 2026-02-14T12:53:45,567 warning: no files found matching '*.conf' under directory 'docs' 2026-02-14T12:53:45,630 warning: no previously-included files matching '__pycache__' found under directory '*' 2026-02-14T12:53:45,631 warning: no previously-included files matching '*.py[co]' found under directory '*' 2026-02-14T12:53:45,632 warning: no previously-included files matching '.pytest_cache' found under directory '*' 2026-02-14T12:53:45,634 warning: no previously-included files matching '.mypy_cache' found under directory '*' 2026-02-14T12:53:45,635 warning: no previously-included files matching '*.egg-info' found under directory '*' 2026-02-14T12:53:45,636 warning: no previously-included files matching 'build' found under directory '*' 2026-02-14T12:53:45,637 warning: no previously-included files matching 'dist' found under directory '*' 2026-02-14T12:53:45,638 adding license file 'LICENSE' 2026-02-14T12:53:45,648 writing manifest file '/tmp/pip-modern-metadata-ybjf536f/routilux.egg-info/SOURCES.txt' 2026-02-14T12:53:45,649 creating '/tmp/pip-modern-metadata-ybjf536f/routilux-0.15.1.dist-info' 2026-02-14T12:53:45,775 Preparing metadata (pyproject.toml): finished with status 'done' 2026-02-14T12:53:45,781 Source in /tmp/pip-wheel-rl4k61ew/routilux_3a64cf4159794df5881a496af4c5c915 has version 0.15.1, which satisfies requirement routilux==0.15.1 from https://files.pythonhosted.org/packages/7c/68/1f83451806fedda7b7bb9c495808b8f960d50fc107641540f4a51cbfac80/routilux-0.15.1.tar.gz 2026-02-14T12:53:45,782 Removed routilux==0.15.1 from https://files.pythonhosted.org/packages/7c/68/1f83451806fedda7b7bb9c495808b8f960d50fc107641540f4a51cbfac80/routilux-0.15.1.tar.gz from build tracker '/tmp/pip-build-tracker-qw_lrl2s' 2026-02-14T12:53:45,790 Created temporary directory: /tmp/pip-unpack-vzo5adpm 2026-02-14T12:53:45,791 Building wheels for collected packages: routilux 2026-02-14T12:53:45,795 Created temporary directory: /tmp/pip-wheel-e9vthojd 2026-02-14T12:53:45,796 Destination directory: /tmp/pip-wheel-e9vthojd 2026-02-14T12:53:45,798 Building wheel for routilux (pyproject.toml): started 2026-02-14T12:53:45,800 Running command Building wheel for routilux (pyproject.toml) 2026-02-14T12:53:46,444 running bdist_wheel 2026-02-14T12:53:46,461 running build 2026-02-14T12:53:46,462 running build_py 2026-02-14T12:53:46,468 creating build/lib/routilux 2026-02-14T12:53:46,470 copying routilux/decorators.py -> build/lib/routilux 2026-02-14T12:53:46,473 copying routilux/validators.py -> build/lib/routilux 2026-02-14T12:53:46,475 copying routilux/__init__.py -> build/lib/routilux 2026-02-14T12:53:46,477 copying routilux/exceptions.py -> build/lib/routilux 2026-02-14T12:53:46,480 copying routilux/metrics.py -> build/lib/routilux 2026-02-14T12:53:46,482 copying routilux/simple.py -> build/lib/routilux 2026-02-14T12:53:46,485 creating build/lib/playground 2026-02-14T12:53:46,486 copying playground/__init__.py -> build/lib/playground 2026-02-14T12:53:46,488 creating build/lib/tools 2026-02-14T12:53:46,489 copying tools/analyze_codebase_ast.py -> build/lib/tools 2026-02-14T12:53:46,492 creating build/lib/scripts 2026-02-14T12:53:46,493 copying scripts/generate_release_notes.py -> build/lib/scripts 2026-02-14T12:53:46,496 creating build/lib/routilux/core 2026-02-14T12:53:46,497 copying routilux/core/routine.py -> build/lib/routilux/core 2026-02-14T12:53:46,500 copying routilux/core/context.py -> build/lib/routilux/core 2026-02-14T12:53:46,502 copying routilux/core/migration.py -> build/lib/routilux/core 2026-02-14T12:53:46,505 copying routilux/core/__init__.py -> build/lib/routilux/core 2026-02-14T12:53:46,507 copying routilux/core/worker.py -> build/lib/routilux/core 2026-02-14T12:53:46,509 copying routilux/core/slot.py -> build/lib/routilux/core 2026-02-14T12:53:46,512 copying routilux/core/connection.py -> build/lib/routilux/core 2026-02-14T12:53:46,514 copying routilux/core/interfaces.py -> build/lib/routilux/core 2026-02-14T12:53:46,516 copying routilux/core/hooks.py -> build/lib/routilux/core 2026-02-14T12:53:46,518 copying routilux/core/event.py -> build/lib/routilux/core 2026-02-14T12:53:46,520 copying routilux/core/error.py -> build/lib/routilux/core 2026-02-14T12:53:46,523 copying routilux/core/runtime.py -> build/lib/routilux/core 2026-02-14T12:53:46,525 copying routilux/core/task.py -> build/lib/routilux/core 2026-02-14T12:53:46,527 copying routilux/core/flow.py -> build/lib/routilux/core 2026-02-14T12:53:46,530 copying routilux/core/executor.py -> build/lib/routilux/core 2026-02-14T12:53:46,532 copying routilux/core/status.py -> build/lib/routilux/core 2026-02-14T12:53:46,534 copying routilux/core/output.py -> build/lib/routilux/core 2026-02-14T12:53:46,536 copying routilux/core/manager.py -> build/lib/routilux/core 2026-02-14T12:53:46,539 copying routilux/core/registry.py -> build/lib/routilux/core 2026-02-14T12:53:46,542 creating build/lib/routilux/cli 2026-02-14T12:53:46,543 copying routilux/cli/decorators.py -> build/lib/routilux/cli 2026-02-14T12:53:46,545 copying routilux/cli/server_wrapper.py -> build/lib/routilux/cli 2026-02-14T12:53:46,548 copying routilux/cli/__init__.py -> build/lib/routilux/cli 2026-02-14T12:53:46,550 copying routilux/cli/config.py -> build/lib/routilux/cli 2026-02-14T12:53:46,552 copying routilux/cli/main.py -> build/lib/routilux/cli 2026-02-14T12:53:46,554 copying routilux/cli/discovery.py -> build/lib/routilux/cli 2026-02-14T12:53:46,556 creating build/lib/routilux/tools 2026-02-14T12:53:46,557 copying routilux/tools/__init__.py -> build/lib/routilux/tools 2026-02-14T12:53:46,560 creating build/lib/routilux/server 2026-02-14T12:53:46,561 copying routilux/server/dependencies.py -> build/lib/routilux/server 2026-02-14T12:53:46,563 copying routilux/server/validators.py -> build/lib/routilux/server 2026-02-14T12:53:46,565 copying routilux/server/security.py -> build/lib/routilux/server 2026-02-14T12:53:46,567 copying routilux/server/__init__.py -> build/lib/routilux/server 2026-02-14T12:53:46,569 copying routilux/server/errors.py -> build/lib/routilux/server 2026-02-14T12:53:46,571 copying routilux/server/config.py -> build/lib/routilux/server 2026-02-14T12:53:46,573 copying routilux/server/audit.py -> build/lib/routilux/server 2026-02-14T12:53:46,575 copying routilux/server/main.py -> build/lib/routilux/server 2026-02-14T12:53:46,577 creating build/lib/routilux/builtin_routines 2026-02-14T12:53:46,578 copying routilux/builtin_routines/__init__.py -> build/lib/routilux/builtin_routines 2026-02-14T12:53:46,581 creating build/lib/routilux/monitoring 2026-02-14T12:53:46,582 copying routilux/monitoring/monitor_collector.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,584 copying routilux/monitoring/breakpoint_condition.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,587 copying routilux/monitoring/websocket_manager.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,589 copying routilux/monitoring/__init__.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,591 copying routilux/monitoring/runtime_registry.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,593 copying routilux/monitoring/storage.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,595 copying routilux/monitoring/debug_session.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,597 copying routilux/monitoring/breakpoint_manager.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,599 copying routilux/monitoring/monitor_service.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,602 copying routilux/monitoring/execution_hooks.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,605 copying routilux/monitoring/event_manager.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,608 copying routilux/monitoring/registry.py -> build/lib/routilux/monitoring 2026-02-14T12:53:46,610 creating build/lib/routilux/analysis 2026-02-14T12:53:46,611 copying routilux/analysis/__init__.py -> build/lib/routilux/analysis 2026-02-14T12:53:46,614 creating build/lib/routilux/cli/commands 2026-02-14T12:53:46,615 copying routilux/cli/commands/job.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,617 copying routilux/cli/commands/list.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,619 copying routilux/cli/commands/completion.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,622 copying routilux/cli/commands/__init__.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,624 copying routilux/cli/commands/validate.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,626 copying routilux/cli/commands/server.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,628 copying routilux/cli/commands/run.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,630 copying routilux/cli/commands/init.py -> build/lib/routilux/cli/commands 2026-02-14T12:53:46,633 creating build/lib/routilux/tools/testing 2026-02-14T12:53:46,634 copying routilux/tools/testing/__init__.py -> build/lib/routilux/tools/testing 2026-02-14T12:53:46,635 copying routilux/tools/testing/routine_tester.py -> build/lib/routilux/tools/testing 2026-02-14T12:53:46,638 creating build/lib/routilux/tools/factory 2026-02-14T12:53:46,639 copying routilux/tools/factory/factory.py -> build/lib/routilux/tools/factory 2026-02-14T12:53:46,642 copying routilux/tools/factory/__init__.py -> build/lib/routilux/tools/factory 2026-02-14T12:53:46,643 copying routilux/tools/factory/metadata.py -> build/lib/routilux/tools/factory 2026-02-14T12:53:46,645 copying routilux/tools/factory/cloning.py -> build/lib/routilux/tools/factory 2026-02-14T12:53:46,647 creating build/lib/routilux/tools/dsl 2026-02-14T12:53:46,648 copying routilux/tools/dsl/__init__.py -> build/lib/routilux/tools/dsl 2026-02-14T12:53:46,650 copying routilux/tools/dsl/loader.py -> build/lib/routilux/tools/dsl 2026-02-14T12:53:46,652 copying routilux/tools/dsl/spec_parser.py -> build/lib/routilux/tools/dsl 2026-02-14T12:53:46,654 creating build/lib/routilux/tools/analysis 2026-02-14T12:53:46,655 copying routilux/tools/analysis/__init__.py -> build/lib/routilux/tools/analysis 2026-02-14T12:53:46,658 creating build/lib/routilux/tools/analysis/exporters 2026-02-14T12:53:46,659 copying routilux/tools/analysis/exporters/workflow_d2.py -> build/lib/routilux/tools/analysis/exporters 2026-02-14T12:53:46,661 copying routilux/tools/analysis/exporters/__init__.py -> build/lib/routilux/tools/analysis/exporters 2026-02-14T12:53:46,663 copying routilux/tools/analysis/exporters/base.py -> build/lib/routilux/tools/analysis/exporters 2026-02-14T12:53:46,665 copying routilux/tools/analysis/exporters/routine_markdown.py -> build/lib/routilux/tools/analysis/exporters 2026-02-14T12:53:46,667 creating build/lib/routilux/tools/analysis/analyzers 2026-02-14T12:53:46,668 copying routilux/tools/analysis/analyzers/routine.py -> build/lib/routilux/tools/analysis/analyzers 2026-02-14T12:53:46,671 copying routilux/tools/analysis/analyzers/__init__.py -> build/lib/routilux/tools/analysis/analyzers 2026-02-14T12:53:46,673 copying routilux/tools/analysis/analyzers/workflow.py -> build/lib/routilux/tools/analysis/analyzers 2026-02-14T12:53:46,676 creating build/lib/routilux/server/middleware 2026-02-14T12:53:46,677 copying routilux/server/middleware/rate_limit.py -> build/lib/routilux/server/middleware 2026-02-14T12:53:46,680 copying routilux/server/middleware/error_handler.py -> build/lib/routilux/server/middleware 2026-02-14T12:53:46,682 copying routilux/server/middleware/auth.py -> build/lib/routilux/server/middleware 2026-02-14T12:53:46,684 creating build/lib/routilux/server/storage 2026-02-14T12:53:46,685 copying routilux/server/storage/memory.py -> build/lib/routilux/server/storage 2026-02-14T12:53:46,688 copying routilux/server/storage/__init__.py -> build/lib/routilux/server/storage 2026-02-14T12:53:46,690 copying routilux/server/storage/base.py -> build/lib/routilux/server/storage 2026-02-14T12:53:46,693 creating build/lib/routilux/server/routes 2026-02-14T12:53:46,694 copying routilux/server/routes/flows.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,697 copying routilux/server/routes/breakpoints.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,699 copying routilux/server/routes/objects.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,702 copying routilux/server/routes/__init__.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,704 copying routilux/server/routes/workers.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,707 copying routilux/server/routes/execute.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,709 copying routilux/server/routes/runtimes.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,711 copying routilux/server/routes/health.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,713 copying routilux/server/routes/websocket.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,715 copying routilux/server/routes/discovery.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,718 copying routilux/server/routes/jobs.py -> build/lib/routilux/server/routes 2026-02-14T12:53:46,721 creating build/lib/routilux/server/models 2026-02-14T12:53:46,722 copying routilux/server/models/job.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,725 copying routilux/server/models/monitor.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,727 copying routilux/server/models/debug.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,729 copying routilux/server/models/__init__.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,731 copying routilux/server/models/object.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,733 copying routilux/server/models/worker.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,735 copying routilux/server/models/breakpoint.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,737 copying routilux/server/models/error.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,738 copying routilux/server/models/execute.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,740 copying routilux/server/models/runtime.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,743 copying routilux/server/models/flow.py -> build/lib/routilux/server/models 2026-02-14T12:53:46,746 creating build/lib/routilux/builtin_routines/control_flow 2026-02-14T12:53:46,747 copying routilux/builtin_routines/control_flow/debouncer.py -> build/lib/routilux/builtin_routines/control_flow 2026-02-14T12:53:46,749 copying routilux/builtin_routines/control_flow/__init__.py -> build/lib/routilux/builtin_routines/control_flow 2026-02-14T12:53:46,751 copying routilux/builtin_routines/control_flow/splitter.py -> build/lib/routilux/builtin_routines/control_flow 2026-02-14T12:53:46,753 copying routilux/builtin_routines/control_flow/aggregator.py -> build/lib/routilux/builtin_routines/control_flow 2026-02-14T12:53:46,756 copying routilux/builtin_routines/control_flow/batcher.py -> build/lib/routilux/builtin_routines/control_flow 2026-02-14T12:53:46,758 copying routilux/builtin_routines/control_flow/conditional_router.py -> build/lib/routilux/builtin_routines/control_flow 2026-02-14T12:53:46,761 creating build/lib/routilux/builtin_routines/reliability 2026-02-14T12:53:46,762 copying routilux/builtin_routines/reliability/__init__.py -> build/lib/routilux/builtin_routines/reliability 2026-02-14T12:53:46,764 copying routilux/builtin_routines/reliability/retry_handler.py -> build/lib/routilux/builtin_routines/reliability 2026-02-14T12:53:46,767 creating build/lib/routilux/builtin_routines/data_processing 2026-02-14T12:53:46,768 copying routilux/builtin_routines/data_processing/mapper.py -> build/lib/routilux/builtin_routines/data_processing 2026-02-14T12:53:46,770 copying routilux/builtin_routines/data_processing/__init__.py -> build/lib/routilux/builtin_routines/data_processing 2026-02-14T12:53:46,772 copying routilux/builtin_routines/data_processing/data_transformer.py -> build/lib/routilux/builtin_routines/data_processing 2026-02-14T12:53:46,774 copying routilux/builtin_routines/data_processing/schema_validator.py -> build/lib/routilux/builtin_routines/data_processing 2026-02-14T12:53:46,777 copying routilux/builtin_routines/data_processing/filter.py -> build/lib/routilux/builtin_routines/data_processing 2026-02-14T12:53:46,779 copying routilux/builtin_routines/data_processing/data_validator.py -> build/lib/routilux/builtin_routines/data_processing 2026-02-14T12:53:46,781 creating build/lib/routilux/builtin_routines/utils 2026-02-14T12:53:46,782 copying routilux/builtin_routines/utils/__init__.py -> build/lib/routilux/builtin_routines/utils 2026-02-14T12:53:46,784 creating build/lib/routilux/builtin_routines/text_processing 2026-02-14T12:53:46,785 copying routilux/builtin_routines/text_processing/__init__.py -> build/lib/routilux/builtin_routines/text_processing 2026-02-14T12:53:46,787 copying routilux/builtin_routines/text_processing/result_extractor.py -> build/lib/routilux/builtin_routines/text_processing 2026-02-14T12:53:46,790 creating build/lib/routilux/analysis/exporters 2026-02-14T12:53:46,791 copying routilux/analysis/exporters/workflow_d2.py -> build/lib/routilux/analysis/exporters 2026-02-14T12:53:46,793 copying routilux/analysis/exporters/__init__.py -> build/lib/routilux/analysis/exporters 2026-02-14T12:53:46,795 copying routilux/analysis/exporters/base.py -> build/lib/routilux/analysis/exporters 2026-02-14T12:53:46,797 copying routilux/analysis/exporters/routine_markdown.py -> build/lib/routilux/analysis/exporters 2026-02-14T12:53:46,799 creating build/lib/routilux/analysis/analyzers 2026-02-14T12:53:46,800 copying routilux/analysis/analyzers/routine.py -> build/lib/routilux/analysis/analyzers 2026-02-14T12:53:46,803 copying routilux/analysis/analyzers/__init__.py -> build/lib/routilux/analysis/analyzers 2026-02-14T12:53:46,805 copying routilux/analysis/analyzers/workflow.py -> build/lib/routilux/analysis/analyzers 2026-02-14T12:53:46,808 creating build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,809 copying playground/llm_agent_cross_host/llm_agent_routine.py -> build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,811 copying playground/llm_agent_cross_host/enhanced_routine.py -> build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,813 copying playground/llm_agent_cross_host/__init__.py -> build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,815 copying playground/llm_agent_cross_host/mock_llm.py -> build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,817 copying playground/llm_agent_cross_host/logger.py -> build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,819 copying playground/llm_agent_cross_host/cross_host_demo.py -> build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,822 copying playground/llm_agent_cross_host/mock_storage.py -> build/lib/playground/llm_agent_cross_host 2026-02-14T12:53:46,824 creating build/lib/playground/analyzer_demo 2026-02-14T12:53:46,825 copying playground/analyzer_demo/analyzer_demo.py -> build/lib/playground/analyzer_demo 2026-02-14T12:53:46,828 copying playground/analyzer_demo/__init__.py -> build/lib/playground/analyzer_demo 2026-02-14T12:53:46,830 copying playground/analyzer_demo/demo_routines.py -> build/lib/playground/analyzer_demo 2026-02-14T12:53:46,833 creating build/lib/playground/concurrent_execution_demo 2026-02-14T12:53:46,834 copying playground/concurrent_execution_demo/__init__.py -> build/lib/playground/concurrent_execution_demo 2026-02-14T12:53:46,836 copying playground/concurrent_execution_demo/data_generator_routines.py -> build/lib/playground/concurrent_execution_demo 2026-02-14T12:53:46,838 copying playground/concurrent_execution_demo/concurrent_demo.py -> build/lib/playground/concurrent_execution_demo 2026-02-14T12:53:46,841 creating build/lib/playground/retry_serialization_demo 2026-02-14T12:53:46,842 copying playground/retry_serialization_demo/__init__.py -> build/lib/playground/retry_serialization_demo 2026-02-14T12:53:46,844 copying playground/retry_serialization_demo/enhanced_retry_demo.py -> build/lib/playground/retry_serialization_demo 2026-02-14T12:53:46,847 copying playground/retry_serialization_demo/failing_routine.py -> build/lib/playground/retry_serialization_demo 2026-02-14T12:53:46,849 copying playground/retry_serialization_demo/showcase_scenarios.py -> build/lib/playground/retry_serialization_demo 2026-02-14T12:53:46,852 copying playground/retry_serialization_demo/data_processing_routines.py -> build/lib/playground/retry_serialization_demo 2026-02-14T12:53:46,854 copying playground/retry_serialization_demo/retry_demo.py -> build/lib/playground/retry_serialization_demo 2026-02-14T12:53:46,857 creating build/lib/playground/misconfiguration_demo 2026-02-14T12:53:46,858 copying playground/misconfiguration_demo/__init__.py -> build/lib/playground/misconfiguration_demo 2026-02-14T12:53:46,859 copying playground/misconfiguration_demo/misconfiguration_demo.py -> build/lib/playground/misconfiguration_demo 2026-02-14T12:53:46,862 running egg_info 2026-02-14T12:53:46,872 writing routilux.egg-info/PKG-INFO 2026-02-14T12:53:46,880 writing dependency_links to routilux.egg-info/dependency_links.txt 2026-02-14T12:53:46,881 writing entry points to routilux.egg-info/entry_points.txt 2026-02-14T12:53:46,885 writing requirements to routilux.egg-info/requires.txt 2026-02-14T12:53:46,886 writing top-level names to routilux.egg-info/top_level.txt 2026-02-14T12:53:46,923 reading manifest file 'routilux.egg-info/SOURCES.txt' 2026-02-14T12:53:46,938 reading manifest template 'MANIFEST.in' 2026-02-14T12:53:47,067 warning: no files found matching '*.conf' under directory 'docs' 2026-02-14T12:53:47,127 warning: no previously-included files matching '__pycache__' found under directory '*' 2026-02-14T12:53:47,129 warning: no previously-included files matching '*.py[co]' found under directory '*' 2026-02-14T12:53:47,130 warning: no previously-included files matching '.pytest_cache' found under directory '*' 2026-02-14T12:53:47,131 warning: no previously-included files matching '.mypy_cache' found under directory '*' 2026-02-14T12:53:47,133 warning: no previously-included files matching '*.egg-info' found under directory '*' 2026-02-14T12:53:47,134 warning: no previously-included files matching 'build' found under directory '*' 2026-02-14T12:53:47,135 warning: no previously-included files matching 'dist' found under directory '*' 2026-02-14T12:53:47,136 adding license file 'LICENSE' 2026-02-14T12:53:47,149 writing manifest file 'routilux.egg-info/SOURCES.txt' 2026-02-14T12:53:47,191 installing to build/bdist.linux-armv7l/wheel 2026-02-14T12:53:47,191 running install 2026-02-14T12:53:47,214 running install_lib 2026-02-14T12:53:47,220 creating build/bdist.linux-armv7l/wheel 2026-02-14T12:53:47,222 creating build/bdist.linux-armv7l/wheel/routilux 2026-02-14T12:53:47,223 copying build/lib/routilux/decorators.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-02-14T12:53:47,226 copying build/lib/routilux/validators.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-02-14T12:53:47,228 copying build/lib/routilux/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-02-14T12:53:47,231 creating build/bdist.linux-armv7l/wheel/routilux/core 2026-02-14T12:53:47,232 copying build/lib/routilux/core/routine.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,234 copying build/lib/routilux/core/context.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,237 copying build/lib/routilux/core/migration.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,239 copying build/lib/routilux/core/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,241 copying build/lib/routilux/core/worker.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,244 copying build/lib/routilux/core/slot.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,246 copying build/lib/routilux/core/connection.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,248 copying build/lib/routilux/core/interfaces.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,250 copying build/lib/routilux/core/hooks.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,252 copying build/lib/routilux/core/event.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,254 copying build/lib/routilux/core/error.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,256 copying build/lib/routilux/core/runtime.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,259 copying build/lib/routilux/core/task.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,261 copying build/lib/routilux/core/flow.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,263 copying build/lib/routilux/core/executor.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,266 copying build/lib/routilux/core/status.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,267 copying build/lib/routilux/core/output.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,270 copying build/lib/routilux/core/manager.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,272 copying build/lib/routilux/core/registry.py -> build/bdist.linux-armv7l/wheel/./routilux/core 2026-02-14T12:53:47,275 creating build/bdist.linux-armv7l/wheel/routilux/cli 2026-02-14T12:53:47,276 copying build/lib/routilux/cli/decorators.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-02-14T12:53:47,278 copying build/lib/routilux/cli/server_wrapper.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-02-14T12:53:47,280 copying build/lib/routilux/cli/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-02-14T12:53:47,282 copying build/lib/routilux/cli/config.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-02-14T12:53:47,284 copying build/lib/routilux/cli/main.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-02-14T12:53:47,287 creating build/bdist.linux-armv7l/wheel/routilux/cli/commands 2026-02-14T12:53:47,288 copying build/lib/routilux/cli/commands/job.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,290 copying build/lib/routilux/cli/commands/list.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,292 copying build/lib/routilux/cli/commands/completion.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,295 copying build/lib/routilux/cli/commands/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,297 copying build/lib/routilux/cli/commands/validate.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,299 copying build/lib/routilux/cli/commands/server.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,301 copying build/lib/routilux/cli/commands/run.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,303 copying build/lib/routilux/cli/commands/init.py -> build/bdist.linux-armv7l/wheel/./routilux/cli/commands 2026-02-14T12:53:47,305 copying build/lib/routilux/cli/discovery.py -> build/bdist.linux-armv7l/wheel/./routilux/cli 2026-02-14T12:53:47,308 copying build/lib/routilux/exceptions.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-02-14T12:53:47,310 copying build/lib/routilux/metrics.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-02-14T12:53:47,312 copying build/lib/routilux/simple.py -> build/bdist.linux-armv7l/wheel/./routilux 2026-02-14T12:53:47,315 creating build/bdist.linux-armv7l/wheel/routilux/tools 2026-02-14T12:53:47,316 creating build/bdist.linux-armv7l/wheel/routilux/tools/testing 2026-02-14T12:53:47,317 copying build/lib/routilux/tools/testing/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/testing 2026-02-14T12:53:47,319 copying build/lib/routilux/tools/testing/routine_tester.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/testing 2026-02-14T12:53:47,322 creating build/bdist.linux-armv7l/wheel/routilux/tools/factory 2026-02-14T12:53:47,323 copying build/lib/routilux/tools/factory/factory.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-02-14T12:53:47,326 copying build/lib/routilux/tools/factory/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-02-14T12:53:47,328 copying build/lib/routilux/tools/factory/metadata.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-02-14T12:53:47,330 copying build/lib/routilux/tools/factory/cloning.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/factory 2026-02-14T12:53:47,331 copying build/lib/routilux/tools/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools 2026-02-14T12:53:47,333 creating build/bdist.linux-armv7l/wheel/routilux/tools/dsl 2026-02-14T12:53:47,334 copying build/lib/routilux/tools/dsl/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/dsl 2026-02-14T12:53:47,336 copying build/lib/routilux/tools/dsl/loader.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/dsl 2026-02-14T12:53:47,338 copying build/lib/routilux/tools/dsl/spec_parser.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/dsl 2026-02-14T12:53:47,340 creating build/bdist.linux-armv7l/wheel/routilux/tools/analysis 2026-02-14T12:53:47,341 copying build/lib/routilux/tools/analysis/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis 2026-02-14T12:53:47,344 creating build/bdist.linux-armv7l/wheel/routilux/tools/analysis/exporters 2026-02-14T12:53:47,345 copying build/lib/routilux/tools/analysis/exporters/workflow_d2.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-02-14T12:53:47,347 copying build/lib/routilux/tools/analysis/exporters/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-02-14T12:53:47,349 copying build/lib/routilux/tools/analysis/exporters/base.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-02-14T12:53:47,350 copying build/lib/routilux/tools/analysis/exporters/routine_markdown.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/exporters 2026-02-14T12:53:47,353 creating build/bdist.linux-armv7l/wheel/routilux/tools/analysis/analyzers 2026-02-14T12:53:47,354 copying build/lib/routilux/tools/analysis/analyzers/routine.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/analyzers 2026-02-14T12:53:47,357 copying build/lib/routilux/tools/analysis/analyzers/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/analyzers 2026-02-14T12:53:47,358 copying build/lib/routilux/tools/analysis/analyzers/workflow.py -> build/bdist.linux-armv7l/wheel/./routilux/tools/analysis/analyzers 2026-02-14T12:53:47,362 creating build/bdist.linux-armv7l/wheel/routilux/server 2026-02-14T12:53:47,363 copying build/lib/routilux/server/dependencies.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,365 copying build/lib/routilux/server/validators.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,367 copying build/lib/routilux/server/security.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,369 copying build/lib/routilux/server/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,371 copying build/lib/routilux/server/errors.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,373 creating build/bdist.linux-armv7l/wheel/routilux/server/middleware 2026-02-14T12:53:47,374 copying build/lib/routilux/server/middleware/rate_limit.py -> build/bdist.linux-armv7l/wheel/./routilux/server/middleware 2026-02-14T12:53:47,376 copying build/lib/routilux/server/middleware/error_handler.py -> build/bdist.linux-armv7l/wheel/./routilux/server/middleware 2026-02-14T12:53:47,379 copying build/lib/routilux/server/middleware/auth.py -> build/bdist.linux-armv7l/wheel/./routilux/server/middleware 2026-02-14T12:53:47,381 copying build/lib/routilux/server/config.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,383 copying build/lib/routilux/server/audit.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,385 creating build/bdist.linux-armv7l/wheel/routilux/server/storage 2026-02-14T12:53:47,386 copying build/lib/routilux/server/storage/memory.py -> build/bdist.linux-armv7l/wheel/./routilux/server/storage 2026-02-14T12:53:47,389 copying build/lib/routilux/server/storage/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server/storage 2026-02-14T12:53:47,391 copying build/lib/routilux/server/storage/base.py -> build/bdist.linux-armv7l/wheel/./routilux/server/storage 2026-02-14T12:53:47,392 copying build/lib/routilux/server/main.py -> build/bdist.linux-armv7l/wheel/./routilux/server 2026-02-14T12:53:47,395 creating build/bdist.linux-armv7l/wheel/routilux/server/routes 2026-02-14T12:53:47,396 copying build/lib/routilux/server/routes/flows.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,399 copying build/lib/routilux/server/routes/breakpoints.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,402 copying build/lib/routilux/server/routes/objects.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,404 copying build/lib/routilux/server/routes/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,406 copying build/lib/routilux/server/routes/workers.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,410 copying build/lib/routilux/server/routes/execute.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,412 copying build/lib/routilux/server/routes/runtimes.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,415 copying build/lib/routilux/server/routes/health.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,416 copying build/lib/routilux/server/routes/websocket.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,420 copying build/lib/routilux/server/routes/discovery.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,422 copying build/lib/routilux/server/routes/jobs.py -> build/bdist.linux-armv7l/wheel/./routilux/server/routes 2026-02-14T12:53:47,426 creating build/bdist.linux-armv7l/wheel/routilux/server/models 2026-02-14T12:53:47,427 copying build/lib/routilux/server/models/job.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,429 copying build/lib/routilux/server/models/monitor.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,431 copying build/lib/routilux/server/models/debug.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,433 copying build/lib/routilux/server/models/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,435 copying build/lib/routilux/server/models/object.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,437 copying build/lib/routilux/server/models/worker.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,439 copying build/lib/routilux/server/models/breakpoint.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,441 copying build/lib/routilux/server/models/error.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,442 copying build/lib/routilux/server/models/execute.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,444 copying build/lib/routilux/server/models/runtime.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,446 copying build/lib/routilux/server/models/flow.py -> build/bdist.linux-armv7l/wheel/./routilux/server/models 2026-02-14T12:53:47,450 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines 2026-02-14T12:53:47,452 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/control_flow 2026-02-14T12:53:47,453 copying build/lib/routilux/builtin_routines/control_flow/debouncer.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-02-14T12:53:47,455 copying build/lib/routilux/builtin_routines/control_flow/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-02-14T12:53:47,457 copying build/lib/routilux/builtin_routines/control_flow/splitter.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-02-14T12:53:47,459 copying build/lib/routilux/builtin_routines/control_flow/aggregator.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-02-14T12:53:47,461 copying build/lib/routilux/builtin_routines/control_flow/batcher.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-02-14T12:53:47,464 copying build/lib/routilux/builtin_routines/control_flow/conditional_router.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/control_flow 2026-02-14T12:53:47,467 copying build/lib/routilux/builtin_routines/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines 2026-02-14T12:53:47,469 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/reliability 2026-02-14T12:53:47,470 copying build/lib/routilux/builtin_routines/reliability/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/reliability 2026-02-14T12:53:47,472 copying build/lib/routilux/builtin_routines/reliability/retry_handler.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/reliability 2026-02-14T12:53:47,476 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/data_processing 2026-02-14T12:53:47,477 copying build/lib/routilux/builtin_routines/data_processing/mapper.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-02-14T12:53:47,479 copying build/lib/routilux/builtin_routines/data_processing/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-02-14T12:53:47,481 copying build/lib/routilux/builtin_routines/data_processing/data_transformer.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-02-14T12:53:47,483 copying build/lib/routilux/builtin_routines/data_processing/schema_validator.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-02-14T12:53:47,485 copying build/lib/routilux/builtin_routines/data_processing/filter.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-02-14T12:53:47,488 copying build/lib/routilux/builtin_routines/data_processing/data_validator.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/data_processing 2026-02-14T12:53:47,491 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/utils 2026-02-14T12:53:47,492 copying build/lib/routilux/builtin_routines/utils/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/utils 2026-02-14T12:53:47,494 creating build/bdist.linux-armv7l/wheel/routilux/builtin_routines/text_processing 2026-02-14T12:53:47,495 copying build/lib/routilux/builtin_routines/text_processing/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/text_processing 2026-02-14T12:53:47,497 copying build/lib/routilux/builtin_routines/text_processing/result_extractor.py -> build/bdist.linux-armv7l/wheel/./routilux/builtin_routines/text_processing 2026-02-14T12:53:47,502 creating build/bdist.linux-armv7l/wheel/routilux/monitoring 2026-02-14T12:53:47,503 copying build/lib/routilux/monitoring/monitor_collector.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,505 copying build/lib/routilux/monitoring/breakpoint_condition.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,507 copying build/lib/routilux/monitoring/websocket_manager.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,510 copying build/lib/routilux/monitoring/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,512 copying build/lib/routilux/monitoring/runtime_registry.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,514 copying build/lib/routilux/monitoring/storage.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,516 copying build/lib/routilux/monitoring/debug_session.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,518 copying build/lib/routilux/monitoring/breakpoint_manager.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,520 copying build/lib/routilux/monitoring/monitor_service.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,522 copying build/lib/routilux/monitoring/execution_hooks.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,525 copying build/lib/routilux/monitoring/event_manager.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,527 copying build/lib/routilux/monitoring/registry.py -> build/bdist.linux-armv7l/wheel/./routilux/monitoring 2026-02-14T12:53:47,529 creating build/bdist.linux-armv7l/wheel/routilux/analysis 2026-02-14T12:53:47,530 copying build/lib/routilux/analysis/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis 2026-02-14T12:53:47,533 creating build/bdist.linux-armv7l/wheel/routilux/analysis/exporters 2026-02-14T12:53:47,534 copying build/lib/routilux/analysis/exporters/workflow_d2.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-02-14T12:53:47,536 copying build/lib/routilux/analysis/exporters/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-02-14T12:53:47,538 copying build/lib/routilux/analysis/exporters/base.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-02-14T12:53:47,540 copying build/lib/routilux/analysis/exporters/routine_markdown.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/exporters 2026-02-14T12:53:47,543 creating build/bdist.linux-armv7l/wheel/routilux/analysis/analyzers 2026-02-14T12:53:47,544 copying build/lib/routilux/analysis/analyzers/routine.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/analyzers 2026-02-14T12:53:47,546 copying build/lib/routilux/analysis/analyzers/__init__.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/analyzers 2026-02-14T12:53:47,548 copying build/lib/routilux/analysis/analyzers/workflow.py -> build/bdist.linux-armv7l/wheel/./routilux/analysis/analyzers 2026-02-14T12:53:47,551 creating build/bdist.linux-armv7l/wheel/playground 2026-02-14T12:53:47,553 creating build/bdist.linux-armv7l/wheel/playground/llm_agent_cross_host 2026-02-14T12:53:47,554 copying build/lib/playground/llm_agent_cross_host/llm_agent_routine.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-02-14T12:53:47,557 copying build/lib/playground/llm_agent_cross_host/enhanced_routine.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-02-14T12:53:47,559 copying build/lib/playground/llm_agent_cross_host/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-02-14T12:53:47,561 copying build/lib/playground/llm_agent_cross_host/mock_llm.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-02-14T12:53:47,563 copying build/lib/playground/llm_agent_cross_host/logger.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-02-14T12:53:47,565 copying build/lib/playground/llm_agent_cross_host/cross_host_demo.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-02-14T12:53:47,569 copying build/lib/playground/llm_agent_cross_host/mock_storage.py -> build/bdist.linux-armv7l/wheel/./playground/llm_agent_cross_host 2026-02-14T12:53:47,571 copying build/lib/playground/__init__.py -> build/bdist.linux-armv7l/wheel/./playground 2026-02-14T12:53:47,573 creating build/bdist.linux-armv7l/wheel/playground/analyzer_demo 2026-02-14T12:53:47,574 copying build/lib/playground/analyzer_demo/analyzer_demo.py -> build/bdist.linux-armv7l/wheel/./playground/analyzer_demo 2026-02-14T12:53:47,577 copying build/lib/playground/analyzer_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/analyzer_demo 2026-02-14T12:53:47,579 copying build/lib/playground/analyzer_demo/demo_routines.py -> build/bdist.linux-armv7l/wheel/./playground/analyzer_demo 2026-02-14T12:53:47,582 creating build/bdist.linux-armv7l/wheel/playground/concurrent_execution_demo 2026-02-14T12:53:47,583 copying build/lib/playground/concurrent_execution_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/concurrent_execution_demo 2026-02-14T12:53:47,584 copying build/lib/playground/concurrent_execution_demo/data_generator_routines.py -> build/bdist.linux-armv7l/wheel/./playground/concurrent_execution_demo 2026-02-14T12:53:47,587 copying build/lib/playground/concurrent_execution_demo/concurrent_demo.py -> build/bdist.linux-armv7l/wheel/./playground/concurrent_execution_demo 2026-02-14T12:53:47,590 creating build/bdist.linux-armv7l/wheel/playground/retry_serialization_demo 2026-02-14T12:53:47,591 copying build/lib/playground/retry_serialization_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-02-14T12:53:47,592 copying build/lib/playground/retry_serialization_demo/enhanced_retry_demo.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-02-14T12:53:47,595 copying build/lib/playground/retry_serialization_demo/failing_routine.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-02-14T12:53:47,597 copying build/lib/playground/retry_serialization_demo/showcase_scenarios.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-02-14T12:53:47,599 copying build/lib/playground/retry_serialization_demo/data_processing_routines.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-02-14T12:53:47,601 copying build/lib/playground/retry_serialization_demo/retry_demo.py -> build/bdist.linux-armv7l/wheel/./playground/retry_serialization_demo 2026-02-14T12:53:47,604 creating build/bdist.linux-armv7l/wheel/playground/misconfiguration_demo 2026-02-14T12:53:47,605 copying build/lib/playground/misconfiguration_demo/__init__.py -> build/bdist.linux-armv7l/wheel/./playground/misconfiguration_demo 2026-02-14T12:53:47,607 copying build/lib/playground/misconfiguration_demo/misconfiguration_demo.py -> build/bdist.linux-armv7l/wheel/./playground/misconfiguration_demo 2026-02-14T12:53:47,610 creating build/bdist.linux-armv7l/wheel/tools 2026-02-14T12:53:47,611 copying build/lib/tools/analyze_codebase_ast.py -> build/bdist.linux-armv7l/wheel/./tools 2026-02-14T12:53:47,614 creating build/bdist.linux-armv7l/wheel/scripts 2026-02-14T12:53:47,615 copying build/lib/scripts/generate_release_notes.py -> build/bdist.linux-armv7l/wheel/./scripts 2026-02-14T12:53:47,617 running install_egg_info 2026-02-14T12:53:47,623 Copying routilux.egg-info to build/bdist.linux-armv7l/wheel/./routilux-0.15.1-py3.11.egg-info 2026-02-14T12:53:47,635 running install_scripts 2026-02-14T12:53:47,648 creating build/bdist.linux-armv7l/wheel/routilux-0.15.1.dist-info/WHEEL 2026-02-14T12:53:47,651 creating '/tmp/pip-wheel-e9vthojd/.tmp-neegqwrk/routilux-0.15.1-py3-none-any.whl' and adding 'build/bdist.linux-armv7l/wheel' to it 2026-02-14T12:53:47,653 adding 'playground/__init__.py' 2026-02-14T12:53:47,655 adding 'playground/analyzer_demo/__init__.py' 2026-02-14T12:53:47,657 adding 'playground/analyzer_demo/analyzer_demo.py' 2026-02-14T12:53:47,659 adding 'playground/analyzer_demo/demo_routines.py' 2026-02-14T12:53:47,661 adding 'playground/concurrent_execution_demo/__init__.py' 2026-02-14T12:53:47,664 adding 'playground/concurrent_execution_demo/concurrent_demo.py' 2026-02-14T12:53:47,666 adding 'playground/concurrent_execution_demo/data_generator_routines.py' 2026-02-14T12:53:47,668 adding 'playground/llm_agent_cross_host/__init__.py' 2026-02-14T12:53:47,670 adding 'playground/llm_agent_cross_host/cross_host_demo.py' 2026-02-14T12:53:47,672 adding 'playground/llm_agent_cross_host/enhanced_routine.py' 2026-02-14T12:53:47,673 adding 'playground/llm_agent_cross_host/llm_agent_routine.py' 2026-02-14T12:53:47,675 adding 'playground/llm_agent_cross_host/logger.py' 2026-02-14T12:53:47,676 adding 'playground/llm_agent_cross_host/mock_llm.py' 2026-02-14T12:53:47,677 adding 'playground/llm_agent_cross_host/mock_storage.py' 2026-02-14T12:53:47,679 adding 'playground/misconfiguration_demo/__init__.py' 2026-02-14T12:53:47,681 adding 'playground/misconfiguration_demo/misconfiguration_demo.py' 2026-02-14T12:53:47,683 adding 'playground/retry_serialization_demo/__init__.py' 2026-02-14T12:53:47,684 adding 'playground/retry_serialization_demo/data_processing_routines.py' 2026-02-14T12:53:47,688 adding 'playground/retry_serialization_demo/enhanced_retry_demo.py' 2026-02-14T12:53:47,690 adding 'playground/retry_serialization_demo/failing_routine.py' 2026-02-14T12:53:47,692 adding 'playground/retry_serialization_demo/retry_demo.py' 2026-02-14T12:53:47,694 adding 'playground/retry_serialization_demo/showcase_scenarios.py' 2026-02-14T12:53:47,696 adding 'routilux/__init__.py' 2026-02-14T12:53:47,698 adding 'routilux/decorators.py' 2026-02-14T12:53:47,699 adding 'routilux/exceptions.py' 2026-02-14T12:53:47,701 adding 'routilux/metrics.py' 2026-02-14T12:53:47,703 adding 'routilux/simple.py' 2026-02-14T12:53:47,704 adding 'routilux/validators.py' 2026-02-14T12:53:47,706 adding 'routilux/analysis/__init__.py' 2026-02-14T12:53:47,707 adding 'routilux/analysis/analyzers/__init__.py' 2026-02-14T12:53:47,709 adding 'routilux/analysis/analyzers/routine.py' 2026-02-14T12:53:47,713 adding 'routilux/analysis/analyzers/workflow.py' 2026-02-14T12:53:47,715 adding 'routilux/analysis/exporters/__init__.py' 2026-02-14T12:53:47,716 adding 'routilux/analysis/exporters/base.py' 2026-02-14T12:53:47,718 adding 'routilux/analysis/exporters/routine_markdown.py' 2026-02-14T12:53:47,719 adding 'routilux/analysis/exporters/workflow_d2.py' 2026-02-14T12:53:47,721 adding 'routilux/builtin_routines/__init__.py' 2026-02-14T12:53:47,723 adding 'routilux/builtin_routines/control_flow/__init__.py' 2026-02-14T12:53:47,725 adding 'routilux/builtin_routines/control_flow/aggregator.py' 2026-02-14T12:53:47,726 adding 'routilux/builtin_routines/control_flow/batcher.py' 2026-02-14T12:53:47,729 adding 'routilux/builtin_routines/control_flow/conditional_router.py' 2026-02-14T12:53:47,730 adding 'routilux/builtin_routines/control_flow/debouncer.py' 2026-02-14T12:53:47,732 adding 'routilux/builtin_routines/control_flow/splitter.py' 2026-02-14T12:53:47,734 adding 'routilux/builtin_routines/data_processing/__init__.py' 2026-02-14T12:53:47,735 adding 'routilux/builtin_routines/data_processing/data_transformer.py' 2026-02-14T12:53:47,737 adding 'routilux/builtin_routines/data_processing/data_validator.py' 2026-02-14T12:53:47,739 adding 'routilux/builtin_routines/data_processing/filter.py' 2026-02-14T12:53:47,741 adding 'routilux/builtin_routines/data_processing/mapper.py' 2026-02-14T12:53:47,743 adding 'routilux/builtin_routines/data_processing/schema_validator.py' 2026-02-14T12:53:47,744 adding 'routilux/builtin_routines/reliability/__init__.py' 2026-02-14T12:53:47,746 adding 'routilux/builtin_routines/reliability/retry_handler.py' 2026-02-14T12:53:47,748 adding 'routilux/builtin_routines/text_processing/__init__.py' 2026-02-14T12:53:47,751 adding 'routilux/builtin_routines/text_processing/result_extractor.py' 2026-02-14T12:53:47,753 adding 'routilux/builtin_routines/utils/__init__.py' 2026-02-14T12:53:47,755 adding 'routilux/cli/__init__.py' 2026-02-14T12:53:47,756 adding 'routilux/cli/config.py' 2026-02-14T12:53:47,757 adding 'routilux/cli/decorators.py' 2026-02-14T12:53:47,759 adding 'routilux/cli/discovery.py' 2026-02-14T12:53:47,760 adding 'routilux/cli/main.py' 2026-02-14T12:53:47,762 adding 'routilux/cli/server_wrapper.py' 2026-02-14T12:53:47,764 adding 'routilux/cli/commands/__init__.py' 2026-02-14T12:53:47,766 adding 'routilux/cli/commands/completion.py' 2026-02-14T12:53:47,768 adding 'routilux/cli/commands/init.py' 2026-02-14T12:53:47,769 adding 'routilux/cli/commands/job.py' 2026-02-14T12:53:47,771 adding 'routilux/cli/commands/list.py' 2026-02-14T12:53:47,773 adding 'routilux/cli/commands/run.py' 2026-02-14T12:53:47,774 adding 'routilux/cli/commands/server.py' 2026-02-14T12:53:47,776 adding 'routilux/cli/commands/validate.py' 2026-02-14T12:53:47,778 adding 'routilux/core/__init__.py' 2026-02-14T12:53:47,779 adding 'routilux/core/connection.py' 2026-02-14T12:53:47,782 adding 'routilux/core/context.py' 2026-02-14T12:53:47,784 adding 'routilux/core/error.py' 2026-02-14T12:53:47,786 adding 'routilux/core/event.py' 2026-02-14T12:53:47,788 adding 'routilux/core/executor.py' 2026-02-14T12:53:47,791 adding 'routilux/core/flow.py' 2026-02-14T12:53:47,793 adding 'routilux/core/hooks.py' 2026-02-14T12:53:47,794 adding 'routilux/core/interfaces.py' 2026-02-14T12:53:47,796 adding 'routilux/core/manager.py' 2026-02-14T12:53:47,797 adding 'routilux/core/migration.py' 2026-02-14T12:53:47,800 adding 'routilux/core/output.py' 2026-02-14T12:53:47,802 adding 'routilux/core/registry.py' 2026-02-14T12:53:47,804 adding 'routilux/core/routine.py' 2026-02-14T12:53:47,808 adding 'routilux/core/runtime.py' 2026-02-14T12:53:47,810 adding 'routilux/core/slot.py' 2026-02-14T12:53:47,812 adding 'routilux/core/status.py' 2026-02-14T12:53:47,813 adding 'routilux/core/task.py' 2026-02-14T12:53:47,815 adding 'routilux/core/worker.py' 2026-02-14T12:53:47,817 adding 'routilux/monitoring/__init__.py' 2026-02-14T12:53:47,819 adding 'routilux/monitoring/breakpoint_condition.py' 2026-02-14T12:53:47,820 adding 'routilux/monitoring/breakpoint_manager.py' 2026-02-14T12:53:47,822 adding 'routilux/monitoring/debug_session.py' 2026-02-14T12:53:47,824 adding 'routilux/monitoring/event_manager.py' 2026-02-14T12:53:47,826 adding 'routilux/monitoring/execution_hooks.py' 2026-02-14T12:53:47,829 adding 'routilux/monitoring/monitor_collector.py' 2026-02-14T12:53:47,831 adding 'routilux/monitoring/monitor_service.py' 2026-02-14T12:53:47,833 adding 'routilux/monitoring/registry.py' 2026-02-14T12:53:47,834 adding 'routilux/monitoring/runtime_registry.py' 2026-02-14T12:53:47,836 adding 'routilux/monitoring/storage.py' 2026-02-14T12:53:47,838 adding 'routilux/monitoring/websocket_manager.py' 2026-02-14T12:53:47,840 adding 'routilux/server/__init__.py' 2026-02-14T12:53:47,841 adding 'routilux/server/audit.py' 2026-02-14T12:53:47,843 adding 'routilux/server/config.py' 2026-02-14T12:53:47,844 adding 'routilux/server/dependencies.py' 2026-02-14T12:53:47,845 adding 'routilux/server/errors.py' 2026-02-14T12:53:47,847 adding 'routilux/server/main.py' 2026-02-14T12:53:47,849 adding 'routilux/server/security.py' 2026-02-14T12:53:47,851 adding 'routilux/server/validators.py' 2026-02-14T12:53:47,853 adding 'routilux/server/middleware/auth.py' 2026-02-14T12:53:47,854 adding 'routilux/server/middleware/error_handler.py' 2026-02-14T12:53:47,856 adding 'routilux/server/middleware/rate_limit.py' 2026-02-14T12:53:47,857 adding 'routilux/server/models/__init__.py' 2026-02-14T12:53:47,859 adding 'routilux/server/models/breakpoint.py' 2026-02-14T12:53:47,860 adding 'routilux/server/models/debug.py' 2026-02-14T12:53:47,861 adding 'routilux/server/models/error.py' 2026-02-14T12:53:47,863 adding 'routilux/server/models/execute.py' 2026-02-14T12:53:47,865 adding 'routilux/server/models/flow.py' 2026-02-14T12:53:47,866 adding 'routilux/server/models/job.py' 2026-02-14T12:53:47,868 adding 'routilux/server/models/monitor.py' 2026-02-14T12:53:47,869 adding 'routilux/server/models/object.py' 2026-02-14T12:53:47,871 adding 'routilux/server/models/runtime.py' 2026-02-14T12:53:47,872 adding 'routilux/server/models/worker.py' 2026-02-14T12:53:47,874 adding 'routilux/server/routes/__init__.py' 2026-02-14T12:53:47,876 adding 'routilux/server/routes/breakpoints.py' 2026-02-14T12:53:47,878 adding 'routilux/server/routes/discovery.py' 2026-02-14T12:53:47,880 adding 'routilux/server/routes/execute.py' 2026-02-14T12:53:47,885 adding 'routilux/server/routes/flows.py' 2026-02-14T12:53:47,887 adding 'routilux/server/routes/health.py' 2026-02-14T12:53:47,892 adding 'routilux/server/routes/jobs.py' 2026-02-14T12:53:47,896 adding 'routilux/server/routes/objects.py' 2026-02-14T12:53:47,898 adding 'routilux/server/routes/runtimes.py' 2026-02-14T12:53:47,905 adding 'routilux/server/routes/websocket.py' 2026-02-14T12:53:47,913 adding 'routilux/server/routes/workers.py' 2026-02-14T12:53:47,916 adding 'routilux/server/storage/__init__.py' 2026-02-14T12:53:47,918 adding 'routilux/server/storage/base.py' 2026-02-14T12:53:47,920 adding 'routilux/server/storage/memory.py' 2026-02-14T12:53:47,923 adding 'routilux/tools/__init__.py' 2026-02-14T12:53:47,925 adding 'routilux/tools/analysis/__init__.py' 2026-02-14T12:53:47,927 adding 'routilux/tools/analysis/analyzers/__init__.py' 2026-02-14T12:53:47,930 adding 'routilux/tools/analysis/analyzers/routine.py' 2026-02-14T12:53:47,936 adding 'routilux/tools/analysis/analyzers/workflow.py' 2026-02-14T12:53:47,938 adding 'routilux/tools/analysis/exporters/__init__.py' 2026-02-14T12:53:47,940 adding 'routilux/tools/analysis/exporters/base.py' 2026-02-14T12:53:47,942 adding 'routilux/tools/analysis/exporters/routine_markdown.py' 2026-02-14T12:53:47,944 adding 'routilux/tools/analysis/exporters/workflow_d2.py' 2026-02-14T12:53:47,947 adding 'routilux/tools/dsl/__init__.py' 2026-02-14T12:53:47,949 adding 'routilux/tools/dsl/loader.py' 2026-02-14T12:53:47,951 adding 'routilux/tools/dsl/spec_parser.py' 2026-02-14T12:53:47,953 adding 'routilux/tools/factory/__init__.py' 2026-02-14T12:53:47,955 adding 'routilux/tools/factory/cloning.py' 2026-02-14T12:53:47,960 adding 'routilux/tools/factory/factory.py' 2026-02-14T12:53:47,962 adding 'routilux/tools/factory/metadata.py' 2026-02-14T12:53:47,964 adding 'routilux/tools/testing/__init__.py' 2026-02-14T12:53:47,966 adding 'routilux/tools/testing/routine_tester.py' 2026-02-14T12:53:47,971 adding 'routilux-0.15.1.dist-info/licenses/LICENSE' 2026-02-14T12:53:47,974 adding 'scripts/generate_release_notes.py' 2026-02-14T12:53:47,978 adding 'tools/analyze_codebase_ast.py' 2026-02-14T12:53:47,982 adding 'routilux-0.15.1.dist-info/METADATA' 2026-02-14T12:53:47,983 adding 'routilux-0.15.1.dist-info/WHEEL' 2026-02-14T12:53:47,985 adding 'routilux-0.15.1.dist-info/entry_points.txt' 2026-02-14T12:53:47,986 adding 'routilux-0.15.1.dist-info/top_level.txt' 2026-02-14T12:53:47,990 adding 'routilux-0.15.1.dist-info/RECORD' 2026-02-14T12:53:48,000 removing build/bdist.linux-armv7l/wheel 2026-02-14T12:53:48,141 Building wheel for routilux (pyproject.toml): finished with status 'done' 2026-02-14T12:53:48,150 Created wheel for routilux: filename=routilux-0.15.1-py3-none-any.whl size=375337 sha256=33e01818b597514b22ffac98495bab0cb08449f13180f3508780678b2fc255d5 2026-02-14T12:53:48,152 Stored in directory: /tmp/pip-ephem-wheel-cache-gvx6oc1l/wheels/76/a9/f6/eee697b6fd808810665abca8ee44f340a841f8faa1b27a0be6 2026-02-14T12:53:48,171 Successfully built routilux 2026-02-14T12:53:48,183 Removed build tracker: '/tmp/pip-build-tracker-qw_lrl2s'