|
@@ -0,0 +1,69 @@
|
|
|
|
|
+## Context
|
|
|
|
|
+
|
|
|
|
|
+Repository currently has no LICENSE file. The user wants to adopt the WTFPL (version 2, December 2004) — the most permissive license commonly recognized: it imposes no restrictions beyond not changing the name of the license itself if modified. The verbatim text is short (under 20 lines) and is maintained at <http://www.wtfpl.net/>.
|
|
|
|
|
+
|
|
|
|
|
+## Goals / Non-Goals
|
|
|
|
|
+
|
|
|
|
|
+**Goals:**
|
|
|
|
|
+- Ship an unambiguous, maximally permissive license.
|
|
|
|
|
+- Use the canonical WTFPL v2 wording verbatim (avoid modifying the license body, per its own terms).
|
|
|
|
|
+- Make the license discoverable: top-level `LICENSE` plus a README mention.
|
|
|
|
|
+
|
|
|
|
|
+**Non-Goals:**
|
|
|
|
|
+- Add SPDX headers to every source file. WTFPL does not require per-file notices; a repo-level `LICENSE` is sufficient.
|
|
|
|
|
+- Relicense any vendored dependencies. `github.com/fatih/color`, `gopkg.in/yaml.v3`, `github.com/mattn/go-isatty`, `github.com/mattn/go-colorable`, and `golang.org/x/sys` retain their own (MIT/BSD-family) licenses; WTFPL only governs original code in this repo.
|
|
|
|
|
+- Add a copyright-header linter or CI check.
|
|
|
|
|
+
|
|
|
|
|
+## Decisions
|
|
|
|
|
+
|
|
|
|
|
+### 1. Filename: `LICENSE` (no extension)
|
|
|
|
|
+**Decision:** Place the license at `./LICENSE`.
|
|
|
|
|
+**Why:** This is the path GitHub, pkg.go.dev, and most license scanners look for. Using `LICENSE.txt` or `LICENSE.md` works but is less conventional for single-file licenses.
|
|
|
|
|
+
|
|
|
|
|
+### 2. Exact body
|
|
|
|
|
+**Decision:** Use the standard WTFPL v2 text with a single project copyright line, omitting the upstream Sam Hocevar attribution. WTFPL's own clause permits modifying the license document as long as the name is not changed; replacing the upstream copyright with the project's is common practice among adopters. Final body:
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
|
|
|
|
|
+ Version 2, December 2004
|
|
|
|
|
+
|
|
|
|
|
+ Copyright (C) 2026 kotoyuuko
|
|
|
|
|
+
|
|
|
|
|
+ Everyone is permitted to copy and distribute verbatim or modified
|
|
|
|
|
+ copies of this license document, and changing it is allowed as long
|
|
|
|
|
+ as the name is changed.
|
|
|
|
|
+
|
|
|
|
|
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
|
|
|
|
|
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
|
|
|
|
+
|
|
|
|
|
+ 0. You just DO WHAT THE FUCK YOU WANT TO.
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+**Why:** Keeps the LICENSE file minimal — exactly one copyright line, pointing at the project author. WTFPL's "copy and distribute… modified copies" clause explicitly covers this edit.
|
|
|
|
|
+**Alternatives considered:** Keeping Sam Hocevar's original copyright line as a second line — technically more conventional but visually noisy and unnecessary (the author explicitly requested a single line).
|
|
|
|
|
+
|
|
|
|
|
+### 3. README section placement
|
|
|
|
|
+**Decision:** Append a short `## License` section at the bottom of README.md, after "API":
|
|
|
|
|
+
|
|
|
|
|
+```markdown
|
|
|
|
|
+## License
|
|
|
|
|
+
|
|
|
|
|
+This project is released under the [WTFPL v2](LICENSE) — Do What The Fuck You Want To Public License. Use it however you like.
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+**Why:** Conventional README footer position; avoids disrupting the existing section flow.
|
|
|
|
|
+**Alternatives considered:** Adding a shields.io badge near the title — not worth the HTML clutter or external asset dependency for a single-repo change.
|
|
|
|
|
+
|
|
|
|
|
+### 4. No per-file notices or go.mod changes
|
|
|
|
|
+**Decision:** Do not add SPDX-License-Identifier comments to Go source files; do not add anything to `go.mod` (Go's module system doesn't track licenses there).
|
|
|
|
|
+**Why:** WTFPL doesn't require per-file headers; `go list -m` and pkg.go.dev pick up the LICENSE file automatically.
|
|
|
|
|
+
|
|
|
|
|
+## Risks / Trade-offs
|
|
|
|
|
+
|
|
|
|
|
+- **WTFPL is not OSI-approved.** Some corporate policy scanners reject it. *Mitigation:* the user explicitly chose it; this is a personal/hobby-scale CLI where that trade-off is acceptable. Users who need a stricter posture can fork.
|
|
|
|
|
+- **Copyright-year staleness.** `Copyright (C) 2026` will feel dated next year. *Mitigation:* year ranges aren't required; we'll add a year range (`2026-2027`) or move to a single "current year" convention in a future change when it matters.
|
|
|
|
|
+- **License text not verbatim from wtfpl.net.** We replaced the upstream copyright line with the project's own. *Mitigation:* WTFPL's own terms permit "verbatim or modified copies of this license document" as long as the name isn't changed, which it isn't.
|
|
|
|
|
+
|
|
|
|
|
+## Migration Plan
|
|
|
|
|
+
|
|
|
|
|
+N/A — new file and a README addendum. No runtime impact, no rollback complexity. Downstream consumers who had forked before this commit were already under implicit "no license = all rights reserved"; WTFPL strictly broadens what they can do.
|