summaryrefslogtreecommitdiff
path: root/NEWS
blob: 32480e014f18210454efc317f88d151b1a0c8ed5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# -*- rd -*-
= NEWS

This document is a list of user visible feature changes made between
releases except for bug fixes.

Note that each entry is kept so brief that no reason behind or
reference information is supplied with.  For a full list of changes
with all sufficient information, see the ChangeLog file.

== Changes since the 1.9.3 release

=== C API updates
* NUM2SHORT() and NUM2USHORT() added. They are similar to NUM2INT, but short.

=== Library updates (outstanding ones only)

* builtin classes

  * Kernel
    * extended method:
      * Kernel#warn accepts multiple args in like puts.
    * incompatible changes:
      * system() and exec() closes non-standard file descriptors
        (The default of :close_others option is changed to true by default.)

  * Signal
    * incompatible changes:
      * Signal.trap raises ArgumentError when :SEGV, :BUS, :ILL, :FPE, :VTALRM
        are specified.

  * Time
    * change return value:
      * Time#to_s returned encoding defaults to US-ASCII but automatically
        transcodes to Encoding.default_internal if it is set.

  * Fiber
    * incompatible changes:
      * Fiber#resume cannot resume a fiber which invokes "Fiber#transfer".

* net/imap
  * new methods:
    * Net::IMAP.default_port
    * Net::IMAP.default_imap_port
    * Net::IMAP.default_tls_port
    * Net::IMAP.default_ssl_port
    * Net::IMAP.default_imaps_port

* pathname
  * extended method:
    * Pathname#find returns an enumerator if no block is given.

* resolv
  * new methods:
    * Resolv::DNS#timeouts=
    * Resolv::DNS::Config#timeouts=

* shellwords
    * Shellwords#shellescape() now stringifies the given object using to_s.
    * Shellwords#shelljoin() accepts non-string objects in the given
      array, each of which is stringified using to_s.

=== Language changes
=== Compatibility issues (excluding feature bug fixes)

  * Signal.trap

    See above.

  * incompatible changes:
    The :close_others option is true by default for system() and exec().
    Also, the close-on-exec flag is set by default for all new file descriptors.
    This means file descriptors doesn't inherit to spawned process unless
    explicitly requested such as system(..., fd=>fd).