Skip to content

Replace byebug with debug for debugging#364

Open
larouxn wants to merge 3 commits intoShopify:mainfrom
larouxn:replace_byebug_with_debug
Open

Replace byebug with debug for debugging#364
larouxn wants to merge 3 commits intoShopify:mainfrom
larouxn:replace_byebug_with_debug

Conversation

@larouxn
Copy link
Copy Markdown
Contributor

@larouxn larouxn commented Jun 8, 2025

What are you trying to accomplish?

Replace the use of byebug (plus irb and reline) with debug for debugging.

Follow up to/requires

What approach did you choose and why?

Cleaner, simpler, and more modern.

What should reviewers focus on?

Any reason we want to stick with byebug?

The impact of these changes

More standard Ruby codebase.

Testing

Screenshot From 2025-06-08 16-39-27

Testing debugging works while working on fixing these tests.

Screenshot From 2025-06-08 16-51-24

Checklist

  • I have added a CHANGELOG entry for this change (or determined that it isn't needed)

Determined not necessary as it's a developer facing change, not user facing.

@larouxn larouxn force-pushed the replace_byebug_with_debug branch from a665dc4 to b992b67 Compare June 18, 2025 22:54
@larouxn larouxn force-pushed the replace_byebug_with_debug branch 2 times, most recently from 72098e2 to bd617a1 Compare June 28, 2025 03:29
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from bd617a1 to 9b285a5 Compare July 17, 2025 20:59
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from 9b285a5 to b6207a8 Compare August 24, 2025 21:39
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from b6207a8 to 659cdff Compare October 10, 2025 07:19
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from 659cdff to b12a435 Compare January 3, 2026 19:06
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from b12a435 to f4ca7b1 Compare January 22, 2026 17:52
@larouxn larouxn force-pushed the replace_byebug_with_debug branch 3 times, most recently from 4a68162 to 01144f0 Compare February 6, 2026 13:43
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from 01144f0 to 97677b3 Compare February 18, 2026 14:54
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from 97677b3 to ff95290 Compare February 18, 2026 15:23
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from ff95290 to 61af2a3 Compare March 11, 2026 02:52
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from 61af2a3 to af243d8 Compare March 25, 2026 22:32
@afurm
Copy link
Copy Markdown

afurm commented Apr 13, 2026

Is the ostruct dependency actually required here? The debug gem's declared dependencies are irb and reline, neither of which appear to need ostruct directly — it's typically pulled in by irb for things like IRB::Irb#suspend (which uses OpenStruct for context). If ostruct is only needed transitively through irb, it should already be satisfied. Could this be an over-declaration?

@larouxn
Copy link
Copy Markdown
Contributor Author

larouxn commented Apr 13, 2026

👋 @afurm, that addition of ostruct was actually done in #434 which is my PR that adds Ruby 4 support to this gem. This PR is branched off of that PR and one prior to that which bumps minitest gem to latest.

As for whether ostruct is a required dependency I'm simply going off of the behaviour when running tests. It appears that as Ruby 4 (originally 3.5) made ostruct optional, everything blows up without it required.

Screenshot From 2026-04-14 06-45-07

@larouxn larouxn force-pushed the replace_byebug_with_debug branch from af243d8 to 4628d66 Compare April 13, 2026 21:50
larouxn added 3 commits April 22, 2026 14:47
- Add no-longer-stanadard-library gems to Gemfile and Gemspec
- Upgrade gems to versions that support Ruby 4
- Add Ruby 4 to CI matrix
- Bump dev Ruby from 3.4.8 to 4.0.2
@larouxn larouxn force-pushed the replace_byebug_with_debug branch from 4628d66 to dc4af52 Compare April 22, 2026 05:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants