{"id":14965941,"url":"https://github.com/raku/blin","last_synced_at":"2025-10-19T09:30:21.449Z","repository":{"id":46267156,"uuid":"153959620","full_name":"Raku/Blin","owner":"Raku","description":"🥞 Project Blin – Toasting Reinvented","archived":false,"fork":false,"pushed_at":"2025-01-19T20:26:30.000Z","size":135,"stargazers_count":10,"open_issues_count":4,"forks_count":9,"subscribers_count":139,"default_branch":"master","last_synced_at":"2025-01-29T11:22:07.788Z","etag":null,"topics":["ecosystem","raku","rakudo"],"latest_commit_sha":null,"homepage":"https://raku.land/github:Raku/Blin","language":"Raku","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Raku.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-21T00:16:38.000Z","updated_at":"2025-01-19T20:26:31.000Z","dependencies_parsed_at":"2024-09-12T02:02:29.393Z","dependency_job_id":"255c6b85-a61d-4404-8c03-97d905045f80","html_url":"https://github.com/Raku/Blin","commit_stats":{"total_commits":84,"total_committers":12,"mean_commits":7.0,"dds":0.5595238095238095,"last_synced_commit":"ce4b1162c8df5c26e27d61833daeb607e2891860"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Raku%2FBlin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Raku%2FBlin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Raku%2FBlin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Raku%2FBlin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Raku","download_url":"https://codeload.github.com/Raku/Blin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237093006,"owners_count":19254328,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ecosystem","raku","rakudo"],"created_at":"2024-09-24T13:35:35.979Z","updated_at":"2025-10-19T09:30:16.040Z","avatar_url":"https://github.com/Raku.png","language":"Raku","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Project Blin – Toasting Reinvented\n\nBlin is a quality assurance tool for\n[Rakudo](https://github.com/rakudo/rakudo/) releases. Blin is based on\n[Whateverable](https://github.com/perl6/whateverable/).\n\nBlin was inspired by\n[Toaster](https://github.com/perl6-community-modules/perl6-Toaster). Here\nare some advantages:\n* Fetches archives from\n  [whateverable](https://github.com/perl6/whateverable/wiki/Shareable#bot-usage-examples)\n  instead of spending time to build rakudo\n* Installs modules in proper order to avoid testing the same module more than once\n* Deflaps modules that fail intermittently\n* Automatically bisects regressed modules\n* Avoids segfaults by producing no useful output instead of using DBIish\n\n\n### Installation\n\nInstall required packages:\n```bash\nsudo apt install zstd lrzip graphviz\n```\n\nInstall dependencies:\n\n```bash\nzef install --deps-only .\n```\n\nMany modules require native dependencies. See\n[this page](https://github.com/perl6-community-modules/perl6-Toaster/wiki)\nfor the list of packages to install.\n\n\n### Running\n\nCurrently it is supposed to run only on 64-bit linux systems.\n\nIf you want to test one or more modules:\n\n```bash\nRAKULIB=lib bin/blin.p6 SomeModuleHere AnotherModuleHere\n```\n\nHere is a more practical example:\n\n```bash\ntime RAKULIB=lib bin/blin.p6 --old=2018.06 --new=2018.09 Foo::Regressed Foo::Regressed::Very Foo::Dependencies::B-on-A\n```\n\nYou can also test arbitrary scripts. The code can depend on modules,\nin which case they have to be listed on the command line (e.g. for a\nscript depending on WWW you should list WWW module, dependencies of\nWWW will be resolved automatically).\n\nUsing this ticket as an example: https://github.com/rakudo/rakudo/issues/2779\n\nCreate file `foo.p6` with this content:\n\n```perl6\nuse WWW;\nmy @stations;\n@stations = | jpost \"https://www.perl6.org\", :limit(42);\n```\n\n\nThen run Blin:\n```bash\n./bin/blin.p6 --old=2018.12 --new=HEAD --custom-script=foo.p6 WWW\n```\n\nThen check out the output folder to see the results. Essentially, it\nis a local Bisectable.\n\n\nIf you want to test the whole ecosystem:\n\n```bash\ntime RAKULIB=lib bin/blin.p6\n```\n\nEstimated time to test the whole ecosystem with 24 cores is ≈60 minutes.\n\n**⚠☠ SECURITY NOTE: [issues mentioned in Toaster still\napply.](https://github.com/perl6-community-modules/perl6-Toaster#warning-dangerus-stuf-ahed)\nDo not run this for the whole ecosystem on non-throwaway\ninstalls. ☠⚠**\n\n\n### Viewing\n\nSee `output/overview` file for a basic overview of results. More\ndetails for specific modules can be found in `installed/`\ndirectory. Betters ways to view the data should come soon (hopefully).\n\n### Docker\n\nFor info about the Docker image, have a look at the\n[Readme file ](docker/README.md) in the docker directory.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraku%2Fblin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraku%2Fblin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraku%2Fblin/lists"}