News for hackers. Stuff that matters.
Re:Bytehound: Memory Profiler for Linux by j1elo on Thursday May 23, 2024 @03:57PM (#40459184)
I'd like to learn more about the dual license "MIT OR Apache-2.0": is there any practical advantage of using one over the other? Are there any expected use cases where Apache-2.0 wouldn't be appropriate but MIT would?

I had always assumed that if the time came to choose a permissive OSS license, I'd just go with Apache-2.0 for the more complete legal ground that it provides (especially wrt. patents). Didn't even occur to me that it would as much as make sense to offer MIT too (like, why not also BSD now that we're at it?)

Re:Bytehound: Memory Profiler for Linux by nicbn on Thursday May 23, 2024 @04:57PM (#40459818)
It's common among Rust projects (the standard library also uses it).

Apache 2 has a patent grant so it's preferred by companies, but is not compatible with GPLv2, and MIT is compatible with GPLv2.

Source: https://prev.rust-lang.org/id-ID/faq.html#why-a-dual-mit-asl...

Re:Bytehound: Memory Profiler for Linux by o11c on Thursday May 23, 2024 @06:49PM (#40460823)
For completeness:

Apache 2 is compatible with GPL 3, which outside the kernel most of the world uses.

Re:Bytehound: Memory Profiler for Linux by cthalupa on Thursday May 23, 2024 @07:53PM (#40461324)
> which outside the kernel most of the world uses.

I'm... Not sure that is the case?

Some big projects still on (L)GPLv2, off the top of my head:

MySQL & MariaDB, QEMU, Busybox, Git, Wireshark, probably many many more.

Re:Bytehound: Memory Profiler for Linux by kouteiheika on Friday May 24, 2024 @01:57AM (#40463244)
Besides the legal reasons that others already explained, I use it because I want people to be able to freely copy-paste code between projects while keeping licensing uniform, and this is essentially the "standard" in the Rust community.
Re:Bytehound: Memory Profiler for Linux by j1elo on Friday May 24, 2024 @08:23AM (#40465437)
I see, thanks for commenting. I genuinely wanted to learn more about the background or context of that decision. Didn't know that it's a common thing to do in the Rust ecosystem! Nice to know, too.