Hello community,

here is the log from the commit of package eclipse-ecf for openSUSE:Factory 
checked in at 2020-07-16 12:12:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/eclipse-ecf (Old)
 and      /work/SRC/openSUSE:Factory/.eclipse-ecf.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "eclipse-ecf"

Thu Jul 16 12:12:23 2020 rev:6 rq:818542 version:3.14.8

Changes:
--------
--- /work/SRC/openSUSE:Factory/eclipse-ecf/eclipse-ecf.changes  2020-06-04 
17:53:52.152527897 +0200
+++ /work/SRC/openSUSE:Factory/.eclipse-ecf.new.3592/eclipse-ecf.changes        
2020-07-16 12:14:06.846701522 +0200
@@ -1,0 +2,10 @@
+Fri Jul  3 09:46:57 UTC 2020 - Fridrich Strba <fst...@suse.com>
+
+- Update to 3.14.8
+- Remove patch:
+  * eclipse-ecf-feature-deps.patch
+- Added patches:
+  * 0001-Avoid-hard-coding-dependency-versions-by-using-featu.patch
+  * 0002-Remove-unneeded-dep-on-jdt-annotations.patch
+
+-------------------------------------------------------------------

Old:
----
  eclipse-ecf-feature-deps.patch
  org.eclipse.ecf-10bfc24f030d889e7dfa36e3a77034ae2786c368.tar.xz

New:
----
  0001-Avoid-hard-coding-dependency-versions-by-using-featu.patch
  0002-Remove-unneeded-dep-on-jdt-annotations.patch
  org.eclipse.ecf-1e6e8e72cbb77a0e359e409cd4d2a58d03a6428d.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ eclipse-ecf.spec ++++++
--- /var/tmp/diff_new_pack.LUwFyU/_old  2020-07-16 12:14:09.670704377 +0200
+++ /var/tmp/diff_new_pack.LUwFyU/_new  2020-07-16 12:14:09.670704377 +0200
@@ -26,38 +26,41 @@
 # This exclude breaks the cyclic dependency on the platform to aide in
 # bootstrapping
 %global __requires_exclude .*org\.eclipse\.equinox.*
-%global git_tag 10bfc24f030d889e7dfa36e3a77034ae2786c368
+%global git_tag 1e6e8e72cbb77a0e359e409cd4d2a58d03a6428d
 # Set this flag to avoid building additional providers when their
 # dependencies are not available
 %bcond_with providers
-Version:        3.14.7
+Version:        3.14.8
 Release:        0
 Summary:        Eclipse Communication Framework (ECF) Eclipse plug-in
-# Note: The jive/smack provider is apache licensed
-License:        EPL-1.0 AND Apache-2.0
+License:        EPL-2.0 AND Apache-2.0 AND BSD-3-Clause
 Group:          Development/Libraries/Java
 URL:            https://www.eclipse.org/ecf/
 Source0:        
https://git.eclipse.org/c/ecf/org.eclipse.ecf.git/snapshot/org.eclipse.ecf-%{git_tag}.tar.xz
 # Change how feature deps are specified, to avoid embedding versions
-Patch0:         eclipse-ecf-feature-deps.patch
+Patch0:         0001-Avoid-hard-coding-dependency-versions-by-using-featu.patch
+# Unneeded dep on JDT prevents bootstrap mode
+Patch1:         0002-Remove-unneeded-dep-on-jdt-annotations.patch
 BuildRequires:  apache-commons-codec
 BuildRequires:  apache-commons-logging
-BuildRequires:  eclipse-license
+BuildRequires:  eclipse-license2
 BuildRequires:  fdupes
+BuildRequires:  glassfish-annotation-api
 BuildRequires:  httpcomponents-client
 BuildRequires:  httpcomponents-core
+BuildRequires:  java-devel >= 9
+BuildRequires:  maven-local
 BuildRequires:  maven-plugin-build-helper
 BuildRequires:  osgi-annotation
-BuildRequires:  tycho-extras
-BuildRequires:  xpp3-minimal
-BuildConflicts: java-devel >= 9
+# Upstream Eclipse no longer supports non-64bit arches
+ExcludeArch:    s390 %{arm} %{ix86}
 %if %{with bootstrap}
 Name:           eclipse-ecf-bootstrap
+BuildRequires:  tycho-bootstrap
+#!BuildIgnore:  tycho
 %else
 Name:           eclipse-ecf
