Comments (5)
After spending some time looking into this, I'm now happy that using Apache 2 won't cause any issues for downstream users.
The simplest and in my opinion cleanest solution to the headers getting out of date is to remove them entirely, the Apache licence does not require headers (see here) and it isn't even a file-level licence. The only reason the Apache project itself uses headers is so that someone looking at a source file in isolation immediately knows how it is licensed, to me this is a bit overkill.
This would reduce maintenance burden and would reduce the risk of having incorrect licensing.
from rspirv.
Thanks for taking the diligence to investigate this!
from rspirv.
I'm not a lawyer so I don't know all the nitty gritty on this; but I was told that the licence should be kept as-is when moving this project from google/ to gfx-rs/ and the code I wrote is copyrighted to Google. So I'd prefer to not open this can of worms. I think Apache v2 is permissive enough? Do you see any problem here?
For existing files, I think it makes sense to update the last updated time. And we can remove the headers for autogen'ed files.
from rspirv.
I agree entirely I would prefer to change as little as possible.
The problem could be that downstream crates get forced to use Apache only as well, rather than the MIT/Apache mix that most will use. However, after reading both the licences I think it might be alright, although I'm not sure. We definitely can't put a NOTICE file in this repo because that puts conditions on all the downstream crates.
I think the license headers should be changed to Copyright <year of creation> - <year last updated> the rspirv contributors
, although that year thing could be simplified. It's also debatable the headers even need to be there, but they aren't really causing a problem so they may as well stay.
from rspirv.
@aioob I've been discussing this a while ago for gfx-rs repo and decided to remove all headers from the source files (for the same reason - it appears to not required, although the wording can be interpret differently). I would appreciate rspirv
also not carrying around that useless stuff at the start of the files.
from rspirv.
Related Issues (20)
- Update derive_more dependency HOT 3
- Parsing with `parse_bytes` fails but shader runs with opengl HOT 2
- Floating-point literals should store bits in integers, not use host f32/f64. HOT 2
- New spirv_headers release HOT 1
- ImageFormat::Rgb10a2ui uses inconsistent casing. HOT 4
- Published 1.5.1 broke public API HOT 8
- Switch spirv_headers to SemVer HOT 5
- Rename "required_capabilities" for clarity
- `IdResult` and `IdResultType` on SR?
- Publish rspirv 0.8 ? HOT 1
- LiftContext::convert struggles with linked multi-stage SPIRV
- Unable to retrieve decorations in structured representation HOT 3
- Store all instructions in one `Vec`?
- LiftContext::lift_op responsible for ~25% of the generated llvm ir
- spirv: Vulkan SDK based versioning HOT 6
- Disassembling constant literals is broken HOT 2
- LICENSE files in package subdirs HOT 3
- Update spirv's version of bitflags to 1.0.4
- Multiple operations with same opcode HOT 4
- Bug: selection_merge ends block.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rspirv.