Package Details: python-b2sdk 1.5.0-4

  • Backblaze has an API for B2, and they maintain a python CLI tool for interacting with your storage buckets. Unfortunately, this is not in the centos yum repositories, and the suggested way to install it via easyinstall may break other python packages, such as certbot.
  • Welcome to Backblaze’s unofficial documentation! This is a unofficial asynchronous & synchronous wrapper for Backblaze’s B2 API. Features: Full API coverage. Background authentication. Asynchronous & synchronous support. Easy to use with an object oriented design. 100% test coverage. Upload URL caching. Install pip3 install backblaze.

Backblaze B2 object storage unofficial Python library. Status: all systems operational Developed and maintained by the Python community, for the Python community. I'm a huge fan of Backblaze and Backblaze B2. I wanted to use B2 like I can use S3 inside of Python projects (similar to Boto) but I didn't like the structure of existing libraries.

Package Actions

  • View PKGBUILD / View Changes
Git Clone URL: https://aur.archlinux.org/python-b2sdk.git (read-only, click to copy)
Package Base: python-b2sdk
Description: Python library to access B2 cloud storage.
Upstream URL: https://github.com/Backblaze/b2-sdk-python
Licenses: MIT
Submitter: 2bluesc
Maintainer: 2bluesc
Last Packager: 2bluesc
Votes: 1
Popularity: 0.25
First Submitted: 2019-05-04 06:17
Last Updated: 2021-04-04 17:28

Dependencies (7)

  • python(python-dbg)
  • python-logfury>=0.1.2
  • python-arrow>=0.8.0
  • python-requests>=2.9.1
  • python-tqdm>=4.5.0
  • python-setuptools-scm<6.0 (make)

Required by (5)

  • duplicity-dev(optional)

Kage-Yami commented on 2021-04-04 17:32

Yay, I was helpful. :D That seems to have done the trick for me, my build is now passing (green tick!): https://gitlab.com/Kage-Yami/arch-packages/-/jobs/1152417348

2bluesc commented on 2021-04-04 17:29

Backblaze

@Kage-Yami you're exactly right, I missed that and am able to re-produce your issue. Thanks for providing more details.

I updated it to install python-setuptools-scm. Can you confirm v1.5.0-4 works for you?

Backblaze B2 Price

Kage-Yami commented on 2021-04-04 17:16

I have very little Python experience/knowledge, but from what I can tell, setup.py is mandating that setuptools_scm is < 6.0 (https://github.com/Backblaze/b2-sdk-python/blob/master/setup.py#L111), and so is installing a compatible version via pip; if pip is missing, it obviously results in an error:

Backblaze B2 Storage

Note that I'm not running any Python scripts at all; aurtils is a collection of purely bash scripts, so the only presence of Python is the build script for this package itself.

Regarding the base image missing pip.. pip is not part of base-devel, therefore any package that requires it to be installed for building must specify it as part of makedepends. Free gerber accumark v8 crack.

Backblaze B2 Calculator

Was your pip-less test a build test, or a usage test? (It's unclear from your sentence, and the provided test case suggests the latter, which is irrelevant for the issue at hand..)

Note that I haven't yet tried building it myself manually, so I understand if you don't want to spend time on this; I'm just responding to what you've said, which doesn't make much sense to me.

2bluesc commented on 2021-04-04 16:59

@kage-yami sounds like the base image or the helper util is missing the pip dependency and that you're triggering it by running any python script.

Try running python -c 'print('hello')'

Kage-Yami commented on 2021-04-04 16:47

Ah ok - in my case, it's a shell script running in GitLab CI, building with aurutils in a Docker container based on archlinux:base-devel. So I perfectly understand if you don't want to dive into that (especially given I'm using an AUR helper). :)

If the logs alone reveal anything: https://gitlab.com/Kage-Yami/arch-packages/-/jobs/1152321585

2bluesc commented on 2021-04-04 16:42

I added python-setuptools it's required to build the package with setup.py and was a bug to not be included. Fixed it by adding makedepends.

Pip isn't mentioned anywhere in this package other then documentation and comments. I don't see how's it used. I suspect there's a broken Python user config causing these pip errors.

I tested it on my system with python-pip uninstalled and it works correctly as does backblaze-b2.

The following test case showing b2sdk imports successfully (nobody has told me how they are triggering this issue, so I'm guessing), prints the expected version + file path and fails to import pip as it's not installed.

Please let me know in detail how you're triggering this pip bug and I can look in to it. I suspect it's a user configuration problem, can perhaps look here: https://docs.python.org/3/using/cmdline.html and checkout the environment variables + config paths.

Kage-Yami commented on 2021-04-04 16:09

I'm not sure if the addition of python-setuptools in 1.5.0-2 was supposed to alleviate the pip issue, but it doesn't seem to do so for me; I'm still getting:

Looking at python-setuptools, python-pip is only a check dependency, not a general dependency.

eta-carinae commented on 2021-04-04 13:36

The build of 1.5.0-1 fails if you don't have python-pip installed. I don't think that's required otherwise, so maybe it just needs to be added to makedepends.

2bluesc commented on 2021-02-16 22:59

Backblaze B2 Python

@ectospasm In my earlier post I included a link to the master branch of requirements.txt. The problem is still that no release of the command line tool including the update has been made. I'd expect that version to be v2.1.1 or v2.2.0.

This package and the backblaze-b2 follows releases, not arbitrary git hashes. These packages will remain unchanged until until the b2 command line tool has a release.

ectospasm commented on 2021-02-16 22:13

Backblaze B2 Python

@2bluesc see the upstream comment thread. The requirements.txt on backblaze-b2 has been updated to show it must have a version of b2sdk prior to 1.3.0.

Backblaze B2 Python

Not sure how that would work from a package maintainer's point of view, but not having b2sdk 1.3.0 broke duplicity for me.