-%endif
-%if %{without bootstrap}
-BuildRequires:  eclipse-ecf-core-bootstrap
+BuildRequires:  eclipse-ecf-core-bootstrap >= %{version}
 BuildRequires:  eclipse-emf-core
 BuildRequires:  eclipse-emf-runtime
 BuildRequires:  eclipse-pde-bootstrap
@@ -67,13 +70,6 @@
 #!BuildIgnore:  eclipse-platform
 #!BuildIgnore:  tycho-bootstrap
 #!BuildRequires: log4j
-%if %{with providers}
-BuildRequires:  dnsjava
-BuildRequires:  irclib
-%endif
-%else
-BuildRequires:  tycho-bootstrap
-#!BuildIgnore:  tycho
 %endif
 
 %description
@@ -127,6 +123,7 @@
 find . -type f -name "*.class" -exec rm {} \;
 
 %patch0 -p1
+%patch1 -p1
 
 # Correction for content of runtime package
 %pom_xpath_remove "feature/plugin[@id='org.eclipse.ecf.presence']" 
releng/features/org.eclipse.ecf.core/feature.xml
@@ -134,6 +131,7 @@
 # Don't build examples or tests
 sed -i -e '/<module>examples/d' -e '/<module>tests/d' pom.xml
 %pom_disable_module releng/features/org.eclipse.ecf.tests.feature
+%pom_disable_module releng/features/org.eclipse.ecf.tests.filetransfer.feature
 %pom_disable_module releng/features/org.eclipse.ecf.eventadmin.examples.feature
 %pom_disable_module 
releng/features/org.eclipse.ecf.remoteservice.examples.feature
 %pom_disable_module 
releng/features/org.eclipse.ecf.remoteservice.sdk.examples.feature
@@ -155,21 +153,24 @@
 %pom_disable_module releng/features/org.eclipse.ecf.discovery.zookeeper.feature
 %pom_disable_module providers/bundles/org.eclipse.ecf.provider.zookeeper
 %pom_xpath_remove 
"feature/includes[@id='org.eclipse.ecf.discovery.zookeeper.feature']" 
releng/features/org.eclipse.ecf.remoteservice.sdk.feature/feature.xml
+sed -i -e '/provider.zookeeper/d' 
doc/bundles/org.eclipse.ecf.doc/build.properties
 
 # Using latest rome requires non-trivial port
 %pom_disable_module 
releng/features/org.eclipse.ecf.remoteservice.rest.synd.feature
 %pom_disable_module framework/bundles/org.eclipse.ecf.remoteservice.rest.synd
+sed -i -e '/remoteservice.rest.synd/d' 
doc/bundles/org.eclipse.ecf.doc/build.properties
 
 # Disable SLP provider, rhbz#1416706
 %pom_disable_module releng/features/org.eclipse.ecf.discovery.slp.feature
 %pom_disable_module providers/bundles/org.eclipse.ecf.provider.jslp
 %pom_disable_module protocols/bundles/ch.ethz.iks.slp
 %pom_xpath_remove 
"feature/includes[@id='org.eclipse.ecf.discovery.slp.feature']" 
releng/features/org.eclipse.ecf.remoteservice.sdk.feature/feature.xml
+sed -i -e '/provider.jslp/d' doc/bundles/org.eclipse.ecf.doc/build.properties
 
-# Misc other providers
-%if %{without providers}
+# Misc other providers that we don't need
 %pom_disable_module releng/features/org.eclipse.ecf.discovery.dnssd.feature
 %pom_disable_module providers/bundles/org.eclipse.ecf.provider.dnssd
+sed -i -e '/provider.dnssd/d' doc/bundles/org.eclipse.ecf.doc/build.properties
 %pom_disable_module protocols/bundles/org.jivesoftware.smack
 %pom_disable_module providers/bundles/org.eclipse.ecf.provider.xmpp.datashare
 %pom_disable_module providers/bundles/org.eclipse.ecf.provider.xmpp
@@ -181,7 +182,6 @@
 %pom_disable_module providers/bundles/org.eclipse.ecf.provider.irc.ui
 %pom_xpath_remove "feature/plugin[@id='org.eclipse.ecf.provider.irc']" 
releng/features/org.eclipse.ecf.core/feature.xml
 %pom_xpath_remove "feature/plugin[@id='org.eclipse.ecf.provider.irc.ui']" 
releng/features/org.eclipse.ecf.core/feature.xml
-%endif
 
 # Don't build bundles that are not relevant to our platform
 %pom_disable_module 
providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45.win32
@@ -189,12 +189,6 @@
 
 # Use system libs
 ln -s $(build-classpath osgi-annotation) 
osgi/bundles/org.eclipse.osgi.services.remoteserviceadmin/osgi/osgi.annotation.jar
-%if %{with providers}
-ln -s $(build-classpath xpp3-minimal) 
protocols/bundles/org.jivesoftware.smack/jars/xpp.jar
-echo "Eclipse-BundleShape: dir" >> 
protocols/bundles/org.jivesoftware.smack/META-INF/MANIFEST.MF
-ln -s $(build-classpath irclib) 
providers/bundles/org.eclipse.ecf.provider.irc/lib/irclib.jar
-echo "Eclipse-BundleShape: dir" >> 
providers/bundles/org.eclipse.ecf.provider.irc/META-INF/MANIFEST.MF
-%endif
 
 %if %{with bootstrap}
 # Only build core modules when bootstrapping
@@ -204,6 +198,7 @@
 <module>releng/features/org.eclipse.ecf.filetransfer.feature</module>
 
<module>releng/features/org.eclipse.ecf.filetransfer.httpclient4.feature</module>
 
<module>releng/features/org.eclipse.ecf.filetransfer.httpclient4.ssl.feature</module>
+<module>releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature</module>
 <module>releng/features/org.eclipse.ecf.filetransfer.ssl.feature</module>
 <module>framework/bundles/org.eclipse.ecf</module>
 <module>framework/bundles/org.eclipse.ecf.identity</module>
@@ -212,6 +207,7 @@
 <module>providers/bundles/org.eclipse.ecf.provider.filetransfer</module>
 
<module>providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient4</module>
 
<module>providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient4.ssl</module>
+<module>providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45</module>
 <module>providers/bundles/org.eclipse.ecf.provider.filetransfer.ssl</module>
 </modules>"
 %endif
@@ -219,6 +215,11 @@
 # TODO: Figure out why this is necessary....
 sed -i -e '/Require-Bundle:/a\ org.eclipse.osgi.services,' 
framework/bundles/org.eclipse.ecf.console/META-INF/MANIFEST.MF
 
+%pom_xpath_inject \
+       
"pom:plugin/pom:executions/pom:execution/pom:configuration/pom:dependencies" \
+       
"<dependency><artifactId>javax.annotation-api</artifactId><type>eclipse-plugin</type></dependency>"
 \
+       doc/bundles/org.eclipse.ecf.doc
+
 # Don't install poms
 %{mvn_package} "::{pom,target}::" __noinstall
 
@@ -237,6 +238,7 @@
 %{mvn_package} ":org.eclipse.ecf.remoteservice.sdk.*" sdk
 %{mvn_package} ":org.eclipse.ecf.core.{,ssl.}feature"
 %{mvn_package} ":org.eclipse.ecf.filetransfer.{,httpclient4.}{,ssl.}feature"
+%{mvn_package} ":org.eclipse.ecf.filetransfer.httpclient45.feature"
 %{mvn_package} ":org.eclipse.ecf{,.identity,.ssl,.filetransfer}"
 %{mvn_package} ":org.eclipse.ecf.provider.filetransfer*"
 %{mvn_package} ":" runtime
@@ -274,24 +276,12 @@
     updir="$updir../"
 done
 pushd %{buildroot}%{_javadir}/eclipse
-for J in 
ecf{,.identity,.ssl,.filetransfer,.provider.filetransfer{,.ssl,.httpclient4{,.ssl}}}
  ; do
+for J in 
ecf{,.identity,.ssl,.filetransfer,.provider.filetransfer{,.ssl,.httpclient4{,.ssl}}}
 ecf.provider.filetransfer.httpclient45 ; do
     DIR=$updir%{_eclipsedir}/plugins
     [ -e "`ls $DIR/org.eclipse.${J}_*.jar`" ] && ln -s 
$DIR/org.eclipse.${J}_*.jar ${J}.jar
 done
 popd
 
-# Use system libs
-%if %{without bootstrap}
-%if %{with providers}
-pushd 
%{buildroot}%{_datadir}/eclipse/droplets/ecf-sdk/plugins/org.eclipse.ecf.provider.irc_*
-rm lib/irclib.jar && ln -s $(build-classpath irclib) lib/irclib.jar
-popd
-pushd 
%{buildroot}%{_datadir}/eclipse/droplets/ecf-runtime/plugins/org.jivesoftware.smack_*
-rm jars/xpp.jar && ln -s $(build-classpath xpp3-minimal) jars/xpp.jar
-popd
-%endif
-%endif
-
 %fdupes -s %{buildroot}
 
 %if %{with bootstrap}

++++++ 0001-Avoid-hard-coding-dependency-versions-by-using-featu.patch ++++++
>From 51b88b0a6e59107f393d497cf94db07c0865e577 Mon Sep 17 00:00:00 2001
From: Mat Booth <mat.bo...@redhat.com>
Date: Sun, 16 Jun 2019 12:22:32 +0100
Subject: [PATCH 1/2] Avoid hard-coding dependency versions by using feature
 imports instead of feature plugins for third party bundles

---
 .../feature.xml                               |  8 +--
 .../feature.xml                               | 32 ++---------
 .../feature.xml                               | 56 ++-----------------
 .../feature.xml                               |  8 +--
 .../feature.xml                               |  7 ---
 .../org.eclipse.ecf.xmpp.feature/feature.xml  |  8 +--
 6 files changed, 11 insertions(+), 108 deletions(-)

diff --git 
a/releng/features/org.eclipse.ecf.discovery.dnssd.feature/feature.xml 
b/releng/features/org.eclipse.ecf.discovery.dnssd.feature/feature.xml
index 0c7810a..d4b0e67 100644
--- a/releng/features/org.eclipse.ecf.discovery.dnssd.feature/feature.xml
+++ b/releng/features/org.eclipse.ecf.discovery.dnssd.feature/feature.xml
@@ -27,6 +27,7 @@
 
    <requires>
       <import feature="org.eclipse.ecf.discovery.feature" version="1.0.0" 
match="compatible"/>
+      <import plugin="org.xbill.dns"/>
    </requires>
 
    <plugin
@@ -36,11 +37,4 @@
          version="0.0.0"
          unpack="false"/>
 
-   <plugin
-         id="org.xbill.dns"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
 </feature>
diff --git 
a/releng/features/org.eclipse.ecf.filetransfer.httpclient4.feature/feature.xml 
b/releng/features/org.eclipse.ecf.filetransfer.httpclient4.feature/feature.xml
index 3405a28..14061df 100644
--- 
a/releng/features/org.eclipse.ecf.filetransfer.httpclient4.feature/feature.xml
+++ 
b/releng/features/org.eclipse.ecf.filetransfer.httpclient4.feature/feature.xml
@@ -27,6 +27,10 @@ Contributors: Composent, Inc. - initial API and 
implementation
 
    <requires>
       <import feature="org.eclipse.ecf.filetransfer.feature" version="3.9.0" 
match="compatible"/>
+      <import plugin="org.apache.commons.codec" />
+      <import plugin="org.apache.commons.logging" />
+      <import plugin="org.apache.httpcomponents.httpclient" />
+      <import plugin="org.apache.httpcomponents.httpcore" />
    </requires>
 
    <plugin
@@ -36,32 +40,4 @@ Contributors: Composent, Inc. - initial API and 
implementation
          version="0.0.0"
          unpack="false"/>
 
-   <plugin
-         id="org.apache.commons.codec"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.logging"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.httpcomponents.httpclient"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.httpcomponents.httpcore"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
 </feature>
diff --git 
a/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml 
b/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml
index 635864e..8d2a450 100644
--- 
a/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml
+++ 
b/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml
@@ -21,6 +21,10 @@
 
    <requires>
       <import feature="org.eclipse.ecf.filetransfer.feature" version="3.9.0" 
match="compatible"/>
+      <import plugin="org.apache.commons.codec" />
+      <import plugin="org.apache.commons.logging" />
+      <import plugin="org.apache.httpcomponents.httpclient" />
+      <import plugin="org.apache.httpcomponents.httpcore" />
    </requires>
 
    <plugin
@@ -38,56 +42,4 @@
          version="0.0.0"
          unpack="false"/>
 
-   <plugin
-         id="org.apache.commons.codec"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.logging"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="com.sun.jna"
-         os="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="com.sun.jna.platform"
-         os="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.httpcomponents.httpclient"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.httpcomponents.httpclient.win"
-         os="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.httpcomponents.httpcore"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
 </feature>
