pryx 0.10.1 → 0.10.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +45 -3
  3. data/lib/pryx/version.rb +1 -1
  4. data/lib/pryx.rb +5 -0
  5. metadata +5 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 19c99803e20eb78eaac5eabce9063e12ea011846e57a14ce540e416398ebca1b
4
- data.tar.gz: 4aa5253da5492104772b3870ee13f76e72fdb0ab3ddd492f38450c6bcd397076
3
+ metadata.gz: 4c877bb193222c2d2540f95eea205253844c0e9c874d3f6a75235c42fcaef704
4
+ data.tar.gz: fec0feb940e81d862287bbd1a9e957fa2f6ae7247fe632da3c1eaf5354e96435
5
5
  SHA512:
6
- metadata.gz: 38c3a62f1158e23ddc2b1528bceb19a27ec54433d44ba731cd979879c440ff8a82665614a3e0bcc0d777911eb7f0af742e1d942fb0ef7e292d52a397fa85e051
7
- data.tar.gz: cded1db1c5092d750253a59ebd76c6c814473d8819af1458e5ed3828816456b0a75549478c68830ef3cd9c7a60772198e20fba00ac96d6f8959046e831ed7fa1
6
+ metadata.gz: 2a1d57e969a8500268a5b13817de9fb90a0ab4a355f3a17af28fb83b1d1e0ad22369365b5d3377e77e14e931f96a2582fa4ff63bac5e77e581b1cab42f61eeb4
7
+ data.tar.gz: bb70d8c676aeb5ee72f449e63e598deeff24415ad08a677d1beb007bcce16a1059fa703e735fff9e89f253be672641b4e1b2a3b147c8e5c350ad2967b3b151d3
data/README.md CHANGED
@@ -4,6 +4,8 @@ Three Virtues of a Programmer: Laziness, Impatience, and Hubris. -- Larry Wall,
4
4
 
5
5
  ## Getting Started
6
6
 
7
+ [NOTICE] Check [What's new in Ruby 3.2's IRB?](https://st0012.dev/whats-new-in-ruby-3-2-irb) for the introduced new feature of Ruby 3.2 IRB which includes part of feature this gem provides.
8
+
7
9
  Don't add this gem into bundler's Gemfile.
8
10
 
9
11
  Instead, install it directly via RubyGems
@@ -14,12 +16,54 @@ Then user can use pryx cross all your's project.
14
16
 
15
17
  ## Usage
16
18
 
19
+ At first, it is just pry, with more extensions.
20
+
21
+ you can always run it with `pryx`.
22
+
23
+ ```sh
24
+ ╰─ $ pryx
25
+ [1] pry(main)> ? Array#each_with_object
26
+
27
+ From: enum.c (C Method):
28
+ Owner: Enumerable
29
+ Visibility: public
30
+ Signature: each_with_object(arg1)
31
+ Number of lines: 20
32
+
33
+ Calls the block once for each element, passing both the element
34
+ and the given object:
35
+
36
+ (1..4).each_with_object([]) {|i, a| a.push(i**2) }
37
+ # => [1, 4, 9, 16]
38
+
39
+ {foo: 0, bar: 1, baz: 2}.each_with_object({}) {|(k, v), h| h[v] = k }
40
+ # => {0=>:foo, 1=>:bar, 2=>:baz}
41
+
42
+ With no block given, returns an Enumerator.
43
+
44
+ static VALUE
45
+ enum_each_with_object(VALUE obj, VALUE memo)
46
+ {
47
+ RETURN_SIZED_ENUMERATOR(obj, 1, &memo, enum_size);
48
+
49
+ rb_block_call(obj, id_each, 0, 0, each_with_object_i, memo);
50
+
51
+ return memo;
52
+ }
53
+ [2] pry(main)>
54
+
55
+ ```
56
+
57
+ Second, it add a new `Kernel#pry!`, you can use it instead of `binding.pry`.
58
+ It's not just an alias, there are more.
59
+
17
60
  Before use it, you need set `RUBYOPT` variable.
18
61
 
19
62
  You can do this two way in a terminal.
20
63
 
21
64
  ```sh
22
- $: export RUBYOPT+=' -rpryx'
65
+ $: export RUBYOPT+=' -rpryx' # For BASH only
66
+ $: export RUBYOPT="$RUBYOPT -rpryx" # For others shell
23
67
  $: ruby your_file.rb # add pry! in your_file for start pry session
24
68
 
25
69
  ```
@@ -31,8 +75,6 @@ or Run your's code directly use:
31
75
  $: RUBYOPT+='-rpryx' ruby your_file.rb # add pry! in your_file for start pry session
32
76
  ```
33
77
 
34
- Then, try add `pry!` into your's ruby code, then run it, have fun!
35
-
36
78
  Following is a example, assume there is a `test.rb` with content:
37
79
 
38
80
  ```rb
data/lib/pryx/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Pryx
4
- VERSION = [0, 10, 1]
4
+ VERSION = [0, 10, 3]
5
5
 
6
6
  class << VERSION
7
7
  include Comparable
data/lib/pryx.rb CHANGED
@@ -1,5 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ case RbConfig::CONFIG['ruby_version']
4
+ when '3.3.0'...'3.4.0'
5
+ require "readline"
6
+ end
7
+
3
8
  require 'pryx/version'
4
9
  require 'pryx/background'
5
10
  require 'pryx/trap_backtrace'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pryx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.10.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Billy.Zheng(zw963)
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-01-23 00:00:00.000000000 Z
11
+ date: 2024-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: awesome_print
@@ -142,14 +142,14 @@ dependencies:
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '1.5'
145
+ version: '1.6'
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: '1.5'
152
+ version: '1.6'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: pry-stack_explorer
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -267,7 +267,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
267
267
  - !ruby/object:Gem::Version
268
268
  version: '0'
269
269
  requirements: []
270
- rubygems_version: 3.3.7
270
+ rubygems_version: 3.4.6
271
271
  signing_key:
272
272
  specification_version: 4
273
273
  summary: pry extension tools!