Skip to content

Latest commit

Β 

History

History
354 lines (269 loc) Β· 20.8 KB

CHANGELOG.md

File metadata and controls

354 lines (269 loc) Β· 20.8 KB

πŸš€ Check out the guidelines here

next version

Changed

  • Breaking Change blueprintIdentifier type to PBXObjectReference tuist#289 by @pepibumur

Fixed

5.0.0

Nothing new since the release rc2.

5.0.0-rc2

Changed

  • Breaking Rename filesReferences to fileReferences tuist#271 by @pepibumur

Added

  • Xcode 10 inputFileListPaths and outputFileListPaths attributes tuist#271 by @pepibumur
  • Split up XCScheme models and make them conform the Equatable protocol tuist#273 by @pepibumur
  • Convenient methods to add and fetch build configurations tuist#283 by @pepibumur
  • .inc extension to the header file extensions by @pepibumur.

5.0.0-rc1

Breaking

  • Rename project to xcodeproj by @pepibumur.
  • Drop Carthage and CocoaPods support by @pepibumur.
  • Use Basic AbsolutePath, RelativePath and Process extensions by @pepibumur.
  • Use PBXObjectReference instead of String to reference objects from PBXProj.Objects by @pepibumur.
  • Remove ObjectReference by @pepibumur.
  • Update PBXNativeTarget reference attributes to be of type PBXObjectReference by @pepibumur.
  • Add convenient methods to materialize objects references tuist#12 by @pepibumur.
  • Rename some PBXProject attributes for consistency tuist#268 by @pepibumur.

Added

  • Add addDependency method to PBXNativeTarget by @pepibumur.
  • Danger check that reports Swiftlint results tuist#257 by @pepibumur.
  • Xcode constants by @pepibumur.
  • Convenient API from objects by @pepibumur.
  • BuildSettingsProvider by @pepibumur.
  • Add addDependency method to PBXNativeTarget by @pepibumur.
  • Method in XCConfigurationList to get the build configurations objects @pepibumur.
  • Method to get the configuration list from any target tuist#10 by @pepibumur.
  • Migration guidelines tuist#264 by @pepibumur.

Removed

  • Deprecated elements by @pepibumur.
  • Tests that test the conformance of Equatable by @pepibumur.

Fixed

  • XCConfig parser strips the trailing semicolon from a configuration value tuist#250 by @briantkelley
  • fullPath(fileElement:reference:sourceRoot:) now returns the correct path for files that exist within a variant group tuist#255 by @ileitch

Added

  • Update Danger to warn if the PR title contains WIP tuist#259 by @pepibumur.
  • Test coverage reports tuist#258 by @pepibumur

4.3.0

Added

  • CI pipeline runs also on a Linux environment tuist#249 by @pepibumur.
  • Auto-generation of Equatable conformances using Sourcery tuist#189 @by pepibumur.

Fixed

  • Some updates to match the Xcode 9.3 project format tuist#247 by @LinusU

4.2.0

Added

  • PBXNativeTarget.productInstallPath, PBXTargetDependency.name tuist#241 by @briantkelley
  • PBXContainerItem super class of PBXBuildPhase and PBXTarget tuist#243 by @briantkelley
  • PBXFileElement.wrapsLinesproperty tuist#244 by @briantkelley
  • PBXFileReference languageSpecificationIdentifier and plistStructureDefinitionIdentifier properties tuist#244 by @briantkelley

Changed

  • Support for XCConfig project-relative includes tuist#238 by @briantkelley
  • Migrated PBXProject.projectRoot to PBXProject.projectRoots tuist#242 by @briantkelley
  • Moved PBXFileElement.includeInIndex and PBXGroup's usesTabs, indentWidth, and tabWidth properties to PBXFileElement tuist#244 by @briantkelley
  • PBXContainerItem super class of PBXFileElement tuist#244 by @briantkelley
  • PBXVariantGroup and XCVersionGroup now inherit from PBXGroup tuist#244 by @briantkelley

