Comments (4)
@kbingham you can follow the above arguments and make a PR to change the default if the setting is not present in the config file. I will close this as @sthesing said but you can still pursue this if you want.
@sthesing the spec file is not specific to python, it is specific to the config parsing library we are using. It is used to validate the config file. The file extension is arbitrary, the syntax is the same as for the config file (similar as you can write json specs in json).
from alot.
I understand the general idea and I think you can open a PR to change the message ID to include the sending email address after the random string. I do not see a reason why the change you describe should be problematic. In the best case it can conceal your hostname (some additional information that might otherwise not be present in the mail).
technical sidenotes:
I can however not observe the format of the message ID you describe: my IDs end in @localhost
even though hostname
tells me my computer is called differently. But in my /etc/hosts I have
127.0.0.1 localhost
::1 localhost
No idea why your computer generates this message ID. I did not yet check the code.
I also read the RFC differently. I think you refer to this sentence:
The uniqueness of the message identifier is guaranteed by the host which generates it.
But how can one host guarantee uniqueness across all messages that are generated globally? That is theoretically impossible, so I understand this as "the uniqueness (among all messages generated by this host) of the message identifier ...".
You are of course right that appending the host name only helps to generate uniqueness if every computer has a unique hostname. And this is not true for personal computers today.
I would however argue that the uniqueness is only needed in a practical sense and the current scheme is as effective as the proposed.
from alot.
I understand the general idea and I think you can open a PR
I fear my Python skills aren't sufficient to do just that. I did have a look at the code, though and found the following:
- the id is set in the function
construct_mail
in alot/db/envelope.py - the local hostname is the default setting of the Python email.utils.make_msgid
- said default becomes active because the constructor of the class
Account
setsNone
as the default for its attributemessage_id_domain
. So I guess that would be the place to change things.
There is also the file defaults/alot.rc.spec
. I have no idea what *.spec
files do. As I said, my Python is limited.
The message_id_domain
attribute made me aware of something that I had overlooked in the user guide and that's a perfect workaround.
Workaround
In your alot config file add
message_id_domain = example.com
to your settings for each account, replace example.com
as needed.
Sorry I overlooked that. As far as I'm concerned as a user, this issue can be closed.
from alot.
Aha, the message_id_domain is something I'd missed to and wanted to stop my hostname being included in my outgoing mails.
Couldn't this could be generated from the domain name of the outgoing FROM: header though?
from alot.
Related Issues (20)
- Not compatible with notmuch2 0.35 bindings HOT 15
- Act on multiple threads in search mode HOT 3
- Unknown values were found in config
- please make `get_body_text` more robust HOT 1
- prompt before overwriting files when saving attachments HOT 1
- ` extract_body_part` can receive empty strings and throws exceptions when it does
- Crash while trying to attach word .doc file: module 'magic' has no attribute '_libraries HOT 3
- Sort oldest first by newest email in thread HOT 1
- LookupError when displaying inbox with notmuch backend HOT 1
- Use Github Actions HOT 4
- would it be ok to convert installer to poetry ? HOT 3
- Switch from gpg to python-gnupg HOT 14
- mailcap is deprecated in Python 3.11 and will be removed in 3.13 HOT 1
- Default theme should always be readable HOT 1
- Option --all of tagging commands should apply to matched messages only HOT 7
- Startup very slow on master (due to "lazy thread lookup" fix)
- mailcap module will be removed in 3.13 HOT 2
- magic package HOT 3
- flake / poetry / pip clarification and cleanups? HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from alot.