From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Philipp Stephani Newsgroups: gmane.emacs.bugs Subject: bug#29643: [PATCH] Silence macOS 10.13 deprecation notices (Bug#29643) Date: Sat, 16 Dec 2017 18:13:19 +0000 Message-ID: References: <20171210202737.GA78649@breton.holly.idiocy.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="001a113a870a02480e056079138d" X-Trace: blaine.gmane.org 1513448050 3639 195.159.176.226 (16 Dec 2017 18:14:10 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 16 Dec 2017 18:14:10 +0000 (UTC) Cc: 29643@debbugs.gnu.org To: Alan Third Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Dec 16 19:14:05 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eQGyL-0000WZ-4S for geb-bug-gnu-emacs@m.gmane.org; Sat, 16 Dec 2017 19:14:05 +0100 Original-Received: from localhost ([::1]:51656 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eQGyS-0002wX-CD for geb-bug-gnu-emacs@m.gmane.org; Sat, 16 Dec 2017 13:14:12 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55620) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eQGyL-0002wQ-GA for bug-gnu-emacs@gnu.org; Sat, 16 Dec 2017 13:14:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eQGyI-0007gc-8O for bug-gnu-emacs@gnu.org; Sat, 16 Dec 2017 13:14:05 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:57179) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eQGyI-0007gO-3F for bug-gnu-emacs@gnu.org; Sat, 16 Dec 2017 13:14:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eQGyH-0007c1-Tm for bug-gnu-emacs@gnu.org; Sat, 16 Dec 2017 13:14:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Philipp Stephani Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 16 Dec 2017 18:14:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 29643 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 29643-submit@debbugs.gnu.org id=B29643.151344801729179 (code B ref 29643); Sat, 16 Dec 2017 18:14:01 +0000 Original-Received: (at 29643) by debbugs.gnu.org; 16 Dec 2017 18:13:37 +0000 Original-Received: from localhost ([127.0.0.1]:37627 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eQGxt-0007aY-CL for submit@debbugs.gnu.org; Sat, 16 Dec 2017 13:13:37 -0500 Original-Received: from mail-qt0-f173.google.com ([209.85.216.173]:42808) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eQGxr-0007aL-BP for 29643@debbugs.gnu.org; Sat, 16 Dec 2017 13:13:36 -0500 Original-Received: by mail-qt0-f173.google.com with SMTP id g9so15771312qth.9 for <29643@debbugs.gnu.org>; Sat, 16 Dec 2017 10:13:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=9Qj+fE5vObcVTtbcqFkPE5C5YWMV093FCJJHhb2cY+c=; b=moEm6xKnwwnZcgy/Wi9X2DDsCA40QfAQ2kMbo+P/AmnaIZxs7SxSC6cKA9VM6CN22I Hl5T/TLcy3H+4X38UBVMFdkH/SDoXgl4mkoOKQvhGcfco6DaJtteqrmS9CYRdXrgPIAa zUB8OWF/gpuYisAJhx0WzNbv6r/pDQLulgeaMiawCkAjDwW4eojmPYOqhcb/qPgEXzj2 thZUGNfs8qKPRUqpHSHv6u448MPHjBinwfr49afdRP03MgiImVcQ55iZpBuEdklGHRn3 uHa9nYCqoOCrsupwtpj4jmVWMYr2/24kE8k5GzErsiXR4T0U2QKuSJ4oBdpuXNXu6bb/ t+UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=9Qj+fE5vObcVTtbcqFkPE5C5YWMV093FCJJHhb2cY+c=; b=cSSyIoHEM5ZWWri8Y382ZJ3tqCMHO+LVLrWtmIWsqfvvu2EuQHLjCLg63cn10ysVDS ZGNCyEc4hCMcdDaRGRGW6RFDjrBcKSz9A3399FcbngUxl1HfAoaDX3fV7jzKo6u5v4rG gVk4YOQTJn6rCX3FbBczOJIW4B1hxMJLl20Woz2gc9SWkaWYDBQJodryUdlor0GYHlgp nfILOOVc0vzuXZboH98z7gYIQgsz40uKlHgorWp4Us66CRAXKXq5MRVyK7Gf1gZyi145 g36pakj3CkEI62YMB2qzPAsG0XoADz8YCJ2WS98KuRgXei3SXzd11JRR2J1wtPR4ISCn IttA== X-Gm-Message-State: AKGB3mK/wunAQv9akVUcr94g0Fp43T12lTJc59BuQJeIr70+F6AOKAHW LDU7poPj88UU4DIu6uYZpBGglgIadUzyX8aFySQ= X-Google-Smtp-Source: ACJfBouVPdCyOlKAfsadWPvFBHsvOiFyrPeGqj+JRQbiK+LggmQkXteN6DXPLcpG+HPYNnxbnQXU6JWnyoGD7osSwyg= X-Received: by 10.200.35.28 with SMTP id a28mr29847955qta.51.1513448009777; Sat, 16 Dec 2017 10:13:29 -0800 (PST) In-Reply-To: <20171210202737.GA78649@breton.holly.idiocy.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:141173 Archived-At: --001a113a870a02480e056079138d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Thanks, the patch works fine. Alan Third schrieb am So., 10. Dez. 2017 um 21:27 Uhr: > * src/nsfns.m (Fx_display_backing_store): > (Fx_display_save_under): Don't use NSBackingStoreRetained or > NSBackingStoreNonretained on macOS 10.13+. > * src/nsselect.m (symbol_to_nsstring): > (ns_string_to_symbol): > (nxatoms_of_nsselect): Replace NSGeneralPboard with > NSPasteboardNameGeneral. > * src/nsterm.h: #define NSPasteboardNameGeneral to NSGeneralPboard on > GNUstep and macOS < 10.13. > * src/nsterm.m (EmacsView::resetCursorRects): > (EmacsScroller::resetCursorRects): Don't use setOnMouseEntered on > macOS 10.13+. > --- > src/nsfns.m | 4 ++++ > src/nsselect.m | 8 ++++---- > src/nsterm.h | 5 +++++ > src/nsterm.m | 17 +++++++++++++++-- > 4 files changed, 28 insertions(+), 6 deletions(-) > > diff --git a/src/nsfns.m b/src/nsfns.m > index 8172268167..064b476fb4 100644 > --- a/src/nsfns.m > +++ b/src/nsfns.m > @@ -1896,10 +1896,12 @@ and GNUstep implementations ("distributor-specifi= c > release > { > case NSBackingStoreBuffered: > return intern ("buffered"); > +#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300 > case NSBackingStoreRetained: > return intern ("retained"); > case NSBackingStoreNonretained: > return intern ("non-retained"); > +#endif > default: > error ("Strange value for backingType parameter of frame"); > } > @@ -1953,9 +1955,11 @@ and GNUstep implementations ("distributor-specific > release > case NSBackingStoreBuffered: > return Qt; > > +#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300 > case NSBackingStoreRetained: > case NSBackingStoreNonretained: > return Qnil; > +#endif > > default: > error ("Strange value for backingType parameter of frame"); > diff --git a/src/nsselect.m b/src/nsselect.m > index 067c7788e8..d1ce9437a7 100644 > --- a/src/nsselect.m > +++ b/src/nsselect.m > @@ -36,7 +36,7 @@ Updated by Christian Limpach (chris@nice.ch) > > static Lisp_Object Vselection_alist; > > -/* NSGeneralPboard is pretty much analogous to X11 CLIPBOARD */ > +/* NSPasteboardNameGeneral is pretty much analogous to X11 CLIPBOARD */ > static NSString *NXPrimaryPboard; > static NSString *NXSecondaryPboard; > > @@ -54,7 +54,7 @@ Updated by Christian Limpach (chris@nice.ch) > symbol_to_nsstring (Lisp_Object sym) > { > CHECK_SYMBOL (sym); > - if (EQ (sym, QCLIPBOARD)) return NSGeneralPboard; > + if (EQ (sym, QCLIPBOARD)) return NSPasteboardNameGeneral; > if (EQ (sym, QPRIMARY)) return NXPrimaryPboard; > if (EQ (sym, QSECONDARY)) return NXSecondaryPboard; > if (EQ (sym, QTEXT)) return NSStringPboardType; > @@ -70,7 +70,7 @@ Updated by Christian Limpach (chris@nice.ch) > static Lisp_Object > ns_string_to_symbol (NSString *t) > { > - if ([t isEqualToString: NSGeneralPboard]) > + if ([t isEqualToString: NSPasteboardNameGeneral]) > return QCLIPBOARD; > if ([t isEqualToString: NXPrimaryPboard]) > return QPRIMARY; > @@ -469,7 +469,7 @@ Updated by Christian Limpach (chris@nice.ch) > pasteboard_changecount > =3D [[NSMutableDictionary > dictionaryWithObjectsAndKeys: > - [NSNumber numberWithLong:0], NSGeneralPboard, > + [NSNumber numberWithLong:0], NSPasteboardNameGeneral, > [NSNumber numberWithLong:0], NXPrimaryPboard, > [NSNumber numberWithLong:0], NXSecondaryPboard, > [NSNumber numberWithLong:0], NSStringPboardType, > diff --git a/src/nsterm.h b/src/nsterm.h > index c81bf5fb63..e669c95931 100644 > --- a/src/nsterm.h > +++ b/src/nsterm.h > @@ -1322,5 +1322,10 @@ enum NSWindowTabbingMode > NSWindowTabbingModePreferred, > NSWindowTabbingModeDisallowed > }; > +#endif /* !defined (NS_IMPL_COCOA) || !defined (MAC_OS_X_VERSION_10_12) > */ > + > +#if !defined (NS_IMPL_COCOA) || !defined (MAC_OS_X_VERSION_10_13) > +/* Deprecated in macOS 10.13. */ > +#define NSPasteboardNameGeneral NSGeneralPboard > #endif > #endif /* HAVE_NS */ > diff --git a/src/nsterm.m b/src/nsterm.m > index 50e06c94d4..07ac8f978f 100644 > --- a/src/nsterm.m > +++ b/src/nsterm.m > @@ -6016,7 +6016,13 @@ - (void)resetCursorRects > > if (!NSIsEmptyRect (visible)) > [self addCursorRect: visible cursor: currentCursor]; > - [currentCursor setOnMouseEntered: YES]; > + > +#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300 > +#if MAC_OS_X_VERSION_MAX_ALLOWED >=3D 101300 > + if ([currentCursor respondsToSelector: @selector(setOnMouseEntered)]) > +#endif > + [currentCursor setOnMouseEntered: YES]; > +#endif > } > > > @@ -8746,7 +8752,14 @@ - (void)resetCursorRects > > if (!NSIsEmptyRect (visible)) > [self addCursorRect: visible cursor: [NSCursor arrowCursor]]; > - [[NSCursor arrowCursor] setOnMouseEntered: YES]; > + > +#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300 > +#if MAC_OS_X_VERSION_MAX_ALLOWED >=3D 101300 > + if ([[NSCursor arrowCursor] respondsToSelector: > + @selector(setOnMouseEntered)]) > +#endif > + [[NSCursor arrowCursor] setOnMouseEntered: YES]; > +#endif > } > > > -- > > Hi Philipp, can you please check whether this patch silences the > deprecation notices? > > I=E2=80=99m still on 10.12, so I can=E2=80=99t check myself. > > -- > Alan Third > --001a113a870a02480e056079138d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thanks, the patch works fine.

