Skip to content
This repository was archived by the owner on Mar 12, 2023. It is now read-only.

Commit e9ec775

Browse files
authored
Merge pull request #59 from nguyenquangminh0711/chore/prepare-for-new-release
Prepare for new release 0.3.1
2 parents d387523 + 1aefe3a commit e9ec775

File tree

12 files changed

+60
-6
lines changed

12 files changed

+60
-6
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@
1313
Gemfile.lock
1414
**/.byebug_history
1515
.byebug_history
16+
coverage

CHANGELOG.md

+13
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
11
# Changelog
22

3+
## [0.3.1]
4+
This release fixes bunch of bugs, and performance issues reported by the users after beta launch. No new features are introduced.
5+
6+
- Pry and Byebug backward compatibility: [#39](https://github.com/nguyenquangminh0711/ruby_jard/issues/39), [#45](https://github.com/nguyenquangminh0711/ruby_jard/issues/45)
7+
- Error with non-UTF8 encoding in the output: [#55](https://github.com/nguyenquangminh0711/ruby_jard/issues/55)
8+
- Ctrl+D not working: [#34](https://github.com/nguyenquangminh0711/ruby_jard/issues/34)
9+
- Errors if putting jard with `<%= jard %>` in ERB: [#35](https://github.com/nguyenquangminh0711/ruby_jard/issues/35)
10+
- Handle standard stream redirections, and prevent Jard from attachment in invalid TTY device: [#38](https://github.com/nguyenquangminh0711/ruby_jard/issues/38), [#46](https://github.com/nguyenquangminh0711/ruby_jard/issues/46), [#53](https://github.com/nguyenquangminh0711/ruby_jard/issues/53)
11+
- Bring back auto-resize when window size changes: [#40](https://github.com/nguyenquangminh0711/ruby_jard/issues/40)
12+
- Improve performance after `exit` command: [#49](https://github.com/nguyenquangminh0711/ruby_jard/issues/49)
13+
- Handle edge cases in Jard color decorator: [#54](https://github.com/nguyenquangminh0711/ruby_jard/issues/54)
14+
- Escape all special characters and line feeds before printing stuff into the screen: [#57](https://github.com/nguyenquangminh0711/ruby_jard/issues/57)
15+
316
## [0.3.0 - Beta 1]
417
- Filter feature
518
- New variable screen look and feel

Gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,6 @@ group :test do
2020
gem 'activerecord'
2121
gem 'parallel_tests'
2222
gem 'rspec-retry'
23+
gem 'simplecov', require: false
2324
gem 'sqlite3'
2425
end

lib/ruby_jard/commands/continue_command.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class ContinueCommand < Pry::ClassCommand
1414
Examples:
1515
continue
1616
17-
Continue program execution. The program will stop at the next breakpoint, or run until it finishes.
17+
Continue the execution of your program to the end, or stop at the first dynamic break point or `jard` attachment command.
1818
BANNER
1919

2020
def process

lib/ruby_jard/commands/exit_command.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class ExitCommand < Pry::ClassCommand
1414
Examples:
1515
exit
1616
17-
Exit program execution. The program will stop at the next breakpoint, or run until it finishes.
17+
Exit the execution of the program. Interally, when `jard` receives this command, it removes all debugging hooks, and triggers `::Kernel.exit`. Some long-running processes like `puma` or `sidekiq` may capture this event, treat it as an error, and recover to keep the processes running. In such cases, it's recommended to use `continue` command instead.
1818
BANNER
1919

2020
def process

lib/ruby_jard/version.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22

33
# Semantic versionn
44
module RubyJard
5-
VERSION = '0.3.0'
5+
VERSION = '0.3.1'
66
end

spec/spec_helper.rb

+5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# frozen_string_literal: true
22

3+
unless ENV['COVERAGE'].nil?
4+
require 'simplecov'
5+
SimpleCov.start
6+
end
7+
38
require 'bundler/setup'
49
require 'rspec/retry'
510
require 'ruby_jard'

website/docs/commands/continue.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ slug: continue
77
| ------- | ------------------- | ----- |
88
| `continue` | F9 | `c` |
99

10-
Continue the execution of your program to the end, or stop at the first dynamic break point or `jard` attachment command. One common confusion is that long-running ruby processes, such as web server or background jobs, won't stop, and may be used to debug the next request without restarting. If you want to end everything and just exit the process, let's use `exit`.
10+
Continue the execution of your program to the end, or stop at the first dynamic break point or `jard` attachment command.

website/docs/commands/exit.md

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
id: exit
3+
slug: exit
4+
---
5+
6+
| Command | Default key binding | Alias |
7+
| ------- | ------------------- | ----- |
8+
| `exit` |||
9+
10+
Exit the execution of the program. Interally, when `jard` receives this command, it removes all debugging hooks, and triggers `::Kernel.exit`. Some long-running processes like `puma` or `sidekiq` may capture this event, treat it as an error, and recover to keep the processes running. In such cases, it's recommended to use [continue](/docs/commands/continue) instead.

website/docs/guides/faq.md

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
id: FAQ
3+
slug: faq
4+
---
5+
6+
### Why does sometime Jard fail to stop in Ruby 2.7?
7+
8+
Jard depends on Byebug. Byebug depends on Ruby Tracepoint. In Ruby 2.7.0 and 2.7.1, Tracepoint has a bug that breaks Byebug. The bug is fixed, and released in Ruby 2.7.2. See more at [this issue](https://github.com/deivid-rodriguez/byebug/issues/719).
9+
10+
### Can Ruby Jard work with Docker?
11+
12+
Yes it does. However, if you are using `docker-compose up`, you may change your workflow a little bit. That command is not meant to be interactive. To enable Ruby Jard in docker:
13+
14+
- Use `docker exec -it` or `docker run -it`
15+
- Use `docker-compose run` with `tty: true` and `stdin_open: true` flags. For example: `docker-compose run --service-ports web`
16+
- Use `docker-compose up -d`. Then `docker ps`. Then `docker attach` to attach into your service docker instance.

website/docs/installation.md

+6
Original file line numberDiff line numberDiff line change
@@ -122,3 +122,9 @@ Ruby Jard depends on 3 dependencies:
122122
- `tty-screen`, compatibility: '~> 0.8.1'
123123

124124
Ruby Jard is compatible with `pry` and `byebug`. They can be used along with each other without conflicts. However, as soon as Jard already started (via `jard` magic method call), this compatibility is not guaranteed.
125+
126+
## Conflicts
127+
128+
There are some gems conflicting with Ruby Jard:
129+
- Any gems that override Ruby's Readline standard library, such as `rb-readline`
130+
- Any gems that override Pry or Byebug settings, such as `pry-byebug`

website/sidebars.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ module.exports = {
1414
'guides/Filter',
1515
'guides/Key bindings',
1616
'guides/Color schemes',
17-
'guides/Configurations'
17+
'guides/Configurations',
18+
'guides/FAQ'
1819
],
1920
'Flow Commands': [
2021
'commands/next',
@@ -24,7 +25,8 @@ module.exports = {
2425
'commands/up',
2526
'commands/down',
2627
'commands/frame',
27-
'commands/list'
28+
'commands/list',
29+
'commands/exit'
2830
],
2931
'Control Commands': [
3032
'commands/filter',

0 commit comments

Comments
 (0)