Fix loss of initial value in Array#sum
When the not_exact case is hit, the initial value could be lost if it is a float. For example, the following code incorrectly outputs 1.5 bu
When the not_exact case is hit, the initial value could be lost if it is a float. For example, the following code incorrectly outputs 1.5 bu
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Use a BoundSchemaReflection for the Ractor proxy pool's schema cache
The bindings are generated on LP64, where ID and st_data_t are unsigned long and long is 64-bit. On Windows long is 32-bit and both are unsi
The disasm options and RubyVM::YJIT.disasm need a dev build, which win32/configure.bat cannot make. The warning for builds without YJIT also
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
rustc builds yjit.lib, which is linked into miniruby and the DLL directly. Archiving it into the static library would make mkexports.rb expo
Generated code called C functions and Rust callbacks with the SysV convention. On Windows, pass the first four arguments in RCX, RDX, R8 and
Stats and counters can exceed the Fixnum range, which is 31 bits on Windows, and failed the assertion in VALUE::fixnum_from_usize. Co-Autho
bindgen now finds rb_jit_get_page_size and rb_jit_reserve_addr_space in internal/jit.h, which moves them in both generated files. Co-Author
They emit instructions, which a call like asm.cmp_fixnum_fits_long(val) makes clearer than a free function taking asm. Co-Authored-By: Clau
/tmp/perf-{pid}.map resolves to a usually missing directory on the current drive, so the first compilation panicked, and Linux perf could no
The Win64 code paths and LLP64 guards in YJIT are compiled only for mswin, so no other YJIT job notices a change that breaks them. --yjit-ca
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
RtlUnwindEx(), which longjmp() and C++ exceptions use, needs unwind info for every frame, so raising through JIT frames skipped __finally bl
UCRT's isatty returns 0x40 for a character device, so the comparison with 1 never held and --yjit-dump-disasm was never colored. Checkin
Nothing in it was specific to lengths, and building the C long memory operand inside saves each caller from spelling out its width. Co-Auth
A Fixnum holds a C long, which is 32-bit on Windows, so an arithmetic result or a length that did not overflow 64 bits could still be out of
VirtualAlloc(NULL) placed the region more than 2 GiB away from the DLL, so every C call from YJIT code became an indirect call through a reg
jit.c now picks its Windows code paths by _WIN32 alone, so an explicit --enable-yjit on mingw no longer stops at the #error there and would
Reserve the region with VirtualAlloc and commit pages when they become writable, in place of mmap and mprotect. Freed pages stay committed w
Fixnum operands fit in 32 bits where long is 32-bit, so the 64-bit overflow check never fires there and the range check alone decides. Code
はじめに Vitestの話 問題 エラーになるし、カスタムフックのモックで setHoges: vi.fn() にしても解消しない 解決 トップレベルで定義していると思っていたが、カスタムフック内で定義しているがトップレベルにimportしていないためそもそ...
* Strip whitespace from `to_markdown` code spans in table cells kramdown rebuilt a table cell's code span with one backtick when the co
マイクロソフトは9月30日付けでリリースされたVisual Studio Code 1.140(以下、VS Code)で、複数のAIベンダから提供されているAIモデルをオーケストレーションすることでより高品質で低コストを実現するという「Hy...
米調査会社のガートナーは、ベンダーのFDE(フォワードデプロイドエンジニアあるいはフォワードデプロイドエンジニアリング)によって開発されたAIエージェントの70%が2028年までに企業に使われずに放棄されるだろう(Gartner Predi...
If the initial value is a float but an element of the array is not a float, then it could be lost and an error won't be raised. For exam
Build the insert values list once for raw `on_duplicate` upserts on MySQL
https://github.com/ruby/json/commit/37a48ef6b8
https://github.com/ruby/json/commit/8bab92d63b
The Ruby Programming Language. Contribute to ruby/ruby development by creating an account on GitHub.
The Ruby Programming Language. Contribute to ruby/ruby development by creating an account on GitHub.
The Ruby Programming Language. Contribute to ruby/ruby development by creating an account on GitHub.
The Ruby Programming Language. Contribute to ruby/ruby development by creating an account on GitHub.
TypeScript向けのGhosts of Departed Proofsを実装するライブラリ。name()で値にコンパイル時の名前を付け、defineProof()で認可チェックの結果を型として扱い、関数側で_proof引数を受け取って認可チェック済みの型かをチェックする。
… header is absent The public iOS SDK does not ship crt_externs.h. addr2line.c included it unconditionally and failed to compile: addr
https://github.com/ruby/erb/commit/934d51e24b
* Make remove_unreachable_chunk linear in method size remove_unreachable_chunk allocated and cleared a label_no-sized counter array on ever
The value-context NODE_AND / NODE_OR compiled nd_2nd recursively, so a chain such as `a && b && c` gave each operator its ow
この記事のまとめ Claude CodeとIBM Bobで同じリポジトリを動かし、コーディングエージェントの「記憶の置き場所」について3つの検証をしました。 検証 確かめたこと 結果 1. Skills descriptionの書き方で、Skillの呼ばれやすさは変
b5ecfd1eba saved the status in `error` before removing the temporary file but never returned it, so configure.bat succeeded even when setup.
match (https://github.com/ruby/strscan/pull/221) `set_registers()` used `onig_region_set()` that doesn't change `num_regs` when the reg
INT_MAX (https://github.com/ruby/strscan/pull/220) ## What With `StringScanner.new(str, fixed_anchor: true)`, a scan position beyond `INT_
With the default `-O2sy-`, cl.exe compiles the instruction dispatch in vm_exec_core into a binary search. Favoring speed only in vm.c gives
https://github.com/ruby/rubygems/commit/b0d1b89df0 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
https://github.com/ruby/rubygems/commit/9fabf718ee Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Adding `to: nil` to an existing bundle left the dropped gem in the lockfile, because nothing marked the lockfile as changed. Frozen installs
Some gems depend on a gem that only one of their features loads, or on a gem that an API-compatible one can stand in for. `override "B&
Jevの登場以降、確率で判断を返すAIモデルの話題が増えてきました。Layaや、Jev互換のAPIを備えたKevなど、オープンソースのモデルも公開されています。今回試すのは、その流れに加わったCloudflareのClefです。まずは判定精度を確かめて、売りである速さは次回、条件
…(#19215) [Bug #22209]
Without direct or call threaded code, as with MSVC, the flag was never set. YJIT asserts it on running iseqs, and iseq_free decrements rb_yj
rb_vm_insn_decode is documented to return bare instructions, and rb_iseq_original_iseq maps encoded instructions back to bare ones, but both
Bumps the github-actions group with 1 update in the / directory: [taiki-e/install-action](https://github.com/taiki-e/install-action). Upda
Without it, MSVC merges the pc and sp updates of putobject into one 16-byte load and store on the control frame, which stalls on store forwa
An aligned load is atomic on x64, and seq_cst because stores here use xchg. The fallbacks issued lock xadd or lock cmpxchg on every load, wh
strlcpy returns the length of the source string, not the number of bytes it wrote into tbuf, so reusing its return value as the length for t