Check older development commits and reapply if needed
Nobody has claimed this yet.
- Dominant language
- Perl
- Stars
- 737
- Forks
- 214
- PR merge metrics
- No merged PRs in 30d
Description
TL;DR: this is a placeholder issue to collect some of the older changes that got merged into the historical development branch, but didn't make it into mainline master after all, and see if they are useful to (re)apply now.
Longer version:
Around 1.4.1 release, development happened on dual tracks in development and development-1.x branches. Since development was the place for more experimental changes (as in "exploring ideas and preparing for v2"), development-1.x was used to do 1.x releases.
After a while, progress in development stalled and development-1.x remained active. Because of this, the latter became the new master when we consolidated the development workflow later.
This means there might be some changes in the old development branch which would be useful today, but haven't found their way into master yet. Let's play it safe, check the history and see which ones can be (re)applied.
List of known cases so far that need a resolution of either merge/port to master, or leave it in the development branch for reference (subject to change):
- #976 / #996: breaking change, revamp of resource API and migrating Rex::Commands::Kernel to it
- #872 / #998: already ported (shell command quoting + pass arguments as array + use i_run/i_exec internally)
- #987 / #999: breaking change (moving Rex::Commands::say() into a separate module)
- #969 / #1002: typo fixes, ready to port
- #992 / #1010: fix for #992 is already backported, the rest is breaking change, but may be at least partially ported
- #971 / #1040: dependency handling (partially ported for Rex::Cloud::Amazon, and partially reverted for XML::LibXML; needs review, but probably can stay unmerged, and let dist.ini manage dependencies better)
- #1009: not implemented yet, but the related note in the documentation should be ported
- #973 / #1050: issue is about porting Rex::Commands::File to new resource API, but the PR has more unrelated changes; at least partially portable
- #1056 / #1057: fix setting false values for sysctl, reimplemented on #1325
- #913 / #1059: hard to apply as it is, and probably best to be reimplemented only for the affected package manager as a first step (instead of full generic)
- 0cf4ff43: ready to port
- #1079: seems related to resource API change, needs review, has unrelated change
- #1082: new Rex::Command interface, braking change
- #1074: has to be reimplemented for the current interface
- #1083: singleton Rex object, breaking change, pulls in Moose
- a7d254b0edc4f6c01a9d5a076d06ef7cd933991c: reimplemented on c9e2426fb550c5e1e191e98f00dfd26104ecd64f
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Compare the historical development and development-1.x branches with master, starting from the listed issues and commit references. Review each unchecked case for compatibility with the current interfaces and record whether it should be ported, reimplemented, or left for reference. Done means every listed change has a documented resolution and applicable changes are merged into master.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- perl
- Domain
- devops
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100