[autoconfig] Support Exchange as an alternative account type with other autodetection methods
Categories
(Thunderbird :: Account Manager, enhancement)
Tracking
(thunderbird_esr6069+ fixed, thunderbird_esr6869+ fixed, thunderbird69 fixed, thunderbird70 fixed)
People
(Reporter: neil, Assigned: neil)
References
Details
Attachments
(3 files, 12 obsolete files)
11.72 KB,
patch
|
BenB
:
review+
|
Details | Diff | Splinter Review |
11.78 KB,
patch
|
jorgk-bmo
:
approval-comm-beta+
jorgk-bmo
:
approval-comm-esr68+
|
Details | Diff | Splinter Review |
8.10 KB,
patch
|
jorgk-bmo
:
approval-comm-esr60+
|
Details | Diff | Splinter Review |
Currently the account creation wizard only supports Exchange accounts through the Exchange autodiscover routine.
- The code for reading config XML doesn't support Exchange
- The code for supporting alternatives assumes exactly one alternative
- The code for fetching addons assumes that Exchange is the default config
- The code for installing addons assumes that Exchange is the only config
Assignee | ||
Comment 1•5 years ago
|
||
The code for fetching addons when a found config includes Exchange is probably all wrong, but the rest probably isn't that bad.
Assignee | ||
Comment 2•5 years ago
|
||
Comment 3•5 years ago
|
||
Updated•5 years ago
|
Assignee | ||
Comment 4•5 years ago
|
||
(In reply to Ben Bucksch from comment #3)
Please list which cases you tested. Think about whether you forgot some.
Tested:
- Autoconfig finds IMAP via ISP XML is unaffected
- Autoconfig finds Exchange via autodiscover is unaffected
- Autoconfig finds both IMAP and Exchange via XML
- Tested choosing between IMAP and Exchange
- Tested changing choice because account verification failed
- Tested creating account of the other type after first choice failed
set
config.addons
before. Then you can do the same for both success and error.
In the error case, please log the error.
(... in which case it's no longer the same...)
Isn't there an useful array function to remove duplicates?
They're not duplicates in the normal sense of the word, they're distinct objects that duplicate a certain property value. Otherwise you could stick them into a Set.
Assignee | ||
Comment 5•5 years ago
|
||
Assignee | ||
Comment 6•5 years ago
|
||
Assignee | ||
Comment 7•5 years ago
|
||
Is PriorityOrderAbortable
notifying too much?
Comment 8•5 years ago
|
||
Comment 9•5 years ago
•
|
||
Assignee | ||
Comment 10•5 years ago
|
||
The least dissimilar function I could find was one that at least returned an array, so I put it there.
Comment 11•5 years ago
|
||
Updated•5 years ago
|
Comment 12•5 years ago
|
||
Target Milestone: The version when it lands.
Assignee | ||
Comment 13•5 years ago
|
||
(Need to figure out an issue where we're making multiple requests for the addons for some reason.)
Assignee | ||
Comment 14•5 years ago
|
||
Is this what you were looking for?
- The existing spinner functions all want to change the displayed string at the same time
- You can't remove the spinner after showing an error, because the attribute conflicts
Updated•5 years ago
|
Assignee | ||
Comment 15•5 years ago
|
||
(Previous two patches folded together)
Updated•5 years ago
|
Comment 16•5 years ago
|
||
Comment 17•5 years ago
|
||
@Neil: Please add HG header
Assignee | ||
Comment 18•5 years ago
|
||
Comment 19•5 years ago
|
||
Checkin needed?
Assignee | ||
Comment 20•5 years ago
|
||
(In reply to Jorg K from comment #19)
Checkin needed?
Just checking on whether we need 1572467 first.
Assignee | ||
Comment 21•5 years ago
|
||
... to avoid confusion with the existing support as an alternative discovery option.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 22•5 years ago
|
||
Assignee | ||
Updated•5 years ago
|
Comment 23•5 years ago
|
||
You guys are giving me a head-ache (every time) :-(
hg qimport bz:1571772 spits the dummy on that patch. You have a line that's 135 characters long and three linting issues:
$ ../mach eslint mail/components/
c:/mozilla-source/comm-central/comm/mail/components/accountcreation/content/emailWizard.js
854:79 error Multiple spaces found before '"imap"'. no-multi-spaces (eslint)
c:/mozilla-source/comm-central/comm/mail/components/accountcreation/content/exchangeAutoDiscover.js
313:5 error Function 'getAddonsList' expected no return value. consistent-return (eslint)
335:3 error Function 'getAddonsList' expected no return value. consistent-return (eslint)
? 3 problems (3 errors, 0 warnings)
Comment 24•5 years ago
|
||
It's so bad, I can't fix the inconsistent return values in getAddonsList(). While you're at it, do fix the long line with the double spaces before "imap".
Comment 25•5 years ago
|
||
if (!incoming) {
successCallback();
return new Abortable();
}
See a few lines down in the file (not visible in the patch), after calling errorCallback()
.
@Neil: Please provide diffs with 8 lines of context. Also, please run eslint before attaching patches.
Comment 26•5 years ago
•
|
||
@Neil: please check whether we're tripping the caller by calling successCallback/errorCallback before returning, instead of being async. Compare bug 1573564.
Comment 27•5 years ago
|
||
This should do then.
Comment 28•5 years ago
|
||
Oh, I see comment #26: More checking needed for the patch.
Assignee | ||
Comment 29•5 years ago
|
||
If you don't mind I'd prefer this version as it avoids unnecessarily changing line 841 of emailWizard.js
.
./mach eslint
errors out when I try it... I figured out I needed to limit it so as not to try to lint common/src/viewSource.xul
.
An error occurred running eslint. Please check the following error messages:
Error: ENOENT: no such file or directory, open '/home/neil/mozilla-central/comm/common/src/ubst @TOOLKIT_DIR@/content/editMenuKeys.inc.xul'
Assignee | ||
Comment 30•5 years ago
|
||
(In reply to Ben Bucksch from comment #26)
@Neil: please check whether we're tripping the caller by calling successCallback/errorCallback before returning, instead of being async. Compare bug 1573564.
In this case, the call is being moved to a new call site that used to be synchronous, so it doesn't mind, although I don't think the old site minds either.
Updated•5 years ago
|
Comment 31•5 years ago
|
||
Comment 32•5 years ago
|
||
Pushed by mozilla@jorgk.com:
https://hg.mozilla.org/comm-central/rev/f32c71c705f6
Support Exchange as an alternative account type for ISPDB. r=BenB
Assignee | ||
Comment 33•5 years ago
|
||
Comment 34•5 years ago
|
||
So that means that it needs a special beta patch, right? Can you supply it?
Comment 35•5 years ago
|
||
Hmm, I tried editing the patch and it still doesn't apply in mail/components/accountcreation/content/exchangeAutoDiscover.js. Maybe best left to the authors to make it fit.
BTW, we shipped TB 69 beta 3 today, so there won't be another beta for a few days.
Comment 36•5 years ago
|
||
Can you supply a patch that applies to beta please.
Comment 37•5 years ago
|
||
I've pinged "NeilAway" to awake him. :-P
@Jörg: We've requested ESR 68, not beta. Just to be sure we understand correctly: You need a beta patch first? For TB 69, not TB 70?
Comment 38•5 years ago
|
||
Umm, you requested beta: neil: approval-comm-beta?
As you know: Unless it's a) totally trivial, b) super-urgent (like a security fix) or c) and ugly regression where fixing it outweighs the risk, we run all uplifts on beta first before putting them into ESR.
Your patch here isn't one of a) b) or c) (same applies to bug 1572418 and bug 1572467) so according to current planning, they will take a spin on TB 69 beta 4 first before going onto TB 68.1 in September.
Of course it would be nice of the patches applied to beta and ESR and if they don't, please supply some that do.
Comment 39•5 years ago
|
||
Assignee | ||
Comment 40•5 years ago
|
||
(In reply to Jorg K (GMT+2) from comment #35)
Hmm, I tried editing the patch and it still doesn't apply in mail/components/accountcreation/content/exchangeAutoDiscover.js.
It turns out that the id change I mentioned also applied to some context. With that, the patch actually applies cleanly, although this is a rebased patch anyway because I was expecting a merge conflict.
Assignee | ||
Comment 41•5 years ago
|
||
(Ironically hg qpush would have worked if the patch had only had 3 lines of context...)
Comment 42•5 years ago
|
||
Comment 43•5 years ago
|
||
TB 69 beta 4:
https://hg.mozilla.org/releases/comm-beta/rev/ea35b787e55b464c5617f4f412a57dd78d801660
You'll request ESR approval here and in the other two bugs, right?
Comment 44•5 years ago
|
||
Hi Jörg, I guess given that TB 68 isn't released yet, I considered TB 68 to be the "beta". But:
- trunk = 70
- beta = 69
- RC = 68
- release = 60
Is that right?
We definitely need all these patches in TB 68.0, and would like to backport them to 60, too. Yes, we'll request ESR approval.
Updated•5 years ago
|
Comment 45•5 years ago
|
||
I think the TB 60 ship has sailed. Do these patches even vaguely apply? I haven't tried. I'm not so keen pushing something like this into the very last TB 60.x which is TB 60.9.
Assignee | ||
Comment 46•5 years ago
|
||
(In reply to Jorg K (GMT+2) from comment #45)
I think the TB 60 ship has sailed. Do these patches even vaguely apply? I haven't tried. I'm not so keen pushing something like this into the very last TB 60.x which is TB 60.9.
It applies for a large enough value of vaguely
i.e. a diff -U 3 patch applies with fuzz.
Assignee | ||
Comment 47•5 years ago
|
||
Updated•5 years ago
|
Updated•5 years ago
|
Comment 48•5 years ago
|
||
I'm willing to uplift this to TB 60.9 if you promise to test the hell out of TB 69 beta 4:
http://ftp.mozilla.org/pub/thunderbird/candidates/69.0b4-candidates/build1/
I don't want any trouble in account creation in the last TB 60.x in the cycle.
Assignee | ||
Comment 49•5 years ago
|
||
(In reply to Jorg K from comment #48)
I'm willing to uplift this to TB 60.9 if you promise to test the hell out of TB 69 beta 4:
http://ftp.mozilla.org/pub/thunderbird/candidates/69.0b4-candidates/build1/
I don't want any trouble in account creation in the last TB 60.x in the cycle.
Couldn't find anything wrong in the Thunderbird end, although Owl doesn't like the fact that Microsoft has two OWA servers.
Assignee | ||
Comment 50•5 years ago
|
||
(The distinction doesn't matter when using Exchange autodiscover, but other methods can't readily distinguish between the two.)
Updated•5 years ago
|
Comment 51•5 years ago
|
||
TB 68.1 ESR:
https://hg.mozilla.org/releases/comm-esr68/rev/2f10eda9d3a70a2d15a19ce80a066c7e7a0e3459
Updated•5 years ago
|
Comment 52•5 years ago
|
||
TB 60.9 ESR:
https://hg.mozilla.org/releases/comm-esr60/rev/4e2ee80b276f82780e2650fe7b08b06491344182
Updated•5 years ago
|
Comment 53•5 years ago
•
|
||
Neil verified with a local config file:
- TB 68.1 candidate build 1 (with this change): works as expected and offers Exchange, IMAP and POP3 configs.
- TB 60.8 (without this change): ignores the new option and shows IMAP and POP3 configs as before.
- TB 60.9 (with this change): still building
Description
•