{"id":120,"name":null,"description":"Ruby gem binary distribution of the V8 JavaScript engine","url":"https://github.com/rubyjs/libv8","last_synced_at":"2026-04-30T19:30:21.580Z","repository":{"id":1523942,"uuid":"1788656","full_name":"rubyjs/libv8","owner":"rubyjs","description":"Ruby gem binary distribution of the V8 JavaScript engine","archived":true,"fork":false,"pushed_at":"2023-12-04T13:57:22.000Z","size":17318,"stargazers_count":268,"open_issues_count":1,"forks_count":119,"subscribers_count":17,"default_branch":"master","last_synced_at":"2026-04-14T13:16:13.353Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubyjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"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":"2011-05-23T15:37:46.000Z","updated_at":"2026-02-08T10:50:44.000Z","dependencies_parsed_at":"2023-11-09T00:31:26.194Z","dependency_job_id":"4218bd7b-89f3-45b1-b562-da14e644b4b3","html_url":"https://github.com/rubyjs/libv8","commit_stats":{"total_commits":574,"total_committers":44,"mean_commits":"13.045454545454545","dds":0.3885017421602788,"last_synced_commit":"4cac62479affbec20aa86903fada35295d6744eb"},"previous_names":["cowboyd/libv8"],"tags_count":99,"template":false,"template_full_name":null,"purl":"pkg:github/rubyjs/libv8","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubyjs","download_url":"https://codeload.github.com/rubyjs/libv8/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8/sbom","scorecard":{"id":306274,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubyjs/libv8","commit":"f7f0b56df6b1e6f3a09d1ebeb88bf220b379d858"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.5,"checks":[{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":3,"reason":"Found 3/10 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"project is archived","details":["Warn: Repository is archived."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: release/x86_64-linux-musl/Dockerfile:1: pin your Docker image by updating alpine:3.7 to alpine:3.7@sha256:8421d9a84432575381bfabd248f1eb56f3aa21d9d7cd2511583c68c9b7511d10","Info:   0 out of   1 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v8.4.255.0 not signed: https://api.github.com/repos/rubyjs/libv8/releases/28755543","Warn: release artifact v7.3.492.27.1 not signed: https://api.github.com/repos/rubyjs/libv8/releases/16952643","Warn: release artifact v7.3.492.27.0 not signed: https://api.github.com/repos/rubyjs/libv8/releases/16952591","Warn: release artifact v7.0.276.38.0beta1 not signed: https://api.github.com/repos/rubyjs/libv8/releases/14081547","Warn: release artifact v6.7.288.46.1 not signed: https://api.github.com/repos/rubyjs/libv8/releases/11807603","Warn: release artifact v8.4.255.0 does not have provenance: https://api.github.com/repos/rubyjs/libv8/releases/28755543","Warn: release artifact v7.3.492.27.1 does not have provenance: https://api.github.com/repos/rubyjs/libv8/releases/16952643","Warn: release artifact v7.3.492.27.0 does not have provenance: https://api.github.com/repos/rubyjs/libv8/releases/16952591","Warn: release artifact v7.0.276.38.0beta1 does not have provenance: https://api.github.com/repos/rubyjs/libv8/releases/14081547","Warn: release artifact v6.7.288.46.1 does not have provenance: https://api.github.com/repos/rubyjs/libv8/releases/11807603"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 24 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T22:07:59.350Z","repository_id":1523942,"created_at":"2025-08-17T22:07:59.350Z","updated_at":"2025-08-17T22:07:59.350Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31990577,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"ssl_error","status_checked_at":"2026-04-18T20:23:29.375Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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"}},"owner":{"login":"rubyjs","name":"rubyjs","uuid":"2748558","kind":"organization","description":"","email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/2748558?v=4","repositories_count":7,"last_synced_at":"2024-03-25T20:03:02.054Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rubyjs","funding_links":[],"total_stars":2691,"followers":5,"following":0,"created_at":"2022-11-02T16:23:31.738Z","updated_at":"2024-03-25T20:03:02.070Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubyjs","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubyjs/repositories"},"packages":[],"commits":{"id":19284,"full_name":"rubyjs/libv8","default_branch":"master","total_commits":576,"total_committers":43,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":13.395348837209303,"dds":0.38888888888888884,"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2026-04-28T20:26:50.796Z","last_synced_commit":"f7f0b56df6b1e6f3a09d1ebeb88bf220b379d858","created_at":"2023-03-07T11:40:36.570Z","updated_at":"2026-04-28T20:24:41.077Z","committers":[{"name":"Petko Bordjukov","email":"bordjukov@gmail.com","login":"ignisf","count":352},{"name":"Charles Lowell","email":"cowboyd@thefrontside.net","login":"cowboyd","count":90},{"name":"Logan Lowell","email":"fractaloop@thefrontside.net","login":null,"count":34},{"name":"Geoff Garside","email":"geoff@geoffgarside.co.uk","login":"geoffgarside","count":15},{"name":"Trung Lê","email":"trung.le@ruby-journal.com","login":null,"count":13},{"name":"nightpool","email":"nightpool@cybre.space","login":"nightpool","count":8},{"name":"Joris van Rooij","email":"jorrizza@jrrzz.net","login":"jorrizza","count":7},{"name":"Petko Bordjukov","email":"petko.bordjukov@shtrak.bg","login":null,"count":6},{"name":"Jb Aviat","email":"jb@sqreen.io","login":null,"count":4},{"name":"Jarred Holman","email":"jarred.holman@gmail.com","login":"jarredholman","count":4},{"name":"Andrea C. Granata","email":"andrea.granata@zephirworks.com","login":null,"count":3},{"name":"NARUSE, Yui","email":"naruse@airemix.jp","login":"nurse","count":3},{"name":"stereobooster","email":"stereobooster@gmail.com","login":"stereobooster","count":3},{"name":"Nathan Van der Auwera","email":"nathan.vanderauwera@vasco.com","login":null,"count":2},{"name":"Brad Landers","email":"brad@bradlanders.com","login":"bradland","count":2},{"name":"Jordon Bedwell","email":"jordon@envygeeks.io","login":"envygeeks","count":2},{"name":"Olivier Lacan","email":"hi@olivierlacan.com","login":"olivierlacan","count":2},{"name":"Edouard Bonlieu","email":"ebonlieu@ocs.online.net","login":null,"count":1},{"name":"Igor Kapkov","email":"igasgeek@me.com","login":null,"count":1},{"name":"Lawson Kurtz","email":"lawson.kurtz@viget.com","login":null,"count":1},{"name":"Edouard B","email":"ebonlieusubs@gmail.com","login":null,"count":1},{"name":"masked interrupt","email":"maskedinterrupt@outlook.com","login":"maskedinterrupt","count":1},{"name":"daniel","email":"daniel.granat@gmail.com","login":"danielgranat","count":1},{"name":"Valentin Klinghammer","email":"valentin@quelltextfabrik.de","login":"ValentinKlinghammer","count":1},{"name":"Tetsuya Shinone","email":"info@semnil.com","login":"semnil","count":1},{"name":"Sam Saffron","email":"sam.saffron@gmail.com","login":"SamSaffron","count":1},{"name":"Rodrigo Kochenburger","email":"divoxx@gmail.com","login":"divoxx","count":1},{"name":"Robdel12","email":"robertdeluca19@gmail.com","login":"Robdel12","count":1},{"name":"Rene Treffer","email":"treffer+github@measite.de","login":"rtreffer","count":1},{"name":"Prem Sichanugrist","email":"s@sikac.hu","login":"sikachu","count":1},{"name":"Mauricio Pasquier Juan","email":"mauricio@pasquierjuan.com.ar","login":"mauriciopasquier","count":1},{"name":"Matt Connolly","email":"matt.connolly@me.com","login":"mattconnolly","count":1},{"name":"Mark King","email":"mark@vemek.co","login":"vemek","count":1},{"name":"Loic Nageleisen","email":"loic.nageleisen@gmail.com","login":"lloeki","count":1},{"name":"Jose Luis Duran","email":"jlduran","login":"jlduran","count":1},{"name":"Jacob Rothstein","email":"hi@jbr.me","login":"jbr","count":1},{"name":"Harry Brundage","email":"harry.brundage@gmail.com","login":"airhorns","count":1},{"name":"Greg Howdeshell","email":"greg.howdeshell@gmail.com","login":"poloka","count":1},{"name":"Dan Rice","email":"drice@diego","login":"dnrce","count":1},{"name":"Charles Strahan","email":"charles.c.strahan@gmail.com","login":"cstrahan","count":1},{"name":"Brian Shirai","email":"brixen@gmail.com","login":"brixen","count":1},{"name":"Benjamin Quorning","email":"benjamin@quorning.net","login":"bquorning","count":1},{"name":"Alastair Pharo","email":"asppsa@gmail.com","login":"asppsa","count":1}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-29T00:00:10.453Z","repositories_count":6222962,"commits_count":899873824,"contributors_count":34898226,"owners_count":1147502,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"rubyjs/libv8","html_url":"https://github.com/rubyjs/libv8","last_synced_at":"2026-04-19T14:01:14.919Z","status":"error","issues_count":81,"pull_requests_count":21,"avg_time_to_close_issue":45775694.87341772,"avg_time_to_close_pull_request":15768272.263157895,"issues_closed_count":79,"pull_requests_closed_count":19,"pull_request_authors_count":13,"issue_authors_count":55,"avg_comments_per_issue":7.814814814814815,"avg_comments_per_pull_request":5.0,"merged_pull_requests_count":5,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-12T13:09:05.082Z","updated_at":"2026-04-19T14:01:14.920Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyjs%2Flibv8/issues","issue_labels_count":{"type: upstream issue":11,"os: linux":9,"type: bug":9,"os: osx":6,"needs: investigation":5,"os: freebsd":5,"needs: patch":4,"type: feature request":3,"status: help needed":3,"compiler: clang":2,"arch: x64":2,"os: windows":2,"arch: arm64":2,"arch: arm":2,"compiler: gcc":1,"status: blocked":1,"arch: ia32":1,"status: wontfix":1,"severity: security implications":1},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":54,"COLLABORATOR":18,"CONTRIBUTOR":8},"pull_request_author_associations_count":{"NONE":11,"CONTRIBUTOR":5,"COLLABORATOR":5},"issue_authors":{"ignisf":16,"lloeki":6,"SamSaffron":3,"ksylvest":2,"cowboyd":2,"anatol":2,"gsamokovarov":1,"nanaya":1,"theycallmeswift":1,"sergey-alekseev":1,"marguerite":1,"spagu":1,"stefanahman":1,"courtland":1,"tbolender":1,"selfagency":1,"hegwin":1,"MrSteve2":1,"HugeTerrificSpider":1,"Fjan":1,"zimbatm":1,"gschlager":1,"mikhaillopandia":1,"seekshiva":1,"jdongelmans":1,"jeffque":1,"ssnake":1,"volkanunsal":1,"marcomd":1,"runlevel5":1,"RISCfuture":1,"mriveros":1,"emgosa":1,"bakahakka":1,"tisba":1,"chrishough":1,"deepj":1,"mikekytyzov":1,"sleekweasel":1,"Sega100500":1,"takahiromasui001":1,"madscientist159":1,"coding-bunny":1,"dojutsu-user":1,"blshkv":1,"IvayloT":1,"nonuabi":1,"odidev":1,"alexagranov":1,"niko":1,"plainwu":1,"poloka":1,"Shaglock":1,"solidiquis":1,"Hax4us":1},"pull_request_authors":{"runlevel5":4,"nightpool":4,"ksylvest":3,"Ridje":1,"rafaelfranca":1,"ignisf":1,"briandunn":1,"poloka":1,"cataphract":1,"bekhruzRakhmonov":1,"sai-kumar-peddireddy":1,"knu":1,"cantino":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-21T00:00:07.919Z","repositories_count":14348595,"issues_count":34448815,"pull_requests_count":112774473,"authors_count":11241818,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[{"login":"ignisf","count":17,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ignisf"},{"login":"nightpool","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nightpool"},{"login":"cowboyd","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/cowboyd"}],"active_maintainers":[]},"events":{"total":{"ForkEvent":1},"last_year":{}},"keywords":[],"dependencies":[{"ecosystem":"docker","filepath":"release/x86_64-linux-musl/Dockerfile","sha":null,"kind":"manifest","created_at":"2023-07-06T07:27:26.949Z","updated_at":"2023-07-06T07:27:26.949Z","repository_link":"https://github.com/rubyjs/libv8/blob/master/release/x86_64-linux-musl/Dockerfile","dependencies":[{"id":11150659946,"package_name":"alpine","ecosystem":"docker","requirements":"3.7","direct":true,"kind":"build","optional":false}]},{"ecosystem":"rubygems","filepath":"libv8.gemspec","sha":null,"kind":"manifest","created_at":"2023-07-06T07:27:27.893Z","updated_at":"2023-07-06T07:27:27.893Z","repository_link":"https://github.com/rubyjs/libv8/blob/master/libv8.gemspec","dependencies":[{"id":11150660066,"package_name":"rake","ecosystem":"rubygems","requirements":"~\u003e 12","direct":true,"kind":"development","optional":false},{"id":11150660067,"package_name":"rake-compiler","ecosystem":"rubygems","requirements":"~\u003e 0","direct":true,"kind":"development","optional":false},{"id":11150660068,"package_name":"rspec","ecosystem":"rubygems","requirements":"~\u003e 3","direct":true,"kind":"development","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2023-11-09T00:31:26.180Z","updated_at":"2023-11-09T00:31:26.180Z","repository_link":"https://github.com/rubyjs/libv8/blob/master/Gemfile","dependencies":[]}],"score":9.355911495295402,"created_at":"2024-12-15T21:38:07.035Z","updated_at":"2026-04-30T19:30:21.582Z","avatar_url":"https://github.com/rubyjs.png","language":"Ruby","monthly_downloads":0,"readme":"# libv8\n[![Gem Version](https://badge.fury.io/rb/libv8.svg)](https://badge.fury.io/rb/libv8)\n[![Number of downloads](https://ruby-gem-downloads-badge.herokuapp.com/libv8?type=total)](https://rubygems.org/gems/libv8)\n[![Build Status](https://travis-ci.org/rubyjs/libv8.svg?branch=master)](https://travis-ci.org/rubyjs/libv8)\n[![Join the chat at https://gitter.im/cowboyd/therubyracer](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/cowboyd/therubyracer?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n[![Code Triagers Badge](https://www.codetriage.com/cowboyd/libv8/badges/users.svg)](https://www.codetriage.com/cowboyd/libv8)\n\nA gem for distributing the v8 runtime libraries and headers in both\nsource and binary form.\n\n### Status: UNMAINTAINED\n\nThis project is [UNMAINTAINED](https://github.com/rubyjs/libv8/issues/328).\n\nWhy?\n\n- The binding to libv8 that therubyracer implements is quite tight, making updating libv8 a huge amount of work. [mini_racer](https://github.com/rubyjs/mini_racer) has a thinner interface for that reason.\n- So many issues come from depot tools and the bespoke v8 toolchain, which only support what Google Chrome needs to support. [libv8-node](https://github.com/rubyjs/libv8-node) has been created to tackle those issues, leveraging the good work of Node.js people, and mini_racer uses that.\n\nIf you use a mini_racer that depends on libv8, please move to a more recent version.\n\nIf you use therubyracer and are thus stuck with v8 3.16, please move to mini_racer. If one of your dependencies uses therubyracer, please reach out to them so that they upgrade to mini_racer.\n\nIf there are needs coming from either libv8 or therubyracer that you feel are unmet by mini_racer + libv8-node, please open issues on their respective repositories.\n\n### Why?\n\nThe goal of libv8 is two fold: provide a binary gem containing the a\npre-compiled libv8_monolith.a for as many platforms as possible while at the\nsame time supporting for an automated compilation for all others.\n\nNot only does this drastically reduce gem install times, but it also\nreduces dependencies on the local machine receiving the gem. It also\nopens the door for supporting Windows.\n\n### Do I get a binary?\n\nThat depends on your platform. Right now, we support the following\nplatforms.\n\n* x86_64-darwin-19\n* x86_64-darwin-18\n* x86_64-darwin-17\n* x86_64-linux\n* x86-linux\n\nIf you don't see your platform on this list, first, make sure that it\ninstalls from source, and second talk to us about setting up a binary\ndistro for you.\n\n#### Note on ~~OS X~~ macOS binaries\n\nIf you're installing libv8 on a macOS system that is present in the list above,\nand despite that, RubyGems insists on downloading a source version and compiling\nit, check the output of `ruby -e 'puts Gem::Platform.local'`. If it does not\nreflect the current version of your OS, recompile Ruby.\n\nThe platform gets hardcoded in Ruby during compilation and if you've updated\nyour OS since you've compiled Ruby, it does not represent correctly your current\nplatform which leads to RubyGems trying to download a platform-specific gem for\nthe older version of your OS.\n\n### Versioning\n\nVersions of the libv8 gem track the version of V8 itself, adding its\nown point release after the main V8 version. So libv8 `5.0.71.35.5`\nand `5.0.71.35.14` both correspond to V8 version `5.0.71.35`. Another\nway to think about it would be that `5.0.71.35.14` is the 14th release\nof the libv8 rubygem based on V8 version `5.0.71.35`\n\n#### Source and Binary Releases\n\nStarting with libv8 `3.11.8.0`, all even point releases contain\nonly a source-based distribution, while odd point releases contain both\na source-based distribution *and* binary distributions. However both\npoint releases correspond to the *exact* underlying code. The only\ndifference is the version number.\n\nThis way, the most recent version of the gem always has binary\ndistributions, but if, for whatever reason, you have problems with the\nbinaries, you can always \"lock in\" your dependency a single point version\ndown, forcing it to compile from source.\n\nSo for example, `5.0.71.35.3` contains all the binary distributions,\nwhile `5.0.71.35.2` is the exact same code, but contain only a\nsource-based distribution\n\n\u003e This step release system is a workaround to carlhuda/bundler#1537\n\n### Requirements\n\nBuilding the V8 library from source imposes the following requirements:\n\n* An x86/x86_64 CPU. See [#261](https://github.com/rubyjs/libv8/issues/261) for ARM state.\n* Linux with glibc or macOS. See\n  [#259](https://github.com/rubyjs/libv8/issues/259),\n  [#253](https://github.com/rubyjs/libv8/issues/253) and\n  [#217](https://github.com/rubyjs/libv8/issues/217) for state of other\n  platforms.\n* Python 2\n* pkg-config\n* GLib 2\n\n### Using a git version\n\nIf you want to use the latest unstable version of the gem you can do\nso by specifying the git repo as a gem source. Just make sure you add\nthe following to your `Gemfile`:\n\n```Ruby\ngem \"libv8\", github: \"rubyjs/libv8\", submodules: true\n```\n\nYou can find more info on using a git repo as a gem source in\n[Bundler's documentation](http://bundler.io/v1.3/git.html).\n\n### What if I can't install from source?\n\nIf you can fix V8's build system so that it correctly compiles for your\nplatform, we'll pull it right in!\n\nTo get the source, these commands will get you started:\n\n    git clone --recursive git://github.com/rubyjs/libv8.git\n    cd libv8\n    bundle install\n    bundle exec rake compile\n\n### About\n\nThis project spun off of\n[therubyracer](http://github.com/rubyjs/therubyracer) which depends\non having a specific version of V8 to compile and run against.\nHowever, actually delivering that version reliably to all the\ndifferent platforms proved to be a challenge to say the least.\n\nWe got tired of waiting 5 minutes for V8 to compile every time we\ninstalled that gem.\n\n### Sponsored by\n\n\u003ca href=\"http://frontside.io\"\u003e![The Frontside](/thefrontside.png)\u003c/a\u003e\n\n### License\n\n(The MIT License)\n\nCopyright (c) 2009,2010 Charles Lowell\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["activerecord","activejob","mvc","rubygem","rack","rspec","crash-reporting","sinatra","json-parser","cucumber"],"project_url":"https://ruby.ecosyste.ms/api/v1/projects/120","html_url":"https://ruby.ecosyste.ms/projects/120"}