<font size=2 face="sans-serif">Hi Helge:</font>
<br>
<br><font size=2 face="sans-serif">As the initial target areas are low-level
function, yes, each of the frameworks has an implementation of most of
them today. Those implementations tend to be limited in a number of ways:</font>
<ol>
<li value=1><font size=2 face="sans-serif">C libraries are often used directly
(via a modulemap)<br>
This means that there's no general &quot;Swift API&quot; that developers
can use - you have to interface with the C APIs directly and deal with
Unsafe/OpaquePointers etc. Ideally we want Swift developers to only have
to write Swift code</font>
<li value=2><font size=2 face="sans-serif">Where a Swift API wraps a C
library its generally for a specific use case<br>
As the framework teams have a very specific use case - using it in their
framework - the APIs are very directed to what they need to do, rather
than being general purpose for a wider set of use cases</font>
<li value=3><font size=2 face="sans-serif">There's multiple, similar, packages<br>
Most frameworks have their own server socket implementation (mostly by
calling Glibc and Darwin), HTTP parser implementation, etc. Not only does
this mean we can consolidate the efforts on a single implementation, but
it means that anyone wanting to add additional platform support (like Windows)
only has to do so once. </font></ol>
<br><font size=2 face="sans-serif">Chris<br>
</font>
<br>
<br>
<br>
<br><font size=1 color=#5f5f5f face="sans-serif">From: &nbsp; &nbsp; &nbsp;
&nbsp;</font><font size=1 face="sans-serif">Helge Heß via swift-server-dev
&lt;swift-server-dev@swift.org&gt;</font>
<br><font size=1 color=#5f5f5f face="sans-serif">To: &nbsp; &nbsp; &nbsp;
&nbsp;</font><font size=1 face="sans-serif">swift-server-dev@swift.org</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Date: &nbsp; &nbsp; &nbsp;
&nbsp;</font><font size=1 face="sans-serif">25/10/2016 19:57</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Subject: &nbsp; &nbsp;
&nbsp; &nbsp;</font><font size=1 face="sans-serif">Re: [swift-server-dev]
Database API/Framework</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Sent by: &nbsp; &nbsp;
&nbsp; &nbsp;</font><font size=1 face="sans-serif">swift-server-dev-bounces@swift.org</font>
<br>
<hr noshade>
<br>
<br>
<br><tt><font size=2>Hi Chris,<br>
<br>
it is a little unclear what the scope of the group is. Presumably you have
some very specific things in mind?<br>
<br>
Of course we’ve seen </font></tt><a href="https://swift.org/server-apis/#focus-areas"><tt><font size=2>https://swift.org/server-apis/#focus-areas</font></tt></a><tt><font size=2>.
But what does it actually mean? :-) Looking at it:<br>
- base networking: TCP/UDP, DNS. Covered already by libdispatch and the
OS’ses?<br>
- security: OpenSSL? or some wrapper around both, CC and OpenSSL?<br>
- provide low level HTTP parsing: http_parser? Is anyone using something<br>
 &nbsp;else?<br>
All that seems kinda covered/standard already? Unless maybe you include
non-Unix stuff like Windows.<br>
<br>
Is this primarily for things like providing a standardised ’swiftier'
OpenSSL wrapper (similar to how Objective-GCD wraps libdispatch)?<br>
Or would that just be module maps which are shipped by default with Swift
and hence can be relied on by all frameworks?<br>
<br>
But maybe I’m just a little too impatient :-&gt;<br>
<br>
hh<br>
<br>
&gt; On 25 Oct 2016, at 20:41, Chris Bailey via swift-server-dev &lt;swift-server-dev@swift.org&gt;
wrote:<br>
&gt; <br>
&gt; Hi Ron: <br>
&gt; <br>
&gt; As you say, that's outside of the scope of the work group, however
I do think its a valuable area that the various existing web framework
groups might be interested in collaborating on. Having a common, recognized
framework that the database providers or third parties would be interested
in writing database drivers for would be a huge step forward. <br>
&gt; <br>
&gt; I know that Vapor has its Fluent ORM framework, and that its an area
that the Kitura team are looking at as well, so your post might kick-start
some wider discussion. <br>
&gt; <br>
&gt; Chris<br>
&gt; <br>
&gt; <br>
&gt; <br>
&gt; <br>
&gt; From: &nbsp; &nbsp; &nbsp; &nbsp;Ron Olson via swift-server-dev &lt;swift-server-dev@swift.org&gt;
<br>
&gt; To: &nbsp; &nbsp; &nbsp; &nbsp;swift-server-dev@swift.org <br>
&gt; Date: &nbsp; &nbsp; &nbsp; &nbsp;25/10/2016 18:54 <br>
&gt; Subject: &nbsp; &nbsp; &nbsp; &nbsp;[swift-server-dev] Database API/Framework
<br>
&gt; Sent by: &nbsp; &nbsp; &nbsp; &nbsp;swift-server-dev-bounces@swift.org
<br>
&gt; <br>
&gt; <br>
&gt; <br>
&gt; Hi all-<br>
&gt; <br>
&gt; I've been working with Swift more on Linux than macOS and am very
<br>
&gt; excited to see the formation of this group. Looking at the server
api <br>
&gt; workgroup's focus, I notice it's primarily low-level interaction with
<br>
&gt; the operating system. When might it be a good time to bring up the
<br>
&gt; possibility of creating a database-specific framework for those folks
<br>
&gt; who want to work directly with Postgres, MySQL, even DB2 and Oracle;
I'm <br>
&gt; thinking a JDBC-inspired framework that drivers could be written <br>
&gt; against.<br>
&gt; <br>
&gt; Thanks,<br>
&gt; <br>
&gt; Ron<br>
&gt; _______________________________________________<br>
&gt; swift-server-dev mailing list<br>
&gt; swift-server-dev@swift.org<br>
&gt; </font></tt><a href="https://lists.swift.org/mailman/listinfo/swift-server-dev"><tt><font size=2>https://lists.swift.org/mailman/listinfo/swift-server-dev</font></tt></a><tt><font size=2><br>
&gt; <br>
&gt; <br>
&gt; _______________________________________________<br>
&gt; swift-server-dev mailing list<br>
&gt; swift-server-dev@swift.org<br>
&gt; </font></tt><a href="https://lists.swift.org/mailman/listinfo/swift-server-dev"><tt><font size=2>https://lists.swift.org/mailman/listinfo/swift-server-dev</font></tt></a><tt><font size=2><br>
<br>
_______________________________________________<br>
swift-server-dev mailing list<br>
swift-server-dev@swift.org<br>
</font></tt><a href="https://lists.swift.org/mailman/listinfo/swift-server-dev"><tt><font size=2>https://lists.swift.org/mailman/listinfo/swift-server-dev</font></tt></a><tt><font size=2><br>
</font></tt>
<br>
<br>