tracepoint 1.2.0 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/.ruby ADDED
@@ -0,0 +1,45 @@
1
+ ---
2
+ source:
3
+ - meta
4
+ authors:
5
+ - name: Thomas Sawyer
6
+ email: transfire@gmail.com
7
+ copyrights:
8
+ - holder: Rubyworks, Thomas Sawyer
9
+ year: '2005'
10
+ license: BSD-2-Clause
11
+ replacements: []
12
+ alternatives: []
13
+ requirements:
14
+ - name: detroit
15
+ groups:
16
+ - build
17
+ development: true
18
+ - name: qed
19
+ groups:
20
+ - test
21
+ development: true
22
+ dependencies: []
23
+ conflicts: []
24
+ repositories:
25
+ - uri: git://github.com/rubyworks/tracepoint.git
26
+ scm: git
27
+ name: upstream
28
+ resources:
29
+ home: http://rubyworks.github.com/tracepoint
30
+ code: http://github.com/rubyworks/tracepoint
31
+ mail: http://groups.google.com/groups/rubyworks-mailinglist
32
+ extra: {}
33
+ load_path:
34
+ - lib
35
+ revision: 0
36
+ created: '2008-08-08'
37
+ summary: The perfect alternative to set_trace_func
38
+ title: TracePoint
39
+ version: 1.2.1
40
+ name: tracepoint
41
+ description: ! "A TracePoint is a Binding with the addition of event information.\nAmong
42
+ other things, it functions very well as the join-point for\nAOP. In practice it
43
+ provides a better alternative to using \nset_trace_func."
44
+ organization: RubyWorks
45
+ date: '2011-11-05'
@@ -0,0 +1,6 @@
1
+ --protected
2
+ --private
3
+ lib
4
+ -
5
+ [A-Z]*.*
6
+
@@ -0,0 +1,31 @@
1
+ = COPYRIGHT NOTICES
2
+
3
+ == TracePoint
4
+
5
+ Copyright:: (c) 2008 Thomas Sawyer, Rubyworks
6
+ License:: BSD-2-Clause
7
+ Website:: http://rubyworks.github.com/tracepoint
8
+
9
+ Copyright 2008 Thomas Sawyer. All rights reserved.
10
+
11
+ Redistribution and use in source and binary forms, with or without
12
+ modification, are permitted provided that the following conditions are met:
13
+
14
+ 1. Redistributions of source code must retain the above copyright notice,
15
+ this list of conditions and the following disclaimer.
16
+
17
+ 2. Redistributions in binary form must reproduce the above copyright
18
+ notice, this list of conditions and the following disclaimer in the
19
+ documentation and/or other materials provided with the distribution.
20
+
21
+ THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
22
+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
23
+ AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24
+ COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
26
+ NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
28
+ OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30
+ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
+
@@ -1,5 +1,21 @@
1
1
  = RELEASE HISTORY
2
2
 
