Misc #20660
closed
Added by mame (Yusuke Endoh) 4 months ago.
Updated 3 months ago.
Description
The next dev meeting¶
Date: 2024/09/05 13:00-17:00 (JST)
Log: https://github.com/ruby/dev-meeting-log/blob/master/2024/DevMeeting-2024-09-05.md
- Dev meeting IS NOT a decision-making place. All decisions should be done at the bug tracker.
- Dev meeting is a place we can ask Matz, nobu, nurse and other developers directly.
- Matz is a very busy person. Take this opportunity to ask him. If you can not attend, other attendees can ask instead of you (if attendees can understand your issue).
- We will write a record of the discussion in the file or to each ticket in English.
- All activities are best-effort (keep in mind that most of us are volunteer developers).
- The date, time and place of the meeting are scheduled according to when/where we can reserve Matz's time.
-
DO NOT discuss then on this ticket, please.
Call for agenda items¶
If you have a ticket that you want matz and committers to discuss, please post it into this ticket in the following format:
* [Ticket ref] Ticket title (your name)
* Comment (A summary of the ticket, why you put this ticket here, what point should be discussed, etc.)
Example:
* [Feature #14609] `Kernel#p` without args shows the receiver (ko1)
* I feel this feature is very useful and some people say :+1: so let discuss this feature.
- It is recommended to add a comment by 2024/09/02. We hold a preparatory meeting to create an agenda a few days before the dev-meeting.
- The format is strict. We'll use this script to automatically create an markdown-style agenda. We may ignore a comment that does not follow the format.
- Your comment is mandatory. We cannot read all discussion of the ticket in a limited time. We appreciate it if you could write a short summary and update from a previous discussion.
Related issues
1 (1 open — 0 closed)
- [Feature #20594] A new String method to append bytes while preserving encoding (byroot)
- Continuation from previous meeting
- Alan proposed the method to be named
append_as_bytes
, to be variadic and accept both String and Integer (so like the original proposal).
- For integer the behavior would be the same as
setbyte
, so mask 0x80
.
- Early implementation prototype show a ~13% gain on our benchmark.
- [Feature #20684] Add optimized instructions for frozen literal Hash and Array (byroot)
- Allow to avoid having to define
EMPTY_HASH = {}.freeze
or EMPTY_ARRAY.freeze
constant in hotspots (see code samples in the issue).
- Also give some minor gains when defining frozen constants.
- Not a big optimization, but a very small patch and help usability.
- [Bug #20675] Parse error with required kwargs and omitted parens (jeremyevans0)
- Is consistency with method parameters worth breaking compatibility in this case?
- [Feature #20309] Bundled gems for Ruby 3.5
- Discuss about
benchmark
,irb
and reline
- [Bug #20693] Dir.tmpdir should perform a real access check before warning about writability
- A minor paper-cut, but I ran into this while running Ruby's tests in an unprivileged Docker container
-
File::Stat#writable?
is really just guessing; to really know if a directory is writable, you need to ask the OS (through a call to File.writable?
)
- There's a broader question about whether we should deprecate
File::Stat#writable?
and File::Stat#readable?
altogether, since they can't possibly be correct in 100% of cases. But I'm happy just to fix this one case in Dir.tmpdir
for now.
- [Feature #20673] Enable native SOCKS support by default (znz)
- I think enable by default is better than depend on an environment variable.
- [Feature #20707] Move
Time#xmlschema
(AKA iso8601
) into core (byroot)
- Usability wise, this is such a common format that I'd expect to have it without needing to require anything.
- On a more general point,
require 'time'
is always a bit surprising because Time
is a core Class. So the case could be made for other methods perhaps?
- Bringing it in core would allow to write it without relying on
strftime
, and a quick prototype I did shows it can be 5x faster.
- Given Ruby is used a lot for JSON APIs, and often contains Time fields (e.g.
updated_at
), this happen to a non-negligeable hotspot in many Ruby deployments.
- Description updated (diff)
- Status changed from Open to Closed
Also available in: Atom
PDF
Like0
Like0Like0Like0Like0Like0Like0Like0Like0