Code Monkey home page Code Monkey logo

Comments (20)

jshier avatar jshier commented on June 1, 2024 1

Yes, it seems Apple's requirements have gotten ahead of its tooling again. Are you linking Alamofire statically in those cases? If so, I suggest trying the AlamofireDynamic package (or setting CocoaPods back to its dynamic default). It seems Xcode doesn't do anything to combine your target's privacy manifest with those of your statically integrated dependencies, so you may need to link dynamically for ASC to properly assign the manifests to the relevant binary. Alternatively, you can manually combine your statically linked dependency manifests with your target's manifest and ASC should be fine.

from alamofire.

chawda avatar chawda commented on June 1, 2024 1

I tried with AlamofireDynamics using SPM. Still Xcode generated PDF report does not have record for Alamofire. Its with 5.9.1. I am using Xcode 15.0

from alamofire.

jshier avatar jshier commented on June 1, 2024 1

Alamofire isn't distributed as a static library, SPM simply links it statically, and ASC's scanner doesn't know to look for the bundle with the manifest. It is there, in the app bundle, but it's just not found.

from alamofire.

jshier avatar jshier commented on June 1, 2024

I haven't been able to get Xcode's privacy manifest generator to work either, whether for Alamofire or a project without Alamofire. Closest I've gotten is the report containing an error when the app's privacy manifest doesn't include the required keys. Once those keys were added the report was just an empty PDF file. So I think it's just broken. Do make sure to report if App Store Connect reports an issues related to Alamofire when you submit builds.

from alamofire.

becknaum avatar becknaum commented on June 1, 2024

Do make sure to report if App Store Connect reports an issues related to Alamofire when you submit builds.

This is happening with my team's app.

The app's privacy report is showing privacy info for some SDKs, so some are being linked correctly, but Alamofire is not one of them. This is consistent with our App Store Connect warnings, which we believe are in part due to Alamofire. One of them is a warning for the system boot time APIs from an app extension that includes Alamofire as the only third-party SDK, and we never call any of those in our code.

from alamofire.

wlxo0401 avatar wlxo0401 commented on June 1, 2024

@jshier I created the app as an empty project and installed Alamofire with the latest version using SPM.

Alamofire PrivacyInfo has 'System Boot Time'

Apple sent me an e-mail saying that 'NSPrivacyAccessedAPICATEGORY SYSTEMBootTime' was missing.

from alamofire.

jshier avatar jshier commented on June 1, 2024

Try using the AlamofireDynamic target instead of Alamofire. Like I said, they don't seem to be detecting statically linked privacy manifests correctly.

from alamofire.

rinkusadhwani avatar rinkusadhwani commented on June 1, 2024

Hi, Can you let me know the steps to use almofire dynamic to get correct privacy report.

from alamofire.

rinkusadhwani avatar rinkusadhwani commented on June 1, 2024

@jshier This issue doesnt seem to be resolved.
Can you please guide us the steps to use the sdk so privacy report should containt reference of almofire.

In xcode 15 and 5.9.1 lib not giving us result.

from alamofire.

wlxo0401 avatar wlxo0401 commented on June 1, 2024

I tried with AlamofireDynamics using SPM. Still Xcode generated PDF report does not have record for Alamofire. Its with 5.9.1. I am using Xcode 15.0

Alamofire doesn't have anything to type in the report, so maybe it doesn't show up.

from alamofire.

chawda avatar chawda commented on June 1, 2024

I tried with AlamofireDynamics using SPM. Still Xcode generated PDF report does not have record for Alamofire. Its with 5.9.1. I am using Xcode 15.0

Alamofire doesn't have anything to type in the report, so maybe it doesn't show up.

@wlxo0401 it was using SYSTEMBootTime, so we are getting warning email for this from Apple. I believe this should be reflected in report generated by Xcode also. Other libraries are in the report and warnings for them are not coming now.

from alamofire.

wlxo0401 avatar wlxo0401 commented on June 1, 2024

I tried with AlamofireDynamics using SPM. Still Xcode generated PDF report does not have record for Alamofire. Its with 5.9.1. I am using Xcode 15.0

Alamofire doesn't have anything to type in the report, so maybe it doesn't show up.

