-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow handle_EHLO to change the responses to EHLO #157
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've finally found time to jump back in the saddle here!
I really like this PR and I think it's shaping up to be the right thing. My other comments mentioned some other changes that I'd like to see, but if we could get some tests and docs updated, I think that this PR would be great!
Codecov Report
@@ Coverage Diff @@
## master #157 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 5 5
Lines 1100 1121 +21
Branches 197 201 +4
=========================================
+ Hits 1100 1121 +21
Continue to review full report at Codecov.
|
Okay I'm really thinking about backward compatibility here... Current behavior is that Changing this behavior will break code that expects that behavior. So I will implement the following strategy: Depending on the signature of the
|
Changing this to draft because there are some behavior that might break existing code. Will undraft after I implement backward-compatibility workarounds. |
The older behavior has been documented. Existing code that relies on the older behavior will break if backward-compatibility logic is not implemented. This workaround has been documented in handlers.rst
I will undraft this after testing on my test systems. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just one question but not a blocker. I like the backwards compatibility here - I think we should plan on doing a deprecation/warning introduction release regularly, like maybe once per year or something. But that's orthogonal to this PR 🙃
Also explaining the effect of setting host_name to false-y in the documentation.
Also do optional-import of colorama in conf.py Plus rewriting many os.path things into pathlib.Path things to guarantee cross-platform compatibility.
Currently doing testing on my test systems:
(BTW, these tests are running against commit a0f963b [see below] ... I just forgot to push to cnicodeme's branch) |
This pull request introduces 1 alert when merging a0f963b into 6c8fdbc - view on LGTM.com new alerts:
|
Huh? I thought I've removed that line? Oh well, here's to another edit-commit-push-check. |
Had this not been excluded, "qa" would catch the unused import there. Why it was excluded, I do not know ... after all, running qa on conf.py passes with flying colors...
All my tests passed, I'm Undrafting this. |
Whoops, there are some conflicts. Redrafting while I fix those. |
# Conflicts: # aiosmtpd/smtp.py
Because this is milestoned for 1.3 I want to close 1.2.x line by mid-2021-01
Because of the major merging, I'm rerunning my tests Progress:
|
Ugh, finally FreeBSD testing is complete. I don't know why but my FreeBSD VM seems to ... degrade? It usually finishes in an acceptable time without much fuss, but now it runs really slowly I had to add another core ... and I get intermittent failures due to timeouts. I'll undraft this and open this for review. |
] | ||
# for actual, expected in zip(lines, expecteds): | ||
# self.assertEqual(actual, expected) | ||
self.assertEqual(expecteds, actuals) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Better to compare whole-list against whole-list, to see where we went wrong.
@@ -74,7 +75,6 @@ deps: | |||
{[qadocs]deps} | |||
|
|||
[flake8] | |||
exclude = conf.py |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do not exclude conf.py
se we can catch possible problems.
tox.ini
Outdated
@@ -54,6 +54,7 @@ passenv = | |||
basepython = python3 | |||
envdir = {toxworkdir}/python3 | |||
deps = | |||
colorama |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Small test-dep, really helpful for parsing the reams of output.
If no objections within 2x24 I'll squamerge this 😄 |
# Conflicts: # aiosmtpd/docs/NEWS.rst # aiosmtpd/smtp.py # conf.py
This pull request introduces 1 alert when merging a682b4a into 9432d76 - view on LGTM.com new alerts:
|
Oh fer cryin' out loud ... |
# Conflicts: # aiosmtpd/smtp.py
# Conflicts: # aiosmtpd/smtp.py
Carrying out final verification, just in case merging with master causes problems:
(On commitpush, this PR's 'new' GA yml [adopted from #202 ] will test on Ubuntu-{18,20}.4, MacOS, and Windows Server.) This post is undergoing editing |
Reasons: 1. I'm going to drop my Ubuntu-on-VBox testing systems 2. I can't test on MacOs, GA can
Don't worry, PLATFORM==linux is not used anywhere in the code.
All 24 checks passed. Marinating this for 2x24, then squamerge. |
Closes #155