Giter Club home page Giter Club logo

Comments (17)

clement-leprovost avatar clement-leprovost commented on July 21, 2024 5

Version 4.0 is out! Swift 3 support is now mainstream. :)

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024 3

@hmalc We totally understand that, and we'll do what we can to support Swift 3 as soon as it's out! However, you have to understand that, until a "stable enough" version (like the GM) is out, it's difficult to build on a shifting ground (as demonstrated by the tremendous amount of change that Swift 3 has undergone in two months of time). The work that has been done so far on the swift-3 branch can merely be considered a "proof of concept", since our code base has evolved since it was forked.

So, the proposed plan is the following:

  • Release a 3.{n+1} version with the pending features in our pipeline.
  • Fork a v4 branch from this release.
  • When the GM is out: Port the v4 to Swift 3/iOS 10/Xcode 8/etc.
  • When the final version is out: fork a v3 maintenance branch from master, merge v4 into master, and release 4.0 version.

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024 2

FYI, I just downloaded Xcode 8.0GM. Swift 3 code that compiled just fine yesterday with Xcode 8.0b6 doesn't compile any longer. Investigating...

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024 1

Hello @jegv91 and @TofPlay. The ETA actually depends on the final release by Apple... and you know how hard it is to get ETAs from Apple: so far, the only official date is "Fall" (as advertised during the WWDC). I haven't seen any leaves falling from the trees yet... :) Joke aside, Swift 3 will most likely be released along with Xcode 8, iOS 10 and macOS Sierrra some time in September. Then, allow us one or two weeks to wrap everything up (i.e. merge with master, test, etc.) and package a new major version, and there you go.

The reason we wait is that, until the final version is released, no guarantees are made that the API is stable. And in fact, the swift-3 branch used to compile just fine with Swift 3 and Xcode 8 beta when I created it back in late June. With Xcode 8 beta 6, it no longer does, as @TofPlay discovered. => We don't want to be playing cat and mouse with a moving target forever.

Another reason is that the API client is itself rapidly evolving: we were at version 3.3 when we started works on Swift 3; we're now at 3.6, with further improvements down the pipe. Maintaining two branches in parallel would be a lot more work, and in my opinion not really worth the trouble since Swift 3 cannot be used in production right now.

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024 1

Hey all! Work on adopting Swift 3 has made huge progress over the past few days: there is now a v4 branch containing a tentative 4.0 version.

Warning: Consider it alpha quality, meaning: feel free to test it, but please don't use it in production, as breaking changes may still occur. The upside is that if you have concerns/suggestions, there is still room for improvement! Any feedback welcome. :)

Because this is a major version, I took the opportunity to refactor many things, including naming and Objective-C mapping. The goal is to make the library easier to use and feel more natural, from both Swift and Objective-C.

Please read the change log in the branch for a detailed overview of changes.

Note: I haven't tested remote Cocoapods integration so far, but it works with a local checkout. Carthage not tested yet... (Sorry for the fans.)

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024

@MattTimmons Sorry, I'm just back from a three-week long internet-less vacation and I have yet to digest the WWDC... πŸ˜„ I will keep you posted.

My two cents are that Swift 3 will require a major update, because it brings incompatible changes and the module is delivered in source form. Not clear yet about Swift 2.3.

from algoliasearch-client-swift.

MattTimmons avatar MattTimmons commented on July 21, 2024

welcome back, sounds good.

On Jun 27, 2016, at 3:58 AM, ClΓ©ment Le Provost [email protected] wrote:

@MattTimmons https://github.com/MattTimmons Sorry, I'm just back from a three-week long internet-less vacation and I have yet to digest the WWDC... πŸ˜„ I will keep you posted.

My two cents are that Swift 3 will require a major update, because it brings incompatible changes and the module is delivered in source form. Not clear yet about Swift 2.3.

β€”
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub #74 (comment), or mute the thread https://github.com/notifications/unsubscribe/AFi1kSfWG1glS07uB2pnWjG7cbtn54Mmks5qP5DAgaJpZM4I3Zvc.

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024

Swift 2.3 support seems straightforward: only one modification is involved (see PR #85). It is actually surprising that there is a change at all, because according to Apple, "Swift 2.3 = Swift 2.2 + new SDKs". It looks like existing APIs have been impacted as well... :/

Anyway, the change affects the tests and not the core functionality, so the current version is de facto compatible with Swift 2.3.

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024

Swift 3 support implies numerous incompatible changes. It will therefore be conducted in a dedicated branch, eventually making it to master under the form of a major release after Swift 3 / Xcode 8 are officially released.

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024

Branch swift-3 has been created to host Swift 3 support. This will be an ongoing effort. You are welcome to test and contribute!

from algoliasearch-client-swift.

jegv91 avatar jegv91 commented on July 21, 2024

Hey @clement-leprovost, thanks for starting the repo. I need to launch an update of my app supporting Swift 3.0 and I'm using Algolia in it. I know Swift 3.0 is not the official language yet but do you have ETA on this?

Thanks in advance.

from algoliasearch-client-swift.

TofPlay avatar TofPlay commented on July 21, 2024

Same as @jegv91

from algoliasearch-client-swift.

TofPlay avatar TofPlay commented on July 21, 2024

Hi @clement-leprovost I fork your project on TofPlay/algoliasearch-client-swift. On branch swift-3 I apply all "Fix-It" and I quickly corrected the build errors with Xcode 8 beta 6. That build but I have not tested.
Let me know if you are interested by a PR.

from algoliasearch-client-swift.

hmalc-zz avatar hmalc-zz commented on July 21, 2024

Also anxious to upgrade my app to Swift 3 and currently this framework is the only thing forcing me to use Swift 2.3. Apple generally are very predictable with their software launches. An iOS10 and Xcode 8 GM release will be finalized Wednesday for apps to be submitted by the iPhone 7 launch which will be Friday next week more than likely.

from algoliasearch-client-swift.

AndrewSB avatar AndrewSB commented on July 21, 2024

Sounds good @clement-leprovost! Let us know if you get stuck anywhere with the conversion. We're excited to be able to update to Swift 3 after Aloglia makes the leap πŸ˜„

from algoliasearch-client-swift.

mittsh avatar mittsh commented on July 21, 2024

Thanks for investigating @clement-leprovost πŸ˜„ we need that too :)

from algoliasearch-client-swift.

clement-leprovost avatar clement-leprovost commented on July 21, 2024

Update on package manager support:

  • Carthage is OK (only for the online flavor, but that's a known limitation).
  • Cocoapods has a blocking bug preventing it to work with Swift 3 as of 1.1.0rc1. (Should be solved in 1.1.0rc2, but it's not out yet.)
  • The Swift PM cannot handle our current online/offline duality (same as Carthage) and not even our current directory layout! Anyway, there is a dedicated issue to track support for this one: #91.

from algoliasearch-client-swift.

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.