<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/rubygems/test_gem_commands_owner_command.rb, branch v3_4_9</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Merge RubyGems-3.6.9 and Bundler-2.6.9</title>
<updated>2025-05-22T16:20:28+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2025-05-22T07:15:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=616771e34e651d2a09ab3dad77d826c2100512e8'/>
<id>616771e34e651d2a09ab3dad77d826c2100512e8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Fix commands with 2 MFA requests when webauthn is enabled</title>
<updated>2024-11-04T10:04:58+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2024-10-22T14:57:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=9ce1b5e11f807541ba9e3f7800fe4f64dfd1a906'/>
<id>9ce1b5e11f807541ba9e3f7800fe4f64dfd1a906</id>
<content type='text'>
If a command requires two MFA authenticated requests, and webauthn is
enabled, then first one will succeed but the second one will fail
because it tries to reuse the OTP code from the first request and that
does not work.

This happens when you have not yet logged in to rubygems.org, or when
you have an API key with invalid scopes for the current operation. In
that case, we need:

* An API request to get a token or change scopes for the one that you
  have.
* Another API request to perform the actual operation.

Instead of trying to reuse the token, make sure it's cleared so we are
asked to authenticate again. We only do this when webauthn is enabled
because reusing TOPT tokens otherwise is allowed and I don't want to
break that.

https://github.com/rubygems/rubygems/commit/669e343935
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If a command requires two MFA authenticated requests, and webauthn is
enabled, then first one will succeed but the second one will fail
because it tries to reuse the OTP code from the first request and that
does not work.

This happens when you have not yet logged in to rubygems.org, or when
you have an API key with invalid scopes for the current operation. In
that case, we need:

* An API request to get a token or change scopes for the one that you
  have.
* Another API request to perform the actual operation.

Instead of trying to reuse the token, make sure it's cleared so we are
asked to authenticate again. We only do this when webauthn is enabled
because reusing TOPT tokens otherwise is allowed and I don't want to
break that.

https://github.com/rubygems/rubygems/commit/669e343935
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] TermError should inherit from SystemExit</title>
<updated>2024-11-04T10:04:58+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2024-10-31T18:47:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=1b190b342b2f642cbba12cf6551df2bec7432d71'/>
<id>1b190b342b2f642cbba12cf6551df2bec7432d71</id>
<content type='text'>
The `gem owner` command rescues standard errors, but does not rescue
SystemExit errors. If TermError is a standard error, not a system exit,
tests don't behave like realworld for this command.

https://github.com/rubygems/rubygems/commit/cf7d500f4d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The `gem owner` command rescues standard errors, but does not rescue
SystemExit errors. If TermError is a standard error, not a system exit,
tests don't behave like realworld for this command.

https://github.com/rubygems/rubygems/commit/cf7d500f4d
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Adapt failing tests to new output</title>
<updated>2024-02-02T19:26:58+00:00</updated>
<author>
<name>Vitaliy Serov</name>
<email>vitaliy.serov@onlyoffice.com</email>
</author>
<published>2024-02-02T11:58:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=93fdf66bc5fb547035efbd0ded899c3ea57370ab'/>
<id>93fdf66bc5fb547035efbd0ded899c3ea57370ab</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/cf549e71aa
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/cf549e71aa
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Vendor net-http and net-protocol in RubyGems</title>
<updated>2023-12-13T03:16:55+00:00</updated>
<author>
<name>David Rodríguez</name>
<email>deivid.rodriguez@riseup.net</email>
</author>
<published>2023-01-29T20:24:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ce924ce1fb029f19fd34a43f2012a485f4f62b53'/>
<id>ce924ce1fb029f19fd34a43f2012a485f4f62b53</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/99d91c9ed2
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/99d91c9ed2
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Create MockServer object to test WebAuthn logic to prevent real TCPServers from being created and be leaked into other tests</title>
<updated>2023-07-28T16:08:10+00:00</updated>
<author>
<name>Jenny Shen</name>
<email>jenny.shen@shopify.com</email>
</author>
<published>2023-07-20T05:42:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=afca1a31d05f3334342628a93d4d796c95e5f5fe'/>
<id>afca1a31d05f3334342628a93d4d796c95e5f5fe</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/96d6cb33a2
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/96d6cb33a2
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Create MultifactorAuthFetcher to reduce duplication among tests</title>
<updated>2023-07-28T16:08:09+00:00</updated>
<author>
<name>Jenny Shen</name>
<email>jenny.shen@shopify.com</email>
</author>
<published>2023-07-11T04:40:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3954a87d65f004e5148597ffa927dc7b9eef6fb8'/>
<id>3954a87d65f004e5148597ffa927dc7b9eef6fb8</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/dead211206
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/dead211206
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Move Webauthn listener thread to WebauthnListener class</title>
<updated>2023-07-28T16:08:08+00:00</updated>
<author>
<name>Jenny Shen</name>
<email>jenny.shen@shopify.com</email>
</author>
<published>2023-07-01T03:45:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=24913e3dda3d4ebd633e94e46ca221ebfcb9f89b'/>
<id>24913e3dda3d4ebd633e94e46ca221ebfcb9f89b</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/6ec474975e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/6ec474975e
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Move WebauthnListener into the Gem::GemcutterUtilities namespace</title>
<updated>2023-07-28T16:08:08+00:00</updated>
<author>
<name>Jenny Shen</name>
<email>jenny.shen@shopify.com</email>
</author>
<published>2023-06-29T20:10:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=fce04f9a6c9935ef3f188558dce177e277b17711'/>
<id>fce04f9a6c9935ef3f188558dce177e277b17711</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/3080394f81
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/3080394f81
</pre>
</div>
</content>
</entry>
<entry>
<title>[rubygems/rubygems] Add Webauthn verification poller to fetch OTP</title>
<updated>2023-07-28T16:08:07+00:00</updated>
<author>
<name>Jenny Shen</name>
<email>jenny.shen@shopify.com</email>
</author>
<published>2023-06-21T21:21:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=023d0f662b4487c2bd6636c4fcf1e223ef4c8b30'/>
<id>023d0f662b4487c2bd6636c4fcf1e223ef4c8b30</id>
<content type='text'>
https://github.com/rubygems/rubygems/commit/39c5e86a67
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/rubygems/rubygems/commit/39c5e86a67
</pre>
</div>
</content>
</entry>
</feed>
