jbarnette / hoe-debugging Goto Github PK
View Code? Open in Web Editor NEWA Hoe plugin to help you fix your broken codes.
License: Other
A Hoe plugin to help you fix your broken codes.
License: Other
I pulled down the latest loofah (flavorjones/loofah@63a8923) and wanted to run rake and
I kept getting errors due to hoe-debugging.
I tried downgrading from version 1.0.2 to 1.0.1, but I just ended up with a more mysterious error.
/Users/dabble/dev/loofah > rake --trace
** Invoke default (first_time)
** Invoke test (first_time)
** Execute test
rake aborted!
wrong number of arguments (1 for 0)
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/hoe-debugging-1.0.2/lib/hoe/debugging.rb:36:in `ruby'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/hoe-2.12.3/lib/hoe/test.rb:75:in `block in define_test_tasks'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `call'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `block in execute'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `each'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `execute'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain'
/Users/dabble/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:176:in `block in invoke_prerequisites'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `each'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `invoke_prerequisites'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:157:in `block in invoke_with_call_chain'
/Users/dabble/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:144:in `invoke'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:116:in `invoke_task'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/bin/rake:19:in `load'
/Users/dabble/.rvm/gems/ruby-1.9.2-p290/bin/rake:19:in `<main>'
Tasks: TOP => default => test
Here's my Gemfile.lock.
GEM
remote: http://rubygems.org/
specs:
hoe (2.12.3)
rake (~> 0.8)
hoe-bundler (1.1.0)
hoe (>= 2.2.0)
hoe-debugging (1.0.1)
hoe (>= 2.2.0)
hoe-gemspec (1.0.0)
hoe (>= 2.2.0)
hoe-git (1.4.1)
hoe (>= 2.2.0)
json (1.6.1)
minitest (2.8.0)
nokogiri (1.5.0)
rake (0.9.2.2)
rr (1.0.4)
PLATFORMS
ruby
DEPENDENCIES
hoe (>= 2.9.4)
hoe-bundler
hoe-debugging
hoe-gemspec
hoe-git
json
minitest (~> 2.2)
nokogiri (>= 1.4.4)
rake (>= 0.8)
rr (~> 1.0)
valgrind generally fails to run on ruby 2.1 and 2.2:
$ valgrind ruby -e 'require "nokogiri"'
==16069== Memcheck, a memory error detector
==16069== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==16069== Using Valgrind-3.10.0.SVN and LibVEX; rerun with -h for copyright info
==16069== Command: ruby -e require\ "nokogiri"
==16069==
==16069== Warning: client switching stacks? SP change: 0xffefff580 --> 0xffe8020e0
==16069== to suppress, use: --max-stackframe=8377504 or greater
==16069== Invalid write of size 1
==16069== at 0x5029BE5: reserve_stack (thread_pthread.c:690)
==16069== by 0x502CE01: ruby_init_stack (thread_pthread.c:719)
==16069== by 0x400880: main (main.c:34)
==16069== Address 0xffe8010e0 is not stack'd, malloc'd or (recently) free'd
==16069==
==16069==
==16069== Process terminating with default action of signal 11 (SIGSEGV)
==16069== Access not within mapped region at address 0xFFE8010E0
==16069== at 0x5029BE5: reserve_stack (thread_pthread.c:690)
==16069== by 0x502CE01: ruby_init_stack (thread_pthread.c:719)
==16069== by 0x400880: main (main.c:34)
==16069== If you believe this happened as a result of a stack
==16069== overflow in your program's main thread (unlikely but
==16069== possible), you can try to increase the size of the
==16069== main thread stack using the --main-stacksize= flag.
==16069== The main thread stack size used in this run was 8388608.
==16069== Invalid write of size 8
==16069== at 0x4A256B0: _vgnU_freeres (in /usr/lib/valgrind/vgpreload_core-amd64-linux.so)
==16069== Address 0xffe8020d8 is on thread 1's stack
==16069==
==16069== Invalid write of size 8
==16069== at 0x4A256B8: _vgnU_freeres (in /usr/lib/valgrind/vgpreload_core-amd64-linux.so)
==16069== Address 0xffe802090 is on thread 1's stack
==16069==
==16069== Stack overflow in thread 1: can't grow stack to 0xffe801ff8
==16069==
==16069== Process terminating with default action of signal 11 (SIGSEGV)
==16069== Access not within mapped region at address 0xFFE801FF8
==16069== at 0x400A860: _dl_lookup_symbol_x (dl-lookup.c:714)
==16069== If you believe this happened as a result of a stack
==16069== overflow in your program's main thread (unlikely but
==16069== possible), you can try to increase the size of the
==16069== main thread stack using the --main-stacksize= flag.
==16069== The main thread stack size used in this run was 8388608.
==16069==
==16069== HEAP SUMMARY:
==16069== in use at exit: 3,659 bytes in 16 blocks
==16069== total heap usage: 21 allocs, 5 frees, 4,624 bytes allocated
==16069==
==16069== LEAK SUMMARY:
==16069== definitely lost: 0 bytes in 0 blocks
==16069== indirectly lost: 0 bytes in 0 blocks
==16069== possibly lost: 0 bytes in 0 blocks
==16069== still reachable: 3,659 bytes in 16 blocks
==16069== suppressed: 0 bytes in 0 blocks
==16069== Rerun with --leak-check=full to see details of leaked memory
==16069==
==16069== For counts of detected and suppressed errors, rerun with: -v
==16069== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
Segmentation fault
@ko1 says this can be addressed by setting ulimit -s unlimited
, and that works for me from the command line.
hoe-debugging should set this by default for ruby 2.1 and 2.2.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.