Skip to content

Conversation

@piercefreeman
Copy link

Allow client projects to introspect types that are internal to iCloud Photos Download.

@AndreyNikiforov
Copy link
Collaborator

What client projects are you talking about? icloudpd is a binary/script with CLI entry point and I am not clear how typing can be used - pls educate me.

@piercefreeman
Copy link
Author

@AndreyNikiforov Sure. I import icloudpd directly as a library dependency (previously in https://github.com/piercefreeman/backup/ and soon in some other projects coming up) so I end up calling functions from the raw source: catching exceptions, running a more detailed two-step auth, etc. In these cases I'm treating icloudpd as the upstream repo and my backup package would be the client.

Adding these types doesn't affect the built package of the binary/CLI so I figure there's no harm in adding to the distribution.

@AndreyNikiforov
Copy link
Collaborator

@piercefreeman
Copy link
Author

Sorry - just made unprivate. Upcoming library is on the branch if you're trying to take a look:
https://github.com/piercefreeman/bungalo/tree/feature/add-icloud-backups

@AndreyNikiforov
Copy link
Collaborator

I need to learn about py.typed...

re using icloudpd as a library: The only promised contract of the icloudpd is CLI interface (and behavior against filesystem and iCloud.com). Output, language it is written on, code structure, etc are implementation details and can change at any time. Just setting expectations, although I am sure you thought about all these risks already.

@piercefreeman
Copy link
Author

re using icloudpd as a library: The only promised contract of the icloudpd is CLI interface (and behavior against filesystem and iCloud.com). Output, language it is written on, code structure, etc are implementation details and can change at any time. Just setting expectations, although I am sure you thought about all these risks already.

Definitely no expectations here. Just appreciate you maintaining a useful project. I'm already using my fork anyway as a temporary workaround, so not too worried about breaking changes. Just figure this py.typed typehinting could be helpful for others.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants