rblineprof 0.3.5 → 0.3.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/Gemfile.lock +5 -1
- data/ext/rblineprof.c +10 -3
- data/rblineprof.gemspec +2 -1
- data/test/test_lineprof.rb +14 -0
- metadata +22 -9
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
NzAxMzljM2U4ODk4NzYwODY1NWVhMzIyNDlhYzliNDU4ODA0YWE1Yw==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: c7965e23ab44d6873376d2cdb49393fe4c777ae2
|
4
|
+
data.tar.gz: 4f28d1eda92a257e34f80e7836b37305ad666c71
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
ZTllOTQ3MzZjZmJhYjllYWM1ZGM5ZjdjOWViZmQ0YTIxODViMmUxOTUxNzkw
|
11
|
-
NjcxMjc3ZmEyNDcwNTM0NTkyNGI5MmFiZmFkZTJiMTNiNjg3OGI=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NDA1ZGU2ZWVjMTMwNDM3NWU2NDJjZWUwYjhiMjJiZGQ5ZDcwNzM4MjVlMmY3
|
14
|
-
YTRlMGI2ODllZjgyNGVlYjNhYzcwNTRmY2YzNGNkN2Q2M2VlMGFhODA2YzU5
|
15
|
-
MmQ2MDY3MTBjNzI3MzIxNmM3NDZiYzZkNzgwYThlY2Q0MWY5MTM=
|
6
|
+
metadata.gz: 22fff0ea33e941fdb29f554e6ad3ab45a44a562e41687bef3a7f43c313fcfabcc1f8cd8881c17da0b543d32ff3f76648ec444a13b0e1a8d553c49ec5b8b5587e
|
7
|
+
data.tar.gz: 6d82e84091eeaef23cadb869f7f6d57f75460d202d169a997ee74a7ee756b0e29f0f727f84f0d7d85964e860a051e55a78a8a9bb59f52ee92235074033f2e398
|
data/Gemfile.lock
CHANGED
@@ -1,16 +1,20 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
rblineprof (0.3.
|
4
|
+
rblineprof (0.3.5)
|
5
5
|
debugger-ruby_core_source (~> 1.3)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
10
|
debugger-ruby_core_source (1.3.1)
|
11
|
+
rake (10.1.1)
|
12
|
+
rake-compiler (0.9.2)
|
13
|
+
rake
|
11
14
|
|
12
15
|
PLATFORMS
|
13
16
|
ruby
|
14
17
|
|
15
18
|
DEPENDENCIES
|
19
|
+
rake-compiler
|
16
20
|
rblineprof!
|
data/ext/rblineprof.c
CHANGED
@@ -352,9 +352,16 @@ profiler_hook(rb_event_flag_t event, NODE *node, VALUE self, ID mid, VALUE klass
|
|
352
352
|
* (as opposed to node, which points to the callee method being invoked)
|
353
353
|
*/
|
354
354
|
#if defined(HAVE_RB_PROFILE_FRAMES)
|
355
|
-
|
356
|
-
VALUE
|
357
|
-
|
355
|
+
VALUE path, iseq;
|
356
|
+
VALUE iseqs[2];
|
357
|
+
int lines[2];
|
358
|
+
int i = 0, l, n = rb_profile_frames(0, 2, iseqs, lines);
|
359
|
+
|
360
|
+
if (mid == 0 && n == 2) /* skip empty frame on method definition line */
|
361
|
+
i = 1;
|
362
|
+
|
363
|
+
l = lines[i];
|
364
|
+
iseq = iseqs[i];
|
358
365
|
|
359
366
|
/* TODO: use fstring VALUE directly */
|
360
367
|
path = rb_profile_frame_absolute_path(iseq);
|
data/rblineprof.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'rblineprof'
|
3
|
-
s.version = '0.3.
|
3
|
+
s.version = '0.3.6'
|
4
4
|
s.homepage = 'http://github.com/tmm1/rblineprof'
|
5
5
|
|
6
6
|
s.authors = 'Aman Gupta'
|
@@ -15,4 +15,5 @@ Gem::Specification.new do |s|
|
|
15
15
|
s.license = 'MIT'
|
16
16
|
|
17
17
|
s.add_dependency 'debugger-ruby_core_source', '~> 1.3'
|
18
|
+
s.add_development_dependency 'rake-compiler'
|
18
19
|
end
|
data/test/test_lineprof.rb
CHANGED
@@ -30,4 +30,18 @@ class LineProfTest < Test::Unit::TestCase
|
|
30
30
|
line = profile[__FILE__][__LINE__-3]
|
31
31
|
assert_equal 100, line[3]
|
32
32
|
end
|
33
|
+
|
34
|
+
def test_method
|
35
|
+
profile = lineprof(/./) do
|
36
|
+
100.times{ helper_method }
|
37
|
+
end
|
38
|
+
|
39
|
+
m = method(:helper_method)
|
40
|
+
line = profile[__FILE__][m.source_location.last]
|
41
|
+
assert_equal 0, line[0]
|
42
|
+
end
|
43
|
+
|
44
|
+
def helper_method
|
45
|
+
sleep 0.001
|
46
|
+
end
|
33
47
|
end
|
metadata
CHANGED
@@ -1,29 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rblineprof
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aman Gupta
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-01-
|
11
|
+
date: 2014-01-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: debugger-ruby_core_source
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.3'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake-compiler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
27
41
|
description: rblineprof shows you lines of code that are slow.
|
28
42
|
email: aman@tmm1.net
|
29
43
|
executables: []
|
@@ -31,7 +45,7 @@ extensions:
|
|
31
45
|
- ext/extconf.rb
|
32
46
|
extra_rdoc_files: []
|
33
47
|
files:
|
34
|
-
- .gitignore
|
48
|
+
- ".gitignore"
|
35
49
|
- Gemfile
|
36
50
|
- Gemfile.lock
|
37
51
|
- README.md
|
@@ -52,19 +66,18 @@ require_paths:
|
|
52
66
|
- lib
|
53
67
|
required_ruby_version: !ruby/object:Gem::Requirement
|
54
68
|
requirements:
|
55
|
-
- -
|
69
|
+
- - ">="
|
56
70
|
- !ruby/object:Gem::Version
|
57
71
|
version: '0'
|
58
72
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
73
|
requirements:
|
60
|
-
- -
|
74
|
+
- - ">="
|
61
75
|
- !ruby/object:Gem::Version
|
62
76
|
version: '0'
|
63
77
|
requirements: []
|
64
78
|
rubyforge_project:
|
65
|
-
rubygems_version: 2.
|
79
|
+
rubygems_version: 2.2.0
|
66
80
|
signing_key:
|
67
81
|
specification_version: 4
|
68
82
|
summary: line-profiler for ruby
|
69
83
|
test_files: []
|
70
|
-
has_rdoc:
|