Log in
product

Version 0.9.0 published

In this blog post we talk about the changes that come with the recently published version 0.9.0.

Today we have published the version 0.9.0 of Tuist. It's been a while without releasing updates but we are getting back to speed. Stay tuned because we are working on a lot of improvements and cool features to make your experience dealing with Xcode projects more enjoyable.

Files and groups order

Files and groups were sorted alphabetically when the project was generated. That resulted in a non-standard sorting order as Igor reported on this issue. With 0.9.0, we've changed the order to default to sort files before groups, and then sort them alphabetically.

In our aim to define conventions and good practices in Xcode projects, we don't plan to make the sorting configurable. We believe that the order that we set in this version is navigatable and aligned with Xcode defaults.

Generation of both, Debug and Release configurations

Previous versions of Tuist generated only the Debug or the Release configuration (depending on the flag that you passed when running the tool). We have changed that behavior to generate both configurations. That allows developers building for any of the configurations without having to regenerate the Xcode project. Thanks Robin for reporting the issue.

More reliability through acceptance tests

Although this is not a user-facing feature, it has a huge impact in the reliability of the tool. Although we took seriously and covered most of the execution paths with unit test, they don't prevent common Tuist use cases from breaking at any time. In this PR we add Cucumber to the toolbox to define acceptance tests that will be executed on CI. If you are curious about how a Cucumber test looks, you can have a look at the test below:

Feature: Initialize a new project using Tuist Scenario: The project is a compilable macOS application Given that tuist is available And I have have a working directory When I initialize a macos application named Test Then I generate the project Then I should be able to build the scheme Test Then I delete the working directory

If any of the feature steps breaks, the test fails and we have to fix it before merging the changes into main. This brings more confidence when adding changes to the project, which is very handy for new project contributors.

How to update

It's very easy, did you know that Tuist knows how to update itself? There's no need to depend on third-party tools to drive the update. Just run the following command in your terminal:

tuist update

I hope you like the release and that keep reporting issues and ideas to help Xcode developers deliver stunning high-quality apps.

Don't forget to listen to the soundtrack of this release.

Have a wonderful week.

Unlock your iOS team's full potential

Chat with the founders

You might also like

Interview with Donal O'Brien - We measure developer build times so that we can measure improvements and regressions
In this interview, we talk with Donal O'Brien from the core clients team at SoundCloud. He shares how they leveraged modularization, Tuist, and tools like Sourcery to overcome the challenges they faced while scaling the app. Moreover, he touches on some present challenges like developer awareness and the maintenance of the tools around the project.
Shaping a one-stop shop for app developers
We reflect on what we've learned and the vision that we have for Tuist and the role it'll play in the app development ecosystem.
What Swift Build means for the Swift ecosystem
In blog post we share our perspective on what Swift Build might mean for the Swift ecosystem, drawing from our extensive experience working with Xcode projects, and how it aligns with the plans we have for Tuist.