-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Prepare 0.3.0 Release #20
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I confirmed to remove $SAFE mechanism with this change. But I have no tk environment now. So, I'm unsure to work this change for use-case.
I tested all of the files in sample and sample/demos-en, as well as a couple of personal apps I have that use ruby-tk. That's not a a guarantee I didn't break anything, but it's probably the best I can do. If anything breaks, we can always fix it in a future release. I'll merge this and make a release tomorrow. |
This hasn't been updated in over 10 years.
This doesn't appear to have been substantially updated in 15 years, other than being renamed multiple times.
This fails with: lib/tk.rb:2055:in `_invoke': string contains null byte (ArgumentError)
$SAFE support is being removed and these are no longer a good example.
This causes a warning. Switch to including a module that overrides method_missing and calls super.
While this works OK in Ruby 2.7 and basic usage in Ruby 3.0, for some samples, Ruby 3.0 needs additional changes, mostly due to |
Proc.new without block no longer works in Ruby 3. It was probably done as a performance improvement in earlier Ruby versions, but it hasn't been a performance improvement since lazy block activation was added in Ruby 2.5. Change Proc.new(&b) to just b when b is already the block argument to the method. I'm not sure why the Proc.new call was used in this case, as b should already be a Proc instance. Delete some commented out methods near where code changes were made.
Mostly from pterjan on GitHub, only the const added by me to fix a compiler warning. Fixes ruby#12
This doesn't appear to run correctly, even in tk 0.2.0 before the recent $SAFE removal: /home/jeremy/tmp/tk/lib/multi-tk.rb:2081:in `method_missing': undefined method `_is_master_of?' for #<RemoteTkIp:0x0000003c9657c5b0> (NoMethodError) Trying to fix that by removing the protected on the method gives: /home/jeremy/tmp/tk/lib/multi-tk.rb:2713:in `deleted?': no permission to manipulate (SecurityError) On exit in both cases, you get: /home/jeremy/tmp/tk/lib/tk.rb:3013:in `_invoke': can't delete "INTERP_FINALIZE_HOOK": command doesn't exist (RuntimeError) It's certainly possible these are underlying issues with lib/remote-tk.rb or lib/multi-tk.rb and not a problem with the sample itself, but I don't think it's a good idea to ship a sample that is broken.
This doesn't appear to work correctly even in 0.2.0.
No description provided.