break 0.30.0 → 0.40.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9443110f09e59653a1336608fa1de1d3bc1e1a108a31bb3e6216443d44cc96cb
4
- data.tar.gz: a7e3b2f728b0537bb878ee0d0db4d4235906c32806f9d84187e2a6254d91591e
3
+ metadata.gz: fdf6c48bd31f4c1f5429be6e033e16c6a4b8f00338f4b7e06b0b4dfa667bb8fd
4
+ data.tar.gz: 251bf10ffd1cf68afcd65563b0217c92fb19993eb97c0a7d27c5b17bdc9aba43
5
5
  SHA512:
6
- metadata.gz: ad6320a59b310ced431065562f8cd693f40beeca35e729bd15cb8eaae425ae2e8d499f6afa4428ae5cf5f0d14b19f1723dfbc0f783ffe378be3a28574373ce8b
7
- data.tar.gz: 7950267f77100f32d0d168e0d773bbd1bc2c461cd76fe3a61d0a3b2cd862fabadeb77ce09d4dbb864b89b2fea55fef99e40633df67ee87140de75466768dacd4
6
+ metadata.gz: f3b7249a8df78892931d60a88198b577185bce8937500c0e90d77104489e915b78bfc9650eb961394c478e60c62643adb496f9106557cac2f751a152ef818de5
7
+ data.tar.gz: 28fad7cbe70a6eb09094761cc776889b9243cb694f04c422d2abe946d8e575ace9dae0edea1635648f6904328423eed103058ae0224340d0fe6ac97f97e9d6b7
data/CHANGELOG.md CHANGED
@@ -1,6 +1,15 @@
1
1
  # Changelog
2
2
 
3
- ## Unreleased
3
+ ## 0.40.0 (2022-05-06)
4
+ ### Changed
5
+ - Remote integration (`pry-remote`) needs to be manually activated by requiring `break/remote` ([@gsamokovarov][])
6
+
7
+ ## 0.30.0 (2021-06-20)
8
+ ### Added
9
+ - Officially Ruby 3.0 support. ([@gsamokovarov][])
10
+ ### Fixed
11
+ - Fix broken `next` command for Ruby 2.7+. ([@gsamokovarov][])
12
+ - Fix circular require for `pry` integrations. ([@gsamokovarov][])
4
13
 
5
14
  ## 0.21.0 (2020-08-19)
6
15
  ### Fixed
data/README.md CHANGED
@@ -49,6 +49,18 @@ If you need to debug your program, type a `next` to go to the next line of
49
49
  program execution or `step` to step into a method, block, or class/module
50
50
  opening call. All of this, in the comfort of IRB or [Pry]. Simple!
51
51
 
52
+ ## Remote usage
53
+
54
+ Break can integrate with `pry-remote` for remote process debugging. You have to
55
+ require `break/remote` for Break's integration to kick in.
56
+
57
+ You can declare `break` in your `Gemfile` with a custom `require` to get the
58
+ remote integration loaded automatically by Bundler:
59
+
60
+ ```ruby
61
+ gem "break", require: "break/remote"
62
+ ```
63
+
52
64
  ## Why we need a debugger in Ruby?
53
65
 
54
66
  We had our fair share of abandoned Ruby debuggers written in C. During Ruby 1.8
@@ -13,40 +13,3 @@ module Break::Pry
13
13
  end
14
14
 
15
15
  Pry.prepend Break::Pry::PryExtensions
16
-
17
- begin
18
- require "pry-remote"
19
-
20
- module Break::Pry
21
- class << self
22
- attr_accessor :current_remote_server
23
- end
24
-
25
- module PryRemoteServerExtensions
26
- def initialize(*)
27
- Break::Pry.current_remote_server&.teardown
28
-
29
- super
30
- end
31
-
32
- def run
33
- return if Break::Pry.current_remote_server
34
- Break::Pry.current_remote_server = self
35
-
36
- setup
37
-
38
- Pry.start @object, @options.merge(input: client.input_proxy, output: client.output)
39
- end
40
-
41
- def teardown
42
- super
43
- ensure
44
- Break::Pry.current_remote_server = nil
45
- end
46
- end
47
- end
48
-
49
- PryRemote::Server.prepend Break::Pry::PryRemoteServerExtensions
50
- rescue LoadError
51
- # Do nothing if we cannot require pry-remote.
52
- end
@@ -0,0 +1,43 @@
1
+ begin
2
+ require "pry-remote"
3
+
4
+ module Break::Pry
5
+ class << self
6
+ attr_accessor :current_remote_server
7
+ end
8
+
9
+ module PryRemoteServerExtensions
10
+ def initialize(*)
11
+ Break::Pry.current_remote_server&.teardown
12
+
13
+ super
14
+ end
15
+
16
+ def run
17
+ return if Break::Pry.current_remote_server
18
+ Break::Pry.current_remote_server = self
19
+
20
+ setup
21
+
22
+ Pry.start @object, @options.merge(input: client.input_proxy, output: client.output)
23
+ end
24
+
25
+ def teardown
26
+ super
27
+ ensure
28
+ Break::Pry.current_remote_server = nil
29
+ end
30
+ end
31
+ end
32
+
33
+ PryRemote::Server.prepend Break::Pry::PryRemoteServerExtensions
34
+
35
+ Break::Filter.register_internal binding.method(:remote_pry).source_location.first.chomp('.rb')
36
+ Break::Filter.register_internal DRb.method(:start_service).source_location.first.chomp('/drb.rb')
37
+
38
+ at_exit do
39
+ Break::Pry.current_remote_server&.teardown
40
+ end
41
+ rescue LoadError
42
+ # Do nothing if we cannot require pry-remote.
43
+ end
data/lib/break/pry.rb CHANGED
@@ -19,19 +19,6 @@ begin
19
19
  end
20
20
 
21
21
  Pry.config.commands.import Break::Pry::Commands
22
-
23
- begin
24
- require "pry-remote"
25
-
26
- Break::Filter.register_internal binding.method(:remote_pry).source_location.first.chomp('.rb')
27
- Break::Filter.register_internal DRb.method(:start_service).source_location.first.chomp('/drb.rb')
28
-
29
- at_exit do
30
- Break::Pry.current_remote_server&.teardown
31
- end
32
- rescue LoadError
33
- # Do nothing if we cannot require pry-remote.
34
- end
35
22
  rescue LoadError
36
23
  # Do nothing if we cannot require pry.
37
24
  end
@@ -0,0 +1,2 @@
1
+ require "break"
2
+ require_relative "pry/remote"
data/lib/break/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Break
4
- VERSION = "0.30.0"
4
+ VERSION = "0.40.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: break
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.30.0
4
+ version: 0.40.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Genadi Samokovarov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-20 00:00:00.000000000 Z
11
+ date: 2022-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -84,6 +84,8 @@ files:
84
84
  - lib/break/pry/commands.rb
85
85
  - lib/break/pry/extensions.rb
86
86
  - lib/break/pry/frontend.rb
87
+ - lib/break/pry/remote.rb
88
+ - lib/break/remote.rb
87
89
  - lib/break/session.rb
88
90
  - lib/break/testing.rb
89
91
  - lib/break/version.rb
@@ -106,7 +108,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
106
108
  - !ruby/object:Gem::Version
107
109
  version: '0'
108
110
  requirements: []
109
- rubygems_version: 3.2.3
111
+ rubygems_version: 3.1.6
110
112
  signing_key:
111
113
  specification_version: 4
112
114
  summary: Lightweight Ruby debugger