diff --git 
a/releng/features/org.eclipse.ecf.remoteservice.rosgi.feature/feature.xml 
b/releng/features/org.eclipse.ecf.remoteservice.rosgi.feature/feature.xml
index af23e93..284c52f 100644
--- a/releng/features/org.eclipse.ecf.remoteservice.rosgi.feature/feature.xml
+++ b/releng/features/org.eclipse.ecf.remoteservice.rosgi.feature/feature.xml
@@ -32,6 +32,7 @@ https://wiki.eclipse.org/ECF#OSGi_Remote_Services
    <requires>
       <import feature="org.eclipse.ecf.provider.generic.feature" version="1.0" 
match="compatible"/>
       <import feature="org.eclipse.ecf.remoteservice.feature" version="2.1" 
match="compatible"/>
+      <import plugin="org.objectweb.asm" />
    </requires>
 
    <plugin
@@ -48,11 +49,4 @@ https://wiki.eclipse.org/ECF#OSGi_Remote_Services
          version="0.0.0"
          unpack="false"/>
 
-   <plugin
-         id="org.objectweb.asm"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
 </feature>
diff --git 
a/releng/features/org.eclipse.ecf.remoteservice.servlet.feature/feature.xml 
b/releng/features/org.eclipse.ecf.remoteservice.servlet.feature/feature.xml
index dee188b..0d0d7ad 100644
--- a/releng/features/org.eclipse.ecf.remoteservice.servlet.feature/feature.xml
+++ b/releng/features/org.eclipse.ecf.remoteservice.servlet.feature/feature.xml
@@ -50,11 +50,4 @@ https://wiki.eclipse.org/ECF#OSGi_Remote_Services
          version="0.0.0"
          unpack="false"/>
 
-   <plugin
-         id="javax.servlet"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
 </feature>
diff --git a/releng/features/org.eclipse.ecf.xmpp.feature/feature.xml 
b/releng/features/org.eclipse.ecf.xmpp.feature/feature.xml
index a7aa0da..4e3cc0c 100644
--- a/releng/features/org.eclipse.ecf.xmpp.feature/feature.xml
+++ b/releng/features/org.eclipse.ecf.xmpp.feature/feature.xml
@@ -30,6 +30,7 @@ Contributors: Composent, Inc. - initial API and implementation
       <import feature="org.eclipse.ecf.presence.feature" version="1.0" 
match="compatible"/>
       <import feature="org.eclipse.ecf.datashare.feature" version="1.0" 
match="compatible"/>
       <import feature="org.eclipse.ecf.remoteservice.feature" version="2.1" 
match="compatible"/>
+      <import plugin="org.xbill.dns"/>
    </requires>
 
    <plugin
@@ -62,11 +63,4 @@ Contributors: Composent, Inc. - initial API and 
implementation
          fragment="true"
          unpack="false"/>
 
-   <plugin
-         id="org.xbill.dns"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
 </feature>
-- 
2.20.1

++++++ 0002-Remove-unneeded-dep-on-jdt-annotations.patch ++++++
>From d52239f133c57aba7853f534c80730b403c3b16d Mon Sep 17 00:00:00 2001
From: Mat Booth <mat.bo...@redhat.com>
Date: Sun, 16 Jun 2019 12:37:29 +0100
Subject: [PATCH 2/2] Remove unneeded dep on jdt annotations

---
 .../build.properties                                         | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git 
a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/build.properties
 
b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/build.properties
index d9caeab..f165c5f 100644
--- 
a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/build.properties
+++ 
b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/build.properties
@@ -9,7 +9,4 @@ bin.includes = META-INF/,\
                .options
 src.includes = about.html,\
                asl-v20.txt
-## JDT Null Analysis for Eclipse
-additional.bundles = org.eclipse.jdt.annotation
-## JDT Null Analysis and OSGi Services types for Tycho
-jars.extra.classpath = 
platform:/plugin/org.eclipse.jdt.annotation,platform:/plugin/org.eclipse.osgi.services
+jars.extra.classpath = platform:/plugin/org.eclipse.osgi.services
-- 
2.20.1

++++++ org.eclipse.ecf-10bfc24f030d889e7dfa36e3a77034ae2786c368.tar.xz -> 
org.eclipse.ecf-1e6e8e72cbb77a0e359e409cd4d2a58d03a6428d.tar.xz ++++++
/work/SRC/openSUSE:Factory/eclipse-ecf/org.eclipse.ecf-10bfc24f030d889e7dfa36e3a77034ae2786c368.tar.xz
 
/work/SRC/openSUSE:Factory/.eclipse-ecf.new.3592/org.eclipse.ecf-1e6e8e72cbb77a0e359e409cd4d2a58d03a6428d.tar.xz
 differ: char 25, line 1


Reply via email to