Exporting environment variables Exporting CI Exporting DISPLAY Exporting PAGER Exporting RUBY_VERSION Exporting SEMAPHORE Exporting SEMAPHORE_AGENT_MACHINE_ENVIRONMENT_TYPE Exporting SEMAPHORE_AGENT_MACHINE_OS_IMAGE Exporting SEMAPHORE_AGENT_MACHINE_TYPE Exporting SEMAPHORE_ARTIFACT_TOKEN Exporting SEMAPHORE_CACHE_ARCHIVE_METHOD Exporting SEMAPHORE_CACHE_BACKEND Exporting SEMAPHORE_CACHE_PRIVATE_KEY_PATH Exporting SEMAPHORE_CACHE_URL Exporting SEMAPHORE_CACHE_USERNAME Exporting SEMAPHORE_GIT_BRANCH Exporting SEMAPHORE_GIT_COMMIT_RANGE Exporting SEMAPHORE_GIT_DIR Exporting SEMAPHORE_GIT_PROVIDER Exporting SEMAPHORE_GIT_REF Exporting SEMAPHORE_GIT_REF_TYPE Exporting SEMAPHORE_GIT_REPO_NAME Exporting SEMAPHORE_GIT_REPO_SLUG Exporting SEMAPHORE_GIT_SHA Exporting SEMAPHORE_GIT_URL Exporting SEMAPHORE_GIT_WORKING_BRANCH Exporting SEMAPHORE_JOB_ID Exporting SEMAPHORE_JOB_NAME Exporting SEMAPHORE_ORGANIZATION_URL Exporting SEMAPHORE_PIPELINE_0_ARTEFACT_ID Exporting SEMAPHORE_PIPELINE_ARTEFACT_ID Exporting SEMAPHORE_PIPELINE_ID Exporting SEMAPHORE_PIPELINE_PROMOTED_BY Exporting SEMAPHORE_PIPELINE_PROMOTION Exporting SEMAPHORE_PIPELINE_RERUN Exporting SEMAPHORE_PROJECT_ID Exporting SEMAPHORE_PROJECT_NAME Exporting SEMAPHORE_TOOLBOX_METRICS_ENABLED Exporting SEMAPHORE_WORKFLOW_HOOK_SOURCE Exporting SEMAPHORE_WORKFLOW_ID Exporting SEMAPHORE_WORKFLOW_NUMBER Exporting SEMAPHORE_WORKFLOW_RERUN Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY_API Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY_HOOK Exporting SEMAPHORE_WORKFLOW_TRIGGERED_BY_SCHEDULE Exporting SSH_PRIVATE_KEY_PATH Exporting TERM Injecting Files Injecting /Users/semaphore/.ssh/semaphore_cache_key with file mode 0600 Injecting /Users/semaphore/.ssh/id_rsa with file mode 0600 Setting up the Semaphore toolbox Running: dowloadPath=$(curl -s -L --retry 5 http://packages.semaphoreci.com/toolbox/darwin) && echo $dowloadPath && curl -s -L --retry 5 --connect-timeout 3 $dowloadPath -o /tmp/toolbox.tar && tar -xvf /tmp/toolbox.tar && mv toolbox ~/.toolbox && bash ~/.toolbox/install-toolbox && source ~/.toolbox/toolbox && echo 'source ~/.toolbox/toolbox' >> ~/.bash_profile && if [ -f /etc/init.d/xvfb ]; then /etc/init.d/xvfb start; fi https://github.com/semaphoreci/toolbox/releases/download/v1.19.40/darwin.tar x toolbox/ x toolbox/sem-semantic-release x toolbox/sem-version x toolbox/sem-install x toolbox/sem-service-check-params x toolbox/sem-service x toolbox/install-package x toolbox/libchecksum x toolbox/toolbox x toolbox/sem-dockerize x toolbox/README.md x toolbox/install-toolbox x toolbox/libcheckout x toolbox/cache x toolbox/enetwork x toolbox/retry x toolbox/test-results x toolbox/system-metrics-collector x toolbox/Dockerfile.dev x toolbox/ssh-session-cli x toolbox/artifact x toolbox/sem-context retry installed ssh-session-cli installed cache installed sem-context installed sem-service installed sem-dockerize installed sem-service-check-params installed sem-semantic-release installed install-package installed Installing the artifacts CLI artifacts installed Installing the test results CLI test-results installed Starting an ssh-agent Running: eval `ssh-agent` && echo 'eval $(ssh-agent) >/dev/null' >> ~/.bash_profile && echo 'yes' > /tmp/sempahore-user-commands-have-started Agent pid 986 Connecting to cache Running: (ssh-keyscan -p 29920 -H 46.4.218.107 >> /Users/semaphore/.ssh/known_hosts || true) && ssh-add /Users/semaphore/.ssh/semaphore_cache_key # 46.4.218.107:29920 SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.7 # 46.4.218.107:29920 SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.7 # 46.4.218.107:29920 SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.7 # 46.4.218.107:29920 SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.7 # 46.4.218.107:29920 SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.7 Identity added: /Users/semaphore/.ssh/semaphore_cache_key (/Users/semaphore/.ssh/semaphore_cache_key) checkout Performing shallow clone with depth: 50 Cloning into 'amalgalite'... Warning: Permanently added 'github.com' (ED25519) to the list of known hosts. remote: Enumerating objects: 661, done. remote: Counting objects: 0% (1/661) remote: Counting objects: 1% (7/661) remote: Counting objects: 2% (14/661) remote: Counting objects: 3% (20/661) remote: Counting objects: 4% (27/661) remote: Counting objects: 5% (34/661) remote: Counting objects: 6% (40/661) remote: Counting objects: 7% (47/661) remote: Counting objects: 8% (53/661) remote: Counting objects: 9% (60/661) remote: Counting objects: 10% (67/661) remote: Counting objects: 11% (73/661) remote: Counting objects: 12% (80/661) remote: Counting objects: 13% (86/661) remote: Counting objects: 14% (93/661) remote: Counting objects: 15% (100/661) remote: Counting objects: 16% (106/661) remote: Counting objects: 17% (113/661) remote: Counting objects: 18% (119/661) remote: Counting objects: 19% (126/661) remote: Counting objects: 20% (133/661) remote: Counting objects: 21% (139/661) remote: Counting objects: 22% (146/661) remote: Counting objects: 23% (153/661) remote: Counting objects: 24% (159/661) remote: Counting objects: 25% (166/661) remote: Counting objects: 26% (172/661) remote: Counting objects: 27% (179/661) remote: Counting objects: 28% (186/661) remote: Counting objects: 29% (192/661) remote: Counting objects: 30% (199/661) remote: Counting objects: 31% (205/661) remote: Counting objects: 32% (212/661) remote: Counting objects: 33% (219/661) remote: Counting objects: 34% (225/661) remote: Counting objects: 35% (232/661) remote: Counting objects: 36% (238/661) remote: Counting objects: 37% (245/661) remote: Counting objects: 38% (252/661) remote: Counting objects: 39% (258/661) remote: Counting objects: 40% (265/661) remote: Counting objects: 41% (272/661) remote: Counting objects: 42% (278/661) remote: Counting objects: 43% (285/661) remote: Counting objects: 44% (291/661) remote: Counting objects: 45% (298/661) remote: Counting objects: 46% (305/661) remote: Counting objects: 47% (311/661) remote: Counting objects: 48% (318/661) remote: Counting objects: 49% (324/661) remote: Counting objects: 50% (331/661) remote: Counting objects: 51% (338/661) remote: Counting objects: 52% (344/661) remote: Counting objects: 53% (351/661) remote: Counting objects: 54% (357/661) remote: Counting objects: 55% (364/661) remote: Counting objects: 56% (371/661) remote: Counting objects: 57% (377/661) remote: Counting objects: 58% (384/661) remote: Counting objects: 59% (390/661) remote: Counting objects: 60% (397/661) remote: Counting objects: 61% (404/661) remote: Counting objects: 62% (410/661) remote: Counting objects: 63% (417/661) remote: Counting objects: 64% (424/661) remote: Counting objects: 65% (430/661) remote: Counting objects: 66% (437/661) remote: Counting objects: 67% (443/661) remote: Counting objects: 68% (450/661) remote: Counting objects: 69% (457/661) remote: Counting objects: 70% (463/661) remote: Counting objects: 71% (470/661) remote: Counting objects: 72% (476/661) remote: Counting objects: 73% (483/661) remote: Counting objects: 74% (490/661) remote: Counting objects: 75% (496/661) remote: Counting objects: 76% (503/661) remote: Counting objects: 77% (509/661) remote: Counting objects: 78% (516/661) remote: Counting objects: 79% (523/661) remote: Counting objects: 80% (529/661) remote: Counting objects: 81% (536/661) remote: Counting objects: 82% (543/661) remote: Counting objects: 83% (549/661) remote: Counting objects: 84% (556/661) remote: Counting objects: 85% (562/661) remote: Counting objects: 86% (569/661) remote: Counting objects: 87% (576/661) remote: Counting objects: 88% (582/661) remote: Counting objects: 89% (589/661) remote: Counting objects: 90% (595/661) remote: Counting objects: 91% (602/661) remote: Counting objects: 92% (609/661) remote: Counting objects: 93% (615/661) remote: Counting objects: 94% (622/661) remote: Counting objects: 95% (628/661) remote: Counting objects: 96% (635/661) remote: Counting objects: 97% (642/661) remote: Counting objects: 98% (648/661) remote: Counting objects: 99% (655/661) remote: Counting objects: 100% (661/661) remote: Counting objects: 100% (661/661), done. remote: Compressing objects: 0% (1/357) remote: Compressing objects: 1% (4/357) remote: Compressing objects: 2% (8/357) remote: Compressing objects: 3% (11/357) remote: Compressing objects: 4% (15/357) remote: Compressing objects: 5% (18/357) remote: Compressing objects: 6% (22/357) remote: Compressing objects: 7% (25/357) remote: Compressing objects: 8% (29/357) remote: Compressing objects: 9% (33/357) remote: Compressing objects: 10% (36/357) remote: Compressing objects: 11% (40/357) remote: Compressing objects: 12% (43/357) remote: Compressing objects: 13% (47/357) remote: Compressing objects: 14% (50/357) remote: Compressing objects: 15% (54/357) remote: Compressing objects: 16% (58/357) remote: Compressing objects: 17% (61/357) remote: Compressing objects: 18% (65/357) remote: Compressing objects: 19% (68/357) remote: Compressing objects: 20% (72/357) remote: Compressing objects: 21% (75/357) remote: Compressing objects: 22% (79/357) remote: Compressing objects: 23% (83/357) remote: Compressing objects: 24% (86/357) remote: Compressing objects: 25% (90/357) remote: Compressing objects: 26% (93/357) remote: Compressing objects: 27% (97/357) remote: Compressing objects: 28% (100/357) remote: Compressing objects: 29% (104/357) remote: Compressing objects: 30% (108/357) remote: Compressing objects: 31% (111/357) remote: Compressing objects: 32% (115/357) remote: Compressing objects: 33% (118/357) remote: Compressing objects: 34% (122/357) remote: Compressing objects: 35% (125/357) remote: Compressing objects: 36% (129/357) remote: Compressing objects: 37% (133/357) remote: Compressing objects: 38% (136/357) remote: Compressing objects: 39% (140/357) remote: Compressing objects: 40% (143/357) remote: Compressing objects: 41% (147/357) remote: Compressing objects: 42% (150/357) remote: Compressing objects: 43% (154/357) remote: Compressing objects: 44% (158/357) remote: Compressing objects: 45% (161/357) remote: Compressing objects: 46% (165/357) remote: Compressing objects: 47% (168/357) remote: Compressing objects: 48% (172/357) remote: Compressing objects: 49% (175/357) remote: Compressing objects: 50% (179/357) remote: Compressing objects: 51% (183/357) remote: Compressing objects: 52% (186/357) remote: Compressing objects: 53% (190/357) remote: Compressing objects: 54% (193/357) remote: Compressing objects: 55% (197/357) remote: Compressing objects: 56% (200/357) remote: Compressing objects: 57% (204/357) remote: Compressing objects: 58% (208/357) remote: Compressing objects: 59% (211/357) remote: Compressing objects: 60% (215/357) remote: Compressing objects: 61% (218/357) remote: Compressing objects: 62% (222/357) remote: Compressing objects: 63% (225/357) remote: Compressing objects: 64% (229/357) remote: Compressing objects: 65% (233/357) remote: Compressing objects: 66% (236/357) remote: Compressing objects: 67% (240/357) remote: Compressing objects: 68% (243/357) remote: Compressing objects: 69% (247/357) remote: Compressing objects: 70% (250/357) remote: Compressing objects: 71% (254/357) remote: Compressing objects: 72% (258/357) remote: Compressing objects: 73% (261/357) remote: Compressing objects: 74% (265/357) remote: Compressing objects: 75% (268/357) remote: Compressing objects: 76% (272/357) remote: Compressing objects: 77% (275/357) remote: Compressing objects: 78% (279/357) remote: Compressing objects: 79% (283/357) remote: Compressing objects: 80% (286/357) remote: Compressing objects: 81% (290/357) remote: Compressing objects: 82% (293/357) remote: Compressing objects: 83% (297/357) remote: Compressing objects: 84% (300/357) remote: Compressing objects: 85% (304/357) remote: Compressing objects: 86% (308/357) remote: Compressing objects: 87% (311/357) remote: Compressing objects: 88% (315/357) remote: Compressing objects: 89% (318/357) remote: Compressing objects: 90% (322/357) remote: Compressing objects: 91% (325/357) remote: Compressing objects: 92% (329/357) remote: Compressing objects: 93% (333/357) remote: Compressing objects: 94% (336/357) remote: Compressing objects: 95% (340/357) remote: Compressing objects: 96% (343/357) remote: Compressing objects: 97% (347/357) remote: Compressing objects: 98% (350/357) remote: Compressing objects: 99% (354/357) remote: Compressing objects: 100% (357/357) remote: Compressing objects: 100% (357/357), done. Receiving objects: 0% (1/661) Receiving objects: 1% (7/661) Receiving objects: 2% (14/661) Receiving objects: 3% (20/661) Receiving objects: 4% (27/661) Receiving objects: 5% (34/661) Receiving objects: 6% (40/661) Receiving objects: 7% (47/661) Receiving objects: 8% (53/661) Receiving objects: 9% (60/661) Receiving objects: 10% (67/661) Receiving objects: 11% (73/661) Receiving objects: 12% (80/661) Receiving objects: 13% (86/661) Receiving objects: 14% (93/661) Receiving objects: 15% (100/661) Receiving objects: 16% (106/661) Receiving objects: 17% (113/661) Receiving objects: 18% (119/661) Receiving objects: 19% (126/661) Receiving objects: 20% (133/661) Receiving objects: 21% (139/661) Receiving objects: 22% (146/661) Receiving objects: 23% (153/661) Receiving objects: 24% (159/661) Receiving objects: 25% (166/661) Receiving objects: 26% (172/661) Receiving objects: 27% (179/661) Receiving objects: 28% (186/661) Receiving objects: 29% (192/661) Receiving objects: 30% (199/661) Receiving objects: 31% (205/661) Receiving objects: 32% (212/661) Receiving objects: 33% (219/661) Receiving objects: 34% (225/661) Receiving objects: 35% (232/661) Receiving objects: 36% (238/661) Receiving objects: 37% (245/661) Receiving objects: 38% (252/661) Receiving objects: 39% (258/661) Receiving objects: 40% (265/661) Receiving objects: 41% (272/661) Receiving objects: 42% (278/661) Receiving objects: 43% (285/661) Receiving objects: 44% (291/661) Receiving objects: 45% (298/661) Receiving objects: 46% (305/661) Receiving objects: 47% (311/661) Receiving objects: 48% (318/661) Receiving objects: 49% (324/661) Receiving objects: 50% (331/661) Receiving objects: 51% (338/661) Receiving objects: 52% (344/661) Receiving objects: 53% (351/661) Receiving objects: 54% (357/661) Receiving objects: 55% (364/661) Receiving objects: 56% (371/661) Receiving objects: 57% (377/661) Receiving objects: 58% (384/661) Receiving objects: 59% (390/661) Receiving objects: 60% (397/661) Receiving objects: 61% (404/661) Receiving objects: 62% (410/661) Receiving objects: 63% (417/661) Receiving objects: 64% (424/661) Receiving objects: 65% (430/661) Receiving objects: 66% (437/661) Receiving objects: 67% (443/661) Receiving objects: 68% (450/661) Receiving objects: 69% (457/661) Receiving objects: 70% (463/661) Receiving objects: 71% (470/661) Receiving objects: 72% (476/661) Receiving objects: 73% (483/661) Receiving objects: 74% (490/661) Receiving objects: 75% (496/661) Receiving objects: 76% (503/661) Receiving objects: 77% (509/661) Receiving objects: 78% (516/661) Receiving objects: 79% (523/661) Receiving objects: 80% (529/661) Receiving objects: 81% (536/661) Receiving objects: 82% (543/661) Receiving objects: 83% (549/661) Receiving objects: 84% (556/661) Receiving objects: 85% (562/661) Receiving objects: 86% (569/661) remote: Total 661 (delta 314), reused 506 (delta 241), pack-reused 0 Receiving objects: 87% (576/661) Receiving objects: 88% (582/661) Receiving objects: 89% (589/661) Receiving objects: 90% (595/661) Receiving objects: 91% (602/661) Receiving objects: 92% (609/661) Receiving objects: 93% (615/661) Receiving objects: 94% (622/661) Receiving objects: 95% (628/661) Receiving objects: 96% (635/661) Receiving objects: 97% (642/661) Receiving objects: 98% (648/661) Receiving objects: 99% (655/661) Receiving objects: 100% (661/661) Receiving objects: 100% (661/661), 3.67 MiB | 25.07 MiB/s, done. Resolving deltas: 0% (0/314) Resolving deltas: 1% (4/314) Resolving deltas: 2% (7/314) Resolving deltas: 3% (10/314) Resolving deltas: 4% (13/314) Resolving deltas: 5% (16/314) Resolving deltas: 6% (19/314) Resolving deltas: 7% (22/314) Resolving deltas: 8% (26/314) Resolving deltas: 9% (29/314) Resolving deltas: 10% (32/314) Resolving deltas: 11% (35/314) Resolving deltas: 12% (39/314) Resolving deltas: 13% (41/314) Resolving deltas: 14% (44/314) Resolving deltas: 15% (48/314) Resolving deltas: 16% (51/314) Resolving deltas: 17% (54/314) Resolving deltas: 18% (57/314) Resolving deltas: 19% (60/314) Resolving deltas: 20% (63/314) Resolving deltas: 21% (66/314) Resolving deltas: 22% (70/314) Resolving deltas: 23% (74/314) Resolving deltas: 24% (77/314) Resolving deltas: 25% (79/314) Resolving deltas: 26% (82/314) Resolving deltas: 27% (85/314) Resolving deltas: 28% (88/314) Resolving deltas: 29% (92/314) Resolving deltas: 30% (95/314) Resolving deltas: 31% (98/314) Resolving deltas: 32% (101/314) Resolving deltas: 33% (104/314) Resolving deltas: 34% (107/314) Resolving deltas: 35% (111/314) Resolving deltas: 36% (114/314) Resolving deltas: 37% (117/314) Resolving deltas: 38% (120/314) Resolving deltas: 39% (123/314) Resolving deltas: 40% (126/314) Resolving deltas: 41% (129/314) Resolving deltas: 42% (132/314) Resolving deltas: 43% (136/314) Resolving deltas: 44% (140/314) Resolving deltas: 45% (143/314) Resolving deltas: 46% (147/314) Resolving deltas: 47% (148/314) Resolving deltas: 48% (151/314) Resolving deltas: 49% (154/314) Resolving deltas: 50% (157/314) Resolving deltas: 51% (161/314) Resolving deltas: 52% (164/314) Resolving deltas: 53% (167/314) Resolving deltas: 54% (170/314) Resolving deltas: 55% (174/314) Resolving deltas: 56% (176/314) Resolving deltas: 57% (179/314) Resolving deltas: 58% (183/314) Resolving deltas: 59% (186/314) Resolving deltas: 60% (189/314) Resolving deltas: 61% (192/314) Resolving deltas: 62% (195/314) Resolving deltas: 63% (198/314) Resolving deltas: 64% (202/314) Resolving deltas: 65% (205/314) Resolving deltas: 66% (208/314) Resolving deltas: 67% (211/314) Resolving deltas: 68% (214/314) Resolving deltas: 69% (217/314) Resolving deltas: 70% (220/314) Resolving deltas: 71% (224/314) Resolving deltas: 72% (227/314) Resolving deltas: 73% (230/314) Resolving deltas: 74% (233/314) Resolving deltas: 75% (237/314) Resolving deltas: 76% (239/314) Resolving deltas: 77% (242/314) Resolving deltas: 78% (245/314) Resolving deltas: 79% (249/314) Resolving deltas: 80% (252/314) Resolving deltas: 81% (255/314) Resolving deltas: 82% (258/314) Resolving deltas: 83% (261/314) Resolving deltas: 84% (264/314) Resolving deltas: 85% (267/314) Resolving deltas: 86% (271/314) Resolving deltas: 87% (274/314) Resolving deltas: 88% (277/314) Resolving deltas: 89% (280/314) Resolving deltas: 90% (283/314) Resolving deltas: 91% (286/314) Resolving deltas: 92% (289/314) Resolving deltas: 93% (293/314) Resolving deltas: 94% (296/314) Resolving deltas: 95% (299/314) Resolving deltas: 96% (302/314) Resolving deltas: 97% (305/314) Resolving deltas: 98% (308/314) Resolving deltas: 99% (311/314) Resolving deltas: 100% (314/314) Resolving deltas: 100% (314/314), done. HEAD is now at a3836b2 Merge branch 'swistak35-main' git -C ${HOME}/.rbenv/plugins/ruby-build pull remote: Enumerating objects: 853, done. remote: Counting objects: 0% (1/525) remote: Counting objects: 1% (6/525) remote: Counting objects: 2% (11/525) remote: Counting objects: 3% (16/525) remote: Counting objects: 4% (21/525) remote: Counting objects: 5% (27/525) remote: Counting objects: 6% (32/525) remote: Counting objects: 7% (37/525) remote: Counting objects: 8% (42/525) remote: Counting objects: 9% (48/525) remote: Counting objects: 10% (53/525) remote: Counting objects: 11% (58/525) remote: Counting objects: 12% (63/525) remote: Counting objects: 13% (69/525) remote: Counting objects: 14% (74/525) remote: Counting objects: 15% (79/525) remote: Counting objects: 16% (84/525) remote: Counting objects: 17% (90/525) remote: Counting objects: 18% (95/525) remote: Counting objects: 19% (100/525) remote: Counting objects: 20% (105/525) remote: Counting objects: 21% (111/525) remote: Counting objects: 22% (116/525) remote: Counting objects: 23% (121/525) remote: Counting objects: 24% (126/525) remote: Counting objects: 25% (132/525) remote: Counting objects: 26% (137/525) remote: Counting objects: 27% (142/525) remote: Counting objects: 28% (147/525) remote: Counting objects: 29% (153/525) remote: Counting objects: 30% (158/525) remote: Counting objects: 31% (163/525) remote: Counting objects: 32% (168/525) remote: Counting objects: 33% (174/525) remote: Counting objects: 34% (179/525) remote: Counting objects: 35% (184/525) remote: Counting objects: 36% (189/525) remote: Counting objects: 37% (195/525) remote: Counting objects: 38% (200/525) remote: Counting objects: 39% (205/525) remote: Counting objects: 40% (210/525) remote: Counting objects: 41% (216/525) remote: Counting objects: 42% (221/525) remote: Counting objects: 43% (226/525) remote: Counting objects: 44% (231/525) remote: Counting objects: 45% (237/525) remote: Counting objects: 46% (242/525) remote: Counting objects: 47% (247/525) remote: Counting objects: 48% (252/525) remote: Counting objects: 49% (258/525) remote: Counting objects: 50% (263/525) remote: Counting objects: 51% (268/525) remote: Counting objects: 52% (273/525) remote: Counting objects: 53% (279/525) remote: Counting objects: 54% (284/525) remote: Counting objects: 55% (289/525) remote: Counting objects: 56% (294/525) remote: Counting objects: 57% (300/525) remote: Counting objects: 58% (305/525) remote: Counting objects: 59% (310/525) remote: Counting objects: 60% (315/525) remote: Counting objects: 61% (321/525) remote: Counting objects: 62% (326/525) remote: Counting objects: 63% (331/525) remote: Counting objects: 64% (336/525) remote: Counting objects: 65% (342/525) remote: Counting objects: 66% (347/525) remote: Counting objects: 67% (352/525) remote: Counting objects: 68% (357/525) remote: Counting objects: 69% (363/525) remote: Counting objects: 70% (368/525) remote: Counting objects: 71% (373/525) remote: Counting objects: 72% (378/525) remote: Counting objects: 73% (384/525) remote: Counting objects: 74% (389/525) remote: Counting objects: 75% (394/525) remote: Counting objects: 76% (399/525) remote: Counting objects: 77% (405/525) remote: Counting objects: 78% (410/525) remote: Counting objects: 79% (415/525) remote: Counting objects: 80% (420/525) remote: Counting objects: 81% (426/525) remote: Counting objects: 82% (431/525) remote: Counting objects: 83% (436/525) remote: Counting objects: 84% (441/525) remote: Counting objects: 85% (447/525) remote: Counting objects: 86% (452/525) remote: Counting objects: 87% (457/525) remote: Counting objects: 88% (462/525) remote: Counting objects: 89% (468/525) remote: Counting objects: 90% (473/525) remote: Counting objects: 91% (478/525) remote: Counting objects: 92% (483/525) remote: Counting objects: 93% (489/525) remote: Counting objects: 94% (494/525) remote: Counting objects: 95% (499/525) remote: Counting objects: 96% (504/525) remote: Counting objects: 97% (510/525) remote: Counting objects: 98% (515/525) remote: Counting objects: 99% (520/525) remote: Counting objects: 100% (525/525) remote: Counting objects: 100% (525/525), done. remote: Compressing objects: 2% (1/46) remote: Compressing objects: 4% (2/46) remote: Compressing objects: 6% (3/46) remote: Compressing objects: 8% (4/46) remote: Compressing objects: 10% (5/46) remote: Compressing objects: 13% (6/46) remote: Compressing objects: 15% (7/46) remote: Compressing objects: 17% (8/46) remote: Compressing objects: 19% (9/46) remote: Compressing objects: 21% (10/46) remote: Compressing objects: 23% (11/46) remote: Compressing objects: 26% (12/46) remote: Compressing objects: 28% (13/46) remote: Compressing objects: 30% (14/46) remote: Compressing objects: 32% (15/46) remote: Compressing objects: 34% (16/46) remote: Compressing objects: 36% (17/46) remote: Compressing objects: 39% (18/46) remote: Compressing objects: 41% (19/46) remote: Compressing objects: 43% (20/46) remote: Compressing objects: 45% (21/46) remote: Compressing objects: 47% (22/46) remote: Compressing objects: 50% (23/46) remote: Compressing objects: 52% (24/46) remote: Compressing objects: 54% (25/46) remote: Compressing objects: 56% (26/46) remote: Compressing objects: 58% (27/46) remote: Compressing objects: 60% (28/46) remote: Compressing objects: 63% (29/46) remote: Compressing objects: 65% (30/46) remote: Compressing objects: 67% (31/46) remote: Compressing objects: 69% (32/46) remote: Compressing objects: 71% (33/46) remote: Compressing objects: 73% (34/46) remote: Compressing objects: 76% (35/46) remote: Compressing objects: 78% (36/46) remote: Compressing objects: 80% (37/46) remote: Compressing objects: 82% (38/46) remote: Compressing objects: 84% (39/46) remote: Compressing objects: 86% (40/46) remote: Compressing objects: 89% (41/46) remote: Compressing objects: 91% (42/46) remote: Compressing objects: 93% (43/46) remote: Compressing objects: 95% (44/46) remote: Compressing objects: 97% (45/46) remote: Compressing objects: 100% (46/46) remote: Compressing objects: 100% (46/46), done. Receiving objects: 0% (1/853) Receiving objects: 1% (9/853) Receiving objects: 2% (18/853) Receiving objects: 3% (26/853) Receiving objects: 4% (35/853) Receiving objects: 5% (43/853) Receiving objects: 6% (52/853) Receiving objects: 7% (60/853) Receiving objects: 8% (69/853) Receiving objects: 9% (77/853) Receiving objects: 10% (86/853) Receiving objects: 11% (94/853) Receiving objects: 12% (103/853) Receiving objects: 13% (111/853) Receiving objects: 14% (120/853) Receiving objects: 15% (128/853) Receiving objects: 16% (137/853) Receiving objects: 17% (146/853) Receiving objects: 18% (154/853) Receiving objects: 19% (163/853) Receiving objects: 20% (171/853) Receiving objects: 21% (180/853) Receiving objects: 22% (188/853) Receiving objects: 23% (197/853) Receiving objects: 24% (205/853) Receiving objects: 25% (214/853) Receiving objects: 26% (222/853) Receiving objects: 27% (231/853) Receiving objects: 28% (239/853) Receiving objects: 29% (248/853) Receiving objects: 30% (256/853) Receiving objects: 31% (265/853) Receiving objects: 32% (273/853) Receiving objects: 33% (282/853) Receiving objects: 34% (291/853) Receiving objects: 35% (299/853) Receiving objects: 36% (308/853) Receiving objects: 37% (316/853) Receiving objects: 38% (325/853) Receiving objects: 39% (333/853) Receiving objects: 40% (342/853) Receiving objects: 41% (350/853) Receiving objects: 42% (359/853) Receiving objects: 43% (367/853) Receiving objects: 44% (376/853) Receiving objects: 45% (384/853) Receiving objects: 46% (393/853) Receiving objects: 47% (401/853) Receiving objects: 48% (410/853) Receiving objects: 49% (418/853) Receiving objects: 50% (427/853) Receiving objects: 51% (436/853) Receiving objects: 52% (444/853) Receiving objects: 53% (453/853) Receiving objects: 54% (461/853) Receiving objects: 55% (470/853) Receiving objects: 56% (478/853) Receiving objects: 57% (487/853) Receiving objects: 58% (495/853) Receiving objects: 59% (504/853) Receiving objects: 60% (512/853) Receiving objects: 61% (521/853) Receiving objects: 62% (529/853) Receiving objects: 63% (538/853) Receiving objects: 64% (546/853) Receiving objects: 65% (555/853) Receiving objects: 66% (563/853) Receiving objects: 67% (572/853) Receiving objects: 68% (581/853) Receiving objects: 69% (589/853) Receiving objects: 70% (598/853) Receiving objects: 71% (606/853) Receiving objects: 72% (615/853) Receiving objects: 73% (623/853) Receiving objects: 74% (632/853) Receiving objects: 75% (640/853) Receiving objects: 76% (649/853) Receiving objects: 77% (657/853) Receiving objects: 78% (666/853) remote: Total 853 (delta 493), reused 498 (delta 474), pack-reused 328 Receiving objects: 79% (674/853) Receiving objects: 80% (683/853) Receiving objects: 81% (691/853) Receiving objects: 82% (700/853) Receiving objects: 83% (708/853) Receiving objects: 84% (717/853) Receiving objects: 85% (726/853) Receiving objects: 86% (734/853) Receiving objects: 87% (743/853) Receiving objects: 88% (751/853) Receiving objects: 89% (760/853) Receiving objects: 90% (768/853) Receiving objects: 91% (777/853) Receiving objects: 92% (785/853) Receiving objects: 93% (794/853) Receiving objects: 94% (802/853) Receiving objects: 95% (811/853) Receiving objects: 96% (819/853) Receiving objects: 97% (828/853) Receiving objects: 98% (836/853) Receiving objects: 99% (845/853) Receiving objects: 100% (853/853) Receiving objects: 100% (853/853), 148.03 KiB | 5.48 MiB/s, done. Resolving deltas: 0% (0/649) Resolving deltas: 1% (7/649) Resolving deltas: 2% (13/649) Resolving deltas: 3% (20/649) Resolving deltas: 4% (26/649) Resolving deltas: 5% (33/649) Resolving deltas: 6% (39/649) Resolving deltas: 7% (47/649) Resolving deltas: 8% (52/649) Resolving deltas: 9% (59/649) Resolving deltas: 10% (65/649) Resolving deltas: 11% (72/649) Resolving deltas: 12% (78/649) Resolving deltas: 13% (85/649) Resolving deltas: 14% (91/649) Resolving deltas: 15% (99/649) Resolving deltas: 16% (104/649) Resolving deltas: 17% (111/649) Resolving deltas: 18% (117/649) Resolving deltas: 19% (124/649) Resolving deltas: 20% (130/649) Resolving deltas: 21% (137/649) Resolving deltas: 22% (143/649) Resolving deltas: 23% (150/649) Resolving deltas: 24% (156/649) Resolving deltas: 25% (164/649) Resolving deltas: 26% (169/649) Resolving deltas: 27% (176/649) Resolving deltas: 28% (182/649) Resolving deltas: 29% (189/649) Resolving deltas: 30% (195/649) Resolving deltas: 31% (202/649) Resolving deltas: 32% (208/649) Resolving deltas: 33% (215/649) Resolving deltas: 34% (221/649) Resolving deltas: 35% (228/649) Resolving deltas: 36% (234/649) Resolving deltas: 37% (241/649) Resolving deltas: 38% (247/649) Resolving deltas: 39% (254/649) Resolving deltas: 40% (260/649) Resolving deltas: 41% (267/649) Resolving deltas: 42% (273/649) Resolving deltas: 43% (280/649) Resolving deltas: 44% (286/649) Resolving deltas: 45% (293/649) Resolving deltas: 46% (299/649) Resolving deltas: 47% (306/649) Resolving deltas: 48% (312/649) Resolving deltas: 49% (319/649) Resolving deltas: 50% (325/649) Resolving deltas: 51% (331/649) Resolving deltas: 52% (338/649) Resolving deltas: 53% (344/649) Resolving deltas: 54% (351/649) Resolving deltas: 55% (357/649) Resolving deltas: 56% (364/649) Resolving deltas: 57% (370/649) Resolving deltas: 58% (377/649) Resolving deltas: 59% (383/649) Resolving deltas: 60% (390/649) Resolving deltas: 61% (396/649) Resolving deltas: 62% (403/649) Resolving deltas: 63% (409/649) Resolving deltas: 64% (416/649) Resolving deltas: 65% (422/649) Resolving deltas: 66% (429/649) Resolving deltas: 67% (435/649) Resolving deltas: 68% (442/649) Resolving deltas: 69% (448/649) Resolving deltas: 70% (455/649) Resolving deltas: 71% (461/649) Resolving deltas: 72% (468/649) Resolving deltas: 73% (474/649) Resolving deltas: 74% (481/649) Resolving deltas: 75% (487/649) Resolving deltas: 76% (494/649) Resolving deltas: 77% (500/649) Resolving deltas: 78% (507/649) Resolving deltas: 79% (513/649) Resolving deltas: 80% (520/649) Resolving deltas: 81% (526/649) Resolving deltas: 82% (533/649) Resolving deltas: 83% (539/649) Resolving deltas: 84% (546/649) Resolving deltas: 85% (552/649) Resolving deltas: 86% (559/649) Resolving deltas: 87% (565/649) Resolving deltas: 88% (572/649) Resolving deltas: 89% (578/649) Resolving deltas: 90% (585/649) Resolving deltas: 91% (591/649) Resolving deltas: 92% (598/649) Resolving deltas: 93% (604/649) Resolving deltas: 94% (611/649) Resolving deltas: 95% (617/649) Resolving deltas: 96% (624/649) Resolving deltas: 97% (630/649) Resolving deltas: 98% (637/649) Resolving deltas: 99% (643/649) Resolving deltas: 100% (649/649) Resolving deltas: 100% (649/649), completed with 157 local objects. From https://github.com/rbenv/ruby-build a9ed743..7ed0526 master -> origin/master * [new tag] v20230424 -> v20230424 * [new tag] v20220909 -> v20220909 * [new tag] v20220910 -> v20220910 * [new tag] v20220910.1 -> v20220910.1 * [new tag] v20220930 -> v20220930 * [new tag] v20221004 -> v20221004 * [new tag] v20221025 -> v20221025 * [new tag] v20221026 -> v20221026 * [new tag] v20221101 -> v20221101 * [new tag] v20221116 -> v20221116 * [new tag] v20221121 -> v20221121 * [new tag] v20221123 -> v20221123 * [new tag] v20221124 -> v20221124 * [new tag] v20221206 -> v20221206 * [new tag] v20221225 -> v20221225 * [new tag] v20230124 -> v20230124 * [new tag] v20230202 -> v20230202 * [new tag] v20230208 -> v20230208 * [new tag] v20230208.1 -> v20230208.1 * [new tag] v20230222 -> v20230222 * [new tag] v20230306 -> v20230306 * [new tag] v20230309 -> v20230309 * [new tag] v20230330 -> v20230330 Updating a9ed743..7ed0526 Fast-forward .github/dependabot.yml | 6 + .github/workflows/ci.yml | 5 +- .github/workflows/differential-shellcheck.yml | 29 +++++ .github/workflows/mirror.yml | 13 ++- .github/workflows/release.yml | 5 +- README.md | 73 ++++++------ bin/rbenv-install | 23 +++- bin/ruby-build | 160 +++++++++++--------------- script/release | 32 +++--- script/test | 2 +- script/update-cruby | 9 +- script/update-rbx | 31 ----- script/update-truffleruby-graalvm | 2 +- share/ruby-build/1.8.7-p375 | 2 +- share/ruby-build/1.9.2-p326 | 2 +- share/ruby-build/2.4.0 | 2 +- share/ruby-build/2.4.0-dev | 2 +- share/ruby-build/2.4.1 | 2 +- share/ruby-build/2.4.10 | 2 +- share/ruby-build/2.4.2 | 2 +- share/ruby-build/2.4.3 | 2 +- share/ruby-build/2.4.4 | 2 +- share/ruby-build/2.4.5 | 2 +- share/ruby-build/2.4.6 | 2 +- share/ruby-build/2.4.7 | 2 +- share/ruby-build/2.4.8 | 2 +- share/ruby-build/2.4.9 | 2 +- share/ruby-build/2.5.0 | 2 +- share/ruby-build/2.5.0-dev | 2 +- share/ruby-build/2.5.0-preview1 | 2 +- share/ruby-build/2.5.0-rc1 | 2 +- share/ruby-build/2.5.1 | 2 +- share/ruby-build/2.5.2 | 2 +- share/ruby-build/2.5.3 | 2 +- share/ruby-build/2.5.4 | 2 +- share/ruby-build/2.5.5 | 2 +- share/ruby-build/2.5.6 | 2 +- share/ruby-build/2.5.7 | 2 +- share/ruby-build/2.5.8 | 2 +- share/ruby-build/2.5.9 | 2 +- share/ruby-build/2.6.0 | 4 +- share/ruby-build/2.6.0-dev | 2 +- share/ruby-build/2.6.0-preview1 | 4 +- share/ruby-build/2.6.0-preview2 | 4 +- share/ruby-build/2.6.0-preview3 | 4 +- share/ruby-build/2.6.0-rc1 | 4 +- share/ruby-build/2.6.0-rc2 | 4 +- share/ruby-build/2.6.1 | 4 +- share/ruby-build/2.6.10 | 4 +- share/ruby-build/2.6.2 | 4 +- share/ruby-build/2.6.3 | 4 +- share/ruby-build/2.6.4 | 4 +- share/ruby-build/2.6.5 | 4 +- share/ruby-build/2.6.6 | 4 +- share/ruby-build/2.6.7 | 4 +- share/ruby-build/2.6.8 | 4 +- share/ruby-build/2.6.9 | 4 +- share/ruby-build/2.7.0 | 4 +- share/ruby-build/2.7.0-dev | 2 +- share/ruby-build/2.7.0-preview1 | 4 +- share/ruby-build/2.7.0-preview2 | 4 +- share/ruby-build/2.7.0-preview3 | 4 +- share/ruby-build/2.7.0-rc1 | 4 +- share/ruby-build/2.7.0-rc2 | 4 +- share/ruby-build/2.7.1 | 4 +- share/ruby-build/2.7.2 | 4 +- share/ruby-build/2.7.3 | 4 +- share/ruby-build/2.7.4 | 4 +- share/ruby-build/2.7.5 | 4 +- share/ruby-build/2.7.6 | 4 +- share/ruby-build/2.7.7 | 2 + share/ruby-build/2.7.8 | 2 + share/ruby-build/3.0.0 | 2 +- share/ruby-build/3.0.0-dev | 2 +- share/ruby-build/3.0.0-preview1 | 2 +- share/ruby-build/3.0.0-preview2 | 2 +- share/ruby-build/3.0.0-rc1 | 2 +- share/ruby-build/3.0.1 | 2 +- share/ruby-build/3.0.2 | 2 +- share/ruby-build/3.0.3 | 2 +- share/ruby-build/3.0.4 | 2 +- share/ruby-build/3.0.5 | 2 + share/ruby-build/3.0.6 | 2 + share/ruby-build/3.1.0 | 2 +- share/ruby-build/3.1.0-dev | 2 +- share/ruby-build/3.1.0-preview1 | 2 +- share/ruby-build/3.1.1 | 2 +- share/ruby-build/3.1.2 | 2 +- share/ruby-build/3.1.3 | 2 + share/ruby-build/3.1.4 | 2 + share/ruby-build/3.2.0 | 2 + share/ruby-build/3.2.0-dev | 4 +- share/ruby-build/3.2.0-preview1 | 2 +- share/ruby-build/3.2.0-preview2 | 2 + share/ruby-build/3.2.0-preview3 | 2 + share/ruby-build/3.2.0-rc1 | 2 + share/ruby-build/3.2.1 | 2 + share/ruby-build/3.2.2 | 2 + share/ruby-build/3.3.0-dev | 2 + share/ruby-build/jruby-1.5.6 | 1 - share/ruby-build/jruby-1.6.3 | 1 - share/ruby-build/jruby-1.6.4 | 1 - share/ruby-build/jruby-1.6.5 | 1 - share/ruby-build/jruby-1.6.5.1 | 1 - share/ruby-build/jruby-1.6.6 | 1 - share/ruby-build/jruby-1.6.7 | 1 - share/ruby-build/jruby-1.6.7.2 | 1 - share/ruby-build/jruby-1.6.8 | 1 - share/ruby-build/jruby-1.7.0 | 1 - share/ruby-build/jruby-1.7.0-preview1 | 1 - share/ruby-build/jruby-1.7.0-preview2 | 1 - share/ruby-build/jruby-1.7.0-rc1 | 1 - share/ruby-build/jruby-1.7.0-rc2 | 1 - share/ruby-build/jruby-1.7.1 | 1 - share/ruby-build/jruby-1.7.10 | 2 +- share/ruby-build/jruby-1.7.11 | 2 +- share/ruby-build/jruby-1.7.12 | 2 +- share/ruby-build/jruby-1.7.13 | 2 +- share/ruby-build/jruby-1.7.14 | 2 +- share/ruby-build/jruby-1.7.15 | 2 +- share/ruby-build/jruby-1.7.16 | 2 +- share/ruby-build/jruby-1.7.2 | 2 +- share/ruby-build/jruby-1.7.3 | 1 - share/ruby-build/jruby-1.7.4 | 1 - share/ruby-build/jruby-1.7.5 | 2 +- share/ruby-build/jruby-1.7.6 | 2 +- share/ruby-build/jruby-1.7.7 | 2 +- share/ruby-build/jruby-1.7.8 | 2 +- share/ruby-build/jruby-1.7.9 | 2 +- share/ruby-build/jruby-9.3.10.0 | 2 + share/ruby-build/jruby-9.3.8.0 | 2 + share/ruby-build/jruby-9.3.9.0 | 2 + share/ruby-build/jruby-9.4.0.0 | 2 + share/ruby-build/jruby-9.4.1.0 | 2 + share/ruby-build/jruby-9.4.2.0 | 2 + share/ruby-build/mruby-3.2.0 | 1 + share/ruby-build/rbx-3.0 | 2 +- share/ruby-build/rbx-3.1 | 2 +- share/ruby-build/rbx-3.10 | 2 +- share/ruby-build/rbx-3.100 | 2 +- share/ruby-build/rbx-3.101 | 2 +- share/ruby-build/rbx-3.102 | 2 +- share/ruby-build/rbx-3.103 | 2 +- share/ruby-build/rbx-3.104 | 2 +- share/ruby-build/rbx-3.105 | 2 +- share/ruby-build/rbx-3.106 | 2 +- share/ruby-build/rbx-3.107 | 2 +- share/ruby-build/rbx-3.11 | 2 +- share/ruby-build/rbx-3.12 | 2 +- share/ruby-build/rbx-3.13 | 2 +- share/ruby-build/rbx-3.14 | 2 +- share/ruby-build/rbx-3.15 | 2 +- share/ruby-build/rbx-3.16 | 2 +- share/ruby-build/rbx-3.17 | 2 +- share/ruby-build/rbx-3.18 | 2 +- share/ruby-build/rbx-3.19 | 2 +- share/ruby-build/rbx-3.2 | 2 +- share/ruby-build/rbx-3.20 | 2 +- share/ruby-build/rbx-3.21 | 2 +- share/ruby-build/rbx-3.22 | 2 +- share/ruby-build/rbx-3.23 | 2 +- share/ruby-build/rbx-3.24 | 2 +- share/ruby-build/rbx-3.25 | 2 +- share/ruby-build/rbx-3.26 | 2 +- share/ruby-build/rbx-3.27 | 2 +- share/ruby-build/rbx-3.28 | 2 +- share/ruby-build/rbx-3.29 | 2 +- share/ruby-build/rbx-3.3 | 2 +- share/ruby-build/rbx-3.30 | 2 +- share/ruby-build/rbx-3.31 | 2 +- share/ruby-build/rbx-3.32 | 2 +- share/ruby-build/rbx-3.33 | 2 +- share/ruby-build/rbx-3.34 | 2 +- share/ruby-build/rbx-3.35 | 2 +- share/ruby-build/rbx-3.36 | 2 +- share/ruby-build/rbx-3.37 | 2 +- share/ruby-build/rbx-3.38 | 2 +- share/ruby-build/rbx-3.39 | 2 +- share/ruby-build/rbx-3.4 | 2 +- share/ruby-build/rbx-3.40 | 2 +- share/ruby-build/rbx-3.41 | 2 +- share/ruby-build/rbx-3.42 | 2 +- share/ruby-build/rbx-3.43 | 2 +- share/ruby-build/rbx-3.44 | 2 +- share/ruby-build/rbx-3.45 | 2 +- share/ruby-build/rbx-3.46 | 2 +- share/ruby-build/rbx-3.47 | 2 +- share/ruby-build/rbx-3.48 | 2 +- share/ruby-build/rbx-3.49 | 2 +- share/ruby-build/rbx-3.5 | 2 +- share/ruby-build/rbx-3.50 | 2 +- share/ruby-build/rbx-3.51 | 2 +- share/ruby-build/rbx-3.52 | 2 +- share/ruby-build/rbx-3.53 | 2 +- share/ruby-build/rbx-3.54 | 2 +- share/ruby-build/rbx-3.55 | 2 +- share/ruby-build/rbx-3.56 | 2 +- share/ruby-build/rbx-3.57 | 2 +- share/ruby-build/rbx-3.58 | 2 +- share/ruby-build/rbx-3.59 | 2 +- share/ruby-build/rbx-3.6 | 2 +- share/ruby-build/rbx-3.60 | 2 +- share/ruby-build/rbx-3.61 | 2 +- share/ruby-build/rbx-3.62 | 2 +- share/ruby-build/rbx-3.63 | 2 +- share/ruby-build/rbx-3.64 | 2 +- share/ruby-build/rbx-3.65 | 2 +- share/ruby-build/rbx-3.66 | 2 +- share/ruby-build/rbx-3.67 | 2 +- share/ruby-build/rbx-3.68 | 2 +- share/ruby-build/rbx-3.69 | 2 +- share/ruby-build/rbx-3.7 | 2 +- share/ruby-build/rbx-3.70 | 2 +- share/ruby-build/rbx-3.71 | 2 +- share/ruby-build/rbx-3.72 | 2 +- share/ruby-build/rbx-3.73 | 2 +- share/ruby-build/rbx-3.74 | 2 +- share/ruby-build/rbx-3.75 | 2 +- share/ruby-build/rbx-3.76 | 2 +- share/ruby-build/rbx-3.77 | 2 +- share/ruby-build/rbx-3.78 | 2 +- share/ruby-build/rbx-3.79 | 2 +- share/ruby-build/rbx-3.8 | 2 +- share/ruby-build/rbx-3.80 | 2 +- share/ruby-build/rbx-3.81 | 2 +- share/ruby-build/rbx-3.82 | 2 +- share/ruby-build/rbx-3.83 | 2 +- share/ruby-build/rbx-3.84 | 2 +- share/ruby-build/rbx-3.85 | 2 +- share/ruby-build/rbx-3.86 | 2 +- share/ruby-build/rbx-3.87 | 2 +- share/ruby-build/rbx-3.88 | 2 +- share/ruby-build/rbx-3.89 | 2 +- share/ruby-build/rbx-3.9 | 2 +- share/ruby-build/rbx-3.90 | 2 +- share/ruby-build/rbx-3.91 | 2 +- share/ruby-build/rbx-3.92 | 2 +- share/ruby-build/rbx-3.93 | 2 +- share/ruby-build/rbx-3.94 | 2 +- share/ruby-build/rbx-3.95 | 2 +- share/ruby-build/rbx-3.96 | 2 +- share/ruby-build/rbx-3.97 | 2 +- share/ruby-build/rbx-3.98 | 2 +- share/ruby-build/rbx-3.99 | 2 +- share/ruby-build/rbx-4.0 | 2 +- share/ruby-build/rbx-4.1 | 2 +- share/ruby-build/rbx-4.10 | 2 +- share/ruby-build/rbx-4.11 | 2 +- share/ruby-build/rbx-4.12 | 2 +- share/ruby-build/rbx-4.13 | 2 +- share/ruby-build/rbx-4.14 | 2 +- share/ruby-build/rbx-4.15 | 2 +- share/ruby-build/rbx-4.16 | 2 +- share/ruby-build/rbx-4.18 | 2 +- share/ruby-build/rbx-4.19 | 2 +- share/ruby-build/rbx-4.2 | 2 +- share/ruby-build/rbx-4.20 | 2 +- share/ruby-build/rbx-4.3 | 2 +- share/ruby-build/rbx-4.4 | 2 +- share/ruby-build/rbx-4.5 | 2 +- share/ruby-build/rbx-4.6 | 2 +- share/ruby-build/rbx-4.7 | 2 +- share/ruby-build/rbx-4.8 | 2 +- share/ruby-build/rbx-4.9 | 2 +- share/ruby-build/rbx-5.0 | 2 +- share/ruby-build/topaz-dev | 1 - share/ruby-build/truffleruby+graalvm-22.3.0 | 21 ++++ share/ruby-build/truffleruby+graalvm-22.3.1 | 21 ++++ share/ruby-build/truffleruby+graalvm-dev | 8 +- share/ruby-build/truffleruby-22.3.0 | 21 ++++ share/ruby-build/truffleruby-22.3.1 | 21 ++++ share/ruby-build/truffleruby-dev | 2 +- test/build.bats | 70 +++++++---- test/compiler.bats | 30 +++-- test/hooks.bats | 1 + test/rbenv.bats | 31 ++++- test/stubs/stub | 10 +- test/test_helper.bash | 10 ++ 278 files changed, 691 insertions(+), 490 deletions(-) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/differential-shellcheck.yml delete mode 100755 script/update-rbx create mode 100644 share/ruby-build/2.7.7 create mode 100644 share/ruby-build/2.7.8 create mode 100644 share/ruby-build/3.0.5 create mode 100644 share/ruby-build/3.0.6 create mode 100644 share/ruby-build/3.1.3 create mode 100644 share/ruby-build/3.1.4 create mode 100644 share/ruby-build/3.2.0 create mode 100644 share/ruby-build/3.2.0-preview2 create mode 100644 share/ruby-build/3.2.0-preview3 create mode 100644 share/ruby-build/3.2.0-rc1 create mode 100644 share/ruby-build/3.2.1 create mode 100644 share/ruby-build/3.2.2 create mode 100644 share/ruby-build/3.3.0-dev delete mode 100644 share/ruby-build/jruby-1.5.6 delete mode 100644 share/ruby-build/jruby-1.6.3 delete mode 100644 share/ruby-build/jruby-1.6.4 delete mode 100644 share/ruby-build/jruby-1.6.5 delete mode 100644 share/ruby-build/jruby-1.6.5.1 delete mode 100644 share/ruby-build/jruby-1.6.6 delete mode 100644 share/ruby-build/jruby-1.6.7 delete mode 100644 share/ruby-build/jruby-1.6.7.2 delete mode 100644 share/ruby-build/jruby-1.6.8 delete mode 100644 share/ruby-build/jruby-1.7.0 delete mode 100644 share/ruby-build/jruby-1.7.0-preview1 delete mode 100644 share/ruby-build/jruby-1.7.0-preview2 delete mode 100644 share/ruby-build/jruby-1.7.0-rc1 delete mode 100644 share/ruby-build/jruby-1.7.0-rc2 delete mode 100644 share/ruby-build/jruby-1.7.1 delete mode 100644 share/ruby-build/jruby-1.7.3 delete mode 100644 share/ruby-build/jruby-1.7.4 create mode 100644 share/ruby-build/jruby-9.3.10.0 create mode 100644 share/ruby-build/jruby-9.3.8.0 create mode 100644 share/ruby-build/jruby-9.3.9.0 create mode 100644 share/ruby-build/jruby-9.4.0.0 create mode 100644 share/ruby-build/jruby-9.4.1.0 create mode 100644 share/ruby-build/jruby-9.4.2.0 create mode 100644 share/ruby-build/mruby-3.2.0 delete mode 100644 share/ruby-build/topaz-dev create mode 100644 share/ruby-build/truffleruby+graalvm-22.3.0 create mode 100644 share/ruby-build/truffleruby+graalvm-22.3.1 create mode 100644 share/ruby-build/truffleruby-22.3.0 create mode 100644 share/ruby-build/truffleruby-22.3.1 sem-version ruby ${RUBY_VERSION} -f To follow progress, use 'tail -f /var/folders/rg/92ky7bj54xj6pcv5l24g6l_00000gn/T/ruby-build.20230427093421.1063.log' or pass --verbose Downloading openssl-3.1.0.tar.gz... -> https://dqw8nmjcqpjn7.cloudfront.net/aaa925ad9828745c4cad9d9efeb273deca820f2cdcf2c3ac7d7c1212b7c497b4 Installing openssl-3.1.0... Installed openssl-3.1.0 to /Users/semaphore/.rbenv/versions/3.2.2 Downloading ruby-3.2.2.tar.gz... -> https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.gz Installing ruby-3.2.2... ruby-build: using readline from homebrew ruby-build: using libyaml from homebrew ruby-build: using gmp from homebrew Installed ruby-3.2.2 to /Users/semaphore/.rbenv/versions/3.2.2 Fetching bundler-2.4.12.gem Successfully installed bundler-2.4.12 1 gem installed Updating installed gems Nothing to update Gems not currently installed: system Fetching bundler-2.0.1.gem Successfully installed bundler-2.0.1 1 gem installed [09:44 27/04/2023]: Changing 'ruby' to version 3.2.2 [09:44 27/04/2023]: Switch successful. bundle config set --local deployment true bundle config set --local path vendor/bundle gem update --no-doc bundler Updating installed gems Nothing to update Gems already up-to-date: bundler bundle install Fetching gem metadata from https://rubygems.org/........ Fetching rake 13.0.6 Installing rake 13.0.6 Using bundler 2.4.12 Fetching arrayfields 4.9.2 Fetching io-like 0.3.1 Fetching docile 1.4.0 Fetching diff-lcs 1.5.0 Installing docile 1.4.0 Installing io-like 0.3.1 Installing diff-lcs 1.5.0 Installing arrayfields 4.9.2 Fetching stringio 3.0.6 Fetching rake-compiler 1.2.1 Installing stringio 3.0.6 with native extensions Installing rake-compiler 1.2.1 Fetching rake-compiler-dock 1.3.0 Fetching rspec-support 3.12.0 Installing rake-compiler-dock 1.3.0 Installing rspec-support 3.12.0 Fetching simplecov-html 0.12.3 Fetching simplecov_json_formatter 0.1.4 Using amalgalite 1.9.0 from source at `.` and installing its executables Fetching archive-zip 0.12.0 Installing simplecov_json_formatter 0.1.4 Fetching rspec-core 3.12.2 Installing simplecov-html 0.12.3 Installing archive-zip 0.12.0 Installing rspec-core 3.12.2 Fetching rspec-expectations 3.12.2 Fetching rspec-mocks 3.12.5 Installing rspec-expectations 3.12.2 Fetching simplecov 0.22.0 Installing rspec-mocks 3.12.5 Installing simplecov 0.22.0 Fetching rspec_junit_formatter 0.6.0 Fetching rspec 3.12.0 Installing rspec_junit_formatter 0.6.0 Installing rspec 3.12.0 Fetching psych 5.1.0 Installing psych 5.1.0 with native extensions Using rdoc 6.5.0 Bundle complete! 9 Gemfile dependencies, 22 gems now installed. Bundled gems are installed into `./vendor/bundle` mkdir -p tmp/test-results/ export TEST_RESULTS_FILE=tmp/test-results/${RUBY_VERSION}.xml bundle exec rake test mkdir -p tmp/x86_64-darwin21/amalgalite/3.2.2 cd tmp/x86_64-darwin21/amalgalite/3.2.2 /Users/semaphore/.rbenv/versions/3.2.2/bin/ruby -I. -r.rake-compiler-siteconf.rb ../../../../ext/amalgalite/c/extconf.rb creating Makefile cd - cd tmp/x86_64-darwin21/amalgalite/3.2.2 /usr/bin/make compiling ../../../../ext/amalgalite/c/amalgalite.c compiling ../../../../ext/amalgalite/c/amalgalite_blob.c compiling ../../../../ext/amalgalite/c/amalgalite_constants.c compiling ../../../../ext/amalgalite/c/amalgalite_database.c compiling ../../../../ext/amalgalite/c/amalgalite_requires_bootstrap.c compiling ../../../../ext/amalgalite/c/amalgalite_statement.c compiling ../../../../ext/amalgalite/c/sqlite3.c linking shared-object amalgalite/3.2/amalgalite.bundle cd - mkdir -p tmp/x86_64-darwin21/stage/lib/amalgalite cp CONTRIBUTING.md tmp/x86_64-darwin21/stage/CONTRIBUTING.md cp HISTORY.md tmp/x86_64-darwin21/stage/HISTORY.md cp LICENSE tmp/x86_64-darwin21/stage/LICENSE cp Manifest.txt tmp/x86_64-darwin21/stage/Manifest.txt cp README.md tmp/x86_64-darwin21/stage/README.md cp Rakefile tmp/x86_64-darwin21/stage/Rakefile cp TODO.md tmp/x86_64-darwin21/stage/TODO.md mkdir -p tmp/x86_64-darwin21/stage/bin cp bin/amalgalite-pack tmp/x86_64-darwin21/stage/bin/amalgalite-pack mkdir -p tmp/x86_64-darwin21/stage/examples cp examples/a.rb tmp/x86_64-darwin21/stage/examples/a.rb cp examples/blob.rb tmp/x86_64-darwin21/stage/examples/blob.rb cp examples/bootstrap.rb tmp/x86_64-darwin21/stage/examples/bootstrap.rb cp examples/define_aggregate.rb tmp/x86_64-darwin21/stage/examples/define_aggregate.rb cp examples/define_function.rb tmp/x86_64-darwin21/stage/examples/define_function.rb cp examples/fts5.rb tmp/x86_64-darwin21/stage/examples/fts5.rb cp examples/gem-db.rb tmp/x86_64-darwin21/stage/examples/gem-db.rb cp examples/require_me.rb tmp/x86_64-darwin21/stage/examples/require_me.rb cp examples/requires.rb tmp/x86_64-darwin21/stage/examples/requires.rb cp examples/schema-info.rb tmp/x86_64-darwin21/stage/examples/schema-info.rb mkdir -p tmp/x86_64-darwin21/stage/ext/amalgalite/c cp ext/amalgalite/c/amalgalite.c tmp/x86_64-darwin21/stage/ext/amalgalite/c/amalgalite.c cp ext/amalgalite/c/amalgalite.h tmp/x86_64-darwin21/stage/ext/amalgalite/c/amalgalite.h cp ext/amalgalite/c/amalgalite_blob.c tmp/x86_64-darwin21/stage/ext/amalgalite/c/amalgalite_blob.c cp ext/amalgalite/c/amalgalite_constants.c tmp/x86_64-darwin21/stage/ext/amalgalite/c/amalgalite_constants.c cp ext/amalgalite/c/amalgalite_database.c tmp/x86_64-darwin21/stage/ext/amalgalite/c/amalgalite_database.c cp ext/amalgalite/c/amalgalite_requires_bootstrap.c tmp/x86_64-darwin21/stage/ext/amalgalite/c/amalgalite_requires_bootstrap.c cp ext/amalgalite/c/amalgalite_statement.c tmp/x86_64-darwin21/stage/ext/amalgalite/c/amalgalite_statement.c cp ext/amalgalite/c/extconf.rb tmp/x86_64-darwin21/stage/ext/amalgalite/c/extconf.rb cp ext/amalgalite/c/gen_constants.rb tmp/x86_64-darwin21/stage/ext/amalgalite/c/gen_constants.rb cp ext/amalgalite/c/notes.txt tmp/x86_64-darwin21/stage/ext/amalgalite/c/notes.txt cp ext/amalgalite/c/sqlite3.c tmp/x86_64-darwin21/stage/ext/amalgalite/c/sqlite3.c cp ext/amalgalite/c/sqlite3.h tmp/x86_64-darwin21/stage/ext/amalgalite/c/sqlite3.h cp ext/amalgalite/c/sqlite3_options.h tmp/x86_64-darwin21/stage/ext/amalgalite/c/sqlite3_options.h cp ext/amalgalite/c/sqlite3ext.h tmp/x86_64-darwin21/stage/ext/amalgalite/c/sqlite3ext.h cp lib/amalgalite.rb tmp/x86_64-darwin21/stage/lib/amalgalite.rb cp lib/amalgalite/aggregate.rb tmp/x86_64-darwin21/stage/lib/amalgalite/aggregate.rb cp lib/amalgalite/blob.rb tmp/x86_64-darwin21/stage/lib/amalgalite/blob.rb cp lib/amalgalite/boolean.rb tmp/x86_64-darwin21/stage/lib/amalgalite/boolean.rb cp lib/amalgalite/busy_timeout.rb tmp/x86_64-darwin21/stage/lib/amalgalite/busy_timeout.rb cp lib/amalgalite/column.rb tmp/x86_64-darwin21/stage/lib/amalgalite/column.rb mkdir -p tmp/x86_64-darwin21/stage/lib/amalgalite/core_ext/kernel cp lib/amalgalite/core_ext/kernel/require.rb tmp/x86_64-darwin21/stage/lib/amalgalite/core_ext/kernel/require.rb cp lib/amalgalite/csv_table_importer.rb tmp/x86_64-darwin21/stage/lib/amalgalite/csv_table_importer.rb cp lib/amalgalite/database.rb tmp/x86_64-darwin21/stage/lib/amalgalite/database.rb cp lib/amalgalite/function.rb tmp/x86_64-darwin21/stage/lib/amalgalite/function.rb cp lib/amalgalite/index.rb tmp/x86_64-darwin21/stage/lib/amalgalite/index.rb cp lib/amalgalite/memory_database.rb tmp/x86_64-darwin21/stage/lib/amalgalite/memory_database.rb cp lib/amalgalite/packer.rb tmp/x86_64-darwin21/stage/lib/amalgalite/packer.rb cp lib/amalgalite/paths.rb tmp/x86_64-darwin21/stage/lib/amalgalite/paths.rb cp lib/amalgalite/profile_tap.rb tmp/x86_64-darwin21/stage/lib/amalgalite/profile_tap.rb cp lib/amalgalite/progress_handler.rb tmp/x86_64-darwin21/stage/lib/amalgalite/progress_handler.rb cp lib/amalgalite/requires.rb tmp/x86_64-darwin21/stage/lib/amalgalite/requires.rb cp lib/amalgalite/schema.rb tmp/x86_64-darwin21/stage/lib/amalgalite/schema.rb cp lib/amalgalite/sqlite3.rb tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3.rb mkdir -p tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3 cp lib/amalgalite/sqlite3/constants.rb tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3/constants.rb mkdir -p tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3/database cp lib/amalgalite/sqlite3/database/function.rb tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3/database/function.rb cp lib/amalgalite/sqlite3/database/status.rb tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3/database/status.rb cp lib/amalgalite/sqlite3/status.rb tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3/status.rb cp lib/amalgalite/sqlite3/version.rb tmp/x86_64-darwin21/stage/lib/amalgalite/sqlite3/version.rb cp lib/amalgalite/statement.rb tmp/x86_64-darwin21/stage/lib/amalgalite/statement.rb cp lib/amalgalite/table.rb tmp/x86_64-darwin21/stage/lib/amalgalite/table.rb cp lib/amalgalite/taps.rb tmp/x86_64-darwin21/stage/lib/amalgalite/taps.rb mkdir -p tmp/x86_64-darwin21/stage/lib/amalgalite/taps cp lib/amalgalite/taps/console.rb tmp/x86_64-darwin21/stage/lib/amalgalite/taps/console.rb cp lib/amalgalite/taps/io.rb tmp/x86_64-darwin21/stage/lib/amalgalite/taps/io.rb cp lib/amalgalite/trace_tap.rb tmp/x86_64-darwin21/stage/lib/amalgalite/trace_tap.rb cp lib/amalgalite/type_map.rb tmp/x86_64-darwin21/stage/lib/amalgalite/type_map.rb mkdir -p tmp/x86_64-darwin21/stage/lib/amalgalite/type_maps cp lib/amalgalite/type_maps/default_map.rb tmp/x86_64-darwin21/stage/lib/amalgalite/type_maps/default_map.rb cp lib/amalgalite/type_maps/storage_map.rb tmp/x86_64-darwin21/stage/lib/amalgalite/type_maps/storage_map.rb cp lib/amalgalite/type_maps/text_map.rb tmp/x86_64-darwin21/stage/lib/amalgalite/type_maps/text_map.rb cp lib/amalgalite/version.rb tmp/x86_64-darwin21/stage/lib/amalgalite/version.rb cp lib/amalgalite/view.rb tmp/x86_64-darwin21/stage/lib/amalgalite/view.rb mkdir -p tmp/x86_64-darwin21/stage/spec cp spec/aggregate_spec.rb tmp/x86_64-darwin21/stage/spec/aggregate_spec.rb cp spec/amalgalite_spec.rb tmp/x86_64-darwin21/stage/spec/amalgalite_spec.rb cp spec/blob_spec.rb tmp/x86_64-darwin21/stage/spec/blob_spec.rb cp spec/boolean_spec.rb tmp/x86_64-darwin21/stage/spec/boolean_spec.rb cp spec/busy_handler.rb tmp/x86_64-darwin21/stage/spec/busy_handler.rb mkdir -p tmp/x86_64-darwin21/stage/spec/data cp spec/data/iso-3166-country.txt tmp/x86_64-darwin21/stage/spec/data/iso-3166-country.txt cp spec/data/iso-3166-schema.sql tmp/x86_64-darwin21/stage/spec/data/iso-3166-schema.sql cp spec/data/iso-3166-subcountry.txt tmp/x86_64-darwin21/stage/spec/data/iso-3166-subcountry.txt cp spec/data/make-iso-db.sh tmp/x86_64-darwin21/stage/spec/data/make-iso-db.sh cp spec/database_spec.rb tmp/x86_64-darwin21/stage/spec/database_spec.rb cp spec/default_map_spec.rb tmp/x86_64-darwin21/stage/spec/default_map_spec.rb cp spec/function_spec.rb tmp/x86_64-darwin21/stage/spec/function_spec.rb cp spec/integeration_spec.rb tmp/x86_64-darwin21/stage/spec/integeration_spec.rb cp spec/iso_3166_database.rb tmp/x86_64-darwin21/stage/spec/iso_3166_database.rb cp spec/json_spec.rb tmp/x86_64-darwin21/stage/spec/json_spec.rb cp spec/packer_spec.rb tmp/x86_64-darwin21/stage/spec/packer_spec.rb cp spec/paths_spec.rb tmp/x86_64-darwin21/stage/spec/paths_spec.rb cp spec/progress_handler_spec.rb tmp/x86_64-darwin21/stage/spec/progress_handler_spec.rb cp spec/requires_spec.rb tmp/x86_64-darwin21/stage/spec/requires_spec.rb cp spec/rtree_spec.rb tmp/x86_64-darwin21/stage/spec/rtree_spec.rb cp spec/schema_spec.rb tmp/x86_64-darwin21/stage/spec/schema_spec.rb cp spec/spec_helper.rb tmp/x86_64-darwin21/stage/spec/spec_helper.rb mkdir -p tmp/x86_64-darwin21/stage/spec/sqlite3 cp spec/sqlite3/constants_spec.rb tmp/x86_64-darwin21/stage/spec/sqlite3/constants_spec.rb cp spec/sqlite3/database_status_spec.rb tmp/x86_64-darwin21/stage/spec/sqlite3/database_status_spec.rb cp spec/sqlite3/status_spec.rb tmp/x86_64-darwin21/stage/spec/sqlite3/status_spec.rb cp spec/sqlite3/version_spec.rb tmp/x86_64-darwin21/stage/spec/sqlite3/version_spec.rb cp spec/sqlite3_spec.rb tmp/x86_64-darwin21/stage/spec/sqlite3_spec.rb cp spec/statement_spec.rb tmp/x86_64-darwin21/stage/spec/statement_spec.rb cp spec/storage_map_spec.rb tmp/x86_64-darwin21/stage/spec/storage_map_spec.rb cp spec/tap_spec.rb tmp/x86_64-darwin21/stage/spec/tap_spec.rb cp spec/text_map_spec.rb tmp/x86_64-darwin21/stage/spec/text_map_spec.rb cp spec/type_map_spec.rb tmp/x86_64-darwin21/stage/spec/type_map_spec.rb cp spec/version_spec.rb tmp/x86_64-darwin21/stage/spec/version_spec.rb mkdir -p tmp/x86_64-darwin21/stage/tasks cp tasks/custom.rake tmp/x86_64-darwin21/stage/tasks/custom.rake cp tasks/default.rake tmp/x86_64-darwin21/stage/tasks/default.rake cp tasks/extension.rake tmp/x86_64-darwin21/stage/tasks/extension.rake cp tasks/this.rb tmp/x86_64-darwin21/stage/tasks/this.rb /usr/bin/make install target_prefix= /usr/local/bin/ginstall -c -m 0755 amalgalite.bundle /Users/semaphore/amalgalite/lib/amalgalite cp tmp/x86_64-darwin21/amalgalite/3.2.2/amalgalite.bundle tmp/x86_64-darwin21/stage/lib/amalgalite/amalgalite.bundle /Users/semaphore/.rbenv/versions/3.2.2/bin/ruby -w -I/Users/semaphore/amalgalite/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib:/Users/semaphore/amalgalite/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.0/lib /Users/semaphore/amalgalite/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb --color --format documentation --format RspecJunitFormatter --out tmp/test-results/3.2.2.xml /Users/semaphore/amalgalite/spec/default_map_spec.rb:84: warning: assigned but unused variable - x /Users/semaphore/amalgalite/lib/amalgalite/core_ext/kernel/require.rb:10: warning: assigned but unused variable - loaded Aggregate SQL Functions  must have a finalize method implemented  can define a custom SQL aggregate as a class with N params  can remove a custom SQL aggregate by class  can remove a custom SQL aggregate by arity  can remove all custom SQL aggregates with the same name  does not allow mixing of arbitrary and mandatory arguments to an SQL function  does not allow outrageous arity  does not allow registering a function which does not match the defined name  handles an error being thrown during the step function  handles an error being thrown during the finalize function  handles an error being thrown during initialization in the C extension Amalgalite::Blob  raises an error if initialized incorrectly inserts a blob from a file  and retrieves the data as a single value  and retrieves the data using incremental IO  writes the data to a file inserts a blob from a string  and retrieves the data as a single value  and retrieves the data using incremental IO  writes the data to a file inserts a blob from a io  and retrieves the data as a single value  and retrieves the data using incremental IO  writes the data to a file Amalgalite::Boolean  converts True to true  converts Y to true  converts Yes to true  converts T to true  converts 1 to true  converts False to false  converts F to false  converts f to false  converts No to false  converts n to false  converts 0 to false  converts other to nil  converts things to nil  converts nil to nil Amalgalite::Database  can create a new database  creates a new UTF-8 database (need exec to check pragma encoding)  creates a new UTF-16 database (need exec to check pragma encoding) (PENDING: Not yet implemented)  raises an error if the file does not exist and the database is opened with a non-create mode  raises an error if an invalid mode is used  can be in autocommit mode, and is by default  reports false for autocommit? when inside a transaction  prepares a statment  raises an error on invalid syntax when preparing a bad sql statement  closes normally  returns the id of the last inserted row  is in autocommit mode by default  report the number of rows changed with an insert  reports the number of rows deleted  can immediately execute an sql statement  can execute a batch of commands  returns an empty array when there are no results  traces the execution of code  raises an exception if the wrong type of object is used for tracing  profiles the execution of code  #execute yields each row when called with a block  #pragma yields each row when called with a block  can use something that responds to 'write' as a tap  can clear all registered taps  allows nested transactions even if SQLite under the covers does not  returns the result of the transaction when a block is yielded  returns the result of the deferred_transaction when a block is yielded  returns the result of the immediate_transaction when a block is yielded  returns the result of the exclusive_transaction when a block is yielded  #reload_schema!  can rollback a transaction  rolls back if an exception happens during a transaction block  commits if an exception happens during a transaction block but is rescued within the block  does not reraise an exception that exits before the transaction starts  can interrupt another thread that is also running in this database  savepoints are considered 'in_transaction'  releases a savepoint  rolls back a savepoint  rolling back the outermost savepoint is still 'in_transaction'  can escape quoted strings  can quote and escape single quoted strings  can escape a symbol  can quote a symbol  returns the first row of results as a convenience  returns and empty row if there are no results for the first row  returns nil if there is no value in the first value  returns the first value of results as a conveinience  replicates a database to memory  replicates a database to a database file  raises an error if it is given an invalid location to replicate to  imports batch statements #define_function  does not allow mixing of arbitrary and mandatory arguments to an SQL function  does not allow outrageous arity #remove_function  unregisters a single function by name and arity  unregisters a function by instances  unregisters all functions with the same name Amalgalite::TypeMaps::DefaultMap #bind_type_of  Float is bound to DataType::FLOAT  Integer is bound to DataType::INTGER  nil is bound to DataType::NULL  ::Amalgalite::Blob is bound to DataType::BLOB  everything else is bound to DataType::TEXT #result_value_of  Numeric's are returned  Nil is returned  DateTime is returned for delcared types of 'datetime'  Date is returned for declared types of 'date'  Time is returned for declared types of 'time'  Float is returned for declared types of 'double'  Float is returned for declared types of 'float'  Integer is returned for declared types of 'int'  boolean is returned for declared types of 'bool'  Blob is returned for declared types of 'blob'  String is returned for delcared types of 'string'  raises and error if an unknown sql type is returned  raises and error if an ruby class is attempted to be mapped Scalar SQL Functions  can define a custom SQL function as a block with 0 params  has a signature  can define a custom SQL function as a lambda with 2 param  can define a custom SQL function as a class with N params  returns the appropriate class Integer  returns the appropriate class Integer  returns the appropriate class NilClass  returns the appropriate class String  returns the appropriate class Integer  returns the appropriate class Float  does not allow outrageous arity  raises an error if the function returns a complex Ruby object  an error raised during the sql function is handled correctly Integration specifications - invalid queries  raises error with an invalid syntax  raises error with invalid table  raises error with invalid column - default types conversion  converts a ruby obj (2023-04-27T09:46:42-07:00) of DateTime to an SQL type of datetime and back again  converts a ruby obj (2023-04-27 09:46:42 -0700) of Time to an SQL type of timestamp and back again  converts a ruby obj (2023-04-27) of Date to an SQL type of date and back again  converts a ruby obj (42) of Integer to an SQL type of integer and back again  converts a ruby obj (3.14) of Float to an SQL type of double and back again  converts a ruby obj (foobarbaz) of String to an SQL type of varchar and back again  converts a ruby obj (true) of TrueClass to an SQL type of boolean and back again  converts a ruby obj () of NilClass to an SQL type of varchar(2) and back again - storage type conversion  converts a ruby obj (2023-04-27T09:46:42-07:00) of class DateTime to an SQL type of datetime and back to a storage type  converts a ruby obj (2023-04-27 09:46:42 -0700) of class Time to an SQL type of timestamp and back to a storage type  converts a ruby obj (2023-04-27) of class Date to an SQL type of date and back to a storage type  converts a ruby obj (42) of class Integer to an SQL type of integer and back to a storage type  converts a ruby obj (3.14) of class Float to an SQL type of double and back to a storage type  converts a ruby obj (foobarbaz) of class String to an SQL type of varchar and back to a storage type  converts a ruby obj (true) of class TrueClass to an SQL type of boolean and back to a storage type  converts a ruby obj () of class NilClass to an SQL type of varchar(2) and back to a storage type - text type conversion  converts a ruby obj (2023-04-27T09:46:42-07:00) of class DateTime to an SQL type of datetime and back to text  converts a ruby obj (2023-04-27 09:46:42 -0700) of class Time to an SQL type of timestamp and back to text  converts a ruby obj (2023-04-27) of class Date to an SQL type of date and back to text  converts a ruby obj (42) of class Integer to an SQL type of integer and back to text  converts a ruby obj (3.14) of class Float to an SQL type of double and back to text  converts a ruby obj (foobarbaz) of class String to an SQL type of varchar and back to text  converts a ruby obj (true) of class TrueClass to an SQL type of boolean and back to text  converts a ruby obj () of class NilClass to an SQL type of varchar(2) and back to text Amalgalite handles the JSON extension  can parse a `json_each` call  can return a proper json column Amalgalite::Packer  does not load the amalgalite/requires file  packs amalgalite into a bootstrap database  recreates the table if :drop_table option is given  compresses the content if told too  has all the lib files in the amalgalite gem Amalgalite::Paths  root dir should be correct  config_path should be correct  data path should be correct  lib path should be correct  ext path should be correct Progress Handlers  raises NotImplemented if #call is not overwritten  can be registered as block  can be registered as lambda  can be registered as a class  behaves like #interrupt! if returning a false value  cannot register a block with the wrong arity  can remove a progress handler Amalgalite::Requires  can import to an in-memory database  gives equal instances for file databases  gives separate instances for in-memory databases SQLite3 R*Tree extension  has 2 rows  queries normally  does a 'contained within' query  does an 'overlapping' query Amalgalite::Schema  loads the schema of a database  loads the views in the database  removes quotes from around default values in columns  loads the tables and columns  knows what the primary key of a table is  knows the primary key of a table even without an explicity unique index  knows the primary key of a temporary table  knows what the primary key of a table is when it is a multiple column primary key  loads the indexes  knows the schema is dirty when a table is created  knows the schema is dirty when a table is dropped  knows if a temporary table exists  sees that temporary tables shadow real tables Amalgalite::SQLite3::Constants  has Open constants ResultCode  has constants  can return the constant from a number  can return the number from a name DataType  has constants  can return the constant from a number  can return the number from a name Config  has constants  can return the constant from a number  can return the number from a name Status  has constants  can return the constant from a number  can return the number from a name DBStatus  has constants  can return the constant from a number  can return the number from a name StatementStatus  has constants  can return the constant from a number  can return the number from a name Amalgalite::SQLite3::Database::Status  knows how much lookaside memory it has used  can reset the highwater value Amalgalite::SQLite3::Status  knows how much memory it has used  can reset the highwater value Amalgalite::SQLite3::Version  should have the sqlite3 version  should have the sqlite3 source id Amalgalite::SQLite3  is threadsafe is ruby is compiled with pthread support, in this case that is (false)  knows if an SQL statement is complete  knows if an SQL statement is not complete  can produce random data  has nil for the default sqlite temporary directory  can set the temporary directory  can escape quoted strings  can escape a symble into a string  can quote and escape single quoted strings  can quote and escape symbols Amalgalite::Statement  a statement has a copy of the sql it was prepared with  steps through results  can prepare a statement without a block  knows how many parameters are in the statement  raises an error if there are not enough parameters are passed in a statement  can run a query with a named parameter  it can execute a query with a named parameter and yield the rows  can execute the same prepared statement multiple times  expands an array when binding parameters  binds a integer variable correctly  raises and error if an invaliding binding is attempted  can reset the statement to the state it was before executing  can execute a single sql command and say if there is remaining sql to execute  can select the rowid from the table  shows that the rowid column is rowid column  has index based access to the result set Amalgalite::TypeMaps::StorageMap #bind_type_of  Float is bound to DataType::FLOAT  Integer is bound to DataType::INTGER  nil is bound to DataType::NULL  ::Amalgalite::Blob is bound to DataType::BLOB  everything else is bound to DataType::TEXT #result_value_of  returns the original object for everything passed in Amalgalite::TraceTap  wraps up an object and delegates the 'trace' method to a method on that object  raises an error if an the wrapped object does not respond to the indicated method Amalgalite::ProfileTap  raises an error if an the wrapped object does not respond to the indicated method Amalgalite::Taps::StringIO  dumps profile information  has a stdout tap  has a stderr tap Amalgalite::ProfileSampler  aggregates samples Amalgalite::TypeMaps::TextMap #bind_type_of  returnes text for everything #result_value_of  returns the string value of the object for everything passed in Amalgalite::TypeMap  #bind_type_of raises NotImplemented error  #result_value_of raises NotImplemented error Amalgalite::VERSION  should have a version string Pending: (Failures listed here are expected and do not affect your suite's status)  1) Amalgalite::Database creates a new UTF-16 database (need exec to check pragma encoding) # Not yet implemented  # ./spec/database_spec.rb:25  Finished in 2.8 seconds (files took 0.305 seconds to load) 257 examples, 0 failures, 1 pending Exporting environment variables Exporting SEMAPHORE_JOB_RESULT