Skip to content

Instantly share code, notes, and snippets.

@ferrous26
ferrous26 / trace.sh
Created June 2, 2012 16:39
rvm issue 1004
○ set -x ; rvm --trace install macruby-nightly ; set +x
+-zsh:6> rvm --trace install macruby-nightly
+ [[ -n '' ]]
+ export 'PS4=+ ${BASH_SOURCE##${rvm_path:-}} : ${FUNCNAME[0]:+${FUNCNAME[0]}()} ${LINENO} > '
+ PS4='+ ${BASH_SOURCE##${rvm_path:-}} : ${FUNCNAME[0]:+${FUNCNAME[0]}()} ${LINENO} > '
+ /scripts/cli : __rvm_parse_args() 790 > [[ -z '' ]]
+ /scripts/cli : __rvm_parse_args() 790 > [[ -n '' ]]
+ /scripts/cli : __rvm_parse_args() 792 > [[ 0 -eq 1 ]]
+ /scripts/cli : __rvm_parse_args() 792 > [[ -n '' ]]
+ /scripts/cli : __rvm_parse_args() 26 > [[ -n install ]]
@ferrous26
ferrous26 / trace.txt
Created March 23, 2012 16:50
Rubygems #306
± VM_DISABLE_RBO=1 gem install minitest --backtrace
ERROR: While executing gem ... (NameError)
uninitialized constant YAML::PrivateType
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/rubygems/specification.rb:672:in `block'
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/rubygems/specification.rb:672:in `_load'
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/rubygems/spec_fetcher.rb:134:in `fetch_spec'
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/rubygems/spec_fetcher.rb:95:in `block'
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/rubygems/spec_fetcher.rb:94:in `fetch_with_errors'
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/rubygems/dependency_installer.rb:110:in `find_gems_with_sources'
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/rubygems/commands/install_command.rb:121:in `bl
@ferrous26
ferrous26 / bench.rb
Created March 15, 2012 05:22
Is it worth caching ActiveSupport::Inflector inflections that get used a lot
require 'benchmark'
Benchmark.bmbm do |bench|
regexp = /s$/i
empty = '' hash = {
'boxes' => 'box',
'windows' => 'window', 'buttons' => 'button',
'Buttons' => 'button',
'dialogs' => 'dialog'
}
@ferrous26
ferrous26 / bench_inspect.rb
Created March 10, 2012 08:12
For MacRuby pull request #60
require 'benchmark'
Benchmark.bmbm do |bench|
url = NSURL.URLWithString('http://macruby.org/')
set = NSSet.setWithArray([1,2,3])
bundle = NSBundle.mainBundle
freq = 100_000
bench.report('url#inspect') do |x|
@ferrous26
ferrous26 / other_code_path.diff
Created February 10, 2012 05:22
MacRuby does not use Syck
diff --git a/lib/rubygems/specification.rb b/lib/rubygems/specification.rb
index e873923..392c91b 100644
--- a/lib/rubygems/specification.rb
+++ b/lib/rubygems/specification.rb
@@ -1921,12 +1921,12 @@ class Gem::Specification
end
def to_yaml(opts = {}) # :nodoc:
- if YAML.const_defined?(:ENGINE) && !YAML::ENGINE.syck? then
+ # XXX MACRUBY does not have syck, but does not have YAML::ENGINE either
@ferrous26
ferrous26 / better_fix.diff
Created February 9, 2012 08:22
Rubygems problem
diff --git a/lib/rubygems.rb b/lib/rubygems.rb
index 567fb07..85a4995 100644
--- a/lib/rubygems.rb
+++ b/lib/rubygems.rb
@@ -6,8 +6,9 @@
#++
module Gem
- QUICKLOADER_SUCKAGE = RUBY_VERSION =~ /^1\.9\.1/
- GEM_PRELUDE_SUCKAGE = RUBY_VERSION =~ /^1\.9\.2/
@ferrous26
ferrous26 / example
Created November 1, 2011 16:51
Demonstrate possible problem with Range -> NSRange transformations
○ macirb
irb(main):001:0> framework 'Cocoa'
=> true
irb(main):002:0> a = (0..10).to_a
=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
irb(main):003:0> a.subarrayWithRange(0..10)
=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
irb(main):004:0> a.slice(0..10)
=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
irb(main):005:0>
@ferrous26
ferrous26 / bench.rb
Created August 13, 2011 19:08
jiraSOAP 0.9 blog code snippets
require 'rubygems'
require 'jiraSOAP'
# I changed the URL and credentials as they are sensitive infos
$db = JIRA::JIRAService.new 'http://jira.domain.com:8080'
$db.login 'mark', 'password'
at_exit { $db.logout }
def bench_it issues, iterations
times = []
@ferrous26
ferrous26 / bench.rb
Created July 31, 2011 02:20
Simple #tap usage
require 'benchmark'
Benchmark.bmbm do |x|
x.report 'direct call' do
1_000_000.times do
x = true
x.nil?
@ferrous26
ferrous26 / bench.rb
Created July 5, 2011 05:11
preliminary benchmarks for json on MacRuby
require 'rubygems'
gem 'minitest', '>= 2.3.1'
require 'minitest/autorun'
require 'minitest/benchmark'
require 'json'
framework 'Foundation'
class Bench < MiniTest::Unit::TestCase
def self.order
:alpha