summaryrefslogtreecommitdiff
path: root/box.c
AgeCommit message (Collapse)Author
2025-12-24Box: show the fully qualified URL of the Ruby::Box docSatoshi Tagomori
2025-12-21Box: Fix an unused variable warningNobuyoshi Nakada
2025-12-19[Bug #21794] Fix for platforms where O_CLOEXEC is not availableNobuyoshi Nakada
2025-12-18Check for NULL fields in TYPEDDATA memsize functions (#15633)Luke Gruber
Some TYPEDDATA objects allocate struct fields using the GC right after they get created, and in that case the VM can try to perform a GC and join a barrier if another ractor started one. If we're dumping the heap in another ractor, this acquires a barrier and it will call the `rb_obj_memsize` function on this object. We can't assume these struct fields are non-null. This also goes for C extensions, which may cause problems with heap dumping from a ractor if their memsize functions aren't coded correctly to check for NULL fields. Because dumping the heap from a ractor is likely a rare scenario and it has only recently been introduced, we'll have to see how this works in practice and if it causes bugs.
2025-12-16Box: [DOC] fix the class name in rdocNobuyoshi Nakada
Also remove a stale TODO.
2025-12-16Box: fix the class name in inspectNobuyoshi Nakada
2025-12-15Merge `root_box_data` into `root_box`Nobuyoshi Nakada
* Make invariant `root_box` an array consist of only `root_box_data`. * Remove the unnecessary initializer list that is just overwritten in `initialize_root_box()` and missing `classext_cow_classes`. * Shrink the scope using another local `root_box`. * Make the data type constants static.
2025-12-10Add `NUM2PTR` and `PTR2NUM` macrosNobuyoshi Nakada
These macros have been defined here and there, so collect them.
2025-12-09Box: remove copied extension filesNobuyoshi Nakada
2025-12-09Remove duplicate path names in error messageNobuyoshi Nakada
2025-12-09Refine `copy_ext_file`Nobuyoshi Nakada
- Define the error constants. - Use system calls to copy files if available. - Simplify fallback copying. - Copy without stdio buffering.
2025-12-02Box: Free rb_classext_t struct for a box when the box is GCedSatoshi Tagomori
2025-12-02Box: Fix data type nameSatoshi Tagomori
2025-11-30Fix switch fall-through in copy_ext_file_errorDaisuke Fujimura (fd0)
2025-11-27Reorganize page documentations (#15154)Stan Lo
Re-organize page docs
2025-11-23[Misc #21688] [DOC] Include box.md in Ruby::Box documentationNobuyoshi Nakada
2025-11-23[Misc #21688] Teach RDoc about the toplevel module `Ruby`Nobuyoshi Nakada
Re-open the exising module by calling `rb_define_module`. RDoc (`RDoc::Parser::C#do_classes_and_modules`) does not recognize `rb_path2class` as a class/module definition.
2025-11-08ConstifyNobuyoshi Nakada
2025-11-07Use RUBY_BOX environment variable instead of RUBY_NAMESPACESatoshi Tagomori
2025-11-07Rename Namespace to Ruby::BoxSatoshi Tagomori
2025-11-07renaming internal data structures and functions from namespace to boxSatoshi Tagomori
2025-11-07update referenced filenames from namespace to boxSatoshi Tagomori
2025-11-07rename namespace.c (and others) to box.cSatoshi Tagomori