{"id":20484425,"url":"https://github.com/sap-samples/cloud-sdk-ios-specs","last_synced_at":"2025-07-24T14:10:56.678Z","repository":{"id":35008515,"uuid":"172288823","full_name":"SAP-samples/cloud-sdk-ios-specs","owner":"SAP-samples","description":"Dependency Manager specs repository for SAP BTP SDK for iOS.","archived":false,"fork":false,"pushed_at":"2025-06-25T15:50:01.000Z","size":5285,"stargazers_count":15,"open_issues_count":2,"forks_count":5,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-06-25T16:52:54.853Z","etag":null,"topics":["carthage","cocoapods","ios","mobile","sample","sample-code","sap-btp-sdk-for-ios","sdk-for-ios","swift"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SAP-samples.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-02-24T02:52:25.000Z","updated_at":"2025-06-25T15:50:10.000Z","dependencies_parsed_at":"2023-02-10T14:01:25.538Z","dependency_job_id":"c57c180e-b2c6-419c-a9ab-6ac6bdfbf0ec","html_url":"https://github.com/SAP-samples/cloud-sdk-ios-specs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SAP-samples/cloud-sdk-ios-specs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fcloud-sdk-ios-specs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fcloud-sdk-ios-specs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fcloud-sdk-ios-specs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fcloud-sdk-ios-specs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SAP-samples","download_url":"https://codeload.github.com/SAP-samples/cloud-sdk-ios-specs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fcloud-sdk-ios-specs/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266854496,"owners_count":23995485,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-24T02:00:09.469Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["carthage","cocoapods","ios","mobile","sample","sample-code","sap-btp-sdk-for-ios","sdk-for-ios","swift"],"created_at":"2024-11-15T16:22:19.679Z","updated_at":"2025-07-24T14:10:56.657Z","avatar_url":"https://github.com/SAP-samples.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"***IMPORTANT:  Due to a repository migration 7/2022, your netrc `machine` should be updated to `rbsc.repositories.cloud.sap`.  You will likely experience authentication failure without making this change.*** \n\n# The SAP iOS SDK Specs Repo\n\n[![REUSE status](https://api.reuse.software/badge/github.com/SAP-samples/cloud-sdk-ios-specs)](https://api.reuse.software/info/github.com/SAP-samples/cloud-sdk-ios-specs)\n\nThis repository contains the CocoaPods specifications for frameworks in the SAP Business Technology Platform SDK for iOS. Frameworks downloaded here are identical to those available through SAP Service Marketplace, and on the [SAP Developer Site](https://developers.sap.com/topics/sap-btp-sdk-for-ios.html).\n\nIf you want to consume the binary frameworks through Apple's Swift Package Manager (SPM) then visit https://github.com/SAP/cloud-sdk-ios.\n\n# Requirements\n\n1. Ruby\n2. Cocoapods dependency manager\n3. Technical user \u0026 password, for [repositories.cloud.sap](https://rbsc.repositories.cloud.sap/nexus3/)\n4. Apple Xcode IDE\n5. For SDK version \u003e=5 on Mac Catalyst, script `codesign.py` from SAP BTP SDK for iOS Assistant\n\n# Download and Installation\n\n## Installing Ruby\n\nRuby versions 2.0 and above are included by default in macOS releases since at least El Capitan (10.11).  Additional installation techniques are documented [here](https://www.ruby-lang.org/en/documentation/installation/).\n\nHomebrew is a commonly used package manager on macOS.  Installing Ruby using Homebrew is easy:\n\n```shell\nbrew install ruby\n```\n\n## Installing Cocoapods\n\nCocoapods is a dependency manager for Swift and Objective-C Cocoa projects.\n\nDocumentation is available at [cocoapods.org](https://cocoapods.org/).\nInstallation is a Ruby `gem install` command; updates are done with `gem` as well.\n\n```shell\n$ sudo gem install cocoapods\n```\n\n## Installing Apple Xcode IDE\n\nXcode may be installed via the Mac App Store, or, specific versions may be downloaded at [developer.apple.com/download](https://developer.apple.com/download/).\n\nThe current version of Xcode which is supported by the latest SAP binaries is Xcode 11.\n\n# Configuration\n\n## Obtaining Technical user \u0026 password\n\nThe SDK binaries are hosted in SAP's Internet-facing repository, which requires authenticated access. Before running `pod update`, you must visit the [Technical Users' UI Home Page](https://ui.repositories.cloud.sap/www/webapp/) to obtain a technical username/password.  \n\n \u003e SAP Customers \u0026 Partners:  use your **S-User** credentials\n\n \u003e SAP Employees: request and use an internal S-User as described [here](https://shipments.pages.repositories.cloud.sap/docs/shipment-sap-client.html#internal-scenario)\n\u003cimg src=\"https://github.com/SAP/cloud-sdk-ios-podspecs/blob/resources/gif/GetCredentialsFromRepo.gif?raw=true\" width=600\u003e\n\n## Installing credential\n\nOpen, or create a new file at `~/.netrc`.\n\nAdd an entry which includes the username password credential pair, as follows:\n\n```\nmachine rbsc.repositories.cloud.sap \n    login sap-xxxxxx \n    password xxxxxxxxxxxxxxxxxx\n```\n\n\u003e The `machine` name was updated 7/2022 to `rbsc.repositories.cloud.sap`.  Existing netrc entries should be updated accordingly.  The existing technical user credentials *should* remain valid.  If not, please re-generate and update in the netrc file.\n\nThe **netrc** credential technique is a stand **cURL** API.  For complete documentation, see [gnu.org](https://www.gnu.org/software/inetutils/manual/html_node/The-_002enetrc-file.html).\n\n# Usage\n\n## Supported SAP Binary Dependencies (pods)\n\nSpecs for the following pods are registered in the repository source:  `https://github.com/SAP-samples/cloud-sdk-ios-specs`.\n\n - `SAPFoundation`\n - `SAPCommon`\n - `SAPFiori`\n - `SAPFioriFlows`\n - `SAPOData`\n - `SAPOfflineOData`\n - `SAPML`\n\n ### Example Podfile with SAP Dependencies\n\n ```ruby\nsource 'https://github.com/SAP-samples/cloud-sdk-ios-specs'\n\nplatform :ios, '14.0'\nuse_frameworks!\n\ntarget 'MyApp' do\n  pod 'SAPCommon', '~\u003e 6.0'\n  pod 'SAPFoundation', '~\u003e 6.0'\n  pod 'SAPFiori', '~\u003e 6.0'\n  pod 'SAPFioriFlows', '~\u003e 6.0'\n  pod 'SAPOfflineOData', '~\u003e 6.0'\n  pod 'SAPML', '~\u003e 6.0'\nend\n```\n\n## Podfile\n\nThe dependency manifest file for a Cocoapods-managed project is a [**Podfile**](https://guides.cocoapods.org/using/the-podfile.html).  \n\nThe Podfile is a specification that describes the dependencies of the targets of one or more Xcode projects. The file should simply be named `Podfile`, and should be stored in the same directory as the associated `xcodeproj` file(s).\n\n### General Dependencies\n\nEach dependency supported by Cocoapods is called a **Pod**.  To add a pod as a dependency of a Target, write the entry into the `Podfile`.\n\n```ruby\nplatform :ios, '11.0'\nuse_frameworks!\n\ntarget 'MyApp' do\n  pod 'SwiftConfettiView'\nend\n```\n### Specifying Dependency Versions\n\nEach Pod should support [semantic versioning](https://guides.cocoapods.org/using/the-podfile.html#specifying-pod-versions), such that developers may specify a particular version of a dependency, a minimum, maximum, or range.  For pods whose source is available, the version may also be a particular git branch or commit.\n\n\u003e SAP framework dependencies are distributed as binaries, and thus support only major, minor, patch versioning.  For the **SAP BTP SDK for iOS**, these equate to:  major = major version, minor = service pack (\"SP\"), patch = patch level (\"PL\").  `3.0 SP01 PL03 == 3.1.3`\n\n### Specifying Dependency Source\n\nCocoapods maintains a central repository of 'specifications' for each pod (a [**podspec**](https://guides.cocoapods.org/making/specs-and-specs-repo.html)) which is publicly published.  When parsing the Podfile, cocoapods checks the central repository by default, for specs associated with each `pod` listed for the Target.\n\nSince SAP's binaries require authentication for access, their specifications cannot be published to the central repository.  Therefore, this github repo serves as a secondary ***spec repository*** source.\n\nTo add pods from the SAP spec repository to your Podfile, you should list this source, either in the header of the Podfile, or in-line with the associated pod(s).\n\n\u003e If you are adding the `/SAP-samples/cloud-sdk-ios-specs` source to the Podfile header, cocoapods will not be able to locate pods documented in the central repository, unless you also explicitly add the central repository as a source. \n\u003e ``` ruby\n\u003e source 'https://github.com/CocoaPods/Specs.git'\n\u003e source 'https://github.com/SAP-samples/cloud-sdk-ios-specs'\n\u003e ```\n\u003e Alternatively, list the source in-line:\n\u003e ```ruby\n\u003e target 'MyApp' do\n\u003e     pod 'SAPCommon', '~\u003e 5.0', :source =\u003e 'https://github.com/SAP-samples/cloud-sdk-ios-specs'\n\u003e     pod 'SwiftConfettiView'\n\u003e ```\n\n## Installing and Updating Dependencies\n\nCocoapods provides the `install` and `update` commands for importing dependencies.  Either will pull new dependencies; `install` does *not* check the spec repository for new versions, while `update` checks the remote spec repositories for new podspec files, before downloading dependencies.\n\nFor additional details on using cocoapods, see [the guides](https://guides.cocoapods.org/using/pod-install-vs-update.html).\n\n## Installing Codesigning Script for Catalyst\n\nVersion 5.0.x of the SDK introduces the **.xcframework** artifact type, replacing .framework. There is no effect in switching from framework to xcframework on iOS platform, but Mac Catalyst introduces a new **Hardened Runtime** feature, which requires binaries to be commonly signed.  A python script is available in the SAP BTP SDK for iOS to facilitate this signing.  The simplest configuration is to `mkdir scripts` in the root of your project directory, and export the script there.\n\n\u003cimg src=\"https://github.com/SAP-samples/cloud-sdk-ios-specs/blob/resources/gif/ExportScript.png?raw=true\" width=\"375\"/\u003e\n\nTo install it to an application configured with Cocoapods, add a **Run Script** Build Phase to your target, *after* the **[CP] Prepare Artifacts** phase.  \n\n![](https://github.com/SAP-samples/cloud-sdk-ios-specs/blob/resources/gif/RunScript_BuildPhase.png?raw=true)\n\nFor more info, see [blog](https://blogs.sap.com/2020/03/20/introducing-mac-catalyst-support-for-sap-cloud-platform-sdk-for-ios/).\n\n# Limitations\n\n**This service is not available for Trial versions of the SDK.**\n\n \u003e Quoting the SAP support site, *“you can download the SAP products that are associated with your S-user ID. While every visitor can browse the list of software products without any special permissions, downloading files requires the Software Download authorization; to request it, contact a user administrator in your company.”* This restriction also applies to the cloud shipment channel.\n\n# Troubleshooting\n\n## Error: None of your spec sources contain a spec satisfying the dependency: SAPCommon (~\u003e x.0).\n\nRoot Cause:\n- Folder `~/.cocoapods/repos/sap-samples-cloud-sdk-ios-specs` is either missing or not up-to-date.\n\nSolution:\n\n- Make sure that you added `source 'https://github.com/SAP-samples/cloud-sdk-ios-specs'` to your Podfile header.\n- Delete folder `~/.cocoapods/repos/sap-samples-cloud-sdk-ios-specs`\n- Run `pod repo update` to get the latest specifications.\n\n# Known Issues\n\nNone.\n\n# How to obtain support\n\nFor an issue related to the contents of this repository, please [file an Issue](https://github.com/SAP/cloud-sdk-ios-specs/issues).\n\nFor issues related to any of the referenced resources and binaries, please file a support ticket to SAP through the regular channels.\n\n# Contributing\n\nIf you wish to make a contribution to the repository, please [submit a Pull Request](https://github.com/SAP/cloud-sdk-ios-specs/pulls).  It will be reviewed by the maintainers, however, we cannot commit to merging all contributions.\n\n# To-Do (upcoming changes)\n\nSupport for Carthage binary distribution\n\n# License\n\nCopyright (c) 2009-2020 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the [LICENSE](LICENSES/Apache-2.0.txt) file.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsap-samples%2Fcloud-sdk-ios-specs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsap-samples%2Fcloud-sdk-ios-specs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsap-samples%2Fcloud-sdk-ios-specs/lists"}