-
Notifications
You must be signed in to change notification settings - Fork 167
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
[v2.x] backports for 2.6 release #289
Conversation
Code style: add parentheses around methods for test file
bump rubocop, fix offenses, use 2-space indent # Conflicts: # .rubocop.yml # lib/kubeclient/version.rb
Include request info in exceptions to make it easy to see what reques…
Clarifying docs around process_template
…ent_on_recursive-open-struct relax requirement on recursive-open-struct
Remove limited entity list from Readme
Fix Minitest deprecation
bump rubocop to enforce what our style dictates
adjust readme to rubocop
make test output more readable by adding color
move exception into Kubeclient namespace # Conflicts: # README.md # lib/kubeclient/common.rb
Introduce Kubeclient::ResourceNotFoundError
Support ruby 2.4
This reverts commit 263ff40 from ManageIQ#271. Those backport changes are no longer needed: - after backporting ManageIQ#195 and ManageIQ#233, v2.x now has Kubeclient::HttpError and Kubeclient::ResourceNotFoundError. - after backporting ManageIQ#247, v2.x now tests with webmock 2.x, it takes `basic_auth` rather than user:pw in URL. - ns/namespace change was just cosmetic. In other words, v2.x branch is now closer to original ManageIQ#262.
Fixes warnings in test output (and a potential bug)
cascade delete entities with a delete_option parameter.
…_watch_notices Recurse over arrays for watch notices
Catch EBADF when watch_stream fails
allow running tests with ruby test_foo.rb
implement as: :raw for watch
Fix README comment on Kubeclient::HttpError
Add ruby 2.5.0 to Travis test matrix
Make WatchStream.initialize as: keyword param optional, ruby 2.0 didn't have mandatory keyword args. It's internal API, and all .new() calls in kubeclient pass as:.
Backporting ManageIQ#223 bumped to rubocop with different defaults. These rubocop errors are fixed on master by ManageIQ#253 and ManageIQ#269 but we didn't backport those.
This is ready. Please review non-"Merge pull request #nnn" commits carefully! Ended up disabling couple rubocops on v2.x. |
@cben please get more reviewers to review this. I'm on a course and flying next week so I have limited availability, regardless this is a large PR and should be reviewed by more then one person. Why shouldn't we backport only minimal/needed changes and concentrate on releasing master? |
Who'd be the target audience for "minimial needed changes" release? Every user could have different opinion what are "minimial needed" changes (as an example, I think ManageIQ only "needs" 2 fixes plus cares about ruby 2 more for ruby 2.4 and 2.5 test coverage). If we release "maximal possible changes" — all 21 PRs — in 2.6, we "catch up to the debt". |
Any stable product out there using kubeclient.
That's why we are releasing master which we are going to do regardless. As we are going to handle kubeclient release I would want to create a commitment to release master often enough, but would not like to commit to cheery picking that much. In the words of someone wise: I accept we already discussed this and time was invested so will not object any longer. Next time I do want to concentrate on releases from master. |
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 haven't reviewed in detail but we discussed few of these PRs in person and the backport policy we put in place is good. 👍
shelving this. did a 3.0 and doing a small 2.5.2 (see #281 (comment)). If anyone wants additional 2.x release, let us know what you need. |
Draft for upcoming 2.6.0 release (#281).
To be followed by merging #287.
Work notes for future
https://github.com/abonas/kubeclient/issues?utf8=%E2%9C%93&q=label%3Av2.x%2Fyes
Sorting manually by merge date.
(
$ hub issue --include-pulls -s '' -l v2.x/yes
using hub is also handy but doesn't show merge date.)Cherry-picking merge commits with:
EDIT: in future consider
cherry-pick -x
to link to original commit (though for PR merges the PR link is good enough)Backported (newest last order)
#215 Code style: add parentheses around methods for test file v2.x/yes
#223 bump rubocop, fix offenses, use 2-space indent v2.x/yes
# Conflicts:
# .rubocop.yml
# lib/kubeclient/version.rb
rubocop fails a lot from this point, due to new cops & defaults.
#221 Include request info in exceptions to make it easy to see what reques… v2.x/yes
#229 Clarifying docs around process_template v2.x/yes
#231 relax requirement on recursive-open-struct v2.x/yes
#225 Remove limited entity list from Readme v2.x/yes
#232 Fix Minitest deprecation v2.x/yes
#236 bump rubocop to enforce what our style dictates v2.x/yes
#243 adjust readme to rubocop v2.x/yes
#205 make test output more readable by adding color v2.x/yes
#195 move exception into Kubeclient namespace v2.x/yes
- Test FAIL! see fix below
#233 Introduce Kubeclient::ResourceNotFoundError v2.x/yes
- Test FAIL! see fix below
#247 Support ruby 2.4 v2.x/yes
After above 3 PRs it's possible to completely revert backport changes of #271 (now closer to original #262) => tests PASS.
#261 Fixes warnings in test output (and a potential bug) v2.x/yes
#267 cascade delete entities with a delete_option parameter. v2.x/yes
#279 Recurse over arrays for watch notices v2.x/yes
#280 Catch EBADF when watch_stream fails v2.x/yes
#286 allow running tests with ruby test_foo.rb test v2.x/yes
#285 implement as: :raw for watch v2.x/yes
- Test FAIL on Ruby 2.0 — this commit used 2.1+ syntax.
=> Made small change e9817fd to use 2.0 syntax.
#288 Fix README comment on Kubeclient::HttpError bug v2.x/yes
#295 Add ruby 2.5.0 to Travis test matrix v2.x/yes
rake test
passed locally after each backport except 3 FAIL mentioned above.