Swift Encoders on Linux


(Ankit Aggarwal) #1

Hi,

It looks like SE-0167 is implemented and can be used in the latest macOS snapshot (yay!). Will corelibs-foundation need a completely separate implementation? Is the corelibs-foundation implementation going to be community driven?

PS: I think these are awesome APIs and the Package Manager will really benefit from SE-0166, SE-0167.


(Tony Parker) #2

Hi Ankit,

Our intention is to share as much of the implementation as possible. There are some details that need to be worked out around bridging of types like NSNumber (since bridging doesn't exist on Linux we may need to avoid using 'as' in a few places), but in general it could be as easy as copying the files from the Foundation overlay on Darwin into the other project.

We've been focused on getting the last details in place so haven't been able to pursue the rest of this ourselves. If anyone wanted to step up and help us out here, it would be awesome to ship the feature concurrently on Linux.

- Tony

···

On May 23, 2017, at 1:11 AM, Ankit Aggarwal via swift-corelibs-dev <swift-corelibs-dev@swift.org> wrote:

Hi,

It looks like SE-0167 is implemented and can be used in the latest macOS snapshot (yay!). Will corelibs-foundation need a completely separate implementation? Is the corelibs-foundation implementation going to be community driven?

PS: I think these are awesome APIs and the Package Manager will really benefit from SE-0166, SE-0167.
_______________________________________________
swift-corelibs-dev mailing list
swift-corelibs-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-corelibs-dev


(David Hart) #3

Hi Tony,

Looking forward to all this on Linux!

On the same topic, I looked at the Measurement Swift type and did a diff between the shims in the swift repo and the version in corelibs-foundation and saw quite a few differences. Is this something that can be improved or it is a consequence of the platform differences?

Thanks,
David.

···

On 23 May 2017, at 17:14, Tony Parker via swift-dev <swift-dev@swift.org> wrote:

Hi Ankit,

Our intention is to share as much of the implementation as possible. There are some details that need to be worked out around bridging of types like NSNumber (since bridging doesn't exist on Linux we may need to avoid using 'as' in a few places), but in general it could be as easy as copying the files from the Foundation overlay on Darwin into the other project.

We've been focused on getting the last details in place so haven't been able to pursue the rest of this ourselves. If anyone wanted to step up and help us out here, it would be awesome to ship the feature concurrently on Linux.

- Tony

On May 23, 2017, at 1:11 AM, Ankit Aggarwal via swift-corelibs-dev <swift-corelibs-dev@swift.org> wrote:

Hi,

It looks like SE-0167 is implemented and can be used in the latest macOS snapshot (yay!). Will corelibs-foundation need a completely separate implementation? Is the corelibs-foundation implementation going to be community driven?

PS: I think these are awesome APIs and the Package Manager will really benefit from SE-0166, SE-0167.
_______________________________________________
swift-corelibs-dev mailing list
swift-corelibs-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-corelibs-dev

_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev


(Tony Parker) #4

Hi David,

I think the struct Measurement should probably be very similar, but the class NSMeasurement is probably pretty different.

Regardless, if there is something you think needs to be ported over (I would believe that there are a few changes made there that we haven’t copied yet), please do put up a PR.

Thanks,
- Tony

···

On May 23, 2017, at 1:04 PM, David Hart <david@hartbit.com> wrote:

Hi Tony,

Looking forward to all this on Linux!

On the same topic, I looked at the Measurement Swift type and did a diff between the shims in the swift repo and the version in corelibs-foundation and saw quite a few differences. Is this something that can be improved or it is a consequence of the platform differences?

Thanks,
David.

On 23 May 2017, at 17:14, Tony Parker via swift-dev <swift-dev@swift.org> wrote:

Hi Ankit,

Our intention is to share as much of the implementation as possible. There are some details that need to be worked out around bridging of types like NSNumber (since bridging doesn't exist on Linux we may need to avoid using 'as' in a few places), but in general it could be as easy as copying the files from the Foundation overlay on Darwin into the other project.

We've been focused on getting the last details in place so haven't been able to pursue the rest of this ourselves. If anyone wanted to step up and help us out here, it would be awesome to ship the feature concurrently on Linux.

- Tony

On May 23, 2017, at 1:11 AM, Ankit Aggarwal via swift-corelibs-dev <swift-corelibs-dev@swift.org> wrote:

Hi,

It looks like SE-0167 is implemented and can be used in the latest macOS snapshot (yay!). Will corelibs-foundation need a completely separate implementation? Is the corelibs-foundation implementation going to be community driven?

PS: I think these are awesome APIs and the Package Manager will really benefit from SE-0166, SE-0167.
_______________________________________________
swift-corelibs-dev mailing list
swift-corelibs-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-corelibs-dev

_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev