{ "info": { "author": "Wayne Werner", "author_email": "wayne@waynewerner.com", "bugtrack_url": null, "classifiers": [], "description": "# WEmail\n\n(Or, Wayne's Email)\n\nI really love command line tools. Alpine has been a favorite of mine and Mutt\nis also a rather useful mail client. But I wanted to do some things\ndifferently, so I'm working on this project, WEmail.\n\nIt's designed for use with my other project [Orouboros][1], a mailserver that\ncheerfully violates all kinds of standards for MTAs.\n\n\nTo get started, you'll want to create a `~/.wemailrc` file. It's a JSON file,\nbecause aside from the pesky inability to have trailing commas, it's pretty\ngood otherwise. Here's a sample one to get you started:\n\n```\n{\n \"ABORT_TIMEOUT\": 2,\n \"MAILDIR\": \"~/mymail/\",\n \"DEFAULT_FROM\": \"person@example.com\",\n \"person@example.com\": {\n \"HEADERS\": {\n \"From\": \"person@example.com\",\n \"To\": \"\",\n \"X-CommonMark\": \"True\",\n \"Subject\": \"\"\n },\n \"SMTP_HOST\": \"example.com\",\n \"SMTP_PORT\": 1234,\n \"SMTP_USE_TLS\": true,\n \"SMTP_USERNAME\": \"person\",\n \"SMTP_PASSWORD\": \"this is not a real password\",\n \"\":\"\"\n }\n}\n```\n\nOh yeah, you can add `\"\":\"\"` at the end of your blocks, because I don't care\nabout them, and that lets you put commas at the end of everything else.\n\nAnyway, after that you just `python3 -m pip install --user wemail` and then run\n`wemail`.\n\nNow you can run `check` to check your email, and `proc` to process your email.\nWhile not everything has a `help`, hopefully there should be enough to get you\ngoing. And if you get stuck, feel free to send *me* an email - you can find my\naddress in `setup.py`. Oooh, maybe I should add a command that lets you send me\nan email for help!\n\n\n[1]: https://pypi.org/project/orouboros/\n\n\n---\n\n\nThe changelog format is based on [Keep \na Changelog](https://keepachangelog.com/en/1.0.0/).\n\n\n## [Unreleased]\n\n---\n\n## [0.1.18] - 2019-07-24\n\n### Added\n\n- `links` command now parses URLs from the message body.\n\n### Changed\n\n- `body` now displays the message body interactively if it's too long. It also\n wraps the message at 120 characters wide, or the width of the terminal -\n whichever is smaller.\n- Header wraps message body, so truncating should be a lot nicer. Also wraps.\n\n## [0.1.17] - 2019-06-18\n\n### Fixed\n\n- Update from the prompt no longer quits if there are no updates.\n\n## [0.1.16] - 2019-06-18\n\n### Fixed\n\n- Update from the prompt now actually works, instead of throwing an error.\n\n## [0.1.15] - 2019-06-18\n\n### Changed\n\n- Saving without a folder now saves to `saved-mail`\n\n## [0.1.14] - 2019-06-18\n\n### Fixed\n\n- Forwarding and replying now both allow attachments and CommonMark rendering.\n\n### Changed\n\n- Message now prints when you're up to date.\n- From address tries to default to ones found in config.\n\n## [0.1.13] - 2019-06-18\n\n### Added\n\n- `update` command lets you check for updates without exiting the program.\n\n## [0.1.12] - 2019-06-18\n\n### Added\n\n- Uses linux escape sequences to (try) and set the terminal title.\n- Can now add attachments! Simply add `Attachment: /path/to/file` in the\n headers and they will be replaced by the appropriate attachments. Images\n can be inlined to CommonMarked email via something like so:\n\n Attachment: /path/to/image.png; inline=true; name=\"example.png\"\n\n Hey, here is an inline image:\n ![Alt text](cid:example.png)\n\n The only important thing is that `cid:` matches whatever is in the\n `name=\"\"`.\n\n### Fixed\n\n- Resuming draft works properly.\n- With only one draft, resuming no longer asks a second time.\n- No longer multiply headers.\n- Display failed body seek on KeyError, instead of crash.\n\n### Changed\n\n- Temp file when composing now has `.eml` suffix, to trigger email-like\n behaviors in editors that honor that kind of thing.\n- Save raw message as draft after compose, rather than rendered.\n\n\n## [0.1.11] - 2019-06-06\n\n### Added\n\n- compose now has an address book autocomplete function, using `ADDRESS_BOOK`\n in the config file.\n\n### Fixed\n\n- For messages without any kind of body, now show a list of message parts, if\n any.\n\n### Changed\n\n- Added spacer line between header and body.\n\n## [0.1.10] - 2019-06-05\n\n### Added\n\n- Email forwarding.\n- `r` shortcut for reply.\n- Ability to save and resume drafts, queue messages for later sending, and edit\n files generally.\n- README for pypi and GitHub.\n\n### Fixed\n\n- On failure to send, display failure message instead of crash.\n- Properly display recipient headers when doing `proc`.\n\n### Changed\n\n- Default to `mistletoe` for the CommonMark renderer, because tables are\n cooler. But fallback to commonmark, if available.\n- Show message body (up to 20 lines) when doing `proc`.\n\n\n## [0.1.9]\n\n### Fixed\n\n- Fix `~`-prefixed maildir paths.\n\n## [0.1.8]\n\n### Added\n\n- Ability to do a quick command, e.g. `proc reply` to quickly reply to the\n first message.\n- Added `On at