Backward compatibility for chown, broken in 0.28.0 -> 0.29.0#1551
Conversation
This PR simply takes into account `uid` and `gid` settings in the template, introduced in 0.28.0 but replaced by `user` and `group` in 0.29.0, breaking compatibility. We address the issue by giving precedence to the newer settings but setting the relevant properties upon type conversion if the legacy settings are provided Uid (0.28.0) -> User (0.29.0) Gid (0.28.0) -> Group (0.29.0) Signed-off-by: Alessandro De Blasis <alex@deblasis.net>
|
Hey @deblasis, thanks for writing this and you are right in that it would be better to keep compatibility for now. Though I do need come up with a system for deprecating and removing things so I can add this (along with a few other things) to it. |
eikenb
left a comment
There was a problem hiding this comment.
Simple change with test coverage. 👍
No worries! I am assuming that 1.0 is gonna be the version with these deprecations. Well, I guess it depends on how strictly you are following semantic versioning. In the past I have used a simple markdown file named like the next major version where I listed all the legacy things that had to be deprecated. I still remember the folder name: It was descriptive text for documentation but it contained an items list with checkboxes that was parsed by a simple github action that would fail if you tried to merge a branch with a new major tag when the markdown file matching that version contained items left unchecked. Not really a fancy system, quite manual and simple but it helped. |
This PR simply takes into account
uidandgidsettings in the template, introduced in 0.28.0 but replaced byuserandgroupin 0.29.0, breaking compatibility.We address the issue by giving precedence to the newer settings but setting the relevant properties upon type conversion if the legacy settings are provided
Uid (0.28.0) -> User (0.29.0)
Gid (0.28.0) -> Group (0.29.0)
Related #1541