summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-10-31Fix SystemStackError for test_run_out_of_shape_for_classPeter Zhu
2023-10-31Fix remove_instance_variable for too complex classPeter Zhu
2023-10-31[PRISM] Remove unnecessary variableJemma Issroff
2023-10-31[PRISM] Implement compilation for SuperNodeJemma Issroff
2023-10-31[PRISM] Compile forwarding super nodeJemma Issroff
2023-10-31Add ST table to gen_ivtbl for complex shapesPeter Zhu
On 32-bit systems, we must store the shape ID in the gen_ivtbl to not lose the shape. If we directly store the ST table into the generic ivar table, then we lose the shape. This makes it impossible to determine the shape of the object and whether it is too complex or not.
2023-10-31Create table for too complex generic variablesPeter Zhu
2023-10-31Fix "too complex" iv sets on generic ivar objectsAaron Patterson
We weren't taking in to account that objects with generic IV tables could go "too complex" in the IV set code. This commit takes that in to account and also ensures FL_EXIVAR is set when a geniv object transitions to "too complex" Co-Authored-By: Jean Boussier <byroot@ruby-lang.org>
2023-10-31Handle SHAPE_TOO_COMPLEX in `generic_ivar_set`Jean Boussier
2023-10-31Handle running out of shapes in `Object#dup`Jean Boussier
There is a handful of call sites where we may transition to OBJ_TOO_COMPLEX_SHAPE if we just ran out of shapes, but that weren't handling it properly.
2023-10-31[PRISM] Implement compilation for PostExecutionNodeJemma Issroff
This commit implements compilation for the PostExeuctionNode by using the ScopeNode to create child iseqs where appropriate.
2023-10-31[rubygems/rubygems] Only remove bundler plugin gem when it's inside the cacheCody Cutrer
https://github.com/rubygems/rubygems/commit/8d51390ca4
2023-10-31LLDB: Dump table structs in Hash [ci skip]Nobuyoshi Nakada
2023-10-31[ruby/prism] Fix a possible malloc(0)Haldun Bayhantopcu
https://github.com/ruby/prism/commit/fa108b8626
2023-10-31[ruby/prism] Share comment generation logicKevin Newton
https://github.com/ruby/prism/commit/6e5556dbdf
2023-10-31[ruby/prism] Fix a possible null dereferenceHaldun Bayhantopcu
https://github.com/ruby/prism/commit/7dbb8c7e3e
2023-10-31Add defined array nodeHParker
2023-10-31compile defined with nested constants and stovetopHParker
2023-10-31Fix warning in Prism compile For NodeMatt Valentine-House
2023-10-31Keep unused literal nodesyui-knk
For static analysis, it’s better to keep unused literal nodes. If simply change `block_append` to fall through, both "unused literal ignored" and "possibly useless use of a literal in void context" warnings are shown for the same line. But it’s verbose then remove "unused literal ignored" warning. This kind of optimization is already implemented on compile.c. `compile_block` calls `iseq_compile_each0` with `popped = 1` when NODE_BLOCK has next.
2023-10-31Update bundled gems list as of 2023-10-30git
2023-10-31Add a --disable-yjit job for Ubuntu CIJeremy Evans
Currently, we do not have an amd64 job that runs with YJIT disabled and runs the full check task. Most amd64 jobs implicitly have YJIT enabled, even though --enable-yjit was not specified. This makes it easier to determine whether a problem is YJIT-related or not by reviewing CI logs.
2023-10-31[Feature #10602] Add new API rb_profile_thread_frames()Daisuke Aritomo
Add a new API rb_profile_thread_frames(), which is essentialy a per-thread version of rb_profile_frames(). While the original rb_profile_frames() always returns results about the current active thread obtained by GET_EC(), this new API takes a Thread to be profiled as an argument. This should come in handy when profiling I/O-bound programs such as webapps, since this new API allows us to learn about Threads performing I/O (which do not have the GVL). Profiling worker threads (such as Sidekiq workers) may be another application. Implements [Feature #10602] Co-authored-by: Mike Perham <mike@perham.net>
2023-10-31Disable wrong testNobuyoshi Nakada
2023-10-30[PRISM] Implement all argument types for CallNodesJemma Issroff
2023-10-30Document TEMP_CONSTANT_IDENTIFIERMatt Valentine-House
2023-10-30Move constant indexing into rb_translate_prismMatt Valentine-House
2023-10-30[Prism] Add ForNode testsMatt Valentine-House
2023-10-30[Prism] Compile ForNodeMatt Valentine-House
Fixes ruby/prism#1648
2023-10-30More accurate functions documentationMatt Valentine-House
2023-10-30[ruby/irb] Use IRB's own doc for doc dialog testsStan Lo
(https://github.com/ruby/irb/pull/743) * Use IRB's own doc for doc dialog tests * Run doc dialog tests for older Rubies too * Remove unnecessary CI setups https://github.com/ruby/irb/commit/97a2b86f0a
2023-10-30Update default gems list at b413760d66e4de5670148b01a6a207 [ci skip]git
2023-10-30[prism] Update prism to latestKevin Newton
2023-10-30rm prism type templatesKevin Newton
2023-10-30[ruby/rdoc] test/rdoc/test_rdoc_generator_json_index.rb: Use assert_equal ↵Jun Aruga
instead of assert. It's better because assert_equal prints the values when it fails. https://github.com/ruby/rdoc/commit/91d40ce8f8
2023-10-30[ruby/prism] Faster lex_identifierHaldun Bayhantopcu
https://github.com/ruby/prism/commit/e44a9ae742
2023-10-31Missing format stringNobuyoshi Nakada
Do not use a variable as a format string. Also we usually don't expect non-ascii data in C string literals.
2023-10-30[ruby/prism] parse_inline_comments -> parse_commentsKevin Newton
https://github.com/ruby/prism/commit/bd4d248fd6
2023-10-30Update to ruby/spec@d56bd0fBenoit Daloze
2023-10-30Update to ruby/mspec@d03ad9cBenoit Daloze
2023-10-30Revert "OpenSSL::KDF.scrypt needs EVP_PBE_scrypt()"Benoit Daloze
This reverts commit d434765faead1583ca9008bb579067a288085b93.
2023-10-31OpenSSL::KDF.scrypt needs EVP_PBE_scrypt()Nobuyoshi Nakada
2023-10-30[ruby/prism] Remove newlines from magic comment testKevin Newton
https://github.com/ruby/prism/commit/4a7be1fc50
2023-10-30.travis.yml: Refactor.Jun Aruga
* Add notes. * When you see Travis issue, please check the link below. https://github.com/ruby/ruby/wiki/CI-Servers#travis-ci * Added the following random failure. The ppc64le failure has been happening randomly in Travis focal/jammy. TestRDocGeneratorJsonIndex#test_generate fails randomly. https://app.travis-ci.com/github/ruby/ruby/jobs/612380961#L2900 * Update the comments. * Remove empty lines in nested YAML elements aligning with other parts.
2023-10-30.travis.yml: Disable s390x allow_failures.Jun Aruga
To avoid unintentional new failures. Feel free to enable it again when the case is unstable.
2023-10-30.travis.yml: Remove optflags=-O1 except arm32.Jun Aruga
We want to align the used build flags with RubyCI ppc64le Ubuntu jammy server as much as possible to avoid Travis specific issues. Still keep the -O1 for only arm32 due to the following issue. https://bugs.ruby-lang.org/issues/19981
2023-10-30.travis.yml: Upgrade the Ubuntu ppc64le to 22.04 (Jammy).Jun Aruga
Seeing the recent successes on RubyCI ppc64le Ubuntu jammy servers, it's time to upgrade Travis ppc64le to jammy. http://rubyci.s3.amazonaws.com/ppc64le/ruby-master/recent.html Upgrade the gcc version to the latest version 11.4.0 to align the gcc version used in the RubyCI ppc64le server's gcc version.
2023-10-30[ruby/prism] Improve comment generation in templatesUfuk Kayserilioglu
The existing comment generation was hard to read and was making a lot of string manipulation. However, ERB files are already designed to do string manipulation, so we can use that instead. So, instead of doing a split and a map, I opted to use the `#each_line` method to iterate over the lines of the file. Also, in order to add an optional space padding at the beginning of the line, I opted to pad it with a space and to then right trim it. This makes sure that no space is left behind if the line is empty, but a space is added if the line is not empty. https://github.com/ruby/prism/commit/5736711e70
2023-10-30Update to ruby/spec@bd7017fBenoit Daloze
2023-10-30[ruby/net-http] fix no_proxy behaviourChristian van Rensen
https://github.com/ruby/net-http/commit/f4951dc42a