Hello community, here is the log from the commit of package evolution-ews for openSUSE:Leap:15.2 checked in at 2020-03-09 18:11:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/evolution-ews (Old) and /work/SRC/openSUSE:Leap:15.2/.evolution-ews.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "evolution-ews" Mon Mar 9 18:11:46 2020 rev:39 rq:779715 version:3.34.4 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/evolution-ews/evolution-ews.changes 2020-01-30 14:49:05.542860721 +0100 +++ /work/SRC/openSUSE:Leap:15.2/.evolution-ews.new.26092/evolution-ews.changes 2020-03-09 18:11:46.981232451 +0100 @@ -1,0 +2,15 @@ +Fri Feb 14 09:57:08 UTC 2020 - Bjørn Lie <[email protected]> + +- Update to version 3.34.4: + + Bugs fixed: + - Fails to create event with no duration. + - Map 'tzone://Microsoft/Utc' to libical's 'UTC'. + +------------------------------------------------------------------- +Sun Jan 5 14:27:14 UTC 2020 - Bjørn Lie <[email protected]> + +- Update to version 3.34.3: + + Bug Fixes: glgo#GNOME-evolution-ews#81: Attachment flag not + shown on messages with attachment. + +------------------------------------------------------------------- Old: ---- evolution-ews-3.34.2.tar.xz New: ---- evolution-ews-3.34.4.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ evolution-ews.spec ++++++ --- /var/tmp/diff_new_pack.PnQxbz/_old 2020-03-09 18:11:47.341232967 +0100 +++ /var/tmp/diff_new_pack.PnQxbz/_new 2020-03-09 18:11:47.345232973 +0100 @@ -1,7 +1,7 @@ # # spec file for package evolution-ews # -# Copyright (c) 2019 SUSE LLC +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ %define _version %(echo %{version} | grep -E -o '[0-9]+\.[0-9]+\.[0-9]+') Name: evolution-ews -Version: 3.34.2 +Version: 3.34.4 Release: 0 Summary: Exchange Connector for Evolution, compatible with Exchange 2007 and later License: LGPL-2.1-only ++++++ evolution-ews-3.34.2.tar.xz -> evolution-ews-3.34.4.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/evolution-ews-3.34.2/CMakeLists.txt new/evolution-ews-3.34.4/CMakeLists.txt --- old/evolution-ews-3.34.2/CMakeLists.txt 2019-11-22 11:03:30.000000000 +0100 +++ new/evolution-ews-3.34.4/CMakeLists.txt 2020-02-14 10:33:57.000000000 +0100 @@ -4,7 +4,7 @@ cmake_policy(VERSION 3.1) project(evolution-ews - VERSION 3.34.2 + VERSION 3.34.4 LANGUAGES C) set(PROJECT_BUGREPORT "https://gitlab.gnome.org/GNOME/evolution-ews/issues/") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/evolution-ews-3.34.2/NEWS new/evolution-ews-3.34.4/NEWS --- old/evolution-ews-3.34.2/NEWS 2019-11-22 11:03:30.000000000 +0100 +++ new/evolution-ews-3.34.4/NEWS 2020-02-14 10:33:57.000000000 +0100 @@ -1,3 +1,16 @@ +Evolution-EWS 3.34.4 2020-02-14 +------------------------------- + +Bug Fixes: + I#84 - Fails to create event with no duration (Milan Crha) + I#85 - Map 'tzone://Microsoft/Utc' to libical's 'UTC' (Milan Crha) + +Evolution-EWS 3.34.3 2020-01-03 +------------------------------- + +Bug Fixes: + I#81 - Attachment flag not shown on messages with attachment (Milan Crha) + Evolution-EWS 3.34.2 2019-11-22 ------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/evolution-ews-3.34.2/src/calendar/e-cal-backend-ews-utils.c new/evolution-ews-3.34.4/src/calendar/e-cal-backend-ews-utils.c --- old/evolution-ews-3.34.2/src/calendar/e-cal-backend-ews-utils.c 2019-11-22 11:03:30.000000000 +0100 +++ new/evolution-ews-3.34.4/src/calendar/e-cal-backend-ews-utils.c 2020-02-14 10:33:57.000000000 +0100 @@ -1137,7 +1137,7 @@ secs_end = (gint64) (zone_end ? i_cal_time_as_timet_with_zone (dtend, zone_end) : i_cal_time_as_timet (dtend)); /* takes whole day(s) and starts on midnight in the zone_start */ - return ((secs_end - secs_start) % (24 * 60 * 60)) == 0 && (secs_start % 24 * 60 * 60) == 0; + return ((secs_end - secs_start) > 0) && ((secs_end - secs_start) % (24 * 60 * 60)) == 0 && (secs_start % 24 * 60 * 60) == 0; } static gboolean diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/evolution-ews-3.34.2/src/calendar/windowsZones.xml new/evolution-ews-3.34.4/src/calendar/windowsZones.xml --- old/evolution-ews-3.34.2/src/calendar/windowsZones.xml 2019-11-22 11:03:30.000000000 +0100 +++ new/evolution-ews-3.34.4/src/calendar/windowsZones.xml 2020-02-14 10:33:57.000000000 +0100 @@ -228,6 +228,7 @@ <mapZone other="UTC" territory="001" type="Etc/GMT"/> <mapZone other="UTC" territory="GL" type="America/Danmarkshavn"/> <mapZone other="UTC" territory="ZZ" type="Etc/GMT"/> + <mapZone other="tzone://Microsoft/Utc" territory="002" type="UTC"/> <!-- (UTC) Dublin, Edinburgh, Lisbon, London --> <mapZone other="GMT Standard Time" territory="001" type="Europe/London"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/evolution-ews-3.34.2/src/camel/camel-ews-folder.c new/evolution-ews-3.34.4/src/camel/camel-ews-folder.c --- old/evolution-ews-3.34.2/src/camel/camel-ews-folder.c 2019-11-22 11:03:30.000000000 +0100 +++ new/evolution-ews-3.34.4/src/camel/camel-ews-folder.c 2020-02-14 10:33:57.000000000 +0100 @@ -929,6 +929,7 @@ message = camel_ews_folder_get_message_from_cache (ews_folder, uid, cancellable, error); if (message) { CamelInternetAddress *from; + CamelMessageInfo *mi; const gchar *email = NULL, *date_header; gboolean resave = FALSE; @@ -999,6 +1000,23 @@ } g_rec_mutex_unlock (&priv->cache_lock); } + + mi = camel_folder_summary_get (camel_folder_get_folder_summary (folder), uid); + if (mi) { + CamelMessageFlags flags; + gboolean has_attachment; + + flags = camel_message_info_get_flags (mi); + has_attachment = camel_mime_message_has_attachment (message); + if (((flags & CAMEL_MESSAGE_ATTACHMENTS) && !has_attachment) || + ((flags & CAMEL_MESSAGE_ATTACHMENTS) == 0 && has_attachment)) { + camel_message_info_set_flags ( + mi, CAMEL_MESSAGE_ATTACHMENTS, + has_attachment ? CAMEL_MESSAGE_ATTACHMENTS : 0); + } + + g_clear_object (&mi); + } } exit: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/evolution-ews-3.34.2/src/camel/camel-ews-utils.c new/evolution-ews-3.34.4/src/camel/camel-ews-utils.c --- old/evolution-ews-3.34.2/src/camel/camel-ews-utils.c 2019-11-22 11:03:30.000000000 +0100 +++ new/evolution-ews-3.34.4/src/camel/camel-ews-utils.c 2020-02-14 10:33:57.000000000 +0100 @@ -41,6 +41,7 @@ #define SUBFOLDER_DIR_NAME "subfolders" #define SUBFOLDER_DIR_NAME_LEN 10 +#define EWS_MAPI_MSGFLAG_HASATTACH 0x10 #define EWS_MAPI_MSGFLAG_RN_PENDING 0x100 CamelFolderInfo * @@ -643,7 +644,8 @@ if ((msg_flags & EWS_MAPI_MSGFLAG_RN_PENDING) != 0) server_flags |= CAMEL_EWS_MESSAGE_MSGFLAG_RN_PENDING; - /* TODO Update replied flags */ + if ((msg_flags & EWS_MAPI_MSGFLAG_HASATTACH) != 0) + server_flags |= CAMEL_MESSAGE_ATTACHMENTS; return server_flags; } @@ -1042,6 +1044,7 @@ { CamelFolderSummary *folder_summary; CamelMessageInfo *mi = NULL; + CamelContentType *content_type = NULL; const EwsId *id; const EwsMailbox *from; gchar *tmp; @@ -1079,9 +1082,15 @@ g_object_unref (stream); if (camel_mime_part_construct_from_parser_sync (part, parser, NULL, NULL)) { + CamelContentType *ct; + mi = camel_folder_summary_info_new_from_headers (folder_summary, camel_medium_get_headers (CAMEL_MEDIUM (part))); if (camel_medium_get_header (CAMEL_MEDIUM (part), "Disposition-Notification-To")) message_requests_read_receipt = TRUE; + + ct = camel_mime_part_get_content_type (part); + if (ct) + content_type = camel_content_type_ref (ct); } g_object_unref (parser); @@ -1133,7 +1142,34 @@ server_flags = ews_utils_get_server_flags (item); ews_utils_merge_server_user_flags (item, mi); - camel_message_info_set_flags (mi, server_flags, server_flags); + /* It serves as "should inherit CAMEL_MESSAGE_ATTACHMENTS from server_flags" now */ + has_attachments = !has_attachments; + + if (has_attachments && (server_flags & CAMEL_MESSAGE_ATTACHMENTS) != 0 && content_type) { + /* The server can have set the attachment flag, even when there is no attachment. + This will be fixed once the message is loaded, but let's fine tune the guess. */ + if (!camel_content_type_is (content_type, "multipart", "*") || + camel_content_type_is (content_type, "multipart", "alternative")) { + has_attachments = FALSE; + } else if (camel_content_type_is (content_type, "multipart", "related")) { + const gchar *related_type; + + related_type = camel_content_type_param (content_type, "type"); + if (related_type && *related_type) { + CamelContentType *ct; + + ct = camel_content_type_decode (related_type); + if (ct) { + if (camel_content_type_is (ct, "multipart", "alternative")) + has_attachments = FALSE; + + camel_content_type_unref (ct); + } + } + } + } + + camel_message_info_set_flags (mi, server_flags & ~(has_attachments ? 0 : CAMEL_MESSAGE_ATTACHMENTS), server_flags); camel_ews_message_info_set_server_flags (CAMEL_EWS_MESSAGE_INFO (mi), server_flags); camel_ews_utils_update_follow_up_flags (item, mi); @@ -1141,6 +1177,9 @@ camel_message_info_set_abort_notifications (mi, FALSE); + if (content_type) + camel_content_type_unref (content_type); + return mi; }
