Commit graph

50 commits

Author SHA1 Message Date
Clément DOUIN c40dde6e9a
update readme features section 2022-03-04 09:46:17 +01:00
Valera Rozuvan 00728b88e4
fix broken link to wiki on binary installation (#304) 2022-02-23 11:03:51 +01:00
Clément DOUIN 158bc86cfa
release v0.5.6 (#301)
* make use of mailparse::MailAddr

* move addr logic to a dedicated file

* update changelog

* add suffix to downoalded attachments with same name (#204)

* implement sort command (#34)

* introduce backends structure (#296)

* implement backend structure poc

* improve config namings

* improve account namings and structure

* rename imap vars to backend

* maildir backend (#299)

* refactor config system, preparing maildir backend

* rename deserializable by deserialized

* wrap backend in a Box

* reword backend trait methods

* merge list envelopes functions

* remove find_raw_msg from backend trait

* remove expunge fn from backend trait

* rename add_msg from backend trait

* init maildir integration tests, start impl maildir backend fns

* implement remaining methods maildir backend, refactor trait

* improve backend trait, add copy and move fns

* remove usage of Mbox in handlers

* reorganize backends folder structure

* move mbox out of domain folder

* rename mbox entities

* improve mbox structure

* remove unused files, move smtp module

* improve envelope, impl get_envelopes for maildir

* link maildir mail entry id to envelope id

* use erased-serde to make backend get_mboxes return a trait object

* remove unused mbox files

* rename Output trait

* make get_envelopes return a trait object

* remove unused impl for imap envelope

* update backend return signature with Box

* replace impl from imap::Fetch to mailparse::ParsedMail

* split flags by backends

* remove unused flags from msg

* remove remaining flags from domain

* impl maildir copy and move, improve maildir e2e tests

* set up imap backend e2e tests

* move domain/msg to msg

* repair broken tests

* fix maildir envelopes encoding issues

* add date column to maildir envelopes

* implement maildir list pagination

* improve maildir subdir path management

* add pgp and maildir features to readme

* update changelog

* bump version v0.5.6
2022-02-22 16:54:39 +01:00
Clément DOUIN 585fa77af5
release v0.5.5 (#290)
* update main screenshot readme

* add contributing file

* update changelog

* doc: remove roadmap from reame

* improve main comments

* improve arg and handler logs

* fix multiple recipients issue (#288)

* add notify-query config option (#289)

* set up end-to-end encryption (#287)

* init basic pgp encrypt/decrypt

* add small rpgp poc for (#286)

* improve decrypt parts logs

* add pgp-decrypt-cmd to config

* add pgp-encrypt-cmd to config

* init pgp signature

* improve decrypt part readability

* improve encrypt multipart, remove sign

* remove unused md5 lib

* add encrypt arg to reply and forward commands

* fix typos

* prepare v0.5.5
2022-02-08 14:50:09 +01:00
Clément DOUIN 0e452d8a47
update readme badges 2022-02-04 00:23:02 +01:00
Clément DOUIN 9e320135ec
prepare cargo publishing 2022-02-03 15:54:57 +01:00
Clément DOUIN 8cdeba62a1
release v0.5.2 (#282)
* doc: fix blur in list msg screenshots (#181)

* fix a typo in mbox arg (#245)

`targetted` to `targeted` 👌🏻

* make inbox, sent and drafts folder customizable (#246)

* mbox: make inbox, sent and drafts folder customizable

* msg: update send handler parameters order

* vim: fix extracting message ids from list (#247)

The current method doesn't work because the list uses a fancy line
character (`│`) as the separator, not a regular pipe character (`|`).
Matching for the first number in the line instead solves the problem and
will continue to work regardless of what separator is used.

* add new line after printing strings (#251)

* init cargo workspace (#252)

* init cargo workspaces

* nix: fix assets path

* doc: update rtp vim plugin

* vim: add error message if loading vim plugin from vim/

* init sub crates (#253)

* init sub crates

* doc: update readme

* doc: improve main readme

* doc: add links, add missing crate task

* doc: update emojis

* update cargo lock

* implement contact completion with completefunc (#250)

This allows users to define a command for contact completion with
`g:himalaya_complete_contact_cmd` and trigger it with `<C-x><C-u>` when
writing an email.

* fix clippy lints (#255)

* revert cargo workspace feature

* fix nix run (#274)

* replace cargo2nix by naersk

* add rust-analyzer and rustfmt to nix build inputs

* remove wiki from git submodules, update changelog

* fix missing range when fetch fails, add more logs (#276)

* add missing fix in changelog

* remove blank lines and spaces from plain parts (#280)

* fix watch command (#271)

* remove also tabs from text parts (#280)

* pin native-tls minor version (#278)

* improve msg sanitization (#280)

* fix mbox vim plugin telescope preview (#249)

* bump version v0.5.2

* update changelog

Co-authored-by: Austin Traver <austintraver@gmail.com>
Co-authored-by: Jason Cox <dev@jasoncarloscox.com>
Co-authored-by: Gökmen Görgen <gkmngrgn@gmail.com>
Co-authored-by: Ethiraric <ethiraric@gmail.com>
2022-02-02 02:21:35 +01:00
Clément DOUIN f9775ae8af
doc: update project desc, bump version v0.5.1 2021-10-24 23:41:12 +02:00
rui 8e40cc3ddb
add homebrew release badge (#165)
* doc: add homebrew install

Signed-off-by: Rui Chen <rui@chenrui.dev>

* doc: add homebrew release badge

Signed-off-by: Rui Chen <rui@chenrui.dev>

* remove brew installation from README
2021-07-01 10:27:22 +02:00
Clément DOUIN f71720e6b9
refactor tpl system (#80) 2021-05-31 00:02:16 +02:00
Clément DOUIN 95f843f8b7
add github workflows badges in readme 2021-04-28 18:57:27 +02:00
Clément DOUIN 2eee484fea
update readme main img 2021-04-28 01:06:39 +02:00
Clément DOUIN cddb7bde37
refactor table system (#132)
* init table trait

* add shrink_col_index and max_width method to Table trait

* make unicodes work when shrinking

* improve readability of the table

* replace old table system with new one

* update changelog
2021-04-27 14:54:53 +02:00
Clément DOUIN cc1311c168
release v0.2.7 2021-04-24 23:49:42 +02:00
Axel Dahlberg 6284b0c5a6
improve signature and template management (#114)
* Added signature seperator option plus some refactoring

* Have add_content make newline seperation to headers

* Remove signature separator as a separate argument
2021-04-20 11:23:03 +02:00
Clément DOUIN 4af2b6a0ac
refactor readme + wiki (#110)
* make readme more concise

* update wiki

* update wiki links inside readme
2021-04-18 23:08:50 +02:00
Gregory Chamberlain 82ce67f572
improve portability of install.sh (#107)
* Replace echo with printf

The echo(1) command varies among sh implementations.  Some interpret
hyphen command-line options.

It would be unusual, but in theory if $PREFIX began with a hyphen or
two then this usage of echo might cause an error or unknown behaviour
in such implementations.

The printf(1) command is consistent across shell implementations.

* Leave privilege elevation to the user

* Add die function

* Break long line
2021-04-18 11:00:06 +02:00
Clément DOUIN c405280c92
update roadmap link readme 2021-04-18 00:29:45 +02:00
Sridhar Ratnakumar 76f9084f91
add nix support (#76)
* Add default.nix for nix support

* Convert to flake

* gitignore before building the source

* Add default.nix and shell.nix for legacy workflows

* Use https://github.com/oxalica/rust-overlay

This one works for development workflow, with a functional rust-analyzer for using with language server support in IDEs.

Also add .vscode/ for pre-configured settings.

* Add documentation

* Restore old TOC and apply TOC patch manually

* Clarify that these two commands are either-or

* Add installing from local checkout (nix-env)

* Add note about version update

* Improve Nix workflow, for zero maintenance

Use https://github.com/nmattia/naersk

This avoids having to set a sha and version in Nix scripts.

* Simplify using crate2nix

Ref: https://www.reddit.com/r/rust/comments/mmbfnj/nixifying_a_rust_project/

* Use rootCrate

* Propagate openssl deps to non-shell build

* Try the oxalica overlay

* Get rid of gitignore crate

cf. https://www.reddit.com/r/rust/comments/mmbfnj/nixifying_a_rust_project/gtsgxal/?context=3

* Configure himalaya crate under defaultCrateOverrides

* Specify openssl in buildInputs

* Make a note about a potential error when using Nix 2.4pre

* Remove PKG_CONFIG_PATH (unnecessary)

* Add cargo-watch

Co-authored-by: Alexander Bantyev <balsoft@balsoft.ru>

Co-authored-by: Alexander Bantyev <balsoft@balsoft.ru>
2021-04-18 00:06:11 +02:00
Clément DOUIN 9b303f144e
release v0.2.6 2021-04-17 00:09:06 +02:00
Clément DOUIN 1c6f249ca4
update sponsoring sections 2021-04-16 22:21:24 +02:00
Dario Vladović dd45b4bbc2
make install script posix compliant (#53)
* Make install script POSIX compliant

* Update installation docs

* make script more compact

Co-authored-by: Clément DOUIN <soywod@users.noreply.github.com>
2021-04-16 10:14:15 +02:00
Clément DOUIN aad74add52
make completion cmd a subcommand of shell args 2021-04-15 13:24:18 +02:00
remche 9287846aed
add completion subcommands (#99)
* add completion subcommands

* improve error mgmt, add entry to readme

Co-authored-by: Clément DOUIN <soywod@users.noreply.github.com>
2021-04-14 10:28:23 +02:00
Clément DOUIN e8ae4b025f
release v0.2.5 2021-04-12 00:21:08 +02:00
Clément DOUIN 062108039b
release v0.2.4 2021-04-09 00:51:39 +02:00
Clément DOUIN f26051685c
refactor output system (#74) 2021-04-09 00:15:16 +02:00
Clément DOUIN ebf1b854be
add silent flag (#74) 2021-04-08 18:44:31 +02:00
Clément DOUIN cd48879dc3
update vim plugin broken link in readme 2021-04-03 12:53:08 +02:00
Clément DOUIN c3e690d2b6
update vim doc 2021-04-03 12:30:18 +02:00
Clément DOUIN cbc74916a9
update doc/changelog about signature 2021-04-03 12:02:36 +02:00
Clément DOUIN 8d1f1e5ed1
add copy/move/delete features 2021-03-31 23:00:54 +02:00
Clément DOUIN 00086d52f5
add readme warning about production usage 2021-03-19 22:18:05 +01:00
Clément DOUIN 781c4a2722
rename idle notify cmd 2021-03-12 00:07:01 +01:00
Clément DOUIN 6e9e7cd30e
add idle mode 2021-03-11 17:22:16 +01:00
Clément DOUIN b2f1543bbf
remove wip tag from readme 2021-03-11 00:28:27 +01:00
Clément DOUIN b6cbfc26be
release v0.2.0 2021-03-10 23:08:31 +01:00
Clément DOUIN c24879c152
improve readme 2021-03-10 22:42:27 +01:00
Clément DOUIN 54612df215
add wip tag in readme 2021-03-05 10:38:35 +01:00
Clément DOUIN d928feefc8
fix typo reply all arg 2021-01-17 17:32:51 +01:00
Clément DOUIN c285b0d8a4
release v0.1.0 2021-01-17 17:28:28 +01:00
Clément DOUIN 308b74284f
improve readme 2021-01-17 17:07:23 +01:00
Clément DOUIN 84df58cf81
add json serializer lib (prepare #18) 2021-01-17 10:03:19 +01:00
Clément DOUIN 1536fdb894
implement download attachments feature 2021-01-15 12:21:07 +01:00
Clément DOUIN 6f7ee69cfe
update readme help section 2021-01-15 00:02:15 +01:00
Clément DOUIN b023704d31
add todos, update readme help text 2021-01-08 10:22:56 +01:00
Clément DOUIN 401b51a760
add wip tag to readme title 2021-01-03 23:21:25 +01:00
Clément DOUIN d94b86ca4e
add help entry to readme 2021-01-03 00:54:29 +01:00
Clément DOUIN 2a567040ac
set up imap connection 2020-12-25 22:39:16 +01:00
Clément DOUIN 37a78c3783
add changelog and license files 2020-12-25 00:36:24 +01:00