Tuist 1.2.0 - Bugfixes, improvements and future direction
We are slowly learning how to do smaller bi-weekly releases. This release was planned for last week but it was postponed because there were not enough changes. However lots of new things got merged recently and Tuist 1.2.0 is here for you to enjoy!
Firstly, warm welcome to another first-time Tuist contributor Maciej Piotrowski 👏👏👏. He improved the API introduced in the previous release for excluding files from a target. It makes exclude patterns more flexible which can be very useful when migrating an existing project to Tuist!
There are plenty of ideas floating around what other features Tuist should have and Pedro laid them out in nicely in The journey towards Tuist 2.0. In addition, he also opened a work-in-progress PR for Tuist’s manifesto. With more and more people joining the project it’s very important to lay down the core principles in writing to ensure that everyone is up to speed. For more practical information we also have a new Best Practices section on the website. It is quite short at the moment, but will contain a growing list of things that can be useful for both new Tuist users and developers trying to improve their setup.
A common complaint, especially for bigger projects, is the time it takes to generate the project. The main focus until this point was adding features, but time has come to start thinking about performance. End of last year Kas proposed an idea to start performance testing. First part of this initiative already got merged. The Fixture Generator tool will allow us to easily generate a project with potentially hundreds of targets and iron out performance issues much more systematically. It is just the beginning and the plan is eventually to integrate performance testing as part of GitHub checks so we can be sure that adding new features would not have an impact on project generation times.
Of all the things mentioned, there are also plenty of bugfixes and improvements in this release. The full changelog can be found on the release page.