[#66678] [ruby-trunk - Feature #10481] Add "if" and "unless" clauses to rescue statements — alex@...
Issue #10481 has been updated by Alex Boyd.
3 messages
2014/12/04
[#66762] Re: [ruby-changes:36667] normal:r48748 (trunk): struct: avoid all O(n) behavior on access — Tanaka Akira <akr@...>
2014-12-10 0:44 GMT+09:00 normal <ko1@atdot.net>:
3 messages
2014/12/10
[#66851] [ruby-trunk - Feature #10585] struct: speedup struct.attr = v for first 10 attributes and struct[:attr] for big structs — funny.falcon@...
Issue #10585 has been updated by Yura Sokolov.
3 messages
2014/12/15
[#67126] Ruby 2.2.0 Released — "NARUSE, Yui" <naruse@...>
We are pleased to announce the release of Ruby 2.2.0.
8 messages
2014/12/25
[#67128] Re: Ruby 2.2.0 Released
— Rodrigo Rosenfeld Rosas <rr.rosas@...>
2014/12/25
I can't install it in any of our Ubuntu servers using rbenv:
[#67129] Re: Ruby 2.2.0 Released
— SHIBATA Hiroshi <shibata.hiroshi@...>
2014/12/25
> I can't install it in any of our Ubuntu servers using rbenv:
[ruby-core:66808] [CommonRuby - Feature #10395] [Closed] erb: allow variables to be set from the command line
From:
nobu@...
Date:
2014-12-12 10:49:12 UTC
List:
ruby-core #66808
Issue #10395 has been updated by Nobuyoshi Nakada.
Status changed from Assigned to Closed
% Done changed from 0 to 100
Applied in changeset ruby-trunk:r48786.
----------
erb: set variables from the command line
* bin/erb (ARGV.switch, ERB::Main#run): allow variables to be set
from the command line. [ruby-core:65772] [Feature #10395]
----------------------------------------
Feature #10395: erb: allow variables to be set from the command line
https://bugs.ruby-lang.org/issues/10395#change-50380
* Author: Jos Backus
* Status: Closed
* Priority: Normal
* Assignee: Masatoshi Seki
* Category:
* Target version: Ruby 2.2.0
----------------------------------------
This would make erb more useful from the command line. Granted the use of Binding#eval is dangerous so one has to be careful. Newer versions of Ruby have Binding#local_variable_set which can be used instead but this works with Ruby 2.0.0.
~~~
jonagold:local jos$ cat /tmp/erb-template
This is <%= foo %>
And this is <%= bar %>
~~~
~~~diff
jonagold:local jos$ diff -u /usr/bin/erb /tmp/erb
--- /usr/bin/erb 2014-05-15 22:14:36.000000000 -0700
+++ /tmp/erb 2014-10-16 22:29:37.000000000 -0700
@@ -114,6 +114,13 @@
exit 1
end
+ vars = ARGV.take_while {|arg| arg[/^\w+=/]}
+ ARGV.slice!(0, vars.size)
+ vars.each do |var|
+ k, v = var.split('=', 2)
+ TOPLEVEL_BINDING.eval %Q(#{k} = "#{v}")
+ end
+
$<.set_encoding(Encoding::ASCII_8BIT, nil)
src = $<.read
filename = $FILENAME
~~~
~~~
jonagold:local jos$ /tmp/erb foo=FOO bar=123 /tmp/erb-template
This is FOO
And this is 123
jonagold:local jos$
~~~
--
https://bugs.ruby-lang.org/