Closed mtasaka closed 3 years ago
Thanks for raising this
I can see you use rspec spec
instead of rake
There is a logic on what spec files to be included written at https://github.com/egonSchiele/contracts.ruby/blob/v0.16.0/spec/spec_helper.rb#L25-L27
Using rspec spec
would skip it and make it fail
I will update CI config to include MRI 3.0
OK it seems all spec files are supposed to be run... :P
WIP PR: #295 It passes on 3.0 only at the moment This might take some time...
Thank you for working on this!
Found an article explaining the chaos around this keyword arguments issue https://eregon.me/blog/2019/11/10/the-delegation-challenge-of-ruby27.html
I still have no idea how to fix it across ruby 2 & 3 though Need some help 😬
Maybe we can have 0.16.x
to support Ruby 2.x
and future versions for Ruby 3.x
But I am not sure yet as there might be more Ruby 2 versions coming (e.g. 2.8
)
Maybe we can have 0.16.x to support Ruby 2.x and future versions for Ruby 3.x But I am not sure yet as there might be more Ruby 2 versions coming (e.g. 2.8)
I think this is a reasonable idea, and I don't expect that ruby 2.8 will be released in the future.
@egonSchiele What do you think?
Will prepare to release 0.16.1
anyway
There a few changes since 0.16.0
, not much but no point keeping them unreleased
Edit:
Or wait until we agreed on a plan and announce the plan via post install message in 0.16.1
@mtasaka @egonSchiele Opened #296 for discussion about the plan raised above Will prepare for 0.16.1 release regardless
@egonSchiele
Changelog is prepared but I am unable to release a new version (0.16.1) without permission
Thank you for working on this! Let me see if I can give permissions
Ah I don't think I can, but I can release if that works for you @PikachuEXE ?
Changelog already prepared Only need to update version in gem and change log for new version And see if you want to include #296 in this release
0.16.1 published to rubygems
With using
ruby 3.0.0p0
, current contracts.ruby https://github.com/egonSchiele/contracts.ruby/commit/cf8775a9d8af79271daf9889d71dac60daedef49 fails on test suite, perhaps due to ruby 3.0 keyword argument separation: https://rubyreferences.github.io/rubychanges/3.0.html#keyword-arguments-are-now-fully-separated-from-positional-argumentsPlease take a look at this. contracts.ruby seems to handle mixture of hash and keyword in its own way, and currently I cannot figure out how to fix this issue by myself.