Git Product home page Git Product logo

Comments (6)

sobri909 avatar sobri909 commented on June 3, 2024

Ah that makes sense. What I'll do is prioritise the open sourcing of LocoKitCore. I've been meaning to get it done for a year or more now, but just haven't found the time. This will give me justification to spend time on it.

from locokit.

sobri909 avatar sobri909 commented on June 3, 2024

Ok I've got LocoKitCore open sourced now (by just moving the entire contents of it into LocoKit proper). That means that LocoKitCore is no longer a required dependency. But I'll need to update the podspec etc. And this also means I can easily make LocoKit a SwiftPM package now, so I'll do that too (as long as it goes smoothly).

from locokit.

sobri909 avatar sobri909 commented on June 3, 2024

OK I've finally got the SwiftPM Package.swift working properly (I think). Uh... I probably shouldn't tap the send button on this reply until I've broken that everything still compiles and runs, in a project using LocoKit via SwiftPM instead of CocoaPods. Let's see how this build and compile goes...

Uh, well, that didn't go great, but it's Arc repo specific so far. I'm doing a lot of import LocoKitCore in Arc App's code, because I use some of LocoKitCore's (now LocoKit proper's) helper extensions and methods. I'm gonna have to go through and remove all those import statements.

But otherwise it seems solid. I'll clean up more of this tomorrow. For now, you should be able to add LocoKit as a SwiftPM package, with no binary dependencies, and build on the M1. Make sure you remove LocoKit from your Podfile too, to avoid super weirdness.

from locokit.

sobri909 avatar sobri909 commented on June 3, 2024

Oh wait, it looks like LocoKit itself has some import LocoKitCore. Uh, I'm running out of time today so I'm not going to get a chance to do a commit with those calls removed tonight. But if you're in a hurry, you should hopefully be able to just rip those imports out and all will be well. Hopefully.

from locokit.

sobri909 avatar sobri909 commented on June 3, 2024

Got it! It took a whole bunch of import Foundation, and explicit platform specification in the Package.swift, and some other fiddling, but it's all there now.

LocoKit is finally all source, all open source, and usable as a SwiftPM package. Woo!

from locokit.

sobri909 avatar sobri909 commented on June 3, 2024

Oh, I should mention a couple of changes to packaging:

  1. I'm no longer updating the CocoaPods package(s). The Upsurge dependency made it impossible to keep them up to date a while back anyway, due to that project only keeping their SwiftPM package up to date, and their last pod release no longer passing pod trunk push validation due to Swift version stuff.

  2. For the SwiftPM package, you will want to pin to a branch, not a tag/release, because I'm simply too overworked and burnt out to manage doing proper releases at the moment. I recommend pinning to master unless you're building on top of Arc Mini (in which case pin to develop). Arc Mini's development happens closely in parallel with Arc App (both v3 and v4), with those projects occasionally requiring LocoKit changes, which get pushed directly to the develop branch.

from locokit.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.