[RFC] PyDrive2 and dependency backporting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

tl;dr: Backups with deja-dup to GDrive require PyDrive2 that requires
some dep updates not available in F35 or F34

The backup software deja-dup[1] can backup to Google Drive using
PyDrive. PyDrive has been archived[2] by Google and PyDrive2[3] is an
active fork. There is a bug in PyDrive causing issues[4][5][6] to
backup to GDrive that PyDrive2 has solved. deja-dup is ready to work
with PyDrive2.

PyDrive2 is now available in rawhide[7], after updating some
deps[8][9] and I would like to backport these to F35 and, if possible
also, F34 without breaking something. I created a copr repo[10] and
some users reported that it is working fine for them in F34.

Only deja-dup depends on PyDrive:

# dnf repoquery --disablerepo="*" --enablerepo=rawhide --whatrequires
"python3-PyDrive"
deja-dup-0:42.8-1.fc36.x86_64

PyDrive2 requires google-api-python-client that requires google-auth-httplib2.

Only google-api-python-client depends on google-auth-httplib2:

# dnf repoquery --disablerepo="*" --enablerepo=rawhide --whatrequires
"python3-google-auth-httplib2"
python3-google-api-client-2:2.29.0-1.fc36.noarch

But more packages depend on google-api-python-client:

# dnf repoquery --disablerepo="*" --enablerepo=rawhide --whatrequires
"python3-google-api-client"
fence-agents-gce-0:4.10.0-3.fc35.noarch
goobook-0:3.5-4.fc35.noarch
nodepool-0:3.13.1-1.fc36.noarch
python3-PyDrive-0:1.3.1-18.fc35.noarch
python3-certbot-dns-google-0:1.20.0-1.fc36.noarch

Current release for python3-google-api-client in Fedora 35 and 34 is
1.6.7. Version 2.0.0 was released in 2021-03[11] and the only breaking
change is the deprecation of python2 and <3.6[12]. We've 2.29 in
rawhide and I would like to backport it to F35 and F34 releases based
in the following facts:

a) google-api-python-client's upgrading guide[13] states that version
2.x is compatible with 1.x: "Existing code written for earlier
versions of this library will not require updating.".

b) Package dependencies:

- fence-agents-gce: it doesn't require a specific version.
https://github.com/ClusterLabs/fence-agents/blob/master/agents/gce/fence_gce.py

- goobook: google-api-python-client >=1.7.12
https://gitlab.com/goobook/goobook/-/blob/master/setup.py#L39

- nodepool: google-api-python-client
https://opendev.org/zuul/nodepool/src/branch/master/requirements.txt#L20

- python3-certbot-dns-google: google-api-python-client >= 1.5.5
https://github.com/certbot/certbot/blob/master/certbot-dns-google/setup.py#L10

My plan would be:

1) Notify maintainers of those 5 packages about
python3-google-api-client update.
2) Backport python3-google-auth-httplib2 and python3-google-api-client
to F35 and F34.
3) Add PyDrive2 to F35 and F34.
4) Ask deja-dup maintainers to switch to PyDrive2.
5) Deprecate PyDrive in rawhide. Adding Obsolete to PyDrive2 may not
be required?.

@fedora-devel: what do you think? Should I do something else? Should
this be backported only to F35?

Kind regards,
Mikel Olasagasti

[1] https://src.fedoraproject.org/rpms/deja-dup/
[2] https://github.com/googlearchive/PyDrive/commit/42022f9a1c48f435438fce74ad4032ec9f34cfd1
[3] https://github.com/iterative/PyDrive2
[4] https://bugzilla.redhat.com/show_bug.cgi?id=1882028
[5] https://bugzilla.redhat.com/show_bug.cgi?id=2015282
[6] https://bugzilla.redhat.com/show_bug.cgi?id=1830874
[7] https://bodhi.fedoraproject.org/updates/FEDORA-2021-048f1421fe
[8] https://src.fedoraproject.org/rpms/google-api-python-client/pull-request/3
[9] https://src.fedoraproject.org/rpms/google-auth-httplib2/pull-request/1
[10] https://copr.fedorainfracloud.org/coprs/mikelo2/PyDrive2/
[11] https://github.com/googleapis/google-api-python-client/releases/tag/v2.0.0
[12] https://github.com/googleapis/google-api-python-client/pull/961
[13] https://github.com/googleapis/google-api-python-client/blob/main/UPGRADING.md
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux