summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2022-09-26Rework vm_core to use `int first_lineno` struct member.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/6430
2022-09-23Skip struct fields whose output differsTakashi Kokubun
across different environments Notes: Merged: https://github.com/ruby/ruby/pull/6418
2022-09-23Swap the positions of offsetof and typeTakashi Kokubun
Notes: Merged: https://github.com/ruby/ruby/pull/6418
2022-09-23Bindgen immediate types with builtinTakashi Kokubun
Notes: Merged: https://github.com/ruby/ruby/pull/6418
2022-09-23Drop c_64 and c_32Takashi Kokubun
Notes: Merged: https://github.com/ruby/ruby/pull/6418
2022-09-23Bindgen enum with builtinTakashi Kokubun
Notes: Merged: https://github.com/ruby/ruby/pull/6418
2022-09-23Bindgen macro with builtinTakashi Kokubun
Notes: Merged: https://github.com/ruby/ruby/pull/6418
2022-09-23Builtin RubyVM::MJIT::CTakashi Kokubun
Notes: Merged: https://github.com/ruby/ruby/pull/6418
2022-09-22[ruby/reline] PR changesOtávio Schwanck dos Santos
https://github.com/ruby/reline/commit/e8e8d81f47
2022-09-22[ruby/reline] Revert "update version"Otávio Schwanck dos Santos
This reverts commit https://github.com/ruby/reline/commit/ce1ac86179e6. https://github.com/ruby/reline/commit/86602cd244
2022-09-22[ruby/reline] update versionOtávio Schwanck dos Santos
https://github.com/ruby/reline/commit/ce1ac86179
2022-09-22[ruby/reline] fix vi-operator-argOtávio Schwanck dos Santos
https://github.com/ruby/reline/commit/d42cdb8f91
2022-09-22[ruby/cgi] Bump up 0.3.3Hiroshi SHIBATA
https://github.com/ruby/cgi/commit/c1ffa3a428
2022-09-21add rb_execution_contextAaron Patterson
Notes: Merged: https://github.com/ruby/ruby/pull/6417
2022-09-21add rb_control_frame_tAaron Patterson
Notes: Merged: https://github.com/ruby/ruby/pull/6417
2022-09-22[rubygems/rubygems] Update GitLab CI template with new oneTakuya Noguchi
GitLab CI now needs the default keyword on specification of image and before_script. https://docs.gitlab.com/ee/ci/yaml/#default Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> https://github.com/rubygems/rubygems/commit/b79e78e733
2022-09-22[ruby/irb] Rewrite on_scan proc to be more readable.tompng
https://github.com/ruby/irb/commit/da54e7f081
2022-09-22[ruby/irb] Scan every single characters in IRB::Color.scantompng
https://github.com/ruby/irb/commit/d14e56a65d
2022-09-21[ruby/irb] Handle non-String $LOAD_PATH values more carefullyst0012
In addition to String values, $LOAD_PATH can also take objects that respond_to the `to_path` method, like Pathname objects. So `irb` should be able to handle those objects too. And if $LOAD_PATH contains objects that can't be converted into String, `irb` should simply ignore it. https://github.com/ruby/irb/commit/b2f562176b
2022-09-17[Bug #19005] dynamic_lookup linker option in external librariesNobuyoshi Nakada
The warning against `-undefined dynamic_lookup` is just a warning yet, and many gems seem to pay no attention to warnings. Until it fails actually, keep it as a migration path, except for standard extension libraries and bundled extension gems. Notes: Merged: https://github.com/ruby/ruby/pull/6394 Merged-By: nobu <nobu@ruby-lang.org>
2022-09-17[ruby/irb] Support --noscript option to not use first non-option argument as ↵Jeremy Evans
script Also add --script option to turn the option back on. Previously there wasn't a way to get an interactive IRB session and access arguments provided on the command line. Additionally, handle `-` as script as stdin. In Unix-like tools, `-` means to take standard input instead of a file. This doesn't result in exactly the same output for: ``` echo 'p ARGV' > args.rb; irb args.rb a b c ``` and ``` echo 'p ARGV' | irb - a b c ``` Due to how irb handles whether stdin is a tty. However, this change allows use of `-` as a argument, instead of giving an unrecognized switch error. This required some small changes to context.rb (to handle `-` as standard input) and input-method.rb (to have FileInputMethod accept IO arguments in addition to strings). Implements [Feature #15371] https://github.com/ruby/irb/commit/4192683ba2
2022-09-15[rubygems/rubygems] Mask the file mode when extracting filesKevin Newton
When extracting files from the tarball, a mode is retrieved from the header. Occasionally you'll encounter a gem that was packaged on a system whose permission bits result in a value that is larger than the value that File.chmod will allow (anything >= 2^16). In that case the extraction fails with a RangeError, which is pretty esoteric. If you extract the tarball with the tar and gunzip utilities, the file permissions end up being just the bottom 16 bits masked off from the original value. I've mirrored that behavior here. Per the tar spec: > Modes which are not supported by the operating system restoring > files from the archive will be ignored. I think that basically means what I've done here. --- This commit also changes the behavior very slightly with regard to when the chmod is called. Previously it was called while the file descriptor was still open, but after the write call. When write flushes, the file permissions are changed to the mode value from the File.open call, undoing the changes made by FileUtils.chmod. CRuby appears to flush the buffer after the chmod call, whereas TruffleRuby flushes before the chmod call. So the file permissions can change depending on implementation. Both implementations end up getting the correct file permissions for the bottom 9 bits (user, group, world), but differ with regard to the sticky bit in the next 3. To get consistent behavior, this commit changes it to close the file descriptor before attempting to chmod anything, which makes it consistent because the write flushes in both cases. https://github.com/rubygems/rubygems/commit/22ce076e99
2022-09-15Remove warning for old TLS version connectionNobuyoshi Nakada
RubyGems.org already has refused connection requests using older than TLS 1.2.
2022-09-14[ruby/irb] Fix the error when LC_MESSAGES config value is nilNobuyoshi Nakada
https://github.com/ruby/irb/commit/6bbde84369
2022-09-14[ruby/irb] Fix history file saving with concurrent irb sessions when history ↵Jeremy Evans
file doesn't exist If history file didn't exist when irb was started, @loaded_history_mtime would be nil. However, if the history file didn't exist before, but it exists when saving history, that means the history file was modified, and we should handle it the same way as we handle the other case where the history file was modified. Fixes #388 https://github.com/ruby/irb/commit/8d277aafcb
2022-09-12[rubygems/rubygems] Deduplicate results just onceDavid Rodríguez
Instead of checking for uniqueness for every spec. https://github.com/rubygems/rubygems/commit/97d28c9665
2022-09-12[rubygems/rubygems] Use a single hash to keep track of prereleasesDavid Rodríguez
https://github.com/rubygems/rubygems/commit/9d7bd177b0
2022-09-12[rubygems/rubygems] Remove unnecessary sortingDavid Rodríguez
Already done by the gem version promoter. https://github.com/rubygems/rubygems/commit/aae2cc9fe0
2022-09-12[rubygems/rubygems] Simplify instantiating the gem version promoterDavid Rodríguez
https://github.com/rubygems/rubygems/commit/c4e2737f2c
2022-09-12[rubygems/rubygems] Let specs be sorted just once by the gem version promoterDavid Rodríguez
https://github.com/rubygems/rubygems/commit/3cea25a39d
2022-09-12[rubygems/rubygems] This sorting seems unnecessary tooDavid Rodríguez
https://github.com/rubygems/rubygems/commit/823cb1fef9
2022-09-12[rubygems/rubygems] Remove unnecessary spec sortingDavid Rodríguez
Specs in a SpecSet with the same name are only sorted by platform priority when they are read. No need to sort everything eagerly. https://github.com/rubygems/rubygems/commit/aeafff52df
2022-09-11MJIT: Use the built-in PACK_MAPTakashi Kokubun
106744107b made this possible.
2022-09-09[rubygems/rubygems] Fix resolution on non-musl platformsDavid Rodríguez
Gems without specific platform were being preferred over matching platform specific gems. https://github.com/rubygems/rubygems/commit/37b95b9159
2022-09-09More robust macro parser (#6343)Aaron Patterson
I want to use more complicated macros with MJIT. For example: ``` # define SHAPE_MASK (((unsigned int)1 << SHAPE_BITS) - 1) ``` This commit adds a simple recursive descent parser that produces an AST and a small visitor that converts the AST to Ruby. Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2022-09-08[ruby/forwardable] Freeze VERSION and FORWARDABLE_VERSION to improve ↵rm155
Ractor-compliance https://github.com/ruby/forwardable/commit/c91f41f4fa
2022-09-08[ruby/ipaddr] Improve Ractor-compliancerm155
https://github.com/ruby/ipaddr/commit/73461724e5
2022-09-08Resync Bundler & RubyGemsDavid Rodríguez
Notes: Merged: https://github.com/ruby/ruby/pull/6330
2022-09-07[rubygems/rubygems] Fix: Gem info bug with version flagAntonio Paulino
https://github.com/rubygems/rubygems/commit/e4cee1f975
2022-09-06Fix typoTakashi Kokubun
2022-09-06Update c_32.rbTakashi Kokubun
2022-09-06Run mjit-bindgen againTakashi Kokubun
I'm thinking about Ruby builtin code instead of doing this. It'll be hopefully more portable and easier because the same C code could handle both 32bit and 64bit.
2022-09-06[ruby/set] Bump version to 1.0.3Hiroshi SHIBATA
https://github.com/ruby/set/commit/e2419f2d30
2022-09-05[ruby/set] Set version to 1.0.3.dev for fixing rubygems/bundler testsHiroshi SHIBATA
https://github.com/ruby/set/commit/40dda15d7f
2022-09-05Merge ↵Hiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/16c3535413afebcdbab7582c6017c27b5da8a8dc Notes: Merged: https://github.com/ruby/ruby/pull/6326
2022-09-04Ruby MJIT (#6028)Takashi Kokubun
Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2022-09-04Attempt to fix test-bundlerTakashi Kokubun
f7cf641469161c3770b58f79e08e312512212aa8 broke spec/bundler/install/gems/resolving_spec.rb:356. This line seems to impact that test, so I slightly modified the implementation for that spec's case.
2022-09-05[rubygems/rubygems] Feature: `bundle add` supports `--path` optionMike Dalessio
https://github.com/rubygems/rubygems/commit/32bee01fbe
2022-09-05[rubygems/rubygems] Fix resolution hanging on musl platformsDavid Rodríguez
After recent musl support was added, Bundler started hanging in musl platforms. I identified the issue where valid candidates were being filtered out because their platform was specified as a string, and thus `Gem::Platform.match_spec?` which under the hood ends up calling `Gem::Platform#===` would return `nil`, because it does not support comparing platforms to strings. In particular, `Bundler::EndpointSpecification`'s platform coming from the API was not instantiated as a `Gem::Platform`, hence the issue. Also, this spec surfaced another issue where a bug corrected in `Gem::Platform#match_platforms` had not been yet backported to Bundler. So this commit also backports that to get the spec green across RubyGems versions. Finally, the fix in `Bundler::EndpointSpecification` made a realworld spec start failing. This spec was faking out `rails-4.2.7.1` requirement on Bundler in the `Gemfile.lock` file to be `>= 1.17, < 3` when the real requirement is `>= 1.17, < 2`. Due to the bug in `Bundler::EndpointSpecification`, the real requirement provided by the compact index API (recorded with VCR) was being ignored, and the `Gemfile.lock` fake requirement was being used, which made the spec pass. This is all expected, and to fix the issue I changed the spec to be really realworld and don't fake any Bundler requirements. https://github.com/rubygems/rubygems/commit/faf4ef46bc
2022-09-03[ruby/reline] Fix a typo [ci skip]Nobuyoshi Nakada
https://github.com/ruby/reline/commit/33bf80e757