3
+ == 1.2.1 / 2011-10-22
4
+
5
+ This release simply brings the project uptodate with the latest
6
+ build tools, and switches the license to BSD-2-Clause.
7
+
8
+ Also note, that Ruby 1.9 appears to have a bug (or two) in #set_trace_func,
9
+ in particular with an incorrect binding parameter. TracePoint still works,
10
+ but will not as useful as it should be until this issue is resolved.
11
+ (ref. http://redmine.ruby-lang.org/issues/5527).
12
+
13
+ Changes:
14
+
15
+ * Modernize build configuration.
16
+ * Switch to FreeBSD license.
17
+
18
+
3
19
  == 1.2.0 / 2010-08-05
4
20
 
5
21
  This release fix a rare bug where the traced event provides
@@ -1,25 +1,32 @@
1
1
  = TracePoint
2
2
 
3
- == RESOURCES
3
+ {Home}[http://rubyworks.github.com/tracepoint] |
4
+ {Code}[http://github.com/rubyworks/tracepoint] |
5
+ {Mail}[http://google.groups.com/group/rubyworks-mailinglist]
4
6
 
5
- * home: http://rubyworks.github.com/tracepoint
6
- * code: http://github.com/rubyworks/tracepoint
7
+ {<img src="http://travis-ci.org/rubyworks/tracepoint.png" />}[http://travis-ci.org/rubyworks/tracepoint]
7
8
 
8
9
 
9
- == DESCRIPTION
10
+ == Description
10
11
 
11
12
  TracePoint is a Binding with the addition of event information.
12
13
  In theory it would function very well as the join-point for AOP.
13
14
  In practice it provides a better approach to #set_trace_func.
14
15
 
16
+ IMPOTRANT! TracePoint does not *fully* work under Ruby 1.9.0-1.9.3,
17
+ not because there is anything wrong with TracePoint, but because
18
+ Ruby 1.9 has a bug in `#set_trace_func` in which the binding parameter
19
+ is incorrect.
15
20
 
16
- == FEATURES
17
21
 
18
- * More versitle than #set_trace_func.
19
- * Easy to set mutliple traces.
22
+ == Features
20
23
 
24
+ * More versatile than #set_trace_func.
25
+ * Easy to set multiple traces.
26
+ * Can activate and deactivate traces on the fly.
21
27
 
22
- == SYNOPSIS
28
+
29
+ == Synopsis
23
30
 
24
31
  Using TracePoint is simply a matter of setting the #trace procedure.
25
32
  For example to watch everything that happens during a Ruby process:
@@ -38,7 +45,7 @@ Produces:
38
45
  Fixnum + c-call false
39
46
  Fixnum + c-return false
40
47
 
41
- Tracing can be deactived and reactivated on the fly by calling #deactivate
48
+ Tracing can be deactivated and reactivated on the fly by calling #deactivate
42
49
  and #activate.
43
50
 
44
51
  To add additional trace procedures, simply call the #trace method again.
@@ -64,29 +71,22 @@ deactivate tracing.
64
71
  Please see the API documentation for more information.
65
72
 
66
73
 
67
- == INSTALLATION
74
+ == Install
68
75
 
69
76
  Follow the usual procedure for installing via RubyGems:
70
77
 
71
- $ sudo gem install tracepoint
78
+ $ gem install tracepoint
79
+
72
80
 
81
+ == Copyrights
73
82
 
74
- == LICENSE
83
+ (BSD-2-Clause License)
75
84
 
76
- (Apache 2.0 License)
85
+ Copyright (c) 2005,2010 Rubyworks, Thomas Sawyer
77
86
 
78
- Copyright (c) 2005,2010 Thomas Sawyer
87
+ TracePoint is distributable in accordance with the terms of the *FreeBSD* license.
79
88
 
80
- Licensed under the Apache License, Version 2.0 (the "License");
81
- you may not use any of the files packaged with this file
82
- except in compliance with this License. You may obtain a copy
83
- of the License at
89
+ See COPYING.rdoc for details.
84
90
 
85
- http://www.apache.org/licenses/LICENSE-2.0
86
91
 
87
- Unless required by applicable law or agreed to in writing, software
88
- distributed under the License is distributed on an "AS IS" BASIS,
89
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
90
- See the License for the specific language governing permissions and
91
- limitations under the License.
92
92
 
@@ -0,0 +1,34 @@
1
+ = TracePoint
2
+
3
+ To demonstrate TracePoint, we will simply have it feed all
4
+ event parameters into the log for a simple String call.
5
+
6
+ First we need to load the `tracepoint.rb` library.
7
+
8
+ require 'tracepoint'
9
+
10
+ Now we can setup the trace procedure.
11
+
12
+ trace_log = []
13
+
14
+ TracePoint.trace do |tp|
15
+ trace_log << [tp.self.class, tp.callee, tp.event, tp.return?, tp.back == tp.bind]
16
+ end
17
+
18
+ And then we can activate the trace, call our String method,
19
+ and deactivate the trace.
20
+
21
+ TracePoint.activate
22
+ " a ".strip
23
+ TracePoint.deactivate
24
+
25
+ We should now see in the log the set of events required to
26
+ perform the addition operation.
27
+
28
+ trace_log.assert.include? [String, :strip, 'c-call', false, false]
29
+ trace_log.assert.include? [String, :strip, 'c-return', false, false]
30
+
31
+ For reference, the other trace_log elements simply refer to the
32
+ QED run context.
33
+
34
+
@@ -30,8 +30,22 @@
30
30
 
31
31
  class TracePoint #< CodePoint
32
32
 
33
- # Load library metadata.
34
- require 'tracepoint/meta/data'
33
+ # Access to metadata.
34
+ def self.metadata
35
+ @metadata ||= (
36
+ require 'yaml'
37
+ YAML.load(File.new(File.dirname(__FILE__) + '/tracepoint.yml'))
38
+ )
39
+ end
40
+
41
+ # Access metadata as constants.
42
+ def self.const_missing(name)
43
+ name = name.to_s.downcase
44
+ metadata[name] || super(name)
45
+ end
46
+
47
+ # TODO: this is here only b/c of lookup bugs in Ruby 1.8.x.
48
+ VERSION = metadata['version']
35
49
 
36
50
  # -- class ---------------------
37
51
 
@@ -58,7 +72,7 @@ class TracePoint #< CodePoint
58
72
  @@active = true
59
73
  bb_stack = []
60
74
  fn = lambda do |e, f, l, m, b, k|
61
- unless k == TracePoint or (k == Kernel && m = :set_trace_func)
75
+ unless k == TracePoint or (k == Kernel && m == :set_trace_func)
62
76
  #(p e, f, l, m, b, k, @@bb_stack; puts "---") if $DEBUG
63
77
  if ['call','c-call','class'].include?(e)
64
78
  bb_stack << b
@@ -0,0 +1,45 @@
1
+ ---
2
+ source:
3
+ - meta
4
+ authors:
5
+ - name: Thomas Sawyer
6
+ email: transfire@gmail.com
7
+ copyrights:
8
+ - holder: Rubyworks, Thomas Sawyer
9
+ year: '2005'
10
+ license: BSD-2-Clause
11
+ replacements: []
12
+ alternatives: []
13
+ requirements:
14
+ - name: detroit
15
+ groups:
16
+ - build
17
+ development: true
18
+ - name: qed
19
+ groups:
20
+ - test
21
+ development: true
22
+ dependencies: []
23
+ conflicts: []
24
+ repositories:
25
+ - uri: git://github.com/rubyworks/tracepoint.git
26
+ scm: git
27
+ name: upstream
28
+ resources:
29
+ home: http://rubyworks.github.com/tracepoint
30
+ code: http://github.com/rubyworks/tracepoint
31
+ mail: http://groups.google.com/groups/rubyworks-mailinglist
32
+ extra: {}
33
+ load_path:
34
+ - lib
35
+ revision: 0
36
+ created: '2008-08-08'
37
+ summary: The perfect alternative to set_trace_func
38
+ title: TracePoint
39
+ version: 1.2.1
40
+ name: tracepoint
41
+ description: ! "A TracePoint is a Binding with the addition of event information.\nAmong
42
+ other things, it functions very well as the join-point for\nAOP. In practice it
43
+ provides a better alternative to using \nset_trace_func."
44
+ organization: RubyWorks
45
+ date: '2011-11-05'
@@ -0,0 +1,56 @@
1
+ if RUBY_VERSION < '1.9'
2
+
3
+ require 'tracepoint' unless defined?(TracePoint)
4
+
5
+ # This is backport of Ruby 1.9's Coverage library that can be used with
6
+ # Ruby 1.8 or older. It is not a 100% perfect drop-in, but in comes close.
7
+ #
8
+ # This biggest issue with it at this point is that it cannot exclude coverage
9
+ # of irrelevant files b/c $LOADED_FEATURES in Ruby 1.8 does not use absolute
10
+ # paths. Not sure how to work around this yet.
11
+ module Coverage
12
+
13
+ #
14
+ def self.start
15
+ reset
16
+
17
+ ignore = @ignore
18
+ result = @result
19
+
20
+ TracePoint.trace do |tp|
21
+ case tp.event
22
+ when 'line', 'class', 'end'
23
+ unless ignore.include?(tp.file)
24
+ file = File.expand_path(tp.file)
25
+ result[file][tp.line-1] ||= 0
26
+ result[file][tp.line-1] += 1
27
+ end
28
+ end
29
+ end
30
+
31
+ TracePoint.activate
32
+ end
33
+
34
+ #
35
+ def self.result
36
+ @result
37
+ end
38
+
39
+ #
40
+ def self.reset
41
+ @ignore = $LOADED_FEATURES.dup
42
+ @result = Hash.new{ |h,k| h[k]=[] }
43
+ end
44
+
45
+ #
46
+ def self.stop
47
+ TracePoint.deactivate
48
+ end
49
+
50
+ end
51
+
52
+ else
53
+
54
+ require 'coverage'
55
+
56
+ end
@@ -1,9 +1,9 @@
1
1
  = TracePoint
2
2
 
3
3
  To demonstrate TracePoint, we will simply have it feed all
4
- event parameters into the log for a simple arethmetic call.
4
+ event parameters into the log for a simple String call.
5
5
 
6
- First we need to load the tracepoint.rb library.
6
+ First we need to load the `tracepoint.rb` library.
7
7
 
8
8
  require 'tracepoint'
9
9
 
@@ -15,18 +15,19 @@ Now we can setup the trace procedure.
15
15
  trace_log << [tp.self.class, tp.callee, tp.event, tp.return?, tp.back == tp.bind]
16
16
  end
17
17
 
18
- And then we can activate the trace, call our arethmetic function,
18
+ And then we can activate the trace, call our String method,
19
19
  and deactivate the trace.
20
20
 
21
21
  TracePoint.activate
22
- 1 + 1
22
+ " a ".strip
23
23
  TracePoint.deactivate
24
24
 
25
25
  We should now see in the log the set of events required to
26
26
  perform the addition operation.
27
27
 
28
- trace_log[1].assert == [Fixnum, :'+', 'c-call', false, false]
29
- trace_log[2].assert == [Fixnum, :'+', 'c-return', false, false]
28
+ trace_log.assert.include? [String, :strip, 'c-call', false, false]
29
+ trace_log.assert.include? [String, :strip, 'c-return', false, false]
30
30
 
31
- For reference, trace_log[0] and trace_log[3] simply refer to the
31
+ For reference, the other trace_log elements simply refer to the
32
32
  QED run context.
33
+
metadata CHANGED
@@ -1,80 +1,84 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: tracepoint
3
- version: !ruby/object:Gem::Version
4
- hash: 31
5
- prerelease: false
6
- segments:
7
- - 1
8
- - 2
9
- - 0
10
- version: 1.2.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.1
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Thomas Sawyer
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2010-08-05 00:00:00 -04:00
19
- default_executable:
20
- dependencies: []
21
-
22
- description: A TracePoint is a Binding with the addition of event information. Among other things, it functions very well as the join-point for AOP. In practice it provides a better alternative to using
23
- email: transfire@gmail.com
12
+ date: 2011-11-05 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: detroit
16
+ requirement: &27797520 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *27797520
25
+ - !ruby/object:Gem::Dependency
26
+ name: qed
27
+ requirement: &27796980 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *27796980
36
+ description: ! "A TracePoint is a Binding with the addition of event information.\nAmong
37
+ other things, it functions very well as the join-point for\nAOP. In practice it
38
+ provides a better alternative to using \nset_trace_func."
39
+ email:
40
+ - transfire@gmail.com
24
41
  executables: []
25
-
26
42
  extensions: []
27
-
28
- extra_rdoc_files:
43
+ extra_rdoc_files:
44
+ - HISTORY.rdoc
45
+ - SPEC.rdoc
29
46
  - README.rdoc
30
- files:
31
- - lib/tracepoint/meta/data.rb
32
- - lib/tracepoint/meta/package.yml
33
- - lib/tracepoint/meta/profile.yml
47
+ - COPYING.rdoc
48
+ files:
49
+ - .ruby
50
+ - .yardopts
51
+ - lib/tracepoint/coverage.rb
34
52
  - lib/tracepoint.rb
35
- - meta/data.rb
36
- - meta/package.yml
37
- - meta/profile.yml
38
- - test/demos/trace.qed
53
+ - lib/tracepoint.yml
54
+ - spec/trace.rdoc
39
55
  - HISTORY.rdoc
40
- - LICENSE
56
+ - SPEC.rdoc
41
57
  - README.rdoc
42
- has_rdoc: true
58
+ - COPYING.rdoc
43
59
  homepage: http://rubyworks.github.com/tracepoint
44
- licenses:
45
- - MIT
60
+ licenses:
61
+ - BSD-2-Clause
46
62
  post_install_message:
47
- rdoc_options:
48
- - --title
49
- - TracePoint API
50
- - --main
51
- - README.rdoc
52
- require_paths:
63
+ rdoc_options: []
64
+ require_paths:
53
65
  - lib
54
- required_ruby_version: !ruby/object:Gem::Requirement
66
+ required_ruby_version: !ruby/object:Gem::Requirement
55
67
  none: false
56
- requirements:
57
- - - ">="
58
- - !ruby/object:Gem::Version
59
- hash: 3
60
- segments:
61
- - 0
62
- version: "0"
63
- required_rubygems_version: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - ! '>='
70
+ - !ruby/object:Gem::Version
71
+ version: '0'
72
+ required_rubygems_version: !ruby/object:Gem::Requirement
64
73
  none: false
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- hash: 3
69
- segments:
70
- - 0
71
- version: "0"
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
72
78
  requirements: []
73
-
74
- rubyforge_project: tracepoint
75
- rubygems_version: 1.3.7
79
+ rubyforge_project:
80
+ rubygems_version: 1.8.10
76
81
  signing_key:
77
82
  specification_version: 3
78
- summary: "The perfect alternative to #set_trace_func"
83
+ summary: The perfect alternative to set_trace_func
79
84
  test_files: []
80
-
data/LICENSE DELETED
@@ -1,205 +0,0 @@
1
- .
2
-
3
- Apache License
4
- Version 2.0, January 2004
5
- http://www.apache.org/licenses/
6
-
7
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
8
-
9
- 1. Definitions.
10
-
11
- "License" shall mean the terms and conditions for use, reproduction,
12
- and distribution as defined by Sections 1 through 9 of this document.
13
-
14
- "Licensor" shall mean the copyright owner or entity authorized by
15
- the copyright owner that is granting the License.
16
-
17
- "Legal Entity" shall mean the union of the acting entity and all
18
- other entities that control, are controlled by, or are under common
19
- control with that entity. For the purposes of this definition,
20
- "control" means (i) the power, direct or indirect, to cause the
21
- direction or management of such entity, whether by contract or
22
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
23
- outstanding shares, or (iii) beneficial ownership of such entity.
24
-
25
- "You" (or "Your") shall mean an individual or Legal Entity
26
- exercising permissions granted by this License.
27
-
28
- "Source" form shall mean the preferred form for making modifications,
29
- including but not limited to software source code, documentation
30
- source, and configuration files.
31
-
32
- "Object" form shall mean any form resulting from mechanical
33
- transformation or translation of a Source form, including but
34
- not limited to compiled object code, generated documentation,
35
- and conversions to other media types.
36
-
37
- "Work" shall mean the work of authorship, whether in Source or
38
- Object form, made available under the License, as indicated by a
39
- copyright notice that is included in or attached to the work
40
- (an example is provided in the Appendix below).
41
-
42
- "Derivative Works" shall mean any work, whether in Source or Object
43
- form, that is based on (or derived from) the Work and for which the
44
- editorial revisions, annotations, elaborations, or other modifications
45
- represent, as a whole, an original work of authorship. For the purposes
46
- of this License, Derivative Works shall not include works that remain
47
- separable from, or merely link (or bind by name) to the interfaces of,
48
- the Work and Derivative Works thereof.
49
-
50
- "Contribution" shall mean any work of authorship, including
51
- the original version of the Work and any modifications or additions
52
- to that Work or Derivative Works thereof, that is intentionally
53
- submitted to Licensor for inclusion in the Work by the copyright owner
54
- or by an individual or Legal Entity authorized to submit on behalf of
55
- the copyright owner. For the purposes of this definition, "submitted"
56
- means any form of electronic, verbal, or written communication sent
57
- to the Licensor or its representatives, including but not limited to
58
- communication on electronic mailing lists, source code control systems,
59
- and issue tracking systems that are managed by, or on behalf of, the
60
- Licensor for the purpose of discussing and improving the Work, but
61
- excluding communication that is conspicuously marked or otherwise
62
- designated in writing by the copyright owner as "Not a Contribution."
63
-
64
- "Contributor" shall mean Licensor and any individual or Legal Entity
65
- on behalf of whom a Contribution has been received by Licensor and
66
- subsequently incorporated within the Work.
67
-
68
- 2. Grant of Copyright License. Subject to the terms and conditions of
69
- this License, each Contributor hereby grants to You a perpetual,
70
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
71
- copyright license to reproduce, prepare Derivative Works of,
72
- publicly display, publicly perform, sublicense, and distribute the
73
- Work and such Derivative Works in Source or Object form.
74
-
75
- 3. Grant of Patent License. Subject to the terms and conditions of
76
- this License, each Contributor hereby grants to You a perpetual,
77
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
78
- (except as stated in this section) patent license to make, have made,
79
- use, offer to sell, sell, import, and otherwise transfer the Work,
80
- where such license applies only to those patent claims licensable
81
- by such Contributor that are necessarily infringed by their
82
- Contribution(s) alone or by combination of their Contribution(s)
83
- with the Work to which such Contribution(s) was submitted. If You
84
- institute patent litigation against any entity (including a
85
- cross-claim or counterclaim in a lawsuit) alleging that the Work
86
- or a Contribution incorporated within the Work constitutes direct
87
- or contributory patent infringement, then any patent licenses
88
- granted to You under this License for that Work shall terminate
89
- as of the date such litigation is filed.
90
-
91
- 4. Redistribution. You may reproduce and distribute copies of the
92
- Work or Derivative Works thereof in any medium, with or without
93
- modifications, and in Source or Object form, provided that You
94
- meet the following conditions:
95
-
96
- (a) You must give any other recipients of the Work or
97
- Derivative Works a copy of this License; and
98
-
99
- (b) You must cause any modified files to carry prominent notices
100
- stating that You changed the files; and
101
-
102
- (c) You must retain, in the Source form of any Derivative Works
103
- that You distribute, all copyright, patent, trademark, and
104
- attribution notices from the Source form of the Work,
105
- excluding those notices that do not pertain to any part of
106
- the Derivative Works; and
107
-
108
- (d) If the Work includes a "NOTICE" text file as part of its
109
- distribution, then any Derivative Works that You distribute must
110
- include a readable copy of the attribution notices contained
111
- within such NOTICE file, excluding those notices that do not
112
- pertain to any part of the Derivative Works, in at least one
113
- of the following places: within a NOTICE text file distributed
114
- as part of the Derivative Works; within the Source form or
115
- documentation, if provided along with the Derivative Works; or,
116
- within a display generated by the Derivative Works, if and
117
- wherever such third-party notices normally appear. The contents
118
- of the NOTICE file are for informational purposes only and
119
- do not modify the License. You may add Your own attribution
120
- notices within Derivative Works that You distribute, alongside
121
- or as an addendum to the NOTICE text from the Work, provided
122
- that such additional attribution notices cannot be construed
123
- as modifying the License.
124
-
125
- You may add Your own copyright statement to Your modifications and
126
- may provide additional or different license terms and conditions
127
- for use, reproduction, or distribution of Your modifications, or
128
- for any such Derivative Works as a whole, provided Your use,
129
- reproduction, and distribution of the Work otherwise complies with
130
- the conditions stated in this License.
131
-
132
- 5. Submission of Contributions. Unless You explicitly state otherwise,
133
- any Contribution intentionally submitted for inclusion in the Work
134
- by You to the Licensor shall be under the terms and conditions of
135
- this License, without any additional terms or conditions.
136
- Notwithstanding the above, nothing herein shall supersede or modify
137
- the terms of any separate license agreement you may have executed
138
- with Licensor regarding such Contributions.
139
-
140
- 6. Trademarks. This License does not grant permission to use the trade
141
- names, trademarks, service marks, or product names of the Licensor,
142
- except as required for reasonable and customary use in describing the
143
- origin of the Work and reproducing the content of the NOTICE file.
144
-
145
- 7. Disclaimer of Warranty. Unless required by applicable law or
146
- agreed to in writing, Licensor provides the Work (and each
147
- Contributor provides its Contributions) on an "AS IS" BASIS,
148
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
149
- implied, including, without limitation, any warranties or conditions
150
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
151
- PARTICULAR PURPOSE. You are solely responsible for determining the
152
- appropriateness of using or redistributing the Work and assume any
153
- risks associated with Your exercise of permissions under this License.
154
-
155
- 8. Limitation of Liability. In no event and under no legal theory,
156
- whether in tort (including negligence), contract, or otherwise,
157
- unless required by applicable law (such as deliberate and grossly
158
- negligent acts) or agreed to in writing, shall any Contributor be
159
- liable to You for damages, including any direct, indirect, special,
160
- incidental, or consequential damages of any character arising as a
161
- result of this License or out of the use or inability to use the
162
- Work (including but not limited to damages for loss of goodwill,
163
- work stoppage, computer failure or malfunction, or any and all
164
- other commercial damages or losses), even if such Contributor
165
- has been advised of the possibility of such damages.
166
-
167
- 9. Accepting Warranty or Additional Liability. While redistributing
168
- the Work or Derivative Works thereof, You may choose to offer,
169
- and charge a fee for, acceptance of support, warranty, indemnity,
170
- or other liability obligations and/or rights consistent with this
171
- License. However, in accepting such obligations, You may act only
172
- on Your own behalf and on Your sole responsibility, not on behalf
173
- of any other Contributor, and only if You agree to indemnify,
174
- defend, and hold each Contributor harmless for any liability
175
- incurred by, or claims asserted against, such Contributor by reason
176
- of your accepting any such warranty or additional liability.
177
-
178
- END OF TERMS AND CONDITIONS
179
-
180
- APPENDIX: How to apply the Apache License to your work.
181
-
182
- To apply the Apache License to your work, attach the following
183
- boilerplate notice, with the fields enclosed by brackets "[]"
184
- replaced with your own identifying information. (Don't include
185
- the brackets!) The text should be enclosed in the appropriate
186
- comment syntax for the file format. We also recommend that a
187
- file or class name and description of purpose be included on the
188
- same "printed page" as the copyright notice for easier
189
- identification within third-party archives.
190
-
191
- Copyright [yyyy] [name of copyright owner]
192
-
193
- Licensed under the Apache License, Version 2.0 (the "License");
194
- you may not use this file except in compliance with the License.
195
- You may obtain a copy of the License at
196
-
197
- http://www.apache.org/licenses/LICENSE-2.0
198
-
199
- Unless required by applicable law or agreed to in writing, software
200
- distributed under the License is distributed on an "AS IS" BASIS,
201
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
202
- See the License for the specific language governing permissions and
203
- limitations under the License.
204
-
205
-
@@ -1,20 +0,0 @@
1
- Object.__send__(:remove_const, :VERSION) if defined?(VERSION) # because Ruby 1.8+ gets in the way
2
-
3
- class TracePoint
4
-
5
- #
6
- def self.__DIR__
7
- File.dirname(__FILE__)
8
- end
9
-
10
- #
11
- def self.const_missing(name)
12
- name = name.to_s.downcase
13
- require 'yaml' unless defined?(::YAML)
14
- @package ||= YAML.load(File.new(__DIR__ + '/package.yml'))
15
- @profile ||= YAML.load(File.new(__DIR__ + '/profile.yml'))
16
- @package[name] || @profile[name]
17
- end
18
-
19
- end
20
-
@@ -1,5 +0,0 @@
1
- ---
2
- name : tracepoint
3
- version : 1.2.0
4
- date : 2009-08-05
5
-
@@ -1,21 +0,0 @@
1
- ---
2
- title : TracePoint
3
- suite : rubyworks
4
- summary: "The perfect alternative to #set_trace_func"
5
- contact: Thomas Sawyer <transfire@gmail.com>
6
- authors: Thomas Sawyer
7
- created: 2008-08-08 23:09:48 -0400
8
- license: MIT
9
-
10
- copyright: (c) 2005 Thomas Sawyer
11
-
12
- description:
13
- A TracePoint is a Binding with the addition of event information.
14
- Among other things, it functions very well as the join-point for AOP.
15
- In practice it provides a better alternative to using #set_trace_func.
16
-
17
- resources:
18
- homepage : http://rubyworks.github.com/tracepoint
19
- development : http://github.com/rubyworks/tracepoint
20
- repository : git://github.com/rubyworks/tracepoint.git
21
-
@@ -1,20 +0,0 @@
1
- Object.__send__(:remove_const, :VERSION) if defined?(VERSION) # because Ruby 1.8+ gets in the way
2
-
3
- class TracePoint
4
-
5
- #
6
- def self.__DIR__
7
- File.dirname(__FILE__)
8
- end
9
-
10
- #
11
- def self.const_missing(name)
12
- name = name.to_s.downcase
13
- require 'yaml' unless defined?(::YAML)
14
- @package ||= YAML.load(File.new(__DIR__ + '/package.yml'))
15
- @profile ||= YAML.load(File.new(__DIR__ + '/profile.yml'))
16
- @package[name] || @profile[name]
17
- end
18
-
19
- end
20
-
@@ -1,5 +0,0 @@
1
- ---
2
- name : tracepoint
3
- version : 1.2.0
4
- date : 2009-08-05
5
-
@@ -1,21 +0,0 @@
1
- ---
2
- title : TracePoint
3
- suite : rubyworks
4
- summary: "The perfect alternative to #set_trace_func"
5
- contact: Thomas Sawyer <transfire@gmail.com>
6
- authors: Thomas Sawyer
7
- created: 2008-08-08 23:09:48 -0400
8
- license: MIT
9
-
10
- copyright: (c) 2005 Thomas Sawyer
11
-
12
- description:
13
- A TracePoint is a Binding with the addition of event information.
14
- Among other things, it functions very well as the join-point for AOP.
15
- In practice it provides a better alternative to using #set_trace_func.
16
-
17
- resources:
18
- homepage : http://rubyworks.github.com/tracepoint
19
- development : http://github.com/rubyworks/tracepoint
20
- repository : git://github.com/rubyworks/tracepoint.git
21
-