From a44b55ae31f74009a7429dea59b0b6e1a1a602da Mon Sep 17 00:00:00 2001 From: Paul Woolcock <11843015+phw198@users.noreply.github.com> Date: Mon, 1 Apr 2024 14:42:24 +0100 Subject: [PATCH] v2.10.4 --- README.md | 14 +++++----- docs/Release Notes.md | 16 +++++++++++ docs/latest_zip_release.md | 2 +- nuget-build.bat | 24 ++++++++-------- .../Forms/MainForm.cs | 2 +- .../OutlookGoogleCalendarSync.nuspec | 26 ++++++++++++++++-- .../Properties/AssemblyInfo.cs | 2 +- src/OutlookGoogleCalendarSync/tzdb.nzd | Bin 133261 -> 133255 bytes 8 files changed, 61 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 54bfc57c..b487c465 100644 --- a/README.md +++ b/README.md @@ -29,17 +29,17 @@ If you find a bug, [help squash it](https://github.com/phw198/OutlookGoogleCalen      ![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.0-beta/OutlookGoogleCalendarSync-2.10.0-beta-full.nupkg.svg)      ![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.0-beta/OutlookGoogleCalendarSync-2.10.0-beta-delta.nupkg.svg) -### Latest Alpha Release: [![Latest Release](https://img.shields.io/github/release/phw198/OutlookGoogleCalendarSync/all.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/tag/v2.10.3-alpha) [![Latest Release downloads](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.3-alpha/total.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/v2.10.3-alpha) +### Latest Alpha Release: [![Latest Release](https://img.shields.io/github/release/phw198/OutlookGoogleCalendarSync/all.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/tag/v2.10.4-alpha) [![Latest Release downloads](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.4-alpha/total.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/v2.10.4-alpha) -:floppy_disk: [Installer](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.3-alpha/OGCS_Setup.exe) -      [![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.3-alpha/OGCS_Setup.exe.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.3-alpha/OGCS_Setup.exe) +:floppy_disk: [Installer](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.4-alpha/OGCS_Setup.exe) +      [![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.4-alpha/OGCS_Setup.exe.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.4-alpha/OGCS_Setup.exe) -:package: [Portable ZIP](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.3-alpha/Portable_OGCS_v2.10.3.zip) -      [![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.3-alpha/Portable_OGCS_v2.10.3.zip.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.3-alpha/Portable_OGCS_v2.10.3.zip) +:package: [Portable ZIP](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.4-alpha/Portable_OGCS_v2.10.4.zip) +      [![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.4-alpha/Portable_OGCS_v2.10.4.zip.svg)](https://github.com/phw198/OutlookGoogleCalendarSync/releases/download/v2.10.4-alpha/Portable_OGCS_v2.10.4.zip) :information_source: Upgrades to this release -      ![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.3-alpha/OutlookGoogleCalendarSync-2.10.3-alpha-full.nupkg.svg) -      ![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.3-alpha/OutlookGoogleCalendarSync-2.10.3-alpha-delta.nupkg.svg) +      ![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.4-alpha/OutlookGoogleCalendarSync-2.10.4-alpha-full.nupkg.svg) +      ![](https://img.shields.io/github/downloads/phw198/outlookgooglecalendarsync/v2.10.4-alpha/OutlookGoogleCalendarSync-2.10.4-alpha-delta.nupkg.svg) ## Functionality - Supports all versions of Outlook from 2003 to 2019/Microsoft365 64-bit! diff --git a/docs/Release Notes.md b/docs/Release Notes.md index f5ad1393..cb8c553d 100644 --- a/docs/Release Notes.md +++ b/docs/Release Notes.md @@ -1,6 +1,22 @@ | Release Notes | |:---| +# v2.10.4.0 - Alpha + +**Enhancements** +- New option: only show notifications when changes have been synced [[#1769](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1769)] +- Re-release of sync for Google Meet conference details [[#1076](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1076)] +- UI guidance that configured exclusions don't apply to series occurrences [[#1758](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1758)] +- Added menu option to Sync button for 'Full Sync' +- Logging improvements + +**Bugfix** +- Empty appointment descriptions broke GMeet details sync [[#1776](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1776),[#1810](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1810)] +- Finding calendar folders in alternate mailboxes [[#673](https://github.com/phw198/OutlookGoogleCalendarSync/issues/673)] +- Handle oddly specified annual recurrences in Google [[#1799](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1799)] +- Exclude Google's new 'Working Location' attribute [[#1817](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1817)] +- Handle connection issues to alternate mailboxes when refreshing Outlook categories [[#1823](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1823)] + # v2.10.3.0 - Alpha **Enhancements** diff --git a/docs/latest_zip_release.md b/docs/latest_zip_release.md index a3e14bc6..1cc91da3 100644 --- a/docs/latest_zip_release.md +++ b/docs/latest_zip_release.md @@ -1,3 +1,3 @@ # Latest ZIP Release -**Alpha**: [v2.10.2.0](https://github.com/phw198/OutlookGoogleCalendarSync/releases/tag/v2.10.2-alpha) +**Alpha**: [v2.10.4.0](https://github.com/phw198/OutlookGoogleCalendarSync/releases/tag/v2.10.4-alpha) **Beta**: [v2.10.0.0](https://github.com/phw198/OutlookGoogleCalendarSync/releases/latest) diff --git a/nuget-build.bat b/nuget-build.bat index 44ad6939..d46752ad 100644 --- a/nuget-build.bat +++ b/nuget-build.bat @@ -1,4 +1,4 @@ -set RELEASE=2.10.3-alpha +set RELEASE=2.10.4-alpha set RELEASEDIR=Release REM Check for new NodaTime DB @ http://nodatime.org/tzdb/latest.txt @@ -10,14 +10,14 @@ del Releases\OutlookGoogleCalendarSync-%RELEASE%-delta.nupkg cd .. REM Sign the stand-alone OGCS executable -REM src\packages\squirrel.windows.1.9.0\tools\signtool.exe sign /n "Open Source Developer, Paul Woolcock" /tr http://time.certum.pl/ /td sha256 /fd sha256 /v src\OutlookGoogleCalendarSync\bin\%RELEASEDIR%\OutlookGoogleCalendarSync.exe +REM src\packages\squirrel.windows.1.9.0\tools\signtool.exe sign /a /n "Open Source Developer, Paul Woolcock" /tr http://time.certum.pl/ /td sha256 /fd sha256 /v src\OutlookGoogleCalendarSync\bin\%RELEASEDIR%\OutlookGoogleCalendarSync.exe REM In VS Package Manager REM PM> Install-Package squirrel.windows -Version 1.9.0 -REM PM> packages\squirrel.windows.1.9.0\tools\Squirrel --releasify OutlookGoogleCalendarSync.2.10.3-alpha.nupkg --no-msi --loadingGif=..\docs\images\ogcs128x128-animated.gif +REM PM> packages\squirrel.windows.1.9.0\tools\Squirrel --releasify OutlookGoogleCalendarSync.2.10.4-alpha.nupkg --no-msi --loadingGif=..\docs\images\ogcs128x128-animated.gif REM Sign the Squirrel install executable -REM src\packages\squirrel.windows.1.9.0\tools\signtool.exe sign /n "Open Source Developer, Paul Woolcock" /tr http://time.certum.pl/ /td sha256 /fd sha256 /v src\Releases\Setup.exe +REM src\packages\squirrel.windows.1.9.0\tools\signtool.exe sign /a /n "Open Source Developer, Paul Woolcock" /tr http://time.certum.pl/ /td sha256 /fd sha256 /v src\Releases\Setup.exe REM Build ZIP PAUSE @@ -25,15 +25,15 @@ del src\Releases\OGCS_Setup.exe rename src\Releases\Setup.exe OGCS_Setup.exe cd src\OutlookGoogleCalendarSync\bin\%RELEASEDIR% -del Portable_OGCS_v2.10.3.zip -"c:\Program Files\7-Zip\7z.exe" u Portable_OGCS_v2.10.1.zip -u- -up0q0r2x2y2z1w2!Portable_OGCS_v2.10.3.zip *.dll *.ps1 ErrorReportingTemplate.json logger.xml tzdb.nzd OutlookGoogleCalendarSync.exe OutlookGoogleCalendarSync.exe.config OutlookGoogleCalendarSync.pdb Console\* +del Portable_OGCS_v2.10.4.zip +"c:\Program Files\7-Zip\7z.exe" u Portable_OGCS_v2.10.3.zip -u- -up0q0r2x2y2z1w2!Portable_OGCS_v2.10.4.zip *.dll *.ps1 ErrorReportingTemplate.json logger.xml tzdb.nzd OutlookGoogleCalendarSync.exe OutlookGoogleCalendarSync.exe.config OutlookGoogleCalendarSync.pdb Console\* -"c:\Program Files\7-Zip\7z.exe" e -y Portable_OGCS_v2.10.1.zip Microsoft.Office.Interop.Outlook.DLL -"c:\Program Files\7-Zip\7z.exe" e -y Portable_OGCS_v2.10.1.zip stdole.dll -"c:\Program Files\7-Zip\7z.exe" e -y Portable_OGCS_v2.10.1.zip "Windows Defender SmartScreen Unblock.ps1" +"c:\Program Files\7-Zip\7z.exe" e -y Portable_OGCS_v2.10.3.zip Microsoft.Office.Interop.Outlook.DLL +"c:\Program Files\7-Zip\7z.exe" e -y Portable_OGCS_v2.10.3.zip stdole.dll +"c:\Program Files\7-Zip\7z.exe" e -y Portable_OGCS_v2.10.3.zip "Windows Defender SmartScreen Unblock.ps1" -"c:\Program Files\7-Zip\7z.exe" a Portable_OGCS_v2.10.3.zip Microsoft.Office.Interop.Outlook.DLL -"c:\Program Files\7-Zip\7z.exe" a Portable_OGCS_v2.10.3.zip stdole.dll -"c:\Program Files\7-Zip\7z.exe" a Portable_OGCS_v2.10.3.zip "Windows Defender SmartScreen Unblock.ps1" +"c:\Program Files\7-Zip\7z.exe" a Portable_OGCS_v2.10.4.zip Microsoft.Office.Interop.Outlook.DLL +"c:\Program Files\7-Zip\7z.exe" a Portable_OGCS_v2.10.4.zip stdole.dll +"c:\Program Files\7-Zip\7z.exe" a Portable_OGCS_v2.10.4.zip "Windows Defender SmartScreen Unblock.ps1" cd ..\..\..\.. diff --git a/src/OutlookGoogleCalendarSync/Forms/MainForm.cs b/src/OutlookGoogleCalendarSync/Forms/MainForm.cs index 681f4dd5..4f3f0fed 100644 --- a/src/OutlookGoogleCalendarSync/Forms/MainForm.cs +++ b/src/OutlookGoogleCalendarSync/Forms/MainForm.cs @@ -1289,7 +1289,7 @@ private void groupboxSizing(GroupBox section, PictureBox sectionImage, Boolean? //Settings case "How": section.Height = btCloseRegexRules.Visible ? 251 : 198; break; case "When": section.Height = 119; break; - case "What": section.Height = 250; break; + case "What": section.Height = 265; break; //Application Behaviour case "Logging": section.Height = 125; break; case "Proxy": section.Height = 197; break; diff --git a/src/OutlookGoogleCalendarSync/OutlookGoogleCalendarSync.nuspec b/src/OutlookGoogleCalendarSync/OutlookGoogleCalendarSync.nuspec index 2df9436b..a1e72849 100644 --- a/src/OutlookGoogleCalendarSync/OutlookGoogleCalendarSync.nuspec +++ b/src/OutlookGoogleCalendarSync/OutlookGoogleCalendarSync.nuspec @@ -2,7 +2,7 @@ OutlookGoogleCalendarSync - 2.10.3-alpha + 2.10.4-alpha Outlook Google Calendar Sync Paul Woolcock phw198 @@ -12,16 +12,36 @@ false Sync Outlook and Google calendars. -# What's New In v2.10.3? +# What's New In v2.10.4? <i class="em em-high_brightness"></i> **Enhancements** -- New option to: + +- Re-release of v2.10.3 - see below for details +- New option: only show notifications when changes have been synced [[#1769](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1769)] +- UI guidance that configured exclusions don't apply to series occurrences [[#1758](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1758)] +- Added menu option to Sync button for 'Full Sync' +- Logging improvements + +<i class="em em-beetle"></i> **Bugfix** + +- Empty appointment descriptions broke GMeet details sync [[#1776](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1776),[#1810](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1810)] +- Finding calendar folders in alternate mailboxes [[#673](https://github.com/phw198/OutlookGoogleCalendarSync/issues/673)] +- Handle oddly specified annual recurrences in Google [[#1799](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1799)] +- Exclude Google's new 'Working Location' attribute [[#1817](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1817)] +- Handle connection issues to alternate mailboxes when refreshing Outlook categories [[#1823](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1823)] + +## v2.10.3 + +<i class="em em-high_brightness"></i> **Enhancements** + +- New options to: - Sync Google Meet conference details [[#1076](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1076)] - Anonymise calendar subjects in log file [[#1755](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1755)] - Improved efficiency when locating Google recurring series [[#1738](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1738)] - Handle poorly configured proxy servers [[#1745](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1745)] <i class="em em-beetle"></i> **Bugfix** + - Failing to delete occurrence of Google series [[#1753](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1753)] - Handle Google rate limiting for too many meeting attendees [[#1744](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1744)] - Apply existing obfuscation rules against item Subjects [[#1725](https://github.com/phw198/OutlookGoogleCalendarSync/issues/1725)] diff --git a/src/OutlookGoogleCalendarSync/Properties/AssemblyInfo.cs b/src/OutlookGoogleCalendarSync/Properties/AssemblyInfo.cs index ac326ed4..8a8f0fc5 100644 --- a/src/OutlookGoogleCalendarSync/Properties/AssemblyInfo.cs +++ b/src/OutlookGoogleCalendarSync/Properties/AssemblyInfo.cs @@ -28,6 +28,6 @@ // You can specify all the values or you can use the default the Revision and // Build Numbers by using the '*' as shown below: [assembly: AssemblyVersion("2.10.*")] -[assembly: AssemblyFileVersion("2.10.3.0")] +[assembly: AssemblyFileVersion("2.10.4.0")] [assembly: AssemblyMetadata("SquirrelAwareVersion", "1")] \ No newline at end of file diff --git a/src/OutlookGoogleCalendarSync/tzdb.nzd b/src/OutlookGoogleCalendarSync/tzdb.nzd index 929439d17c39b6b58392204704f9704f945b8cba..e74ec8fe1ca77eaf2156baf1026929940dcbf160 100644 GIT binary patch delta 9606 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 RY`F4@j=e~@@|lj!_`e*@G&=wQ delta 9549 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