diff --git a/docs/GamUpdates.md b/docs/GamUpdates.md index 0fc14c1f..0fe28d51 100644 --- a/docs/GamUpdates.md +++ b/docs/GamUpdates.md @@ -11,6 +11,10 @@ Add the `-s` option to the end of the above commands to suppress creating the `g See [Downloads](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads) for Windows or other options, including manual installation +### 6.67.10 + +Fixed bug that caused a trap when optional argument `charset ` was used with `emlfile ` in `gam draft|import|insert message`. + ### 6.67.09 Added option `maxevents ` to `gam report ` that limits diff --git a/docs/How-to-Upgrade-from-Standard-GAM.md b/docs/How-to-Upgrade-from-Standard-GAM.md index 07a79aa5..8882377c 100644 --- a/docs/How-to-Upgrade-from-Standard-GAM.md +++ b/docs/How-to-Upgrade-from-Standard-GAM.md @@ -334,7 +334,7 @@ writes the credentials into the file oauth2.txt. admin@server:/Users/admin/bin/gamadv-xtd3$ rm -f /Users/admin/GAMConfig/oauth2.txt admin@server:/Users/admin/bin/gamadv-xtd3$ ./gam version WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found -GAMADV-XTD3 6.67.09 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.67.10 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.10.8 64-bit final MacOS High Sierra 10.13.6 x86_64 @@ -1002,7 +1002,7 @@ writes the credentials into the file oauth2.txt. C:\GAMADV-XTD3>del C:\GAMConfig\oauth2.txt C:\GAMADV-XTD3>gam version WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found -GAMADV-XTD3 6.67.09 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.67.10 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.0 64-bit final Windows-10-10.0.17134 AMD64 diff --git a/docs/Version-and-Help.md b/docs/Version-and-Help.md index aeb25e6d..b4c7d7cc 100644 --- a/docs/Version-and-Help.md +++ b/docs/Version-and-Help.md @@ -4,7 +4,7 @@ Print the current version of Gam with details ``` gam version -GAMADV-XTD3 6.67.09 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.67.10 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.0 64-bit final MacOS Monterey 12.7 x86_64 @@ -16,7 +16,7 @@ Time: 2023-06-02T21:10:00-07:00 Print the current version of Gam with details and time offset information ``` gam version timeoffset -GAMADV-XTD3 6.67.09 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.67.10 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.0 64-bit final MacOS Monterey 12.7 x86_64 @@ -28,7 +28,7 @@ Your system time differs from www.googleapis.com by less than 1 second Print the current version of Gam with extended details and SSL information ``` gam version extended -GAMADV-XTD3 6.67.09 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource +GAMADV-XTD3 6.67.10 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource Ross Scroggs Python 3.12.0 64-bit final MacOS Monterey 12.7 x86_64 @@ -65,7 +65,7 @@ MacOS High Sierra 10.13.6 x86_64 Path: /Users/Admin/bin/gamadv-xtd3 Version Check: Current: 5.35.08 - Latest: 6.67.09 + Latest: 6.67.10 echo $? 1 ``` @@ -73,7 +73,7 @@ echo $? Print the current version number without details ``` gam version simple -6.67.09 +6.67.10 ``` In Linux/MacOS you can do: ``` @@ -83,7 +83,7 @@ echo $VER Print the current version of Gam and address of this Wiki ``` gam help -GAM 6.67.09 - https://github.com/taers232c/GAMADV-XTD3 +GAM 6.67.10 - https://github.com/taers232c/GAMADV-XTD3 Ross Scroggs Python 3.12.0 64-bit final MacOS Monterey 12.7 x86_64 diff --git a/src/GamUpdate.txt b/src/GamUpdate.txt index ffc81a53..59919add 100644 --- a/src/GamUpdate.txt +++ b/src/GamUpdate.txt @@ -2,6 +2,10 @@ Merged GAM-Team version +6.67.10 + +Fixed bug that caused a trap when optional argument `charset ` was used with `emlfile ` in `gam draft|import|insert message`. + 6.67.09 Added option `maxevents ` to `gam report ` that limits diff --git a/src/gam/__init__.py b/src/gam/__init__.py index 0c7ac1bf..4d362bcc 100755 --- a/src/gam/__init__.py +++ b/src/gam/__init__.py @@ -66236,6 +66236,7 @@ def _draftImportInsertMessage(users, operation): deleted = processForCalendar = substituteForUserInHeaders = False neverMarkSpam = True emlFile = False + emlEncoding = 'ascii' while Cmd.ArgumentsRemaining(): myarg = getArgument() if myarg in SMTP_HEADERS_MAP: @@ -66267,10 +66268,13 @@ def _draftImportInsertMessage(users, operation): emlFile = False elif myarg == 'emlfile': filename = getString(Cmd.OB_FILE_NAME) - encoding = getString(Cmd.OB_CHAR_SET) if checkArgumentPresent('charset') else 'ascii' - msgText = readFile(filename, encoding=encoding) + if checkArgumentPresent('charset'): + emlEncoding = getString(Cmd.OB_CHAR_SET) + msgText = readFile(filename, encoding=emlEncoding) emlFile = True internalDateSource = 'dateHeader' + if checkArgumentPresent('emlutf8'): + emlEncoding = UTF8 elif myarg == 'replace': _getTagReplacement(tagReplacements, True) elif operation in IMPORT_INSERT and myarg == 'addlabel': @@ -66380,9 +66384,9 @@ def _draftImportInsertMessage(users, operation): if substituteForUserInHeaders: value = _substituteForUser(value, user, userName) msgText = re.sub(fr'(?sm)\n{header}:.+?(?=[\r\n]+[a-zA-Z0-9-]+:)', f'\n{header}: {value}', msgText, 1) - message_bytes = msgText.encode('ascii') + message_bytes = msgText.encode(emlEncoding) base64_bytes = base64.b64encode(message_bytes) - body = {'raw': base64_bytes.decode('ascii')} + body = {'raw': base64_bytes.decode(emlEncoding)} try: if operation != 'draft': if addLabelNames: