Prefer Traces.trace. - #124
Conversation
| spec.add_dependency "protocol-http1", "~> 0.15.0" | ||
| spec.add_dependency "protocol-http2", "~> 0.15.0" | ||
| spec.add_dependency "traces", ">= 0.8.0" | ||
| spec.add_dependency "traces", ">= 0.10.0" |
There was a problem hiding this comment.
Adding this dependency now mean async-http needs at least Ruby 2.7 to run but that is not reflected in the gemspec. https://github.com/socketry/traces/pull/8/files#r1237988182
Noticed this because Sinatra CI failed on Ruby 2.6: https://github.com/sinatra/sinatra/actions/runs/5263567184/jobs/9631906714#step:5:15
There was a problem hiding this comment.
Ah thanks for the report. I have a general policy of not supporting EOL Rubies. However, we can probably drop 2.7 as a requirement for traces in the next release because we won't need to use ... any more. Hopefully I'll be able to do the next release in about a week.
There was a problem hiding this comment.
Sounds good, I've worked around the problem in Sinatra CI but I imagine it could be more difficult to do that in other projects (applications).
Just curious, should you be specifying the mimimum supported Ruby version in the gemspec for your gems? Then users of old Ruby versions can just keep using old versions of the gems (bundler should just pick the correct version for them).
There was a problem hiding this comment.
I usually try to do so, I'll probably need to automate it, I automate a lot of maintenance but don't always remember to fix the minimum version because it's not automated. I can describe the policy (drop EOL ruby), automate it, and then it should be easier. https://github.com/ioquatix/bake-modernize is my automation tool.
The
tracesgem was updated with a "easier to use" interface,Traces.trace. This also prepares us to avoid clobberingProtocol::HTTP::Methods#trace.Types of Changes
Contribution