aboutsummaryrefslogtreecommitdiffstats
path: root/io.c
Commit message (Collapse)AuthorAgeFilesLines
* Using RB_BIGNUM_TYPE_P macroS-H-GAMELINKS2021-09-111-1/+1
|
* Fix Marshal.dump(closed_io) to raise TypeError and allow encoding on closed IOLars Kanis2021-08-221-4/+2
| | | | | | | Mashalling a closed IO object raised "closed stream (IOError)" before instead of TypeError. This changes IO#(in|ex)ternal_encoding to still return the encoding even if the underlying FD is closed. Fixes bug #18077
* `popen()` is not available on emscriptenNobuyoshi Nakada2021-08-161-1/+5
|
* Fix ARGF.read(length) short read [Bug #18074]Csaba Henk2021-08-101-2/+1
|
* Reduce chance to receive EBADF when closing an IO from another thread.Samuel Williams2021-08-081-19/+27
|
* Using RBOOL macroS.H2021-08-021-12/+7
|
* Define functions using rb_wait_for_single_fd [Bug #18046]Nobuyoshi Nakada2021-08-011-0/+12
|
* io.c: Clarify the behavior of `IO.read` when called as `File.read`Yusuke Endoh2021-07-161-17/+59
| | | | | Ditto to `IO.binread`, `IO.write`, `IO.binwrite`, `IO.foreach`, and `IO.readlines`.
* process.c: Call rb_thread_atfork in rb_fork_rubyYusuke Endoh2021-07-151-1/+0
| | | | | | | | All occurrences of rb_fork_ruby are followed by a call rb_thread_fork in the created child process. This is refactoring and a potential preparation for [Feature #17795]. (rb_fork_ruby may be wrapped by Process._fork_.)
* [DOC] add notes and examples for pipe [ci skip]Nobuyoshi Nakada2021-06-301-7/+19
|
* Check if closed after each yield [Bug #17661]Nobuyoshi Nakada2021-06-271-1/+3
|
* Introduced RUBY_CRLF_ENVIRONMENT to simplify repeated conditionNobuyoshi Nakada2021-06-241-8/+14
|
* Rework `sysread` to use blocking `read_internal_locktmp`.Samuel Williams2021-06-221-12/+6
|
* Deprecate and rework old (fd) centric functions.Samuel Williams2021-06-221-34/+48
|
* Direct io for accept, send, sendmsg, recvfrom, and related methods.Samuel Williams2021-06-221-0/+36
|
* What's Here for Numeric and ComparableBurdette Lamar2021-06-211-2/+5
|
* Adjust styles [ci skip]Nobuyoshi Nakada2021-06-171-3/+6
| | | | | | | | | * --braces-after-func-def-line * --dont-cuddle-else * --procnames-start-lines * --space-after-for * --space-after-if * --space-after-while
* Removed redundant NUM2IOCTLREQ definition [Bug #17759]Nobuyoshi Nakada2021-06-161-1/+0
| | | | Fix up c2d9967f78d2e6f93f8d9876c2b3ab25aa6b86e7.
* Configure ioctl request argument type [Bug #17759]Nobuyoshi Nakada2021-06-161-2/+2
|
* Fix a typo [ci skip]Kazuhiro NISHIYAMA2021-05-161-1/+1
|
* Removed missing/dup2.cNobuyoshi Nakada2021-05-101-3/+1
| | | | | | This function should be always available, as POSIX-compliant or Windows platform are required since 1.9. Also the code in this file is MT-unsafe.
* What's Here for class IO (#4440)Burdette Lamar2021-05-041-0/+149
| | | | * What's Here for class IO
* Fix documentation for IO#unget{byte,c}Jeremy Evans2021-05-041-9/+44
| | | | Fixes [Bug #14400]
* [Doc] Drop signature around removed IO#codepointsKenichi Kamiya2021-04-051-2/+0
| | | | Follow 43b95bafd57d04c8fb401d3a9b52aca3f5b4b0be
* Check errno before invoking scheduler in `rb_io_wait_readable/writable`.Samuel Williams2021-03-301-31/+35
| | | | See <https://bugs.ruby-lang.org/issues/17527> for more details.
* Remove unneeded declarationsS.H2021-03-201-1/+0
|
* Expose scheduler as public interface & bug fixes. (#3945)Samuel Williams2021-02-091-29/+33
| | | | | | | | | * Rename `rb_scheduler` to `rb_fiber_scheduler`. * Use public interface if available. * Use `rb_check_funcall` where possible. * Don't use `unblock` unless the fiber was non-blocking.
* Forward keyword arguments to ARGF from global functionsNobuyoshi Nakada2021-02-081-12/+19
|
* io.c: popen is not available on emscriptenYusuke Endoh2021-01-231-0/+9
|
* [DOC] Fix grammar: "is same as" -> "is the same as"Marcus Stollsteimer2021-01-051-1/+1
|
* Made an internal callback function staticNobuyoshi Nakada2020-12-201-1/+1
|
* Use category: :deprecated in warnings that are related to deprecationJeremy Evans2020-12-181-3/+4
| | | | | | | | | | | | | | | | | Also document that both :deprecated and :experimental are supported :category option values. The locations where warnings were marked as deprecation warnings was previously reviewed by shyouhei. Comment a couple locations where deprecation warnings should probably be used but are not currently used because deprecation warning enablement has not occurred at the time they are called (RUBY_FREE_MIN, RUBY_HEAP_MIN_SLOTS, -K). Add assert_deprecated_warn to test assertions. Use this to simplify some tests, and fix failing tests after marking some warnings with deprecated category.
* Tweaked `Process::Status.wait`Nobuyoshi Nakada2020-12-091-1/+1
| | | | | | | | * revert `rb_last_status_set` * renamed the new function as `rb_process_status_new` * `rb_process_status_new` always freezes the return value * marked `Process::Status.wait` as EXPERIMENTAL, as it has not been discussed totally yet.
* Add support for non-blocking `Process.wait`.Samuel Williams2020-12-091-5/+5
|
* delete deprecated IO-like methods卜部昌平2020-12-031-117/+0
| | | | | | | | | This commit deletes {IO,ARGF,StringIO,Zib::GZipReader}#{bytes,chars,lines,codepoints}, which have been deprecated since c47c095b9740e7c19d6fdca29ab661c1089221d4. Note that String also has those methods. They are neither depreacted nor deleted because they are not aliases of counterpart each_something.
* fix public interfaceKoichi Sasada2020-11-181-1/+1
| | | | | | | | | | | | | | | | | | To make some kind of Ractor related extensions, some functions should be exposed. * include/ruby/thread_native.h * rb_native_mutex_* * rb_native_cond_* * include/ruby/ractor.h * RB_OBJ_SHAREABLE_P(obj) * rb_ractor_shareable_p(obj) * rb_ractor_std*() * rb_cRactor and rm ractor_pub.h and rename srcdir/ractor.h to srcdir/ractor_core.h (to avoid conflict with include/ruby/ractor.h)
* Rename to `Fiber#set_scheduler`.Samuel Williams2020-11-071-8/+8
|
* Fix error in update-deps due to tab/space differenceJeremy Evans2020-10-281-1/+1
|
* Don't redefine #rb_intern over and over againStefan Stüben2020-10-211-31/+28
|
* Some global variables can be accessed from ractorsKoichi Sasada2020-10-201-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some global variables should be used from non-main Ractors. [Bug #17268] ```ruby # ractor-local (derived from created ractor): debug '$DEBUG' => $DEBUG, '$-d' => $-d, # ractor-local (derived from created ractor): verbose '$VERBOSE' => $VERBOSE, '$-w' => $-w, '$-W' => $-W, '$-v' => $-v, # process-local (readonly): other commandline parameters '$-p' => $-p, '$-l' => $-l, '$-a' => $-a, # process-local (readonly): getpid '$$' => $$, # thread local: process result '$?' => $?, # scope local: match '$~' => $~.inspect, '$&' => $&, '$`' => $`, '$\'' => $', '$+' => $+, '$1' => $1, # scope local: last line '$_' => $_, # scope local: last backtrace '$@' => $@, '$!' => $!, # ractor local: stdin, out, err '$stdin' => $stdin.inspect, '$stdout' => $stdout.inspect, '$stderr' => $stderr.inspect, ```
* Respect the original styles [ci skip]Nobuyoshi Nakada2020-10-111-1/+2
|
* Prefer to use `prep_io` for temporary IO instances.Samuel Williams2020-09-171-13/+4
|
* Fix handling of FMODE_PREP.Samuel Williams2020-09-151-1/+1
|
* Fix incorrect initialization of `rb_io_t::self`.Samuel Williams2020-09-151-3/+6
|
* Prefer `rb_thread_current_scheduler`.Samuel Williams2020-09-141-4/+22
|
* Add support for hooking `IO#read`.Samuel Williams2020-09-141-0/+6
|
* Standardised scheduler interface.Samuel Williams2020-09-141-5/+76
|
* Simplify bitmasks for IO events.Samuel Williams2020-09-141-3/+3
|
* Check copy_file_range(2) is actually supported.Masaki Matsushita2020-09-121-4/+0
| | | | see also: https://gitlab.com/gitlab-org/gitlab/-/issues/218999#note_363225872
* break around function definition [ci skip]Nobuyoshi Nakada2020-09-051-1/+3
|