Closed krzyzanowskim closed 2 years ago
Thank you for putting this together!
One of the challenges with something like this is deciding which library owns which types. Do you think it makes the most sense to have both Token
and TextTarget
be in TreeSitterClient?
Also the platform restriction removes a lot of compatibility. I know why you did it, but I don't understand why Xcode 14 is producing a warning for this. Is it really suddenly necessary for all packages to do something like this?
Also the platform restriction removes a lot of compatibilities
right, it should list all apple platforms. also, Xcode 14 bumps the minimum target to 10.13 š and I've made Package@swift-5.7.swift
to address that
Do you think it makes the most sense to have both Token and TextTarget be in TreeSitterClient?
Token
goes to Neon
nowTextTarget
stays in TreeSitterClient. It's an invalidationHandler
parameter and it seems to make sense there.Ok one more thing. It looks like TreeSitterClient
only ever produces an IndexSet
for invalidation. I think Iād prefer, then, to define it that way and move TextTarget
back into Neon. So for being difficult š
public var invalidationHandler: (TextTarget) -> Void
becomes
public var invalidationHandler: (IndexSet) -> Void
makes sense. changed.
Thanks so much for doing this. Very good change!
A take to separate
TreeSitterClient
as a separate target and make it a dependency to Neon. Ideally, theTreeSitterClient
could be a separate package