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

Does not adhere to license #29

Closed
sindresorhus opened this issue Aug 13, 2024 · 8 comments
Closed

Does not adhere to license #29

sindresorhus opened this issue Aug 13, 2024 · 8 comments

Comments

@sindresorhus
Copy link

nanospinner/consts.js

Lines 4 to 9 in b53e875

process.env.CI ||
process.env.WT_SESSION ||
process.env.ConEmuTask === '{cmd::Cmder}' ||
process.env.TERM_PROGRAM === 'vscode' ||
process.env.TERM === 'xterm-256color' ||
process.env.TERM === 'alacritty'
is clearly directly copied from: https://github.com/sindresorhus/is-unicode-supported/blob/8f123916d5c25a87c4f966dcc248b7ca5df2b4ca/index.js


nanospinner/consts.js

Lines 15 to 16 in b53e875

? ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏']
: ['-', '\\', '|', '/']
is copied from https://github.com/sindresorhus/cli-spinners


And

nanospinner/consts.js

Lines 18 to 20 in b53e875

tick: supportUnicode ? '✔' : '√',
cross: supportUnicode ? '✖' : '×',
warn: supportUnicode ? '⚠' : '!!',
is copied from https://github.com/sindresorhus/log-symbols/blob/main/index.js

@conartist6
Copy link

I was just pointed to this thread and I want to say that all that code looks to me like it falls outside the realm of what is possible to copyright thanks to the legal principle of "convergence", which is the same principle that prevents things like equations for mathematical laws of the universe from being under copyright.

@sindresorhus
Copy link
Author

Your argument is flawed. The principle of "convergence" you're referencing applies to facts, not creative expression or unique implementation choices. The copied code isn’t a natural law or mathematical equation—it’s original, authored code that reflects specific decisions. Those decisions, whether it's the exact structure or even minor implementation details, are subject to copyright. Just because the functionality could be re-implemented doesn't mean this specific code isn't protected.

What you’ve cited isn't an example of unprotectable facts—it’s directly copying someone else’s authored work.

@conartist6
Copy link

Correct. I am making the argument that the copied code does not contain sufficiently much original creative content.

The code that checks for particular values in process.env seems impossible to copyright, as process.env is how everyone checks environment variables. Anyone attempting to achieve the same integrations would be forced to end up with nearly identical code.

I'm sure you didn't originate the practice of using the characters - \ | / as a spinner, so that definitely isn't a creative effort. Anyone who wanted to use that idea (that you don't own) would naturally end up writing the exact expression ['-', '\\', '|', '/'] in idiomatic Javascript.

You've argued that ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'] falls under copyright and I agree that there is some creativity to using braille code points to make a snake chase its tail, but I'd argue that while cool and maybe original (I don't know) it's still simply too small to be copyrighted. You can't claim copyright to a single word you made up, for example.

@conartist6
Copy link

Also RE the originality of your spinners, I can't find earlier usage of those exact braille code points, but the idea of using braille code points to create the effect of a snake chasing its tail predates the first code for your library: https://stackoverflow.com/a/2685827

@sindresorhus
Copy link
Author

Anyone attempting to achieve the same integrations would be forced to end up with nearly identical code.

The exact environment variables (no more, no less) and the exact order is highly unlikely to happen by coincidence.

@sindresorhus
Copy link
Author

Anyway. I have no interest in wasting time here arguing. The owner does what they want with this.

@conartist6
Copy link

I'm not saying they did, I'm saying they were copied. I'm saying that as far as I understand the law it was 100% legal to copy them because the original was not possible to copyright because of the principle of convergence which, as I mentioned, allows mathematical equations to be copied verbatim.

@usmanyunusov
Copy link
Owner

The fix was released in 1.2.0.

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.

3 participants