CINXE.COM
nokogiri | RubyGems.org | your community gem host
<!DOCTYPE html> <html lang="en"> <head> <title>nokogiri | RubyGems.org | your community gem host</title> <meta charset="UTF-8"> <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0" name="viewport"> <meta name="google-site-verification" content="AuesbWQ9MCDMmC1lbDlw25RJzyqWOcDYpuaCjgPxEZY" /> <link rel="apple-touch-icon" href="/apple-touch-icons/apple-touch-icon.png" /> <link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icons/apple-touch-icon-57x57.png" /> <link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icons/apple-touch-icon-72x72.png" /> <link rel="apple-touch-icon" sizes="76x76" href="/apple-touch-icons/apple-touch-icon-76x76.png" /> <link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icons/apple-touch-icon-114x114.png" /> <link rel="apple-touch-icon" sizes="120x120" href="/apple-touch-icons/apple-touch-icon-120x120.png" /> <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icons/apple-touch-icon-144x144.png" /> <link rel="apple-touch-icon" sizes="152x152" href="/apple-touch-icons/apple-touch-icon-152x152.png" /> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icons/apple-touch-icon-180x180.png" /> <link rel="mask-icon" href="/rubygems_logo.svg" color="#e9573f"> <link rel="fluid-icon" href="/fluid-icon.png"/> <link rel="search" type="application/opensearchdescription+xml" title="RubyGems.org" href="/opensearch.xml"> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"> <link rel="stylesheet" href="/assets/application-582326fe.css" /> <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin> <link href='https://fonts.googleapis.com/css?family=Roboto:100&subset=greek,latin,cyrillic,latin-ext' rel='stylesheet' type='text/css'> <link rel="alternate" type="application/atom+xml" href="https://feeds.feedburner.com/gemcutter-latest" title="RubyGems.org | Latest Gems"> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="RglDlT_L4oXEXUGeFGyB8elT7m1r6CR4DAiN4egoyTtfHCRuO7mvxVdsOrvo6PBTJcQiX-XqwxVGaYm-E47XIw" /> <link rel="alternate" type="application/atom+xml" title="nokogiri Version Feed" href="/gems/nokogiri/versions.atom" /> <!-- canonical url --> <link rel="canonical" href="https://rubygems.org/gems/nokogiri/versions/1.16.7" /> <!-- alternative language versions url --> <link rel="alternate" hreflang="en" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=en" /> <link rel="alternate" hreflang="nl" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=nl" /> <link rel="alternate" hreflang="zh-CN" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=zh-CN" /> <link rel="alternate" hreflang="zh-TW" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=zh-TW" /> <link rel="alternate" hreflang="pt-BR" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=pt-BR" /> <link rel="alternate" hreflang="fr" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=fr" /> <link rel="alternate" hreflang="es" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=es" /> <link rel="alternate" hreflang="de" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=de" /> <link rel="alternate" hreflang="ja" href="https://rubygems.org/gems/nokogiri/versions/1.16.7?locale=ja" /> <!-- unmatched alternative language fallback --> <link rel="alternate" hreflang="x-default" href="https://rubygems.org/gems/nokogiri/versions/1.16.7" /> <script type="importmap" data-turbo-track="reload">{ "imports": { "jquery": "/assets/jquery-15a62848.js", "@rails/ujs": "/assets/@rails--ujs-2089e246.js", "application": "/assets/application-2e68772c.js", "@hotwired/turbo-rails": "/assets/turbo.min-fae85750.js", "@hotwired/stimulus": "/assets/@hotwired--stimulus-132cbc23.js", "@hotwired/stimulus-loading": "/assets/stimulus-loading-1fc53fe7.js", "@stimulus-components/clipboard": "/assets/@stimulus-components--clipboard-d9c44ea9.js", "@stimulus-components/dialog": "/assets/@stimulus-components--dialog-74866932.js", "@stimulus-components/reveal": "/assets/@stimulus-components--reveal-77f6cb39.js", "@stimulus-components/checkbox-select-all": "/assets/@stimulus-components--checkbox-select-all-e7db6a97.js", "github-buttons": "/assets/github-buttons-3337d207.js", "webauthn-json": "/assets/webauthn-json-74adc0e8.js", "avo.custom": "/assets/avo.custom-6c281208.js", "stimulus-rails-nested-form": "/assets/stimulus-rails-nested-form-3f712873.js", "local-time": "/assets/local-time-a331fc59.js", "src/oidc_api_key_role_form": "/assets/src/oidc_api_key_role_form-4be5b362.js", "src/pages": "/assets/src/pages-dadbeada.js", "src/transitive_dependencies": "/assets/src/transitive_dependencies-b10fcc2e.js", "src/webauthn": "/assets/src/webauthn-2dadaa59.js", "controllers/application": "/assets/controllers/application-cfc24d46.js", "controllers/autocomplete_controller": "/assets/controllers/autocomplete_controller-226b74d2.js", "controllers/counter_controller": "/assets/controllers/counter_controller-0d6816db.js", "controllers/dialog_controller": "/assets/controllers/dialog_controller-8ea4210d.js", "controllers/dropdown_controller": "/assets/controllers/dropdown_controller-3303a695.js", "controllers/dump_controller": "/assets/controllers/dump_controller-1da6eec6.js", "controllers/exclusive_checkbox_controller": "/assets/controllers/exclusive_checkbox_controller-37e9aee8.js", "controllers/gem_scope_controller": "/assets/controllers/gem_scope_controller-53c91b5e.js", "controllers": "/assets/controllers/index-c3f5d3c4.js", "controllers/nav_controller": "/assets/controllers/nav_controller-160990e9.js", "controllers/onboarding_name_controller": "/assets/controllers/onboarding_name_controller-269565d4.js", "controllers/radio_reveal_controller": "/assets/controllers/radio_reveal_controller-141a7658.js", "controllers/recovery_controller": "/assets/controllers/recovery_controller-d2c3194e.js", "controllers/reveal_controller": "/assets/controllers/reveal_controller-e9860d20.js", "controllers/reveal_search_controller": "/assets/controllers/reveal_search_controller-37382e84.js", "controllers/scroll_controller": "/assets/controllers/scroll_controller-046a9677.js", "controllers/search_controller": "/assets/controllers/search_controller-64a75d53.js", "controllers/stats_controller": "/assets/controllers/stats_controller-cff5134c.js" } }</script> <link rel="modulepreload" href="/assets/jquery-15a62848.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/@rails--ujs-2089e246.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/application-2e68772c.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/turbo.min-fae85750.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/@hotwired--stimulus-132cbc23.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/stimulus-loading-1fc53fe7.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/@stimulus-components--clipboard-d9c44ea9.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/@stimulus-components--dialog-74866932.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/@stimulus-components--reveal-77f6cb39.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/@stimulus-components--checkbox-select-all-e7db6a97.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/github-buttons-3337d207.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/webauthn-json-74adc0e8.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/local-time-a331fc59.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/src/oidc_api_key_role_form-4be5b362.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/src/pages-dadbeada.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/src/transitive_dependencies-b10fcc2e.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/src/webauthn-2dadaa59.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/application-cfc24d46.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/autocomplete_controller-226b74d2.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/counter_controller-0d6816db.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/dialog_controller-8ea4210d.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/dropdown_controller-3303a695.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/dump_controller-1da6eec6.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/exclusive_checkbox_controller-37e9aee8.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/gem_scope_controller-53c91b5e.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/index-c3f5d3c4.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/nav_controller-160990e9.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/onboarding_name_controller-269565d4.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/radio_reveal_controller-141a7658.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/recovery_controller-d2c3194e.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/reveal_controller-e9860d20.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/reveal_search_controller-37382e84.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/scroll_controller-046a9677.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/search_controller-64a75d53.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <link rel="modulepreload" href="/assets/controllers/stats_controller-cff5134c.js" nonce="2c5ee533883b7845adb8d6a2795f1533"> <script type="module" nonce="2c5ee533883b7845adb8d6a2795f1533">import "application"</script> </head> <body class="" data-controller="nav" data-nav-expanded-class="mobile-nav-is-expanded"> <!-- Top banner --> <header class="header header--interior" data-nav-target="header collapse"> <div class="l-wrap--header"> <a title="RubyGems" class="header__logo-wrap" data-nav-target="logo" href="/"> <span class="header__logo" data-icon="⬡">⬢</span> <span class="t-hidden">RubyGems</span> </a> <a class="header__club-sandwich" href="#" data-action="nav#toggle focusin->nav#focus click@window->nav#hide"> <span class="t-hidden">Navigation menu</span> </a> <div class="header__nav-links-wrap"> <div class="header__search-wrap" role="search"> <form data-controller="autocomplete" data-autocomplete-selected-class="selected" action="/search" accept-charset="UTF-8" method="get"> <input type="search" name="query" id="query" placeholder="Search Gems…" class="header__search" autocomplete="off" aria-autocomplete="list" data-autocomplete-target="query" data-action="autocomplete#suggest keydown.down->autocomplete#next keydown.up->autocomplete#prev keydown.esc->autocomplete#hide keydown.enter->autocomplete#clear click@window->autocomplete#hide focus->autocomplete#suggest blur->autocomplete#hide" data-nav-target="search" /> <ul class="suggest-list" role="listbox" data-autocomplete-target="suggestions"></ul> <template id="suggestion" data-autocomplete-target="template"> <li class="menu-item" role="option" tabindex="-1" data-autocomplete-target="item" data-action="click->autocomplete#choose mouseover->autocomplete#highlight"></li> </template> <label id="querylabel" for="query"> <span class="t-hidden">Search Gems…</span> </label> <input type="submit" value="⌕" id="search_submit" class="header__search__icon" aria-labelledby="querylabel" data-disable-with="⌕" /> </form></div> <nav class="header__nav-links" data-controller="dropdown"> <a class="header__nav-link " href="https://rubygems.org/releases">Releases</a> <a class="header__nav-link" href="https://blog.rubygems.org">Blog</a> <a class="header__nav-link" href="/gems">Gems</a> <a class="header__nav-link" href="https://guides.rubygems.org">Guides</a> <a class="header__nav-link " href="/sign_in">Sign in</a> <a class="header__nav-link " href="/sign_up">Sign up</a> </nav> </div> </div> </header> <main class="main--interior" data-nav-target="collapse"> <div class="l-wrap--b"> <h1 class="t-display page__heading"> <a class="t-link--black" href="/gems/nokogiri">nokogiri</a> <i class="page__subheading">1.16.7</i> </h1> <div class="l-overflow"> <div class="l-colspan--l colspan--l--has-border"> <div class="gem__intro"> <div id="markup" class="gem__desc"> <p>Nokogiri (鋸) makes it easy and painless to work with XML and HTML from Ruby. It provides a sensible, easy-to-understand API for reading, writing, modifying, and querying documents. It is fast and standards-compliant by relying on native parsers like libxml2, libgumbo, or xerces.</p> </div> </div> <div class="gem__install"> <h2 class="gem__ruby-version__heading t-list__heading"> Gemfile: <div class="gem__code-wrap" data-controller="clipboard" data-clipboard-success-content-value="✔"><input type="text" name="gemfile_text" id="gemfile_text" value="gem 'nokogiri', '~> 1.16', '>= 1.16.7'" class="gem__code" readonly="readonly" data-clipboard-target="source" /><span class="gem__code__icon" title="Copy to clipboard" data-action="click->clipboard#copy" data-clipboard-target="button">=</span></div> </h2> <h2 class="gem__ruby-version__heading t-list__heading"> install: <div class="gem__code-wrap" data-controller="clipboard" data-clipboard-success-content-value="✔"><input type="text" name="install_text" id="install_text" value="gem install nokogiri" class="gem__code" readonly="readonly" data-clipboard-target="source" /><span class="gem__code__icon" title="Copy to clipboard" data-action="click->clipboard#copy" data-clipboard-target="button">=</span></div> </h2> </div> <div class="l-half--l"> <div class="versions"> <h3 class="t-list__heading">Versions:</h3> <ol class="gem__versions t-list__items"> <li class="gem__version-wrap"> <a class="t-list__item" href="/gems/nokogiri/versions/1.16.7">1.16.7</a> <small class="gem__version__date">July 27, 2024</small> <span class="gem__version__date">(4.41 MB)</span> </li> <li class="gem__version-wrap"> <a class="t-list__item" href="/gems/nokogiri/versions/1.16.7-x86_64-linux">1.16.7</a> <small class="gem__version__date">July 27, 2024</small> <span class="gem__version__date platform">x86_64-linux</span> <span class="gem__version__date">(3.92 MB)</span> </li> <li class="gem__version-wrap"> <a class="t-list__item" href="/gems/nokogiri/versions/1.16.7-x86_64-darwin">1.16.7</a> <small class="gem__version__date">July 27, 2024</small> <span class="gem__version__date platform">x86_64-darwin</span> <span class="gem__version__date">(6.47 MB)</span> </li> <li class="gem__version-wrap"> <a class="t-list__item" href="/gems/nokogiri/versions/1.16.7-x86-mingw32">1.16.7</a> <small class="gem__version__date">July 27, 2024</small> <span class="gem__version__date platform">x86-mingw32</span> <span class="gem__version__date">(5.87 MB)</span> </li> <li class="gem__version-wrap"> <a class="t-list__item" href="/gems/nokogiri/versions/1.16.7-x86-linux">1.16.7</a> <small class="gem__version__date">July 27, 2024</small> <span class="gem__version__date platform">x86-linux</span> <span class="gem__version__date">(4.1 MB)</span> </li> </ol> <a class="gem__see-all-versions t-link--gray t-link--has-arrow" href="https://rubygems.org/gems/nokogiri/versions">Show all versions (946 total)</a> </div> </div> <div class = "l-half--l"> <div class="dependencies gem__dependencies" id="runtime_dependencies"> <h3 class="t-list__heading">Runtime Dependencies (2):</h3> <div class="t-list__items"> <div class="gem__requirement-wrap"> <a class="t-list__item" href="/gems/mini_portile2"><strong>mini_portile2</strong></a> ~> 2.8.2 </div> <div class="gem__requirement-wrap"> <a class="t-list__item" href="/gems/racc"><strong>racc</strong></a> ~> 1.4 </div> </div> </div> <div class="dependencies_list"> <a class="gem__see-all-versions t-link--gray t-link--has-arrow push--s" href="/gems/nokogiri/versions/1.16.7/dependencies">Show all transitive dependencies</a> </div> </div> <div class="gem__members"> <h3 class="t-list__heading">Owners:</h3> <div class="gem__users"> <a alt="tenderlove" title="tenderlove" href="/profiles/tenderlove"><img id="gravatar-207" width="48" height="48" src="/users/207/avatar.jpeg?size=48&theme=light" /></a><a alt="knu" title="knu" href="/profiles/knu"><img id="gravatar-1888" width="48" height="48" src="/users/1888/avatar.jpeg?size=48&theme=light" /></a><a alt="flavorjones" title="flavorjones" href="/profiles/flavorjones"><img id="gravatar-2583" width="48" height="48" src="/users/2583/avatar.jpeg?size=48&theme=light" /></a> </div> <h3 class="t-list__heading">Pushed by:</h3> <div class="gem__users"> <a alt="flavorjones" title="flavorjones" href="/profiles/flavorjones"><img id="gravatar-2583" width="48" height="48" src="/users/2583/avatar.jpeg?size=48&theme=light" /></a> </div> <h3 class="t-list__heading">Authors:</h3> <ul class="t-list__items"> <li class="t-list__item"> <p>Mike Dalessio, Aaron Patterson, Yoko Harada, Akinori MUSHA, John Shahid, Karol Bucek, Sam Ruby, Craig Barnes, Stephen Checkoway, Lars Kanis, Sergio Arbeo, Timothy Elliott, Nobuyoshi Nakada</p> </li> </ul> <h3 class="t-list__heading">SHA 256 checksum:</h3> <div class="gem__code-wrap" data-controller="clipboard" data-clipboard-success-content-value="✔"><input type="text" name="gem_sha_256_checksum" id="gem_sha_256_checksum" value="f819cbfdfb0a7b19c9c52c6f2ca63df0e58a6125f4f139707b586b9511d7fe95" class="gem__code" readonly="readonly" data-clipboard-target="source" /><span class="gem__code__icon" title="Copy to clipboard" data-action="click->clipboard#copy" data-clipboard-target="button">=</span></div> </div> <div class="gem__navigation"> <a class="gem__previous__version" href="/gems/nokogiri/versions/1.16.6">← Previous version</a> </div> </div> <div class="gem__aside l-col--r--pad"> <span class="github-btn" data-user="sparklemotion" data-repo="nokogiri" data-type="star" data-count="true" data-size="large"> <a class="gh-btn" href="#" rel="noopener noreferrer" target="_blank"> <span class="gh-ico" aria-hidden="true"></span> <span class="gh-text"></span> </a> <a class="gh-count" href="#" rel="noopener noreferrer" target="_blank" aria-hidden="true"></a> </span> <div class="gem__downloads-wrap" data-href="/api/v1/downloads/nokogiri-1.16.7.json"> <h2 class="gem__downloads__heading t-text--s"> Total downloads <span class="gem__downloads">878,921,913</span> </h2> <h2 class="gem__downloads__heading t-text--s"> For this version <span class="gem__downloads">663,097</span> </h2> </div> <h2 class="gem__ruby-version__heading t-list__heading"> Version Released: <span class="gem__rubygem-version-age"> <p><time datetime="2024-07-27T19:52:37Z" data-local="time-ago">July 27, 2024 7:52pm</time></p> </span> </h2> <h2 class="gem__ruby-version__heading t-list__heading"> License: <span class="gem__ruby-version"> <p>MIT</p> </span> </h2> <h2 class="gem__ruby-version__heading t-list__heading"> Required Ruby Version: <i class="gem__ruby-version"> >= 3.0.0 </i> </h2> <h2 class="gem__ruby-version__heading t-list__heading"> New versions require MFA: <span class="gem__ruby-version"> true </span> </h2> <h2 class="gem__ruby-version__heading t-list__heading"> Version published with MFA: <span class="gem__ruby-version"> true </span> </h2> <h3 class="t-list__heading">Links:</h3> <div class="t-list__items"> <a rel="nofollow" class="gem__link t-list__item" id="home" href="https://nokogiri.org">Homepage</a> <a rel="nofollow" class="gem__link t-list__item" id="changelog" href="https://nokogiri.org/CHANGELOG.html">Changelog</a> <a rel="nofollow" class="gem__link t-list__item" id="code" href="https://github.com/sparklemotion/nokogiri">Source Code</a> <a rel="nofollow" class="gem__link t-list__item" id="docs" href="https://nokogiri.org/rdoc/index.html">Documentation</a> <a rel="nofollow" class="gem__link t-list__item" id="bugs" href="https://github.com/sparklemotion/nokogiri/issues">Bug Tracker</a> <a rel="nofollow" class="gem__link t-list__item" id="download" href="/downloads/nokogiri-1.16.7.gem">Download</a> <a class="gem__link t-list__item" href="https://my.diffend.io/gems/nokogiri/prev/1.16.7">Review changes</a> <a class="gem__link t-list__item" id="badge" href="https://badge.fury.io/rb/nokogiri/install">Badge</a> <a class="toggler gem__link t-list__item" id="subscribe" href="/sign_in">Subscribe</a> <a class="gem__link t-list__item" id="rss" href="/gems/nokogiri/versions.atom">RSS</a> <a class="gem__link t-list__item" href="mailto:support@rubygems.org?subject=Reporting Abuse on nokogiri">Report abuse</a> <a rel="nofollow" class="gem__link t-list__item" id="reverse_dependencies" href="/gems/nokogiri/reverse_dependencies">Reverse dependencies</a> </div> </div> </div> </div> </main> <footer class="footer" data-nav-target="collapse"> <div class="l-wrap--footer"> <div class="l-overflow"> <div class="nav--v l-col--r--pad"> <a class="nav--v__link--footer" href="https://status.rubygems.org">Status</a> <a class="nav--v__link--footer" href="https://uptime.rubygems.org">Uptime</a> <a class="nav--v__link--footer" href="https://github.com/rubygems/rubygems.org">Code</a> <a class="nav--v__link--footer" href="/pages/data">Data</a> <a class="nav--v__link--footer" href="https://groups.google.com/group/rubygems-org">Discuss</a> <a class="nav--v__link--footer" href="/stats">Stats</a> <a class="nav--v__link--footer" href="https://guides.rubygems.org/contributing/">Contribute</a> <a class="nav--v__link--footer" href="/pages/about">About</a> <a class="nav--v__link--footer" href="mailto:support@rubygems.org">Help</a> <a class="nav--v__link--footer" href="https://guides.rubygems.org/rubygems-org-api">API</a> <a class="nav--v__link--footer" href="/pages/security">Security</a> <a class="nav--v__link--footer" href="/ownership_calls">maintainers wanted</a> </div> <div class="l-colspan--l colspan--l--has-border"> <div class="footer__about"> <p> RubyGems.org is the Ruby community’s gem hosting service. Instantly <a href="https://guides.rubygems.org/publishing/">publish your gems</a> and then <a href="https://guides.rubygems.org/command-reference/#gem-install">install them</a>. Use <a href="https://guides.rubygems.org/rubygems-org-api/">the API</a> to find out more about <a href="/gems">available gems</a>. <a href="https://guides.rubygems.org/contributing/">Become a contributor</a> and improve the site yourself. </p> <p> RubyGems.org is made possible through a partnership with the greater Ruby community. <a href="https://www.fastly.com/">Fastly</a> provides bandwidth and CDN support, <a href="https://www.rubycentral.org/">Ruby Central</a> covers infrastructure costs, and funds ongoing development and ops work. <a href="/pages/sponsors">Learn more about our sponsors and how they work together</a>. </p> <p> We need your help to fund the developer time that keeps RubyGems.org running smoothly for everyone. <a href="https://rubycentral.org/#/portal/signup">Join Ruby Central today</a>. </p> </div> </div> </div> </div> <div class="footer__sponsors"> <a class="footer__sponsor footer__sponsor__ruby_central" href="https://rubycentral.org/" target="_blank" rel="noopener"> Supported by <span class="t-hidden">Ruby Central</span> </a> <a class="footer__sponsor footer__sponsor__dockyard" href="https://dockyard.com/ruby-on-rails-consulting" target="_blank" rel="noopener"> Designed by <span class="t-hidden">DockYard</span> </a> <a class="footer__sponsor footer__sponsor__dnsimple" href="https://dnsimple.link/resolving-rubygems" target="_blank" rel="noopener"> Resolved with <span class="t-hidden">DNSimple</span> </a> <a class="footer__sponsor footer__sponsor__datadog" href="https://www.datadoghq.com/" target="_blank" rel="noopener"> Monitored by <span class="t-hidden">Datadog</span> </a> <a class="footer__sponsor footer__sponsor__fastly" href="https://www.fastly.com/" target="_blank" rel="noopener"> Gems served by <span class="t-hidden">Fastly</span> </a> <a class="footer__sponsor footer__sponsor__honeybadger" href="https://www.honeybadger.io/" target="_blank" rel="noopener"> Monitored by <span class="t-hidden">Honeybadger</span> </a> <a class="footer__sponsor footer__sponsor__domainr" href="https://domainr.com/" target="_blank" rel="noopener"> Verified by <span class="t-hidden">Domainr</span> </a> <a class="footer__sponsor footer__sponsor__mend" href="https://mend.io/" target="_blank" rel="noopener"> Secured by <span class="t-hidden">Whitesource</span> </a> </div> <div class="footer__language_selector"> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=en">English</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=nl">Nederlands</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=zh-CN">简体中文</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=zh-TW">正體中文</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=pt-BR">Português do Brasil</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=fr">Français</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=es">Español</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=de">Deutsch</a> </div> <div class="footer__language"> <a class="nav--v__link--footer" href="/gems/nokogiri?locale=ja">日本語</a> </div> </div> </footer> <script type="text/javascript" defer src="https://www.fastly-insights.com/insights.js?k=3e63c3cd-fc37-4b19-80b9-65ce64af060a"></script> </body> </html>