• sweng@programming.dev
    link
    fedilink
    arrow-up
    7
    arrow-down
    9
    ·
    2 months ago

    I feel most people are fundamentally misunderstanding what forking means.

    Generally, forking means making a copy and modifying it.

    Github, however, seems to define “fork” as just making a copy.

    So, in fact there is no “TOS violation”. The license forbids making a copy and modifying it, while github requires that you allow making copies. There is no conflict between the two.

    Even if it were, just having a license that contradicts the github TOS is not a TOS violation (unless that is separately mentioned somewhere).

    • BrikoX@lemmy.zip
      link
      fedilink
      English
      arrow-up
      12
      arrow-down
      1
      ·
      2 months ago

      You have to make a fork aka copy and modify to contribute via pull requests. The license is fundamentally broken.

      • sweng@programming.dev
        link
        fedilink
        arrow-up
        2
        arrow-down
        6
        ·
        2 months ago

        Yes, but that has nothing to do with Github TOS. It does not require you to accept or even allow pull requests.

        • chebra@mstdn.io
          link
          fedilink
          arrow-up
          8
          arrow-down
          2
          ·
          2 months ago

          @sweng @BrikoX No, the TOS “just” says that by making the repo public you are granting all github users the right to fork it. So that right has already been granted.

          • sweng@programming.dev
            link
            fedilink
            arrow-up
            4
            arrow-down
            2
            ·
            2 months ago

            The TOS actually does not say you are granting users permissions to fork in the usually understood sense. The TOS gives you permission to copy, which Github calls “forking” even though it isn’t.

            • chebra@mstdn.io
              link
              fedilink
              arrow-up
              8
              arrow-down
              1
              ·
              2 months ago

              @sweng

              > you agree to allow others to view and “fork” your repositories

              How did you come to the conclusion that this does not grant the permissions to fork? It’s literally in the sentence. Where else did you find the definition of “forking”, if not here? This is what Github defines in the TOS, this is the label on the button in github UI, so clearly this is also what winamp means when they forbid “forking” and that means it’s against the TOS. There is no other “forking”.

              • sweng@programming.dev
                link
                fedilink
                arrow-up
                3
                arrow-down
                1
                ·
                edit-2
                2 months ago

                I got it from the TOS:

                By setting your repositories to be viewed publicly, you agree to allow others to view and “fork” your repositories (this means that others may make their own copies of Content from your repositories in repositories they control).

                They explicitly define it as making copies. There is no mention of being allowed to modify said copy. Also note the quotes around “fork”, since it differs from the usual definition.

                E.g. wikpedia (https://en.m.wikipedia.org/wiki/Fork_(software_development) defines it thusly:

                In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software.

                (Emphasis mine)

                • chebra@mstdn.io
                  link
                  fedilink
                  arrow-up
                  2
                  arrow-down
                  2
                  ·
                  2 months ago

                  @sweng But what else would “forking” mean? As you said “in the usual sense”. This is the usual sense - making a copy of the repo on github = forking.

                  • sweng@programming.dev
                    link
                    fedilink
                    arrow-up
                    5
                    arrow-down
                    1
                    ·
                    2 months ago

                    I edited my reply to include the definition from Wikipedia, but there are of course many other sources.

        • BrikoX@lemmy.zip
          link
          fedilink
          English
          arrow-up
          2
          ·
          2 months ago

          I’m not sure if it’s spelled out in the ToS, but there is no way to prevent pull requests on public repos, it’s a functional requirement.

          • chebra@mstdn.io
            link
            fedilink
            arrow-up
            4
            arrow-down
            2
            ·
            2 months ago

            @BrikoX @sweng

            It’s in the linked issue, spelled out alright:

            > By setting your repositories to be viewed publicly, you agree to allow others to view and “fork” your repositories (this means that others may make their own copies of Content from your repositories in repositories they control).