@wlxo0401 it was using SYSTEMBootTime, so we are getting warning email for this from Apple. I believe this should be reflected in report generated by Xcode also. Other libraries are in the report and warnings for them are not coming now.

"Privacy Accessed API Types" is not related to Report PDF.

PDF content includes "Privacy Nutrition Label Types".

Please let me know if I misunderstood something else.

from alamofire.

chawda avatar chawda commented on June 1, 2024

@wlxo0401 Apple sending warning email, for SYSTEMBootTime, if its not coming in PDF report.

from alamofire.

jshier avatar jshier commented on June 1, 2024

The PDF isn't actually relevant here, Apple is scanning your binary directly. (I haven't gotten the PDF to generate correctly anyway, even for empty test projects.)

I'm not sure what else we can do here. The manifest is in place, handled by the tools as suggested (vaguely) by Apple. There's even a dynamic target you can use if the static linking causes issues. Barring any actual diagnostics from Apple, there's nothing we can even try to change.

from alamofire.

abhishekthanvi8 avatar abhishekthanvi8 commented on June 1, 2024

upgraded to the latest SDK 5.9.1 still getting these warning email by Apple about
NSPrivacyAccessedAPICategorySystemBootTime not sure why even they are not generating in PDF as well.

from alamofire.

abhishekthanvi8 avatar abhishekthanvi8 commented on June 1, 2024

Was anyone here able to get through with this issue ?

from alamofire.

chawda avatar chawda commented on June 1, 2024

@abhishekthanvi8 add this in your project's privacy info file. this solves for now.

from alamofire.

devssun avatar devssun commented on June 1, 2024

Hello, I still got email from apple to include few API.
please add NSPrivacyAccessedAPICategorySystemBootTime api in your privacy manifest.

I ran deriveddata % grep -RHn "systemUptime" (https://forums.developer.apple.com/forums/thread/749049) and got:

./SourcePackages/checkouts/Alamofire/Source/Core/DownloadRequest.swift:368:            let start = ProcessInfo.processInfo.systemUptime
./SourcePackages/checkouts/Alamofire/Source/Core/DownloadRequest.swift:377:            let end = ProcessInfo.processInfo.systemUptime
./SourcePackages/checkouts/Alamofire/Source/Core/WebSocketRequest.swift:283:        let startTimestamp = ProcessInfo.processInfo.systemUptime
./SourcePackages/checkouts/Alamofire/Source/Core/WebSocketRequest.swift:293:                let endTimestamp = ProcessInfo.processInfo.systemUptime
./SourcePackages/checkouts/Alamofire/Source/Core/DataRequest.swift:244:            let start = ProcessInfo.processInfo.systemUptime
./SourcePackages/checkouts/Alamofire/Source/Core/DataRequest.swift:254:            let end = ProcessInfo.processInfo.systemUptime
./SourcePackages/checkouts/Alamofire/Source/Features/AuthenticationInterceptor.swift:336:        mutableState.refreshTimestamps.append(ProcessInfo.processInfo.systemUptime)
./SourcePackages/checkouts/Alamofire/Source/Features/AuthenticationInterceptor.swift:357:        let refreshWindowMin = ProcessInfo.processInfo.systemUptime - refreshWindow.interval
Binary file 
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/AuthenticationInterceptor.swiftdeps matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/WebSocketRequest.o matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/WebSocketRequest.swiftdeps matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/DownloadRequest.swiftdeps matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/AuthenticationInterceptor.o matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/Alamofire-master.priors matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/DownloadRequest.o matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/DataRequest.swiftdeps matches
Binary file ./Build/Intermediates.noindex/Alamofire.build/Debug-iphoneos/Alamofire.build/Objects-normal/arm64/DataRequest.o matches

from alamofire.

jshier avatar jshier commented on June 1, 2024

Until an issue with Alamofire's privacy manifest can be identified so I can fix it, I suggest just adding that entry to your app's own privacy manifest until Apple gets their detector working properly.

from alamofire.

sameer4 avatar sameer4 commented on June 1, 2024

can you check this comment apple/swift-package-manager#7317 (comment), not sure if it helps.

from alamofire.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.