ExchangeCalendar / exchangecalendar

Exchange Calendar, Tasks, Contacts provider for Mozilla Thunderbird
GNU General Public License v3.0
677 stars 58 forks source link

#277 Compatibility with thunderbird 68 #309

Closed meldafert closed 4 years ago

meldafert commented 4 years ago

since #304 does not appear to be progressing, and i had interest in doing this port, i decided to create my own PR.

nopeppermint commented 4 years ago

i just tried this PR on Linux Mint 19.2 with Thunderbird 68.2.1 (64-bit) and I can not add an existing Exchange Calendar to my Thunderbird with this..

lrst commented 4 years ago

Same here (Ubuntu 18.0.4, Thunderbird 68.2.1, 64 bits) : the screen allowing to enter AD/Exchange settings («Paramètres Windows Active Directory / Exchange» in french) is empty. When I click next, it says the agenda has been created, but it hadn't.

Not sure if it can help, but this is the content of the error console :

this.browser is null ext-mail.js:804
Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined
Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3
DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21
exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22
_fireEvent@chrome://global/content/bindings/wizard.xml:413:26
set_currentPage@chrome://global/content/bindings/wizard.xml:89:16
advance@chrome://global/content/bindings/wizard.xml:282:15
wizard_XBL_Constructor@chrome://global/content/bindings/wizard.xml:197:14
Line: 83, column: 3 ThreadSafeDevToolsUtils.js:90:13
No chrome package registered for chrome://gdata-provider/content/gdata-calendar-creation.js 2
Error opening input stream (invalid filename?): chrome://gdata-provider/content/gdata-calendar-creation.js Overlays.jsm:568
TypeError: this._searchIcons is undefined search-textbox.js:183:9
Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined
Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3
DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21
exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22
_fireEvent@chrome://global/content/bindings/wizard.xml:413:26
set_currentPage@chrome://global/content/bindings/wizard.xml:89:16
advance@chrome://global/content/bindings/wizard.xml:282:15
connectedCallback/listeners<@chrome://global/content/elements/wizard.js:50:49
Line: 83, column: 3 2 ThreadSafeDevToolsUtils.js:90:13
TypeError: gCalendar is null lightning-utils.js:28:30
this.browser is null ext-mail.js:804
Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined
Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3
DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21
exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22
_fireEvent@chrome://global/content/bindings/wizard.xml:413:26
set_currentPage@chrome://global/content/bindings/wizard.xml:89:16
advance@chrome://global/content/bindings/wizard.xml:282:15
connectedCallback/listeners<@chrome://global/content/elements/wizard.js:50:49
Line: 83, column: 3 ThreadSafeDevToolsUtils.js:90:13
TypeError: gCalendar is null calendarCreation.js:224:3
Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined
Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3
DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21
exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22
_fireEvent@chrome://global/content/bindings/wizard.xml:413:26
set_currentPage@chrome://global/content/bindings/wizard.xml:89:16
advance@chrome://global/content/bindings/wizard.xml:282:15
connectedCallback/listeners<@chrome://global/content/elements/wizard.js:50:49
Line: 83, column: 3 ThreadSafeDevToolsUtils.js:90:13
this.browser is null ext-mail.js:804
meldafert commented 4 years ago

Thank you for your tests. This PR is a work in progress, i am aware that it is still not possible to add calendars/the extension is far from being usable. See: https://github.com/ExchangeCalendar/exchangecalendar/issues/277#issuecomment-558502637

meldafert commented 4 years ago

This extension currently requires Provider for Google Calendar to work. It appears as this was included in either Thunderbird or Lightning in previous versions, but no longer is.

lrst commented 4 years ago

You're right, that's better : the configuration windows appears now.

elhennig commented 4 years ago

I can't install the xpi in TB 68.2.1, there is no error popping up.

survient commented 4 years ago

