# Poetry vs RubyGems

| Attribute | Poetry | RubyGems |
|---|---|---|
| **Vioscale score** | 58.4 (79% (high)) | 79.6 (31% (low)) |
| activity.commits_last_30d | 8 | 100 |
| adoption.dependent_repos | 1,968 | 225,927 |
| adoption.github_stars | 34,293 | 3,954 |
| adoption.package_downloads_weekly | 15,796,363 | - |
| deployment.options | `{"self_hosted":true}` | `{"cloud":true}` |
| description.long | A command-line tool that manages Python project dependencies, enforces consistent builds across environments, packages code for distribution, and handles publication to package registries. It includes intelligent conflict resolution for dependencies and creates isolated virtual environments. | RubyGems is an open-source package hosting and distribution platform where Ruby developers discover, install, and publish gems (libraries). As a free, community-maintained service, it processes billions of downloads and is central to the Ruby development ecosystem. |
| features.capabilities | `{"role":"manager_client","ecosystem":"python","deployment":"cli_local","open_source":"oss","pricing_model":"free","package_formats":"multi","private_packages":true,"lockfile_deterministic":true}` | `{"role":"public_registry","ecosystem":"ruby","deployment":"saas","open_source":"oss","pricing_model":"free","package_formats":"single"}` |
| integrations.count | 1 | - |
| integrations.list | `[{"name":"PyPI"}]` | - |
| language.primary | Python | Ruby |
| license.spdx | MIT | - |
| platform.support | `{"cli":true}` | `{"cli":true,"web":true}` |
| pricing | `{"type":"free","sourceUrl":"https://python-poetry.org","retrievedAt":"2026-08-14T08:32:09.718Z"}` | `{"type":"free","plans":[{"free":true,"name":"Free Public Registry","features":["Unlimited gem uploads","Unlimited downloads","Community support"],"description":"Publish and download gems; community-funded via donations","contactSales":false}],"summary":"Free. Community-funded via donations and sponsorships.","sourceUrl":"https://rubygems.org","retrievedAt":"2026-08-03T22:32:15.384Z"}` |
| pricing.free_tier | yes | yes |
| pricing.model | commercial | free |
| pricing.price_level | free | free |
| pricing.transparent | yes | yes |
| release.cadence_days | 34 | 6 |
| release.history | `[{"url":"https://github.com/python-poetry/poetry/releases/tag/2.4.1","date":"2026-05-09T15:17:39Z","type":"stable","version":"2.4.1"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.4.0","date":"2026-05-03T15:04:59Z","type":"stable","version":"2.4.0"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.3.4","date":"2026-04-12T15:14:53Z","type":"stable","version":"2.3.4"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.3.3","date":"2026-03-29T12:23:09Z","type":"stable","version":"2.3.3"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.3.2","date":"2026-02-01T15:39:36Z","type":"stable","version":"2.3.2"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.3.1","date":"2026-01-20T14:51:42Z","type":"stable","version":"2.3.1"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.3.0","date":"2026-01-18T13:44:52Z","type":"stable","version":"2.3.0"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.2.1","date":"2025-09-21T14:50:15Z","type":"stable","version":"2.2.1"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.2.0","date":"2025-09-14T11:43:56Z","type":"stable","version":"2.2.0"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.1.4","date":"2025-08-05T03:52:52Z","type":"stable","version":"2.1.4"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.1.3","date":"2025-05-04T13:37:05Z","type":"stable","version":"2.1.3"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.1.2","date":"2025-03-29T21:38:44Z","type":"stable","version":"2.1.2"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.1.1","date":"2025-02-16T21:04:55Z","type":"stable","version":"2.1.1"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.1.0","date":"2025-02-15T14:07:10Z","type":"stable","version":"2.1.0"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.0.1","date":"2025-01-12T05:10:10Z","type":"stable","version":"2.0.1"},{"url":"https://github.com/python-poetry/poetry/releases/tag/2.0.0","date":"2025-01-05T11:53:49Z","type":"stable","version":"2.0.0"},{"url":"https://github.com/python-poetry/poetry/releases/tag/1.8.5","date":"2024-12-06T16:29:16Z","type":"stable","version":"1.8.5"},{"url":"https://github.com/python-poetry/poetry/releases/tag/1.8.4","date":"2024-10-14T15:43:01Z","type":"stable","version":"1.8.4"},{"url":"https://github.com/python-poetry/poetry/releases/tag/1.8.3","date":"2024-05-08T13:45:03Z","type":"stable","version":"1.8.3"},{"url":"https://github.com/python-poetry/poetry/releases/tag/1.8.2","date":"2024-03-02T15:26:36Z","type":"stable","version":"1.8.2"}]` | `[{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.19","date":"2026-08-20T01:57:03Z","type":"stable","version":"v4.0.19"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.18","date":"2026-08-05T02:16:51Z","type":"stable","version":"v4.0.18"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.17","date":"2026-07-22T04:17:51Z","type":"stable","version":"v4.0.17"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.17","date":"2026-07-22T04:19:42Z","type":"stable","version":"bundler-v4.0.17"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.16","date":"2026-07-10T05:39:35Z","type":"stable","version":"v4.0.16"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.16","date":"2026-07-10T05:41:26Z","type":"stable","version":"bundler-v4.0.16"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.15","date":"2026-06-23T23:32:27Z","type":"stable","version":"v4.0.15"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.15","date":"2026-06-23T23:41:00Z","type":"stable","version":"bundler-v4.0.15"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.14","date":"2026-06-10T00:12:00Z","type":"stable","version":"bundler-v4.0.14"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.14","date":"2026-06-10T00:10:15Z","type":"stable","version":"v4.0.14"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.13","date":"2026-06-03T02:59:24Z","type":"stable","version":"v4.0.13"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.13","date":"2026-06-03T03:01:31Z","type":"stable","version":"bundler-v4.0.13"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.12","date":"2026-05-20T03:06:01Z","type":"stable","version":"v4.0.12"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.12","date":"2026-05-20T03:07:44Z","type":"stable","version":"bundler-v4.0.12"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.11","date":"2026-04-30T04:17:53Z","type":"stable","version":"v4.0.11"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.11","date":"2026-04-30T04:19:45Z","type":"stable","version":"bundler-v4.0.11"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.10","date":"2026-04-08T00:04:40Z","type":"stable","version":"bundler-v4.0.10"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.10","date":"2026-04-08T00:02:55Z","type":"stable","version":"v4.0.10"},{"url":"https://github.com/ruby/rubygems/releases/tag/v4.0.9","date":"2026-03-25T01:07:33Z","type":"stable","version":"v4.0.9"},{"url":"https://github.com/ruby/rubygems/releases/tag/bundler-v4.0.9","date":"2026-03-25T01:24:35Z","type":"stable","version":"bundler-v4.0.9"}]` |
| reliability.status_page | - | yes |
| security.disclosure_policy | - | yes |
| security.scorecard | 3 | 8.3 |
| security.vulnerabilities | `{"count":5,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=poetry&per_page=100","last_12m":2,"max_severity":"CRITICAL"}` | `{"count":5,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=rubygems&package_name=bundler&per_page=100","last_12m":0,"max_severity":"CRITICAL"}` |

## Capabilities (Package Registries)

| Capability | Poetry | RubyGems |
|---|:--:|:--:|
| **Core** |  |  |
| Role | Package manager client | Public registry |
| **Ecosystem** |  |  |
| Ecosystem / language | Python | Ruby |
| **Deployment** |  |  |
| Deployment | CLI-local | SaaS |
| **Formats** |  |  |
| Package formats supported | Many formats | Single ecosystem |
| **Hosting** |  |  |
| Private / scoped packages | ✓ | - |
| Upstream proxy / caching | - | - |
| **Resolution** |  |  |
| Lockfile / deterministic installs | ✓ | - |
| Workspaces / monorepo | - | - |
| Content-addressable store | - | - |
| **Supply chain** |  |  |
| Supply-chain integrity | - | - |
| Vulnerability / licence scanning | - | - |
| **Licensing** |  |  |
| Openness | Open-source | Open-source |
| **Pricing** |  |  |
| Pricing model | Free / OSS | Free / OSS |

*Source: Vioscale. Generated 2026-09-01T17:08:25.167Z. "-" = undocumented, not absent.*
