mirror of
https://github.com/ProtonMail/proton-bridge.git
synced 2025-12-10 12:46:46 +00:00
Compare commits
55 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f18dcf9db3 | |||
| 44f8a49b47 | |||
| 2f149eb545 | |||
| 175f0977f9 | |||
| 8fe042218c | |||
| 9fe3718d3f | |||
| 1839f072b4 | |||
| a2cf1b6022 | |||
| 0a4fb4594a | |||
| eb1176eba6 | |||
| a89dfc4524 | |||
| 1ba378dace | |||
| 25c1014ab0 | |||
| 363f553d3c | |||
| 36a6f1ed4b | |||
| 7b112fc448 | |||
| 2a0052dda6 | |||
| a7b32e1330 | |||
| 5adfdc19aa | |||
| 351c86ee7a | |||
| dce7888408 | |||
| a2d99fa6b7 | |||
| 79465571d7 | |||
| 9d576beeb8 | |||
| e3332d1cb6 | |||
| f59f68f894 | |||
| 9c881a02d6 | |||
| 7b21c2d734 | |||
| 9fdc5960bf | |||
| fe853efe32 | |||
| 9b82c03959 | |||
| 914d1b27b5 | |||
| f295d03641 | |||
| 8515f6e6ac | |||
| 4d330e24c1 | |||
| a7a52bc57e | |||
| 3cef7985d3 | |||
| 40db822450 | |||
| 2de202ca02 | |||
| 38eb9fdac7 | |||
| f469d34781 | |||
| 33dfc5ce09 | |||
| 2100e2ff7c | |||
| e9b7cce138 | |||
| 6877a5a15d | |||
| 64206e69bd | |||
| 7643c76cb1 | |||
| b0f59273d3 | |||
| af8eb9d37d | |||
| 635e51f32f | |||
| ca962ce5ad | |||
| a50266cdc0 | |||
| 6230200218 | |||
| f96cd167ef | |||
| d043cb9086 |
@ -1,4 +1,4 @@
|
|||||||
image: gitlab.protontech.ch:4567/go/bridge-internal
|
image: gitlab.protontech.ch:4567/go/bridge-internal:latest
|
||||||
|
|
||||||
before_script:
|
before_script:
|
||||||
- eval $(ssh-agent -s)
|
- eval $(ssh-agent -s)
|
||||||
@ -44,7 +44,9 @@ lint:
|
|||||||
only:
|
only:
|
||||||
- branches
|
- branches
|
||||||
script:
|
script:
|
||||||
- make lint
|
- env GOMAXPROCS=$(( ${CI_TAG_CPU} / 2 )) make lint
|
||||||
|
tags:
|
||||||
|
- medium
|
||||||
|
|
||||||
test:
|
test:
|
||||||
stage: test
|
stage: test
|
||||||
@ -60,6 +62,8 @@ test:
|
|||||||
- pass init `gpg --list-keys | grep "^ " | tail -1 | tr -d '[:space:]'`
|
- pass init `gpg --list-keys | grep "^ " | tail -1 | tr -d '[:space:]'`
|
||||||
# Then finally run the tests
|
# Then finally run the tests
|
||||||
- make test
|
- make test
|
||||||
|
tags:
|
||||||
|
- medium
|
||||||
|
|
||||||
test-integration:
|
test-integration:
|
||||||
stage: test
|
stage: test
|
||||||
@ -67,6 +71,8 @@ test-integration:
|
|||||||
- branches
|
- branches
|
||||||
script:
|
script:
|
||||||
- VERBOSITY=debug make -C test test
|
- VERBOSITY=debug make -C test test
|
||||||
|
tags:
|
||||||
|
- large
|
||||||
|
|
||||||
dependency-updates:
|
dependency-updates:
|
||||||
stage: test
|
stage: test
|
||||||
@ -85,6 +91,8 @@ dependency-updates:
|
|||||||
# Note: The latest artifacts for refs are locked against deletion, and kept regardless of the expiry time.
|
# Note: The latest artifacts for refs are locked against deletion, and kept regardless of the expiry time.
|
||||||
# Introduced in GitLab 13.0 behind a disabled feature flag, and made the default behavior in GitLab 13.4.
|
# Introduced in GitLab 13.0 behind a disabled feature flag, and made the default behavior in GitLab 13.4.
|
||||||
expire_in: 1 day
|
expire_in: 1 day
|
||||||
|
tags:
|
||||||
|
- large
|
||||||
|
|
||||||
build-linux:
|
build-linux:
|
||||||
extends: .build-base
|
extends: .build-base
|
||||||
|
|||||||
22
BUILDS.md
22
BUILDS.md
@ -13,7 +13,16 @@ To enable the sending of crash reports using Sentry please set the
|
|||||||
Otherwise, the sending of crash reports will be disabled.
|
Otherwise, the sending of crash reports will be disabled.
|
||||||
|
|
||||||
## Build
|
## Build
|
||||||
* for Windows please unset the `MSYSTEM` variable
|
In order to build Bridge or Import-Export app with Qt interface we are using
|
||||||
|
[Qt Go Binding](https://github.com/therecipe/qt). The dependencies and
|
||||||
|
installation of this tool is part of `make build` target. If you have issues
|
||||||
|
with installation of therecipe/qt we recommend to follow [this
|
||||||
|
wiki](https://github.com/therecipe/qt/wiki/Installation-on-Linux)
|
||||||
|
|
||||||
|
Please note that `$(go env GOPATH)/bin` must be in your `PATH` to ensure
|
||||||
|
binaries installed by `therecipe/qt` (such as `qtdeploy`) are found. Also,
|
||||||
|
before you start build **on Windows**, please unset the `MSYSTEM` variable
|
||||||
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
export MSYSTEM=
|
export MSYSTEM=
|
||||||
@ -31,6 +40,17 @@ make build
|
|||||||
* for `windows`, the binary will have the file extension `.exe` (e.g `proton-bridge.exe`)
|
* for `windows`, the binary will have the file extension `.exe` (e.g `proton-bridge.exe`)
|
||||||
* for `darwin`, the application will be created with name of the project directory (e.g `proton-bridge.app`)
|
* for `darwin`, the application will be created with name of the project directory (e.g `proton-bridge.app`)
|
||||||
|
|
||||||
|
#### Build Bridge without GUI
|
||||||
|
* If you need to build bridge without Qt dependencies, you can do so by running
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make build-nogui
|
||||||
|
```
|
||||||
|
|
||||||
|
* Bridge without GUI will start by default without any interface (i.e., there is no way to add or remove client, get bridge password, etc)
|
||||||
|
* Bridge always has the option (whether built with Qt or without) to use a CLI interface by starting it with the argument `-c`
|
||||||
|
* NOTE: You still need to setup supported keychain on your system
|
||||||
|
|
||||||
### Build Import-Export
|
### Build Import-Export
|
||||||
* in project root run
|
* in project root run
|
||||||
|
|
||||||
|
|||||||
@ -41,7 +41,6 @@ ProtonMail Bridge includes the following 3rd party software:
|
|||||||
* [imap-appendlimit](https://github.com/emersion/go-imap-appendlimit) | Available under [license](https://github.com/emersion/go-imap-appendlimit/blob/master/LICENSE)
|
* [imap-appendlimit](https://github.com/emersion/go-imap-appendlimit) | Available under [license](https://github.com/emersion/go-imap-appendlimit/blob/master/LICENSE)
|
||||||
* [imap-idle](https://github.com/emersion/go-imap-idle) | Available under [license](https://github.com/emersion/go-imap-idle/blob/master/LICENSE)
|
* [imap-idle](https://github.com/emersion/go-imap-idle) | Available under [license](https://github.com/emersion/go-imap-idle/blob/master/LICENSE)
|
||||||
* [imap-quota](https://github.com/emersion/go-imap-quota) | Available under [license](https://github.com/emersion/go-imap-quota/blob/master/LICENSE)
|
* [imap-quota](https://github.com/emersion/go-imap-quota) | Available under [license](https://github.com/emersion/go-imap-quota/blob/master/LICENSE)
|
||||||
* [imap-specialuse](https://github.com/emersion/go-imap-specialuse) | Available under [license](https://github.com/emersion/go-imap-specialuse/blob/master/LICENSE)
|
|
||||||
* [sasl](https://github.com/emersion/go-sasl) | Available under [license](https://github.com/emersion/go-sasl/blob/master/LICENSE)
|
* [sasl](https://github.com/emersion/go-sasl) | Available under [license](https://github.com/emersion/go-sasl/blob/master/LICENSE)
|
||||||
* [smtp](https://github.com/emersion/go-smtp) | Available under [license](https://github.com/emersion/go-smtp/blob/master/LICENSE)
|
* [smtp](https://github.com/emersion/go-smtp) | Available under [license](https://github.com/emersion/go-smtp/blob/master/LICENSE)
|
||||||
* [textwrapper](https://github.com/emersion/go-textwrapper) | Available under [license](https://github.com/emersion/go-textwrapper/blob/master/LICENSE)
|
* [textwrapper](https://github.com/emersion/go-textwrapper) | Available under [license](https://github.com/emersion/go-textwrapper/blob/master/LICENSE)
|
||||||
222
Changelog.md
222
Changelog.md
@ -2,10 +2,62 @@
|
|||||||
|
|
||||||
Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
||||||
|
|
||||||
|
## [Bridge 1.5.6] Golden Gate
|
||||||
|
|
||||||
|
### Added
|
||||||
|
* GODT-797 EXPUNGE waits for APPEND to prevent data loss when Outlook moves from Spam to Inbox
|
||||||
|
|
||||||
|
|
||||||
|
## [Bridge 1.5.5] Golden Gate
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
* GODT-922 Fix panic during restarting the bridge.
|
||||||
|
* GODT-945 Fix panic in integration tests caused by concurrent map writes.
|
||||||
|
* GODT-732 Fix usage of fontawesome.
|
||||||
|
* GODT-951 Properly parse message with long lines in header and long header split to multiple lines (upgrading to latest go-message).
|
||||||
|
* GODT-894 Fix panic when sending while account is logging in.
|
||||||
|
* GODT-858 Bump go-rfc5322 dependency to v0.5.0 to handle some invalid RFC5322 groups and add support for semicolon delimiter in address-list.
|
||||||
|
* GODT-923 Fix listener locking.
|
||||||
|
* GODT-389 Prefer `From` header instead of `MAIL FROM` address.
|
||||||
|
* GODT-898 Only set ContentID for inline attachments.
|
||||||
|
* GODT-773 Replace `INTERNALDATE` older than birthday of RFC822 by birthday of RFC822 to not crash Apple Mail.
|
||||||
|
* GODT-927 Avoid to call API with empty label name.
|
||||||
|
* GODT-915 Bump go-imap dependency and remove go-imap-specialuse dependency.
|
||||||
|
|
||||||
|
## [Bridge 1.5.4] Golden Gate
|
||||||
|
|
||||||
|
### Added
|
||||||
|
* Log warning about permanently deleting messages.
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
* License path on Arch and Windows.
|
||||||
|
|
||||||
|
## [Bridge 1.5.3] Golden Gate [Import-Export 1.2.3] Elbe
|
||||||
|
|
||||||
|
### Added
|
||||||
|
* GODT-906 Handle RFC2047-encoded content transfer encoding values.
|
||||||
|
* GODT-887 Make supports build with native Qt.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
* GODT-893 Bump go-rfc5322 dependency to v0.2.1 to properly detect syntax errors during parsing.
|
||||||
|
* GODT-892 Swap type and value from sentry exception and cut panic handlers from the traceback.
|
||||||
|
* GODT-854 EXPUNGE and FETCH unilateral responses are returned before OK EXPUNGE or OK STORE, respectively.
|
||||||
|
* #109 Renamed COPYING.md to not be read by [pkg-go-dev](https://pkg.go.dev/license-policy).
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
* GODT-651 Build creates proper binary names.
|
||||||
|
* GODT-148 Allow import (using the Import-Export app) of already encrypted messages as is.
|
||||||
|
* GODT-202 Update to latest go-smtp.
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
* GODT-135 Support parameters in SMTP `FROM MAIL` command, such as `BODY=7BIT`, or empty value `FROM MAIL:<>` used by some clients.
|
||||||
|
* GODT-338 GODT-781 GODT-857 GODT-866 Flaky tests.
|
||||||
|
* GODT-773 Replace old dates with birthday of RFC822 to not crash Apple Mail. Original is available under `X-Original-Date` header.
|
||||||
|
|
||||||
## [Bridge 1.5.2] Golden Gate
|
## [Bridge 1.5.2] Golden Gate
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* GODT-883 Use `ClearPacket` for `text/plain` with signature
|
* GODT-883 Use `ClearPacket` for `text/plain` with signature.
|
||||||
|
|
||||||
|
|
||||||
## [Bridge 1.5.1] Golden Gate
|
## [Bridge 1.5.1] Golden Gate
|
||||||
@ -26,12 +78,12 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* GODT-878 Encryption of session keys moved to pmapi.
|
* GODT-878 Encryption of session keys moved to pmapi.
|
||||||
|
|
||||||
|
|
||||||
## [IE 1.2.1] Elbe
|
## [IE 1.2.1, 1.2.2] Elbe
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* GODT-799 Skipped messages do not change total counts but shows as separate number.
|
* GODT-799 Skipped messages do not change total counts but shows as separate number.
|
||||||
|
|
||||||
## Fixed
|
### Fixed
|
||||||
* GODT-799 Fix skipping unwanted folders importing from mbox files.
|
* GODT-799 Fix skipping unwanted folders importing from mbox files.
|
||||||
* GODT-769 Close connection before deleting labels to prevent panics accessing deleted bucket.
|
* GODT-769 Close connection before deleting labels to prevent panics accessing deleted bucket.
|
||||||
|
|
||||||
@ -48,7 +100,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* GODT-847 Waiting for unilateral update during deleting the message.
|
* GODT-847 Waiting for unilateral update during deleting the message.
|
||||||
* GODT-849 Show in error counts in the end also lost messages.
|
* GODT-849 Show in error counts in the end also lost messages.
|
||||||
* GODT-835 Do not include conversation ID in references to show properly conversation threads in clients.
|
* GODT-835 Do not include conversation ID in references to show properly conversation threads in clients.
|
||||||
* GODT-685 Improve deb packaging regarding dejavu font
|
* GODT-685 Improve deb packaging regarding dejavu font.
|
||||||
|
|
||||||
|
|
||||||
## [IE 1.2.0] Elbe
|
## [IE 1.2.0] Elbe
|
||||||
@ -60,7 +112,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
* GODT-677 Windows IE: global import settings not fit in window.
|
* GODT-677 Windows IE: global import settings not fit in window.
|
||||||
* GODT-794 Congo fails to update to Danube
|
* GODT-794 Congo fails to update to Danube.
|
||||||
* GODT-749 Don't force PGP/Inline when sending plaintext messages.
|
* GODT-749 Don't force PGP/Inline when sending plaintext messages.
|
||||||
* GODT-764 Fix deadlock in integration tests for Import-Export.
|
* GODT-764 Fix deadlock in integration tests for Import-Export.
|
||||||
* GODT-662 Do not resume paused transfer progress after dismissing cancel popup.
|
* GODT-662 Do not resume paused transfer progress after dismissing cancel popup.
|
||||||
@ -88,8 +140,8 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
* GODT-798 Replace, don't add, transfer encoding when making body 7-bit clean.
|
* GODT-798 Replace, don't add, transfer encoding when making body 7-bit clean.
|
||||||
* Move/Copy duplicate for emails with References in Outlook
|
* Move/Copy duplicate for emails with References in Outlook.
|
||||||
* CSB-247 Cannot update from 1.4.0
|
* CSB-247 Cannot update from 1.4.0.
|
||||||
|
|
||||||
|
|
||||||
## [Bridge 1.4.3] Forth
|
## [Bridge 1.4.3] Forth
|
||||||
@ -115,7 +167,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* GODT-776 Fix crash when IMAP client connects while account is logging in.
|
* GODT-776 Fix crash when IMAP client connects while account is logging in.
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* Bump crypto version to v0.0.0-20200818122824-ed5d25e28db8
|
* Bump crypto version to v0.0.0-20200818122824-ed5d25e28db8.
|
||||||
* GODT-785 Clear separation of different message IDs in integration tests.
|
* GODT-785 Clear separation of different message IDs in integration tests.
|
||||||
### Changed
|
### Changed
|
||||||
* GODT-741 Import-Export shows "Unable to parse time" notice instead of zero time in error report window.
|
* GODT-741 Import-Export shows "Unable to parse time" notice instead of zero time in error report window.
|
||||||
@ -172,60 +224,60 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* GODT-461 Add support for `\Deleted` flag.
|
* GODT-461 Add support for `\Deleted` flag.
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* GODT-462 Pausing event loop while FETCHing to prevent EXPUNGE
|
* GODT-462 Pausing event loop while FETCHing to prevent EXPUNGE.
|
||||||
* Wait for unilateral response to be delivered
|
* Wait for unilateral response to be delivered.
|
||||||
* GODT-409 Set flags have to replace all flags.
|
* GODT-409 Set flags have to replace all flags.
|
||||||
* GODT-531 Better way to add trusted certificate in macOS.
|
* GODT-531 Better way to add trusted certificate in macOS.
|
||||||
* Bumped golangci-lint to v1.29.0
|
* Bumped golangci-lint to v1.29.0.
|
||||||
* GODT-549 Check log file size more often to prevent huge log files.
|
* GODT-549 Check log file size more often to prevent huge log files.
|
||||||
* Bumped various dependencies:
|
* Bumped various dependencies:
|
||||||
* andybalholm/cascadia v1.1.0 -> v1.2.0
|
* Updated andybalholm/cascadia v1.1.0 -> v1.2.0.
|
||||||
* emersion/go-imap-specialuse 20161227184202-ba031ced6a62 -> 20200722111535-598ff00e4075
|
* Updated emersion/go-imap-specialuse 20161227184202-ba031ced6a62 -> 20200722111535-598ff00e4075.
|
||||||
* emersion/go-sasl 20191210011802-430746ea8b9b -> 20200509203442-7bfe0ed36a21
|
* Updated emersion/go-sasl 20191210011802-430746ea8b9b -> 20200509203442-7bfe0ed36a21.
|
||||||
* github.com/go-resty/resty/v2 v2.2.0 -> v2.3.0
|
* Updated github.com/go-resty/resty/v2 v2.2.0 -> v2.3.0.
|
||||||
* github.com/golang/mock v1.4.3 -> v1.4.4
|
* Updated github.com/golang/mock v1.4.3 -> v1.4.4.
|
||||||
* github.com/google/go-cmp v0.4.0 -> v0.5.1
|
* Updated github.com/google/go-cmp v0.4.0 -> v0.5.1.
|
||||||
* github.com/hashicorp/go-multierror v1.0.0 -> v1.1.0
|
* Updated github.com/hashicorp/go-multierror v1.0.0 -> v1.1.0.
|
||||||
* github.com/jaytaylor/html2text 20200220170450-61d9dc4d7195 -> 20200412013138-3577fbdbcff7
|
* Updated github.com/jaytaylor/html2text 20200220170450-61d9dc4d7195 -> 20200412013138-3577fbdbcff7.
|
||||||
* github.com/jhillyerd/enmime v0.8.0 -> v0.8.1
|
* Updated github.com/jhillyerd/enmime v0.8.0 -> v0.8.1.
|
||||||
* github.com/keybase/go-keychain 20200218013740-86d4642e4ce2 -> 20200502122510-cda31fe0c86d
|
* Updated github.com/keybase/go-keychain 20200218013740-86d4642e4ce2 -> 20200502122510-cda31fe0c86d.
|
||||||
* github.com/logrusorgru/aurora 20200102142835-e9ef32dff381 -> v2.0.3+incompatible
|
* Updated github.com/logrusorgru/aurora 20200102142835-e9ef32dff381 -> v2.0.3+incompatible.
|
||||||
* github.com/miekg/dns v1.1.29 -> v1.1.30
|
* Updated github.com/miekg/dns v1.1.29 -> v1.1.30.
|
||||||
* github.com/nsf/jsondiff 20190712045011-8443391ee9b6 -> 20200515183724-f29ed568f4ce
|
* Updated github.com/nsf/jsondiff 20190712045011-8443391ee9b6 -> 20200515183724-f29ed568f4ce.
|
||||||
* github.com/sirupsen/logrus v1.4.2 -> v1.6.0
|
* Updated github.com/sirupsen/logrus v1.4.2 -> v1.6.0.
|
||||||
* github.com/stretchr/testify v1.5.1 -> v1.6.1
|
* Updated github.com/stretchr/testify v1.5.1 -> v1.6.1.
|
||||||
* github.com/therecipe/qt 20200126204426-5074eb6d8c41 -> 20200701200531-7f61353ee73e
|
* Updated github.com/therecipe/qt 20200126204426-5074eb6d8c41 -> 20200701200531-7f61353ee73e.
|
||||||
* github.com/urfave/cli v1.22.3 -> v1.22.4
|
* Updated github.com/urfave/cli v1.22.3 -> v1.22.4.
|
||||||
* golang.org/x/net 20200301022130-244492dfa37a -> 20200707034311-ab3426394381
|
* Updated golang.org/x/net 20200301022130-244492dfa37a -> 20200707034311-ab3426394381.
|
||||||
* golang.org/x/text v0.3.2 -> v0.3.3
|
* Updated golang.org/x/text v0.3.2 -> v0.3.3.
|
||||||
* Set first-start to false in bridge, not in frontend.
|
* Set first-start to false in bridge, not in frontend.
|
||||||
* GODT-400 Refactor sendingInfo.
|
* GODT-400 Refactor sendingInfo.
|
||||||
* GODT-513 Update routes to API v4.
|
* GODT-513 Update routes to API v4.
|
||||||
* GODT-551 Do not ignore errors during message flagging.
|
* GODT-551 Do not ignore errors during message flagging.
|
||||||
* GODT-380 Adding IE GUI to Bridge repo and building
|
* GODT-380 Adding IE GUI to Bridge repo and building.
|
||||||
* BR: extend functionality of PopupDialog
|
* BR: extend functionality of PopupDialog.
|
||||||
* BR: makefile APP_VERSION instead of BRIDGE_VERSION
|
* BR: makefile APP_VERSION instead of BRIDGE_VERSION.
|
||||||
* BR: use common logs function for Qt
|
* BR: use common logs function for Qt.
|
||||||
* BR: change `go.progressDescription` to `string`
|
* BR: change `go.progressDescription` to `string`.
|
||||||
* IE: Rounded button has fa-icon
|
* IE: Rounded button has fa-icon.
|
||||||
* IE: `Upgrade` → `Update`
|
* IE: `Upgrade` → `Update`.
|
||||||
* IE: Moving `AccountModel` to `qt-common`
|
* IE: Moving `AccountModel` to `qt-common`.
|
||||||
* IE: Added `ReportBug` to `internal/importexport`
|
* IE: Added `ReportBug` to `internal/importexport`.
|
||||||
* IE: Added event watch in GUI
|
* IE: Added event watch in GUI.
|
||||||
* IE: Removed `onLoginFinished`
|
* IE: Removed `onLoginFinished`.
|
||||||
* Structure for transfer rules in QML
|
* Structure for transfer rules in QML.
|
||||||
* GODT-213 Convert panics from message parser to error.
|
* GODT-213 Convert panics from message parser to error.
|
||||||
* GODT-585 Do not allow deleting messages from All Mail.
|
* GODT-585 Do not allow deleting messages from All Mail.
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
* GODT-655 Fix date picker with automatic Windows DST
|
* GODT-655 Fix date picker with automatic Windows DST.
|
||||||
* GODT-454 Fix send on closed channel when receiving unencrypted send confirmation from GUI.
|
* GODT-454 Fix send on closed channel when receiving unencrypted send confirmation from GUI.
|
||||||
* GODT-597 Duplicate sending when draft creation takes too long
|
* GODT-597 Duplicate sending when draft creation takes too long.
|
||||||
* GODT-634 Hover on links in popups.
|
* GODT-634 Hover on links in popups.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [v1.3.x] Emma (v1.3.2 beta 2020-08-04, v1.3.3 beta 2020-08-06, v1.3.3 live 2020-08-12)
|
## [Bridge 1.3.x] Emma (v1.3.2 beta 2020-08-04, v1.3.3 beta 2020-08-06, v1.3.3 live 2020-08-12)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* GODT-554 Detect and notify about "bad certificate" IMAP TLS error.
|
* GODT-554 Detect and notify about "bad certificate" IMAP TLS error.
|
||||||
@ -285,7 +337,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Issue causing deadlock when reloading users keys due to double-locking of a mutex.
|
* Issue causing deadlock when reloading users keys due to double-locking of a mutex.
|
||||||
* Correctly handle failure to unlock single key.
|
* Correctly handle failure to unlock single key.
|
||||||
* GODT-479 Fix flaky integration tests.
|
* GODT-479 Fix flaky integration tests.
|
||||||
* GODT-484 Fix infinite loop when decoding invalid 2231 charset
|
* GODT-484 Fix infinite loop when decoding invalid 2231 charset.
|
||||||
* GODT-267 Correctly detect if a message is a draft even if does not have DraftLabel.
|
* GODT-267 Correctly detect if a message is a draft even if does not have DraftLabel.
|
||||||
* GODT-308 Reduce minimum read speed threshold to avoid issues with flaky internet.
|
* GODT-308 Reduce minimum read speed threshold to avoid issues with flaky internet.
|
||||||
* GODT-321 Changing address ordering would cause all messages to disappear in combined mode.
|
* GODT-321 Changing address ordering would cause all messages to disappear in combined mode.
|
||||||
@ -294,7 +346,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* GODT-427 Fix race condition in auth refresh that could cause user to be logged out.
|
* GODT-427 Fix race condition in auth refresh that could cause user to be logged out.
|
||||||
|
|
||||||
|
|
||||||
## [v1.2.8] Donghai-fix-append (beta 2020-06-XXX)
|
## [Bridge 1.2.8] Donghai-fix-append (beta 2020-06-XXX)
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* GODT-396 reduce number of EXISTS calls.
|
* GODT-396 reduce number of EXISTS calls.
|
||||||
@ -303,7 +355,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
### Fixed
|
### Fixed
|
||||||
* GODT-502 Fixed crash when unable to parse a message header.
|
* GODT-502 Fixed crash when unable to parse a message header.
|
||||||
|
|
||||||
## [v1.2.7] Donghai-fix-sync - (beta 2020-05-07 live 2020-04-20)
|
## [Bridge 1.2.7] Donghai-fix-sync - (beta 2020-05-07 live 2020-04-20)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* IMAP extension MOVE with UIDPLUS support.
|
* IMAP extension MOVE with UIDPLUS support.
|
||||||
@ -326,7 +378,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Use correct binary name when finding location of addcert.scpt.
|
* Use correct binary name when finding location of addcert.scpt.
|
||||||
|
|
||||||
|
|
||||||
## [v1.2.6] Donghai - beta (2020-03-31)
|
## [Bridge 1.2.6] Donghai - beta (2020-03-31)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* GODT-145 Support drafts.
|
* GODT-145 Support drafts.
|
||||||
@ -381,13 +433,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* UserIDs were not checked when importing to Sent folder (affects copying from account1/sent to account2/sent).
|
* UserIDs were not checked when importing to Sent folder (affects copying from account1/sent to account2/sent).
|
||||||
|
|
||||||
|
|
||||||
## [v1.2.5] Charles - live (2020-03-11) beta (from 2020-02-10)
|
## [Bridge 1.2.5] Charles - live (2020-03-11) beta (from 2020-02-10)
|
||||||
|
|
||||||
### Hotfix
|
|
||||||
* CSB-40 panic in credential store.
|
|
||||||
* Keyring unlocking locker.
|
|
||||||
* No panic on failed html parse.
|
|
||||||
* Too many open files.
|
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* GODT-112 Migration of preferences from c10 to c11.
|
* GODT-112 Migration of preferences from c10 to c11.
|
||||||
@ -432,13 +478,13 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Separated IMAP to store and IMAP.
|
* Separated IMAP to store and IMAP.
|
||||||
* Store is responsible for everything about db and calls to pmapi, including event loop, sync, address mode.
|
* Store is responsible for everything about db and calls to pmapi, including event loop, sync, address mode.
|
||||||
* IMAP is responsible only for IMAP interfaces.
|
* IMAP is responsible only for IMAP interfaces.
|
||||||
* Event loop is only one per ProtonMail account (instead of one per alias)
|
* Event loop is only one per ProtonMail account (instead of one per alias).
|
||||||
* It also means only one database per account (instead of one per address)
|
* It also means only one database per account (instead of one per address).
|
||||||
* Changing address mode is not destroying database, only buckets with IDs mapping (keeping metadata for account)
|
* Changing address mode is not destroying database, only buckets with IDs mapping (keeping metadata for account).
|
||||||
* Before first sync we set event ID so we will not miss changes happening during sync.
|
* Before first sync we set event ID so we will not miss changes happening during sync.
|
||||||
* Thanks to previous point we are not starting new sync when we finish first one because of unprocessed events.
|
* Thanks to previous point we are not starting new sync when we finish first one because of unprocessed events.
|
||||||
* Sync is not blocking event loop (user can get new messages even during sync)
|
* Sync is not blocking event loop (user can get new messages even during sync).
|
||||||
* Sync is not blocking reading operations (user can list mailboxes even before first sync is done)
|
* Sync is not blocking reading operations (user can list mailboxes even before first sync is done).
|
||||||
* Sync is not blocking writing operations such as mark messages read/unread and so on.
|
* Sync is not blocking writing operations such as mark messages read/unread and so on.
|
||||||
* Most operations have to be passed to API and only event loop is writing them to the database.
|
* Most operations have to be passed to API and only event loop is writing them to the database.
|
||||||
* Avoid relying on counts API endpoint; use event counts as much as possible.
|
* Avoid relying on counts API endpoint; use event counts as much as possible.
|
||||||
@ -448,8 +494,8 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Synchronisation will create a label if not yet present.
|
* Synchronisation will create a label if not yet present.
|
||||||
* Labels and Folders (including system folders) are stored in DB together with their counts for offline read-out.
|
* Labels and Folders (including system folders) are stored in DB together with their counts for offline read-out.
|
||||||
* AddressIDs for all user addresses are stored in DB.
|
* AddressIDs for all user addresses are stored in DB.
|
||||||
* IMAP updates channel is set when an IMAP client connects (and IMAP updates are dropped until then)
|
* IMAP updates channel is set when an IMAP client connects (and IMAP updates are dropped until then).
|
||||||
* DB keeps track of address mode (split/combined)
|
* DB keeps track of address mode (split/combined).
|
||||||
* Event loop starts as soon as user is initialised (i.e. logged in), not just when imap is connected.
|
* Event loop starts as soon as user is initialised (i.e. logged in), not just when imap is connected.
|
||||||
* Use pmapi v1.0.13.
|
* Use pmapi v1.0.13.
|
||||||
* Logout user if initialisation fails.
|
* Logout user if initialisation fails.
|
||||||
@ -457,6 +503,10 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Use godog v0.8.0 under new name 'cucumber' (instead of DATA-DOG).
|
* Use godog v0.8.0 under new name 'cucumber' (instead of DATA-DOG).
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
* CSB-40 panic in credential store.
|
||||||
|
* Keyring unlocking locker.
|
||||||
|
* No panic on failed html parse.
|
||||||
|
* Too many open files.
|
||||||
* #1057 Logging in to an already logged in user would display unrelated error "invalid mailbox password".
|
* #1057 Logging in to an already logged in user would display unrelated error "invalid mailbox password".
|
||||||
* #1056 Changing mailbox password sometimes didn't log out user.
|
* #1056 Changing mailbox password sometimes didn't log out user.
|
||||||
* #1066 Split address mode can not work when credentials store is cleared.
|
* #1066 Split address mode can not work when credentials store is cleared.
|
||||||
@ -472,7 +522,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* GODT-103 User keys were not unlocked later if they were not unlocked during startup.
|
* GODT-103 User keys were not unlocked later if they were not unlocked during startup.
|
||||||
|
|
||||||
|
|
||||||
## [v1.2.4] Brooklyn beta (2019-12-16)
|
## [Bridge 1.2.4] Brooklyn beta (2019-12-16)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* #976: fix slow authentication.
|
* #976: fix slow authentication.
|
||||||
@ -487,7 +537,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Fixed an issue where entering an in-use port multiple times via the CLI would make bridge use it.
|
* Fixed an issue where entering an in-use port multiple times via the CLI would make bridge use it.
|
||||||
* Update therecipe/qt and Qt to 5.13.
|
* Update therecipe/qt and Qt to 5.13.
|
||||||
|
|
||||||
## [v1.2.3] Akashi - live (2019-11-05) beta (2019-10-22)
|
## [Bridge 1.2.3] Akashi - live (2019-11-05) beta (2019-10-22)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* #963 report first-start metric with bridge version.
|
* #963 report first-start metric with bridge version.
|
||||||
@ -517,17 +567,17 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Code made compatible with name changes in go-pmapi.
|
* Code made compatible with name changes in go-pmapi.
|
||||||
|
|
||||||
|
|
||||||
## [v1.2.2] - beta and live 2019-09-06
|
## [Bridge 1.2.2] - beta and live 2019-09-06
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* User compare case insensitive.
|
* User compare case insensitive.
|
||||||
|
|
||||||
## [v1.2.1] - beta and live 2019-09-05
|
## [Bridge 1.2.1] - beta and live 2019-09-05
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* #924 fix start of bridge without internet connection.
|
* #924 fix start of bridge without internet connection.
|
||||||
|
|
||||||
## [v1.2.0] - beta 2019-08-22
|
## [Bridge 1.2.0] - beta 2019-08-22
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* #903 added http.Client timeout to not hang out forever.
|
* #903 added http.Client timeout to not hang out forever.
|
||||||
@ -627,7 +677,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Handle logout in event loop.
|
* Handle logout in event loop.
|
||||||
|
|
||||||
|
|
||||||
## [v1.1.6] - 2019-07-09 (beta 2019-07-01)
|
## [Bridge 1.1.6] - 2019-07-09 (beta 2019-07-01)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* #841 assume text/plain during sending e-mails when missing content type.
|
* #841 assume text/plain during sending e-mails when missing content type.
|
||||||
@ -659,7 +709,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Lint corrections.
|
* Lint corrections.
|
||||||
|
|
||||||
|
|
||||||
## [v1.1.5] - 2019-05-23 (beta 2019-05-23, 2019-05-16)
|
## [Bridge 1.1.5] - 2019-05-23 (beta 2019-05-23, 2019-05-16)
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* Fix custom message format.
|
* Fix custom message format.
|
||||||
@ -673,7 +723,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Only one crash from second instance.
|
* Only one crash from second instance.
|
||||||
* During event `MessageID` in log as field.
|
* During event `MessageID` in log as field.
|
||||||
|
|
||||||
## [v1.1.4 live] - 2019-04-10 (beta 2019-04-05, 2019-03-27)
|
## [Bridge 1.1.4 live] - 2019-04-10 (beta 2019-04-05, 2019-03-27)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* Address with port to IMAP debug.
|
* Address with port to IMAP debug.
|
||||||
@ -694,7 +744,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
### Removed
|
### Removed
|
||||||
* #750 Synchronization after 450 messages.
|
* #750 Synchronization after 450 messages.
|
||||||
|
|
||||||
## [v1.1.3] - 2019-03-04
|
## [Bridge 1.1.3] - 2019-03-04
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* Sentry crash reporting in main.
|
* Sentry crash reporting in main.
|
||||||
@ -706,13 +756,13 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* #720 sync every 3 pages.
|
* #720 sync every 3 pages.
|
||||||
* #512 extending list of charsets go-pm-mime!4.
|
* #512 extending list of charsets go-pm-mime!4.
|
||||||
|
|
||||||
## [v1.1.2] - beta only 2019-02-21
|
## [Bridge 1.1.2] - beta only 2019-02-21
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* #512 fail on unknown charset.
|
* #512 fail on unknown charset.
|
||||||
* #729 #733 visitor for MIME parsing.
|
* #729 #733 visitor for MIME parsing.
|
||||||
|
|
||||||
## [v1.1.1] - 2019-02-11
|
## [Bridge 1.1.1] - 2019-02-11
|
||||||
### Added
|
### Added
|
||||||
* #671 include `name` param in attachment `Content-Type` (in addition to `Content-Disposition` param `filename`).
|
* #671 include `name` param in attachment `Content-Type` (in addition to `Content-Disposition` param `filename`).
|
||||||
* #671 do not include content headers for section requests e.g. `BODY.PEEK[2]`.
|
* #671 do not include content headers for section requests e.g. `BODY.PEEK[2]`.
|
||||||
@ -765,7 +815,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* SMTP stays authenticated after sent message.
|
* SMTP stays authenticated after sent message.
|
||||||
* Reduce memory, processor and number of API calls.
|
* Reduce memory, processor and number of API calls.
|
||||||
|
|
||||||
## [v1.1.0] - 2018-10-22
|
## [Bridge 1.1.0] - 2018-10-22
|
||||||
|
|
||||||
### Removed
|
### Removed
|
||||||
* `go-pmapi.Config.ClientSecret`.
|
* `go-pmapi.Config.ClientSecret`.
|
||||||
@ -841,11 +891,11 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Additional synchronization of mail database.
|
* Additional synchronization of mail database.
|
||||||
|
|
||||||
|
|
||||||
## [v1.0.6 silent] - 2018-08-23
|
## [Bridge 1.0.6 silent] - 2018-08-23
|
||||||
### Added
|
### Added
|
||||||
* New svg icon in linux package.
|
* New svg icon in linux package.
|
||||||
|
|
||||||
## [v1.0.6] - 2018-08-09
|
## [Bridge 1.0.6] - 2018-08-09
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* `backend.GetUserSettings()`.
|
* `backend.GetUserSettings()`.
|
||||||
@ -874,7 +924,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Frequent Thunderbird timeout.
|
* Frequent Thunderbird timeout.
|
||||||
* SMTP requests not case-sensitive.
|
* SMTP requests not case-sensitive.
|
||||||
|
|
||||||
## [v1.0.5] - 2018-07-12
|
## [Bridge 1.0.5] - 2018-07-12
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* UpdateCurrentAgent from lastMailClient.
|
* UpdateCurrentAgent from lastMailClient.
|
||||||
@ -906,7 +956,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Fixed 7bit MIME issue while sending.
|
* Fixed 7bit MIME issue while sending.
|
||||||
|
|
||||||
|
|
||||||
## [v1.0.4] - 2018-05-15
|
## [Bridge 1.0.4] - 2018-05-15
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* Version files available at both download and static.
|
* Version files available at both download and static.
|
||||||
@ -927,11 +977,11 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Notification that outgoing email will be delivered as non-encrypted.
|
* Notification that outgoing email will be delivered as non-encrypted.
|
||||||
* NOTE: Due to a change of the keychain format, you will need to add your account(s) to the Bridge after installing this version.
|
* NOTE: Due to a change of the keychain format, you will need to add your account(s) to the Bridge after installing this version.
|
||||||
|
|
||||||
### Bugs fixed
|
### Fixed bugs
|
||||||
* Support accounts with same user names.
|
* Support accounts with same user names.
|
||||||
* Support sending vCalendar event.
|
* Support sending vCalendar event.
|
||||||
|
|
||||||
## [v1.0.3] - 2018-03-26
|
## [Bridge 1.0.3] - 2018-03-26
|
||||||
* All from silent updates plus following.
|
* All from silent updates plus following.
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
@ -966,7 +1016,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
* Remove firewall error message.
|
* Remove firewall error message.
|
||||||
|
|
||||||
|
|
||||||
## [v1.0.2] - 2018-03-12
|
## [Bridge 1.0.2] - 2018-03-12
|
||||||
* All from silent updates plus following.
|
* All from silent updates plus following.
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
@ -988,7 +1038,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [v1.0.1-4 (linux only)] Silent deploy - 2018-02-28
|
## [Bridge 1.0.1-4 (linux only)] Silent deploy - 2018-02-28
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* More similar look of window title bar to Windows 10 style.
|
* More similar look of window title bar to Windows 10 style.
|
||||||
@ -1012,14 +1062,14 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [v1.0.1] Silent deploy - 2017-12-30
|
## [Bridge 1.0.1] Silent deploy - 2017-12-30
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* Fixed bug with parsing address list (CC became BCC).
|
* Fixed bug with parsing address list (CC became BCC).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [v1.0.1] - 2017-12-20
|
## [Bridge 1.0.1] - 2017-12-20
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* When current log file is more than 10MB open new one, checked every 15min.
|
* When current log file is more than 10MB open new one, checked every 15min.
|
||||||
@ -1051,7 +1101,7 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [v1.0.0] - 2017-12-06
|
## [Bridge 1.0.0] - 2017-12-06
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
* Encoding support of message body, title items, attachment name, for all standard charsets.
|
* Encoding support of message body, title items, attachment name, for all standard charsets.
|
||||||
|
|||||||
24
Makefile
24
Makefile
@ -10,8 +10,8 @@ TARGET_OS?=${GOOS}
|
|||||||
.PHONY: build build-ie build-nogui build-ie-nogui check-has-go
|
.PHONY: build build-ie build-nogui build-ie-nogui check-has-go
|
||||||
|
|
||||||
# Keep version hardcoded so app build works also without Git repository.
|
# Keep version hardcoded so app build works also without Git repository.
|
||||||
BRIDGE_APP_VERSION?=1.5.2-git
|
BRIDGE_APP_VERSION?=1.5.6-git
|
||||||
IE_APP_VERSION?=1.2.1-git
|
IE_APP_VERSION?=1.2.3-git
|
||||||
APP_VERSION:=${BRIDGE_APP_VERSION}
|
APP_VERSION:=${BRIDGE_APP_VERSION}
|
||||||
SRC_ICO:=logo.ico
|
SRC_ICO:=logo.ico
|
||||||
SRC_ICNS:=Bridge.icns
|
SRC_ICNS:=Bridge.icns
|
||||||
@ -64,6 +64,12 @@ ifeq "${TARGET_CMD}" "Import-Export"
|
|||||||
TGZ_TARGET:=ie_${TARGET_OS}_${REVISION}.tgz
|
TGZ_TARGET:=ie_${TARGET_OS}_${REVISION}.tgz
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifdef QT_API
|
||||||
|
VENDOR_TARGET:=prepare-vendor update-qt-docs
|
||||||
|
else
|
||||||
|
VENDOR_TARGET=update-vendor
|
||||||
|
endif
|
||||||
|
|
||||||
build: ${TGZ_TARGET}
|
build: ${TGZ_TARGET}
|
||||||
build-ie:
|
build-ie:
|
||||||
TARGET_CMD=Import-Export $(MAKE) build
|
TARGET_CMD=Import-Export $(MAKE) build
|
||||||
@ -106,7 +112,7 @@ ifneq "${GOOS}" "${TARGET_OS}"
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
${EXE_TARGET}: check-has-go gofiles ${ICO_FILES} update-vendor
|
${EXE_TARGET}: check-has-go gofiles ${ICO_FILES} ${VENDOR_TARGET}
|
||||||
rm -rf deploy ${TARGET_OS} ${DEPLOY_DIR}
|
rm -rf deploy ${TARGET_OS} ${DEPLOY_DIR}
|
||||||
cp cmd/${TARGET_CMD}/main.go .
|
cp cmd/${TARGET_CMD}/main.go .
|
||||||
qtdeploy ${BUILD_FLAGS} ${QT_BUILD_TARGET}
|
qtdeploy ${BUILD_FLAGS} ${QT_BUILD_TARGET}
|
||||||
@ -123,7 +129,7 @@ icon_windows.syso: icon.rc logo.ico
|
|||||||
|
|
||||||
|
|
||||||
## Rules for therecipe/qt
|
## Rules for therecipe/qt
|
||||||
.PHONY: prepare-vendor update-vendor
|
.PHONY: prepare-vendor update-vendor update-qt-docs
|
||||||
THERECIPE_ENV:=github.com/therecipe/env_${TARGET_OS}_amd64_513
|
THERECIPE_ENV:=github.com/therecipe/env_${TARGET_OS}_amd64_513
|
||||||
|
|
||||||
# vendor folder will be deleted by gomod hence we cache the big repo
|
# vendor folder will be deleted by gomod hence we cache the big repo
|
||||||
@ -148,6 +154,8 @@ prepare-vendor:
|
|||||||
update-vendor: vendor-cache/${THERECIPE_ENV} prepare-vendor
|
update-vendor: vendor-cache/${THERECIPE_ENV} prepare-vendor
|
||||||
${LINKCMD}
|
${LINKCMD}
|
||||||
|
|
||||||
|
update-qt-docs:
|
||||||
|
go get github.com/therecipe/qt/internal/binding/files/docs/$(QT_API)
|
||||||
|
|
||||||
## Dev dependencies
|
## Dev dependencies
|
||||||
.PHONY: install-devel-tools install-linter install-go-mod-outdated
|
.PHONY: install-devel-tools install-linter install-go-mod-outdated
|
||||||
@ -209,17 +217,21 @@ coverage: test
|
|||||||
mocks:
|
mocks:
|
||||||
mockgen --package mocks github.com/ProtonMail/proton-bridge/internal/users Configer,PanicHandler,ClientManager,CredentialsStorer,StoreMaker > internal/users/mocks/mocks.go
|
mockgen --package mocks github.com/ProtonMail/proton-bridge/internal/users Configer,PanicHandler,ClientManager,CredentialsStorer,StoreMaker > internal/users/mocks/mocks.go
|
||||||
mockgen --package mocks github.com/ProtonMail/proton-bridge/internal/transfer PanicHandler,ClientManager,IMAPClientProvider > internal/transfer/mocks/mocks.go
|
mockgen --package mocks github.com/ProtonMail/proton-bridge/internal/transfer PanicHandler,ClientManager,IMAPClientProvider > internal/transfer/mocks/mocks.go
|
||||||
mockgen --package mocks github.com/ProtonMail/proton-bridge/internal/store PanicHandler,ClientManager,BridgeUser > internal/store/mocks/mocks.go
|
mockgen --package mocks github.com/ProtonMail/proton-bridge/internal/store PanicHandler,ClientManager,BridgeUser,ChangeNotifier > internal/store/mocks/mocks.go
|
||||||
mockgen --package mocks github.com/ProtonMail/proton-bridge/pkg/listener Listener > internal/store/mocks/utils_mocks.go
|
mockgen --package mocks github.com/ProtonMail/proton-bridge/pkg/listener Listener > internal/store/mocks/utils_mocks.go
|
||||||
mockgen --package mocks github.com/ProtonMail/proton-bridge/pkg/pmapi Client > pkg/pmapi/mocks/mocks.go
|
mockgen --package mocks github.com/ProtonMail/proton-bridge/pkg/pmapi Client > pkg/pmapi/mocks/mocks.go
|
||||||
|
|
||||||
lint: lint-golang lint-license
|
lint: lint-golang lint-license lint-changelog
|
||||||
|
|
||||||
lint-license:
|
lint-license:
|
||||||
./utils/missing_license.sh check
|
./utils/missing_license.sh check
|
||||||
|
|
||||||
|
lint-changelog:
|
||||||
|
./utils/changelog_linter.sh
|
||||||
|
|
||||||
lint-golang:
|
lint-golang:
|
||||||
which golangci-lint || $(MAKE) install-linter
|
which golangci-lint || $(MAKE) install-linter
|
||||||
|
$(info linting with GOMAXPROCS=${GOMAXPROCS})
|
||||||
golangci-lint run ./...
|
golangci-lint run ./...
|
||||||
|
|
||||||
updates: install-go-mod-outdated
|
updates: install-go-mod-outdated
|
||||||
|
|||||||
@ -3,7 +3,7 @@ Copyright (c) 2020 Proton Technologies AG
|
|||||||
|
|
||||||
This repository holds the ProtonMail Bridge and the ProtonMail Import-Export applications.
|
This repository holds the ProtonMail Bridge and the ProtonMail Import-Export applications.
|
||||||
For a detailed build information see [BUILDS](./BUILDS.md).
|
For a detailed build information see [BUILDS](./BUILDS.md).
|
||||||
For licensing information see [COPYING](./COPYING.md).
|
The license can be found in [LICENSE](./LICENSE) file, for more licensing information see [COPYING_NOTES](./COPYING_NOTES.md).
|
||||||
For contribution policy see [CONTRIBUTING](./CONTRIBUTING.md).
|
For contribution policy see [CONTRIBUTING](./CONTRIBUTING.md).
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
16
go.mod
16
go.mod
@ -6,7 +6,7 @@ go 1.13
|
|||||||
// They are in a separate require block to highlight this.
|
// They are in a separate require block to highlight this.
|
||||||
require (
|
require (
|
||||||
github.com/docker/docker-credential-helpers v0.6.3
|
github.com/docker/docker-credential-helpers v0.6.3
|
||||||
github.com/emersion/go-smtp v0.0.0-20180712174835-db5eec195e67
|
github.com/emersion/go-imap v1.0.6-0.20200708083111-011063d6c9df
|
||||||
github.com/jameskeane/bcrypt v0.0.0-20170924085257-7509ea014998
|
github.com/jameskeane/bcrypt v0.0.0-20170924085257-7509ea014998
|
||||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9
|
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9
|
||||||
)
|
)
|
||||||
@ -18,7 +18,7 @@ require (
|
|||||||
github.com/ProtonMail/go-apple-mobileconfig v0.0.0-20160701194735-7ea9927a11f6
|
github.com/ProtonMail/go-apple-mobileconfig v0.0.0-20160701194735-7ea9927a11f6
|
||||||
github.com/ProtonMail/go-autostart v0.0.0-20181114175602-c5272053443a
|
github.com/ProtonMail/go-autostart v0.0.0-20181114175602-c5272053443a
|
||||||
github.com/ProtonMail/go-imap-id v0.0.0-20190926060100-f94a56b9ecde
|
github.com/ProtonMail/go-imap-id v0.0.0-20190926060100-f94a56b9ecde
|
||||||
github.com/ProtonMail/go-rfc5322 v0.2.0
|
github.com/ProtonMail/go-rfc5322 v0.5.0
|
||||||
github.com/ProtonMail/go-vcard v0.0.0-20180326232728-33aaa0a0c8a5
|
github.com/ProtonMail/go-vcard v0.0.0-20180326232728-33aaa0a0c8a5
|
||||||
github.com/ProtonMail/gopenpgp/v2 v2.0.1
|
github.com/ProtonMail/gopenpgp/v2 v2.0.1
|
||||||
github.com/PuerkitoBio/goquery v1.5.1
|
github.com/PuerkitoBio/goquery v1.5.1
|
||||||
@ -28,17 +28,16 @@ require (
|
|||||||
github.com/chzyer/logex v1.1.10 // indirect
|
github.com/chzyer/logex v1.1.10 // indirect
|
||||||
github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1 // indirect
|
github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1 // indirect
|
||||||
github.com/cucumber/godog v0.8.1
|
github.com/cucumber/godog v0.8.1
|
||||||
github.com/emersion/go-imap v1.0.6-0.20200708083111-011063d6c9df
|
|
||||||
github.com/emersion/go-imap-appendlimit v0.0.0-20190308131241-25671c986a6a
|
github.com/emersion/go-imap-appendlimit v0.0.0-20190308131241-25671c986a6a
|
||||||
github.com/emersion/go-imap-idle v0.0.0-20200601154248-f05f54664cc4
|
github.com/emersion/go-imap-idle v0.0.0-20200601154248-f05f54664cc4
|
||||||
github.com/emersion/go-imap-move v0.0.0-20190710073258-6e5a51a5b342
|
github.com/emersion/go-imap-move v0.0.0-20190710073258-6e5a51a5b342
|
||||||
github.com/emersion/go-imap-quota v0.0.0-20200423100218-dcfd1b7d2b41
|
github.com/emersion/go-imap-quota v0.0.0-20200423100218-dcfd1b7d2b41
|
||||||
github.com/emersion/go-imap-specialuse v0.0.0-20200722111535-598ff00e4075
|
|
||||||
github.com/emersion/go-imap-unselect v0.0.0-20171113212723-b985794e5f26
|
github.com/emersion/go-imap-unselect v0.0.0-20171113212723-b985794e5f26
|
||||||
github.com/emersion/go-mbox v1.0.2
|
github.com/emersion/go-mbox v1.0.2
|
||||||
github.com/emersion/go-message v0.12.1-0.20200903165315-e1abe21f389a
|
github.com/emersion/go-message v0.12.1-0.20201221184100-40c3f864532b
|
||||||
github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21
|
github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21
|
||||||
github.com/emersion/go-textwrapper v0.0.0-20160606182133-d0e65e56babe
|
github.com/emersion/go-smtp v0.14.0
|
||||||
|
github.com/emersion/go-textwrapper v0.0.0-20200911093747-65d896831594
|
||||||
github.com/emersion/go-vcard v0.0.0-20190105225839-8856043f13c5 // indirect
|
github.com/emersion/go-vcard v0.0.0-20190105225839-8856043f13c5 // indirect
|
||||||
github.com/fatih/color v1.9.0
|
github.com/fatih/color v1.9.0
|
||||||
github.com/flynn-archive/go-shlex v0.0.0-20150515145356-3f9db97f8568 // indirect
|
github.com/flynn-archive/go-shlex v0.0.0-20150515145356-3f9db97f8568 // indirect
|
||||||
@ -68,14 +67,13 @@ require (
|
|||||||
github.com/urfave/cli v1.22.4
|
github.com/urfave/cli v1.22.4
|
||||||
go.etcd.io/bbolt v1.3.5
|
go.etcd.io/bbolt v1.3.5
|
||||||
golang.org/x/net v0.0.0-20200707034311-ab3426394381
|
golang.org/x/net v0.0.0-20200707034311-ab3426394381
|
||||||
golang.org/x/text v0.3.3
|
golang.org/x/text v0.3.5-0.20201125200606-c27b9fd57aec
|
||||||
gopkg.in/stretchr/testify.v1 v1.2.2 // indirect
|
gopkg.in/stretchr/testify.v1 v1.2.2 // indirect
|
||||||
)
|
)
|
||||||
|
|
||||||
replace (
|
replace (
|
||||||
github.com/docker/docker-credential-helpers => github.com/ProtonMail/docker-credential-helpers v1.1.0
|
github.com/docker/docker-credential-helpers => github.com/ProtonMail/docker-credential-helpers v1.1.0
|
||||||
github.com/emersion/go-imap => github.com/ProtonMail/go-imap v0.0.0-20201102134601-418cd74e9474
|
github.com/emersion/go-imap => github.com/ProtonMail/go-imap v0.0.0-20201228133358-4db68cea0cac
|
||||||
github.com/emersion/go-smtp => github.com/ProtonMail/go-smtp v0.0.0-20181206232543-8261df20d309
|
|
||||||
github.com/jameskeane/bcrypt => github.com/ProtonMail/bcrypt v0.0.0-20170924085257-7509ea014998
|
github.com/jameskeane/bcrypt => github.com/ProtonMail/bcrypt v0.0.0-20170924085257-7509ea014998
|
||||||
golang.org/x/crypto => github.com/ProtonMail/crypto v0.0.0-20200818122824-ed5d25e28db8
|
golang.org/x/crypto => github.com/ProtonMail/crypto v0.0.0-20200818122824-ed5d25e28db8
|
||||||
)
|
)
|
||||||
|
|||||||
24
go.sum
24
go.sum
@ -19,16 +19,16 @@ github.com/ProtonMail/go-apple-mobileconfig v0.0.0-20160701194735-7ea9927a11f6 h
|
|||||||
github.com/ProtonMail/go-apple-mobileconfig v0.0.0-20160701194735-7ea9927a11f6/go.mod h1:EtDfBMIDWmVe4viZCuBTEfe3OIIo0ghbpOaAZVO+hVg=
|
github.com/ProtonMail/go-apple-mobileconfig v0.0.0-20160701194735-7ea9927a11f6/go.mod h1:EtDfBMIDWmVe4viZCuBTEfe3OIIo0ghbpOaAZVO+hVg=
|
||||||
github.com/ProtonMail/go-autostart v0.0.0-20181114175602-c5272053443a h1:fXK2KsfnkBV9Nh+9SKzHchYjuE9s0vI20JG1mbtEAcc=
|
github.com/ProtonMail/go-autostart v0.0.0-20181114175602-c5272053443a h1:fXK2KsfnkBV9Nh+9SKzHchYjuE9s0vI20JG1mbtEAcc=
|
||||||
github.com/ProtonMail/go-autostart v0.0.0-20181114175602-c5272053443a/go.mod h1:oTGdE7/DlWIr23G0IKW3OXK9wZ5Hw1GGiaJFccTvZi4=
|
github.com/ProtonMail/go-autostart v0.0.0-20181114175602-c5272053443a/go.mod h1:oTGdE7/DlWIr23G0IKW3OXK9wZ5Hw1GGiaJFccTvZi4=
|
||||||
github.com/ProtonMail/go-imap v0.0.0-20201102134601-418cd74e9474 h1:D0RwDtkBw0Gt7hmbb1ivdEulplJAwu1i2jzh4HM45fo=
|
github.com/ProtonMail/go-imap v0.0.0-20201228133358-4db68cea0cac h1:2xU3QncAiS/W3UlWZTkbNKW5WkLzk6Egl1T0xX+sbjs=
|
||||||
github.com/ProtonMail/go-imap v0.0.0-20201102134601-418cd74e9474/go.mod h1:yKASt+C3ZiDAiCSssxg9caIckWF/JG7ZQTO7GAmvicU=
|
github.com/ProtonMail/go-imap v0.0.0-20201228133358-4db68cea0cac/go.mod h1:yKASt+C3ZiDAiCSssxg9caIckWF/JG7ZQTO7GAmvicU=
|
||||||
github.com/ProtonMail/go-imap-id v0.0.0-20190926060100-f94a56b9ecde h1:5koQozTDELymYOyFbQ/VSubexAEXzDR8qGM5mO8GRdw=
|
github.com/ProtonMail/go-imap-id v0.0.0-20190926060100-f94a56b9ecde h1:5koQozTDELymYOyFbQ/VSubexAEXzDR8qGM5mO8GRdw=
|
||||||
github.com/ProtonMail/go-imap-id v0.0.0-20190926060100-f94a56b9ecde/go.mod h1:795VPXcRUIQ9JyMNHP4el582VokQfippgjkQP3Gk0r0=
|
github.com/ProtonMail/go-imap-id v0.0.0-20190926060100-f94a56b9ecde/go.mod h1:795VPXcRUIQ9JyMNHP4el582VokQfippgjkQP3Gk0r0=
|
||||||
github.com/ProtonMail/go-mime v0.0.0-20190923161245-9b5a4261663a h1:W6RrgN/sTxg1msqzFFb+G80MFmpjMw61IU+slm+wln4=
|
github.com/ProtonMail/go-mime v0.0.0-20190923161245-9b5a4261663a h1:W6RrgN/sTxg1msqzFFb+G80MFmpjMw61IU+slm+wln4=
|
||||||
github.com/ProtonMail/go-mime v0.0.0-20190923161245-9b5a4261663a/go.mod h1:NYt+V3/4rEeDuaev/zw1zCq8uqVEuPHzDPo3OZrlGJ4=
|
github.com/ProtonMail/go-mime v0.0.0-20190923161245-9b5a4261663a/go.mod h1:NYt+V3/4rEeDuaev/zw1zCq8uqVEuPHzDPo3OZrlGJ4=
|
||||||
github.com/ProtonMail/go-rfc5322 v0.2.0 h1:tndoDGFtiCvESta9KLUeMksojz8qf76PefnkoQ+fqeg=
|
github.com/ProtonMail/go-rfc5322 v0.4.0 h1:H6RJNNu+xdkG7A3xKU+dV9sP8/w2K4e7pz1R2FM8kd8=
|
||||||
github.com/ProtonMail/go-rfc5322 v0.2.0/go.mod h1:mzZWlMWnQJuYLL7JpzuPF5+FimV2lZ9f0jeq24kJjpU=
|
github.com/ProtonMail/go-rfc5322 v0.4.0/go.mod h1:mzZWlMWnQJuYLL7JpzuPF5+FimV2lZ9f0jeq24kJjpU=
|
||||||
github.com/ProtonMail/go-smtp v0.0.0-20181206232543-8261df20d309 h1:2pzfKjhBjSnw3BgmfTYRFQr1rFGxhfhUY0KKkg+RYxE=
|
github.com/ProtonMail/go-rfc5322 v0.5.0 h1:LbKWjgfvumYZCr8BgGyTUk3ETGkFLAjQdkuSUpZ5CcE=
|
||||||
github.com/ProtonMail/go-smtp v0.0.0-20181206232543-8261df20d309/go.mod h1:6UoBvDAMA/cTBwS3Y7tGpKnY5RH1F1uYHschT6eqAkI=
|
github.com/ProtonMail/go-rfc5322 v0.5.0/go.mod h1:mzZWlMWnQJuYLL7JpzuPF5+FimV2lZ9f0jeq24kJjpU=
|
||||||
github.com/ProtonMail/go-vcard v0.0.0-20180326232728-33aaa0a0c8a5 h1:Uga1DHFN4GUxuDQr0F71tpi8I9HqPIlZodZAI1lR6VQ=
|
github.com/ProtonMail/go-vcard v0.0.0-20180326232728-33aaa0a0c8a5 h1:Uga1DHFN4GUxuDQr0F71tpi8I9HqPIlZodZAI1lR6VQ=
|
||||||
github.com/ProtonMail/go-vcard v0.0.0-20180326232728-33aaa0a0c8a5/go.mod h1:oeP9CMN+ajWp5jKp1kue5daJNwMMxLF+ujPaUIoJWlA=
|
github.com/ProtonMail/go-vcard v0.0.0-20180326232728-33aaa0a0c8a5/go.mod h1:oeP9CMN+ajWp5jKp1kue5daJNwMMxLF+ujPaUIoJWlA=
|
||||||
github.com/ProtonMail/gopenpgp/v2 v2.0.1 h1:x0uvDhry5WzoHeJO4J3dgMLhG4Z9PeBJ2O+sDOY0LcU=
|
github.com/ProtonMail/gopenpgp/v2 v2.0.1 h1:x0uvDhry5WzoHeJO4J3dgMLhG4Z9PeBJ2O+sDOY0LcU=
|
||||||
@ -82,8 +82,6 @@ github.com/emersion/go-imap-move v0.0.0-20190710073258-6e5a51a5b342 h1:5p1t3e1Po
|
|||||||
github.com/emersion/go-imap-move v0.0.0-20190710073258-6e5a51a5b342/go.mod h1:QuMaZcKFDVI0yCrnAbPLfbwllz1wtOrZH8/vZ5yzp4w=
|
github.com/emersion/go-imap-move v0.0.0-20190710073258-6e5a51a5b342/go.mod h1:QuMaZcKFDVI0yCrnAbPLfbwllz1wtOrZH8/vZ5yzp4w=
|
||||||
github.com/emersion/go-imap-quota v0.0.0-20200423100218-dcfd1b7d2b41 h1:z5lDGnSURauBEDdNLj3o0+HogVYKQCGeY3Anl/xyRfU=
|
github.com/emersion/go-imap-quota v0.0.0-20200423100218-dcfd1b7d2b41 h1:z5lDGnSURauBEDdNLj3o0+HogVYKQCGeY3Anl/xyRfU=
|
||||||
github.com/emersion/go-imap-quota v0.0.0-20200423100218-dcfd1b7d2b41/go.mod h1:iApyhIQBiU4XFyr+3kdJyyGqle82TbQyuP2o+OZHrV0=
|
github.com/emersion/go-imap-quota v0.0.0-20200423100218-dcfd1b7d2b41/go.mod h1:iApyhIQBiU4XFyr+3kdJyyGqle82TbQyuP2o+OZHrV0=
|
||||||
github.com/emersion/go-imap-specialuse v0.0.0-20200722111535-598ff00e4075 h1:z8TiDE4yqtzNeA1yb6ZRcktd+BHlXQbKGugvmDuc488=
|
|
||||||
github.com/emersion/go-imap-specialuse v0.0.0-20200722111535-598ff00e4075/go.mod h1:/nybxhI8kXom8Tw6BrHMl42usALvka6meORflnnYwe4=
|
|
||||||
github.com/emersion/go-imap-unselect v0.0.0-20171113212723-b985794e5f26 h1:FiSb8+XBQQSkcX3ubr+1tAtlRJBYaFmRZqOAweZ9Wy8=
|
github.com/emersion/go-imap-unselect v0.0.0-20171113212723-b985794e5f26 h1:FiSb8+XBQQSkcX3ubr+1tAtlRJBYaFmRZqOAweZ9Wy8=
|
||||||
github.com/emersion/go-imap-unselect v0.0.0-20171113212723-b985794e5f26/go.mod h1:+gnnZx3Mg3MnCzZrv0eZdp5puxXQUgGT/6N6L7ShKfM=
|
github.com/emersion/go-imap-unselect v0.0.0-20171113212723-b985794e5f26/go.mod h1:+gnnZx3Mg3MnCzZrv0eZdp5puxXQUgGT/6N6L7ShKfM=
|
||||||
github.com/emersion/go-mbox v1.0.2 h1:tE/rT+lEugK9y0myEymCCHnwlZN04hlXPrbKkxRBA5I=
|
github.com/emersion/go-mbox v1.0.2 h1:tE/rT+lEugK9y0myEymCCHnwlZN04hlXPrbKkxRBA5I=
|
||||||
@ -91,11 +89,17 @@ github.com/emersion/go-mbox v1.0.2/go.mod h1:Yp9IVuuOYLEuMv4yjgDHvhb5mHOcYH6x92O
|
|||||||
github.com/emersion/go-message v0.11.1/go.mod h1:C4jnca5HOTo4bGN9YdqNQM9sITuT3Y0K6bSUw9RklvY=
|
github.com/emersion/go-message v0.11.1/go.mod h1:C4jnca5HOTo4bGN9YdqNQM9sITuT3Y0K6bSUw9RklvY=
|
||||||
github.com/emersion/go-message v0.12.1-0.20200903165315-e1abe21f389a h1:3C6qIGgPr1qAT0ikRD5NbyKpME/iHCDeXhpv/JJsFsE=
|
github.com/emersion/go-message v0.12.1-0.20200903165315-e1abe21f389a h1:3C6qIGgPr1qAT0ikRD5NbyKpME/iHCDeXhpv/JJsFsE=
|
||||||
github.com/emersion/go-message v0.12.1-0.20200903165315-e1abe21f389a/go.mod h1:kYIioST9GDHte9/BRWgi93rpqbDuFftMjKSMaXS8ABo=
|
github.com/emersion/go-message v0.12.1-0.20200903165315-e1abe21f389a/go.mod h1:kYIioST9GDHte9/BRWgi93rpqbDuFftMjKSMaXS8ABo=
|
||||||
|
github.com/emersion/go-message v0.12.1-0.20201221184100-40c3f864532b h1:xYuhW6egTaCP+zjbUcfoy/Dr3ASdVPR9W7fmkHvZHPE=
|
||||||
|
github.com/emersion/go-message v0.12.1-0.20201221184100-40c3f864532b/go.mod h1:N1JWdZQ2WRUalmdHAX308CWBq747VJ8oUorFI3VCBwU=
|
||||||
github.com/emersion/go-sasl v0.0.0-20191210011802-430746ea8b9b/go.mod h1:G/dpzLu16WtQpBfQ/z3LYiYJn3ZhKSGWn83fyoyQe/k=
|
github.com/emersion/go-sasl v0.0.0-20191210011802-430746ea8b9b/go.mod h1:G/dpzLu16WtQpBfQ/z3LYiYJn3ZhKSGWn83fyoyQe/k=
|
||||||
github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21 h1:OJyUGMJTzHTd1XQp98QTaHernxMYzRaOasRir9hUlFQ=
|
github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21 h1:OJyUGMJTzHTd1XQp98QTaHernxMYzRaOasRir9hUlFQ=
|
||||||
github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21/go.mod h1:iL2twTeMvZnrg54ZoPDNfJaJaqy0xIQFuBdrLsmspwQ=
|
github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21/go.mod h1:iL2twTeMvZnrg54ZoPDNfJaJaqy0xIQFuBdrLsmspwQ=
|
||||||
|
github.com/emersion/go-smtp v0.14.0 h1:RYW203p+EcPjL8Z/ZpT9lZ6iOc8MG1MQzEx1UKEkXlA=
|
||||||
|
github.com/emersion/go-smtp v0.14.0/go.mod h1:qm27SGYgoIPRot6ubfQ/GpiPy/g3PaZAVRxiO/sDUgQ=
|
||||||
github.com/emersion/go-textwrapper v0.0.0-20160606182133-d0e65e56babe h1:40SWqY0zE3qCi6ZrtTf5OUdNm5lDnGnjRSq9GgmeTrg=
|
github.com/emersion/go-textwrapper v0.0.0-20160606182133-d0e65e56babe h1:40SWqY0zE3qCi6ZrtTf5OUdNm5lDnGnjRSq9GgmeTrg=
|
||||||
github.com/emersion/go-textwrapper v0.0.0-20160606182133-d0e65e56babe/go.mod h1:aqO8z8wPrjkscevZJFVE1wXJrLpC5LtJG7fqLOsPb2U=
|
github.com/emersion/go-textwrapper v0.0.0-20160606182133-d0e65e56babe/go.mod h1:aqO8z8wPrjkscevZJFVE1wXJrLpC5LtJG7fqLOsPb2U=
|
||||||
|
github.com/emersion/go-textwrapper v0.0.0-20200911093747-65d896831594 h1:IbFBtwoTQyw0fIM5xv1HF+Y+3ZijDR839WMulgxCcUY=
|
||||||
|
github.com/emersion/go-textwrapper v0.0.0-20200911093747-65d896831594/go.mod h1:aqO8z8wPrjkscevZJFVE1wXJrLpC5LtJG7fqLOsPb2U=
|
||||||
github.com/emersion/go-vcard v0.0.0-20190105225839-8856043f13c5 h1:n9qx98xiS5V4x2WIpPC2rr9mUM5ri9r/YhCEKbhCHro=
|
github.com/emersion/go-vcard v0.0.0-20190105225839-8856043f13c5 h1:n9qx98xiS5V4x2WIpPC2rr9mUM5ri9r/YhCEKbhCHro=
|
||||||
github.com/emersion/go-vcard v0.0.0-20190105225839-8856043f13c5/go.mod h1:WIi9g8OKJQHXtQbx7GExlo6UAFaui9WDMYabJ+Be4WI=
|
github.com/emersion/go-vcard v0.0.0-20190105225839-8856043f13c5/go.mod h1:WIi9g8OKJQHXtQbx7GExlo6UAFaui9WDMYabJ+Be4WI=
|
||||||
github.com/etcd-io/bbolt v1.3.3/go.mod h1:ZF2nL25h33cCyBtcyWeZ2/I3HQOfTP+0PIEvHjkjCrw=
|
github.com/etcd-io/bbolt v1.3.3/go.mod h1:ZF2nL25h33cCyBtcyWeZ2/I3HQOfTP+0PIEvHjkjCrw=
|
||||||
@ -184,6 +188,7 @@ github.com/logrusorgru/aurora v2.0.3+incompatible/go.mod h1:7rIyQOR62GCctdiQpZ/z
|
|||||||
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
|
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
|
||||||
github.com/martinlindhe/base36 v1.0.0 h1:eYsumTah144C0A8P1T/AVSUk5ZoLnhfYFM3OGQxB52A=
|
github.com/martinlindhe/base36 v1.0.0 h1:eYsumTah144C0A8P1T/AVSUk5ZoLnhfYFM3OGQxB52A=
|
||||||
github.com/martinlindhe/base36 v1.0.0/go.mod h1:+AtEs8xrBpCeYgSLoY/aJ6Wf37jtBuR0s35750M27+8=
|
github.com/martinlindhe/base36 v1.0.0/go.mod h1:+AtEs8xrBpCeYgSLoY/aJ6Wf37jtBuR0s35750M27+8=
|
||||||
|
github.com/martinlindhe/base36 v1.1.0/go.mod h1:+AtEs8xrBpCeYgSLoY/aJ6Wf37jtBuR0s35750M27+8=
|
||||||
github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
|
github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
|
||||||
github.com/mattn/go-colorable v0.1.4 h1:snbPLB8fVfU9iwbbo30TPtbLRzwWu6aJS6Xh4eaaviA=
|
github.com/mattn/go-colorable v0.1.4 h1:snbPLB8fVfU9iwbbo30TPtbLRzwWu6aJS6Xh4eaaviA=
|
||||||
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
|
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
|
||||||
@ -310,6 +315,7 @@ golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81R
|
|||||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
|
golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
|
||||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
|
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e h1:vcxGaoTs7kV8m5Np9uUNQin4BrLOthgV7252N8V+FwY=
|
||||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
@ -330,6 +336,8 @@ golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
|||||||
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
||||||
golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k=
|
golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k=
|
||||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||||
|
golang.org/x/text v0.3.5-0.20201125200606-c27b9fd57aec h1:A1qYjneJuzBZZ2gIB8rd6zrfq6l7SoEMJ8EsSilNK/U=
|
||||||
|
golang.org/x/text v0.3.5-0.20201125200606-c27b9fd57aec/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||||
golang.org/x/tools v0.0.0-20181221001348-537d06c36207/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
golang.org/x/tools v0.0.0-20181221001348-537d06c36207/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||||
golang.org/x/tools v0.0.0-20190327201419-c70d86f8b7cf/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
golang.org/x/tools v0.0.0-20190327201419-c70d86f8b7cf/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -15,8 +15,8 @@
|
|||||||
// You should have received a copy of the GNU General Public License
|
// You should have received a copy of the GNU General Public License
|
||||||
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
// Code generated by ./credits.sh at Tue Nov 24 08:56:01 AM CET 2020. DO NOT EDIT.
|
// Code generated by ./credits.sh at Mon Dec 28 02:39:43 PM CET 2020. DO NOT EDIT.
|
||||||
|
|
||||||
package bridge
|
package bridge
|
||||||
|
|
||||||
const Credits = "github.com/0xAX/notificator;github.com/abiosoft/ishell;github.com/abiosoft/readline;github.com/allan-simon/go-singleinstance;github.com/chzyer/logex;github.com/chzyer/test;github.com/cucumber/godog;github.com/docker/docker-credential-helpers;github.com/emersion/go-imap;github.com/emersion/go-imap-appendlimit;github.com/emersion/go-imap-idle;github.com/emersion/go-imap-move;github.com/emersion/go-imap-quota;github.com/emersion/go-imap-specialuse;github.com/emersion/go-imap-unselect;github.com/emersion/go-mbox;github.com/emersion/go-message;github.com/emersion/go-sasl;github.com/emersion/go-smtp;github.com/emersion/go-textwrapper;github.com/emersion/go-vcard;github.com/fatih/color;github.com/flynn-archive/go-shlex;github.com/getsentry/sentry-go;github.com/golang/mock;github.com/google/go-cmp;github.com/google/uuid;github.com/gopherjs/gopherjs;github.com/go-resty/resty/v2;github.com/hashicorp/go-multierror;github.com/jameskeane/bcrypt;github.com/jaytaylor/html2text;github.com/kardianos/osext;github.com/keybase/go-keychain;github.com/logrusorgru/aurora;github.com/Masterminds/semver/v3;github.com/mattn/go-runewidth;github.com/miekg/dns;github.com/myesui/uuid;github.com/nsf/jsondiff;github.com/olekukonko/tablewriter;github.com/pkg/errors;github.com/ProtonMail/bcrypt;github.com/ProtonMail/crypto;github.com/ProtonMail/docker-credential-helpers;github.com/ProtonMail/go-appdir;github.com/ProtonMail/go-apple-mobileconfig;github.com/ProtonMail/go-autostart;github.com/ProtonMail/go-imap;github.com/ProtonMail/go-imap-id;github.com/ProtonMail/gopenpgp/v2;github.com/ProtonMail/go-rfc5322;github.com/ProtonMail/go-smtp;github.com/ProtonMail/go-vcard;github.com/PuerkitoBio/goquery;github.com/sirupsen/logrus;github.com/skratchdot/open-golang;github.com/ssor/bom;github.com/stretchr/testify;github.com/therecipe/qt;github.com/twinj/uuid;github.com/urfave/cli;go.etcd.io/bbolt;golang.org/x/crypto;golang.org/x/net;golang.org/x/text;gopkg.in/stretchr/testify.v1;;Font Awesome 4.7.0;;Qt 5.13 by Qt group;"
|
const Credits = "github.com/0xAX/notificator;github.com/abiosoft/ishell;github.com/abiosoft/readline;github.com/allan-simon/go-singleinstance;github.com/chzyer/logex;github.com/chzyer/test;github.com/cucumber/godog;github.com/docker/docker-credential-helpers;github.com/emersion/go-imap;github.com/emersion/go-imap-appendlimit;github.com/emersion/go-imap-idle;github.com/emersion/go-imap-move;github.com/emersion/go-imap-quota;github.com/emersion/go-imap-unselect;github.com/emersion/go-mbox;github.com/emersion/go-message;github.com/emersion/go-sasl;github.com/emersion/go-smtp;github.com/emersion/go-textwrapper;github.com/emersion/go-vcard;github.com/fatih/color;github.com/flynn-archive/go-shlex;github.com/getsentry/sentry-go;github.com/golang/mock;github.com/google/go-cmp;github.com/google/uuid;github.com/gopherjs/gopherjs;github.com/go-resty/resty/v2;github.com/hashicorp/go-multierror;github.com/jameskeane/bcrypt;github.com/jaytaylor/html2text;github.com/kardianos/osext;github.com/keybase/go-keychain;github.com/logrusorgru/aurora;github.com/Masterminds/semver/v3;github.com/mattn/go-runewidth;github.com/miekg/dns;github.com/myesui/uuid;github.com/nsf/jsondiff;github.com/olekukonko/tablewriter;github.com/pkg/errors;github.com/ProtonMail/bcrypt;github.com/ProtonMail/crypto;github.com/ProtonMail/docker-credential-helpers;github.com/ProtonMail/go-appdir;github.com/ProtonMail/go-apple-mobileconfig;github.com/ProtonMail/go-autostart;github.com/ProtonMail/go-imap;github.com/ProtonMail/go-imap-id;github.com/ProtonMail/gopenpgp/v2;github.com/ProtonMail/go-rfc5322;github.com/ProtonMail/go-vcard;github.com/PuerkitoBio/goquery;github.com/sirupsen/logrus;github.com/skratchdot/open-golang;github.com/ssor/bom;github.com/stretchr/testify;github.com/therecipe/qt;github.com/twinj/uuid;github.com/urfave/cli;go.etcd.io/bbolt;golang.org/x/crypto;golang.org/x/net;golang.org/x/text;gopkg.in/stretchr/testify.v1;;Font Awesome 4.7.0;;Qt 5.13 by Qt group;"
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -15,18 +15,18 @@
|
|||||||
// You should have received a copy of the GNU General Public License
|
// You should have received a copy of the GNU General Public License
|
||||||
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
// Code generated by ./release-notes.sh at 'Mon Nov 23 07:38:53 AM CET 2020'. DO NOT EDIT.
|
// Code generated by ./release-notes.sh at 'Thu Jan 14 04:51:03 PM CET 2021'. DO NOT EDIT.
|
||||||
|
|
||||||
package bridge
|
package bridge
|
||||||
|
|
||||||
const ReleaseNotes = `• Improved package creation logic
|
const ReleaseNotes = `• Improvements to message parsing
|
||||||
• Refactor of sending functions to simplify code maintenance
|
• Better error handling
|
||||||
• Added tests for package creation
|
|
||||||
• For more detailed summary of the changes see https://github.com/ProtonMail/proton-bridge/blob/master/Changelog.md
|
|
||||||
`
|
`
|
||||||
|
|
||||||
const ReleaseFixedBugs = `• Bridge crashes related to labels handling
|
const ReleaseFixedBugs = `• Message corruption - rare cases of overly long headers
|
||||||
• GUI popup related to TLS connection error
|
• AppleMail crashes (related to timestamps)
|
||||||
• An issue where a random session key is included in the data payload
|
• Sending messages from aliases in combined inbox mode
|
||||||
• Error handling (including improved detection)
|
• Fedora font issues
|
||||||
|
|
||||||
|
For more detailed summary of the changes see https://github.com/ProtonMail/proton-bridge/blob/master/Changelog.md
|
||||||
`
|
`
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -22,6 +22,7 @@ import (
|
|||||||
"runtime"
|
"runtime"
|
||||||
|
|
||||||
"github.com/ProtonMail/proton-bridge/pkg/constants"
|
"github.com/ProtonMail/proton-bridge/pkg/constants"
|
||||||
|
pkgSentry "github.com/ProtonMail/proton-bridge/pkg/sentry"
|
||||||
"github.com/getsentry/sentry-go"
|
"github.com/getsentry/sentry-go"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"github.com/urfave/cli"
|
"github.com/urfave/cli"
|
||||||
@ -52,8 +53,9 @@ var (
|
|||||||
// Main sets up Sentry, filters out unwanted args, creates app and runs it.
|
// Main sets up Sentry, filters out unwanted args, creates app and runs it.
|
||||||
func Main(appName, usage string, extraFlags []cli.Flag, run func(*cli.Context) error) {
|
func Main(appName, usage string, extraFlags []cli.Flag, run func(*cli.Context) error) {
|
||||||
err := sentry.Init(sentry.ClientOptions{
|
err := sentry.Init(sentry.ClientOptions{
|
||||||
Dsn: constants.DSNSentry,
|
Dsn: constants.DSNSentry,
|
||||||
Release: constants.Revision,
|
Release: constants.Revision,
|
||||||
|
BeforeSend: pkgSentry.EnhanceSentryEvent,
|
||||||
})
|
})
|
||||||
|
|
||||||
sentry.ConfigureScope(func(scope *sentry.Scope) {
|
sentry.ConfigureScope(func(scope *sentry.Scope) {
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -26,6 +26,7 @@ import (
|
|||||||
|
|
||||||
"github.com/ProtonMail/proton-bridge/internal/frontend"
|
"github.com/ProtonMail/proton-bridge/internal/frontend"
|
||||||
"github.com/ProtonMail/proton-bridge/pkg/config"
|
"github.com/ProtonMail/proton-bridge/pkg/config"
|
||||||
|
"github.com/ProtonMail/proton-bridge/pkg/sentry"
|
||||||
"github.com/urfave/cli"
|
"github.com/urfave/cli"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -92,6 +93,8 @@ type PanicHandler struct {
|
|||||||
|
|
||||||
// HandlePanic should be called in defer to ensure restart of app after error.
|
// HandlePanic should be called in defer to ensure restart of app after error.
|
||||||
func (ph *PanicHandler) HandlePanic() {
|
func (ph *PanicHandler) HandlePanic() {
|
||||||
|
sentry.SkipDuringUnwind()
|
||||||
|
|
||||||
r := recover()
|
r := recover()
|
||||||
if r == nil {
|
if r == nil {
|
||||||
return
|
return
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -77,7 +77,7 @@ func (f *frontendCLI) showAccountAddressInfo(user types.User, address string) {
|
|||||||
"STARTTLS",
|
"STARTTLS",
|
||||||
)
|
)
|
||||||
f.Println("")
|
f.Println("")
|
||||||
f.Printf("SMTP Settings\nAddress: %s\nIMAP port: %d\nUsername: %s\nPassword: %s\nSecurity: %s\n",
|
f.Printf("SMTP Settings\nAddress: %s\nSMTP port: %d\nUsername: %s\nPassword: %s\nSecurity: %s\n",
|
||||||
bridge.Host,
|
bridge.Host,
|
||||||
f.preferences.GetInt(preferences.SMTPPortKey),
|
f.preferences.GetInt(preferences.SMTPPortKey),
|
||||||
address,
|
address,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -102,7 +102,7 @@ Item {
|
|||||||
Row {
|
Row {
|
||||||
anchors.left : parent.left
|
anchors.left : parent.left
|
||||||
|
|
||||||
Rectangle { height: Style.dialog.spacing; width: (wrapper.width- credits.width - release.width - sepaCreditsRelease.width)/2; color: "transparent"}
|
Rectangle { height: Style.dialog.spacing; width: (wrapper.width - credits.width - licenseFile.width - release.width - sepaCreditsRelease.width)/2; color: "transparent"}
|
||||||
|
|
||||||
ClickIconText {
|
ClickIconText {
|
||||||
id:credits
|
id:credits
|
||||||
@ -114,6 +114,20 @@ Item {
|
|||||||
onClicked : winMain.dialogCredits.show()
|
onClicked : winMain.dialogCredits.show()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Rectangle {id: sepaLicenseFile ; height: Style.dialog.spacing; width: Style.main.dummy; color: "transparent"}
|
||||||
|
|
||||||
|
ClickIconText {
|
||||||
|
id:licenseFile
|
||||||
|
iconText : ""
|
||||||
|
text : qsTr("License", "link to click on to view license file")
|
||||||
|
textColor : Style.main.textDisabled
|
||||||
|
fontSize : Style.main.fontSize
|
||||||
|
textUnderline : true
|
||||||
|
onClicked : {
|
||||||
|
go.openLicenseFile()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Rectangle {id: sepaCreditsRelease ; height: Style.dialog.spacing; width: Style.main.dummy; color: "transparent"}
|
Rectangle {id: sepaCreditsRelease ; height: Style.dialog.spacing; width: Style.main.dummy; color: "transparent"}
|
||||||
|
|
||||||
ClickIconText {
|
ClickIconText {
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -302,7 +302,6 @@ Dialog {
|
|||||||
|
|
||||||
font {
|
font {
|
||||||
bold: true
|
bold: true
|
||||||
family: Style.fontawesome.name
|
|
||||||
pointSize: Style.main.fontSize * Style.pt
|
pointSize: Style.main.fontSize * Style.pt
|
||||||
}
|
}
|
||||||
color: Style.main.text
|
color: Style.main.text
|
||||||
@ -355,6 +354,25 @@ Dialog {
|
|||||||
InlineLabelSelect {
|
InlineLabelSelect {
|
||||||
id: globalLabels
|
id: globalLabels
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Row {
|
||||||
|
spacing: Style.dialog.spacing
|
||||||
|
CheckBoxLabel {
|
||||||
|
id: importEncrypted
|
||||||
|
text: qsTr("Import encrypted emails as they are")
|
||||||
|
anchors {
|
||||||
|
bottom: parent.bottom
|
||||||
|
bottomMargin: Style.dialog.fontSize/1.8
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
InfoToolTip {
|
||||||
|
anchors {
|
||||||
|
verticalCenter: importEncrypted.verticalCenter
|
||||||
|
}
|
||||||
|
info: qsTr("When this option is enabled, encrypted emails will be imported as ciphertext. Otherwise, such messages will be skipped.", "todo")
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Buttons
|
// Buttons
|
||||||
@ -1018,7 +1036,7 @@ Dialog {
|
|||||||
)
|
)
|
||||||
break
|
break
|
||||||
case DialogImport.Page.Progress:
|
case DialogImport.Page.Progress:
|
||||||
go.startImport(root.address)
|
go.startImport(root.address, importEncrypted.checked)
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -106,6 +106,20 @@ Item {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Text {
|
||||||
|
id: licenseFile
|
||||||
|
text : qsTr("License", "link to click on to open license file")
|
||||||
|
color : Style.main.textDisabled
|
||||||
|
font.pointSize: Style.main.fontSize * Style.pt
|
||||||
|
font.underline: true
|
||||||
|
MouseArea {
|
||||||
|
anchors.fill: parent
|
||||||
|
onClicked : {
|
||||||
|
go.openLicenseFile()
|
||||||
|
}
|
||||||
|
cursorShape: Qt.PointingHandCursor
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
id: releaseNotes
|
id: releaseNotes
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -54,7 +54,6 @@ Rectangle {
|
|||||||
width : root.isHovered ? cellText.contentWidth : root.width
|
width : root.isHovered ? cellText.contentWidth : root.width
|
||||||
font {
|
font {
|
||||||
pointSize : Style.main.textSize * Style.pt
|
pointSize : Style.main.textSize * Style.pt
|
||||||
family : Style.fontawesome.name
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -47,7 +47,6 @@ Row {
|
|||||||
text : qsTr("Date range")
|
text : qsTr("Date range")
|
||||||
font {
|
font {
|
||||||
bold: true
|
bold: true
|
||||||
family: Style.fontawesome.name
|
|
||||||
pointSize: Style.main.fontSize * Style.pt
|
pointSize: Style.main.fontSize * Style.pt
|
||||||
}
|
}
|
||||||
color: Style.main.text
|
color: Style.main.text
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
@ -37,7 +37,6 @@ Row {
|
|||||||
text : qsTr("Add import label")
|
text : qsTr("Add import label")
|
||||||
font {
|
font {
|
||||||
bold: true
|
bold: true
|
||||||
family: Style.fontawesome.name
|
|
||||||
pointSize: Style.main.fontSize * Style.pt
|
pointSize: Style.main.fontSize * Style.pt
|
||||||
}
|
}
|
||||||
color: Style.main.text
|
color: Style.main.text
|
||||||
@ -140,7 +139,6 @@ Row {
|
|||||||
|
|
||||||
font {
|
font {
|
||||||
pointSize: Style.main.fontSize * Style.pt
|
pointSize: Style.main.fontSize * Style.pt
|
||||||
family: Style.fontawesome.name
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2020 Proton Technologies AG
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
//
|
//
|
||||||
// This file is part of ProtonMail Bridge.
|
// This file is part of ProtonMail Bridge.
|
||||||
//
|
//
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user