Fixed

  • PBXObject.isEqual(to:) overrides correctly call super tuist#239 by @briantkelley
  • PBXAggregateTarget does not write buildRules tuist#241 by @briantkelley
  • Writes showEnvVarsInLog only when false tuist#240 by @briantkelley
  • Writes PBXProject.projectReferences to the plist tuist#242 by @briantkelley
  • Comment generation for PBXProject, PBXTarget, and PBXVariantGroup tuist#243 by @briantkelley
  • fullPath now returns the path for a file inside a group without a folder tuist#246 by @ileitch
  • Quotes strings containing a triple underscore or double forward slash in .pbxproj file tuist#245 by @briantkelley

4.1.0

Added

  • Added tvOS and watchOS Carthage support tuist#232 by @yonaskolb
  • Added support for scheme environment variables tuist#227 by @turekj

Fixed

  • Fixed PBXObject sublasses from checking Equatable properly tuist#224 by @yonaskolb
  • Fix Carthage support tuist#226 by @ileitch
  • Fix adding file reference to bundle and package files tuist#234 by @fuzza
  • Fix adding PBXGroup without folder reference tuist#235 by @fuzza
  • Fixed some more diffs from Xcode tuist#233 by @yonaskolb

Changed

  • Carthage minimum Deployment Target tuist#229 by @olbrichj

4.0.0

Added

  • Added support for scheme pre-actions and post-actions tuist#217 by @kastiglione

Changed

  • Breaking: Changed the return type of some helper functions that create or fetch PBXObjects to be ObjectReference, which includes the reference as well as the object tuist#218 by @yonaskolb
  • Breaking: Changed some Int properties into Bool or UInt tuist#221 by @yonaskolb
  • Changed the writing of some properties to minimise diffs when opening projects in Xcode tuist#220 by @yonaskolb

3.0.0

Fixed

  • Fix Xcode 9.2 warning tuist#209 by @keith
  • macOS CLI targets now have a nil extension, instead of an empty string tuist#208 by @keith
  • Fix unnecessary quotations in CommentedString tuist#211 by @allu22
  • Fixed xml files format not matching Xcode format, added some missing actions attributes. tuist#216 by @ilyapuchka

Changed

  • Breaking: XCWorkspace.Data renamed to XCWorkspaceData and removed references.
  • Improved README examples. tuist#212 by @ilyapuchka
  • Added methods to get paths to workspace, project and breakpoints and shemes files, added public methods to write them separatery. tuist#215 by @ilyapuchka
  • Added helper methods for adding source file to the project. tuist#213 by @ilyapuchka

2.0.0

Added

  • Deterministic reference generation tuist#185 by @pepibumur

Removed

  • Breaking Change Referenceable protocol tuist#185 by @pepibumur.
  • Breaking Change Deprecated methods to access objects from the PBXProj. Developers should use the PBXProj.objects property instead. tuist#185 by @pepibumur.

Fixed

  • Breaking: PBXSourceTree no longer has raw values and gained an associated value case to support custom locations tuist#198 by @briantkelley

Changed

  • Breaking: The buildableProductRunnable property onXCScheme.LaunchAction and XCScheme.ProfileAction is now optional. Similarly, macroExpansion on XCScheme.TestAction is also optional. tuist#194 by @briantkelley
  • The XCScheme initialization from an XML file has been relaxed, better matching Xcode's behavior. Default values will be used if the XML file is missing the relevant element or attribute. tuist#194 by @briantkelley

Migrate from 1.x.x to 2.x.x

  • If you were using objects getters in PBXProj you should use the getters in PBXProj.objects instead.
  • Objects don't include a reference property anymore. Objects associated references are the keys in the dictionary that contains them.
  • When objects are added to the PBXProj.objects collection a reference needs to be passed. The reference can be calculated using the function PBXProj.objects.generateReference that generates a unique and deterministic reference based on the given object and identifier.
  • If you were using buildableProductRunnable and macroExpansion properties from XCScheme actions they are now optionals.

