Help us shape the future of Go! Take the 2026 Go Developer Survey

project

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

Package project discovers Xcode projects and reads their schemes and build settings.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Project

type Project struct {
	Path    string
	Name    string
	Type    Type
	Schemes []string
}

func Discover

func Discover(root string) ([]Project, error)

Discover finds all .xcodeproj and .xcworkspace in a directory tree. It does NOT recurse deep into subdirectories to avoid finding embedded projects (e.g. in Pods), unless we want to. For a "root" style discover, usually we look at top level or 1-2 levels deep. The design doc says "Discover finds all ... in a directory tree". I'll implement a simple Walk but skip typical ignored dirs.

func Open

func Open(path string) (*Project, error)

Open parses a project or workspace at the given path.

func (*Project) BuildSettings

func (p *Project) BuildSettings(ctx context.Context, scheme, config string) (map[string]string, error)

BuildSettings returns build settings as key-value pairs.

func (*Project) GetSchemes

func (p *Project) GetSchemes(ctx context.Context) ([]string, error)

Schemes returns available schemes via xcodebuild -list. It populates p.Schemes and returns it.

type Type

type Type int
const (
	TypeProject Type = iota
	TypeWorkspace
)

func (Type) String

func (t Type) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL