<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 "Swift API" 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:
</font><font size=1 face="sans-serif">Helge Heß via swift-server-dev
<swift-server-dev@swift.org></font>
<br><font size=1 color=#5f5f5f face="sans-serif">To:
</font><font size=1 face="sans-serif">swift-server-dev@swift.org</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Date:
</font><font size=1 face="sans-serif">25/10/2016 19:57</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Subject:
</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:
</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>
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 :-><br>
<br>
hh<br>
<br>
> On 25 Oct 2016, at 20:41, Chris Bailey via swift-server-dev <swift-server-dev@swift.org>
wrote:<br>
> <br>
> Hi Ron: <br>
> <br>
> 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>
> <br>
> 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>
> <br>
> Chris<br>
> <br>
> <br>
> <br>
> <br>
> From: Ron Olson via swift-server-dev <swift-server-dev@swift.org>
<br>
> To: swift-server-dev@swift.org <br>
> Date: 25/10/2016 18:54 <br>
> Subject: [swift-server-dev] Database API/Framework
<br>
> Sent by: swift-server-dev-bounces@swift.org
<br>
> <br>
> <br>
> <br>
> Hi all-<br>
> <br>
> I've been working with Swift more on Linux than macOS and am very
<br>
> excited to see the formation of this group. Looking at the server
api <br>
> workgroup's focus, I notice it's primarily low-level interaction with
<br>
> the operating system. When might it be a good time to bring up the
<br>
> possibility of creating a database-specific framework for those folks
<br>
> who want to work directly with Postgres, MySQL, even DB2 and Oracle;
I'm <br>
> thinking a JDBC-inspired framework that drivers could be written <br>
> against.<br>
> <br>
> Thanks,<br>
> <br>
> Ron<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>
> <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>
<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>