diff --git a/FileProvider.podspec b/FilesProvider.podspec similarity index 97% rename from FileProvider.podspec rename to FilesProvider.podspec index bbaa2e4..b8a296f 100644 --- a/FileProvider.podspec +++ b/FilesProvider.podspec @@ -1,5 +1,5 @@ # -# Be sure to run `pod spec lint FileProvider.podspec' to ensure this is a +# Be sure to run `pod spec lint FilesProvider.podspec' to ensure this is a # valid spec and to remove all comments including this before submitting the spec. # # To learn more about Podspec attributes see http://docs.cocoapods.org/specification.html @@ -15,8 +15,8 @@ Pod::Spec.new do |s| # summary should be tweet-length, and the description more in depth. # - s.name = "FileProvider" - s.version = "0.17.0" + s.name = "FilesProvider" + s.version = "0.18.0" s.summary = "FileManager replacement for Local and Remote (WebDAV/FTP/Dropbox/OneDrive/SMB2) files on iOS and macOS." # This description is used to generate tags and improve search results. diff --git a/FileProvider.xcodeproj/project.pbxproj b/FilesProvider.xcodeproj/project.pbxproj similarity index 96% rename from FileProvider.xcodeproj/project.pbxproj rename to FilesProvider.xcodeproj/project.pbxproj index 7cbec2c..34a1a1e 100644 --- a/FileProvider.xcodeproj/project.pbxproj +++ b/FilesProvider.xcodeproj/project.pbxproj @@ -146,9 +146,9 @@ 794C220D1D591A4B00EC49B8 /* SMB2QueryTypes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SMB2QueryTypes.swift; sourceTree = ""; }; 796807541E7BF17E00BBB87B /* FileProviderExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FileProviderExtensions.swift; sourceTree = ""; }; 798654321E8874BC002FA550 /* FTPHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FTPHelper.swift; sourceTree = ""; }; - 799396671D48B7F600086753 /* FileProvider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FileProvider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 799396751D48B80D00086753 /* FileProvider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FileProvider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 799396821D48B82700086753 /* FileProvider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FileProvider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 799396671D48B7F600086753 /* FilesProvider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FilesProvider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 799396751D48B80D00086753 /* FilesProvider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FilesProvider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 799396821D48B82700086753 /* FilesProvider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FilesProvider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 7993968B1D48B8C700086753 /* Info-iOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-iOS.plist"; sourceTree = ""; }; 7993968C1D48B8C700086753 /* Info-MacOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-MacOS.plist"; sourceTree = ""; }; 7993968D1D48B8C700086753 /* Info-tvOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-tvOS.plist"; sourceTree = ""; }; @@ -269,9 +269,9 @@ 799396681D48B7F600086753 /* Products */ = { isa = PBXGroup; children = ( - 799396671D48B7F600086753 /* FileProvider.framework */, - 799396751D48B80D00086753 /* FileProvider.framework */, - 799396821D48B82700086753 /* FileProvider.framework */, + 799396671D48B7F600086753 /* FilesProvider.framework */, + 799396751D48B80D00086753 /* FilesProvider.framework */, + 799396821D48B82700086753 /* FilesProvider.framework */, ); name = Products; sourceTree = ""; @@ -368,9 +368,9 @@ /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 799396661D48B7F600086753 /* FileProvider iOS */ = { + 799396661D48B7F600086753 /* FilesProvider iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 7993966F1D48B7F600086753 /* Build configuration list for PBXNativeTarget "FileProvider iOS" */; + buildConfigurationList = 7993966F1D48B7F600086753 /* Build configuration list for PBXNativeTarget "FilesProvider iOS" */; buildPhases = ( 799396621D48B7F600086753 /* Sources */, 799396631D48B7F600086753 /* Frameworks */, @@ -381,14 +381,14 @@ ); dependencies = ( ); - name = "FileProvider iOS"; + name = "FilesProvider iOS"; productName = "FileProvider iOS"; - productReference = 799396671D48B7F600086753 /* FileProvider.framework */; + productReference = 799396671D48B7F600086753 /* FilesProvider.framework */; productType = "com.apple.product-type.framework"; }; - 799396741D48B80D00086753 /* FileProvider OSX */ = { + 799396741D48B80D00086753 /* FilesProvider OSX */ = { isa = PBXNativeTarget; - buildConfigurationList = 7993967A1D48B80D00086753 /* Build configuration list for PBXNativeTarget "FileProvider OSX" */; + buildConfigurationList = 7993967A1D48B80D00086753 /* Build configuration list for PBXNativeTarget "FilesProvider OSX" */; buildPhases = ( 799396701D48B80D00086753 /* Sources */, 799396711D48B80D00086753 /* Frameworks */, @@ -399,14 +399,14 @@ ); dependencies = ( ); - name = "FileProvider OSX"; + name = "FilesProvider OSX"; productName = "FileProvider OSX"; - productReference = 799396751D48B80D00086753 /* FileProvider.framework */; + productReference = 799396751D48B80D00086753 /* FilesProvider.framework */; productType = "com.apple.product-type.framework"; }; - 799396811D48B82700086753 /* FileProvider tvOS */ = { + 799396811D48B82700086753 /* FilesProvider tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 799396871D48B82700086753 /* Build configuration list for PBXNativeTarget "FileProvider tvOS" */; + buildConfigurationList = 799396871D48B82700086753 /* Build configuration list for PBXNativeTarget "FilesProvider tvOS" */; buildPhases = ( 7993967D1D48B82700086753 /* Sources */, 7993967E1D48B82700086753 /* Frameworks */, @@ -417,9 +417,9 @@ ); dependencies = ( ); - name = "FileProvider tvOS"; + name = "FilesProvider tvOS"; productName = "FileProvider tvOS"; - productReference = 799396821D48B82700086753 /* FileProvider.framework */; + productReference = 799396821D48B82700086753 /* FilesProvider.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ @@ -442,7 +442,7 @@ }; }; }; - buildConfigurationList = 7993965F1D48B7BF00086753 /* Build configuration list for PBXProject "FileProvider" */; + buildConfigurationList = 7993965F1D48B7BF00086753 /* Build configuration list for PBXProject "FilesProvider" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; @@ -454,9 +454,9 @@ projectDirPath = ""; projectRoot = ""; targets = ( - 799396661D48B7F600086753 /* FileProvider iOS */, - 799396741D48B80D00086753 /* FileProvider OSX */, - 799396811D48B82700086753 /* FileProvider tvOS */, + 799396661D48B7F600086753 /* FilesProvider iOS */, + 799396741D48B80D00086753 /* FilesProvider OSX */, + 799396811D48B82700086753 /* FilesProvider tvOS */, ); }; /* End PBXProject section */ @@ -621,7 +621,7 @@ 799396601D48B7BF00086753 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - BUNDLE_VERSION_STRING = 0.17.0; + BUNDLE_VERSION_STRING = 0.18.0; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_EMPTY_BODY = YES; @@ -645,7 +645,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; ONLY_ACTIVE_ARCH = YES; - PRODUCT_NAME = FileProvider; + PRODUCT_NAME = FilesProvider; SWIFT_VERSION = 3.0; }; name = Debug; @@ -653,7 +653,7 @@ 799396611D48B7BF00086753 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - BUNDLE_VERSION_STRING = 0.17.0; + BUNDLE_VERSION_STRING = 0.18.0; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_EMPTY_BODY = YES; @@ -673,7 +673,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - PRODUCT_NAME = FileProvider; + PRODUCT_NAME = FilesProvider; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 3.0; }; @@ -720,7 +720,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FileProvider-iOS"; + PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FilesProvider-iOS"; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -766,7 +766,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FileProvider-iOS"; + PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FilesProvider-iOS"; SDKROOT = iphoneos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; @@ -822,7 +822,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FileProvider-OSX"; + PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FilesProvider-OSX"; SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -872,7 +872,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FileProvider-OSX"; + PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FilesProvider-OSX"; SDKROOT = macosx; SKIP_INSTALL = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -923,7 +923,7 @@ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FileProvider-tvOS"; + PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FilesProvider-tvOS"; SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -972,7 +972,7 @@ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FileProvider-tvOS"; + PRODUCT_BUNDLE_IDENTIFIER = "com.mousavian.FilesProvider-tvOS"; SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; @@ -986,7 +986,7 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 7993965F1D48B7BF00086753 /* Build configuration list for PBXProject "FileProvider" */ = { + 7993965F1D48B7BF00086753 /* Build configuration list for PBXProject "FilesProvider" */ = { isa = XCConfigurationList; buildConfigurations = ( 799396601D48B7BF00086753 /* Debug */, @@ -995,7 +995,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 7993966F1D48B7F600086753 /* Build configuration list for PBXNativeTarget "FileProvider iOS" */ = { + 7993966F1D48B7F600086753 /* Build configuration list for PBXNativeTarget "FilesProvider iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( 7993966D1D48B7F600086753 /* Debug */, @@ -1004,7 +1004,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 7993967A1D48B80D00086753 /* Build configuration list for PBXNativeTarget "FileProvider OSX" */ = { + 7993967A1D48B80D00086753 /* Build configuration list for PBXNativeTarget "FilesProvider OSX" */ = { isa = XCConfigurationList; buildConfigurations = ( 7993967B1D48B80D00086753 /* Debug */, @@ -1013,7 +1013,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 799396871D48B82700086753 /* Build configuration list for PBXNativeTarget "FileProvider tvOS" */ = { + 799396871D48B82700086753 /* Build configuration list for PBXNativeTarget "FilesProvider tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( 799396881D48B82700086753 /* Debug */, diff --git a/FileProvider.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/FilesProvider.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from FileProvider.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to FilesProvider.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider OSX.xcscheme b/FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider OSX.xcscheme similarity index 80% rename from FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider OSX.xcscheme rename to FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider OSX.xcscheme index a054c27..de9d1fe 100644 --- a/FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider OSX.xcscheme +++ b/FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider OSX.xcscheme @@ -15,9 +15,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider OSX" + ReferencedContainer = "container:FileسProvider.xcodeproj"> @@ -26,6 +26,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "" shouldUseLaunchSchemeArgsEnv = "YES"> @@ -36,6 +37,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO" @@ -46,9 +48,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider OSX" + ReferencedContainer = "container:FileسProvider.xcodeproj"> @@ -64,9 +66,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider OSX" + ReferencedContainer = "container:FileسProvider.xcodeproj"> diff --git a/FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider iOS.xcscheme b/FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider iOS.xcscheme similarity index 80% rename from FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider iOS.xcscheme rename to FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider iOS.xcscheme index d399365..18114e6 100644 --- a/FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider iOS.xcscheme +++ b/FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider iOS.xcscheme @@ -15,9 +15,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider iOS" + ReferencedContainer = "container:FileسProvider.xcodeproj"> @@ -26,6 +26,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "" shouldUseLaunchSchemeArgsEnv = "YES"> @@ -36,6 +37,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO" @@ -46,9 +48,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider iOS" + ReferencedContainer = "container:FileسProvider.xcodeproj"> @@ -64,9 +66,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider iOS" + ReferencedContainer = "container:FileسProvider.xcodeproj"> diff --git a/FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider tvOS.xcscheme b/FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider tvOS.xcscheme similarity index 80% rename from FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider tvOS.xcscheme rename to FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider tvOS.xcscheme index 78f47d4..6f793af 100644 --- a/FileProvider.xcodeproj/xcshareddata/xcschemes/FileProvider tvOS.xcscheme +++ b/FilesProvider.xcodeproj/xcshareddata/xcschemes/FileProvider tvOS.xcscheme @@ -15,9 +15,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider tvOS" + ReferencedContainer = "container:FileسProvider.xcodeproj"> @@ -26,6 +26,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "" shouldUseLaunchSchemeArgsEnv = "YES"> @@ -36,6 +37,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO" @@ -46,9 +48,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider tvOS" + ReferencedContainer = "container:FileسProvider.xcodeproj"> @@ -64,9 +66,9 @@ + BuildableName = "FilesProvider.framework" + BlueprintName = "FilesProvider tvOS" + ReferencedContainer = "container:FileسProvider.xcodeproj"> diff --git a/README.md b/README.md index 892f8d3..74e93f1 100644 --- a/README.md +++ b/README.md @@ -51,12 +51,15 @@ Legacy version is available in swift-2 branch. ## Installation +###Important: this library has been renamed to avoid conflict in iOS 11, macOS 10.13 and Xcode 9.0. Please read issue [#53](https://github.com/amosavian/FileProvider/issues/53) to find more. + + ### Cocoapods / Carthage / Swift Package Manager Add this line to your pods file: ```ruby -pod "FileProvider" +pod "FilesProvider" ``` Or add this to Cartfile: @@ -94,7 +97,7 @@ Then you can do either: * Copy Source folder to your project and Voila! -* Drop `FileProvider.xcodeproj` to you Xcode workspace and add the framework to your Embeded Binaries in target. +* Drop `FilesProvider.xcodeproj` to you Xcode workspace and add the framework to your Embeded Binaries in target. ## Usage @@ -105,6 +108,8 @@ Each provider has a specific class which conforms to FileProvider protocol and s For LocalFileProvider if you want to deal with `Documents` folder ``` swift +import FilesProvider + let documentsProvider = LocalFileProvider() // Equals with: @@ -118,6 +123,8 @@ let documentsProvider = LocalFileProvider(baseURL: documentsURL) Also for using group shared container: ```swift +import FilesProvider + let documentsProvider = LocalFileProvider(sharedContainerId: "group.yourcompany.appContainer") // Replace your group identifier ``` @@ -127,6 +134,8 @@ You can't change the base url later. and all paths are related to this base url To initialize an iCloud Container provider look at [here](https://medium.com/ios-os-x-development/icloud-drive-documents-1a46b5706fe1) to see how to update project settings then use below code, This will automatically manager creating Documents folder in container: ```swift +import FilesProvider + let documentsProvider = CloudFileProvider(containerId: nil) ``` @@ -134,6 +143,8 @@ let documentsProvider = CloudFileProvider(containerId: nil) For remote file providers authentication may be necessary: ``` swift +import FilesProvider + let credential = URLCredential(user: "user", password: "pass", persistence: .permanent) let webdavProvider = WebDAVFileProvider(baseURL: URL(string: "http://www.example.com/dav")!, credential: credential) ```