Skip to content

Instantly share code, notes, and snippets.

View razielgn's full-sized avatar
🇺🇦
Слава Україні!

Federico Ravasio razielgn

🇺🇦
Слава Україні!
View GitHub Profile
@razielgn
razielgn / symbols.diff
Created July 22, 2013 10:52
Broken attempt at adding symbols encoding to Rubinius.
diff --git a/vm/builtin/symbol.cpp b/vm/builtin/symbol.cpp
index 0af6a3f..0a1cf37 100644
--- a/vm/builtin/symbol.cpp
+++ b/vm/builtin/symbol.cpp
@@ -72,13 +72,11 @@ namespace rubinius {
}
Encoding* Symbol::encoding(STATE) {
- // TODO
- return Encoding::usascii_encoding(state);
@razielgn
razielgn / crash1
Created July 16, 2013 10:07
RBX nokogiri crash reports - rubinius 2.0.0.n197 (1.9.3 a95b7df8 2013-07-16 JI) [x86_64-unknown-linux-gnu]
Rubinius Crash Report #rbxcrashreport
Error: signal SIGSEGV
[[Backtrace]]
rbx[0x5cde5e]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xfbd0)[0x7fbf73d0dbd0]
rbx[0x5b0c8c]
rbx[0x5dfc31]
rbx[0x8b905c]
@razielgn
razielgn / bench.rb
Last active December 18, 2015 17:29
Major slowdown in String#gsub and String#gsub! (UTF-8 input with ASCII replacement) after commit f4fd34a.
Benchmark.ips do |x|
str1 = "YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFh\n" * 6000
repl1 = "\r\n"
x.report 'gsub ASCII with ASCII' do
str1.gsub(/\n|\r\n|\r/){ repl1 }
end
str2 = "YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFh\n" * 6000
str2.encode! 'utf-8'
@razielgn
razielgn / bug.rb
Created June 10, 2013 21:44
Trying to isolate the state_machine SystemStackError rubinius bug.
require_relative 'lib/state_machine'
class TrafficLight
state_machine :initial => :stop do
event :cycle do
transition :stop => :proceed, :proceed => :caution, :caution => :stop
end
state :stop do
def color(transform)
@razielgn
razielgn / mkv2mp4.rb
Last active December 11, 2015 18:38
Remux h264 MKV into MP4 and transcode audio to AAC if needed.
#!/usr/bin/env ruby
# Requirements
# - mkvtoolnix
# - MP4Box
# - ffmpeg compiled with libfaac support (https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide has helped me)
# - mediainfo
require 'tmpdir'
require 'fileutils'
@razielgn
razielgn / gist:4153909
Created November 27, 2012 12:06
Partially applied lambdas in ruby
CleanAndCapitalize = ->(s){ s.strip.capitalize }
SplitOn = ->(delim){ ->(s){ s.split(delim).map(&CleanAndCapitalize) } }
SplitAndCleanCsv = SplitOn.(',')
CleanAndCapitalize.('BLA BLU BLI ') # => "Bla blu bli"
SplitAndCleanCsv.('BLA, BLU , BLI ') # => ['Bla', 'Blu', 'Bli']
@razielgn
razielgn / gist:4072543
Created November 14, 2012 14:48
rake test:c on mongo-ruby-driver against rbx-head-19mode
install -c tmp/x86_64-unknown-linux-gnu/cbson/1.9.3/cbson.so lib/bson_ext/cbson.so
Loaded suite /home/razielgn/.rvm/gems/rbx-head-d19@global/gems/rake-10.0.0/lib/rake/rake_test_loader
Started
...............................................................................
...............................................................................
...............................................................................
................................
Finished in 43.938934 seconds.
@razielgn
razielgn / gist:4071900
Created November 14, 2012 12:45
mongo-ruby-driver against rbx-head-18mode
Loaded suite /home/razielgn/.rvm/gems/rbx-head-d18@global/gems/rake-10.0.0/lib/rake/rake_test_loader
Started
...............................................................................
...............................................................................
...............................................................................
................................
Finished in 71.137935 seconds.
269 tests, 3871 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
@razielgn
razielgn / gist:4071864
Created November 14, 2012 12:39
mongo-ruby-driver against rbx-head-19mode
Loaded suite /home/razielgn/.rvm/gems/rbx-head-d19@global/gems/rake-10.0.0/lib/rake/rake_test_loader
Started
...............................................................................
...............................................................................
...............................................................................
................................
Finished in 74.681724 seconds.
269 tests, 3872 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
@razielgn
razielgn / gist:4033450
Created November 7, 2012 18:32
rbx-head stacktrace
Rubinius Crash Report #rbxcrashreport
Error: signal SIGSEGV
[[Backtrace]]
/home/razielgn/.rvm/rubies/rbx-head/bin/rbx[0x5eec0e]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xfcb0)[0x7fb4f2175cb0]
/home/razielgn/.rvm/rubies/rbx-head/bin/rbx(_ZN8rubinius11InlineCache11check_cacheEPNS_5StateEPS0_PNS_9CallFrameERNS_9ArgumentsE+0x32)[0x5faf22]
/home/razielgn/.rvm/rubies/rbx-head/bin/rbx(_ZN8rubinius11MachineCode11interpreterEPNS_5StateEPS0_PNS_20InterpreterCallFrameE+0x273d)[0x61634d]
/home/razielgn/.rvm/rubies/rbx-head/bin/rbx(_ZN8rubinius11MachineCode19execute_specializedINS_12TwoArgumentsEEEPNS_6ObjectEPNS_5StateEPNS_9CallFrameEPNS_10ExecutableEPNS_6ModuleERNS_9ArgumentsE+0x274)[0x64d404]