Releases: tuist/tuist
Releases · tuist/tuist
4.0.0
These release notes are longer than usual because it's a major release and we include migration guidelines. Breaking changes are prefixed with Breaking.
Tuist
Improved
- Improve performance of resolving manifest file paths #5871 by @anlaital-oura
Removed
- Breaking: Remove the signing capabilities #5716 by @pepicrft. Signing is already solved by community tooling like Fastlane and Xcode itself, which do a much better job at that. If you were using Tuist signing capabilities, which consisted of encrypting the certificates and profiles in the repository and installing them in the right places at generation time, you might want to replicate that logic in your own scripts that run before project generation. In particular:
- A script that decrypts the certificates and profiles using a key either stored in the file-system or in a environment variable, and installs certificates in the keychain, and the provisioning profiles in the directory
~/Library/MobileDevice/Provisioning\ Profiles
. - A script that can take an existing profiles and certificates and encrypt them.
- A script that decrypts the certificates and profiles using a key either stored in the file-system or in a environment variable, and installs certificates in the keychain, and the provisioning profiles in the directory
- Breaking: Remove Carthage integration via
Dependencies.swift
. You'll have to useCarthage
directly to pull the pre-compiled frameworks and XCFrameworks into Carthage's standard directory, and then reference those binaries from your tagets using theTargetDependency.xcframework
andTargetDependency.framework
cases. - Breaking: Remove the
TargetDependency.packagePlugin
API in favourTargetDependency.package
which takes an additional argument where you can specify the type of package. - Breaking: Remove the APIs that were marked as deprecated #5560 by @danyf90
Changed
- Breaking: Remove
tuistenv
in favor of Mise as default installer with Homebrew as an alternative. You'll have to uninstall the current version of Tuist by runningcurl -Ls https://uninstall.tuist.io | bash
and then install it using the installation method of your choice. You'll have to propagate this installation method across CI environments and developers' local environment. We strongly recommend the usage of Mise because it's able to install and activate versions deterministically across environments. #5724 by @pepicrft - Breaking: Remove the
init
from all theProjectDescription
models to improve the readability and expressiveness of the APIs. Every model provides now a static constructor. We commend checking out the new APIs in our documentation site - Breaking: Add
--no-selective-testing
flag, rename--no-cache
to--no-binary-cache
by @fortmarek - Breaking: Rename
tuist fetch
fortuist install
to align with the industry convention. You might need to adjust your CI pipelines and communicate the new command name to your team #5857 by @pepicrft - Breaking: Change the
Package.swift
directory from/Tuist
to root. You'll have to move the content from yourTuist/Dependencies.swift
to aPackage.swift
at the root, and use the#if TUIST
directive to configure the integration. You can use the tuist Package.swift as a reference #5862 by @fortmarek - Rename the builds cache directory from
builds
toBinaryCache
to better reflect its purpose #5842 by @fortmarek - Make all
ProjectDescription
models attributes mutable for better ergonomics #5843 by @fortmarek - Align the cache directories with the UNIX XDG Base Directory Specification #5855 @pepicrft
- Improve scaffold feature's default parameter type for stencil file #5845 by @haeseoklee
- Throw an error when focusing on a non-existent target #5874 by @fortmarek
Fixed
- Fix error when running
tuist generate
and dependencies have not been previously fetch withtuist install
#5875 by @fortmarek - Fix
tuist clean dependencies
#5872 by @fortmarek - Fix running
tuist clean
without a specific category #5868 by @fortmarek
Tuist Cloud
Fixed
- Fix an issue that caused binary-caching of targets for macOS to fail due to missing destinations for targetted architectures.
Changed
- Rename cache directories from
builds
toBinaryCache
and fromtests
toSelectiveTests
to better reflect its purpose #5842 by @fortmarek - Rename
tuist cache warm
totuist cache
to shorten the command execution. - Move the
tuist cache print-hashes
option intotuist cache --print-hashes
.
Removed
- Breaking: Remove the cache configuration and the concept of profiles in favor of passing the configuration to use via the
--configuration
flag when warming the cache withtuist cache
. We plan to add the same option to the other commands and just the generation so that the only configuration generated is the one that has been passed via the flag. - Breaking: Remove the
--skip-cache
flag from thegenerate command
in favor of controlling for which targets the binary cache should be skipped by using the arguments.-
Before
tuist generate --skip-cache Foo
-
After
tuist generate Foo
-
4.0.0-beta.4
Tuist
- no changes
Tuist Cloud
- no changes
4.0.0-beta.3
Tuist
Changed
- Rename
fetch
toinstall
#5857 by @pepicrft - Change Package.swift directory from Tuist to root #5862 by @fortmarek
- Align the cache directory with the UNIX XDG Base Directory Specification #5855 by @pepicrft
- Improve performance of resolving manifest file paths #5871 by @anlaital-oura
Fixed
- Fix running tuist clean without a specific category #5868 by @fortmarek
- Fix tuist clean dependencies #5872 by @fortmarek
- Throw an error when focusing on a non-existent target #5874 by @fortmarek
- Fix error message on missing dependencies #5875 by @fortmarek
Tuist Cloud
Changed
- Fix tuist clean, remove --skip-cache by @fortmarek
Fixed
- Fixed binary-caching of macOS targets might fail due to missing destinations by @fortmarek
4.0.0-beta.2
Tuist
Fixed
- Fix install script #5858 by @svenmuennich
Changed
- Change Package.swift directory from Tuist to root #5862 by @fortmarek
- Rename
fetch
toinstall
#5857 by @pepicrft - Align the cache directory with the UNIX XDG Base Directory Specification #5855 by @pepicrft
Tuist Cloud
Changed
- no changes
4.0.0-beta-1
Tuist
- no changes
Tuist Cloud
Changed
- Add --no-selective-testing flag, rename --no-cache to --no-binary-cache by @fortmarek
3.42.2
Tuist
Fixed
- Fix parsing of
conditon
on SPM.product
dependencies #5846 by @waltflanagan - Fix missing plugin executable when the macro framework/library is not precompiled but the executable is #5849 by @pepicrft
- Fix Swift Macros unresolved by the Xcode editor #5851 by @pepicrft
- Fix false static side effect positives when the project contains Swift Macros #5850 by @pepicrft
Tuist Cloud
- no changes
3.42.1
3.42.0
3.41.0
Tuist
Added
- Add PackageSettings for Package.swift #5802 by @fortmarek
Fixed
- Fix generation not including macros from XCFrameworks #5801 by @pepicrft
- Fix loading PackageSettings when not specified in Package.swift #5805 by @fortmarek
Tuist Cloud
- no changes
3.40.0
Tuist
Changed
- Remove raw xcodebuild logs in favor of resultBundlePath and xcactivitylog #5776 by @fortmarek
Fixed
- Fix incremental test execution when migrating from Tuist versions older than 3.36.0 #5791 by @pepicrft
Tuist Cloud
Changed
- Build macOS xcframework for both Intel and ARM by @fortmarek