Alan Third <= alan@idiocy.org> schrieb am So., 10. Dez. 2017 um 21:27=C2=A0Uhr:
* src/nsfns.m (Fx_display_backing_sto= re):
(Fx_display_save_under): Don't use NSBackingStoreRetained or
NSBackingStoreNonretained on macOS 10.13+.
* src/nsselect.m (symbol_to_nsstring):
(ns_string_to_symbol):
(nxatoms_of_nsselect): Replace NSGeneralPboard with
NSPasteboardNameGeneral.
* src/nsterm.h: #define NSPasteboardNameGeneral to NSGeneralPboard on
GNUstep and macOS < 10.13.
* src/nsterm.m (EmacsView::resetCursorRects):
(EmacsScroller::resetCursorRects): Don't use setOnMouseEntered on
macOS 10.13+.
---
=C2=A0src/nsfns.m=C2=A0 =C2=A0 |=C2=A0 4 ++++
=C2=A0src/nsselect.m |=C2=A0 8 ++++----
=C2=A0src/nsterm.h=C2=A0 =C2=A0|=C2=A0 5 +++++
=C2=A0src/nsterm.m=C2=A0 =C2=A0| 17 +++++++++++++++--
=C2=A04 files changed, 28 insertions(+), 6 deletions(-)

diff --git a/src/nsfns.m b/src/nsfns.m
index 8172268167..064b476fb4 100644
--- a/src/nsfns.m
+++ b/src/nsfns.m
@@ -1896,10 +1896,12 @@ and GNUstep implementations ("distributor-spec= ific release
=C2=A0 =C2=A0 =C2=A0{
=C2=A0 =C2=A0 =C2=A0case NSBackingStoreBuffered:
=C2=A0 =C2=A0 =C2=A0 =C2=A0return intern ("buffered");
+#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300=
=C2=A0 =C2=A0 =C2=A0case NSBackingStoreRetained:
=C2=A0 =C2=A0 =C2=A0 =C2=A0return intern ("retained");
=C2=A0 =C2=A0 =C2=A0case NSBackingStoreNonretained:
=C2=A0 =C2=A0 =C2=A0 =C2=A0return intern ("non-retained");
+#endif
=C2=A0 =C2=A0 =C2=A0default:
=C2=A0 =C2=A0 =C2=A0 =C2=A0error ("Strange value for backingType param= eter of frame");
=C2=A0 =C2=A0 =C2=A0}
@@ -1953,9 +1955,11 @@ and GNUstep implementations ("distributor-speci= fic release
=C2=A0 =C2=A0 =C2=A0case NSBackingStoreBuffered:
=C2=A0 =C2=A0 =C2=A0 =C2=A0return Qt;

+#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300=
=C2=A0 =C2=A0 =C2=A0case NSBackingStoreRetained:
=C2=A0 =C2=A0 =C2=A0case NSBackingStoreNonretained:
=C2=A0 =C2=A0 =C2=A0 =C2=A0return Qnil;
+#endif

=C2=A0 =C2=A0 =C2=A0default:
=C2=A0 =C2=A0 =C2=A0 =C2=A0error ("Strange value for backingType param= eter of frame");
diff --git a/src/nsselect.m b/src/nsselect.m
index 067c7788e8..d1ce9437a7 100644
--- a/src/nsselect.m
+++ b/src/nsselect.m
@@ -36,7 +36,7 @@ Updated by Christian Limpach (chris@nice.ch)

=C2=A0static Lisp_Object Vselection_alist;

-/* NSGeneralPboard is pretty much analogous to X11 CLIPBOARD */
+/* NSPasteboardNameGeneral is pretty much analogous to X11 CLIPBOARD */ =C2=A0static NSString *NXPrimaryPboard;
=C2=A0static NSString *NXSecondaryPboard;

@@ -54,7 +54,7 @@ Updated by Christian Limpach (chris@nice.ch)
=C2=A0symbol_to_nsstring (Lisp_Object sym)
=C2=A0{
=C2=A0 =C2=A0CHECK_SYMBOL (sym);
-=C2=A0 if (EQ (sym, QCLIPBOARD))=C2=A0 =C2=A0return NSGeneralPboard;
+=C2=A0 if (EQ (sym, QCLIPBOARD))=C2=A0 =C2=A0return NSPasteboardNameGenera= l;
=C2=A0 =C2=A0if (EQ (sym, QPRIMARY))=C2=A0 =C2=A0 =C2=A0return NXPrimaryPbo= ard;
=C2=A0 =C2=A0if (EQ (sym, QSECONDARY))=C2=A0 =C2=A0return NXSecondaryPboard= ;
=C2=A0 =C2=A0if (EQ (sym, QTEXT))=C2=A0 =C2=A0 =C2=A0 =C2=A0 return NSStrin= gPboardType;
@@ -70,7 +70,7 @@ Updated by Christian Limpach (chris@nice.ch)
=C2=A0static Lisp_Object
=C2=A0ns_string_to_symbol (NSString *t)
=C2=A0{
-=C2=A0 if ([t isEqualToString: NSGeneralPboard])
+=C2=A0 if ([t isEqualToString: NSPasteboardNameGeneral])
=C2=A0 =C2=A0 =C2=A0return QCLIPBOARD;
=C2=A0 =C2=A0if ([t isEqualToString: NXPrimaryPboard])
=C2=A0 =C2=A0 =C2=A0return QPRIMARY;
@@ -469,7 +469,7 @@ Updated by Christian Limpach (chris@nice.ch)
=C2=A0 =C2=A0pasteboard_changecount
=C2=A0 =C2=A0 =C2=A0=3D [[NSMutableDictionary
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0dictionaryWithObjectsAndKeys:
-=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [NSNumber numberWithLong:0], NSG= eneralPboard,
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [NSNumber numberWithLong:0], NSP= asteboardNameGeneral,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[NSNumber numberWithLong:0]= , NXPrimaryPboard,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[NSNumber numberWithLong:0]= , NXSecondaryPboard,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[NSNumber numberWithLong:0]= , NSStringPboardType,
diff --git a/src/nsterm.h b/src/nsterm.h
index c81bf5fb63..e669c95931 100644
--- a/src/nsterm.h
+++ b/src/nsterm.h
@@ -1322,5 +1322,10 @@ enum NSWindowTabbingMode
=C2=A0 =C2=A0 =C2=A0NSWindowTabbingModePreferred,
=C2=A0 =C2=A0 =C2=A0NSWindowTabbingModeDisallowed
=C2=A0 =C2=A0};
+#endif /* !defined (NS_IMPL_COCOA) || !defined (MAC_OS_X_VERSION_10_12)=C2= =A0 */
+
+#if !defined (NS_IMPL_COCOA) || !defined (MAC_OS_X_VERSION_10_13)
+/* Deprecated in macOS 10.13.=C2=A0 */
+#define NSPasteboardNameGeneral NSGeneralPboard
=C2=A0#endif
=C2=A0#endif /* HAVE_NS */
diff --git a/src/nsterm.m b/src/nsterm.m
index 50e06c94d4..07ac8f978f 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -6016,7 +6016,13 @@ - (void)resetCursorRects

=C2=A0 =C2=A0if (!NSIsEmptyRect (visible))
=C2=A0 =C2=A0 =C2=A0[self addCursorRect: visible cursor: currentCursor]; -=C2=A0 [currentCursor setOnMouseEntered: YES];
+
+#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300=
+#if MAC_OS_X_VERSION_MAX_ALLOWED >=3D 101300
+=C2=A0 if ([currentCursor respondsToSelector: @selector(setOnMouseEntered)= ])
+#endif
+=C2=A0 =C2=A0 [currentCursor setOnMouseEntered: YES];
+#endif
=C2=A0}


@@ -8746,7 +8752,14 @@ - (void)resetCursorRects

=C2=A0 =C2=A0if (!NSIsEmptyRect (visible))
=C2=A0 =C2=A0 =C2=A0[self addCursorRect: visible cursor: [NSCursor arrowCur= sor]];
-=C2=A0 [[NSCursor arrowCursor] setOnMouseEntered: YES];
+
+#if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101300=
+#if MAC_OS_X_VERSION_MAX_ALLOWED >=3D 101300
+=C2=A0 if ([[NSCursor arrowCursor] respondsToSelector:
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 @selector(setOnMouseEntered)])
+#endif
+=C2=A0 =C2=A0 [[NSCursor arrowCursor] setOnMouseEntered: YES];
+#endif
=C2=A0}


--

Hi Philipp, can you please check whether this patch silences the
deprecation notices?

I=E2=80=99m still on 10.12, so I can=E2=80=99t check myself.

--
Alan Third
--001a113a870a02480e056079138d--