Jul 14, 2023
Subsequent month marks the ten 12 months anniversary of BarCodeKit. It’s been like two years of slumber for the reason that final launch. It was obtainable by way of Cocoapods and direct by way of GitHub, however these days a number of builders voiced curiosity for it to be obtainable as Swift Bundle.
Like most of my open supply frameworks on GitHub, BarCodeKit is written in Goal-C, however that doesn’t imply it couldn’t be obtainable as Swift Bundle. Xcode automagically morphs all the pieces to look Swift-native and so an implementer of such a package deal wouldn’t be the wiser.
To make it a Swift package deal I wanted to wash up some methods how system frameworks are imported, what headers are imported the place and most significantly I needed to ditch the precompiled headers (PCH) which aren’t supported by SPM.
As soon as that was accomplished I had a package deal that might construct with out complains with a easy swift construct. However in the event you even have unit exams you then need these to be conformant with the SPM ecosystem as nicely. This entails largely including the sources – if any – required by the check circumstances and including a check goal to the package deal.swift.
I used to be making some adjustments after which working swift check, rinse and repeat. Each iteration you discover a number of extra minor issues you need to tackle. Till ultimately each constructing and testing the package deal go with out errors.
The result of this train – I like to inform myself to justify all this time spent – is that your importing and setup has develop into extra sturdy.
So right here we go. I submitted the brand new 1.4.0 model to Cocoapods, tagged it on GitHub as a launch on the grasp department, and at last submitted an addition requisition to the Swift Bundle Index. It’s been some time since I had accomplished that final (couple of years really) so I used to be confused initially by a GitHub bot stating that some extra assessment was required.
However that was resolved ultimately by Mr. Dave Verwer himself approving the merge. Many thanks, I’m honored, Sir!
And in case you surprise why it says “unknown license” on Swift Bundle Index… it is because the license is a mixture of my regular license and a full business license. Principally buying my guide grants you a perpetual full business license. For those who don’t wish to try this there’s my customary open supply license. Thereby you need to attribute to me when utilizing BarCodeKit in your apps, or purchase a non-attribution license on my elements retailer.
Associated
Classes: Administrative

