human-string-filler version 1.0.0
As you may imagine, there was various experimental work before this, and
in fact I changed syntaxes a few times (e.g. escaping with backslashes),
but I decided to throw away that history when publishing it.
And then I didn’t publish it for another year or so, and came back and
realised there was more I wanted to add, and so moved from String to <W:
fmt::Write> to get no-alloc support, and toned down my colon
recommendation and added split_propertied and blah blah blah and bumped
what had been going to be 0.1.0 to 1.0.0 because why not anyway. Then I
read the commit message I had made which had the subsequent paragraphs
in full, and snorted as I contemplated the fact that in the last few
days I’ve published two other crates with the BlueOak-1.0.0 option, when
clearly I had intended this to be my first. Eh, c’est la vie, as I so
often seem to end up saying. Well, on with the rest:
At some point someone may ask why no license text is included for MIT
(which requires it) or Apache-2.0 (which requires at least a notice of
similar length to the full MIT license, even if not the full text of the
license; concerning putting such a header in every source file, lawyers
tend to say “do it”, but I don’t believe the license actually requires
that). This is a deliberate decision on my part; BlueOak-1.0.0 doesn’t
require it, deeming a link sufficient in this era, where it wasn’t when
MIT and Apache-2.0 were made. So I’m applying common sense and clear
intent, both of which have stronger value than legalese. The whole thing
is a gentleman’s agreement anyway; my conscience would not allow me to
take legal action on any violations (see 1 Corinthians 6 for the general
theme of reasoning, even though it’s not the same situation and thus not
directly applicable).
As for the inclusion of BlueOak-1.0.0 as an alternative to MIT and
Apache-2.0? I prefer its comparative simplicity and completeness.
(Fun aside: when you can choose between two licenses, we call it
dual-licensing. When you can choose between three licenses, the
equivalent term would be trial-licensing. That term is… inapt.)
As you may imagine, there was various experimental work before this, and
in fact I changed syntaxes a few times (e.g. escaping with backslashes),
but I decided to throw away that history when publishing it.
And then I didn’t publish it for another year or so, and came back and
realised there was more I wanted to add, and so moved from String to <W:
fmt::Write> to get no-alloc support, and toned down my colon
recommendation and added split_propertied and blah blah blah and bumped
what had been going to be 0.1.0 to 1.0.0 because why not anyway. Then I
read the commit message I had made which had the subsequent paragraphs
in full, and snorted as I contemplated the fact that in the last few
days I’ve published two other crates with the BlueOak-1.0.0 option, when
clearly I had intended this to be my first. Eh, c’est la vie, as I so
often seem to end up saying. Well, on with the rest:
At some point someone may ask why no license text is included for MIT
(which requires it) or Apache-2.0 (which requires at least a notice of
similar length to the full MIT license, even if not the full text of the
license; concerning putting such a header in every source file, lawyers
tend to say “do it”, but I don’t believe the license actually requires
that). This is a deliberate decision on my part; BlueOak-1.0.0 doesn’t
require it, deeming a link sufficient in this era, where it wasn’t when
MIT and Apache-2.0 were made. So I’m applying common sense and clear
intent, both of which have stronger value than legalese. The whole thing
is a gentleman’s agreement anyway; my conscience would not allow me to
take legal action on any violations (see 1 Corinthians 6 for the general
theme of reasoning, even though it’s not the same situation and thus not
directly applicable).
As for the inclusion of BlueOak-1.0.0 as an alternative to MIT and
Apache-2.0? I prefer its comparative simplicity and completeness.
(Fun aside: when you can choose between two licenses, we call it
dual-licensing. When you can choose between three licenses, the
equivalent term would be trial-licensing. That term is… inapt.)