Resolves https://github.com/tuist/tuist/issues/1870
- `TargetScriptsContentHasher` now accounts for input and output paths that include variables
Test Plan:
```bash
$ mkdir baklava
$ cd baklava
$ tuist init --platform ios
$ tuist edit
```
add a script phase with output path, including an Xcode build environment variables such as `DERIVED_FILE_DIR`
(see more env variables by running `xcodebuild -showBuildSettings`)
```swift
sources: ["Targets/\(name)/Sources/**"], resources: [], scripts: [
.pre(
script: "ls -la > ${SCRIPT_OUTPUT_FILE_0}",
name: "",
outputPaths: ["$(DERIVED_DILE_DIR)/script_ran.txt"]
)
],
```
```bash
$ tuist test
```
You'll see the logs as
```bash
Generating project for testing
File not found at /Users/eekin/Desktop/baklava/$(DERIVED_DILE_DIR)/script_ran.txt
Consider creating an issue using the following link: https://github.com/tuist/tuist/issues/new/choose
```
* Document how to use the Bitrise step
* Update the CHANGELOG
* fix: remove unneeded run_if
Co-authored-by: Luis Padron <luis.padron@compass.com>
Co-authored-by: Pedro Piñera <pedro@ppinera.es>
Co-authored-by: Daniele Formichelli <df@bendingspoons.com>
Co-authored-by: Luis Padron <luis.padron@compass.com>
* modify template flag to accept repo url
* fix pr review issues and add test
* refactor and fix pr issues
* Add acceptance test
* refactor method to evaluate git url
* feat: add -b optional argument to init command
* refactor when create a temp directory. Now is removing as sson the project is generated
* change branch selection approach, now its parsed from url
* update gitURL Test and add TemplateLocationParser at TuistSupport
* Create TemplateLocationParser Tests
* Refactor InitService.swift
Co-authored-by: Pedro Piñera <pepibumur@gmail.com>
* Create new organization (#3745)
* Create new organization
* Organization settings (#3751)
* Update routing
* Fetch owner and display organization tab
* Show list of users for the project's organization
* Show users' roles
* Change roles (#3776)
* Change roles
* Add ability
* Authorize user actions with pundit instead of cancan
* Simplify change user role API
* Rename user to current_user in ProjectFetchService
* Catch unauthorized errors
* Rename acting_user to role_changer
* WIP: Custom errors
* Change error handling
* Fix lint issues
* Mobx store for organization
* Implement the service for creating an organization
* Create new organization (#3745)
* Create new organization
* Organization settings (#3751)
* Update routing
* Fetch owner and display organization tab
* Show list of users for the project's organization
* Show users' roles
* Change roles (#3776)
* Change roles
* Add ability
* Authorize user actions with pundit instead of cancan
* Simplify change user role API
* Rename user to current_user in ProjectFetchService
* Catch unauthorized errors
* Rename acting_user to role_changer
* WIP: Custom errors
* Change error handling
* Fix lint issues
* Some fixes
* Some fixes
Co-authored-by: Pedro Piñera <pepibumur@gmail.com>
Co-authored-by: Marek Fořt <marekfort@me.com>
Co-authored-by: Pedro Piñera <pedro@ppinera.es>
* swift version file added to prevent some skipped rules
* swiftformat ran without --lint applied
* revert lint argument
* Xcode 13.0 -> 13.2
* revert version argument
* bump to 5.5.2
* swift version updated to 5.1.2
* some files formatted
Co-authored-by: Daniele Formichelli <df@bendingspoons.com>
* Set `BUILD_LIBRARY_FOR_DISTRIBUTION` in prebuilt framework in `ios_app_with_static_frameworks_with_resources` fixture
* Remove iOS version requirement in `ios_app_with_custom_configuration`
* Update CI to use Xcode 13.2
* Update other prebuilt frameworks in fixtures
* Update release workflows
* Add `Workspace.GenerationOptions` to support `WorkspaceSettings.xcsettings`.
* Remove commented code.
* Update `Constants.cacheVersion`
* Update CHANGELOG
* Update docs.
* Update formatting.
* Rename `Schema` to `Scheme`
* Rename to `automaticXcodeSchemes` and `AutomaticSchemeMode`.
* Update spelling in docs.
* Move `WorkspaceSettings` into `WorkspaceSettingsDescriptor`
* Update type names in `ProjectDescription`
Also extend the ios app fixture to showcase new options.
* Update XcodeProj to solve the issue of `xcsettings` getting saved as a binary.
* Convert `Workspace.GenerationOptions` to a `struct`.
* Update docs to reflect enum -> struct change.
* Delete workspace settings file, if needed.
* fix lint issue
* Update XcodeProj dependency to the release.
* Update lockfiles/Package.resolved.
* revert cache version change.
* move `public` to function.
* Use `FileHandler` when deleting xcsettings file.
* fix formatting
* Update docs