5,542 karma · joined January 10, 2021
Technically, gets() was removed from the standard library in C11[0]. However, that is far from a semantically meaningful overhaul of the standard library. I nonetheless felt the need to point out that there was a very specific effort for the sake of completeness.
[1] https://docs.aws.amazon.com/qldb/latest/developerguide/what-...
[2] https://aws.amazon.com/blogs/database/replace-amazon-qldb-wi...
[0] https://bytes.grubhub.com/why-we-use-crypto-when-generating-...
What is required is that you, when creating an invoice, provide the QR code for doing so.
You need to have a compatible CPU/motherboard/chipset. For normal CPUs: AMD Ryzen non-Pro APUs don't have support for it, the rest of AMD's CPUs and chipsets have unofficial support for it. You'll have to check the motherboard vendor's support page if a certain board also has support for ECC. Then you need ECC memory modules and you should stick near the qualified vendors list (QVL) here since systems are kind of pickier with ECC memory. For Intel, you're out of luck except for the W680 chipset, but motherboards seem to be scarce.
For high-end desktop (HEDT) and workstations CPUs: AMD's Threadripper lineup have official ECC support, but still check with the motherboard vendor first. For Intel, most Xeons should do it, but check before you buy. The same caveat about motherboards applies here, too: Check if there's ECC support first and stick to the QVL to be safe.
I admit that it's a fringe case, but it could be a thing.
It would probably be interesting to look up who of these people also has patents outside of the USA. If there really is someone being particularly stubborn, one might reasonably expect them to enforce the non-US patent variant outside of the USA.
Assuming ChaPoly needs expensive masking mitigations and AES-NI is safe, ChaPoly just became a lot less attractive, too.
You can't just take MIT-licensed code. You have to take the code and the full copyright notice and license grant with disclaimer.
Its inclusion in 4.4BSD seems a mystery though. No other files on the 4.4BSD distribution seem to reference it. The atc(6) game involves airports, but it doesn't seem to actually open this file, both in 4.4BSD and in OpenBSD.
With CC0, you relinquish your copyright only, but explicitly retain trademark and patent rights (!).
> 4. Limitations and Disclaimers.
> a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.
This makes it sort of iffy for software when software patents exist unless coupled with some kind of patent waiver or assertion of not holding and not being aware of patents. While you can argue with MIT-0/0BSD/whatever else there might be that there is an implied patent license, there is an explicit non-license for patents with CC0.
1. Let there be a file F. F is released to the public under 0BSD.
2. Let there be a project P. P includes code from F. The license notice of F is scrubbed as part of the inclusion process.
3. P is released as CC0.
The author of P cannot release the project as CC0 because the author has no right dedicate another person's code (F) to the public domain. Because 0BSD doesn't cause a public domain dedication in jurisdictions that accept doing so, F would have to continue being separate and explicitly exempt from the effects of CC0 to be an accurate of its usage terms. Effectively, this makes 0BSD be a de-facto attribution license in a CC0 project. In practice, it makes no difference, but it's legally deeply inelegant.
[0] https://mailarchive.ietf.org/arch/msg/cfrg/qLTveWOdTJcLn4HP3...
The Luhn algorithm used as a check digit is suboptimal; better options with greater detection rates of various kinds of human input errors exist, see e.g. https://www.uni-due.de/imperia/md/content/dc/yanling_2015_ch..., p. 12 also showing some other options. See also http://page.mi.fu-berlin.de/rhschulz/Literatur/checkdigits_l... for further reading on check digits.
I think that's the reason of ASN.1 being trapped in a very restrictive space. From Olivier Dubuisson's ASN.1 -- Communication between Heterogeneous Systems, p. 86 et seq. talking about use of ASN.1 by the IETF:
> the definition of many macros and macro instances to represent semantic links instead of information object classes and information objects although no ASN.1 compiler properly takes into account the macro concept (on the other hand, no compiler of the public domain does with the information object class concept unfortunately);
In essence, ecosystem failure due to a non-existent overlap of the telecom industry (full of commercial and expensive solutions) and the Internet community (working in a standards committee that tracks pre-existing permissionless innovation distributing the standards at no cost, strongly affiliated with free software ideas) caused ASN.1 to fall by the roadside.
Now that ASN.1 is considered uncool, the ecosystem certainly won't be coming anymore, so we'll be forced to reinvent ASN.1, probably re-learning every lesson along the way.
Yes, it's AGPL with source code publicly available, but if you remove that license key check yourself, you have to make it public, effectively broadcasting that you don't pay for software. In a way, it's naming and shaming. The alternative is using the fork of someone else who has done so and complied with the license, but then you're suddenly dependent on some random downstream and who knows what else they have mixed or might mix into it or just give up merging from upstream eventually.
You'd be hard-pressed to be able to blame ASN.1 with XER (XML Encoding Rules) encoding since then you'd throw an XML parser at the problem, side-stepping the bit twiddling and exchanging it for XML parsing bugs instead. Similarly, if all you have is fixed-length items, OER (Octet Encoding Rules), you essentially get a formally specified struct with a well-defined way to go from there to XML or JSON with JER (JSON Encoding Rules).
I imagine we'll see this happen with CBOR (whose ASN.1 equivalent is technically CDDL) a few years down the road.
If you want to throw your copyright out the window: The commonly accepted solution seems to be CC-0[1], which tries very hard to disclaim rights and limit liability in as many jurisdictions as possible, complete with a fallback license grant for failed public domain dedications. Because CC-0 makes some people uncomfortable despite the lengths it goes to reach its goals, some projects work with dual-licensing to cover the other side, such as Monocypher.
Neither of them address patents. If patents are something you want to/need to address, you could perhaps paste the patent clause from BSD-2-Clause-Patent onto 0-clause BSD.
See also the discussion on [2,3].
[0] https://spdx.org/licenses/0BSD.html
[1] https://spdx.org/licenses/CC0-1.0.html
[2] https://en.wikipedia.org/wiki/Public-domain-equivalent_licen...
You can't use a different typeface, font size or color in a plain text document. That does not mean you have no options. The criterion is that it is “written, displayed, or presented that a reasonable person [...] ought to have noticed it.”
Consider the following:
Nihil harum autem impedit commodi ut occaecati. Nihil
quisquam ab molestiae veritatis consectetur. Quis molestias
sunt facere tempore est. Eum quia quisquam veritatis illo
minus sint atque ipsa. Omnis optio ducimus minus nemo non
deleniti voluptas. Blanditiis nisi eum eum beatae fugit
delectus. Optio neque sed nostrum veniam eos. Culpa ut no‐
bis rem est dignissimos est eum sed. Occaecati dignissimos
eveniet odit aut est ipsum minus nisi.
!! IMPORTANT !!
DISCLAIMER OF WARRANTY
The software is provided "as is", without warran‐
ty of any kind, express or implied, including but
not limited to the warranties of merchantability,
fitness for a particular purpose and noninfringe‐
ment. In no event shall the authors or copyright
holders be liable for any claim, damages or other
liability, whether in an action of contract, tort
or otherwise, arising from, out of or in connec‐
tion with the software or the use or other deal‐
ings in the software.
Unde sint ab qui ut. Debitis qui deserunt fugiat aut nihil
impedit vel saepe. Et ad voluptas quia. Omnis libero ni‐
hil perferendis aut ab. Illo et neque voluptatibus. Et
animi consequatur enim eius aut at veritatis. Modi error a
ratione tempore velit inventore. Accusantium accusantium
et quam quis nemo id.
This seems rather noticeable to me, gets to the point, and is considerably more readable.By using the all-caps sparingly, we've made way to draw attention to the heading, then offset the passage with large amounts of whitespace to draw attention to the passage itself. At the same time, this keeps readability of the actual text that you want people to read.
The part that caught my interest is: How many people consciously picked the MIT license when they actually meant a non-attribution license?