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

Commit

Permalink
Merge pull request #59 from nguyenquangminh0711/chore/prepare-for-new…
Browse files Browse the repository at this point in the history
…-release

Prepare for new release 0.3.1
  • Loading branch information
0x2c7 committed Sep 23, 2020
2 parents d387523 + 1aefe3a commit e9ec775
Show file tree
Hide file tree
Showing 12 changed files with 60 additions and 6 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@
Gemfile.lock
**/.byebug_history
.byebug_history
coverage
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# Changelog

## [0.3.1]
This release fixes bunch of bugs, and performance issues reported by the users after beta launch. No new features are introduced.

- Pry and Byebug backward compatibility: [#39](https://github.com/nguyenquangminh0711/ruby_jard/issues/39), [#45](https://github.com/nguyenquangminh0711/ruby_jard/issues/45)
- Error with non-UTF8 encoding in the output: [#55](https://github.com/nguyenquangminh0711/ruby_jard/issues/55)
- Ctrl+D not working: [#34](https://github.com/nguyenquangminh0711/ruby_jard/issues/34)
- Errors if putting jard with `<%= jard %>` in ERB: [#35](https://github.com/nguyenquangminh0711/ruby_jard/issues/35)
- 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)
- Bring back auto-resize when window size changes: [#40](https://github.com/nguyenquangminh0711/ruby_jard/issues/40)
- Improve performance after `exit` command: [#49](https://github.com/nguyenquangminh0711/ruby_jard/issues/49)
- Handle edge cases in Jard color decorator: [#54](https://github.com/nguyenquangminh0711/ruby_jard/issues/54)
- Escape all special characters and line feeds before printing stuff into the screen: [#57](https://github.com/nguyenquangminh0711/ruby_jard/issues/57)

## [0.3.0 - Beta 1]
- Filter feature
- New variable screen look and feel
Expand Down
1 change: 1 addition & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,6 @@ group :test do
gem 'activerecord'
gem 'parallel_tests'
gem 'rspec-retry'
gem 'simplecov', require: false
gem 'sqlite3'
end
2 changes: 1 addition & 1 deletion lib/ruby_jard/commands/continue_command.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class ContinueCommand < Pry::ClassCommand
Examples:
continue
Continue program execution. The program will stop at the next breakpoint, or run until it finishes.
Continue the execution of your program to the end, or stop at the first dynamic break point or `jard` attachment command.
BANNER

def process
Expand Down
2 changes: 1 addition & 1 deletion lib/ruby_jard/commands/exit_command.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class ExitCommand < Pry::ClassCommand
Examples:
exit
Exit program execution. The program will stop at the next breakpoint, or run until it finishes.
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.
BANNER

def process
Expand Down
2 changes: 1 addition & 1 deletion lib/ruby_jard/version.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@

# Semantic versionn
module RubyJard
VERSION = '0.3.0'
VERSION = '0.3.1'
end
5 changes: 5 additions & 0 deletions spec/spec_helper.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# frozen_string_literal: true

unless ENV['COVERAGE'].nil?
require 'simplecov'
SimpleCov.start
end

require 'bundler/setup'
require 'rspec/retry'
require 'ruby_jard'
Expand Down
2 changes: 1 addition & 1 deletion website/docs/commands/continue.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ slug: continue
| ------- | ------------------- | ----- |
| `continue` | F9 | `c` |

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`.
Continue the execution of your program to the end, or stop at the first dynamic break point or `jard` attachment command.
10 changes: 10 additions & 0 deletions website/docs/commands/exit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
id: exit
slug: exit
---

| Command | Default key binding | Alias |
| ------- | ------------------- | ----- |
| `exit` |||

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.
16 changes: 16 additions & 0 deletions website/docs/guides/faq.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
id: FAQ
slug: faq
---

### Why does sometime Jard fail to stop in Ruby 2.7?

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).

### Can Ruby Jard work with Docker?

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:

- Use `docker exec -it` or `docker run -it`
- Use `docker-compose run` with `tty: true` and `stdin_open: true` flags. For example: `docker-compose run --service-ports web`
- Use `docker-compose up -d`. Then `docker ps`. Then `docker attach` to attach into your service docker instance.
6 changes: 6 additions & 0 deletions website/docs/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,3 +122,9 @@ Ruby Jard depends on 3 dependencies:
- `tty-screen`, compatibility: '~> 0.8.1'

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.

## Conflicts

There are some gems conflicting with Ruby Jard:
- Any gems that override Ruby's Readline standard library, such as `rb-readline`
- Any gems that override Pry or Byebug settings, such as `pry-byebug`
6 changes: 4 additions & 2 deletions website/sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ module.exports = {
'guides/Filter',
'guides/Key bindings',
'guides/Color schemes',
'guides/Configurations'
'guides/Configurations',
'guides/FAQ'
],
'Flow Commands': [
'commands/next',
Expand All @@ -24,7 +25,8 @@ module.exports = {
'commands/up',
'commands/down',
'commands/frame',
'commands/list'
'commands/list',
'commands/exit'
],
'Control Commands': [
'commands/filter',
Expand Down

0 comments on commit e9ec775

Please sign in to comment.