diff options
Diffstat (limited to 'NEWS')
| -rw-r--r-- | NEWS | 293 |
1 files changed, 0 insertions, 293 deletions
@@ -1,293 +0,0 @@ -= 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.1 release -=== Library updates (outstanding ones only) - -* builtin classes - - * Array - * new method: - * Array#sort_by! - - * Dir - * new method: - * Dir.home - - * Enumerable - * New methods: - * Enumerable#join - * Enumerable#chunk - * Enumerable#slice_before - - * Enumerator - * new methods: - * Enumerator#peek - * Enumerator#next_values - * Enumerator#peek_values - * Enumerator#feed - * StopIteration#result - - * extended methods: - * #with_index accepts an optional argument that specifies the - index number to start with, defaulted to 0. - - * incompatible changes: - * #rewind now calls the "rewind" method of the enclosed object - if defined. - * #next doesn't clear the position at end. - - * ENV - * Uses locale's encoding - - * IO - * new method: - * IO#fdatasync - - * extended methods: - * IO.pipe can take a block. - - * new modules: - * IO::WaitReadable - * IO::WaitWritable - They are used to extend non-blocking exceptions. - - * MatchData - * New method: - * MatchData#== - - * Process - * extended methods: - * Process.spawn accepts [:child, FD] for a redirect target. - - * Random (new library for generating pseudo-random numbers) - - * String - * extended methods: - * string[regexp, name] is supported for named capture. - - * Time - * extended feature: - * time_t restriction is removed to represent before 1901 and after 2038. - Proleptic Gregorian calendar is used for old dates. - * Time.new have optional arguments to specify date with time offset. - * Time#getlocal, Time#localtime have optional time offset argument. - - * new method: - * Time#to_r - - * incompatible changes: - * The year argument of Time.{utc,gm,local,mktime} is now interpreted as - the value itself. For example, Time.utc(99) means the year 99 AD, - not 1999 AD. - - * Kernel - * new method: - * Kernel#require_relative - - * extended methods: - * respond_to? can be used to detect methods not implemented. - For example, Process.respond_to?(:fork) returns false on Windows. - -* rss - - * 0.2.4 -> 0.2.7. - - * RSS::Maker.make - * raise an exception not returns nil for invalid feed making. - * requires block. - - * RSS::Maker.[] - * new method to return maker class. - - * RSS::Maker.supported?(version) - * new method to check whether given version is supported. - - * RSS::Maker: item.guid.permanent_link? - * new alias of item.guid.isPermaLink - * RSS::Maker: item.guid.permanent_link= - * new alias of item.guid.isPermaLink= - -* JSON - * Update to JSON 1.1.9 - -* REXML - - * REXML::Document.entity_expansion_limit= - - New method to set the entity expansion limit. By default the limit is - set to 10000. See the following URL for details. - - http://www.ruby-lang.org/en/news/2008/08/23/dos-vulnerability-in-rexml/ - -* logger - - * imported upstream version (logger/1.2.7) - * do not raise an exception even if log writing failed. - * do not raise ShiftingError if an aged file already exists. - (no ShiftingError will be raised from 1.2.7, just warn() instead) - -* open3 - * new methods: - * Open3.popen2 - * Open3.popen2e - * Open3.capture3 - * Open3.capture2 - * Open3.capture2e - * Open3.pipeline_rw - * Open3.pipeline_r - * Open3.pipeline_w - * Open3.pipeline_start - * Open3.pipeline - -* pty - * new method: - * PTY.open - -* openssl - * new methods: - * OpenSSL::Buffering#read_nonblock - * OpenSSL::Buffering#write_nonblock - * OpenSSL::SSL::SSLSocket#connect_nonblock - * OpenSSL::SSL::SSLSocket#accept_nonblock - -* socket - - * incompatible changes: - * Socket#{recvfrom,recvfrom_nonblock,accept,accept_nonblock,sysaccept} - returns a sender address as Addrinfo object instead of a binary sockaddr string. - Addrinfo#to_s returns the old binary sockaddr string. - * BasicSocket#getsockopt returns Socket::Option object instead of a binary string. - Socket::Option#to_s returns the old binary string. - - * new class: - * Addrinfo - * Socket::Option - * Socket::AncillaryData - - * new methods: - * Socket.ip_address_list - * Socket.tcp - * Socket.tcp_server_loop - * Socket.tcp_server_sockets - * Socket.udp_server_sockets - * Socket.udp_server_loop_on - * Socket.udp_server_loop - * Socket.unix - * Socket.unix_server_loop - * Socket.unix_server_socket - * Socket.accept_loop - * Socket#ipv6only! - * BasicSocket#local_address - * BasicSocket#remote_address - * BasicSocket#connect_address - * BasicSocket#sendmsg - * BasicSocket#sendmsg_nonblock - * BasicSocket#recvmsg - * BasicSocket#recvmsg_nonblock - * BasicSocket#getpeereid - - * extended methods: - * Socket.new's 3rd argument is optional now. - * Socket.pair's 3rd argument is optional now. - * Socket.pair and UNIXSocket.pair can take a block. - * BasicSocket#send, UDPSocket#send, Socket.getnameinfo, Socket#bind, and - Socket#{connect,connect_nonblock} accepts an Addrinfo object as sockaddr. - * BasicSocket#getsockopt accepts a Socket::Option object. - - * constant names can be accepted as well as constant values. - i.e. Socket.new(:PF_INET, :SOCK_STREAM, 0) - The constant names can be specified without the prefix. - i.e. Socket.new(:INET, :STREAM, 0) - * protocol/address family - * socket type - * socket option protocol level - * socket option name - * shutdown's argument - -* pathname - * new methods: - * Pathname#binread - * Pathname#realdirpath - * Pathname#each_child - -* Readline - * new methods: - * Readline.set_screen_size - * Readline.get_screen_size - - * extended methods: - * Readline.completion_proc= accepts nil. - nil means to use default completion proc. - -* time - * incompatible changes: - * Time.parse raises ArgumentError when no date information. - -* thread - * extended method: - * ConditionVariable#wait takes timeout argument. - -* securerandom - * new methods: - * SecureRandom.urlsafe_base64 - -* URI - * Obsoleted methods: - * URI#escape - * URI#unescape - -* etc - * new methods: - * Etc::Passwd.each - * Etc::Group.each - -* zlib - * new methods: - * Zlib::GzipFile#path - -=== Language changes - -* Regexp properties (\p{}) names now ignore underscores, spaces, and case, so - \p{ol chiki} is the same as \p{Ol_Chiki} -* Regexps now support Unicode 5.1 (new characters and scripts) -* \d, \s, and \w are now ASCII only; use POSIX bracket classes and \p{} for - Unicode semantics -* $: no longer includes the current directory, use require_relative - -=== Compilation options - -* --program-prefix and --program-suffix no longer act on the shared object - names nor paths to libraries. - - use --with-rubylibprefix='${libruby}/${RUBY_INSTALL_NAME}' and - --with-soname='${RUBY_INSTALL_NAME}' for the same result as Ruby 1.9.1. - -* --with-arch is added for universal binary, instead of - --enable-fat-binary option. - -=== Compatibility issues (excluding feature bug fixes) - - * Enumerator#rewind - * Socket#recvfrom - * Socket#recvfrom_nonblock - * Socket#accept - * Socket#accept_nonblock - * Socket#sysaccept - * BasicSocket#getsockopt - * Time.utc - * Time.gm - * Time.local - * Time.mktime - * Time.parse - * --program-prefix and --program-suffix - * --enable-fat-binary - * $: - - See above. |
