[#37708] [Ruby 1.9 - Bug #4956][Open] [PATCH] string.c (tr_s_bang): fix leak with heap strings — Eric Wong <normalperson@...>
Eric Wong <normalperson@yhbt.net> wrote:
On Wed, Jul 06, 2011 at 04:46:44AM +0900, Eric Wong wrote:
[#37714] test fail test/matrix/test_matrix.rb:321 — KOSAKI Motohiro <kosaki.motohiro@...>
http://59.106.172.211/~chkbuild/ruby-trunk/log/20110701T110101Z.log.html.gz
2011/7/1 KOSAKI Motohiro <kosaki.motohiro@gmail.com>:
Test fixed, thanks (indeed, Matrix#** now implements non integer exponents).
2011/7/2 Marc-Andre Lafortune <ruby-core-mailing-list@marc-andre.ca>:
[#37724] open-ssl related errors on MacOSX — SASADA Koichi <ko1@...>
Hi,
2011/7/2 SASADA Koichi <ko1@atdot.net>:
2011/7/2 Martin Bo煬et <martin.bosslet@googlemail.com>:
[#37730] [Ruby 1.9 - Bug #4962][Open] come back gem_prelude! — Yusuke Endoh <mame@...>
On Sat, Jul 02, 2011 at 02:18:35PM +0900, Yusuke Endoh wrote:
[#37757] [Ruby 1.9 - Bug #4969][Open] Subtle issue with require — Thomas Sawyer <transfire@...>
[#37761] [Ruby 1.9 - Feature #4970][Open] FileUtils refactored — Thomas Sawyer <transfire@...>
[#37805] [Ruby 1.8 - Bug #4979][Open] `require 'foo'` is ambiguous when there is both foo.rb and foo.so — Antonio Terceiro <terceiro@...>
[#37840] [Ruby 1.9 - Feature #4985][Open] Add %S[] support for making a list of symbols — Aaron Patterson <aaron@...>
I guessed that %S(...) is S-expr syntax.
[#37853] [Ruby 1.9 - Bug #4989][Open] Document Socket constants — Eric Hodel <drbrain@...7.net>
Why change all the statuses to low here? I don't see the validity of
Hi
On Fri, Jul 8, 2011 at 08:25, KOSAKI Motohiro <kosaki.motohiro@gmail.com> wrote:
[#37858] [Ruby 1.9 - Bug #4992][Open] finalizer中のThread.newでSEGV — Shota Fukumori <sorah@...>
> -- Thread.new in finalizer raises SEGV
[#37866] [Backport87 - Feature #4996][Open] About 1.8.7 EOL — Shyouhei Urabe <shyouhei@...>
[#37913] [Ruby 1.9 - Bug #5003][Open] Enumerator#next segfaults in OS X Lion (10.7) — Ganesh Gunasegaran <ganesh.gunas@...>
[#37917] [Ruby 1.9 - Feature #5005][Open] Provide convenient access to original methods — Lazaridis Ilias <ilias@...>
[#37932] [Ruby 1.9 - Feature #5008][Open] Equal rights for Hash (like Array, String, Integer, Float) — Suraj Kurapati <sunaku@...>
On Thu, Mar 29, 2012 at 13:25, rosenfeld (Rodrigo Rosenfeld Rosas) <
[#37936] [Ruby 1.9 - Feature #5010][Open] Add Slop(-like) in stdlib and deprecate current OptionParser API — Rodrigo Rosenfeld Rosas <rr.rosas@...>
Hi,
Em 09-07-2011 20:13, Nobuyoshi Nakada escreveu:
[#37985] [Ruby 1.9 - Bug #2616] unable to trap in doze — Motohiro KOSAKI <kosaki.motohiro@...>
[#37988] [Ruby 1.9 - Feature #5016][Open] Kernel#caller with negative limit should limit result to N initial frames — Nikolai Weibull <now@...>
[#38011] [Ruby 1.9 - Bug #5018][Open] ruby_1_9_3 branch is missing from official GitHub mirror — Luis Lavena <luislavena@...>
[#38096] [Ruby 1.9 - Feature #5033][Open] PATCH: 1.9: gc_mark_children: Avoid gc_mark() tail recursion, use goto again. — Kurt Stephens <ks.ruby@...>
[#38109] [Ruby 1.9 - Bug #5034][Open] C Source Code formatting — Lazaridis Ilias <ilias@...>
[#38137] [Ruby 1.9 - Bug #5038][Open] Ruby 1.9.2 stops on some Regular Expressions — Bob Ambartsumov <bob@...>
[#38140] [Ruby 1.9 - Feature #5041][Open] Set FD_CLOEXEC for all fds (except 0, 1, 2) — Akira Tanaka <akr@...>
[#38158] Proposal to merge net2-http for Ruby 1.9.4 — Yehuda Katz <wycats@...>
I gave a talk at Ruby Kaigi about my work on Net::HTTP (
2011/7/18 Yehuda Katz <wycats@gmail.com>:
Yehuda Katz
[#38164] [Ruby 1.9 - Bug #5046][Open] Bug with xmlrpc::client, basic auth and long authentication strings — Herwin Weststrate <herwin@...>
[#38171] [Ruby 1.9 - Bug #5047][Open] Segfault (most likely involving require) — Jack Christensen <jack@...>
Hiroshi Nakamura <nakahiro@gmail.com> wrote:
On Jul 22, 2011, at 2:41 PM, Eric Wong wrote:
Thank you for the trying the patch.
[#38172] [Backport87 - Backport #5048][Open] Make failed on tk bindings under OSX Lion fresh install — "Wayne E. Seguin" <wayneeseguin@...>
[#38182] [Ruby 1.9 - Feature #5054][Open] Compress a sequence of ends — ANDO Yasushi ANDO <andyjpn@...>
[#38197] [Ruby 1.9 - Feature #5056][Open] About 1.9 EOL — Shyouhei Urabe <shyouhei@...>
Hi,
Hi,
On 23/08/11 at 06:50 +0900, SASADA Koichi wrote:
(2011/08/23 20:09), Lucas Nussbaum wrote:
On 23/08/11 at 20:20 +0900, NARUSE, Yui wrote:
Hello,
[#38295] [Ruby 1.9 - Feature #5064][Open] HTTP user-agent class — Eric Hodel <drbrain@...7.net>
[#38343] [Ruby 1.9 - Bug #5068][Open] Issue with "duplicated when clause is ignored" — Stefano Mioli <stefano.mioli@...>
[#38367] [Ruby 1.9 - Feature #5072][Open] Avoid inadvertent symbol creation in reflection methods — Jeremy Evans <merch-redmine@...>
[#38391] [Ruby 1.9 - Bug #5076][Open] Mac OS X Lion Support — Yui NARUSE <naruse@...>
[#38451] [Ruby 1.9 - Bug #5090][Open] Segfault using Enumerator — Robert Syme <rob.syme@...>
[#38464] [Ruby 1.9 - Bug #5091][Open] Can't require './.testrb' — Thomas Sawyer <transfire@...>
[#38491] 1.9.3 Status Update? — Joshua Ballanco <jballanc@...>
Hello ruby-core,
[#38510] [Ruby 1.9 - Feature #5097][Assigned] Supported platforms of Ruby 1.9.3 — Yui NARUSE <naruse@...>
On Mon, Jul 25, 2011 at 11:52 PM, Yui NARUSE <naruse@airemix.jp> wrote:
Yui NARUSE <naruse@airemix.jp> wrote:
[#38538] [Ruby 1.9 - Feature #5101][Open] allow optional timeout for TCPSocket.new — Eric Wong <normalperson@...>
2011/7/27 Eric Wong <normalperson@yhbt.net>:
Tanaka Akira <akr@fsij.org> wrote:
2011/7/29 Eric Wong <normalperson@yhbt.net>:
2011/7/30 Tanaka Akira <akr@fsij.org>:
[#38610] [Ruby 1.9 - Feature #5120][Open] String#split needs to be logical — Alexey Muranov <muranov@...>
[ruby-core:37931] [Ruby 1.9 - Bug #5002] Ripper fails to distinguish local vars from vcalls [PATCH]
Issue #5002 has been updated by Michael Edgar.
File vcall.breaking.diff added
File vcall.same_errors.diff added
Ack - I missed how nil/self would be caught as vcalls there.
As you note, splitting the variable node is necessary. I split 'variable' into 'user_variable' and 'keyword_variable', removing 'variable' entirely (since it would give r/r conflicts). However, this turns out to be a good thing overall: every other use of the `variable` production is on the LHS (or LHS-like constructs, like rescue Foo => exc), which bar the use of keywords anyway through manual checking.
So, I have two patches: one which just replaces all other uses of `variable` with `user_variable`. This is "vcall.breaking.diff", as it breaks some previous error-case behavior. The allowed syntax is identical; the error reported on invalid syntax (self = 'foo'), is not. It will, in this patch, simply emit a generic bison "unexpected ..." error, as the grammar will not match such constructs.
The second patch adds back in `keyword_variable` productions, so that error reporting will be the same, even though the new productions will always generate errors. This is "vcall.same_errors.diff". For a patch release, I imagine maintaining the errors may be preferable, so I've included it for completeness.
----------------------------------------
Bug #5002: Ripper fails to distinguish local vars from vcalls [PATCH]
http://redmine.ruby-lang.org/issues/5002
Author: Michael Edgar
Status: Open
Priority: Normal
Assignee:
Category:
Target version: 1.9.3
ruby -v: -
Ripper always parses the `variable` grammar production (which includes identifiers, {i,c,g}vars, nil, __FILE__, etc) as a `var_ref` node, whose only child is the token itself.
This is a problem for one huge reason: local variables look exactly like vcalls: no-arg, no-receiver method calls. More importantly, the parse tree defines whether a given bareword identifier is a local variable reference or a method call. Thus, given a ripper parse tree, in order to distinguish local variable references from vcalls, one must reconstruct the parse order, re-implement the local variable introduction rules (local variable assigned in some way, for loops, block arg, rescue exception variable, named regex capture groups, ....), and then relabel those `var_ref` nodes which are method calls as `vcall` nodes.
This is quite a nasty workaround. There are a *lot* of edge cases to mess up. I've implemented it as the `ripper-plus` gem, but it's a huge pain, I'm not sure it's entirely correct, and is something the parser should be doing anyway.
The funny thing is, the parser already *is* doing almost all of the work! It's just not looking at the local variable tables when it comes time to generate the Ripper event. The patch I've attached does do so - it's a small change for a huge benefit for Ripper users.
I'd like to see this land in 1.9.3 - it's a small patch, and given the other bug fixes Ripper's had this cycle, would make Ripper pretty much sufficient for an entire Ruby implementation.
--
http://redmine.ruby-lang.org