Skip to content
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

Attribute all dependencies of Insect #324

Closed
triallax opened this issue Jul 20, 2022 · 6 comments · Fixed by #355
Closed

Attribute all dependencies of Insect #324

triallax opened this issue Jul 20, 2022 · 6 comments · Fixed by #355
Assignees
Milestone

Comments

@triallax
Copy link
Contributor

It just struck my mind that Insect has no real attribution for most of its dependencies, which I believes violates most, if not all, of these dependencies' license. This should be rectified as soon as possible.

For the PureScript dependencies, we can do something like this: https://github.com/purescript/spago#get-all-the-licenses-of-my-dependencies

For the JavaScript dependencies though, I have no idea, so we'll have to do some research.

@triallax triallax added this to the v5.8.0 milestone Jul 20, 2022
@triallax triallax self-assigned this Jul 20, 2022
@sharkdp
Copy link
Owner

sharkdp commented Jul 23, 2022

Thank you for your concern.

It just struck my mind that Insect has no real attribution for most of its dependencies, which I believes violates most, if not all, of these dependencies' license.

To be honest, I'm not sure if that's true. We don't have a copy of the source code of those packages in our repo. MIT license requires attribution if you distribute a (modified) copy of the source code. We only point our dependency files at those projects. And if you do npm install or pulp/spago install to pull in those dependencies locally, you will get all of the respective LICENSE files.

What is indeed problematic is the NPM packaging process. If we distribute a (minimized and optimized) JavaScript file that includes (modified) source code of those dependencies, then we should also add a proper attribution.

But the repository as it is seems completely fine to me?

@triallax
Copy link
Contributor Author

triallax commented Jul 24, 2022

To be honest, I'm not sure if that's true. We don't have a copy of the source code of those packages in our repo. MIT license requires attribution if you distribute a (modified) copy of the source code. We only point our dependency files at those projects. And if you do npm install or pulp/spago install to pull in those dependencies locally, you will get all of the respective LICENSE files.

That is all completely correct, and I've already considered that. But also, can you clarify what you mean by "(modified)"? We still have to attribute the dependencies even without modifying them, or is that what you meant?

What is indeed problematic is the NPM packaging process. If we distribute a (minimized and optimized) JavaScript file that includes (modified) source code of those dependencies, then we should also add a proper attribution.

This is what I implicitly meant (I should've perhaps clarified that). We also face the same problem in the web version of Insect.

Also, note that both in the current master and in #322, JavaScript code from node_modules is not bundled in the NPM package, so we may not need to attribute those. However, we do have to attribute the PureScript dependencies; in my PR they are bundled, and in master output is incluced in the NPM package without any attribution.

However, with the web version, we will have to have both JavaScript and PureScript dependencies attributed.

But the repository as it is seems completely fine to me?

I'm not sure I understand that question.

@sharkdp
Copy link
Owner

sharkdp commented Jul 24, 2022

To be honest, I'm not sure if that's true. We don't have a copy of the source code of those packages in our repo. MIT license requires attribution if you distribute a (modified) copy of the source code. We only point our dependency files at those projects. And if you do npm install or pulp/spago install to pull in those dependencies locally, you will get all of the respective LICENSE files.

That is all completely correct, and I've already considered that. But also, can you clarify what you mean by "(modified)"? We still have to attribute the dependencies even without modifying them, or is that what you meant?

Yes, that's what I meant: "If you distribute a modified or unmodified copy of the source code"

What is indeed problematic is the NPM packaging process. If we distribute a (minimized and optimized) JavaScript file that includes (modified) source code of those dependencies, then we should also add a proper attribution.

This is what I implicitly meant (I should've perhaps clarified that). We also face the same problem in the web version of Insect.

Ok, yes. I fully agree. Thank you for bringing it to my awareness.

Also, note that both in the current master and in #322, JavaScript code from node_modules is not bundled in the NPM package, so we may not need to attribute those. However, we do have to attribute the PureScript dependencies; in my PR they are bundled, and in master output is incluced in the NPM package without any attribution.

👍

However, with the web version, we will have to have both JavaScript and PureScript dependencies attributed.

👍

But the repository as it is seems completely fine to me?

I'm not sure I understand that question.

I just meant: I think we're not required to attribute the dependencies in the repository itself, only in the npm package and in the web version. We still could it of course. Maybe that would be the easiest option anyway.. if we don't automatically build this attribution-file during deployment, but have it checked in to the repo itself. On the other hand, that would probably just make it harder because we would then need to make sure it's always up-to-date.

@triallax
Copy link
Contributor Author

triallax commented Sep 2, 2022

Ok, yes. I fully agree. Thank you for bringing it to my awareness.

You're welcome.

I just meant: I think we're not required to attribute the dependencies in the repository itself, only in the npm package and in the web version.

Yeah, that's correct.

We still could it of course. Maybe that would be the easiest option anyway.. if we don't automatically build this attribution-file during deployment, but have it checked in to the repo itself. On the other hand, that would probably just make it harder because we would then need to make sure it's always up-to-date.

If we go that route, we could do something like #319. We can discuss whether to check the file into Git or not later.

@triallax
Copy link
Contributor Author

Ah, I was thinking that I would get this fixed before v5.8.0 is released, but oh well. I'll get this closed as soon as possible.

@triallax triallax modified the milestones: v5.8.0, v5.8.1 Dec 28, 2022
@sharkdp
Copy link
Owner

sharkdp commented Dec 28, 2022

Sorry for that. I am perfectly happy to create new releases whenever needed.

triallax added a commit to triallax/insect that referenced this issue Feb 9, 2023
triallax added a commit to triallax/insect that referenced this issue Feb 9, 2023
triallax added a commit to triallax/insect that referenced this issue Feb 9, 2023
triallax added a commit to triallax/insect that referenced this issue Feb 9, 2023
triallax added a commit to triallax/insect that referenced this issue Feb 26, 2023
Fixes sharkdp#324.

I also updated the package set for a couple dependencies that did not
have license files in the versions in the older package set.
triallax added a commit to triallax/insect that referenced this issue Feb 26, 2023
Fixes sharkdp#324.

I also updated the package set for a couple dependencies that did not
have license files in the versions in the older package set.
triallax added a commit to triallax/insect that referenced this issue Mar 2, 2023
Fixes sharkdp#324.

I also updated the package set for a couple dependencies that did not
have license files in the versions in the older package set, plus using
a newer version of `purescript-pairs` that has a license file.
triallax added a commit to triallax/insect that referenced this issue Mar 2, 2023
Fixes sharkdp#324.

I also updated the package set for a couple dependencies that did not
have license files in the versions in the older package set, plus using
a newer version of `purescript-pairs` that has a license file.
triallax added a commit to triallax/insect that referenced this issue Mar 10, 2023
Fixes sharkdp#324.

I also updated the package set for a couple dependencies that did not
have license files in the versions in the older package set.
triallax added a commit to triallax/insect that referenced this issue Mar 11, 2023
Fixes sharkdp#324.

I also updated the package set for a couple dependencies that did not
have license files in the versions in the older package set.
triallax added a commit that referenced this issue Mar 11, 2023
Fixes #324.

I also updated the package set for a couple dependencies that did not
have license files in the versions in the older package set.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants