summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2024-07-18[rubygems/rubygems] Fix gemspec `require_paths` type validationDavid Rodríguez
It was not properly being detected as an Array attribute, and thus not properly validated. Fixing this allows us to remove a strange `rescue` clause in Bundler. https://github.com/rubygems/rubygems/commit/4121a32408
2024-07-18[rubygems/rubygems] Remove unnecessary Windows test skipDavid Rodríguez
https://github.com/rubygems/rubygems/commit/946180f5c1
2024-07-18Require space between hash/content in ATX heading (#1140)Hartley McGuire
While writing some Markdown documentation for Rails, I came across an interesting case where trying to link to an instance method at the start of a line would instead parse as an H1 heading: ```markdown #response_body= ``` Expected: ```html <a href=""><code>#response_body=</code></a> ``` Actual: ```html <h1>response_body=</h1> ``` According to the CommonMark spec: > At least one space or tab is required between the # characters and the > heading’s contents, unless the heading is empty. Note that many > implementations currently do not require the space. However, the space > was required by the original ATX implementation, and it helps prevent > things like the following from being parsed as headings: > > Example 64 So while some implementations do not follow this requirement, I believe RDoc should because it makes it easy to write text similar to Example 64 (which was used in the new test) and it also enables automatically linking to instance methods at the start of a line.
2024-07-17[ruby/prism] Have parse_stream handle NUL bytesKevin Newton
https://github.com/ruby/prism/commit/4a41d298c8
2024-07-17Revert pending `EVENT_RETURN` testsNobuyoshi Nakada
* "Allow ambiguosity of `return` line" 65b991bc8571b7b718fc22bd33a43c4d269bf52d * "Move to test/.excludes-prism" 3b4ff810d2fefdf0194bd774bc04f6f17e2ccae7 * "Pending `EVENT_RETURN` settracefunc tests with Prism" a7f33c99c69e3cc62b7a24ce35f51f76cc5bfaa2 Notes: Merged: https://github.com/ruby/ruby/pull/11163
2024-07-17[Bug #20457] [Prism] Remove redundant return flagNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/11163
2024-07-17[rubygems/rubygems] Applied rubocopHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/c26054e7e9
2024-07-17Report a TracePoint log when the TracePoint tests failYusuke Endoh
Notes: Merged: https://github.com/ruby/ruby/pull/11184
2024-07-17Removed needless block argumentsHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/11171
2024-07-17To avoid fd leak with fetch request for SSL serverHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/11171
2024-07-17Close leaked TCPServer socketHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/11171
2024-07-17Close leaked SSLServer socketHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/11171
2024-07-17Fixed fd leak from TCPServerHiroshi SHIBATA
``` Leaked file descriptor: HTTPSProxyTest#test_https_proxy_ssl_connection: 8 : #<TCPServer:fd 8, AF_INET, 127.0.0.1, 63104> ``` Notes: Merged: https://github.com/ruby/ruby/pull/11171
2024-07-16[PRISM] Omit two more ast tests that will not work without RubyVM::AstKevin Newton
2024-07-16[ruby/irb] Group class methods under `class << self`Stan Lo
(https://github.com/ruby/irb/pull/981) https://github.com/ruby/irb/commit/cdaa356df2
2024-07-16Add MatchData#bytebegin and MatchData#byteendShugo Maeda
These methods return the byte-based offset of the beginning or end of the specified match. [Feature #20576]
2024-07-15[rubygems/rubygems] Bump rb-sysdependabot[bot]
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.97 to 0.9.98. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.97...v0.9.98) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> https://github.com/rubygems/rubygems/commit/291a5ad53c
2024-07-15[ruby/prism] Fix up implicit flagsKevin Newton
https://github.com/ruby/prism/commit/f4152c1f50
2024-07-12[ruby/prism] When parsing an invalid write, still add to the local tableKevin Newton
https://github.com/ruby/prism/commit/a54abc4d1b
2024-07-12Rename full_mark -> rgengc_allow_full_markMatt Valentine-House
2024-07-12Provide GC.config to disable major GC collectionsMatt Valentine-House
This feature provides a new method `GC.config` that configures internal GC configuration variables provided by an individual GC implementation. Implemented in this PR is the option `full_mark`: a boolean value that will determine whether the Ruby GC is allowed to run a major collection while the process is running. It has the following semantics This feature configures Ruby's GC to only run minor GC's. It's designed to give users relying on Out of Band GC complete control over when a major GC is run. Configuring `full_mark: false` does two main things: * Never runs a Major GC. When the heap runs out of space during a minor and when a major would traditionally be run, instead we allocate more heap pages, and mark objspace as needing a major GC. * Don't increment object ages. We don't promote objects during GC, this will cause every object to be scanned on every minor. This is an intentional trade-off between minor GC's doing more work every time, and potentially promoting objects that will then never be GC'd. The intention behind not aging objects is that users of this feature should use a preforking web server, or some other method of pre-warming the oldgen (like Nakayoshi fork)before disabling Majors. That way most objects that are going to be old will have already been promoted. This will interleave major and minor GC collections in exactly the same what that the Ruby GC runs in versions previously to this. This is the default behaviour. * This new method has the following extra semantics: - `GC.config` with no arguments returns a hash of the keys of the currently configured GC - `GC.config` with a key pair (eg. `GC.config(full_mark: true)` sets the matching config key to the corresponding value and returns the entire known config hash, including the new values. If the key does not exist, `nil` is returned * When a minor GC is run, Ruby sets an internal status flag to determine whether the next GC will be a major or a minor. When `full_mark: false` this flag is ignored and every GC will be a minor. This status flag can be accessed at `GC.latest_gc_info(:needs_major_by)`. Any value other than `nil` means that the next collection would have been a major. Thus it's possible to use this feature to check at a predetermined time, whether a major GC is necessary and run one if it is. eg. After a request has finished processing. ```ruby if GC.latest_gc_info(:needs_major_by) GC.start(full_mark: true) end ``` [Feature #20443]
2024-07-12[ruby/reline] Fix rendering bug of nomultiline prompttomoya ishida
(https://github.com/ruby/reline/pull/730) Fix bug of `print('a'*10); Reline.readline('>')` wrong rendering https://github.com/ruby/reline/commit/c0469a12b9
2024-07-12[ruby/error_highlight] Make test_COLON2_5 conditional againYusuke Endoh
https://github.com/ruby/error_highlight/commit/da5e76bb06
2024-07-12Pend some tests because these are not working with macOS 15 beta and Xcode ↵Hiroshi SHIBATA
16 beta
2024-07-12Use fixture certificates to fix test failure with RHEL9.Hiroshi SHIBATA
http://rubyci.s3.amazonaws.com/rhel9/ruby-master/log/20240711T213004Z.fail.html.gz ``` 1) Error: HTTPSProxyTest#test_https_proxy_ssl_connection: OpenSSL::X509::CertificateError: invalid digest /home/chkbuild/chkbuild/tmp/build/20240711T213004Z/ruby/test/net/http/test_https_proxy.rb:63:in 'OpenSSL::X509::Certificate#sign' /home/chkbuild/chkbuild/tmp/build/20240711T213004Z/ruby/test/net/http/test_https_proxy.rb:63:in 'HTTPSProxyTest#test_https_proxy_ssl_connection' ```
2024-07-11[PRISM] Use node ids for error highlightKevin Newton
2024-07-11[ruby/prism] Various cleanup for initializers and typechecksKevin Newton
https://github.com/ruby/prism/commit/86cf82794a
2024-07-11[ruby/prism] Add node ids to nodesKevin Newton
https://github.com/ruby/prism/commit/bf16ade7f9
2024-07-11[ruby/prism] Move Node#type and Node::type documentationKevin Newton
https://github.com/ruby/prism/commit/08a71f6259
2024-07-11[ruby/prism] Add Node#breadth_first_searchKevin Newton
https://github.com/ruby/prism/commit/1ffb141199
2024-07-11[ruby/prism] Expose common flags in inspect outputKevin Newton
https://github.com/ruby/prism/commit/d0143865c2
2024-07-11[ruby/prism] Expose flags on every node typeKevin Newton
https://github.com/ruby/prism/commit/9f12a56fd6
2024-07-11[ruby/prism] Move location to second position for node initializersKevin Newton
https://github.com/ruby/prism/commit/4cc0eda4ca
2024-07-11[ruby/prism] Reconfigure error testsKevin Newton
https://github.com/ruby/prism/commit/fb7e1ebb7f
2024-07-11[ruby/logger] Add reraise_write_errors keyword argument to Logger and LogDeviceJeremy Evans
This allows the user to specify exception classes to treat as regular exceptions instead of being swallowed. Among other things, it is useful for having Logger work with Timeout. Fixes Ruby Bug 9115. https://github.com/ruby/logger/commit/436a7d680f
2024-07-11IBM864 single-byte transcoding (#10518)Jeremy Daer
Include € euro sign from CCSID 864
2024-07-11Enumerable#all?: Stop optimizing when a given block is not optimizableYusuke Endoh
This is a follow up to 182822683f86c8f8d63b05765addf5a04d112aa2. Co-Authored-By: Aaron Patterson <[email protected]>
2024-07-11[rubygems/rubygems] fix s3 source configuration issueDmitriy Ivliev
https://github.com/rubygems/rubygems/commit/356726bd1a
2024-07-11[ruby/net-http] implement talking SSL to the proxy tooEvgeni Golov
https://bugs.ruby-lang.org/issues/16482 https://github.com/ruby/net-http/commit/ae2d83f88b
2024-07-11[ruby/net-http] Add ability to configure default settings for new connectionsfatkodima
https://github.com/ruby/net-http/commit/fed3dcd0c2
2024-07-11[ruby/net-http] test_https.rb - fix test_session_reuse_but_expireMSP-Greg
https://github.com/ruby/net-http/commit/5544243c41
2024-07-10Avoid a hash allocation when keyword splatting empty hash when calling ↵Jeremy Evans
ruby2_keywords method Treat this similar to keyword splatting nil, using goto ignore. However, keep previous behavior if the method accepts a keyword splat, to avoid double hash allocation. This also can avoid an array allocation when calling a method that doesn't have any splat parameters but supports literal keyword parameters, because ignore_keyword_hash_p was not ignoring the keyword hash in that case. This change doesn't remove the empty ruby2_keywords hash from the array, which caused an assertion failure if the method being called accepted keywords in some cases. Modify the assertion to handle this case. An alternative approach would add a flag to the args struct so the args_argc calculation could handle this case and report the correct argc, but such an approach would likely be slower.
2024-07-10* append newline at EOF. [ci skip]git
2024-07-10[ruby/net-http] Commented out unfinished chunked testHiroshi SHIBATA
https://github.com/ruby/net-http/commit/6376592cb4
2024-07-10[ruby/net-http] Removed needless warningHiroshi SHIBATA
https://github.com/ruby/net-http/commit/d867edc0fe
2024-07-10[ruby/net-http] Split POST test because new dummy server can't handle ↵Hiroshi SHIBATA
continuouse POST request https://github.com/ruby/net-http/commit/54a99b9f0c
2024-07-10[ruby/net-http] Write log after server start, not handling requestHiroshi SHIBATA
https://github.com/ruby/net-http/commit/205bac757a
2024-07-10[ruby/net-http] Split test class because TCPServer couldn't accept localhost ↵Hiroshi SHIBATA
and 127.0.0.1 both https://github.com/ruby/net-http/commit/749a1b3197
2024-07-10[ruby/net-http] Support chunked data and fixed test failure with ↵Hiroshi SHIBATA
multipart/form-data https://github.com/ruby/net-http/commit/b38c2795a9
2024-07-10[ruby/net-http] Removed server-side log testHiroshi SHIBATA
https://github.com/ruby/net-http/commit/9c16c383ce