Having similar experience here. After installing Google Calendar I get the config window option but when I try to add a calendar nothing appears: ` 1575301111006 addons.xpi-utils WARN addMetadata: Add-on {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} is invalid: Error: File /usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} does not contain a valid manifest(resource://gre/modules/addons/XPIInstall.jsm:666:11) JS Stack trace: loadManifest@XPIInstall.jsm:666:11 awaitPromise@XPIProvider.jsm:228:15 syncLoadManifest@XPIInstall.jsm:746:22 addMetadata@XPIDatabase.jsm:2711:32 processFileChanges@XPIDatabase.jsm:3152:26 getNewSideloads@XPIProvider.jsm:2982:28 1575301111006 addons.xpi-utils WARN Not uninstalling invalid item because it is a proxy file No chrome package registered for chrome://browser/skin/identity-icon.svg Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3 DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21 exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22 _fireEvent@chrome://global/content/bindings/wizard.xml:413:26 set_currentPage@chrome://global/content/bindings/wizard.xml:89:16 advance@chrome://global/content/bindings/wizard.xml:282:15 wizard_XBL_Constructor@chrome://global/content/bindings/wizard.xml:197:14 Line: 83, column: 3 ThreadSafeDevToolsUtils.js:90:13 gdataSessionPage is null gdata-calendar-creation.js:248

chrome://gdata-provider/content/gdata-calendar-creation.js:248 chrome://gdata-provider/content/gdata-calendar-creation.js:258 loadScript resource:///modules/Overlays.jsm:566 load resource:///modules/Overlays.jsm:231 load resource:///modules/Overlays.jsm:48 observe chrome://messenger/content/parent/ext-legacy.js:229 this._searchIcons is undefined 2 search-textbox.js:183 set value chrome://global/content/elements/search-textbox.js:183 _doRadioExchangeCalendar chrome://exchangecalendar/content/ecCalendarCreation.js:98 _doRadioExchangeCalendar self-hosted:1009 chrome://gdata-provider/content/gdata-calendar-creation.js:87 x resource://gdata-provider/modules/gdataUtils.jsm:1346 self-hosted:1009 chrome://gdata-provider/content/gdata-calendar-creation.js:87 x resource://gdata-provider/modules/gdataUtils.jsm:1346 onselect chrome://calendar/content/calendarCreation.xul:1 set selectedItem chrome://global/content/elements/radio.js:299 set selectedIndex chrome://global/content/elements/radio.js:256 init chrome://global/content/elements/radio.js:165 connectedCallback chrome://global/content/elements/radio.js:147 chrome://global/content/customElements.js:219 TypeError: this._searchIcons is undefined search-textbox.js:183:9 set value chrome://global/content/elements/search-textbox.js:183 _doRadioExchangeCalendar chrome://exchangecalendar/content/ecCalendarCreation.js:98 _doRadioExchangeCalendar self-hosted:1009 chrome://gdata-provider/content/gdata-calendar-creation.js:87 x resource://gdata-provider/modules/gdataUtils.jsm:1346 self-hosted:1009 chrome://gdata-provider/content/gdata-calendar-creation.js:87 x resource://gdata-provider/modules/gdataUtils.jsm:1346 onselect chrome://calendar/content/calendarCreation.xul:1 set selectedItem chrome://global/content/elements/radio.js:299 set selectedIndex chrome://global/content/elements/radio.js:256 init chrome://global/content/elements/radio.js:165 connectedCallback chrome://global/content/elements/radio.js:147 chrome://global/content/customElements.js:219 Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3 DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21 exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22 _fireEvent@chrome://global/content/bindings/wizard.xml:413:26 set_currentPage@chrome://global/content/bindings/wizard.xml:89:16 advance@chrome://global/content/bindings/wizard.xml:282:15 connectedCallback/listeners<@chrome://global/content/elements/wizard.js:50:49 Line: 83, column: 3 2 ThreadSafeDevToolsUtils.js:90:13 reportException resource://devtools/shared/ThreadSafeDevToolsUtils.js:90 makeInfallible resource://devtools/shared/ThreadSafeDevToolsUtils.js:117 _fireEvent chrome://global/content/bindings/wizard.xml:413 set_currentPage chrome://global/content/bindings/wizard.xml:89 advance chrome://global/content/bindings/wizard.xml:282 listeners chrome://global/content/elements/wizard.js:50 TypeError: gCalendar is null lightning-utils.js:28:30 ltnInitMailIdentitiesRow chrome://lightning/content/lightning-utils.js:28 initCustomizePage chrome://lightning/content/lightning-calendar-creation.js:15 initCustomizePage chrome://lightning/content/caldav-lightning-calendar-creation.js:13 _fireEvent chrome://global/content/bindings/wizard.xml:413 set_currentPage chrome://global/content/bindings/wizard.xml:89 advance chrome://global/content/bindings/wizard.xml:282 listeners chrome://global/content/elements/wizard.js:50 Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3 DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21 exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22 _fireEvent@chrome://global/content/bindings/wizard.xml:413:26 set_currentPage@chrome://global/content/bindings/wizard.xml:89:16 advance@chrome://global/content/bindings/wizard.xml:282:15 connectedCallback/listeners<@chrome://global/content/elements/wizard.js:50:49 Line: 83, column: 3 ThreadSafeDevToolsUtils.js:90:13 reportException resource://devtools/shared/ThreadSafeDevToolsUtils.js:90 makeInfallible resource://devtools/shared/ThreadSafeDevToolsUtils.js:117 _fireEvent chrome://global/content/bindings/wizard.xml:413 set_currentPage chrome://global/content/bindings/wizard.xml:89 advance chrome://global/content/bindings/wizard.xml:282 listeners chrome://global/content/elements/wizard.js:50 TypeError: gCalendar is null calendarCreation.js:224:3 doCreateCalendar chrome://calendar/content/calendarCreation.js:224 doCreateCalendar chrome://lightning/content/lightning-calendar-creation.js:20 doCreateCalendar chrome://lightning/content/caldav-lightning-calendar-creation.js:18 _fireEvent chrome://global/content/bindings/wizard.xml:413 advance chrome://global/content/bindings/wizard.xml:255 listeners chrome://global/content/elements/wizard.js:50 Handler function DebuggerProgressListener.prototype.onWindowCreated threw an exception: TypeError: window is undefined Stack: getWindowID@resource://devtools/server/actors/targets/browsing-context.js:83:3 DebuggerProgressListener.prototype.onWindowCreated<@resource://devtools/server/actors/targets/browsing-context.js:1661:21 exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:111:22 _fireEvent@chrome://global/content/bindings/wizard.xml:413:26 set_currentPage@chrome://global/content/bindings/wizard.xml:89:16 advance@chrome://global/content/bindings/wizard.xml:282:15 connectedCallback/listeners<@chrome://global/content/elements/wizard.js:50:49 Line: 83, column: 3 ThreadSafeDevToolsUtils.js:90:13 `
iceburn-pt commented 4 years ago

I can't install on TB 68.3.1. It just says it can't be installed in this version.

Manuelraa commented 4 years ago

Any updates @meldafert ? :)

meldafert commented 4 years ago

Due to time constraints and me being only able to test on a single hosted server, but not on office365 or other possible configurations, i will not continue working on this. Also, even if i get it running on TB 68, TB 78 will just drop support for Legacy Extensions altogether, making this work meaningless. I have for the time being resorted to just using the web interface, as much as it sucks. If anyone is willing to continue this, i am open to give them directions on where i think this needs to be headed - namely reimplementing this extension from scratch as a WebExtension and making heavy use of WebExtension Experiments.

jamesquilty commented 4 years ago

@meldafert I think it would be a shame if what you learned in your efforts on this PR was lost. Are you in a position to document what you've done? Can we use the wiki to collate and coordinate this, perhaps?