• magic_lobster_party@kbin.run
    link
    fedilink
    arrow-up
    5
    ·
    9 个月前

    Stuffing multiple tasks into one PR is often bad.

    • It’s harder to review. As a reviewer it’s difficult to know which code change is related to which task.
    • It’s harder to verify. Did you really test every change you made?
    • You might end up with a “hostage” situation. There might be a few code changes in the PR that looks good and is really wanted, but other code changes in the same PR of lower quality. As a reviewer, should you just let these lower quality code changes slide so you can bring in the code change you really want? Probably not, but you’re going to let it slide either way.
    • jjjalljs@ttrpg.network
      link
      fedilink
      arrow-up
      2
      ·
      9 个月前

      You might end up with a “hostage” situation.

      Reminds me of a guy I used to work with.

      He’d have like a pretty normal PR to do something like change a field to be read only in some API. But then snuck into the pr there’d also be something like “change application to run locally different than prod for entirely selfish reasons” or “lower global coverage requirements” or “disable type checking in this whole folder”

      • magic_lobster_party@kbin.run
        link
        fedilink
        arrow-up
        2
        ·
        9 个月前

        I also worked with a guy like that. Impossible to predict what he was going to do in his next PR. Always a nightmare to review. Also exhausting to argue with, so let some things slide because I was so done dealing with his bs.

        • jjjalljs@ttrpg.network
          link
          fedilink
          arrow-up
          2
          ·
          9 个月前

          This guy was also difficult to argue with. He was always professional, which I guess is worth something.

          One time he tried to remove all the types from a bunch of code “because they were all going to change later.” I refused to allow this. We went back and forth in the comments for hours. I think eventually the lead or boss got involved. Thankfully people sided with me.

          His “later” project that was allegedly going to change all the things was rejected by the team. The code in question is still used and properly typed a year later.