not OP, but my current solution is to have a link which says "click to show email", with javascript handler that changes that link's href (and text) to email address, which is somehow computed. For example, by taking page URL and performing some regexp on it. It both avoids storing email in page source in plain text and requires human interaction, so feels good enough.
Another way I've seen elsewhere is to use a human-language explanation of how to build email address, something like this: "To get my email address, combine my first name (John) with my birth year (2000), separated by dash (-), and add email provider (@gmail.com)".
not a Linux expert, but I believe that at the very least it's time sensitive: after consumer process reads it, it's gone from the pipe. Unlike env vars and cli argument that stay there.
not OP, but for some it might be availability of latest versions packages (say, you've heard about new major version of Bash or Vim being released today, and wondering how soon it might be available in your distro packages), and, as someone else mentioned, less update stress due to lack of "major version bumps" - just remember to subscribe to https://archlinux.org/news/ and watch out for entries requiring "manual intervention".
i.e. something like this: CREATE INDEX idx_events_type ON events(json_extract(data, '$.type'))?
i guess caveat here is that slight change in json path syntax (can't think of any right now) can cause SQLite to not use this index, while in case of explicitly specified Virtual Generated Columns you're guaranteed to use the index.
Another way I've seen elsewhere is to use a human-language explanation of how to build email address, something like this: "To get my email address, combine my first name (John) with my birth year (2000), separated by dash (-), and add email provider (@gmail.com)".