aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* [ruby/resolv] Fix confusion of received response messageKazuki Yamaguchi2021-05-111-3/+3
| | | | | | | | | | | | | | | | | | | This is a follow up for commit 33fb966197f1 ("Remove sender/message_id pair after response received in resolv", 2020-09-11). As the @senders instance variable is also used for tracking transaction ID allocation, simply removing an entry without releasing the ID would eventually deplete the ID space and cause Resolv::DNS.allocate_request_id to hang. It seems the intention of the code was to check that the received DNS message is actually the response for the question made within the method earlier. Let's have it actually do so. [Bug #12838] https://bugs.ruby-lang.org/issues/12838 [Bug #17748] https://bugs.ruby-lang.org/issues/17748 https://github.com/ruby/resolv/commit/53ca9c9209
* Sync bundler & rubygemsDavid Rodríguez2021-05-1128-114/+171
|
* [ruby/irb] Treat encodings in exception correctlyaycabta2021-05-111-4/+11
| | | | https://github.com/ruby/irb/commit/4452adbe04
* [ruby/set] set is also dual licensesHiroshi SHIBATA2021-05-101-1/+1
| | | | https://github.com/ruby/set/commit/fc24457e53
* Add a space to separate sentences in the error messageAndrei Beliankou2021-05-101-1/+1
|
* [ruby/set] Adding section: What's HereBurdette Lamar2021-05-101-1/+1
| | | | https://github.com/ruby/set/commit/257dc452a7
* [ruby/set] Adding section: What's HereBurdette Lamar2021-05-101-1/+2
| | | | https://github.com/ruby/set/commit/8f4c62768d
* [ruby/set] Adding section: What's HereBurdette Lamar2021-05-101-10/+10
| | | | https://github.com/ruby/set/commit/254d927c8c
* [ruby/set] Adding section: What's HereBurdette Lamar2021-05-101-0/+154
| | | | https://github.com/ruby/set/commit/ab81354de1
* [ruby/irb] Dump ancestors' methods by ls commandMasataka Pocke Kuwabara2021-05-081-2/+26
| | | | https://github.com/ruby/irb/commit/73edff287c
* [ruby/timeout] Only run timeout_after hook on fiber scheduler if scheduler ↵Jeremy Evans2021-05-061-1/+1
| | | | | | exists https://github.com/ruby/timeout/commit/4893cde0ed
* [ruby/timeout] Avoid unnecessary object allocationJeremy Evans2021-05-061-3/+2
| | | | | | Idea from nobu. https://github.com/ruby/timeout/commit/aecdaa23b3
* [ruby/timeout] Make Timeout::Error#exception with multiple arguments not ↵Jeremy Evans2021-05-061-3/+6
| | | | | | | | | | | | | | | | | ignore arguments This makes: raise(Timeout::Error.new("hello"), "world") raise a TimeoutError instance with "world" as the message instead of "hello", for consistency with other Ruby exception classes. This required some internal changes to keep the tests passing. Fixes [Bug #17812] https://github.com/ruby/timeout/commit/952154dbf9
* [ruby/net-http] Do not require stringioKazuki Yamaguchi2021-05-061-1/+0
| | | | | | | | | It is not used in net/http library code since commit 15ccd0118c13 (r36473 in ruby svn trunk, 2012). require's in test suite are also cleaned up. https://github.com/ruby/net-http/commit/996d18a43f
* Fixed the file path for net-imap.gemspecHiroshi SHIBATA2021-05-061-1/+1
|
* Move net-imap.gemspec to under the lib/net/imap directory.Hiroshi SHIBATA2021-05-061-0/+0
|
* [ruby/net-imap] Many documentation improvementsnicholas a. evans2021-05-063-84/+163
| | | | | | | | | | | | | * updated obsoleted RFCs to current versions * linked most references to their RFCs * linked extension commands to their RFCs * removed unidiomatic `()` from instance method links * escaped `IMAP` in a few places * converted all response structs to explicit classes: this makes much nicer rdoc output than listing them all under "constants" * grouped flags constants into their own sections https://github.com/ruby/net-imap/commit/9cd562ac84
* [ruby/net-imap] Move send_*_data into net/imap/command_datanicholas a. evans2021-05-062-108/+109
| | | | | | Partially implements #10. https://github.com/ruby/net-imap/commit/64d1080d63
* [ruby/net-imap] Move flags to net/imap/flagsnicholas a. evans2021-05-062-48/+57
| | | | | | Partially implements #10. https://github.com/ruby/net-imap/commit/2a9afa83bf
* [ruby/net-imap] Move UTF7 & datetime formatting to net/imap/data_encodingnicholas a. evans2021-05-062-40/+48
| | | | | | Partially implements #10. https://github.com/ruby/net-imap/commit/0d43c5e856
* [ruby/net-imap] move command data formatters to net/imap/command_datanicholas a. evans2021-05-062-184/+193
| | | | | | Partially implements #10. https://github.com/ruby/net-imap/commit/24e929fdd2
* [ruby/net-imap] move response data structs to net/imap/response_datanicholas a. evans2021-05-062-502/+510
| | | | | | Partially implements #10. https://github.com/ruby/net-imap/commit/746757b936
* [ruby/net-imap] move ResponseParser to lib/net/imap/response_parsernicholas a. evans2021-05-062-1522/+1532
| | | | | | Partially implements #10. https://github.com/ruby/net-imap/commit/c2408aac9a
* [ruby/net-imap] Clean up authenticators rdocnicholas a. evans2021-05-065-18/+36
| | | | | | Added RFC links to all SASL mechanism specifications. https://github.com/ruby/net-imap/commit/53ff4b0c09
* [ruby/net-imap] Update AUTH=PLAIN to be a little closer to RFC4616nicholas a. evans2021-05-061-3/+18
| | | | | | | | * Add authzid support * must not contain NULL chars * improve rdoc https://github.com/ruby/net-imap/commit/a587fc71b7
* [ruby/net-imap] Move each authenticator to its own filenicholas a. evans2021-05-066-204/+257
| | | | | | | | | | | Also updates rdoc with SASL specifications and deprecations. Of these four, only `PLAIN` isn't deprecated! +@@authenticators+ was changed to a class instance var +@authenticators+. No one should have been using the class variable directly, so that should be fine. https://github.com/ruby/net-imap/commit/23f241b081
* [ruby/erb] Document that `<% #` doesn't workTakashi Kokubun2021-05-051-1/+1
| | | | | | [Bug #17846] https://github.com/ruby/erb/commit/b58b188028fbb403f75d48d62717373fc0908f7a
* [ruby/irb] Need reline >= 0.1.6ima1zumi2021-04-301-1/+1
| | | | | | | | | irb 1.3.5 need reline >= 0.1.6 because irb use `Reline::IOGate.in_pasting?`. This method defined after reline 0.1.6. fix #228. https://github.com/ruby/irb/commit/6b7b8fc324
* [ruby/ostruct] Add compatibility for to_h with block in Ruby 2.5Marc-Andre Lafortune2021-04-281-5/+15
| | | | https://github.com/ruby/ostruct/commit/da45de5068
* [ruby/ostruct] Compatibility with Ruby 2.5Marc-Andre Lafortune2021-04-281-1/+1
| | | | https://github.com/ruby/ostruct/commit/ecd9fafdf8
* [ruby/net-imap] Fix typo intentionaly -> intentionally [ci skip]Ryuta Kamizono2021-04-281-1/+1
| | | | https://github.com/ruby/net-imap/commit/4057c662e7
* [ruby/net-http] Initialize OpenSSL early before creating TCPSocketJeremy Evans2021-04-281-1/+6
| | | | | | | | | | | OpenSSL make take some time to initialize, and it would be best to take that time before connecting instead of after. From joshc on Redmine. Fixes Ruby Bug #9459 https://github.com/ruby/net-http/commit/14e09fba24
* [ruby/net-http] Fix the regexp used to clean the hostJean Boussier2021-04-281-1/+1
| | | | | | | | | | | Introduced in https://github.com/ruby/ruby/commit/c1652035644 `/s` marks the regexp as encoded with Windows-31J which makes little sense. Nurse thinks the intent was to use `/m` for a multi-line regexp. https://github.com/ruby/net-http/commit/6c15342cdf
* [ruby/net-http] Decode user and password from env configured proxyLukas Eipert2021-04-281-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | If someone sets an env variable defining a http_proxy, containing a username / password with percent-encoded characters, then the resulting base64 encoded auth header will be wrong. For example, suppose a username is `Y\X` and the password is `R%S] ?X`. Properly URL encoded the proxy url would be: http://Y%5CX:R%25S%5D%20%3FX@proxy.example:8000 The resulting proxy auth header should be: `WVxYOlIlU10gP1g=`, but the getters defined by ruby StdLib `URI` return a username `Y%5CX` and password `R%25S%5D%20%3FX`, resulting in `WSU1Q1g6UiUyNVMlNUQlMjAlM0ZY`. As a result the proxy will deny the request. Please note that this is my first contribution to the ruby ecosystem, to standard lib especially and I am not a ruby developer. References: - https://gitlab.com/gitlab-org/gitlab/-/issues/289836 - https://bugs.ruby-lang.org/projects/ruby-master/repository/trunk/revisions/58461 - https://bugs.ruby-lang.org/issues/17542 https://github.com/ruby/net-http/commit/e57d4f38aa
* [ruby/net-http] Replace Timeout.timeout in Net:HTTP#connectmohamed2021-04-281-8/+7
| | | | | | Use Socket.tcp's connect_timeout option instead https://github.com/ruby/net-http/commit/753cae3bbc
* [ruby/net-smtp] mod: bump to a new VERSION that could be checked for ↵Tom Freudenberg2021-04-281-1/+1
| | | | | | testings >0.2.1 https://github.com/ruby/net-smtp/commit/8f2c9323e2
* [ruby/net-smtp] Removed needless files from Gem::Specification#filesHiroshi SHIBATA2021-04-281-3/+5
| | | | https://github.com/ruby/net-smtp/commit/69bba6b125
* [ruby/net-smtp] Replace Timeout.timeout with socket timeoutmohamed2021-04-281-4/+7
| | | | | | | Timeout.timeout is inefficient since it spins up a new thread for each invocation, use Socket.tcp's connect_timeout option instead https://github.com/ruby/net-smtp/commit/6ae4a59f05
* [ruby/net-smtp] Net::SMTP.start() and #start() accepts ssl_context_params ↵Tom Freudenberg2021-04-281-13/+26
| | | | | | | | | | | keyword argument Additional params are passed to OpenSSL::SSL::SSLContext#set_params. For example, `Net::SMTP#start(ssl_context_params: { cert_store: my_store, timeout: 123 })` calls `set_params({ cert_store: my_store, timeout: 123 })`. https://github.com/ruby/net-smtp/commit/4213389c21
* [ruby/net-ftp] Replace "iff" with "if and only if"Gannon McGibbon2021-04-271-1/+1
| | | | | | | | | iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" instead should suffice. https://github.com/ruby/net-ftp/commit/e920473618
* [ruby/net-ftp] Reduce resource cosumption of Net::FTP::TIME_PARSERShugo Maeda2021-04-271-2/+3
| | | | | | | | | Reported by Alexandr Savca as a DoS vulnerability, but Net::FTP is a client library and the impact of the issue is low, so I have decided to fix it as a normal issue. Based on patch by nobu. https://github.com/ruby/net-ftp/commit/a93af636f8
* [ruby/net-ftp] Close the passive connection data socket if there is an error ↵Jeremy Evans2021-04-271-10/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | setting up the transfer Previously, the connection leaked in this case. This uses begin/ensure and checking for an error in the ensure block. An alternative approach would be to not even perform the connection until after the RETR (or other) command has been sent. However, I'm not sure all FTP servers support that. The current behavior is: * Send (PASV/EPSV) * Connect to the host/port returned in 227/229 reply * Send (RETR/other command) Changing it to connect after the RETR could break things. FTP servers might expect that the client has already connected before sending the RETR. The alternative approach is more likely to introduce backwards compatibility issues, compared to the begin/ensure approach taken here. Fixes Ruby Bug 17027 https://github.com/ruby/net-ftp/commit/6e8535f076
* [ruby/net-ftp] Replace Timeout.timeout with socket timeoutmohamed2021-04-271-6/+11
| | | | | | | | | | Timeout.timeout is inefficient since it spins up a new thread for each invocation, use Socket.tcp's connect_timeout option instead when we aren't using SOCKS (we can't replace Timeout.timeout for SOCKS yet since SOCKSSocket doesn't have a connect_timeout option). https://github.com/ruby/net-ftp/commit/d65910132f
* [ruby/matrix] v0.4.1Marc-Andre Lafortune2021-04-271-1/+1
| | | | https://github.com/ruby/matrix/commit/f7c9981907
* [ruby/matrix] v0.4.0Marc-Andre Lafortune2021-04-271-1/+1
| | | | https://github.com/ruby/matrix/commit/baea4b90d4
* [ruby/matrix] Use Gemfile instead of ↵Hiroshi SHIBATA2021-04-271-3/+0
| | | | | | Gem::Specification#add_development_dependency. https://github.com/ruby/matrix/commit/1381fde5c1
* Revert "disable shareable_constant_value for CI"Yusuke Endoh2021-04-261-9/+2
| | | | | | This reverts commit c647205c3eb1f17409a859149bb7d2ea38b43bed. Maybe the root issue was fixed by 7ac078e5b67ba752a755d6bd9c3a99999767fd3a
* [ruby/irb] Added `colorable` keyword optionNobuyoshi Nakada2021-04-261-8/+8
| | | | | | | | Currently `IRB::Color.colorize` and `IRB::Color.colorize_code` refer `$stdin.tty?` internally. This patch adds `colorable` keyword option which overrides it. https://github.com/ruby/irb/commit/402e3f1907
* [ruby/irb] Fix typo ture -> true [ci skip]Ryuta Kamizono2021-04-261-1/+1
| | | | https://github.com/ruby/irb/commit/783a0569e8
* disable shareable_constant_value for CIKoichi Sasada2021-04-261-2/+9
| | | | To debug CI failures on FreeBSD, disable `shareable_constant_value`.