These are the sources for the Provider for Google Calendar.
The Provider for Google Calendar is written as a WebExtension, which means most of the code is very familiar to (vanilla) website development with a few additional APIs to call.
Additionally, it uses an experimental API to provide calendaring functionality which hopefully will
become part of Thunderbird. Ideally you do not have to touch anything in the src/experiments/ or src/legacy/
directories. If you do need to touch src/experiments/calendar, then please send a pull request to
https://github.com/thunderbird/webext-experiments in addition.
Tests are written with jest and use a custom mock for the WebExtensions API.
$ npm run testYou should also run the linters. This will run eslint and check your commit messages. Please format your messages according to conventional commits:
$ npm run lintYou can then run the build step to package the xpi in dist/gdata-provider.xpi
$ npm run build This project uses Weblate for its translations, you can contribute by visiting https://hosted.weblate.org/engage/provider-for-google-calendar/
Weblate is a continuous localization platform used by over 2,500 libre software projects. Learn more about Weblate at https://weblate.org/
First of all, make sure you are using the latest version of the Provider for Google Calendar.
For debugging, please enable calendar.debug.log and calendar.debug.log.verbose in the advanced
config editor (Options > Advanced > General > Config Editor) and check the logs in the error console
(Tools > Error Console) to see what is happening when your error occurs.
Please check the FAQ to see if your question may already be answered. If you have a support question, please visit the support forum.
If you are unsure if it is a bug, please use the discussions first, otherwise you can file an issue.