Giter VIP home page Giter VIP logo

tuist-up's Introduction

tuist-up

tuist-up

tuist up was originally a Tuist built-in command to provision environments by reading the requirements in a manifest file Setup.swift. Although convenient for users, it was removed in Tuist 2.0 because it was distant from the project's core domain. Moreover, errors bubbling up from underlying commands made users believe they were Tuist bugs, and therefore they added up to the triaging and maintenance work.

This repository contains a Swift-powered CLI that provides the same functionality to ease the adoption of Tuist 2.0 for those users that were using Setup.swift with Tuist 1.x. Note that this tool uses a tuist.json instead of a manifest written in Swift.

Run tuist-up

You can run tuist-up through Mint:

mint run tuist/tuist-up

Plugins 2.0

Future plans

Tuist's long-term plan is to evolve our plugins architecture to be able to distribute and install CLI utilities like tuist-up directly from Tuist like Cargo does with Crates.

# The CLI below is orientative and therefore is subject to change.
tuist install tuist/tuist-up
tuist up

up.json specification

[
  {
    "name": "Install Pods",
    "meet": [
      "bundle",
      "exec",
      "pod",
      "install"
    ],
    "is_met": [
      "diff",
      "Podfile.lock", 
      "Pods/Manifest.lock"
    ]
  },
  {
    "name": "Ensure the right version of Xcode is used",
    "meet": [
      "echo", 
      "'Install it through the App Store'"
    ],
    "is_met": [
      "scripts/check_xcode_version.sh"
    ]
  }
]

tuist-up's People

Contributors

fortmarek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

isabella232

tuist-up's Issues

Running mint run tuist/tuist-up fails

Hi, running command mint run tuist/tuist-up fails with error Failed to build tuist-up master with SPM.
I have local 3.12.1 version of tuist installed.

Device:
MacBook Pro 2021
Apple M1 Pro
Memory 16 GB
macOS Ventura 13.0

Xcode 14.1

Tuist 3.12.1

Full output:

% mint run tuist/tuist-up
๐ŸŒฑ Finding latest version of tuist-up
๐ŸŒฑ Cloning tuist-up master
๐ŸŒฑ Resolving package
๐ŸŒฑ Building package
Building for production...
[0/3] Compiling TSCclibc process.c
[1/3] Compiling TSCclibc libc.c
remark: Incremental compilation has been disabled: it is not compatible with whole module optimizationremark: Incremental compilation has been disabled: it is not compatible with whole module optimization[3/5] Compiling TSCLibc libc.swift
remark: Incremental compilation has been disabled: it is not compatible with whole module optimization[4/6] Compiling ColorizeSwift ColorizeSwift.swift
[5/6] Compiling TSCBasic Await.swift
remark: Incremental compilation has been disabled: it is not compatible with whole module optimization[6/7] Compiling TSCUtility Archiver.swift
/private/var/folders/x2/6zng0z5169z73htkwyzgs3bw0000gn/T/mint/github.com_tuist_tuist-up/.build/checkouts/swift-tools-support-core/Sources/TSCUtility/FSWatch.swift:677:15: error: cannot assign value of type 'Thread' to type 'Thread?'
                self.thread = thread
                            ^
๐ŸŒฑ Encountered error during "swift build -c release -Xswiftc -target -Xswiftc arm64-apple-macosx13.0". Use --verbose to see full output
๐ŸŒฑ  Failed to build tuist-up master with SPM

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.