1.8.0

Fixed

  • Optimised performance of object lookups tuist#191 by @kastiglione

Added

  • Add breakpoint condition parameter by @alexruperez.
  • Support Xcode Extension product type tuist#190 by @briantkelley
  • Support for the legacy Build Carbon Resources build phase tuist#196 by @briantkelley
  • Support for custom build rules by tuist#197 @briantkelley

Fixed

  • Optimised escaping of CommentedString tuist#195 by @kastiglione
  • Optimised performance of object lookups tuist#191 by @kastiglione
  • fixed PBXLegacyTarget write order tuist#199 by @kastiglione
  • fixed comment generation of PBXBuildFiles without a name tuist#203 by @briantkelley
  • fixed PBXReferenceTarget encoding in pbxproj file tuist#202 by @briantkelley

1.7.0

Added

  • Support more indentation options on PBXGroups tuist#168 by @bkase.
  • Support PBXLegacyTarget tuist#171 by @bkase.
  • Breakpoint support through XCBreakpointList. tuist#172 by @alexruperez
  • Add convenience method to find targets with a given name tuist#184 by @pepibumur.
  • Danger plugin that fails earlier if files have been added/deleted and the Carthage project hasn't been regenerated afterwards tuist#187 by @pepibumur.

1.6.1

Fixed

  • Fix encoded line breaks in PBXFileReference tuist#177 by @yonaskolb

1.6.0

Added

  • PBXLegacyTarget support tuist#171 by @bkase
  • Integration tests tuist#168 by @pepibumur
  • More examples to the README tuist#116 by @pepibumur.
  • Add adding / editing command line arguments for Launch, Test and Profile Actions in XCScheme. tuist#167 by @rahul-malik
  • Test the contract with XcodeGen tuist#170 by @pepibumur
  • Add PBXProj.Objects.getFileElement tuist#175 by @yonaskolb

Fixed

  • PBXGroup not generating the comment properly for its children tuist#169 by @pepibumur.
  • Make PBXFileElement a superclass for PBXFileReference, PBXGroup, and PBXVariantGroup tuist#173 by @gubikmic
  • Added path to PBXVariantGroup init tuist#174 by @yonaskolb

1.5.0

Added

  • Add codeCoverageEnabled parameter to TestAction tuist#166 by @kastiglione
  • Make final classes that are not extendible tuist#164 by @pepibumur.

Fixed

  • Fix PBXProject productRefGroup comment tuist#161 by @allu22
  • Fix deprecation warnings for PBXProj objects usage tuist#162 by @rahul-malik

1.4.0 - Take me out

Added

Changed

  • Improve efficiency of looking up PBXObject's from PBXProj tuist#136 by @rahul-malik

Deprecated

Fixed

  • Fix PBXBuildFile wrongly defaulting the settings attribute when it was nil tuist#149 by @allu22
  • Fix PBXTarget generating the wrong comment for the productReference property tuist#151 by @allu22.
  • Add missing usesTabs property to PBXGroup tuist#147 by @allu22.
  • Fix generated comment for PBXHeadersBuildPhase by @allu22.
  • Fix wrong BuidlSettings.swift file name tuist#146 by @allu22.
  • Fix projectReferences type tuist#135 by @solgar.

Added

  • Danger checks tuist#160 by @pepibumur
  • New product type ocUnitTestBundle tuist#134 by @solgar.

1.3.0 - Esbarzers

Added

Fixed

1.2.0 - Two shoes

Added

  • Carthage support tuist#125 by @pepibumur.
  • buildPhases property to PBXProj tuist#132 by @pepibumur.

Fixed

  • Build phase buildActionMask wrong default value tuist#131 by @pepibumur.

1.1.0 - Muerdo

Added

  • It supports now SPM-generated projects tuist#124 by @pepibumur. Thanks @josefdolezal for the report.
  • Project and workspace initializer that takes the path as a string tuist#123 by @pepibumur.

Fixed

  • Fix the decoding of the PBXFileReference.fileEncoding property tuist#127 by @gubikmic.
  • Fix some wrong comments and typos tuist#126 by @gubikmic

1.0.0 - Acho

Changed

  • Breaking: Review optionality of attributes to align it with Xcode one tuist#107 by @pepibumur.
  • Contributing, and code of conduct point to the organization ones by @pepibumur.
  • New changelog format introduced by @pepibumur.

Fixed

  • Use the super init to decode reference in some objects tuist#110 by @yonaskolb
  • Schemes being shared with an extension tuist#113 by @esttorhe.
  • Contributors link in the README.md tuist#117 by @tapanprakasht.

Security

0.4.1

  • Add back the BuildSettings typelias removed by mistake tuist#109 by @pepibumur.
  • Fix a bug decoding the PBXProject.projectRoot property that should be decoded as an optional tuist#108 by @pepibumur.

0.4.0

  • Remove dependency with Unbox and use the language coding/decoding features tuist#99 by @pepibumur and @artemnovichkov.
  • Enable xcproj in Open Collective by @pepibumur.
  • Support parsing XCVersionGroup objects tuist#96 by @pepibumur.
  • Add iOS support to the .podspec tuist#92 by @pepibumur.
  • Fix comment for buildConfigurationList tuist#93 by @toshi0383.
  • Update PBXProj classes property to be a dictionary tuist#94 by @toshi0383.
  • Fix comment in the BuildPhase object tuist#95 by @toshi0383.

0.3.0

  • Turn PBXVariantGroup children property into an array tuist#88 by @pepibumur
  • Add PBXReferenceProxy object tuist#85 by @pepibumur
  • Migrate project to Swift 4 tuist#84 by @artemnovichkov
  • Fix build phase script error undoer Xcode 9 tuist#81 by @kixswift

0.2.0

  • Add how to use section tuist#77 by @pepibumur
  • Add contributing guidelines tuist#76 by @pepibumur

0.1.2

  • Update shell build script phase input and output files to be array instead of set tuist#65 by @pepibumur
  • Fix wrong comment in the shell script build phase tuist#67 by @ppeibumur
  • Fix wron gcomment in PBXSourcesBuildPhase files property tuist#68 by @pepibumur
  • Add XCVersionGroup project element used by Core Data models tuist#69 by @pepibumur
  • Update XCConcigurationList build configurations to be an array tuist#70 by @pepibumur

0.1.1

  • Change BuildSettings to [String: Any] tuist#52 by @yonaskolb
  • Plist fixes tuist#54 by @yonaskolb

0.1.0

  • Update struct to classes and clean up API tuist#51 by @yonaskolb
  • Fix and cleanup strings escaping tuist#48 by @yonaskolb
  • Add runOnlyForDeploymentPostprocessing to PBXShellScriptBuildPhase by @yonaskolb
  • Remove force unwrap for XCScheme tuist#39 by @Shakarang

0.0.9

  • CocoaPods support tuist#35 by @pepibumur
  • Make project models mutable tuist#33 by @yonaskolb

0.0.7

  • Downgrade Swift Tools versions to 4.0 tuist#27 by @yonaskolb
  • Make Scheme intializers public tuist#28 by @yonaskolb
  • Change PBXGroup.children to be an array tuist#26 by @yonaskolb
  • Make XcodeProj writable tuist#20 by @yonaskolb
  • Write baseConfigurationReference tuist#24 by @yonaskolb
  • Convert booleans to YES or NO tuist#23 by @yonaskolb
  • Make more properties public tuist#19 by @yonaskolb

0.0.6

0.0.5

  • Remove UUID typealias tuist#15
  • Add UUID identifier generation from PBXProj tuist#14

0.0.4

0.0.1

  • First version of the Swift library.
  • It supports reading and parsing the following models:
    • xcodeproj.
    • xcworkspace.
    • pbxproj.

This version doesn't support writing yet