From 9e23e2ec91f3832dc1f05c9440c91905dcc5cd3a Mon Sep 17 00:00:00 2001 From: Mamadou Elaphi ARAFA Date: Tue, 20 Jun 2023 10:53:39 +0200 Subject: [PATCH] Initial commit --- .drone.yml | 22 ++ .gitignore | 120 +++++++ Documentation/doc_images/CodeFirst.png | Bin 0 -> 77471 bytes README.md | 10 + .../HelloCLT.xcodeproj/project.pbxproj | 313 ++++++++++++++++++ Sources/HelloCLT/HelloCLT/main.swift | 14 + Sources/HelloLibrary/.gitignore | 7 + Sources/HelloLibrary/Package.swift | 28 ++ Sources/HelloLibrary/README.md | 3 + .../Sources/HelloLibrary/HelloStruct.swift | 6 + .../HelloLibraryTests/HelloStructTests.swift | 11 + .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + 13 files changed, 552 insertions(+) create mode 100644 .drone.yml create mode 100644 .gitignore create mode 100644 Documentation/doc_images/CodeFirst.png create mode 100644 README.md create mode 100644 Sources/HelloCLT/HelloCLT.xcodeproj/project.pbxproj create mode 100644 Sources/HelloCLT/HelloCLT/main.swift create mode 100644 Sources/HelloLibrary/.gitignore create mode 100644 Sources/HelloLibrary/Package.swift create mode 100644 Sources/HelloLibrary/README.md create mode 100644 Sources/HelloLibrary/Sources/HelloLibrary/HelloStruct.swift create mode 100644 Sources/HelloLibrary/Tests/HelloLibraryTests/HelloStructTests.swift create mode 100644 Sources/HelloWorkspace.xcworkspace/contents.xcworkspacedata create mode 100644 Sources/HelloWorkspace.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..ef114ee --- /dev/null +++ b/.drone.yml @@ -0,0 +1,22 @@ +kind: pipeline +type: docker +name: default + +trigger: + event: + - push + +steps: + - name: build + image: swift:latest + commands: + - cd Sources/HelloLibrary + - swift build + + - name: tests_Model + image: swift:latest + commands: + - cd Sources/HelloLibrary + - swift test + depends_on: [build] + \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8fb6036 --- /dev/null +++ b/.gitignore @@ -0,0 +1,120 @@ +# ---> Swift +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## User settings +xcuserdata/ + +## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) +*.xcscmblueprint +*.xccheckout + +## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) +build/ +DerivedData/ +*.moved-aside +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 + +## Obj-C/Swift specific +*.hmap + +## App packaging +*.ipa +*.dSYM.zip +*.dSYM + +## Playgrounds +timeline.xctimeline +playground.xcworkspace + +# Swift Package Manager +# +# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. +# Packages/ +# Package.pins +# Package.resolved +# *.xcodeproj +# +# Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata +# hence it is not needed unless you have added a package configuration file to your project +# .swiftpm + +.build/ + +# CocoaPods +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# +# Pods/ +# +# Add this line if you want to avoid checking in source code from the Xcode workspace +# *.xcworkspace + +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. +# Carthage/Checkouts + +Carthage/Build/ + +# Accio dependency management +Dependencies/ +.accio/ + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. +# Instead, use fastlane to re-generate the screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/#source-control + +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots/**/*.png +fastlane/test_output + +# Code Injection +# +# After new code Injection tools there's a generated folder /iOSInjectionProject +# https://github.com/johnno1962/injectionforxcode + +iOSInjectionProject/ + +# ---> macOS +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + diff --git a/Documentation/doc_images/CodeFirst.png b/Documentation/doc_images/CodeFirst.png new file mode 100644 index 0000000000000000000000000000000000000000..50c0a21465d2fe0a04718e4fa43e8d4086c0e162 GIT binary patch literal 77471 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md new file mode 100644 index 0000000..80e7dac --- /dev/null +++ b/README.md @@ -0,0 +1,10 @@ +[![Build Status](https://codefirst.ddns.net/api/badges/mamadou_elaphi.arafa/DepotswiftMvvm/status.svg)](https://codefirst.ddns.net/mamadou_elaphi.arafa/DepotswiftMvvm) + +# DepotswiftMvvm + +Welcome on the DepotswiftMvvm project! + + + +_Generated with a_ **Code#0** _template_ + \ No newline at end of file diff --git a/Sources/HelloCLT/HelloCLT.xcodeproj/project.pbxproj b/Sources/HelloCLT/HelloCLT.xcodeproj/project.pbxproj new file mode 100644 index 0000000..e92c528 --- /dev/null +++ b/Sources/HelloCLT/HelloCLT.xcodeproj/project.pbxproj @@ -0,0 +1,313 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 55; + objects = { + +/* Begin PBXBuildFile section */ + 6FC153182820EFB500D881F3 /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FC153172820EFB500D881F3 /* main.swift */; }; + 6FC153202820EFD800D881F3 /* HelloLibrary in Frameworks */ = {isa = PBXBuildFile; productRef = 6FC1531F2820EFD800D881F3 /* HelloLibrary */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 6FC153122820EFB500D881F3 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = /usr/share/man/man1/; + dstSubfolderSpec = 0; + files = ( + ); + runOnlyForDeploymentPostprocessing = 1; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 6FC153142820EFB500D881F3 /* HelloCLT */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = HelloCLT; sourceTree = BUILT_PRODUCTS_DIR; }; + 6FC153172820EFB500D881F3 /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 6FC153112820EFB500D881F3 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 6FC153202820EFD800D881F3 /* HelloLibrary in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 6FC1530B2820EFB500D881F3 = { + isa = PBXGroup; + children = ( + 6FC153162820EFB500D881F3 /* HelloCLT */, + 6FC153152820EFB500D881F3 /* Products */, + 6FC1531E2820EFD800D881F3 /* Frameworks */, + ); + sourceTree = ""; + }; + 6FC153152820EFB500D881F3 /* Products */ = { + isa = PBXGroup; + children = ( + 6FC153142820EFB500D881F3 /* HelloCLT */, + ); + name = Products; + sourceTree = ""; + }; + 6FC153162820EFB500D881F3 /* HelloCLT */ = { + isa = PBXGroup; + children = ( + 6FC153172820EFB500D881F3 /* main.swift */, + ); + path = HelloCLT; + sourceTree = ""; + }; + 6FC1531E2820EFD800D881F3 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 6FC153132820EFB500D881F3 /* HelloCLT */ = { + isa = PBXNativeTarget; + buildConfigurationList = 6FC1531B2820EFB500D881F3 /* Build configuration list for PBXNativeTarget "HelloCLT" */; + buildPhases = ( + 6FC153102820EFB500D881F3 /* Sources */, + 6FC153112820EFB500D881F3 /* Frameworks */, + 6FC153122820EFB500D881F3 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = HelloCLT; + packageProductDependencies = ( + 6FC1531F2820EFD800D881F3 /* HelloLibrary */, + ); + productName = HelloCLT; + productReference = 6FC153142820EFB500D881F3 /* HelloCLT */; + productType = "com.apple.product-type.tool"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 6FC1530C2820EFB500D881F3 /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastSwiftUpdateCheck = 1320; + LastUpgradeCheck = 1320; + TargetAttributes = { + 6FC153132820EFB500D881F3 = { + CreatedOnToolsVersion = 13.2.1; + }; + }; + }; + buildConfigurationList = 6FC1530F2820EFB500D881F3 /* Build configuration list for PBXProject "HelloCLT" */; + compatibilityVersion = "Xcode 13.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 6FC1530B2820EFB500D881F3; + productRefGroup = 6FC153152820EFB500D881F3 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 6FC153132820EFB500D881F3 /* HelloCLT */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 6FC153102820EFB500D881F3 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 6FC153182820EFB500D881F3 /* main.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 6FC153192820EFB500D881F3 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 11.6; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 6FC1531A2820EFB500D881F3 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 11.6; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Release; + }; + 6FC1531C2820EFB500D881F3 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 9NSYVG2S5B; + ENABLE_HARDENED_RUNTIME = YES; + PRODUCT_BUNDLE_IDENTIFIER = fr.uca.iut; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 6FC1531D2820EFB500D881F3 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 9NSYVG2S5B; + ENABLE_HARDENED_RUNTIME = YES; + PRODUCT_BUNDLE_IDENTIFIER = fr.uca.iut; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 6FC1530F2820EFB500D881F3 /* Build configuration list for PBXProject "HelloCLT" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6FC153192820EFB500D881F3 /* Debug */, + 6FC1531A2820EFB500D881F3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 6FC1531B2820EFB500D881F3 /* Build configuration list for PBXNativeTarget "HelloCLT" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6FC1531C2820EFB500D881F3 /* Debug */, + 6FC1531D2820EFB500D881F3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + +/* Begin XCSwiftPackageProductDependency section */ + 6FC1531F2820EFD800D881F3 /* HelloLibrary */ = { + isa = XCSwiftPackageProductDependency; + productName = HelloLibrary; + }; +/* End XCSwiftPackageProductDependency section */ + }; + rootObject = 6FC1530C2820EFB500D881F3 /* Project object */; +} diff --git a/Sources/HelloCLT/HelloCLT/main.swift b/Sources/HelloCLT/HelloCLT/main.swift new file mode 100644 index 0000000..ce0a84d --- /dev/null +++ b/Sources/HelloCLT/HelloCLT/main.swift @@ -0,0 +1,14 @@ +// +// main.swift +// HelloCLT +// +// Created by Marc Chevaldonné on 03/05/2022. +// + +import HelloLibrary + +import Foundation + +let helloStruct = HelloStruct() +print(helloStruct.text) + diff --git a/Sources/HelloLibrary/.gitignore b/Sources/HelloLibrary/.gitignore new file mode 100644 index 0000000..bb460e7 --- /dev/null +++ b/Sources/HelloLibrary/.gitignore @@ -0,0 +1,7 @@ +.DS_Store +/.build +/Packages +/*.xcodeproj +xcuserdata/ +DerivedData/ +.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata diff --git a/Sources/HelloLibrary/Package.swift b/Sources/HelloLibrary/Package.swift new file mode 100644 index 0000000..ce5cb59 --- /dev/null +++ b/Sources/HelloLibrary/Package.swift @@ -0,0 +1,28 @@ +// swift-tools-version:5.5 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "HelloLibrary", + products: [ + // Products define the executables and libraries a package produces, and make them visible to other packages. + .library( + name: "HelloLibrary", + targets: ["HelloLibrary"]), + ], + dependencies: [ + // Dependencies declare other packages that this package depends on. + // .package(url: /* package url */, from: "1.0.0"), + ], + targets: [ + // Targets are the basic building blocks of a package. A target can define a module or a test suite. + // Targets can depend on other targets in this package, and on products in packages this package depends on. + .target( + name: "HelloLibrary", + dependencies: []), + .testTarget( + name: "HelloLibraryTests", + dependencies: ["HelloLibrary"]), + ] +) diff --git a/Sources/HelloLibrary/README.md b/Sources/HelloLibrary/README.md new file mode 100644 index 0000000..5cdc795 --- /dev/null +++ b/Sources/HelloLibrary/README.md @@ -0,0 +1,3 @@ +# HelloLibrary + +A description of this package. diff --git a/Sources/HelloLibrary/Sources/HelloLibrary/HelloStruct.swift b/Sources/HelloLibrary/Sources/HelloLibrary/HelloStruct.swift new file mode 100644 index 0000000..9ebdb96 --- /dev/null +++ b/Sources/HelloLibrary/Sources/HelloLibrary/HelloStruct.swift @@ -0,0 +1,6 @@ +public struct HelloStruct { + public private(set) var text = "Hello, World!" + + public init() { + } +} diff --git a/Sources/HelloLibrary/Tests/HelloLibraryTests/HelloStructTests.swift b/Sources/HelloLibrary/Tests/HelloLibraryTests/HelloStructTests.swift new file mode 100644 index 0000000..13ca6f5 --- /dev/null +++ b/Sources/HelloLibrary/Tests/HelloLibraryTests/HelloStructTests.swift @@ -0,0 +1,11 @@ +import XCTest +@testable import HelloLibrary + +final class HelloStructTests: XCTestCase { + func testExample() throws { + // This is an example of a functional test case. + // Use XCTAssert and related functions to verify your tests produce the correct + // results. + XCTAssertEqual(HelloStruct().text, "Hello, World!") + } +} diff --git a/Sources/HelloWorkspace.xcworkspace/contents.xcworkspacedata b/Sources/HelloWorkspace.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..d8179a9 --- /dev/null +++ b/Sources/HelloWorkspace.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/Sources/HelloWorkspace.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Sources/HelloWorkspace.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Sources/HelloWorkspace.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + +