ruby-prof 1.4.5-x64-mingw-ucrt → 1.5.0-x64-mingw-ucrt
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES +6 -0
- data/Rakefile +1 -1
- data/ext/ruby_prof/rp_allocation.c +4 -4
- data/ext/ruby_prof/rp_call_tree.c +126 -36
- data/ext/ruby_prof/rp_call_tree.h +2 -1
- data/ext/ruby_prof/rp_call_trees.c +15 -7
- data/ext/ruby_prof/rp_measurement.c +139 -19
- data/ext/ruby_prof/rp_measurement.h +3 -0
- data/ext/ruby_prof/rp_method.c +58 -6
- data/ext/ruby_prof/rp_method.h +1 -1
- data/ext/ruby_prof/rp_profile.c +36 -3
- data/ext/ruby_prof/rp_thread.c +61 -13
- data/ext/ruby_prof/rp_thread.h +1 -1
- data/ext/ruby_prof/ruby_prof.c +0 -2
- data/ext/ruby_prof/ruby_prof.h +8 -0
- data/ext/ruby_prof/vc/ruby_prof.vcxproj +4 -6
- data/lib/3.1/ruby_prof.so +0 -0
- data/lib/3.2/ruby_prof.so +0 -0
- data/lib/ruby-prof/method_info.rb +8 -1
- data/lib/ruby-prof/printers/call_tree_printer.rb +0 -2
- data/lib/ruby-prof/profile.rb +34 -1
- data/lib/ruby-prof/version.rb +1 -1
- data/test/call_tree_builder.rb +126 -0
- data/test/call_tree_test.rb +197 -0
- data/test/call_trees_test.rb +4 -4
- data/test/fiber_test.rb +123 -1
- data/test/gc_test.rb +9 -7
- data/test/line_number_test.rb +36 -60
- data/test/measurement_test.rb +82 -0
- data/test/method_info_test.rb +95 -0
- data/test/profile_test.rb +85 -0
- data/test/recursive_test.rb +1 -1
- data/test/scheduler.rb +354 -0
- data/test/thread_test.rb +28 -2
- metadata +9 -6
- data/ext/ruby_prof/rp_aggregate_call_tree.c +0 -59
- data/ext/ruby_prof/rp_aggregate_call_tree.h +0 -13
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-prof
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: x64-mingw-ucrt
|
6
6
|
authors:
|
7
7
|
- Shugo Maeda, Charlie Savage, Roger Pack, Stefan Kaes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|
@@ -59,8 +59,6 @@ files:
|
|
59
59
|
- bin/ruby-prof
|
60
60
|
- bin/ruby-prof-check-trace
|
61
61
|
- ext/ruby_prof/extconf.rb
|
62
|
-
- ext/ruby_prof/rp_aggregate_call_tree.c
|
63
|
-
- ext/ruby_prof/rp_aggregate_call_tree.h
|
64
62
|
- ext/ruby_prof/rp_allocation.c
|
65
63
|
- ext/ruby_prof/rp_allocation.h
|
66
64
|
- ext/ruby_prof/rp_call_tree.c
|
@@ -116,6 +114,8 @@ files:
|
|
116
114
|
- test/abstract_printer_test.rb
|
117
115
|
- test/alias_test.rb
|
118
116
|
- test/basic_test.rb
|
117
|
+
- test/call_tree_builder.rb
|
118
|
+
- test/call_tree_test.rb
|
119
119
|
- test/call_tree_visitor_test.rb
|
120
120
|
- test/call_trees_test.rb
|
121
121
|
- test/duplicate_names_test.rb
|
@@ -135,6 +135,8 @@ files:
|
|
135
135
|
- test/measure_process_time_test.rb
|
136
136
|
- test/measure_times.rb
|
137
137
|
- test/measure_wall_time_test.rb
|
138
|
+
- test/measurement_test.rb
|
139
|
+
- test/method_info_test.rb
|
138
140
|
- test/multi_printer_test.rb
|
139
141
|
- test/no_method_class_test.rb
|
140
142
|
- test/pause_resume_test.rb
|
@@ -150,6 +152,7 @@ files:
|
|
150
152
|
- test/profile_test.rb
|
151
153
|
- test/rack_test.rb
|
152
154
|
- test/recursive_test.rb
|
155
|
+
- test/scheduler.rb
|
153
156
|
- test/singleton_test.rb
|
154
157
|
- test/stack_printer_test.rb
|
155
158
|
- test/start_stop_test.rb
|
@@ -164,7 +167,7 @@ metadata:
|
|
164
167
|
bug_tracker_uri: https://github.com/ruby-prof/ruby-prof/issues
|
165
168
|
changelog_uri: https://github.com/ruby-prof/ruby-prof/blob/master/CHANGES
|
166
169
|
documentation_uri: https://ruby-prof.github.io/
|
167
|
-
source_code_uri: https://github.com/ruby-prof/ruby-prof/tree/v1.
|
170
|
+
source_code_uri: https://github.com/ruby-prof/ruby-prof/tree/v1.5.0
|
168
171
|
post_install_message:
|
169
172
|
rdoc_options: []
|
170
173
|
require_paths:
|
@@ -180,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
180
183
|
- !ruby/object:Gem::Version
|
181
184
|
version: '0'
|
182
185
|
requirements: []
|
183
|
-
rubygems_version: 3.4.
|
186
|
+
rubygems_version: 3.4.6
|
184
187
|
signing_key:
|
185
188
|
specification_version: 4
|
186
189
|
summary: Fast Ruby profiler
|
@@ -1,59 +0,0 @@
|
|
1
|
-
/* Copyright (C) 2005-2019 Shugo Maeda <shugo@ruby-lang.org> and Charlie Savage <cfis@savagexi.com>
|
2
|
-
Please see the LICENSE file for copyright and distribution information */
|
3
|
-
|
4
|
-
#include "rp_aggregate_call_tree.h"
|
5
|
-
|
6
|
-
VALUE cRpAggregateCallTree;
|
7
|
-
|
8
|
-
void prof_aggregate_call_tree_mark(void* data)
|
9
|
-
{
|
10
|
-
prof_call_tree_t* call_tree = (prof_call_tree_t*)data;
|
11
|
-
|
12
|
-
if (call_tree->object != Qnil)
|
13
|
-
rb_gc_mark(call_tree->object);
|
14
|
-
|
15
|
-
if (call_tree->source_file != Qnil)
|
16
|
-
rb_gc_mark(call_tree->source_file);
|
17
|
-
|
18
|
-
prof_measurement_mark(call_tree->measurement);
|
19
|
-
}
|
20
|
-
|
21
|
-
static void prof_aggregate_call_tree_ruby_gc_free(void* data)
|
22
|
-
{
|
23
|
-
prof_call_tree_t* call_tree = (prof_call_tree_t*)data;
|
24
|
-
prof_call_tree_free(call_tree);
|
25
|
-
}
|
26
|
-
|
27
|
-
size_t prof_aggregate_call_tree_size(const void* data)
|
28
|
-
{
|
29
|
-
return sizeof(prof_call_tree_t);
|
30
|
-
}
|
31
|
-
|
32
|
-
static const rb_data_type_t aggregate_call_tree_type =
|
33
|
-
{
|
34
|
-
.wrap_struct_name = "Aggregate_CallTree",
|
35
|
-
.function =
|
36
|
-
{
|
37
|
-
.dmark = prof_aggregate_call_tree_mark,
|
38
|
-
.dfree = prof_aggregate_call_tree_ruby_gc_free,
|
39
|
-
.dsize = prof_aggregate_call_tree_size,
|
40
|
-
},
|
41
|
-
.data = NULL,
|
42
|
-
.flags = RUBY_TYPED_FREE_IMMEDIATELY
|
43
|
-
};
|
44
|
-
|
45
|
-
VALUE prof_aggregate_call_tree_wrap(prof_call_tree_t* call_tree)
|
46
|
-
{
|
47
|
-
if (call_tree->object == Qnil)
|
48
|
-
{
|
49
|
-
call_tree->object = TypedData_Wrap_Struct(cRpAggregateCallTree, &aggregate_call_tree_type, call_tree);
|
50
|
-
}
|
51
|
-
return call_tree->object;
|
52
|
-
}
|
53
|
-
|
54
|
-
void rp_init_aggregate_call_tree()
|
55
|
-
{
|
56
|
-
// AggregateCallTree
|
57
|
-
cRpAggregateCallTree = rb_define_class_under(mProf, "AggregateCallTree", cRpCallTree);
|
58
|
-
rb_undef_method(CLASS_OF(cRpAggregateCallTree), "new");
|
59
|
-
}
|
@@ -1,13 +0,0 @@
|
|
1
|
-
/* Copyright (C) 2005-2019 Shugo Maeda <shugo@ruby-lang.org> and Charlie Savage <cfis@savagexi.com>
|
2
|
-
Please see the LICENSE file for copyright and distribution information */
|
3
|
-
|
4
|
-
#ifndef __RP_AGGREGATE_CALL_TREE_H__
|
5
|
-
#define __RP_AGGREGATE_CALL_TREE_H__
|
6
|
-
|
7
|
-
#include "ruby_prof.h"
|
8
|
-
#include "rp_call_tree.h"
|
9
|
-
|
10
|
-
void rp_init_aggregate_call_tree(void);
|
11
|
-
VALUE prof_aggregate_call_tree_wrap(prof_call_tree_t* call_tree);
|
12
|
-
|
13
|
-
#endif //__RP_AGGREGATE_CALL_TREE_H__
|