Re: [swift-corelibs-dev] Upcoming holiday schedule

2015-12-18 Thread Mike Ferris via swift-corelibs-dev
I will also be out starting tomorrow through the end of the month which means XCTest will get little coverage during that time. Mike > On Dec 17, 2015, at 9:18 AM, Philippe Hausler via swift-corelibs-dev > wrote: > > I will probably be around a bit more than Tony over the break; I will try to

[swift-corelibs-dev] NSXMLNode and Friends

2015-12-18 Thread Robert Stephen Thompson via swift-corelibs-dev
Since I recently did a small implementation of NSXMLNode and NSXMLDocument to use in an iOS project, I decided to tackle doing the full-featured one here. It’s not that hard, doing it as a wrapper on libxml2, except I’ve run into a bit of a snag with making the semantics exactly match Darwin Fou

Re: [swift-corelibs-dev] NSXMLNode and Friends

2015-12-18 Thread Tony Parker via swift-corelibs-dev
Hi Robert, There actually already is some discussion on the swift-evolution list about a language feature to enable factory methods, which would help us to implement these kinds of things. It is a common pattern in Foundation to return subclasses from initializers (NSNull, NSPredicate are in th

[swift-corelibs-dev] Recommended posix_spawnattr_t for NSTask's implementation

2015-12-18 Thread Dan Stenmark via swift-corelibs-dev
I hope to take a crack at implementing some of NSTask this weekend. What are the recommended posix_spawnattr_t flags that should be set? Do we also want to take the opportunity to expose the ability to override some of these flags (like POSIX_SPAWN_SETPGROUP) or do we want to avoid tying this

Re: [swift-corelibs-dev] Recommended posix_spawnattr_t for NSTask's implementation

2015-12-18 Thread Philippe Hausler via swift-corelibs-dev
I would definitely say that posix_spawn is the correct path to implement this; that will keep pretty close to the way the one on darwin works; Couple of suggestions: posix_spawnattr_setsigmask should be set to the empty signal set the attribute flags should probably be POSIX_SPAWN_CLOEXEC_DEFAU

Re: [swift-corelibs-dev] Recommended posix_spawnattr_t for NSTask's implementation

2015-12-18 Thread Pierre Habouzit via swift-corelibs-dev
-Pierre > On Dec 18, 2015, at 11:14 AM, Philippe Hausler via swift-corelibs-dev > wrote: > > I would definitely say that posix_spawn is the correct path to implement > this; that will keep pretty close to the way the one on darwin works; > > Couple of suggestions: > > posix_spawnattr_setsig

Re: [swift-corelibs-dev] Recommended posix_spawnattr_t for NSTask's implementation

2015-12-18 Thread David Smith via swift-corelibs-dev
One issue that we ran into in the ObjC NSTask is setting the current working directory in the child process. We worked around the lack of an API for that by using per-thread working directories, which is kind of awful. I'm not up to date on what the best approach to use for this on Linux would b

Re: [swift-corelibs-dev] Recommended posix_spawnattr_t for NSTask's implementation

2015-12-18 Thread Pierre Habouzit via swift-corelibs-dev
FWIW Glibc implements posix_spawn on posix platforms in terms of {,v}fork + execve. So that means that SIGCHLD can be used. I don’t think linux has per-thread wd, since linux has had atcalls for a very long time, which makes this system interface not useful and only weird (pthread_{,f}chdir).

Re: [swift-corelibs-dev] Recommended posix_spawnattr_t for NSTask's implementation

2015-12-18 Thread Dan Stenmark via swift-corelibs-dev
I’m assuming that OS X’s method for setting a pthread’s cwd is private API. Unless a better way to accomplish the same end-goal is in the works, is there any way to expose it? In regards to Linux, the more I look at this, the less attractive posix_spawn() appears as a way of implementing this

Re: [swift-corelibs-dev] NSXMLNode and Friends

2015-12-18 Thread Robert Stephen Thompson via swift-corelibs-dev
Ok, sounds good to me. I have quite a bit done at this point, but it’s not “pretty enough” for a real PR yet. If people really want to look at the ugliness, https://github.com/rothomp3/swift-corelibs-foundation/tree/feature/NSXMLDocument is where it lives. Thanks, Robert > On Dec 18, 2015, at

Re: [swift-corelibs-dev] NSXMLNode and Friends

2015-12-18 Thread Philippe Hausler via swift-corelibs-dev
Dealing with the cross platform part of the module map portion may be a bit tricky; I had to use some of libxml2 for CFXMLInterface it is effectively a simple wrapper around a few xml c calls that are a bit swift-friendlier. Perhaps that might make some of that integration easier. However if you

Re: [swift-corelibs-dev] NSCoding methods

2015-12-18 Thread Daniel Strokis via swift-corelibs-dev
Is anyone currently working on this who would like to collaborate? Daniel Strokis Sent from my iPhone > On Dec 12, 2015, at 3:47 PM, Philippe Hausler wrote: > > These were not implemented yet since we did not have a way to actually verify > archives. Part of the goal is to have archives be s

Re: [swift-corelibs-dev] NSCoding methods

2015-12-18 Thread Luke Howard via swift-corelibs-dev
> Specifically there is no NSClassFromString yet. I would say if you are > looking for a place to start, perhaps coming up with a good strategy for > accomplishing that in a uniform manner (for both Foundation classes as well > as user classes) would be a good step in the right direction to get