Warning: Permanently added '107.21.33.86' (ECDSA) to the list of known hosts. Running: /usr/bin/copr-rpmbuild --verbose --drop-resultdir --build-id 1340304 --chroot fedora-rawhide-x86_64 --detached Version: 0.38 Task: {'build_id': 1340304, 'buildroot_pkgs': [], 'chroot': 'fedora-rawhide-x86_64', 'enable_net': False, 'fetch_sources_only': True, 'git_hash': '40264b6a62cde26617ee78a5aa16167698eda240', 'git_repo': 'jjelen/mapillary_tools/mapillary_tools', 'memory_reqs': 2048, 'package_name': 'mapillary_tools', 'package_version': '0.5.0-1.fc33', 'project_dirname': 'mapillary_tools', 'project_name': 'mapillary_tools', 'project_owner': 'jjelen', 'repos': [{'baseurl': 'https://download.copr.fedorainfracloud.org/results/jjelen/mapillary_tools/fedora-rawhide-x86_64/', 'id': 'copr_base', 'name': 'Copr repository'}], 'sandbox': 'jjelen/mapillary_tools--jjelen', 'source_json': {'clone_url': 'https://copr-dist-git.fedorainfracloud.org/git/jjelen/mapillary_tools/mapillary_tools.git', 'committish': '40264b6a62cde26617ee78a5aa16167698eda240'}, 'source_type': 8, 'submitter': 'jjelen', 'task_id': '1340304-fedora-rawhide-x86_64', 'timeout': 86400, 'use_bootstrap_container': False, 'uses_devel_repo': False, 'with_opts': [], 'without_opts': []} Running: git clone https://copr-dist-git.fedorainfracloud.org/git/jjelen/mapillary_tools/mapillary_tools.git /tmp/copr-rpmbuild-lnl541wb/obtain-sources/mapillary_tools --depth 500 --no-single-branch cmd: ['git', 'clone', 'https://copr-dist-git.fedorainfracloud.org/git/jjelen/mapillary_tools/mapillary_tools.git', '/tmp/copr-rpmbuild-lnl541wb/obtain-sources/mapillary_tools', '--depth', '500', '--no-single-branch'] cwd: . rc: 0 stdout: stderr: Cloning into '/tmp/copr-rpmbuild-lnl541wb/obtain-sources/mapillary_tools'... Running: git checkout 40264b6a62cde26617ee78a5aa16167698eda240 cmd: ['git', 'checkout', '40264b6a62cde26617ee78a5aa16167698eda240'] cwd: /tmp/copr-rpmbuild-lnl541wb/obtain-sources/mapillary_tools rc: 0 stdout: stderr: Note: switching to '40264b6a62cde26617ee78a5aa16167698eda240'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 40264b6 automatic import of mapillary_tools Running: cp -r . /tmp/copr-rpmbuild-lnl541wb cmd: ['cp', '-r', '.', '/tmp/copr-rpmbuild-lnl541wb'] cwd: /tmp/copr-rpmbuild-lnl541wb/obtain-sources/mapillary_tools rc: 0 stdout: stderr: Generated rpkg config: [rpkg] preprocess_spec = True # auto-packing is deprecated: auto_pack = True [git] lookaside = https://copr-dist-git.fedorainfracloud.org/repo/pkgs/%(ns2)s/%(ns1)s/%(name)s/%(filename)s/%(hashtype)s/%(hash)s/%(filename)s anongiturl = https://copr-dist-git.fedorainfracloud.org/git/%(module)s Writing config into /tmp/copr-rpmbuild-lnl541wb/obtain-sources/.config/rpkg.conf Running: rpkg -C /tmp/copr-rpmbuild-lnl541wb/obtain-sources/.config/rpkg.conf sources --outdir /tmp/copr-rpmbuild-lnl541wb /usr/bin/tail: /var/lib/copr-rpmbuild/main.log: file truncated cmd: ['rpkg', '-C', '/tmp/copr-rpmbuild-lnl541wb/obtain-sources/.config/rpkg.conf', 'sources', '--outdir', '/tmp/copr-rpmbuild-lnl541wb'] cwd: /tmp/copr-rpmbuild-lnl541wb/obtain-sources/mapillary_tools rc: 0 stdout: Downloading mapillary_tools-0.5.0.zip from lookaside cache at copr-dist-git.fedorainfracloud.org stderr: Running (timeout=86400): unbuffer mock --buildsrpm --spec /tmp/copr-rpmbuild-lnl541wb/mapillary_tools.spec --sources /tmp/copr-rpmbuild-lnl541wb --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1587134101.331053 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 2.2 starting (python version = 3.7.6)... Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/tmp/copr-rpmbuild-lnl541wb/mapillary_tools.spec) Config(fedora-rawhide-x86_64) Start: clean chroot Finish: clean chroot Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1587134101.331053/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin Mock Version: 2.2 INFO: Mock Version: 2.2 Start: dnf install No matches found for the following disable plugin patterns: local, spacewalk Copr repository 26 kB/s | 5.9 kB 00:00 fedora 22 MB/s | 72 MB 00:03 Dependencies resolved. ================================================================================ Package Arch Version Repo Size ================================================================================ Installing group/module packages: bash x86_64 5.0.11-2.fc32 fedora 1.6 M bzip2 x86_64 1.0.8-2.fc32 fedora 52 k coreutils x86_64 8.32-3.fc33 fedora 1.2 M cpio x86_64 2.13-5.fc33 fedora 283 k diffutils x86_64 3.7-4.fc32 fedora 397 k fedora-release-common noarch 33-0.3 fedora 20 k findutils x86_64 1:4.7.0-3.fc32 fedora 552 k gawk x86_64 5.0.1-7.fc32 fedora 1.2 M glibc-minimal-langpack x86_64 2.31.9000-9.fc33 fedora 75 k grep x86_64 3.4-1.fc33 fedora 258 k gzip x86_64 1.10-2.fc32 fedora 155 k info x86_64 6.7-7.fc33 fedora 228 k make x86_64 1:4.3-1.fc33 fedora 536 k patch x86_64 2.7.6-12.fc32 fedora 135 k redhat-rpm-config noarch 154-1.fc33 fedora 63 k rpm-build x86_64 4.15.90-0.git14971.5.fc33 fedora 117 k sed x86_64 4.8-1.fc33 fedora 303 k shadow-utils x86_64 2:4.8.1-2.fc33 fedora 1.2 M tar x86_64 2:1.32-4.fc32 fedora 887 k unzip x86_64 6.0-47.fc32 fedora 179 k util-linux x86_64 2.35.1-9.fc33 fedora 2.7 M which x86_64 2.21-19.fc33 fedora 42 k xz x86_64 5.2.5-1.fc33 fedora 187 k Installing dependencies: alternatives x86_64 1.11-6.fc32 fedora 35 k audit-libs x86_64 3.0-0.19.20191104git1c2f876.fc33 fedora 115 k basesystem noarch 11-9.fc32 fedora 6.8 k binutils x86_64 2.34-2.fc33 fedora 5.4 M binutils-gold x86_64 2.34-2.fc33 fedora 861 k bzip2-libs x86_64 1.0.8-2.fc32 fedora 40 k ca-certificates noarch 2020.2.40-3.fc32 fedora 358 k coreutils-common x86_64 8.32-3.fc33 fedora 2.0 M cracklib x86_64 2.9.6-22.fc32 fedora 83 k crypto-policies noarch 20200312-1.git3ae59d2.fc33 fedora 56 k curl x86_64 7.69.0-2.fc33 fedora 291 k cyrus-sasl-lib x86_64 2.1.27-4.fc33 fedora 101 k dwz x86_64 0.13-2.fc32 fedora 109 k efi-srpm-macros noarch 4-4.fc32 fedora 22 k elfutils x86_64 0.179-1.fc33 fedora 532 k elfutils-default-yama-scope noarch 0.179-1.fc33 fedora 18 k elfutils-libelf x86_64 0.179-1.fc33 fedora 191 k elfutils-libs x86_64 0.179-1.fc33 fedora 267 k expat x86_64 2.2.8-2.fc32 fedora 103 k fedora-gpg-keys noarch 33-0.5 fedora 103 k fedora-release noarch 33-0.3 fedora 12 k fedora-repos noarch 33-0.5 fedora 10 k fedora-repos-rawhide noarch 33-0.5 fedora 9.5 k file x86_64 5.38-3.fc33 fedora 51 k file-libs x86_64 5.38-3.fc33 fedora 568 k filesystem x86_64 3.14-2.fc32 fedora 1.1 M fonts-srpm-macros noarch 2.0.5-1.fc33 fedora 26 k fpc-srpm-macros noarch 1.3-1.fc32 fedora 7.6 k gc x86_64 8.0.4-3.fc32 fedora 113 k gdb-minimal x86_64 9.1-5.fc33 fedora 3.5 M ghc-srpm-macros noarch 1.5.0-2.fc32 fedora 7.7 k glibc x86_64 2.31.9000-9.fc33 fedora 3.5 M glibc-common x86_64 2.31.9000-9.fc33 fedora 1.8 M gmp x86_64 1:6.2.0-1.fc33 fedora 322 k gnat-srpm-macros noarch 4-11.fc32 fedora 8.2 k go-srpm-macros noarch 3.0.8-5.fc32 fedora 25 k guile22 x86_64 2.2.6-4.fc32 fedora 6.6 M keyutils-libs x86_64 1.6-4.fc32 fedora 31 k krb5-libs x86_64 1.18.1-1.fc33 fedora 756 k libacl x86_64 2.2.53-5.fc32 fedora 25 k libarchive x86_64 3.4.2-1.fc33 fedora 388 k libattr x86_64 2.4.48-8.fc32 fedora 18 k libblkid x86_64 2.35.1-9.fc33 fedora 152 k libbrotli x86_64 1.0.7-10.fc32 fedora 324 k libcap x86_64 2.26-7.fc32 fedora 52 k libcap-ng x86_64 0.7.10-2.fc32 fedora 28 k libcom_err x86_64 1.45.6-2.fc33 fedora 28 k libcurl x86_64 7.69.0-2.fc33 fedora 271 k libdb x86_64 5.3.28-40.fc32 fedora 761 k libfdisk x86_64 2.35.1-9.fc33 fedora 204 k libffi x86_64 3.1-24.fc32 fedora 33 k libgcc x86_64 10.0.1-0.11.fc33 fedora 87 k libgcrypt x86_64 1.8.5-3.fc32 fedora 469 k libgomp x86_64 10.0.1-0.11.fc33 fedora 246 k libgpg-error x86_64 1.37-1.fc33 fedora 205 k libidn2 x86_64 2.3.0-2.fc32 fedora 104 k libmetalink x86_64 0.1.3-10.fc32 fedora 31 k libmount x86_64 2.35.1-9.fc33 fedora 179 k libnghttp2 x86_64 1.40.0-2.fc32 fedora 79 k libnsl2 x86_64 1.2.0-6.20180605git4a062cf.fc32 fedora 59 k libpkgconf x86_64 1.6.3-3.fc32 fedora 35 k libpsl x86_64 0.21.0-4.fc32 fedora 61 k libpwquality x86_64 1.4.2-2.fc32 fedora 101 k libselinux x86_64 3.0-4.fc33 fedora 85 k libsemanage x86_64 3.0-3.fc32 fedora 123 k libsepol x86_64 3.0-3.fc32 fedora 299 k libsigsegv x86_64 2.11-10.fc32 fedora 26 k libsmartcols x86_64 2.35.1-9.fc33 fedora 120 k libssh x86_64 0.9.4-2.fc33 fedora 215 k libssh-config noarch 0.9.4-2.fc33 fedora 11 k libstdc++ x86_64 10.0.1-0.11.fc33 fedora 613 k libtasn1 x86_64 4.16.0-1.fc32 fedora 73 k libtirpc x86_64 1.2.6-0.fc33 fedora 98 k libtool-ltdl x86_64 2.4.6-33.fc32 fedora 37 k libunistring x86_64 0.9.10-7.fc32 fedora 512 k libutempter x86_64 1.1.6-18.fc32 fedora 26 k libuuid x86_64 2.35.1-9.fc33 fedora 28 k libverto x86_64 0.3.0-9.fc32 fedora 22 k libxcrypt x86_64 4.4.16-1.fc33 fedora 127 k libxml2 x86_64 2.9.10-4.fc33 fedora 703 k libzstd x86_64 1.4.4-2.fc32 fedora 260 k lua-libs x86_64 5.3.5-7.fc32 fedora 119 k lz4-libs x86_64 1.9.1-2.fc32 fedora 65 k mpfr x86_64 4.0.2-3.fc32 fedora 256 k ncurses x86_64 6.2-1.20200222.fc33 fedora 394 k ncurses-base noarch 6.2-1.20200222.fc33 fedora 59 k ncurses-libs x86_64 6.2-1.20200222.fc33 fedora 327 k nim-srpm-macros noarch 3-2.fc32 fedora 8.3 k ocaml-srpm-macros noarch 6-2.fc32 fedora 7.7 k openblas-srpm-macros noarch 2-7.fc32 fedora 7.2 k openldap x86_64 2.4.47-4.fc32 fedora 305 k openssl-libs x86_64 1:1.1.1f-1.fc33 fedora 1.4 M p11-kit x86_64 0.23.20-1.fc32 fedora 347 k p11-kit-trust x86_64 0.23.20-1.fc32 fedora 142 k pam x86_64 1.3.1-24.fc33 fedora 666 k pcre x86_64 8.44-1.fc33 fedora 198 k pcre2 x86_64 10.34-9.fc33 fedora 231 k pcre2-syntax noarch 10.34-9.fc33 fedora 140 k perl-srpm-macros noarch 1-34.fc32 fedora 8.3 k pkgconf x86_64 1.6.3-3.fc32 fedora 41 k pkgconf-m4 noarch 1.6.3-3.fc32 fedora 14 k pkgconf-pkg-config x86_64 1.6.3-3.fc32 fedora 9.7 k popt x86_64 1.16-19.fc32 fedora 58 k publicsuffix-list-dafsa noarch 20190417-3.fc32 fedora 56 k python-srpm-macros noarch 3.8-2.fc33 fedora 18 k qt5-srpm-macros noarch 5.14.2-3.fc33 fedora 8.8 k readline x86_64 8.0-4.fc32 fedora 207 k rpm x86_64 4.15.90-0.git14971.5.fc33 fedora 502 k rpm-build-libs x86_64 4.15.90-0.git14971.5.fc33 fedora 99 k rpm-libs x86_64 4.15.90-0.git14971.5.fc33 fedora 331 k rust-srpm-macros noarch 13-2.fc33 fedora 9.5 k setup noarch 2.13.6-2.fc32 fedora 142 k sqlite-libs x86_64 3.31.1-1.fc33 fedora 611 k systemd-libs x86_64 245.4-1.fc33 fedora 557 k tzdata noarch 2019c-3.fc32 fedora 429 k xxhash-libs x86_64 0.7.3-1.fc33 fedora 29 k xz-libs x86_64 5.2.5-1.fc33 fedora 90 k zip x86_64 3.0-26.fc32 fedora 260 k zlib x86_64 1.2.11-21.fc32 fedora 93 k zstd x86_64 1.4.4-2.fc32 fedora 387 k Installing Groups: Buildsystem building group Transaction Summary ================================================================================ Install 143 Packages Total download size: 57 M Installed size: 229 M Downloading Packages: (1/143): basesystem-11-9.fc32.noarch.rpm 247 kB/s | 6.8 kB 00:00 (2/143): audit-libs-3.0-0.19.20191104git1c2f876 3.7 MB/s | 115 kB 00:00 (3/143): bash-5.0.11-2.fc32.x86_64.rpm 111 MB/s | 1.6 MB 00:00 (4/143): alternatives-1.11-6.fc32.x86_64.rpm 788 kB/s | 35 kB 00:00 (5/143): bzip2-1.0.8-2.fc32.x86_64.rpm 7.2 MB/s | 52 kB 00:00 (6/143): binutils-2.34-2.fc33.x86_64.rpm 82 MB/s | 5.4 MB 00:00 (7/143): binutils-gold-2.34-2.fc33.x86_64.rpm 15 MB/s | 861 kB 00:00 (8/143): bzip2-libs-1.0.8-2.fc32.x86_64.rpm 864 kB/s | 40 kB 00:00 (9/143): ca-certificates-2020.2.40-3.fc32.noarc 22 MB/s | 358 kB 00:00 (10/143): coreutils-8.32-3.fc33.x86_64.rpm 55 MB/s | 1.2 MB 00:00 (11/143): coreutils-common-8.32-3.fc33.x86_64.r 67 MB/s | 2.0 MB 00:00 (12/143): cpio-2.13-5.fc33.x86_64.rpm 46 MB/s | 283 kB 00:00 (13/143): cracklib-2.9.6-22.fc32.x86_64.rpm 12 MB/s | 83 kB 00:00 (14/143): crypto-policies-20200312-1.git3ae59d2 7.3 MB/s | 56 kB 00:00 (15/143): curl-7.69.0-2.fc33.x86_64.rpm 58 MB/s | 291 kB 00:00 (16/143): cyrus-sasl-lib-2.1.27-4.fc33.x86_64.r 13 MB/s | 101 kB 00:00 (17/143): diffutils-3.7-4.fc32.x86_64.rpm 40 MB/s | 397 kB 00:00 (18/143): dwz-0.13-2.fc32.x86_64.rpm 23 MB/s | 109 kB 00:00 (19/143): efi-srpm-macros-4-4.fc32.noarch.rpm 8.4 MB/s | 22 kB 00:00 (20/143): elfutils-0.179-1.fc33.x86_64.rpm 70 MB/s | 532 kB 00:00 (21/143): elfutils-default-yama-scope-0.179-1.f 2.2 MB/s | 18 kB 00:00 (22/143): elfutils-libelf-0.179-1.fc33.x86_64.r 25 MB/s | 191 kB 00:00 (23/143): elfutils-libs-0.179-1.fc33.x86_64.rpm 53 MB/s | 267 kB 00:00 (24/143): expat-2.2.8-2.fc32.x86_64.rpm 18 MB/s | 103 kB 00:00 (25/143): fedora-gpg-keys-33-0.5.noarch.rpm 14 MB/s | 103 kB 00:00 (26/143): fedora-release-33-0.3.noarch.rpm 2.0 MB/s | 12 kB 00:00 (27/143): fedora-release-common-33-0.3.noarch.r 4.7 MB/s | 20 kB 00:00 (28/143): fedora-repos-33-0.5.noarch.rpm 2.4 MB/s | 10 kB 00:00 (29/143): fedora-repos-rawhide-33-0.5.noarch.rp 1.2 MB/s | 9.5 kB 00:00 (30/143): file-5.38-3.fc33.x86_64.rpm 4.9 MB/s | 51 kB 00:00 (31/143): file-libs-5.38-3.fc33.x86_64.rpm 37 MB/s | 568 kB 00:00 (32/143): filesystem-3.14-2.fc32.x86_64.rpm 62 MB/s | 1.1 MB 00:00 (33/143): findutils-4.7.0-3.fc32.x86_64.rpm 34 MB/s | 552 kB 00:00 (34/143): fonts-srpm-macros-2.0.5-1.fc33.noarch 2.4 MB/s | 26 kB 00:00 (35/143): fpc-srpm-macros-1.3-1.fc32.noarch.rpm 681 kB/s | 7.6 kB 00:00 (36/143): gawk-5.0.1-7.fc32.x86_64.rpm 75 MB/s | 1.2 MB 00:00 (37/143): gc-8.0.4-3.fc32.x86_64.rpm 6.9 MB/s | 113 kB 00:00 (38/143): gdb-minimal-9.1-5.fc33.x86_64.rpm 87 MB/s | 3.5 MB 00:00 (39/143): ghc-srpm-macros-1.5.0-2.fc32.noarch.r 263 kB/s | 7.7 kB 00:00 (40/143): glibc-2.31.9000-9.fc33.x86_64.rpm 73 MB/s | 3.5 MB 00:00 (41/143): glibc-common-2.31.9000-9.fc33.x86_64. 55 MB/s | 1.8 MB 00:00 (42/143): gmp-6.2.0-1.fc33.x86_64.rpm 28 MB/s | 322 kB 00:00 (43/143): glibc-minimal-langpack-2.31.9000-9.fc 5.7 MB/s | 75 kB 00:00 (44/143): gnat-srpm-macros-4-11.fc32.noarch.rpm 2.3 MB/s | 8.2 kB 00:00 (45/143): go-srpm-macros-3.0.8-5.fc32.noarch.rp 8.5 MB/s | 25 kB 00:00 (46/143): grep-3.4-1.fc33.x86_64.rpm 36 MB/s | 258 kB 00:00 (47/143): guile22-2.2.6-4.fc32.x86_64.rpm 100 MB/s | 6.6 MB 00:00 (48/143): gzip-1.10-2.fc32.x86_64.rpm 2.3 MB/s | 155 kB 00:00 (49/143): info-6.7-7.fc33.x86_64.rpm 3.7 MB/s | 228 kB 00:00 (50/143): keyutils-libs-1.6-4.fc32.x86_64.rpm 11 MB/s | 31 kB 00:00 (51/143): krb5-libs-1.18.1-1.fc33.x86_64.rpm 80 MB/s | 756 kB 00:00 (52/143): libacl-2.2.53-5.fc32.x86_64.rpm 2.2 MB/s | 25 kB 00:00 (53/143): libarchive-3.4.2-1.fc33.x86_64.rpm 37 MB/s | 388 kB 00:00 (54/143): libattr-2.4.48-8.fc32.x86_64.rpm 4.1 MB/s | 18 kB 00:00 (55/143): libbrotli-1.0.7-10.fc32.x86_64.rpm 59 MB/s | 324 kB 00:00 (56/143): libblkid-2.35.1-9.fc33.x86_64.rpm 20 MB/s | 152 kB 00:00 (57/143): libcap-2.26-7.fc32.x86_64.rpm 7.0 MB/s | 52 kB 00:00 (58/143): libcap-ng-0.7.10-2.fc32.x86_64.rpm 7.7 MB/s | 28 kB 00:00 (59/143): libcom_err-1.45.6-2.fc33.x86_64.rpm 4.3 MB/s | 28 kB 00:00 (60/143): libcurl-7.69.0-2.fc33.x86_64.rpm 26 MB/s | 271 kB 00:00 (61/143): libdb-5.3.28-40.fc32.x86_64.rpm 56 MB/s | 761 kB 00:00 (62/143): libfdisk-2.35.1-9.fc33.x86_64.rpm 27 MB/s | 204 kB 00:00 (63/143): libffi-3.1-24.fc32.x86_64.rpm 11 MB/s | 33 kB 00:00 (64/143): libgcc-10.0.1-0.11.fc33.x86_64.rpm 16 MB/s | 87 kB 00:00 (65/143): libgcrypt-1.8.5-3.fc32.x86_64.rpm 50 MB/s | 469 kB 00:00 (66/143): libgomp-10.0.1-0.11.fc33.x86_64.rpm 23 MB/s | 246 kB 00:00 (67/143): libgpg-error-1.37-1.fc33.x86_64.rpm 21 MB/s | 205 kB 00:00 (68/143): libidn2-2.3.0-2.fc32.x86_64.rpm 22 MB/s | 104 kB 00:00 (69/143): libmount-2.35.1-9.fc33.x86_64.rpm 41 MB/s | 179 kB 00:00 (70/143): libmetalink-0.1.3-10.fc32.x86_64.rpm 5.4 MB/s | 31 kB 00:00 (71/143): libnghttp2-1.40.0-2.fc32.x86_64.rpm 13 MB/s | 79 kB 00:00 (72/143): libnsl2-1.2.0-6.20180605git4a062cf.fc 17 MB/s | 59 kB 00:00 (73/143): libpkgconf-1.6.3-3.fc32.x86_64.rpm 9.5 MB/s | 35 kB 00:00 (74/143): libpsl-0.21.0-4.fc32.x86_64.rpm 16 MB/s | 61 kB 00:00 (75/143): libpwquality-1.4.2-2.fc32.x86_64.rpm 16 MB/s | 101 kB 00:00 (76/143): libselinux-3.0-4.fc33.x86_64.rpm 14 MB/s | 85 kB 00:00 (77/143): libsemanage-3.0-3.fc32.x86_64.rpm 10 MB/s | 123 kB 00:00 (78/143): libsepol-3.0-3.fc32.x86_64.rpm 25 MB/s | 299 kB 00:00 (79/143): libsigsegv-2.11-10.fc32.x86_64.rpm 2.2 MB/s | 26 kB 00:00 (80/143): libsmartcols-2.35.1-9.fc33.x86_64.rpm 18 MB/s | 120 kB 00:00 (81/143): libssh-0.9.4-2.fc33.x86_64.rpm 32 MB/s | 215 kB 00:00 (82/143): libstdc++-10.0.1-0.11.fc33.x86_64.rpm 54 MB/s | 613 kB 00:00 (83/143): libssh-config-0.9.4-2.fc33.noarch.rpm 820 kB/s | 11 kB 00:00 (84/143): libtasn1-4.16.0-1.fc32.x86_64.rpm 8.0 MB/s | 73 kB 00:00 (85/143): libtirpc-1.2.6-0.fc33.x86_64.rpm 29 MB/s | 98 kB 00:00 (86/143): libunistring-0.9.10-7.fc32.x86_64.rpm 54 MB/s | 512 kB 00:00 (87/143): libtool-ltdl-2.4.6-33.fc32.x86_64.rpm 3.2 MB/s | 37 kB 00:00 (88/143): libutempter-1.1.6-18.fc32.x86_64.rpm 2.5 MB/s | 26 kB 00:00 (89/143): libuuid-2.35.1-9.fc33.x86_64.rpm 10 MB/s | 28 kB 00:00 (90/143): libverto-0.3.0-9.fc32.x86_64.rpm 7.3 MB/s | 22 kB 00:00 (91/143): libxcrypt-4.4.16-1.fc33.x86_64.rpm 31 MB/s | 127 kB 00:00 (92/143): libxml2-2.9.10-4.fc33.x86_64.rpm 78 MB/s | 703 kB 00:00 (93/143): libzstd-1.4.4-2.fc32.x86_64.rpm 41 MB/s | 260 kB 00:00 (94/143): lua-libs-5.3.5-7.fc32.x86_64.rpm 16 MB/s | 119 kB 00:00 (95/143): lz4-libs-1.9.1-2.fc32.x86_64.rpm 9.8 MB/s | 65 kB 00:00 (96/143): make-4.3-1.fc33.x86_64.rpm 59 MB/s | 536 kB 00:00 (97/143): mpfr-4.0.2-3.fc32.x86_64.rpm 24 MB/s | 256 kB 00:00 (98/143): ncurses-6.2-1.20200222.fc33.x86_64.rp 47 MB/s | 394 kB 00:00 (99/143): ncurses-base-6.2-1.20200222.fc33.noar 6.1 MB/s | 59 kB 00:00 (100/143): ncurses-libs-6.2-1.20200222.fc33.x86 28 MB/s | 327 kB 00:00 (101/143): nim-srpm-macros-3-2.fc32.noarch.rpm 878 kB/s | 8.3 kB 00:00 (102/143): ocaml-srpm-macros-6-2.fc32.noarch.rp 979 kB/s | 7.7 kB 00:00 (103/143): openblas-srpm-macros-2-7.fc32.noarch 770 kB/s | 7.2 kB 00:00 (104/143): openldap-2.4.47-4.fc32.x86_64.rpm 29 MB/s | 305 kB 00:00 (105/143): openssl-libs-1.1.1f-1.fc33.x86_64.rp 90 MB/s | 1.4 MB 00:00 (106/143): p11-kit-0.23.20-1.fc32.x86_64.rpm 20 MB/s | 347 kB 00:00 (107/143): p11-kit-trust-0.23.20-1.fc32.x86_64. 8.4 MB/s | 142 kB 00:00 (108/143): pam-1.3.1-24.fc33.x86_64.rpm 79 MB/s | 666 kB 00:00 (109/143): patch-2.7.6-12.fc32.x86_64.rpm 25 MB/s | 135 kB 00:00 (110/143): pcre-8.44-1.fc33.x86_64.rpm 28 MB/s | 198 kB 00:00 (111/143): pcre2-10.34-9.fc33.x86_64.rpm 46 MB/s | 231 kB 00:00 (112/143): pcre2-syntax-10.34-9.fc33.noarch.rpm 35 MB/s | 140 kB 00:00 (113/143): perl-srpm-macros-1-34.fc32.noarch.rp 1.9 MB/s | 8.3 kB 00:00 (114/143): pkgconf-1.6.3-3.fc32.x86_64.rpm 9.5 MB/s | 41 kB 00:00 (115/143): pkgconf-pkg-config-1.6.3-3.fc32.x86_ 3.7 MB/s | 9.7 kB 00:00 (116/143): pkgconf-m4-1.6.3-3.fc32.noarch.rpm 3.6 MB/s | 14 kB 00:00 (117/143): publicsuffix-list-dafsa-20190417-3.f 11 MB/s | 56 kB 00:00 (118/143): popt-1.16-19.fc32.x86_64.rpm 6.7 MB/s | 58 kB 00:00 (119/143): python-srpm-macros-3.8-2.fc33.noarch 2.7 MB/s | 18 kB 00:00 (120/143): qt5-srpm-macros-5.14.2-3.fc33.noarch 3.0 MB/s | 8.8 kB 00:00 (121/143): readline-8.0-4.fc32.x86_64.rpm 42 MB/s | 207 kB 00:00 (122/143): redhat-rpm-config-154-1.fc33.noarch. 11 MB/s | 63 kB 00:00 (123/143): rpm-4.15.90-0.git14971.5.fc33.x86_64 57 MB/s | 502 kB 00:00 (124/143): rpm-build-4.15.90-0.git14971.5.fc33. 16 MB/s | 117 kB 00:00 (125/143): rpm-build-libs-4.15.90-0.git14971.5. 18 MB/s | 99 kB 00:00 (126/143): rpm-libs-4.15.90-0.git14971.5.fc33.x 64 MB/s | 331 kB 00:00 (127/143): rust-srpm-macros-13-2.fc33.noarch.rp 3.2 MB/s | 9.5 kB 00:00 (128/143): sed-4.8-1.fc33.x86_64.rpm 51 MB/s | 303 kB 00:00 (129/143): setup-2.13.6-2.fc32.noarch.rpm 26 MB/s | 142 kB 00:00 (130/143): shadow-utils-4.8.1-2.fc33.x86_64.rpm 76 MB/s | 1.2 MB 00:00 (131/143): sqlite-libs-3.31.1-1.fc33.x86_64.rpm 32 MB/s | 611 kB 00:00 (132/143): systemd-libs-245.4-1.fc33.x86_64.rpm 25 MB/s | 557 kB 00:00 (133/143): tar-1.32-4.fc32.x86_64.rpm 54 MB/s | 887 kB 00:00 (134/143): tzdata-2019c-3.fc32.noarch.rpm 31 MB/s | 429 kB 00:00 (135/143): util-linux-2.35.1-9.fc33.x86_64.rpm 110 MB/s | 2.7 MB 00:00 (136/143): unzip-6.0-47.fc32.x86_64.rpm 4.6 MB/s | 179 kB 00:00 (137/143): which-2.21-19.fc33.x86_64.rpm 1.5 MB/s | 42 kB 00:00 (138/143): xxhash-libs-0.7.3-1.fc33.x86_64.rpm 8.8 MB/s | 29 kB 00:00 (139/143): xz-5.2.5-1.fc33.x86_64.rpm 35 MB/s | 187 kB 00:00 (140/143): xz-libs-5.2.5-1.fc33.x86_64.rpm 13 MB/s | 90 kB 00:00 (141/143): zip-3.0-26.fc32.x86_64.rpm 29 MB/s | 260 kB 00:00 (142/143): zstd-1.4.4-2.fc32.x86_64.rpm 61 MB/s | 387 kB 00:00 (143/143): zlib-1.2.11-21.fc32.x86_64.rpm 11 MB/s | 93 kB 00:00 -------------------------------------------------------------------------------- Total 72 MB/s | 57 MB 00:00 warning: Generating 18 missing index(es), please wait... warning: /var/lib/mock/fedora-rawhide-x86_64-1587134101.331053/root/var/cache/dnf/fedora-2d95c80a1fa0a67d/packages/alternatives-1.11-6.fc32.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 9570ff31: NOKEY fedora 1.6 MB/s | 1.6 kB 00:00 Importing GPG key 0x9570FF31: Userid : "Fedora (33) " Fingerprint: 963A 2BEB 0200 9608 FE67 EA42 49FD 7749 9570 FF31 From : /usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-33-primary Key imported successfully fedora 1.6 MB/s | 1.6 kB 00:00 GPG key at file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-33-primary (0x9570FF31) is already installed fedora 1.6 MB/s | 1.6 kB 00:00 Importing GPG key 0x12C944D0: Userid : "Fedora (32) " Fingerprint: 97A1 AE57 C3A2 372C CA3A 4ABA 6C13 026D 12C9 44D0 From : /usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-32-primary Key imported successfully Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Running scriptlet: filesystem-3.14-2.fc32.x86_64 1/1 Preparing : 1/1 Installing : libgcc-10.0.1-0.11.fc33.x86_64 1/143 Running scriptlet: libgcc-10.0.1-0.11.fc33.x86_64 1/143 Installing : tzdata-2019c-3.fc32.noarch 2/143 Installing : rust-srpm-macros-13-2.fc33.noarch 3/143 Installing : qt5-srpm-macros-5.14.2-3.fc33.noarch 4/143 Installing : publicsuffix-list-dafsa-20190417-3.fc32.noarch 5/143 Installing : pkgconf-m4-1.6.3-3.fc32.noarch 6/143 Installing : perl-srpm-macros-1-34.fc32.noarch 7/143 Installing : pcre2-syntax-10.34-9.fc33.noarch 8/143 Installing : openblas-srpm-macros-2-7.fc32.noarch 9/143 Installing : ocaml-srpm-macros-6-2.fc32.noarch 10/143 Installing : nim-srpm-macros-3-2.fc32.noarch 11/143 Installing : ncurses-base-6.2-1.20200222.fc33.noarch 12/143 Installing : libssh-config-0.9.4-2.fc33.noarch 13/143 Installing : gnat-srpm-macros-4-11.fc32.noarch 14/143 Installing : ghc-srpm-macros-1.5.0-2.fc32.noarch 15/143 Installing : fpc-srpm-macros-1.3-1.fc32.noarch 16/143 Installing : fedora-gpg-keys-33-0.5.noarch 17/143 Installing : fedora-release-33-0.3.noarch 18/143 Installing : fedora-release-common-33-0.3.noarch 19/143 Installing : fedora-repos-rawhide-33-0.5.noarch 20/143 Installing : fedora-repos-33-0.5.noarch 21/143 Installing : setup-2.13.6-2.fc32.noarch 22/143 warning: /etc/hosts created as /etc/hosts.rpmnew Running scriptlet: setup-2.13.6-2.fc32.noarch 22/143 Installing : filesystem-3.14-2.fc32.x86_64 23/143 Installing : basesystem-11-9.fc32.noarch 24/143 Installing : glibc-minimal-langpack-2.31.9000-9.fc33.x86_64 25/143 Installing : glibc-common-2.31.9000-9.fc33.x86_64 26/143 Running scriptlet: glibc-2.31.9000-9.fc33.x86_64 27/143 Installing : glibc-2.31.9000-9.fc33.x86_64 27/143 Running scriptlet: glibc-2.31.9000-9.fc33.x86_64 27/143 Installing : ncurses-libs-6.2-1.20200222.fc33.x86_64 28/143 Installing : bash-5.0.11-2.fc32.x86_64 29/143 Running scriptlet: bash-5.0.11-2.fc32.x86_64 29/143 Installing : zlib-1.2.11-21.fc32.x86_64 30/143 Installing : bzip2-libs-1.0.8-2.fc32.x86_64 31/143 Installing : xz-libs-5.2.5-1.fc33.x86_64 32/143 Installing : libstdc++-10.0.1-0.11.fc33.x86_64 33/143 Installing : elfutils-libelf-0.179-1.fc33.x86_64 34/143 Installing : libxcrypt-4.4.16-1.fc33.x86_64 35/143 Installing : readline-8.0-4.fc32.x86_64 36/143 Installing : libattr-2.4.48-8.fc32.x86_64 37/143 Installing : libacl-2.2.53-5.fc32.x86_64 38/143 Installing : libcom_err-1.45.6-2.fc33.x86_64 39/143 Installing : libdb-5.3.28-40.fc32.x86_64 40/143 Installing : libuuid-2.35.1-9.fc33.x86_64 41/143 Installing : popt-1.16-19.fc32.x86_64 42/143 Installing : libcap-2.26-7.fc32.x86_64 43/143 Installing : libunistring-0.9.10-7.fc32.x86_64 44/143 Installing : libzstd-1.4.4-2.fc32.x86_64 45/143 Installing : libidn2-2.3.0-2.fc32.x86_64 46/143 Installing : unzip-6.0-47.fc32.x86_64 47/143 Installing : file-libs-5.38-3.fc33.x86_64 48/143 Installing : file-5.38-3.fc33.x86_64 49/143 Installing : sqlite-libs-3.31.1-1.fc33.x86_64 50/143 Installing : libsepol-3.0-3.fc32.x86_64 51/143 Running scriptlet: libsepol-3.0-3.fc32.x86_64 51/143 Installing : alternatives-1.11-6.fc32.x86_64 52/143 Installing : libcap-ng-0.7.10-2.fc32.x86_64 53/143 Installing : audit-libs-3.0-0.19.20191104git1c2f876.fc33.x86_ 54/143 Installing : libffi-3.1-24.fc32.x86_64 55/143 Installing : p11-kit-0.23.20-1.fc32.x86_64 56/143 Installing : lua-libs-5.3.5-7.fc32.x86_64 57/143 Installing : lz4-libs-1.9.1-2.fc32.x86_64 58/143 Installing : pcre2-10.34-9.fc33.x86_64 59/143 Installing : libselinux-3.0-4.fc33.x86_64 60/143 Installing : sed-4.8-1.fc33.x86_64 61/143 Installing : findutils-1:4.7.0-3.fc32.x86_64 62/143 Installing : libsemanage-3.0-3.fc32.x86_64 63/143 Installing : shadow-utils-2:4.8.1-2.fc33.x86_64 64/143 Running scriptlet: libutempter-1.1.6-18.fc32.x86_64 65/143 Installing : libutempter-1.1.6-18.fc32.x86_64 65/143 Installing : patch-2.7.6-12.fc32.x86_64 66/143 Installing : tar-2:1.32-4.fc32.x86_64 67/143 Installing : zip-3.0-26.fc32.x86_64 68/143 Installing : libpsl-0.21.0-4.fc32.x86_64 69/143 Installing : dwz-0.13-2.fc32.x86_64 70/143 Installing : gc-8.0.4-3.fc32.x86_64 71/143 Installing : zstd-1.4.4-2.fc32.x86_64 72/143 Installing : libxml2-2.9.10-4.fc33.x86_64 73/143 Installing : bzip2-1.0.8-2.fc32.x86_64 74/143 Installing : elfutils-default-yama-scope-0.179-1.fc33.noarch 75/143 Running scriptlet: elfutils-default-yama-scope-0.179-1.fc33.noarch 75/143 Installing : elfutils-libs-0.179-1.fc33.x86_64 76/143 Installing : elfutils-0.179-1.fc33.x86_64 77/143 Installing : ncurses-6.2-1.20200222.fc33.x86_64 78/143 Installing : cpio-2.13-5.fc33.x86_64 79/143 Installing : diffutils-3.7-4.fc32.x86_64 80/143 Installing : expat-2.2.8-2.fc32.x86_64 81/143 Installing : libmetalink-0.1.3-10.fc32.x86_64 82/143 Installing : keyutils-libs-1.6-4.fc32.x86_64 83/143 Installing : libbrotli-1.0.7-10.fc32.x86_64 84/143 Installing : libgomp-10.0.1-0.11.fc33.x86_64 85/143 Installing : libgpg-error-1.37-1.fc33.x86_64 86/143 Installing : libgcrypt-1.8.5-3.fc32.x86_64 87/143 Installing : libnghttp2-1.40.0-2.fc32.x86_64 88/143 Installing : libpkgconf-1.6.3-3.fc32.x86_64 89/143 Installing : pkgconf-1.6.3-3.fc32.x86_64 90/143 Installing : pkgconf-pkg-config-1.6.3-3.fc32.x86_64 91/143 Installing : gmp-1:6.2.0-1.fc33.x86_64 92/143 Installing : mpfr-4.0.2-3.fc32.x86_64 93/143 Installing : libsigsegv-2.11-10.fc32.x86_64 94/143 Installing : gawk-5.0.1-7.fc32.x86_64 95/143 Installing : libsmartcols-2.35.1-9.fc33.x86_64 96/143 Installing : libtasn1-4.16.0-1.fc32.x86_64 97/143 Installing : p11-kit-trust-0.23.20-1.fc32.x86_64 98/143 Running scriptlet: p11-kit-trust-0.23.20-1.fc32.x86_64 98/143 Installing : libtool-ltdl-2.4.6-33.fc32.x86_64 99/143 Installing : libverto-0.3.0-9.fc32.x86_64 100/143 Installing : pcre-8.44-1.fc33.x86_64 101/143 Installing : grep-3.4-1.fc33.x86_64 102/143 Installing : xz-5.2.5-1.fc33.x86_64 103/143 Installing : xxhash-libs-0.7.3-1.fc33.x86_64 104/143 Installing : gdb-minimal-9.1-5.fc33.x86_64 105/143 Installing : coreutils-common-8.32-3.fc33.x86_64 106/143 Installing : openssl-libs-1:1.1.1f-1.fc33.x86_64 107/143 Installing : coreutils-8.32-3.fc33.x86_64 108/143 Installing : crypto-policies-20200312-1.git3ae59d2.fc33.noarc 109/143 Running scriptlet: ca-certificates-2020.2.40-3.fc32.noarch 110/143 Installing : ca-certificates-2020.2.40-3.fc32.noarch 110/143 Running scriptlet: ca-certificates-2020.2.40-3.fc32.noarch 110/143 Installing : krb5-libs-1.18.1-1.fc33.x86_64 111/143 Installing : libblkid-2.35.1-9.fc33.x86_64 112/143 Running scriptlet: libblkid-2.35.1-9.fc33.x86_64 112/143 Installing : libtirpc-1.2.6-0.fc33.x86_64 113/143 Installing : binutils-gold-2.34-2.fc33.x86_64 114/143 Installing : binutils-2.34-2.fc33.x86_64 115/143 Running scriptlet: binutils-2.34-2.fc33.x86_64 115/143 Installing : gzip-1.10-2.fc32.x86_64 116/143 Installing : cracklib-2.9.6-22.fc32.x86_64 117/143 Installing : libnsl2-1.2.0-6.20180605git4a062cf.fc32.x86_64 118/143 Installing : libpwquality-1.4.2-2.fc32.x86_64 119/143 Installing : pam-1.3.1-24.fc33.x86_64 120/143 Installing : libfdisk-2.35.1-9.fc33.x86_64 121/143 Installing : libmount-2.35.1-9.fc33.x86_64 122/143 Installing : cyrus-sasl-lib-2.1.27-4.fc33.x86_64 123/143 Installing : openldap-2.4.47-4.fc32.x86_64 124/143 Installing : libssh-0.9.4-2.fc33.x86_64 125/143 Installing : libcurl-7.69.0-2.fc33.x86_64 126/143 Installing : curl-7.69.0-2.fc33.x86_64 127/143 Installing : guile22-2.2.6-4.fc32.x86_64 128/143 Running scriptlet: guile22-2.2.6-4.fc32.x86_64 128/143 Installing : systemd-libs-245.4-1.fc33.x86_64 129/143 Running scriptlet: systemd-libs-245.4-1.fc33.x86_64 129/143 Installing : libarchive-3.4.2-1.fc33.x86_64 130/143 Installing : rpm-4.15.90-0.git14971.5.fc33.x86_64 131/143 Installing : rpm-libs-4.15.90-0.git14971.5.fc33.x86_64 132/143 Installing : rpm-build-libs-4.15.90-0.git14971.5.fc33.x86_64 133/143 Installing : efi-srpm-macros-4-4.fc32.noarch 134/143 Installing : fonts-srpm-macros-2.0.5-1.fc33.noarch 135/143 Installing : go-srpm-macros-3.0.8-5.fc32.noarch 136/143 Installing : python-srpm-macros-3.8-2.fc33.noarch 137/143 Installing : redhat-rpm-config-154-1.fc33.noarch 138/143 Installing : rpm-build-4.15.90-0.git14971.5.fc33.x86_64 139/143 Installing : util-linux-2.35.1-9.fc33.x86_64 140/143 Running scriptlet: util-linux-2.35.1-9.fc33.x86_64 140/143 Installing : make-1:4.3-1.fc33.x86_64 141/143 Installing : info-6.7-7.fc33.x86_64 142/143 Installing : which-2.21-19.fc33.x86_64 143/143 Running scriptlet: filesystem-3.14-2.fc32.x86_64 143/143 Running scriptlet: which-2.21-19.fc33.x86_64 143/143 Verifying : alternatives-1.11-6.fc32.x86_64 1/143 Verifying : audit-libs-3.0-0.19.20191104git1c2f876.fc33.x86_ 2/143 Verifying : basesystem-11-9.fc32.noarch 3/143 Verifying : bash-5.0.11-2.fc32.x86_64 4/143 Verifying : binutils-2.34-2.fc33.x86_64 5/143 Verifying : binutils-gold-2.34-2.fc33.x86_64 6/143 Verifying : bzip2-1.0.8-2.fc32.x86_64 7/143 Verifying : bzip2-libs-1.0.8-2.fc32.x86_64 8/143 Verifying : ca-certificates-2020.2.40-3.fc32.noarch 9/143 Verifying : coreutils-8.32-3.fc33.x86_64 10/143 Verifying : coreutils-common-8.32-3.fc33.x86_64 11/143 Verifying : cpio-2.13-5.fc33.x86_64 12/143 Verifying : cracklib-2.9.6-22.fc32.x86_64 13/143 Verifying : crypto-policies-20200312-1.git3ae59d2.fc33.noarc 14/143 Verifying : curl-7.69.0-2.fc33.x86_64 15/143 Verifying : cyrus-sasl-lib-2.1.27-4.fc33.x86_64 16/143 Verifying : diffutils-3.7-4.fc32.x86_64 17/143 Verifying : dwz-0.13-2.fc32.x86_64 18/143 Verifying : efi-srpm-macros-4-4.fc32.noarch 19/143 Verifying : elfutils-0.179-1.fc33.x86_64 20/143 Verifying : elfutils-default-yama-scope-0.179-1.fc33.noarch 21/143 Verifying : elfutils-libelf-0.179-1.fc33.x86_64 22/143 Verifying : elfutils-libs-0.179-1.fc33.x86_64 23/143 Verifying : expat-2.2.8-2.fc32.x86_64 24/143 Verifying : fedora-gpg-keys-33-0.5.noarch 25/143 Verifying : fedora-release-33-0.3.noarch 26/143 Verifying : fedora-release-common-33-0.3.noarch 27/143 Verifying : fedora-repos-33-0.5.noarch 28/143 Verifying : fedora-repos-rawhide-33-0.5.noarch 29/143 Verifying : file-5.38-3.fc33.x86_64 30/143 Verifying : file-libs-5.38-3.fc33.x86_64 31/143 Verifying : filesystem-3.14-2.fc32.x86_64 32/143 Verifying : findutils-1:4.7.0-3.fc32.x86_64 33/143 Verifying : fonts-srpm-macros-2.0.5-1.fc33.noarch 34/143 Verifying : fpc-srpm-macros-1.3-1.fc32.noarch 35/143 Verifying : gawk-5.0.1-7.fc32.x86_64 36/143 Verifying : gc-8.0.4-3.fc32.x86_64 37/143 Verifying : gdb-minimal-9.1-5.fc33.x86_64 38/143 Verifying : ghc-srpm-macros-1.5.0-2.fc32.noarch 39/143 Verifying : glibc-2.31.9000-9.fc33.x86_64 40/143 Verifying : glibc-common-2.31.9000-9.fc33.x86_64 41/143 Verifying : glibc-minimal-langpack-2.31.9000-9.fc33.x86_64 42/143 Verifying : gmp-1:6.2.0-1.fc33.x86_64 43/143 Verifying : gnat-srpm-macros-4-11.fc32.noarch 44/143 Verifying : go-srpm-macros-3.0.8-5.fc32.noarch 45/143 Verifying : grep-3.4-1.fc33.x86_64 46/143 Verifying : guile22-2.2.6-4.fc32.x86_64 47/143 Verifying : gzip-1.10-2.fc32.x86_64 48/143 Verifying : info-6.7-7.fc33.x86_64 49/143 Verifying : keyutils-libs-1.6-4.fc32.x86_64 50/143 Verifying : krb5-libs-1.18.1-1.fc33.x86_64 51/143 Verifying : libacl-2.2.53-5.fc32.x86_64 52/143 Verifying : libarchive-3.4.2-1.fc33.x86_64 53/143 Verifying : libattr-2.4.48-8.fc32.x86_64 54/143 Verifying : libblkid-2.35.1-9.fc33.x86_64 55/143 Verifying : libbrotli-1.0.7-10.fc32.x86_64 56/143 Verifying : libcap-2.26-7.fc32.x86_64 57/143 Verifying : libcap-ng-0.7.10-2.fc32.x86_64 58/143 Verifying : libcom_err-1.45.6-2.fc33.x86_64 59/143 Verifying : libcurl-7.69.0-2.fc33.x86_64 60/143 Verifying : libdb-5.3.28-40.fc32.x86_64 61/143 Verifying : libfdisk-2.35.1-9.fc33.x86_64 62/143 Verifying : libffi-3.1-24.fc32.x86_64 63/143 Verifying : libgcc-10.0.1-0.11.fc33.x86_64 64/143 Verifying : libgcrypt-1.8.5-3.fc32.x86_64 65/143 Verifying : libgomp-10.0.1-0.11.fc33.x86_64 66/143 Verifying : libgpg-error-1.37-1.fc33.x86_64 67/143 Verifying : libidn2-2.3.0-2.fc32.x86_64 68/143 Verifying : libmetalink-0.1.3-10.fc32.x86_64 69/143 Verifying : libmount-2.35.1-9.fc33.x86_64 70/143 Verifying : libnghttp2-1.40.0-2.fc32.x86_64 71/143 Verifying : libnsl2-1.2.0-6.20180605git4a062cf.fc32.x86_64 72/143 Verifying : libpkgconf-1.6.3-3.fc32.x86_64 73/143 Verifying : libpsl-0.21.0-4.fc32.x86_64 74/143 Verifying : libpwquality-1.4.2-2.fc32.x86_64 75/143 Verifying : libselinux-3.0-4.fc33.x86_64 76/143 Verifying : libsemanage-3.0-3.fc32.x86_64 77/143 Verifying : libsepol-3.0-3.fc32.x86_64 78/143 Verifying : libsigsegv-2.11-10.fc32.x86_64 79/143 Verifying : libsmartcols-2.35.1-9.fc33.x86_64 80/143 Verifying : libssh-0.9.4-2.fc33.x86_64 81/143 Verifying : libssh-config-0.9.4-2.fc33.noarch 82/143 Verifying : libstdc++-10.0.1-0.11.fc33.x86_64 83/143 Verifying : libtasn1-4.16.0-1.fc32.x86_64 84/143 Verifying : libtirpc-1.2.6-0.fc33.x86_64 85/143 Verifying : libtool-ltdl-2.4.6-33.fc32.x86_64 86/143 Verifying : libunistring-0.9.10-7.fc32.x86_64 87/143 Verifying : libutempter-1.1.6-18.fc32.x86_64 88/143 Verifying : libuuid-2.35.1-9.fc33.x86_64 89/143 Verifying : libverto-0.3.0-9.fc32.x86_64 90/143 Verifying : libxcrypt-4.4.16-1.fc33.x86_64 91/143 Verifying : libxml2-2.9.10-4.fc33.x86_64 92/143 Verifying : libzstd-1.4.4-2.fc32.x86_64 93/143 Verifying : lua-libs-5.3.5-7.fc32.x86_64 94/143 Verifying : lz4-libs-1.9.1-2.fc32.x86_64 95/143 Verifying : make-1:4.3-1.fc33.x86_64 96/143 Verifying : mpfr-4.0.2-3.fc32.x86_64 97/143 Verifying : ncurses-6.2-1.20200222.fc33.x86_64 98/143 Verifying : ncurses-base-6.2-1.20200222.fc33.noarch 99/143 Verifying : ncurses-libs-6.2-1.20200222.fc33.x86_64 100/143 Verifying : nim-srpm-macros-3-2.fc32.noarch 101/143 Verifying : ocaml-srpm-macros-6-2.fc32.noarch 102/143 Verifying : openblas-srpm-macros-2-7.fc32.noarch 103/143 Verifying : openldap-2.4.47-4.fc32.x86_64 104/143 Verifying : openssl-libs-1:1.1.1f-1.fc33.x86_64 105/143 Verifying : p11-kit-0.23.20-1.fc32.x86_64 106/143 Verifying : p11-kit-trust-0.23.20-1.fc32.x86_64 107/143 Verifying : pam-1.3.1-24.fc33.x86_64 108/143 Verifying : patch-2.7.6-12.fc32.x86_64 109/143 Verifying : pcre-8.44-1.fc33.x86_64 110/143 Verifying : pcre2-10.34-9.fc33.x86_64 111/143 Verifying : pcre2-syntax-10.34-9.fc33.noarch 112/143 Verifying : perl-srpm-macros-1-34.fc32.noarch 113/143 Verifying : pkgconf-1.6.3-3.fc32.x86_64 114/143 Verifying : pkgconf-m4-1.6.3-3.fc32.noarch 115/143 Verifying : pkgconf-pkg-config-1.6.3-3.fc32.x86_64 116/143 Verifying : popt-1.16-19.fc32.x86_64 117/143 Verifying : publicsuffix-list-dafsa-20190417-3.fc32.noarch 118/143 Verifying : python-srpm-macros-3.8-2.fc33.noarch 119/143 Verifying : qt5-srpm-macros-5.14.2-3.fc33.noarch 120/143 Verifying : readline-8.0-4.fc32.x86_64 121/143 Verifying : redhat-rpm-config-154-1.fc33.noarch 122/143 Verifying : rpm-4.15.90-0.git14971.5.fc33.x86_64 123/143 Verifying : rpm-build-4.15.90-0.git14971.5.fc33.x86_64 124/143 Verifying : rpm-build-libs-4.15.90-0.git14971.5.fc33.x86_64 125/143 Verifying : rpm-libs-4.15.90-0.git14971.5.fc33.x86_64 126/143 Verifying : rust-srpm-macros-13-2.fc33.noarch 127/143 Verifying : sed-4.8-1.fc33.x86_64 128/143 Verifying : setup-2.13.6-2.fc32.noarch 129/143 Verifying : shadow-utils-2:4.8.1-2.fc33.x86_64 130/143 Verifying : sqlite-libs-3.31.1-1.fc33.x86_64 131/143 Verifying : systemd-libs-245.4-1.fc33.x86_64 132/143 Verifying : tar-2:1.32-4.fc32.x86_64 133/143 Verifying : tzdata-2019c-3.fc32.noarch 134/143 Verifying : unzip-6.0-47.fc32.x86_64 135/143 Verifying : util-linux-2.35.1-9.fc33.x86_64 136/143 Verifying : which-2.21-19.fc33.x86_64 137/143 Verifying : xxhash-libs-0.7.3-1.fc33.x86_64 138/143 Verifying : xz-5.2.5-1.fc33.x86_64 139/143 Verifying : xz-libs-5.2.5-1.fc33.x86_64 140/143 Verifying : zip-3.0-26.fc32.x86_64 141/143 Verifying : zlib-1.2.11-21.fc32.x86_64 142/143 Verifying : zstd-1.4.4-2.fc32.x86_64 143/143 Installed: alternatives-1.11-6.fc32.x86_64 audit-libs-3.0-0.19.20191104git1c2f876.fc33.x86_64 basesystem-11-9.fc32.noarch bash-5.0.11-2.fc32.x86_64 binutils-2.34-2.fc33.x86_64 binutils-gold-2.34-2.fc33.x86_64 bzip2-1.0.8-2.fc32.x86_64 bzip2-libs-1.0.8-2.fc32.x86_64 ca-certificates-2020.2.40-3.fc32.noarch coreutils-8.32-3.fc33.x86_64 coreutils-common-8.32-3.fc33.x86_64 cpio-2.13-5.fc33.x86_64 cracklib-2.9.6-22.fc32.x86_64 crypto-policies-20200312-1.git3ae59d2.fc33.noarch curl-7.69.0-2.fc33.x86_64 cyrus-sasl-lib-2.1.27-4.fc33.x86_64 diffutils-3.7-4.fc32.x86_64 dwz-0.13-2.fc32.x86_64 efi-srpm-macros-4-4.fc32.noarch elfutils-0.179-1.fc33.x86_64 elfutils-default-yama-scope-0.179-1.fc33.noarch elfutils-libelf-0.179-1.fc33.x86_64 elfutils-libs-0.179-1.fc33.x86_64 expat-2.2.8-2.fc32.x86_64 fedora-gpg-keys-33-0.5.noarch fedora-release-33-0.3.noarch fedora-release-common-33-0.3.noarch fedora-repos-33-0.5.noarch fedora-repos-rawhide-33-0.5.noarch file-5.38-3.fc33.x86_64 file-libs-5.38-3.fc33.x86_64 filesystem-3.14-2.fc32.x86_64 findutils-1:4.7.0-3.fc32.x86_64 fonts-srpm-macros-2.0.5-1.fc33.noarch fpc-srpm-macros-1.3-1.fc32.noarch gawk-5.0.1-7.fc32.x86_64 gc-8.0.4-3.fc32.x86_64 gdb-minimal-9.1-5.fc33.x86_64 ghc-srpm-macros-1.5.0-2.fc32.noarch glibc-2.31.9000-9.fc33.x86_64 glibc-common-2.31.9000-9.fc33.x86_64 glibc-minimal-langpack-2.31.9000-9.fc33.x86_64 gmp-1:6.2.0-1.fc33.x86_64 gnat-srpm-macros-4-11.fc32.noarch go-srpm-macros-3.0.8-5.fc32.noarch grep-3.4-1.fc33.x86_64 guile22-2.2.6-4.fc32.x86_64 gzip-1.10-2.fc32.x86_64 info-6.7-7.fc33.x86_64 keyutils-libs-1.6-4.fc32.x86_64 krb5-libs-1.18.1-1.fc33.x86_64 libacl-2.2.53-5.fc32.x86_64 libarchive-3.4.2-1.fc33.x86_64 libattr-2.4.48-8.fc32.x86_64 libblkid-2.35.1-9.fc33.x86_64 libbrotli-1.0.7-10.fc32.x86_64 libcap-2.26-7.fc32.x86_64 libcap-ng-0.7.10-2.fc32.x86_64 libcom_err-1.45.6-2.fc33.x86_64 libcurl-7.69.0-2.fc33.x86_64 libdb-5.3.28-40.fc32.x86_64 libfdisk-2.35.1-9.fc33.x86_64 libffi-3.1-24.fc32.x86_64 libgcc-10.0.1-0.11.fc33.x86_64 libgcrypt-1.8.5-3.fc32.x86_64 libgomp-10.0.1-0.11.fc33.x86_64 libgpg-error-1.37-1.fc33.x86_64 libidn2-2.3.0-2.fc32.x86_64 libmetalink-0.1.3-10.fc32.x86_64 libmount-2.35.1-9.fc33.x86_64 libnghttp2-1.40.0-2.fc32.x86_64 libnsl2-1.2.0-6.20180605git4a062cf.fc32.x86_64 libpkgconf-1.6.3-3.fc32.x86_64 libpsl-0.21.0-4.fc32.x86_64 libpwquality-1.4.2-2.fc32.x86_64 libselinux-3.0-4.fc33.x86_64 libsemanage-3.0-3.fc32.x86_64 libsepol-3.0-3.fc32.x86_64 libsigsegv-2.11-10.fc32.x86_64 libsmartcols-2.35.1-9.fc33.x86_64 libssh-0.9.4-2.fc33.x86_64 libssh-config-0.9.4-2.fc33.noarch libstdc++-10.0.1-0.11.fc33.x86_64 libtasn1-4.16.0-1.fc32.x86_64 libtirpc-1.2.6-0.fc33.x86_64 libtool-ltdl-2.4.6-33.fc32.x86_64 libunistring-0.9.10-7.fc32.x86_64 libutempter-1.1.6-18.fc32.x86_64 libuuid-2.35.1-9.fc33.x86_64 libverto-0.3.0-9.fc32.x86_64 libxcrypt-4.4.16-1.fc33.x86_64 libxml2-2.9.10-4.fc33.x86_64 libzstd-1.4.4-2.fc32.x86_64 lua-libs-5.3.5-7.fc32.x86_64 lz4-libs-1.9.1-2.fc32.x86_64 make-1:4.3-1.fc33.x86_64 mpfr-4.0.2-3.fc32.x86_64 ncurses-6.2-1.20200222.fc33.x86_64 ncurses-base-6.2-1.20200222.fc33.noarch ncurses-libs-6.2-1.20200222.fc33.x86_64 nim-srpm-macros-3-2.fc32.noarch ocaml-srpm-macros-6-2.fc32.noarch openblas-srpm-macros-2-7.fc32.noarch openldap-2.4.47-4.fc32.x86_64 openssl-libs-1:1.1.1f-1.fc33.x86_64 p11-kit-0.23.20-1.fc32.x86_64 p11-kit-trust-0.23.20-1.fc32.x86_64 pam-1.3.1-24.fc33.x86_64 patch-2.7.6-12.fc32.x86_64 pcre-8.44-1.fc33.x86_64 pcre2-10.34-9.fc33.x86_64 pcre2-syntax-10.34-9.fc33.noarch perl-srpm-macros-1-34.fc32.noarch pkgconf-1.6.3-3.fc32.x86_64 pkgconf-m4-1.6.3-3.fc32.noarch pkgconf-pkg-config-1.6.3-3.fc32.x86_64 popt-1.16-19.fc32.x86_64 publicsuffix-list-dafsa-20190417-3.fc32.noarch python-srpm-macros-3.8-2.fc33.noarch qt5-srpm-macros-5.14.2-3.fc33.noarch readline-8.0-4.fc32.x86_64 redhat-rpm-config-154-1.fc33.noarch rpm-4.15.90-0.git14971.5.fc33.x86_64 rpm-build-4.15.90-0.git14971.5.fc33.x86_64 rpm-build-libs-4.15.90-0.git14971.5.fc33.x86_64 rpm-libs-4.15.90-0.git14971.5.fc33.x86_64 rust-srpm-macros-13-2.fc33.noarch sed-4.8-1.fc33.x86_64 setup-2.13.6-2.fc32.noarch shadow-utils-2:4.8.1-2.fc33.x86_64 sqlite-libs-3.31.1-1.fc33.x86_64 systemd-libs-245.4-1.fc33.x86_64 tar-2:1.32-4.fc32.x86_64 tzdata-2019c-3.fc32.noarch unzip-6.0-47.fc32.x86_64 util-linux-2.35.1-9.fc33.x86_64 which-2.21-19.fc33.x86_64 xxhash-libs-0.7.3-1.fc33.x86_64 xz-5.2.5-1.fc33.x86_64 xz-libs-5.2.5-1.fc33.x86_64 zip-3.0-26.fc32.x86_64 zlib-1.2.11-21.fc32.x86_64 zstd-1.4.4-2.fc32.x86_64 Complete! Finish: dnf install Start: creating root cache Finish: creating root cache Finish: chroot init INFO: Installed packages: Start: buildsrpm Start: rpmbuild -bs Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1586217600 Wrote: /builddir/build/SRPMS/mapillary_tools-0.5.0-1.fc33.src.rpm Finish: rpmbuild -bs INFO: chroot_scan: 3 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1587134101.331053/root/var/log/dnf.rpm.log /var/lib/mock/fedora-rawhide-x86_64-1587134101.331053/root/var/log/dnf.librepo.log /var/lib/mock/fedora-rawhide-x86_64-1587134101.331053/root/var/log/dnf.log Finish: buildsrpm INFO: Done(/tmp/copr-rpmbuild-lnl541wb/mapillary_tools.spec) Config(child) 0 minutes 48 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot Finish: run Running (timeout=86400): unbuffer mock --rebuild /var/lib/copr-rpmbuild/results/mapillary_tools-0.5.0-1.fc33.src.rpm --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1587134151.327542 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 2.2 starting (python version = 3.7.6)... Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/var/lib/copr-rpmbuild/results/mapillary_tools-0.5.0-1.fc33.src.rpm) Config(fedora-rawhide-x86_64) Start: clean chroot Finish: clean chroot Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1587134151.327542/root. INFO: calling preinit hooks INFO: enabled root cache Start: unpacking root cache Finish: unpacking root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin Mock Version: 2.2 INFO: Mock Version: 2.2 Start: dnf update No matches found for the following disable plugin patterns: local, spacewalk Copr repository 38 kB/s | 3.3 kB 00:00 fedora 140 kB/s | 11 kB 00:00 Dependencies resolved. Nothing to do. Complete! Finish: dnf update Finish: chroot init Start: build phase for mapillary_tools-0.5.0-1.fc33.src.rpm Start: build setup for mapillary_tools-0.5.0-1.fc33.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1586217600 Wrote: /builddir/build/SRPMS/mapillary_tools-0.5.0-1.fc33.src.rpm No matches found for the following disable plugin patterns: local, spacewalk Copr repository 123 kB/s | 3.3 kB 00:00 fedora 150 kB/s | 11 kB 00:00 Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: python3-ExifRead noarch 2.1.2-1.fc33 copr_base 62 k python3-construct noarch 2.8.8-1.fc33 copr_base 131 k python3-dateutil noarch 1:2.8.0-8.fc32 fedora 291 k python3-devel x86_64 3.8.2-2.fc33 fedora 202 k python3-gpxpy noarch 1.4.0-1.fc32 fedora 76 k python3-pillow x86_64 7.1.1-1.fc33 fedora 669 k python3-pymp4 noarch 1.1.0-1.fc33 copr_base 25 k python3-pynmea2 noarch 1.15.0-1.fc33 copr_base 52 k python3-pytest noarch 4.6.9-2.fc32 fedora 1.3 M python3-pytz noarch 2019.3-2.fc32 fedora 48 k python3-pyyaml x86_64 5.3.1-1.fc33 fedora 202 k python3-requests noarch 2.23.0-1.fc33 fedora 112 k python3-setuptools noarch 46.1.3-1.fc33 fedora 594 k python3-tqdm noarch 4.45.0-1.fc33 fedora 108 k python3-tzwhere noarch 3.0.3-1.fc33 copr_base 23 M Installing dependencies: freetype x86_64 2.10.1-2.fc32 fedora 384 k gdbm-libs x86_64 1:1.18.1-3.fc32 fedora 54 k geos x86_64 3.8.1-1.fc33 fedora 652 k jbigkit-libs x86_64 2.1-18.fc32 fedora 53 k lcms2 x86_64 2.9-7.fc32 fedora 167 k libXau x86_64 1.0.9-3.fc32 fedora 31 k libimagequant x86_64 2.12.6-2.fc32 fedora 62 k libjpeg-turbo x86_64 2.0.4-1.fc32 fedora 168 k libpng x86_64 2:1.6.37-3.fc32 fedora 116 k libtiff x86_64 4.1.0-2.fc32 fedora 185 k libwebp x86_64 1.1.0-2.fc32 fedora 276 k libxcb x86_64 1.13.1-4.fc32 fedora 231 k libyaml x86_64 0.2.3-1.fc33 fedora 60 k openjpeg2 x86_64 2.3.1-6.fc33 fedora 154 k python-pip-wheel noarch 20.0.2-3.fc33 fedora 1.2 M python-rpm-macros noarch 3.8-2.fc33 fedora 13 k python-setuptools-wheel noarch 46.1.3-1.fc33 fedora 293 k python3 x86_64 3.8.2-2.fc33 fedora 30 k python3-atomicwrites noarch 1.3.0-7.fc32 fedora 22 k python3-attrs noarch 19.3.0-2.fc32 fedora 67 k python3-chardet noarch 3.0.4-15.fc32 fedora 194 k python3-idna noarch 2.8-6.fc32 fedora 97 k python3-libs x86_64 3.8.2-2.fc33 fedora 7.4 M python3-more-itertools noarch 7.2.0-4.fc32 fedora 56 k python3-olefile noarch 0.46-9.fc32 fedora 57 k python3-packaging noarch 20.3-1.fc33 fedora 66 k python3-pluggy noarch 0.13.0-2.fc32 fedora 38 k python3-py noarch 1.8.0-8.fc32 fedora 421 k python3-pyparsing noarch 2.4.7-1.fc33 fedora 150 k python3-pysocks noarch 1.7.1-4.fc32 fedora 35 k python3-rpm-generators noarch 11-2.fc33 fedora 25 k python3-rpm-macros noarch 3.8-2.fc33 fedora 12 k python3-shapely x86_64 1.7-2b1.fc32 fedora 470 k python3-six noarch 1.14.0-2.fc32 fedora 36 k python3-urllib3 noarch 1.25.8-1.fc33 fedora 173 k python3-wcwidth noarch 0.1.9-1.fc33 fedora 33 k Transaction Summary ================================================================================ Install 51 Packages Total download size: 40 M Installed size: 91 M Downloading Packages: (1/51): python3-pymp4-1.1.0-1.fc33.noarch.rpm 609 kB/s | 25 kB 00:00 (2/51): python3-construct-2.8.8-1.fc33.noarch.r 3.0 MB/s | 131 kB 00:00 (3/51): python3-pynmea2-1.15.0-1.fc33.noarch.rp 5.0 MB/s | 52 kB 00:00 (4/51): python3-ExifRead-2.1.2-1.fc33.noarch.rp 1.1 MB/s | 62 kB 00:00 (5/51): gdbm-libs-1.18.1-3.fc32.x86_64.rpm 1.5 MB/s | 54 kB 00:00 (6/51): freetype-2.10.1-2.fc32.x86_64.rpm 9.6 MB/s | 384 kB 00:00 (7/51): jbigkit-libs-2.1-18.fc32.x86_64.rpm 18 MB/s | 53 kB 00:00 (8/51): lcms2-2.9-7.fc32.x86_64.rpm 45 MB/s | 167 kB 00:00 (9/51): libXau-1.0.9-3.fc32.x86_64.rpm 12 MB/s | 31 kB 00:00 (10/51): libimagequant-2.12.6-2.fc32.x86_64.rpm 17 MB/s | 62 kB 00:00 (11/51): libjpeg-turbo-2.0.4-1.fc32.x86_64.rpm 36 MB/s | 168 kB 00:00 (12/51): libpng-1.6.37-3.fc32.x86_64.rpm 13 MB/s | 116 kB 00:00 (13/51): libtiff-4.1.0-2.fc32.x86_64.rpm 14 MB/s | 185 kB 00:00 (14/51): libwebp-1.1.0-2.fc32.x86_64.rpm 40 MB/s | 276 kB 00:00 (15/51): libxcb-1.13.1-4.fc32.x86_64.rpm 28 MB/s | 231 kB 00:00 (16/51): libyaml-0.2.3-1.fc33.x86_64.rpm 19 MB/s | 60 kB 00:00 (17/51): openjpeg2-2.3.1-6.fc33.x86_64.rpm 35 MB/s | 154 kB 00:00 (18/51): python-pip-wheel-20.0.2-3.fc33.noarch. 94 MB/s | 1.2 MB 00:00 (19/51): python-rpm-macros-3.8-2.fc33.noarch.rp 3.6 MB/s | 13 kB 00:00 (20/51): python-setuptools-wheel-46.1.3-1.fc33. 49 MB/s | 293 kB 00:00 (21/51): python3-3.8.2-2.fc33.x86_64.rpm 4.4 MB/s | 30 kB 00:00 (22/51): python3-atomicwrites-1.3.0-7.fc32.noar 2.2 MB/s | 22 kB 00:00 (23/51): python3-tzwhere-3.0.3-1.fc33.noarch.rp 67 MB/s | 23 MB 00:00 (24/51): python3-attrs-19.3.0-2.fc32.noarch.rpm 489 kB/s | 67 kB 00:00 (25/51): python3-chardet-3.0.4-15.fc32.noarch.r 23 MB/s | 194 kB 00:00 (26/51): python3-dateutil-2.8.0-8.fc32.noarch.r 25 MB/s | 291 kB 00:00 (27/51): python3-devel-3.8.2-2.fc33.x86_64.rpm 17 MB/s | 202 kB 00:00 (28/51): python3-idna-2.8-6.fc32.noarch.rpm 13 MB/s | 97 kB 00:00 (29/51): python3-libs-3.8.2-2.fc33.x86_64.rpm 107 MB/s | 7.4 MB 00:00 (30/51): python3-more-itertools-7.2.0-4.fc32.no 10 MB/s | 56 kB 00:00 (31/51): geos-3.8.1-1.fc33.x86_64.rpm 1.0 MB/s | 652 kB 00:00 (32/51): python3-gpxpy-1.4.0-1.fc32.noarch.rpm 236 kB/s | 76 kB 00:00 (33/51): python3-packaging-20.3-1.fc33.noarch.r 12 MB/s | 66 kB 00:00 (34/51): python3-pluggy-0.13.0-2.fc32.noarch.rp 7.9 MB/s | 38 kB 00:00 (35/51): python3-py-1.8.0-8.fc32.noarch.rpm 17 MB/s | 421 kB 00:00 (36/51): python3-pyparsing-2.4.7-1.fc33.noarch. 13 MB/s | 150 kB 00:00 (37/51): python3-pysocks-1.7.1-4.fc32.noarch.rp 8.7 MB/s | 35 kB 00:00 (38/51): python3-pytest-4.6.9-2.fc32.noarch.rpm 53 MB/s | 1.3 MB 00:00 (39/51): python3-pytz-2019.3-2.fc32.noarch.rpm 9.0 MB/s | 48 kB 00:00 (40/51): python3-pyyaml-5.3.1-1.fc33.x86_64.rpm 30 MB/s | 202 kB 00:00 (41/51): python3-requests-2.23.0-1.fc33.noarch. 19 MB/s | 112 kB 00:00 (42/51): python3-rpm-generators-11-2.fc33.noarc 6.2 MB/s | 25 kB 00:00 (43/51): python3-rpm-macros-3.8-2.fc33.noarch.r 4.4 MB/s | 12 kB 00:00 (44/51): python3-olefile-0.46-9.fc32.noarch.rpm 169 kB/s | 57 kB 00:00 (45/51): python3-setuptools-46.1.3-1.fc33.noarc 72 MB/s | 594 kB 00:00 (46/51): python3-six-1.14.0-2.fc32.noarch.rpm 7.0 MB/s | 36 kB 00:00 (47/51): python3-tqdm-4.45.0-1.fc33.noarch.rpm 849 kB/s | 108 kB 00:00 (48/51): python3-urllib3-1.25.8-1.fc33.noarch.r 30 MB/s | 173 kB 00:00 (49/51): python3-wcwidth-0.1.9-1.fc33.noarch.rp 5.1 MB/s | 33 kB 00:00 (50/51): python3-pillow-7.1.1-1.fc33.x86_64.rpm 1.3 MB/s | 669 kB 00:00 (51/51): python3-shapely-1.7-2b1.fc32.x86_64.rp 367 kB/s | 470 kB 00:01 -------------------------------------------------------------------------------- Total 16 MB/s | 40 MB 00:02 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : python-rpm-macros-3.8-2.fc33.noarch 1/51 Installing : libjpeg-turbo-2.0.4-1.fc32.x86_64 2/51 Installing : python3-rpm-macros-3.8-2.fc33.noarch 3/51 Installing : python-setuptools-wheel-46.1.3-1.fc33.noarch 4/51 Installing : python-pip-wheel-20.0.2-3.fc33.noarch 5/51 Installing : openjpeg2-2.3.1-6.fc33.x86_64 6/51 Installing : libyaml-0.2.3-1.fc33.x86_64 7/51 Installing : libwebp-1.1.0-2.fc32.x86_64 8/51 Installing : libpng-2:1.6.37-3.fc32.x86_64 9/51 Installing : freetype-2.10.1-2.fc32.x86_64 10/51 Installing : libimagequant-2.12.6-2.fc32.x86_64 11/51 Installing : libXau-1.0.9-3.fc32.x86_64 12/51 Installing : libxcb-1.13.1-4.fc32.x86_64 13/51 Installing : lcms2-2.9-7.fc32.x86_64 14/51 Installing : jbigkit-libs-2.1-18.fc32.x86_64 15/51 Installing : libtiff-4.1.0-2.fc32.x86_64 16/51 Installing : geos-3.8.1-1.fc33.x86_64 17/51 Installing : gdbm-libs-1:1.18.1-3.fc32.x86_64 18/51 Installing : python3-setuptools-46.1.3-1.fc33.noarch 19/51 Installing : python3-3.8.2-2.fc33.x86_64 20/51 Installing : python3-libs-3.8.2-2.fc33.x86_64 21/51 Installing : python3-six-1.14.0-2.fc32.noarch 22/51 Installing : python3-idna-2.8-6.fc32.noarch 23/51 Installing : python3-construct-2.8.8-1.fc33.noarch 24/51 Installing : python3-atomicwrites-1.3.0-7.fc32.noarch 25/51 Installing : python3-attrs-19.3.0-2.fc32.noarch 26/51 Installing : python3-chardet-3.0.4-15.fc32.noarch 27/51 Installing : python3-more-itertools-7.2.0-4.fc32.noarch 28/51 Installing : python3-olefile-0.46-9.fc32.noarch 29/51 Installing : python3-pluggy-0.13.0-2.fc32.noarch 30/51 Installing : python3-py-1.8.0-8.fc32.noarch 31/51 Installing : python3-pyparsing-2.4.7-1.fc33.noarch 32/51 Installing : python3-packaging-20.3-1.fc33.noarch 33/51 Installing : python3-pysocks-1.7.1-4.fc32.noarch 34/51 Installing : python3-urllib3-1.25.8-1.fc33.noarch 35/51 Installing : python3-rpm-generators-11-2.fc33.noarch 36/51 Installing : python3-shapely-1.7-2b1.fc32.x86_64 37/51 Installing : python3-wcwidth-0.1.9-1.fc33.noarch 38/51 Installing : python3-pytest-4.6.9-2.fc32.noarch 39/51 Installing : python3-tzwhere-3.0.3-1.fc33.noarch 40/51 Installing : python3-devel-3.8.2-2.fc33.x86_64 41/51 Installing : python3-requests-2.23.0-1.fc33.noarch 42/51 Installing : python3-pillow-7.1.1-1.fc33.x86_64 43/51 Installing : python3-pymp4-1.1.0-1.fc33.noarch 44/51 Installing : python3-dateutil-1:2.8.0-8.fc32.noarch 45/51 Installing : python3-ExifRead-2.1.2-1.fc33.noarch 46/51 Installing : python3-pynmea2-1.15.0-1.fc33.noarch 47/51 Installing : python3-gpxpy-1.4.0-1.fc32.noarch 48/51 Installing : python3-pytz-2019.3-2.fc32.noarch 49/51 Installing : python3-pyyaml-5.3.1-1.fc33.x86_64 50/51 Installing : python3-tqdm-4.45.0-1.fc33.noarch 51/51 Running scriptlet: python3-tqdm-4.45.0-1.fc33.noarch 51/51 Verifying : python3-ExifRead-2.1.2-1.fc33.noarch 1/51 Verifying : python3-construct-2.8.8-1.fc33.noarch 2/51 Verifying : python3-pymp4-1.1.0-1.fc33.noarch 3/51 Verifying : python3-pynmea2-1.15.0-1.fc33.noarch 4/51 Verifying : python3-tzwhere-3.0.3-1.fc33.noarch 5/51 Verifying : freetype-2.10.1-2.fc32.x86_64 6/51 Verifying : gdbm-libs-1:1.18.1-3.fc32.x86_64 7/51 Verifying : geos-3.8.1-1.fc33.x86_64 8/51 Verifying : jbigkit-libs-2.1-18.fc32.x86_64 9/51 Verifying : lcms2-2.9-7.fc32.x86_64 10/51 Verifying : libXau-1.0.9-3.fc32.x86_64 11/51 Verifying : libimagequant-2.12.6-2.fc32.x86_64 12/51 Verifying : libjpeg-turbo-2.0.4-1.fc32.x86_64 13/51 Verifying : libpng-2:1.6.37-3.fc32.x86_64 14/51 Verifying : libtiff-4.1.0-2.fc32.x86_64 15/51 Verifying : libwebp-1.1.0-2.fc32.x86_64 16/51 Verifying : libxcb-1.13.1-4.fc32.x86_64 17/51 Verifying : libyaml-0.2.3-1.fc33.x86_64 18/51 Verifying : openjpeg2-2.3.1-6.fc33.x86_64 19/51 Verifying : python-pip-wheel-20.0.2-3.fc33.noarch 20/51 Verifying : python-rpm-macros-3.8-2.fc33.noarch 21/51 Verifying : python-setuptools-wheel-46.1.3-1.fc33.noarch 22/51 Verifying : python3-3.8.2-2.fc33.x86_64 23/51 Verifying : python3-atomicwrites-1.3.0-7.fc32.noarch 24/51 Verifying : python3-attrs-19.3.0-2.fc32.noarch 25/51 Verifying : python3-chardet-3.0.4-15.fc32.noarch 26/51 Verifying : python3-dateutil-1:2.8.0-8.fc32.noarch 27/51 Verifying : python3-devel-3.8.2-2.fc33.x86_64 28/51 Verifying : python3-gpxpy-1.4.0-1.fc32.noarch 29/51 Verifying : python3-idna-2.8-6.fc32.noarch 30/51 Verifying : python3-libs-3.8.2-2.fc33.x86_64 31/51 Verifying : python3-more-itertools-7.2.0-4.fc32.noarch 32/51 Verifying : python3-olefile-0.46-9.fc32.noarch 33/51 Verifying : python3-packaging-20.3-1.fc33.noarch 34/51 Verifying : python3-pillow-7.1.1-1.fc33.x86_64 35/51 Verifying : python3-pluggy-0.13.0-2.fc32.noarch 36/51 Verifying : python3-py-1.8.0-8.fc32.noarch 37/51 Verifying : python3-pyparsing-2.4.7-1.fc33.noarch 38/51 Verifying : python3-pysocks-1.7.1-4.fc32.noarch 39/51 Verifying : python3-pytest-4.6.9-2.fc32.noarch 40/51 Verifying : python3-pytz-2019.3-2.fc32.noarch 41/51 Verifying : python3-pyyaml-5.3.1-1.fc33.x86_64 42/51 Verifying : python3-requests-2.23.0-1.fc33.noarch 43/51 Verifying : python3-rpm-generators-11-2.fc33.noarch 44/51 Verifying : python3-rpm-macros-3.8-2.fc33.noarch 45/51 Verifying : python3-setuptools-46.1.3-1.fc33.noarch 46/51 Verifying : python3-shapely-1.7-2b1.fc32.x86_64 47/51 Verifying : python3-six-1.14.0-2.fc32.noarch 48/51 Verifying : python3-tqdm-4.45.0-1.fc33.noarch 49/51 Verifying : python3-urllib3-1.25.8-1.fc33.noarch 50/51 Verifying : python3-wcwidth-0.1.9-1.fc33.noarch 51/51 Installed: freetype-2.10.1-2.fc32.x86_64 gdbm-libs-1:1.18.1-3.fc32.x86_64 geos-3.8.1-1.fc33.x86_64 jbigkit-libs-2.1-18.fc32.x86_64 lcms2-2.9-7.fc32.x86_64 libXau-1.0.9-3.fc32.x86_64 libimagequant-2.12.6-2.fc32.x86_64 libjpeg-turbo-2.0.4-1.fc32.x86_64 libpng-2:1.6.37-3.fc32.x86_64 libtiff-4.1.0-2.fc32.x86_64 libwebp-1.1.0-2.fc32.x86_64 libxcb-1.13.1-4.fc32.x86_64 libyaml-0.2.3-1.fc33.x86_64 openjpeg2-2.3.1-6.fc33.x86_64 python-pip-wheel-20.0.2-3.fc33.noarch python-rpm-macros-3.8-2.fc33.noarch python-setuptools-wheel-46.1.3-1.fc33.noarch python3-3.8.2-2.fc33.x86_64 python3-ExifRead-2.1.2-1.fc33.noarch python3-atomicwrites-1.3.0-7.fc32.noarch python3-attrs-19.3.0-2.fc32.noarch python3-chardet-3.0.4-15.fc32.noarch python3-construct-2.8.8-1.fc33.noarch python3-dateutil-1:2.8.0-8.fc32.noarch python3-devel-3.8.2-2.fc33.x86_64 python3-gpxpy-1.4.0-1.fc32.noarch python3-idna-2.8-6.fc32.noarch python3-libs-3.8.2-2.fc33.x86_64 python3-more-itertools-7.2.0-4.fc32.noarch python3-olefile-0.46-9.fc32.noarch python3-packaging-20.3-1.fc33.noarch python3-pillow-7.1.1-1.fc33.x86_64 python3-pluggy-0.13.0-2.fc32.noarch python3-py-1.8.0-8.fc32.noarch python3-pymp4-1.1.0-1.fc33.noarch python3-pynmea2-1.15.0-1.fc33.noarch python3-pyparsing-2.4.7-1.fc33.noarch python3-pysocks-1.7.1-4.fc32.noarch python3-pytest-4.6.9-2.fc32.noarch python3-pytz-2019.3-2.fc32.noarch python3-pyyaml-5.3.1-1.fc33.x86_64 python3-requests-2.23.0-1.fc33.noarch python3-rpm-generators-11-2.fc33.noarch python3-rpm-macros-3.8-2.fc33.noarch python3-setuptools-46.1.3-1.fc33.noarch python3-shapely-1.7-2b1.fc32.x86_64 python3-six-1.14.0-2.fc32.noarch python3-tqdm-4.45.0-1.fc33.noarch python3-tzwhere-3.0.3-1.fc33.noarch python3-urllib3-1.25.8-1.fc33.noarch python3-wcwidth-0.1.9-1.fc33.noarch Complete! Finish: build setup for mapillary_tools-0.5.0-1.fc33.src.rpm Start: rpmbuild mapillary_tools-0.5.0-1.fc33.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1586217600 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.t92YFt + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf mapillary_tools-0.5.0 + /usr/bin/unzip -qq /builddir/build/SOURCES/mapillary_tools-0.5.0.zip + STATUS=0 + '[' 0 -ne 0 ']' + cd mapillary_tools-0.5.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + 2to3 -w -n ./ RefactoringTool: Skipping optional fixer: buffer RefactoringTool: Skipping optional fixer: idioms RefactoringTool: Skipping optional fixer: set_literal RefactoringTool: Skipping optional fixer: ws_comma RefactoringTool: No changes to ./setup.py RefactoringTool: Refactored ./bin/download_images.py RefactoringTool: Refactored ./mapillary_tools/__init__.py RefactoringTool: Refactored ./mapillary_tools/apply_camera_specific_config.py RefactoringTool: Refactored ./mapillary_tools/config.py RefactoringTool: Refactored ./mapillary_tools/download.py RefactoringTool: Refactored ./mapillary_tools/edit_config.py --- ./bin/download_images.py (original) +++ ./bin/download_images.py (refactored) @@ -1,6 +1,6 @@ #!/usr/bin/env python -import urllib2 -import urllib +import urllib.request, urllib.error, urllib.parse +import urllib.request, urllib.parse, urllib.error import json import os import shutil @@ -34,18 +34,18 @@ ''' # Create URL - params = urllib.urlencode(zip( + params = urllib.parse.urlencode(list(zip( ['client_id', 'bbox', 'per_page'], [CLIENT_ID, ','.join([str(min_lon), str(min_lat), str( max_lon), str(max_lat)]), str(max_results)] - )) - print(MAPILLARY_API_IM_SEARCH_URL + params) + ))) + print((MAPILLARY_API_IM_SEARCH_URL + params)) # Get data from server, then parse JSON - query = urllib2.urlopen(MAPILLARY_API_IM_SEARCH_URL + params).read() + query = urllib.request.urlopen(MAPILLARY_API_IM_SEARCH_URL + params).read() query = json.loads(query)['features'] - print("Result: {0} images in area.".format(len(query))) + print(("Result: {0} images in area.".format(len(query)))) return query @@ -67,18 +67,18 @@ try: # Get image and save to disk - image = urllib.URLopener() + image = urllib.request.URLopener() image.retrieve(url, path + filename) # Log filename and GPS location coords = ",".join(map(str, im['geometry']['coordinates'])) im_list.append([filename, coords]) - print("Successfully downloaded: {0}".format(filename)) + print(("Successfully downloaded: {0}".format(filename))) except KeyboardInterrupt: break except: - print("Failed to download: {0}".format(filename)) + print(("Failed to download: {0}".format(filename))) return im_list --- ./mapillary_tools/__init__.py (original) +++ ./mapillary_tools/__init__.py (refactored) @@ -1,28 +1,28 @@ -import geo -import processing -import uploader -import config -import exif_aux -import exif_read -import exif_write -import ffprobe -import gps_parser -import upload -import process_user_properties -import process_geotag_properties -import process_sequence_properties -import process_upload_params -import process_import_meta_properties -import insert_MAPJson -import process_video -import gpx_from_gopro -import gpmf -import ffmpeg -import commands -import process_csv -import interpolation -import post_process -import apply_camera_specific_config -import camera_support +from . import geo +from . import processing +from . import uploader +from . import config +from . import exif_aux +from . import exif_read +from . import exif_write +from . import ffprobe +from . import gps_parser +from . import upload +from . import process_user_properties +from . import process_geotag_properties +from . import process_sequence_properties +from . import process_upload_params +from . import process_import_meta_properties +from . import insert_MAPJson +from . import process_video +from . import gpx_from_gopro +from . import gpmf +from . import ffmpeg +from . import commands +from . import process_csv +from . import interpolation +from . import post_process +from . import apply_camera_specific_config +from . import camera_support VERSION = "0.5.0" --- ./mapillary_tools/apply_camera_specific_config.py (original) +++ ./mapillary_tools/apply_camera_specific_config.py (refactored) @@ -1,7 +1,7 @@ def apply_camera_specific_config(vars_args): # Check for Blackvue if "device_make" in vars_args and vars_args['device_make'].lower()=='blackvue' or "geotag_source" in vars_args and vars_args["geotag_source"] == 'blackvue_videos': - from camera_support import prepare_blackvue_videos + from .camera_support import prepare_blackvue_videos vars_args = prepare_blackvue_videos.apply_config_blackvue(vars_args) # Potentially check for other cameras i.e. Garmin return vars_args --- ./mapillary_tools/config.py (original) +++ ./mapillary_tools/config.py (refactored) @@ -1,11 +1,11 @@ import os -import ConfigParser +import configparser def load_config(config_path): config = None if os.path.isfile(config_path): - config = ConfigParser.ConfigParser() + config = configparser.ConfigParser() try: config.optionxform = str config.read(config_path) @@ -38,19 +38,19 @@ try: config.add_section(user_name) except: - print("Error adding new user section, for user_name " + user_name) + print(("Error adding new user section, for user_name " + user_name)) else: - print("Error, user " + user_name + " already exists") + print(("Error, user " + user_name + " already exists")) save_config(config, config_path) def set_user_items(config, user_name, user_items): - for key in user_items.keys(): + for key in list(user_items.keys()): try: config.set(user_name, key, user_items[key]) except: - print("Error setting config key " + key + " with value " + - str(user_items[key]) + " for user_name " + user_name) + print(("Error setting config key " + key + " with value " + + str(user_items[key]) + " for user_name " + user_name)) return config --- ./mapillary_tools/download.py (original) +++ ./mapillary_tools/download.py (refactored) @@ -1,6 +1,6 @@ -import processing -import uploader -from post_process import save_local_mapping +from . import processing +from . import uploader +from .post_process import save_local_mapping from tqdm import tqdm import os import signal @@ -27,7 +27,7 @@ response = requests.get(download_url, stream=True) if response.status_code != 200: - print(response.json()) + print((response.json())) return False with open(filename, "wb") as f: @@ -107,7 +107,7 @@ not_downloaded += 1 if not_downloaded > 0: - print("Trying to download {} not yet downloaded files".format(not_downloaded)) + print(("Trying to download {} not yet downloaded files".format(not_downloaded))) if do_sleep: print("Waiting 10 seconds before next try") time.sleep(10) @@ -130,7 +130,7 @@ try: user_properties = uploader.authenticate_user(user_name) except: - print("Error, user authentication failed for user " + user_name) + print(("Error, user authentication failed for user " + user_name)) print("Make sure your user credentials are correct, user authentication is required for images to be downloaded from Mapillary.") return None if "user_upload_token" in user_properties: --- ./mapillary_tools/edit_config.py (original) +++ ./mapillary_tools/edit_config.py (refactored) @@ -1,7 +1,7 @@ import mapillary_tools.config as config import os import sys -import uploader +from . import uploader ''' (re)authenticate ''' @@ -20,7 +20,7 @@ try: edit_config_with_jwt(jwt, config_file_path) except Exception as e: - print('Error: %s' % e) + print(('Error: %s' % e)) sys.exit(1) return @@ -44,17 +44,17 @@ section = user_name if not section: - section = raw_input( + section = input( "Enter the Mapillary user name you would like to (re)authenticate : ") # safety check if section exists, otherwise add it if section in config_object.sections(): if not force_overwrite: print("Warning, user name exists with the following items : ") - print(config.load_user(config_object, section)) - sure = raw_input( + print((config.load_user(config_object, section))) + sure = input( "Are you sure you would like to re-authenticate[y,Y,yes,Yes]?(current parameters will be overwritten)") if sure not in ["y", "Y", "yes", "Yes"]: - print("Aborting re-authentication. If you would like to re-authenticate user name {}, rerun this command and confirm re-authentication.".format(section))RefactoringTool: Refactored ./mapillary_tools/exif_aux.py RefactoringTool: Refactored ./mapillary_tools/exif_read.py RefactoringTool: Refactored ./mapillary_tools/exif_write.py RefactoringTool: No changes to ./mapillary_tools/ffmpeg.py RefactoringTool: Refactored ./mapillary_tools/ffprobe.py RefactoringTool: Refactored ./mapillary_tools/geo.py RefactoringTool: No changes to ./mapillary_tools/gpmf.py RefactoringTool: Refactored ./mapillary_tools/gps_parser.py RefactoringTool: Refactored ./mapillary_tools/gpx_from_blackvue.py + print(("Aborting re-authentication. If you would like to re-authenticate user name {}, rerun this command and confirm re-authentication.".format(section))) sys.exit() else: config_object.add_section(section) @@ -62,13 +62,13 @@ if user_email and user_password: user_key = uploader.get_user_key(section) if not user_key: - print("User name {} does not exist, please try again or contact Mapillary user support.".format( - section)) + print(("User name {} does not exist, please try again or contact Mapillary user support.".format( + section))) sys.exit(1) upload_token = uploader.get_upload_token(user_email, user_password) if not upload_token: - print("Authentication failed for user name " + - section + ", please try again.") + print(("Authentication failed for user name " + + section + ", please try again.")) sys.exit(1) user_permission_hash, user_signature_hash = uploader.get_user_hashes( user_key, upload_token) @@ -87,8 +87,8 @@ user_items = uploader.prompt_user_for_user_items(section) if not user_items: - print("Authentication failed for user name " + - section + ", please try again.") + print(("Authentication failed for user name " + + section + ", please try again.")) sys.exit(1) config.update_config(config_file_path, section, user_items) --- ./mapillary_tools/exif_aux.py (original) +++ ./mapillary_tools/exif_aux.py (refactored) @@ -1,6 +1,6 @@ -from exif_read import ExifRead +from .exif_read import ExifRead import os -import processing +from . import processing def exif_gps_fields(): --- ./mapillary_tools/exif_read.py (original) +++ ./mapillary_tools/exif_read.py (refactored) @@ -4,7 +4,7 @@ import sys import exifread import datetime -from geo import normalize_bearing +from .geo import normalize_bearing import uuid sys.path.insert(0, os.path.abspath( os.path.join(os.path.dirname(__file__), ".."))) @@ -335,7 +335,7 @@ fields = ['Image Orientation'] orientation, _ = self._extract_alternative_fields( fields, default=1, field_type=int) - if orientation not in range(1, 9): + if orientation not in list(range(1, 9)): return 1 return orientation @@ -365,8 +365,8 @@ if subrexif in self.tags: vflag = True if not vflag: - print("Missing required EXIF tag: {0} for image {1}".format( - rexif[0], self.filename)) + print(("Missing required EXIF tag: {0} for image {1}".format( + rexif[0], self.filename))) return False return True --- ./mapillary_tools/exif_write.py (original) +++ ./mapillary_tools/exif_write.py (refactored) @@ -2,7 +2,7 @@ import json import piexif -from geo import decimal_to_dms +from .geo import decimal_to_dms from .error import print_error @@ -17,10 +17,10 @@ self._ef = piexif.load(filename) except IOError: etype, value, traceback = sys.exc_info() - print >> sys.stderr, "Error opening file:", value + print("Error opening file:", value, file=sys.stderr) except ValueError: etype, value, traceback = sys.exc_info() - print >> sys.stderr, "Error opening file:", value + print("Error opening file:", value, file=sys.stderr) def add_image_description(self, dict): """Add a dict to image description.""" @@ -91,8 +91,8 @@ try: self._ef[main_key][tag_key] = value except: - print("could not set tag {} under {} with value {}".format( - tag_key, main_key, value)) + print(("could not set tag {} under {} with value {}".format( + tag_key, main_key, value))) def write(self, filename=None): """Save exif data to file.""" @@ -108,4 +108,4 @@ except IOError: type, value, traceback = sys.exc_info() - print >> sys.stderr, "Error saving file:", value + print("Error saving file:", value, file=sys.stderr) --- ./mapillary_tools/ffprobe.py (original) +++ ./mapillary_tools/ffprobe.py (refactored) @@ -79,7 +79,7 @@ def __init__(self,datalines): for a in datalines: if re.match(r'^.+=.+$', a) is None: - print "Warning: detected incorrect stream metadata line format: %s" % a + print("Warning: detected incorrect stream metadata line format: %s" % a) else: (key,val)=a.strip().split('=') key = key.lstrip("TAG:") @@ -126,7 +126,7 @@ try: size=(int(self.__dict__['width']),int(self.__dict__['height'])) except Exception as e: - print "None integer size %s:%s" %(str(self.__dict__['width']),str(+self.__dict__['height'])) + print("None integer size %s:%s" %(str(self.__dict__['width']),str(+self.__dict__['height']))) size=(0,0) return size @@ -151,7 +151,7 @@ try: f=int(self.__dict__['nb_frames']) except Exception as e: - print "None integer frame count" + print("None integer frame count") return f def durationSeconds(self): @@ -165,7 +165,7 @@ try: f=float(self.__dict__['duration']) except Exception as e: - print "None numeric duration" + print("None numeric duration") return f def language(self): @@ -213,8 +213,8 @@ try: b=int(self.__dict__['bit_rate']) except Exception as e: - print "None integer bitrate" + print("None integer bitrate") return b if __name__ == '__main__': - print "Module ffprobe" + print("Module ffprobe") --- ./mapillary_tools/geo.py (original) +++ ./mapillary_tools/geo.py (refactored) @@ -219,8 +219,8 @@ raise ValueError( "time t not in scope of gpx file by {} seconds".format(dt)) else: - print( - "time t not in scope of gpx file by {} seconds, extrapolating...".format(dt)) + print(( + "time t not in scope of gpx file by {} seconds, extrapolating...".format(dt))) if t < points[0][0]: before = points[0] --- ./mapillary_tools/gps_parser.py (original) +++ ./mapillary_tools/gps_parser.py (refactored) @@ -4,13 +4,13 @@ import os import datetime import time -from geo import gpgga_to_dms, utc_to_localtime +from .geo import gpgga_to_dms, utc_to_localtime try: import gpxpy import pynmea2 except ImportError as error: - print error + print(error) ''' Methods for parsing gps data from various file format e.g. GPX, NMEA, SRT. --- ./mapillary_tools/gpx_from_blackvue.py (original) +++ ./mapillary_tools/gpx_from_blackvue.py (refactored) @@ -6,9 +6,9 @@ import sys import re import pynmea2 -from geo import write_gpx -from geo import get_max_distance_from_start -from geo import get_total_distance_traveled +from .geo import write_gpx +from .geo import get_max_distance_from_start +from .geo import get_total_distance_traveled from pymp4.parser import Box from construct.core import RangeError, ConstError @@ -103,8 +103,8 @@ points.append((timestamp, lat, lon, alt)) except Exception as e: - print( - "Error in parsing gps trace to extract time and gps information, nmea parsing failed due to {}".format(e)) + print(( + "Error in parsing gps trace to extract time and gps information, nmea parsing failed due to {}".format(e)))RefactoringTool: Refactored ./mapillary_tools/gpx_from_exif.py RefactoringTool: Refactored ./mapillary_tools/gpx_from_gopro.py RefactoringTool: Refactored ./mapillary_tools/insert_MAPJson.py RefactoringTool: Refactored ./mapillary_tools/interpolation.py RefactoringTool: Refactored ./mapillary_tools/ipc.py RefactoringTool: Refactored ./mapillary_tools/post_process.py #If there are no points after parsing just return empty vector if points == []: @@ -167,8 +167,8 @@ try: bv_data = get_points_from_bv(bv_video,use_nmea_stream_timestamp) except Exception as e: - print( - "Warning, could not extract gps from video {} due to {}, video will be skipped...".format(bv_video, e)) + print(( + "Warning, could not extract gps from video {} due to {}, video will be skipped...".format(bv_video, e))) if bv_data != []: is_stationary_video = is_video_stationary(get_max_distance_from_start(bv_data),get_total_distance_traveled(bv_data)) else: --- ./mapillary_tools/gpx_from_exif.py (original) +++ ./mapillary_tools/gpx_from_exif.py (refactored) @@ -1,5 +1,5 @@ -import exif_read -from geo import write_gpx +from . import exif_read +from .geo import write_gpx def get_points_from_exif(file_list, verbose=False): @@ -10,21 +10,21 @@ exif = exif_read.ExifRead(file) except: if verbose: - print("Warning, EXIF could not be read for image {}.".format(file)) + print(("Warning, EXIF could not be read for image {}.".format(file))) continue try: lon, lat = exif.extract_lon_lat() except: if verbose: - print( - "Warning {} image latitude or longitude tag not in EXIF.".format(file)) + print(( + "Warning {} image latitude or longitude tag not in EXIF.".format(file))) continue try: timestamp = exif.extract_capture_time() except: if verbose: - print( - "Warning {} image capture time tag not in EXIF.".format(file)) + print(( + "Warning {} image capture time tag not in EXIF.".format(file))) continue if lon != None and lat != None and timestamp != None: point = point + (timestamp, lat, lon) --- ./mapillary_tools/gpx_from_gopro.py (original) +++ ./mapillary_tools/gpx_from_gopro.py (refactored) @@ -2,9 +2,9 @@ import datetime import os -from ffmpeg import extract_stream, get_ffprobe -from gpmf import parse_bin, interpolate_times -from geo import write_gpx +from .ffmpeg import extract_stream, get_ffprobe +from .gpmf import parse_bin, interpolate_times +from .geo import write_gpx # author https://github.com/stilldavid --- ./mapillary_tools/insert_MAPJson.py (original) +++ ./mapillary_tools/insert_MAPJson.py (refactored) @@ -2,8 +2,8 @@ import time import uuid import sys -import processing -import uploader +from . import processing +from . import uploader from tqdm import tqdm from .error import print_error @@ -25,8 +25,8 @@ # sanity check if video file is passed if video_import_path and not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # in case of video processing, adjust the import path --- ./mapillary_tools/interpolation.py (original) +++ ./mapillary_tools/interpolation.py (refactored) @@ -1,12 +1,12 @@ -import processing -import uploader +from . import processing +from . import uploader import os import sys -from geo import interpolate_lat_lon -from exif_write import ExifEdit -from exif_read import ExifRead -from process_import_meta_properties import add_meta_tag -import process_csv +from .geo import interpolate_lat_lon +from .exif_write import ExifEdit +from .exif_read import ExifRead +from .process_import_meta_properties import add_meta_tag +from . import process_csv import csv import datetime from tqdm import tqdm @@ -30,8 +30,8 @@ timestamps_formated = [datetime_timestamp.strftime( time_format) for datetime_timestamp in timestamps_interpolated] except: - print("Formating timestamps from datetime to time format {} failed...".format( - time_format)) + print(("Formating timestamps from datetime to time format {} failed...".format( + time_format))) sys.exit(1) return timestamps_formated @@ -104,7 +104,7 @@ # get list of files to process process_file_list = uploader.get_total_file_list(import_path) if not len(process_file_list): - print("No images found in the import path " + import_path) + print(("No images found in the import path " + import_path)) sys.exit(1) if data == "missing_gps": @@ -113,11 +113,11 @@ geotags, missing_geotags = processing.get_images_geotags( process_file_list) if not len(missing_geotags): - print("No images in directory {} missing geotags, exiting...".format( - import_path)) + print(("No images in directory {} missing geotags, exiting...".format( + import_path))) sys.exit(1) if not len(geotags): - print("No images in directory {} with geotags.".format(import_path)) + print(("No images in directory {} with geotags.".format(import_path))) sys.exit(1) sys.stdout.write("Interpolating gps for {} images missing geotags.".format( @@ -143,14 +143,14 @@ exif_edit.add_direction(bearing) else: if verbose: - print( - "Warning, bearing not interpolated for image {}.".format(image)) + print(( + "Warning, bearing not interpolated for image {}.".format(image))) if elevation: exif_edit.add_altitude(elevation) else: if verbose: - print( - "Warning, altitude not interpolated for image {}.".format(image)) + print(( + "Warning, altitude not interpolated for image {}.".format(image))) meta = {} @@ -176,7 +176,7 @@ if timestamp: timestamps.append(timestamp) else: - print("Capture could not be extracted for image {}.".format(image)) + print(("Capture could not be extracted for image {}.".format(image))) # interpolate timestamps_interpolated = processing.interpolate_timestamp( @@ -187,7 +187,7 @@ counter = 0 # write back - for image, timestamp in tqdm(zip(process_file_list, timestamps_interpolated), desc="Writing capture time in image EXIF"): + for image, timestamp in tqdm(list(zip(process_file_list, timestamps_interpolated)), desc="Writing capture time in image EXIF"): # print progress counter += 1 --- ./mapillary_tools/ipc.py (original) +++ ./mapillary_tools/ipc.py (refactored) @@ -40,8 +40,8 @@ try: __write(obj) except Exception as e: - print('IPC error for: %s' % obj) - print('Error: %s' % e) + print(('IPC error for: %s' % obj)) + print(('Error: %s' % e)) def send_error(message): send('error', {'message': message}) --- ./mapillary_tools/post_process.py (original) +++ ./mapillary_tools/post_process.py (refactored) @@ -1,12 +1,12 @@ import os import sys -import processing -import uploader +from . import processing +from . import uploader import json import shutil from tqdm import tqdm import csv -import exif_read +from . import exif_read from . import ipc @@ -33,7 +33,7 @@ destination_mapping[image] = { "sequence": str(sequence_counter)} else: - print("MAPSequenceUUID could not be read for image {}".format(image))RefactoringTool: Refactored ./mapillary_tools/process_csv.py RefactoringTool: Refactored ./mapillary_tools/process_geotag_properties.py + print(("MAPSequenceUUID could not be read for image {}".format(image))) return destination_mapping @@ -65,7 +65,7 @@ if "MAPPhotoUUID" in image_description: image_file_uuid = str(image_description["MAPPhotoUUID"]) else: - print("Warning, image {} EXIF does not contain mapillary image description and mapillary_image_description.json log file does not exist. Try to process the image using mapillary_tools.".format(file)) + print(("Warning, image {} EXIF does not contain mapillary image description and mapillary_image_description.json log file does not exist. Try to process the image using mapillary_tools.".format(file))) if image_file_uuid: local_mapping.append((relative_path, image_file_uuid)) return local_mapping @@ -93,8 +93,8 @@ # sanity check if video file is passed if video_import_path and not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) if move_all_images: move_sequences = True @@ -111,8 +111,8 @@ # basic check for all if not import_path or not os.path.isdir(import_path): - print("Error, import directory " + import_path + - " does not exist, exiting...") + print(("Error, import directory " + import_path + + " does not exist, exiting...")) sys.exit(1) if save_local_mapping: local_mapping = save_local_mapping(import_path) @@ -185,8 +185,8 @@ } summary_dict["process summary"]["duplicates"] = duplicates_file_list_count summary_dict["process summary"]["processed_not_yet_uploaded"] = to_be_uploaded_files_count - print("Import summary for import path {} :".format(import_path)) - print(json.dumps(summary_dict, indent=4)) + print(("Import summary for import path {} :".format(import_path))) + print((json.dumps(summary_dict, indent=4))) ipc.send('summary', summary_dict) @@ -195,8 +195,8 @@ processing.save_json(summary_dict, os.path.join( import_path, "mapillary_import_summary.json")) except Exception as e: - print("Could not save summary into json at {}, due to {}".format( - os.path.join(import_path, "mapillary_import_summary.json"), e)) + print(("Could not save summary into json at {}, due to {}".format( + os.path.join(import_path, "mapillary_import_summary.json"), e))) if list_file_status: status_list_dict = {} status_list_dict["successfully uploaded"] = uploaded_files @@ -205,20 +205,20 @@ status_list_dict["duplicates"] = duplicates_file_list status_list_dict["processed_not_yet_uploaded"] = to_be_uploaded_files print("") - print("List of file status for import path {} :".format(import_path)) - print(json.dumps(status_list_dict, indent=4)) + print(("List of file status for import path {} :".format(import_path))) + print((json.dumps(status_list_dict, indent=4))) if save_as_json: try: processing.save_json(status_list_dict, os.path.join( import_path, "mapillary_import_image_status_list.json")) except Exception as e: - print("Could not save image status list into json at {}, due to {}".format( - os.path.join(import_path, "mapillary_import_image_status_list.json"), e)) + print(("Could not save image status list into json at {}, due to {}".format( + os.path.join(import_path, "mapillary_import_image_status_list.json"), e))) split_import_path = split_import_path if split_import_path else import_path if any([move_sequences, move_duplicates, move_uploaded]): if not os.path.isdir(split_import_path): - print("Split import path {} does not exist.".format( - split_import_path)) + print(("Split import path {} does not exist.".format( + split_import_path))) sys.exit(1) destination_mapping = {} --- ./mapillary_tools/process_csv.py (original) +++ ./mapillary_tools/process_csv.py (refactored) @@ -1,10 +1,10 @@ -import processing -import uploader +from . import processing +from . import uploader import os import sys import datetime -import process_import_meta_properties -from exif_write import ExifEdit +from . import process_import_meta_properties +from .exif_write import ExifEdit import csv from tqdm import tqdm @@ -59,8 +59,8 @@ # check if types are valid for meta_type in meta_types: if meta_type not in META_DATA_TYPES: - print("Error, invalid meta data type, valid types are " + - str(META_DATA_TYPES)) + print(("Error, invalid meta data type, valid types are " + + str(META_DATA_TYPES))) sys.exit(1) return meta_columns, meta_names, meta_types @@ -168,7 +168,7 @@ process_import_meta_properties.add_meta_tag( meta, tag_type, tag_key, tag_value) except: - print("Error, meta data {} could not be extracted.".format(tag_key)) + print(("Error, meta data {} could not be extracted.".format(tag_key))) return meta @@ -180,7 +180,7 @@ if header: next(csvreader, None) - csv_data = zip(*csvreader) + csv_data = list(zip(*csvreader)) return csv_data @@ -206,8 +206,8 @@ # sanity checks if not import_path or not os.path.isdir(import_path): - print("Error, import directory " + import_path + - " doesnt not exist, exiting...") + print(("Error, import directory " + import_path + + " doesnt not exist, exiting...")) sys.exit(1) if not csv_path or not os.path.isfile(csv_path): @@ -217,7 +217,7 @@ # get list of file to process process_file_list = uploader.get_total_file_list(import_path) if not len(process_file_list): - print("No images found in the import path " + import_path) + print(("No images found in the import path " + import_path)) sys.exit(1) if gps_week_column != None and convert_gps_time == False: @@ -235,7 +235,7 @@ print("Error, csv column numbers start with 1, one of the columns specified is 0.") sys.exit(1) - column_indexes = map(lambda x: x - 1 if x else None, column_indexes) + column_indexes = [x - 1 if x else None for x in column_indexes] # checks for meta arguments if any meta_columns, meta_names, meta_types = validate_meta_data( @@ -261,7 +261,7 @@ # get image entry index image_index = get_image_index(image, file_names) if file_names else idx if image_index == None: - print("Warning, no entry found in csv file for image " + image) + print(("Warning, no entry found in csv file for image " + image)) continue # get required data @@ -299,5 +299,5 @@ try: exif_edit.write(filename=filename) except: - print("Error, image EXIF could not be written back for image " + image) + print(("Error, image EXIF could not be written back for image " + image)) return None --- ./mapillary_tools/process_geotag_properties.py (original) +++ ./mapillary_tools/process_geotag_properties.py (refactored) @@ -1,4 +1,4 @@ -import processing +from . import processing import os import sys from .error import print_error @@ -19,8 +19,8 @@ # sanity check if video file is passed if video_import_path and not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...")RefactoringTool: Refactored ./mapillary_tools/process_import_meta_properties.py RefactoringTool: Refactored ./mapillary_tools/process_sequence_properties.py RefactoringTool: Refactored ./mapillary_tools/process_upload_params.py RefactoringTool: Refactored ./mapillary_tools/process_user_properties.py RefactoringTool: Refactored ./mapillary_tools/process_video.py + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # in case of video processing, adjust the import path --- ./mapillary_tools/process_import_meta_properties.py (original) +++ ./mapillary_tools/process_import_meta_properties.py (refactored) @@ -1,15 +1,15 @@ import time import os import sys -import processing -import uploader -from exif_read import ExifRead +from . import processing +from . import uploader +from .exif_read import ExifRead from tqdm import tqdm from .error import print_error META_DATA_TYPES = {"strings": str, "doubles": float, - "longs": long, + "longs": int, "dates": int, "booleans": bool} @@ -132,8 +132,8 @@ exif = ExifRead(image) except: if verbose: - print("Warning, EXIF could not be read for image " + - image + ", import properties not read.") + print(("Warning, EXIF could not be read for image " + + image + ", import properties not read.")) return None try: import_meta_data_properties["MAPOrientation"] = exif.extract_orientation( @@ -181,8 +181,8 @@ # sanity check if video file is passed if video_import_path and not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # in case of video processing, adjust the import path --- ./mapillary_tools/process_sequence_properties.py (original) +++ ./mapillary_tools/process_sequence_properties.py (refactored) @@ -3,10 +3,10 @@ import datetime import time import sys -from exif_read import ExifRead -from geo import compute_bearing, gps_distance, diff_bearing, gps_speed -import processing -import uploader +from .exif_read import ExifRead +from .geo import compute_bearing, gps_distance, diff_bearing, gps_speed +from . import processing +from . import uploader from tqdm import tqdm from .error import print_error @@ -20,8 +20,8 @@ final_capture_times, import_path, verbose=False): - for image, direction, capture_time in tqdm(zip(final_file_list, - final_directions, final_capture_times), desc="Finalizing sequence process"): + for image, direction, capture_time in tqdm(list(zip(final_file_list, + final_directions, final_capture_times)), desc="Finalizing sequence process"): mapillary_description = { 'MAPSequenceUUID': sequence, 'MAPCompassHeading': { @@ -53,8 +53,8 @@ # sanity check if video file is passed if video_import_path and not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # in case of video processing, adjust the import path @@ -82,7 +82,7 @@ import_path) if not len(process_file_list): if verbose: - print("No images to run sequence process in root " + import_path) + print(("No images to run sequence process in root " + import_path)) print( "If the images have already been processed and not yet uploaded, they can be processed again, by passing the argument --rerun") else: @@ -110,7 +110,7 @@ root) if not len(process_file_list): if verbose: - print("No images to run sequence process in root " + root) + print(("No images to run sequence process in root " + root)) print( "If the images have already been processed and not yet uploaded, they can be processed again, by passing the argument --rerun") continue @@ -125,8 +125,8 @@ # --------------------------------------- if not keep_duplicates: if verbose: - print("Flagging images as duplicates if consecutive distance difference less than {} and angle difference less than {}".format( - duplicate_distance, duplicate_angle)) + print(("Flagging images as duplicates if consecutive distance difference less than {} and angle difference less than {}".format( + duplicate_distance, duplicate_angle))) # process for each sequence for sequence in sequences: @@ -157,8 +157,8 @@ computed_speed = gps_speed( computed_distances, computed_delta_ts) # in meters/second if len([x for x in computed_speed if x > MAX_CAPTURE_SPEED]) > 0: - print("Warning: The distance in sequence including images\n{}\nto\n{}\nis too large for the time difference (very high apparent capture speed). Are you sure timestamps and locations are correct?".format( - file_list[0], file_list[-1])) + print(("Warning: The distance in sequence including images\n{}\nto\n{}\nis too large for the time difference (very high apparent capture speed). Are you sure timestamps and locations are correct?".format( + file_list[0], file_list[-1]))) # INTERPOLATE TIMESTAMPS, in case of identical timestamps capture_times = processing.interpolate_timestamp(capture_times) --- ./mapillary_tools/process_upload_params.py (original) +++ ./mapillary_tools/process_upload_params.py (refactored) @@ -1,7 +1,7 @@ import os import sys -import processing -import uploader +from . import processing +from . import uploader from tqdm import tqdm from .error import print_error @@ -16,8 +16,8 @@ # sanity check if video file is passed if video_import_path and not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # in case of video processing, adjust the import path --- ./mapillary_tools/process_user_properties.py (original) +++ ./mapillary_tools/process_user_properties.py (refactored) @@ -1,4 +1,4 @@ -import processing +from . import processing import os import sys from .error import print_error @@ -17,8 +17,8 @@ # sanity check if video file is passed if video_import_path and not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # in case of video processing, adjust the import path --- ./mapillary_tools/process_video.py (original) +++ ./mapillary_tools/process_video.py (refactored) @@ -1,17 +1,17 @@ -from ffprobe import FFProbe +from .ffprobe import FFProbe import datetime import os -import processing +from . import processing import subprocess import sys -import uploader +from . import uploader from tqdm import tqdm import logging import io import struct from pymp4.parser import Box -from exif_write import ExifEdit +from .exif_write import ExifEdit ZERO_PADDING = 6 TIME_FORMAT = "%Y-%m-%d %H:%M:%S" @@ -54,14 +54,14 @@ skip_subfolders=False): if import_path and not os.path.isdir(import_path): - print("Error, import directory " + import_path + - " does not exist, exiting...") # ERROR LOGRefactoringTool: Refactored ./mapillary_tools/processing.py + print(("Error, import directory " + import_path + + " does not exist, exiting...")) # ERROR LOG sys.exit(1) # sanity check if not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # Adjust the import path @@ -81,12 +81,12 @@ if not os.path.isdir(per_video_import_path): os.makedirs(per_video_import_path) - print("Video sampling path set to {}".format(per_video_import_path)) + print(("Video sampling path set to {}".format(per_video_import_path))) # check video logs video_upload = processing.video_upload( video_import_path, per_video_import_path, verbose) if video_upload: - print("Video {} has already been uploaded, contact support@mapillary for help with reuploading it if neccessary.".format(video)) + print(("Video {} has already been uploaded, contact support@mapillary for help with reuploading it if neccessary.".format(video))) extract_frames(video, per_video_import_path, @@ -107,7 +107,7 @@ if verbose: # INFO LOG - print('extracting frames from {}'.format(video_file)) + print(('extracting frames from {}'.format(video_file))) video_filename = ".".join(os.path.basename(video_file).split(".")[:-1]) @@ -129,8 +129,8 @@ sys.exit(1) except Exception as e: # ERROR LOG - print("Error, could not extract frames from video {} due to {}".format( - video_file, e)) + print(("Error, could not extract frames from video {} due to {}".format( + video_file, e))) sys.exit(1) if video_start_time: @@ -174,23 +174,23 @@ sample_interval, duration_ratio) - for image, timestamp in tqdm(zip(frame_list, - video_frame_timestamps), desc="Inserting frame capture time"): + for image, timestamp in tqdm(list(zip(frame_list, + video_frame_timestamps)), desc="Inserting frame capture time"): try: exif_edit = ExifEdit(image) exif_edit.add_date_time_original(timestamp) exif_edit.write() except: # ERROR LOG - print("Could not insert timestamp into video frame " + - os.path.basename(image)[:-4]) + print(("Could not insert timestamp into video frame " + + os.path.basename(image)[:-4])) continue def get_video_end_time(video_file): """Get video end time in seconds""" if not os.path.isfile(video_file): - print("Error, video file {} does not exist".format(video_file)) + print(("Error, video file {} does not exist".format(video_file))) return None try: time_string = FFProbe(video_file).video[0].creation_time @@ -208,7 +208,7 @@ def get_video_start_time(video_file): """Get start time in seconds""" if not os.path.isfile(video_file): - print("Error, video file {} does not exist".format(video_file)) + print(("Error, video file {} does not exist".format(video_file))) return None video_end_time = get_video_end_time(video_file) duration = get_video_duration(video_file) --- ./mapillary_tools/processing.py (original) +++ ./mapillary_tools/processing.py (refactored) @@ -8,17 +8,17 @@ import hashlib import base64 from collections import OrderedDict -from exif_read import ExifRead -from exif_write import ExifEdit -from exif_aux import verify_exif -from geo import normalize_bearing, interpolate_lat_lon, gps_distance, gps_speed -import config -import uploader +from .exif_read import ExifRead +from .exif_write import ExifEdit +from .exif_aux import verify_exif +from .geo import normalize_bearing, interpolate_lat_lon, gps_distance, gps_speed +from . import config +from . import uploader from dateutil.tz import tzlocal -from gps_parser import get_lat_lon_time_from_gpx, get_lat_lon_time_from_nmea -from gpx_from_gopro import gpx_from_gopro -from gpx_from_blackvue import gpx_from_blackvue -from gpx_from_exif import gpx_from_exif +from .gps_parser import get_lat_lon_time_from_gpx, get_lat_lon_time_from_nmea +from .gpx_from_gopro import gpx_from_gopro +from .gpx_from_blackvue import gpx_from_blackvue +from .gpx_from_exif import gpx_from_exif from tqdm import tqdm from . import ipc from .error import print_error @@ -274,8 +274,8 @@ # print time now to warn in case local_time if local_time: now = datetime.datetime.now(tzlocal()) - print("Your local timezone is {0}. If not, the geotags will be wrong." - .format(now.strftime('%Y-%m-%d %H:%M:%S %Z'))) + print(("Your local timezone is {0}. If not, the geotags will be wrong." + .format(now.strftime('%Y-%m-%d %H:%M:%S %Z')))) else: # if not local time to be used, warn UTC will be used print("It is assumed that the image timestamps are in UTC. If not, try using the option --local_time.") @@ -311,8 +311,8 @@ # update offset time with the gps start time offset_time += (sorted(sub_second_times) [0] - gps_trace[0][0]).total_seconds() - for image, capture_time in tqdm(zip(process_file_list, - sub_second_times), desc="Inserting gps data into image EXIF"): + for image, capture_time in tqdm(list(zip(process_file_list, + sub_second_times)), desc="Inserting gps data into image EXIF"): if not capture_time: print_error( "Error, capture time could not be extracted for image " + image) @@ -338,8 +338,8 @@ lat, lon, bearing, elevation = interpolate_lat_lon(gps_trace, capture_time) except Exception as e: - print("Warning, {}, interpolation of latitude and longitude failed for image {}".format( - e, image)) + print(("Warning, {}, interpolation of latitude and longitude failed for image {}".format( + e, image))) return None corrected_bearing = (bearing + offset_angle) % 360 @@ -348,7 +348,7 @@ geotag_properties = {"MAPLatitude": lat} geotag_properties["MAPLongitude"] = lon else: - print("Warning, invalid latitude and longitude for image {}".format(image)) + print(("Warning, invalid latitude and longitude for image {}".format(image))) return None geotag_properties["MAPCaptureTime"] = datetime.datetime.strftime(capture_time, @@ -370,16 +370,16 @@ def get_upload_param_properties(log_root, image, user_name, user_upload_token, user_permission_hash, user_signature_hash, user_key, verbose=False): if not os.path.isdir(log_root): - print("Warning, sequence process has not been done for image " + image + - ", therefore it will not be included in the upload params processing.") + print(("Warning, sequence process has not been done for image " + image + + ", therefore it will not be included in the upload params processing.")) return None # check if geotag process was a success log_sequence_process_success = os.path.join( log_root, "sequence_process_success") if not os.path.isfile(log_sequence_process_success): - print("Warning, sequence process failed for image " + image + - ", therefore it will not be included in the upload params processing.") + print(("Warning, sequence process failed for image " + image + + ", therefore it will not be included in the upload params processing.")) return None upload_params_process_success_path = os.path.join(log_root, @@ -393,13 +393,13 @@ sequence_data = load_json( sequence_process_json_path) except: - print("Warning, sequence data not read for image " + image + - ", therefore it will not be included in the upload params processing.") + print(("Warning, sequence data not read for image " + image + + ", therefore it will not be included in the upload params processing.")) return None if "MAPSequenceUUID" not in sequence_data: - print("Warning, sequence uuid not in sequence data for image " + image + - ", therefore it will not be included in the upload params processing.") + print(("Warning, sequence uuid not in sequence data for image " + image + + ", therefore it will not be included in the upload params processing.")) return None sequence_uuid = sequence_data["MAPSequenceUUID"] @@ -425,8 +425,8 @@ save_json({"MAPSettingsUploadHash": settings_upload_hash}, os.path.join(log_root, "settings_upload_hash.json")) except: - print("Warning, settings upload hash not set for image " + image + - ", therefore it will not be uploaded.") + print(("Warning, settings upload hash not set for image " + image + + ", therefore it will not be uploaded.")) return None return upload_params @@ -441,8 +441,8 @@ log_root, sub_command + "_failed") if os.path.isfile(sub_command_status) and sub_command != "import_meta_data_process": - print("Warning, required {} failed for image ".format(sub_command) + - image) + print(("Warning, required {} failed for image ".format(sub_command) + + image)) return None sub_command_data_path = os.path.join( @@ -451,8 +451,8 @@ if (sub_command == "settings_upload_hash" or sub_command == "upload_params_process") and master_upload: continue else: - print("Warning, required {} did not result in a valid json file for image ".format( - sub_command) + image) + print(("Warning, required {} did not result in a valid json file for image ".format( + sub_command) + image)) return None if sub_command == "settings_upload_hash" or sub_command == "upload_params_process": continue @@ -460,21 +460,21 @@ sub_command_data = load_json(sub_command_data_path) if not sub_command_data: if verbose: - print( - "Warning, no data read from json file " + json_file) + print(( + "Warning, no data read from json file " + json_file)) return None final_mapillary_image_description.update(sub_command_data) except: if sub_command == "import_meta_data_process": if verbose: - print("Warning, could not load json file " + - sub_command_data_path) + print(("Warning, could not load json file " + + sub_command_data_path)) continue else: if verbose: - print("Warning, could not load json file " + - sub_command_data_path) + print(("Warning, could not load json file " + + sub_command_data_path)) return None # a unique photo ID to check for duplicates in the backend in case the @@ -569,14 +569,14 @@ def get_geotag_data(log_root, image, verbose=False): if not os.path.isdir(log_root): if verbose: - print("Warning, no logs for image " + image) + print(("Warning, no logs for image " + image)) return None # check if geotag process was a success log_geotag_process_success = os.path.join(log_root, "geotag_process_success") if not os.path.isfile(log_geotag_process_success): - print("Warning, geotag process failed for image " + image + - ", therefore it will not be included in the sequence processing.") + print(("Warning, geotag process failed for image " + image + + ", therefore it will not be included in the sequence processing.")) return None # load the geotag json geotag_process_json_path = os.path.join(log_root, @@ -586,8 +586,8 @@ return geotag_data except: if verbose: - print("Warning, geotag data not read for image " + image + - ", therefore it will not be included in the sequence processing.") + print(("Warning, geotag data not read for image " + image + + ", therefore it will not be included in the sequence processing.")) return None @@ -734,7 +734,7 @@ if import_path not in import_paths: import_paths.append(import_path) else: - print("Warning, {} has already been sampled into {}, please make sure all the previously sampled frames are deleted, otherwise the alignment might be incorrect".format(video_file, import_path)) + print(("Warning, {} has already been sampled into {}, please make sure all the previously sampled frames are deleted, otherwise the alignment might be incorrect".format(video_file, import_path))) for video_import_path in import_paths: if os.path.isdir(video_import_path): if len(uploader.get_success_upload_file_list(video_import_path)): @@ -828,8 +828,8 @@ # if there is meta data from before, remove it if os.path.isfile(log_MAPJson): if verbose: - print("Warning, {} in this run has failed, previously generated properties will be removed.".format( - process)) + print(("Warning, {} in this run has failed, previously generated properties will be removed.".format( + process))) os.remove(log_MAPJson) decoded_image = force_decode(image) @@ -956,9 +956,9 @@ total_file_list = uploader.get_total_file_list( import_path, skip_subfolders) - print("Running {} for {} images, skipping {} images.".format(process, + print(("Running {} for {} images, skipping {} images.".format(process, len_process_file_list, - len(total_file_list) - len_process_file_list)) + len(total_file_list) - len_process_file_list))) def load_geotag_points(process_file_list, verbose=False): @@ -1002,16 +1002,16 @@ sequences = [] # sort based on time - sort_by_time = zip(capture_times, + sort_by_time = list(zip(capture_times, file_list, lats, lons, - directions) + directions)) sort_by_time.sort() capture_times, file_list, lats, lons, directions = [ list(x) for x in zip(*sort_by_time)] - latlons = zip(lats, - lons) + latlons = list(zip(lats, + lons)) # initialize first sequence sequence_index = 0 @@ -1053,11 +1053,11 @@ filepath], "directions": [directions[1:][i]], "latlons": [latlons[1:][i]], "capture_times": [capture_times[1:][i]]}) if verbose: if cut_distance: - print('Cut {}: Delta in distance {} meters is bigger than cutoff_distance {} meters at {}'.format( - cut, distances[i], cutoff_distance, file_list[i + 1])) + print(('Cut {}: Delta in distance {} meters is bigger than cutoff_distance {} meters at {}'.format( + cut, distances[i], cutoff_distance, file_list[i + 1]))) elif cut_time: - print('Cut {}: Delta in time {} seconds is bigger then cutoff_time {} seconds at {}'.format(RefactoringTool: Refactored ./mapillary_tools/upload.py RefactoringTool: Refactored ./mapillary_tools/uploader.py - cut, capture_deltas[i].total_seconds(), cutoff_time, file_list[i + 1])) + print(('Cut {}: Delta in time {} seconds is bigger then cutoff_time {} seconds at {}'.format( + cut, capture_deltas[i].total_seconds(), cutoff_time, file_list[i + 1]))) else: # delta not too big, continue with current # group @@ -1102,11 +1102,11 @@ if len(time_dict) >= 2: # set time interval as the last available time interval - time_dict[time_dict.keys()[-1] - ]["interval"] = time_dict[time_dict.keys()[-2]]["interval"] + time_dict[list(time_dict.keys())[-1] + ]["interval"] = time_dict[list(time_dict.keys())[-2]]["interval"] else: # set time interval assuming capture interval is 1 second - time_dict[time_dict.keys()[0]]["interval"] = time_dict[time_dict.keys()[ + time_dict[list(time_dict.keys())[0]]["interval"] = time_dict[list(time_dict.keys())[ 0]]["count"] * 1. # interpolate timestamps --- ./mapillary_tools/upload.py (original) +++ ./mapillary_tools/upload.py (refactored) @@ -2,9 +2,9 @@ import sys import os -import uploader +from . import uploader import json -from exif_aux import verify_mapillary_tag +from .exif_aux import verify_mapillary_tag from . import ipc def upload(import_path, verbose=False, skip_subfolders=False, number_threads=None, max_attempts=None, video_import_path=None, dry_run=False,api_version=1.0): @@ -20,8 +20,8 @@ ''' # sanity check if video file is passed if video_import_path and (not os.path.isdir(video_import_path) and not os.path.isfile(video_import_path)): - print("Error, video path " + video_import_path + - " does not exist, exiting...") + print(("Error, video path " + video_import_path + + " does not exist, exiting...")) sys.exit(1) # in case of video processing, adjust the import path @@ -35,8 +35,8 @@ # basic check for all if not import_path or not os.path.isdir(import_path): - print("Error, import directory " + import_path + - " does not exist, exiting...") + print(("Error, import directory " + import_path + + " does not exist, exiting...")) sys.exit(1) # get list of file to process @@ -55,7 +55,7 @@ print("All images have already been uploaded") else: if len(failed_file_list): - upload_failed = raw_input( + upload_failed = input( "Retry uploading previously failed image uploads? [y/n]: ") if not ipc.is_enabled() else 'y' # if yes, add images to the upload list if upload_failed in ["y", "Y", "yes", "Yes"]: @@ -96,8 +96,8 @@ # inform how many images are to be uploaded and how many are being skipped # from upload - print("Uploading {} images with valid mapillary tags (Skipping {})".format( - len(upload_file_list), len(total_file_list) - len(upload_file_list))) + print(("Uploading {} images with valid mapillary tags (Skipping {})".format( + len(upload_file_list), len(total_file_list) - len(upload_file_list)))) if api_version==2.0: uploder.uploadfile_list if len(direct_upload_file_list): --- ./mapillary_tools/uploader.py (original) +++ ./mapillary_tools/uploader.py (refactored) @@ -1,32 +1,32 @@ -from exif_read import ExifRead +from .exif_read import ExifRead import json import os -import urllib2 -import urllib -import httplib +import urllib.request, urllib.error, urllib.parse +import urllib.request, urllib.parse, urllib.error +import http.client import datetime import socket import mimetypes import random import string -from Queue import Queue +from queue import Queue import threading import time -import config +from . import config import getpass import sys -import processing +from . import processing import requests import yaml from tqdm import tqdm from . import ipc from .error import print_error from .utils import force_decode -from gpx_from_blackvue import gpx_from_blackvue, get_points_from_bv -from process_video import get_video_duration -from process_video import get_video_start_time_blackvue -from geo import get_timezone_and_utc_offset -from camera_support.prepare_blackvue_videos import get_blackvue_info +from .gpx_from_blackvue import gpx_from_blackvue, get_points_from_bv +from .process_video import get_video_duration +from .process_video import get_video_start_time_blackvue +from .geo import get_timezone_and_utc_offset +from .camera_support.prepare_blackvue_videos import get_blackvue_info if os.getenv("AWS_S3_ENDPOINT", None) is None: MAPILLARY_UPLOAD_URL = "https://secure-upload.mapillary.com" else: @@ -98,7 +98,7 @@ boundary = ''.join(random.choice(BOUNDARY_CHARS) for i in range(30)) lines = [] - for name, value in fields.items(): + for name, value in list(fields.items()): lines.extend(( '--{0}'.format(boundary), 'Content-Disposition: form-data; name="{0}"'.format( @@ -107,7 +107,7 @@ str(value), )) - for name, value in files.items(): + for name, value in list(files.items()): filename = value['filename'] if 'mimetype' in value: mimetype = value['mimetype'] @@ -138,7 +138,7 @@ def prompt_to_finalize(subcommand): for i in range(3): - finalize = raw_input( + finalize = input( "Finalize all {} in this import? [y/n]: ".format(subcommand)) if finalize in ["y", "Y", "yes", "Yes"]: return 1 @@ -161,11 +161,11 @@ ''' request_url = "https://a.mapillary.com/v3/users/{}/upload_secrets?client_id={}".format( credentials["MAPSettingsUserKey"], CLIENT_ID) - request = urllib2.Request(request_url) + request = urllib.request.Request(request_url) request.add_header('Authorization', 'Bearer {}'.format( credentials["user_upload_token"])) try: - response = json.loads(urllib2.urlopen(request).read()) + response = json.loads(urllib.request.urlopen(request).read()) except requests.exceptions.HTTPError as e: print("Error getting upload parameters, upload could not start") sys.exit(1) @@ -332,8 +332,8 @@ def print_summary(file_list): # inform upload has finished and print out the summary - print("Done uploading {} images.".format( - len(file_list))) # improve upload summary + print(("Done uploading {} images.".format( + len(file_list)))) # improve upload summary def get_upload_token(mail, pwd): @@ -341,8 +341,8 @@ Get upload token ''' try: - params = urllib.urlencode({"email": mail, "password": pwd}) - response = urllib.urlopen(LOGIN_URL, params) + params = urllib.parse.urlencode({"email": mail, "password": pwd}) + response = urllib.request.urlopen(LOGIN_URL, params) except: return None resp = json.loads(response.read()) @@ -355,9 +355,9 @@ organization_key = None call = ORGANIZATIONS_URL.format(user_key, CLIENT_ID) - req = urllib2.Request(call) + req = urllib.request.Request(call) req.add_header('Authorization', 'Bearer {}'.format(upload_token)) - resp = json.loads(urllib2.urlopen(req).read()) + resp = json.loads(urllib.request.urlopen(req).read()) organization_usernames = [] for org in resp: @@ -366,8 +366,8 @@ organization_key = org['key'] if not organization_key: - print("No valid organization key found for organization user name " + - organization_username) + print(("No valid organization key found for organization user name " + + organization_username)) print("Available organization user names for current user are : ") print(organization_usernames) sys.exit(1) @@ -377,9 +377,9 @@ def validate_organization_key(user_key, organization_key, upload_token): call = ORGANIZATIONS_URL.format(user_key, CLIENT_ID) - req = urllib2.Request(call) + req = urllib.request.Request(call) req.add_header('Authorization', 'Bearer {}'.format(upload_token)) - resp = json.loads(urllib2.urlopen(req).read()) + resp = json.loads(urllib.request.urlopen(req).read()) for org in resp: if org['key'] == organization_key: return @@ -390,9 +390,9 @@ def validate_organization_privacy(user_key, organization_key, private, upload_token): call = ORGANIZATIONS_URL.format(user_key, CLIENT_ID) - req = urllib2.Request(call) + req = urllib.request.Request(call) req.add_header('Authorization', 'Bearer {}'.format(upload_token)) - resp = json.loads(urllib2.urlopen(req).read()) + resp = json.loads(urllib.request.urlopen(req).read()) for org in resp: if org['key'] == organization_key: @@ -402,8 +402,8 @@ privacy = "private" if 'private_repository' in org and org[ 'private_repository'] else "public" privacy_provided = "private" if private else "public" - print("Organization " + - org['name'] + " with key " + org['key'] + " is " + privacy + " while your import privacy settings state " + privacy_provided) + print(("Organization " + + org['name'] + " with key " + org['key'] + " is " + privacy + " while your import privacy settings state " + privacy_provided)) sys.exit(1) @@ -422,8 +422,8 @@ def prompt_user_for_user_items(user_name): user_items = {} - print("Enter user credentials for user " + user_name + " :") - user_email = raw_input("Enter email : ") + print(("Enter user credentials for user " + user_name + " :")) + user_email = input("Enter email : ") user_password = getpass.getpass("Enter user password : ") user_key = get_user_key(user_name) if not user_key: @@ -457,7 +457,7 @@ try: config.create_config(GLOBAL_CONFIG_FILEPATH) except Exception as e: - print("Failed to create authentication config file due to {}".format(e)) + print(("Failed to create authentication config file due to {}".format(e))) sys.exit(1) config.update_config( GLOBAL_CONFIG_FILEPATH, user_name, user_items) @@ -472,13 +472,13 @@ raise ValueError('Could not authenticate user. Missing username or password') upload_token = uploader.get_upload_token(user_email, user_password) if not upload_token: - print("Authentication failed for user name " + - user_name + ", please try again.") + print(("Authentication failed for user name " + + user_name + ", please try again.")) sys.exit(1) user_key = get_user_key(user_name) if not user_key: - print("User name {} does not exist, please try again or contact Mapillary user support.".format( - user_name)) + print(("User name {} does not exist, please try again or contact Mapillary user support.".format( + user_name))) sys.exit(1) user_permission_hash, user_signature_hash = get_user_hashes( user_key, upload_token) @@ -500,17 +500,17 @@ if "MAPILLARY_SECRET_HASH" in admin_items: master_key = admin_items["MAPILLARY_SECRET_HASH"] else: - create_config = raw_input( + create_config = input( "Master upload key does not exist in your global Mapillary config file, set it now?") if create_config in ["y", "Y", "yes", "Yes"]: master_key = set_master_key() else: - create_config = raw_input( + create_config = input( "MAPAdmin section not in your global Mapillary config file, set it now?") if create_config in ["y", "Y", "yes", "Yes"]: master_key = set_master_key() else: - create_config = raw_input( + create_config = input( "Master upload key needs to be saved in the global Mapillary config file, which does not exist, create one now?") if create_config in ["y", "Y", "yes", "Yes"]: config.create_config(GLOBAL_CONFIG_FILEPATH) @@ -524,7 +524,7 @@ section = "MAPAdmin" if section not in config_object.sections(): config_object.add_section(section) - master_key = raw_input("Enter the master key : ") + master_key = input("Enter the master key : ") if master_key != "": config_object = config.set_user_items( config_object, section, {"MAPILLARY_SECRET_HASH": master_key}) @@ -534,9 +534,9 @@ def get_user_key(user_name): try: - req = urllib2.Request(USER_URL.format( - urllib2.quote(user_name), CLIENT_ID)) - resp = json.loads(urllib2.urlopen(req).read()) + req = urllib.request.Request(USER_URL.format( + urllib.parse.quote(user_name), CLIENT_ID)) + resp = json.loads(urllib.request.urlopen(req).read()) except: return None if not resp or 'key' not in resp[0]: @@ -548,9 +548,9 @@ def get_user_hashes(user_key, upload_token): user_permission_hash = "" user_signature_hash = "" - req = urllib2.Request(USER_UPLOAD_URL.format(user_key, CLIENT_ID)) + req = urllib.request.Request(USER_UPLOAD_URL.format(user_key, CLIENT_ID)) req.add_header('Authorization', 'Bearer {}'.format(upload_token)) - resp = json.loads(urllib2.urlopen(req).read()) + resp = json.loads(urllib.request.urlopen(req).read()) if 'images_hash' in resp: user_signature_hash = resp['images_hash'] if 'images_policy' in resp: @@ -560,9 +560,9 @@ def get_user(jwt): - req = urllib2.Request(ME_URL) + req = urllib.request.Request(ME_URL) req.add_header('Authorization', 'Bearer {}'.format(jwt)) - return json.loads(urllib2.urlopen(req).read()) + return json.loads(urllib.request.urlopen(req).read()) def upload_done_file(url, permission, signature, key=None, aws_key=None): @@ -588,34 +588,34 @@ # Initialize response before each attempt response = None try: - request = urllib2.Request(url, data=data, headers=headers) - response = urllib2.urlopen(request) + request = urllib.request.Request(url, data=data, headers=headers) + response = urllib.request.urlopen(request) if response.getcode() == 204: if displayed_upload_error == True: - print("Successful upload of {} on attempt {}".format( - s3_filename, attempt)) + print(("Successful upload of {} on attempt {}".format( + s3_filename, attempt))) break # attempts - except urllib2.HTTPError as e: - print("HTTP error: {} on {}, will attempt upload again for {} more times".format( - e, s3_filename, max_attempts - attempt - 1)) + except urllib.error.HTTPError as e: + print(("HTTP error: {} on {}, will attempt upload again for {} more times".format( + e, s3_filename, max_attempts - attempt - 1))) displayed_upload_error = True time.sleep(5) - except urllib2.URLError as e: - print("URL error: {} on {}, will attempt upload again for {} more times".format( - e, s3_filename, max_attempts - attempt - 1)) + except urllib.error.URLError as e: + print(("URL error: {} on {}, will attempt upload again for {} more times".format( + e, s3_filename, max_attempts - attempt - 1))) time.sleep(5) - except httplib.HTTPException as e: - print("HTTP exception: {} on {}, will attempt upload again for {} more times".format( - e, s3_filename, max_attempts - attempt - 1)) + except http.client.HTTPException as e: + print(("HTTP exception: {} on {}, will attempt upload again for {} more times".format( + e, s3_filename, max_attempts - attempt - 1))) time.sleep(5) except OSError as e: - print("OS error: {} on {}, will attempt upload again for {} more times".format( - e, s3_filename, max_attempts - attempt - 1)) + print(("OS error: {} on {}, will attempt upload again for {} more times".format( + e, s3_filename, max_attempts - attempt - 1))) time.sleep(5) except socket.timeout as e: # Specific timeout handling for Python 2.7 - print("Timeout error: {0}, will attempt upload again for {} more times".format( - s3_filename, max_attempts - attempt - 1)) + print(("Timeout error: {0}, will attempt upload again for {} more times".format( + s3_filename, max_attempts - attempt - 1))) finally: if response is not None: response.close() @@ -664,38 +664,38 @@ # Initialize response before each attempt response = None try: - request = urllib2.Request(url, data=data, headers=headers) - response = urllib2.urlopen(request) + request = urllib.request.Request(url, data=data, headers=headers) + response = urllib.request.urlopen(request) if response.getcode() == 204: create_upload_log(filepath_in, "upload_success") if displayed_upload_error == True: - print("Successful upload of {} on attempt {}".format( - filename, attempt)) + print(("Successful upload of {} on attempt {}".format( + filename, attempt))) else: create_upload_log(filepath_in, "upload_failed") break # attempts - except urllib2.HTTPError as e: - print("HTTP error: {} on {}, will attempt upload again for {} more times".format( - e, filename, max_attempts - attempt - 1)) + except urllib.error.HTTPError as e: + print(("HTTP error: {} on {}, will attempt upload again for {} more times".format( + e, filename, max_attempts - attempt - 1))) displayed_upload_error = True time.sleep(5) - except urllib2.URLError as e: - print("URL error: {} on {}, will attempt upload again for {} more times".format( - e, filename, max_attempts - attempt - 1)) + except urllib.error.URLError as e: + print(("URL error: {} on {}, will attempt upload again for {} more times".format( + e, filename, max_attempts - attempt - 1))) time.sleep(5) - except httplib.HTTPException as e: - print("HTTP exception: {} on {}, will attempt upload again for {} more times".format( - e, filename, max_attempts - attempt - 1)) + except http.client.HTTPException as e: + print(("HTTP exception: {} on {}, will attempt upload again for {} more times".format( + e, filename, max_attempts - attempt - 1))) time.sleep(5) except OSError as e: - print("OS error: {} on {}, will attempt upload again for {} more times".format( - e, filename, max_attempts - attempt - 1)) + print(("OS error: {} on {}, will attempt upload again for {} more times".format( + e, filename, max_attempts - attempt - 1))) time.sleep(5) except socket.timeout as e: # Specific timeout handling for Python 2.7 - print("Timeout error: {} (retrying), will attempt upload again for {} more times".format( - filename, max_attempts - attempt - 1)) + print(("Timeout error: {} (retrying), will attempt upload again for {} more times".format( + filename, max_attempts - attempt - 1))) finally: if response is not None: response.close() @@ -705,7 +705,7 @@ def ascii_encode_dict(data): def ascii_encode(x): return x.encode('ascii') - return dict(map(ascii_encode, pair) for pair in data.items()) + return dict(list(map(ascii_encode, pair)) for pair in list(data.items())) def upload_file_list_direct(file_list, number_threads=None, max_attempts=None, api_version=1.0): @@ -724,7 +724,7 @@ # start uploaders as daemon threads that can be stopped (ctrl-c) try: - print("Uploading with {} threads".format(number_threads)) + print(("Uploading with {} threads".format(number_threads))) for uploader in uploaders: uploader.daemon = True uploader.start() @@ -753,8 +753,8 @@ # start uploaders as daemon threads that can be stopped (ctrl-c) try: - print("Uploading {}. sequence with {} threads".format( - sequence_idx + 1, number_threads)) + print(("Uploading {}. sequence with {} threads".format( + sequence_idx + 1, number_threads))) for uploader in uploaders: uploader.daemon = True uploader.start() @@ -848,8 +848,8 @@ if not os.path.exists(no_gps_folder): os.mkdir(no_gps_folder) os.rename(video, no_gps_folder + os.path.basename(video)) - print( - "Skipping file {} due to file not containing gps data".format(video)) + print(( + "Skipping file {} due to file not containing gps data".format(video))) return True if os.path.basename(os.path.dirname(video)) != 'stationary': stationary_folder = os.path.dirname(video) + '/stationary/' @@ -858,7 +858,7 @@ os.rename(video, stationary_folder + os.path.basename(video)) os.rename(gpx_file_path, stationary_folder + os.path.basename(gpx_file_path)) - print("Skipping file {} due to camera being stationary".format(video)) + print(("Skipping file {} due to camera being stationary".format(video))) return True if not isStationaryVid: @@ -886,18 +886,18 @@ os.path.basename(video)) os.rename(gpx_file_path, night_time_folder + os.path.basename(gpx_file_path)) - print( - "Skipping file {} due to video being recorded at night (Before 9am or after 6pm)".format(video)) + print(( + "Skipping file {} due to video being recorded at night (Before 9am or after 6pm)".format(video))) return True except Exception as e: - print( - "Unable to determine time of day. Exception raised: {} \n Video will be uploaded".format(e)) + print(( + "Unable to determine time of day. Exception raised: {} \n Video will be uploaded".format(e))) return False def send_videos_for_processing(video_import_path, user_name, user_email=None, user_password=None, verbose=False, skip_subfolders=False, number_threads=None, max_attempts=None, organization_username=None, organization_key=None, private=False, master_upload=False, sampling_distance=2, filter_night_time=False): # safe checks if not os.path.isdir(video_import_path) and not (os.path.isfile(video_import_path) and video_import_path.lower().endswith("mp4")): - print("video import path {} does not exist or is invalid, exiting...".format( - video_import_path)) + print(("video import path {} does not exist or is invalid, exiting...".format( + video_import_path))) sys.exit(1) # User Authentication credentials = None @@ -909,7 +909,7 @@ except: pass if credentials == None or "user_upload_token" not in credentials or "user_permission_hash" not in credentials or "user_signature_hash" not in credentials:RefactoringTool: Refactored ./mapillary_tools/utils.py RefactoringTool: No changes to ./mapillary_tools/camera_support/prepare_blackvue_videos.py RefactoringTool: No changes to ./mapillary_tools/commands/__init__.py RefactoringTool: No changes to ./mapillary_tools/commands/authenticate.py RefactoringTool: Refactored ./mapillary_tools/commands/download.py RefactoringTool: No changes to ./mapillary_tools/commands/exif_insert.py RefactoringTool: No changes to ./mapillary_tools/commands/extract_geotag_data.py RefactoringTool: No changes to ./mapillary_tools/commands/extract_import_meta_data.py RefactoringTool: No changes to ./mapillary_tools/commands/extract_sequence_data.py RefactoringTool: No changes to ./mapillary_tools/commands/extract_upload_params.py RefactoringTool: No changes to ./mapillary_tools/commands/extract_user_data.py RefactoringTool: No changes to ./mapillary_tools/commands/interpolate.py RefactoringTool: Refactored ./mapillary_tools/commands/post_process.py RefactoringTool: Refactored ./mapillary_tools/commands/process.py RefactoringTool: Refactored ./mapillary_tools/commands/process_and_upload.py - print("Error, user authentication failed for user " + user_name) + print(("Error, user authentication failed for user " + user_name)) sys.exit(1) user_permission_hash = credentials["user_permission_hash"] @@ -935,7 +935,7 @@ max_attempts = MAX_ATTEMPTS for video in tqdm(all_videos, desc="Uploading videos for processing"): - print("Preparing video {} for upload".format(os.path.basename(video))) + print(("Preparing video {} for upload".format(os.path.basename(video)))) if not filter_video_before_upload(video,filter_night_time): video_start_time = get_video_start_time_blackvue(video) # Correct timestamp in case camera time zone is not set correctly. If timestamp is not UTC, sync with GPS track will fail. @@ -1000,10 +1000,10 @@ create_upload_log(video, "upload_success") break except requests.exceptions.HTTPError as e: - print("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1)) + print(("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1))) time.sleep(5) except requests.exceptions.ConnectionError as e: - print("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1)) + print(("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1))) time.sleep(5) finally: if response is not None: @@ -1028,13 +1028,13 @@ '/uploaded/' + os.path.basename(video)) os.rename(gpx_path, os.path.dirname(video) + '/uploaded/' + os.path.basename(gpx_path)) - print("Uploaded {} successfully".format(os.path.basename(video))) + print(("Uploaded {} successfully".format(os.path.basename(video)))) break except requests.exceptions.HTTPError as e: - print("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1)) + print(("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1))) time.sleep(5) except requests.exceptions.ConnectionError as e: - print("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1)) + print(("Upload error: {} on {}, will attempt to upload again for {} more times".format(e, filename, max_attempts - attempt - 1))) time.sleep(5) finally: if response is not None: --- ./mapillary_tools/utils.py (original) +++ ./mapillary_tools/utils.py (refactored) @@ -4,5 +4,5 @@ return string.decode(i) except UnicodeDecodeError: pass - print('cannot decode string: %s' % (string)) + print(('cannot decode string: %s' % (string))) return string.decode('utf8', errors='replace') --- ./mapillary_tools/commands/download.py (original) +++ ./mapillary_tools/commands/download.py (refactored) @@ -18,7 +18,7 @@ def run(self, args): vars_args = vars(args) - download(**({k: v for k, v in vars_args.iteritems() + download(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(download).args})) print("Download done.") --- ./mapillary_tools/commands/post_process.py (original) +++ ./mapillary_tools/commands/post_process.py (refactored) @@ -42,5 +42,5 @@ vars_args = vars(args) - post_process(**({k: v for k, v in vars_args.iteritems() + post_process(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(post_process).args})) --- ./mapillary_tools/commands/process.py (original) +++ ./mapillary_tools/commands/process.py (refactored) @@ -135,25 +135,25 @@ vars_args["device_make"] = "Blackvue" if "device_make" in vars_args and vars_args["device_make"] and vars_args["device_make"].lower() == "blackvue": vars_args["duplicate_angle"] = 360 - process_user_properties(**({k: v for k, v in vars_args.iteritems() + process_user_properties(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_user_properties).args})) process_import_meta_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_import_meta_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_import_meta_properties).args})) process_geotag_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_geotag_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_geotag_properties).args})) process_sequence_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_sequence_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_sequence_properties).args})) - process_upload_params(**({k: v for k, v in vars_args.iteritems() + process_upload_params(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_upload_params).args})) - insert_MAPJson(**({k: v for k, v in vars_args.iteritems() + insert_MAPJson(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(insert_MAPJson).args})) print("Process done.") - post_process(**({k: v for k, v in vars_args.iteritems() + post_process(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(post_process).args})) --- ./mapillary_tools/commands/process_and_upload.py (original) +++ ./mapillary_tools/commands/process_and_upload.py (refactored) @@ -140,27 +140,27 @@ if "device_make" in vars_args and vars_args["device_make"] and vars_args["device_make"].lower() == "blackvue": vars_args["duplicate_angle"] = 360 - process_user_properties(**({k: v for k, v in vars_args.iteritems() + process_user_properties(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_user_properties).args})) process_import_meta_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_import_meta_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_import_meta_properties).args})) process_geotag_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_geotag_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_geotag_properties).args})) process_sequence_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_sequence_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_sequence_properties).args})) - process_upload_params(**({k: v for k, v in vars_args.iteritems() + process_upload_params(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_upload_params).args})) - insert_MAPJson(**({k: v for k, v in vars_args.iteritems() + insert_MAPJson(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(insert_MAPJson).args})) print("Process done.") - upload(**({k: v for k, v in vars_args.iteritems()RefactoringTool: No changes to ./mapillary_tools/commands/process_csv.py RefactoringTool: No changes to ./mapillary_tools/commands/sample_video.py RefactoringTool: Refactored ./mapillary_tools/commands/send_videos_for_processing.py RefactoringTool: Refactored ./mapillary_tools/commands/upload.py RefactoringTool: Refactored ./mapillary_tools/commands/video_process.py RefactoringTool: Refactored ./mapillary_tools/commands/video_process_and_upload.py RefactoringTool: No changes to ./mapillary_tools/test/generate_test_image.py RefactoringTool: Refactored ./mapillary_tools/test/test_exifedit.py RefactoringTool: Refactored ./mapillary_tools/test/test_exifread.py RefactoringTool: No changes to ./pyinstaller/hooks/hook-urllib2.py RefactoringTool: No changes to ./pyinstaller/runtime-hooks/ssl.py RefactoringTool: No changes to ./tests/integration/mapillary_tools_process_images_provider/test_process_images_provider.py RefactoringTool: Refactored ./tests/utils/config.py RefactoringTool: Files that were modified: RefactoringTool: ./setup.py RefactoringTool: ./bin/download_images.py RefactoringTool: ./mapillary_tools/__init__.py RefactoringTool: ./mapillary_tools/apply_camera_specific_config.py RefactoringTool: ./mapillary_tools/config.py RefactoringTool: ./mapillary_tools/download.py RefactoringTool: ./mapillary_tools/edit_config.py RefactoringTool: ./mapillary_tools/exif_aux.py RefactoringTool: ./mapillary_tools/exif_read.py RefactoringTool: ./mapillary_tools/exif_write.py RefactoringTool: ./mapillary_tools/ffmpeg.py RefactoringTool: ./mapillary_tools/ffprobe.py RefactoringTool: ./mapillary_tools/geo.py RefactoringTool: ./mapillary_tools/gpmf.py RefactoringTool: ./mapillary_tools/gps_parser.py RefactoringTool: ./mapillary_tools/gpx_from_blackvue.py RefactoringTool: ./mapillary_tools/gpx_from_exif.py RefactoringTool: ./mapillary_tools/gpx_from_gopro.py RefactoringTool: ./mapillary_tools/insert_MAPJson.py RefactoringTool: ./mapillary_tools/interpolation.py RefactoringTool: ./mapillary_tools/ipc.py RefactoringTool: ./mapillary_tools/post_process.py RefactoringTool: ./mapillary_tools/process_csv.py RefactoringTool: ./mapillary_tools/process_geotag_properties.py RefactoringTool: ./mapillary_tools/process_import_meta_properties.py RefactoringTool: ./mapillary_tools/process_sequence_properties.py RefactoringTool: ./mapillary_tools/process_upload_params.py RefactoringTool: ./mapillary_tools/process_user_properties.py RefactoringTool: ./mapillary_tools/process_video.py RefactoringTool: ./mapillary_tools/processing.py RefactoringTool: ./mapillary_tools/upload.py RefactoringTool: ./mapillary_tools/uploader.py RefactoringTool: ./mapillary_tools/utils.py RefactoringTool: ./mapillary_tools/camera_support/prepare_blackvue_videos.py RefactoringTool: ./mapillary_tools/commands/__init__.py RefactoringTool: ./mapillary_tools/commands/authenticate.py RefactoringTool: ./mapillary_tools/commands/download.py RefactoringTool: ./mapillary_tools/commands/exif_insert.py RefactoringTool: ./mapillary_tools/commands/extract_geotag_data.py RefactoringTool: ./mapillary_tools/commands/extract_import_meta_data.py RefactoringTool: ./mapillary_tools/commands/extract_sequence_data.py RefactoringTool: ./mapillary_tools/commands/extract_upload_params.py RefactoringTool: ./mapillary_tools/commands/extract_user_data.py RefactoringTool: ./mapillary_tools/commands/interpolate.py RefactoringTool: ./mapillary_tools/commands/post_process.py RefactoringTool: ./mapillary_tools/commands/process.py RefactoringTool: ./mapillary_tools/commands/process_and_upload.py RefactoringTool: ./mapillary_tools/commands/process_csv.py RefactoringTool: ./mapillary_tools/commands/sample_video.py RefactoringTool: ./mapillary_tools/commands/send_videos_for_processing.py RefactoringTool: ./mapillary_tools/commands/upload.py RefactoringTool: ./mapillary_tools/commands/video_process.py RefactoringTool: ./mapillary_tools/commands/video_process_and_upload.py RefactoringTool: ./mapillary_tools/test/generate_test_image.py RefactoringTool: ./mapillary_tools/test/test_exifedit.py RefactoringTool: ./mapillary_tools/test/test_exifread.py RefactoringTool: ./pyinstaller/hooks/hook-urllib2.py + upload(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(upload).args})) - post_process(**({k: v for k, v in vars_args.iteritems() + post_process(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(post_process).args})) --- ./mapillary_tools/commands/send_videos_for_processing.py (original) +++ ./mapillary_tools/commands/send_videos_for_processing.py (refactored) @@ -40,4 +40,4 @@ def run(self, args): vars_args = vars(args) send_videos_for_processing( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(send_videos_for_processing).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(send_videos_for_processing).args})) --- ./mapillary_tools/commands/upload.py (original) +++ ./mapillary_tools/commands/upload.py (refactored) @@ -46,8 +46,8 @@ vars_args = vars(args) - upload(**({k: v for k, v in vars_args.iteritems() + upload(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(upload).args})) - post_process(**({k: v for k, v in vars_args.iteritems() + post_process(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(post_process).args})) --- ./mapillary_tools/commands/video_process.py (original) +++ ./mapillary_tools/commands/video_process.py (refactored) @@ -143,28 +143,28 @@ vars_args = apply_camera_specific_config(vars_args) - sample_video(**({k: v for k, v in vars_args.iteritems() + sample_video(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(sample_video).args})) - process_user_properties(**({k: v for k, v in vars_args.iteritems() + process_user_properties(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_user_properties).args})) process_import_meta_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_import_meta_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_import_meta_properties).args})) process_geotag_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_geotag_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_geotag_properties).args})) process_sequence_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_sequence_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_sequence_properties).args})) - process_upload_params(**({k: v for k, v in vars_args.iteritems() + process_upload_params(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_upload_params).args})) - insert_MAPJson(**({k: v for k, v in vars_args.iteritems() + insert_MAPJson(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(insert_MAPJson).args})) print("Process done.") - post_process(**({k: v for k, v in vars_args.iteritems() + post_process(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(post_process).args})) --- ./mapillary_tools/commands/video_process_and_upload.py (original) +++ ./mapillary_tools/commands/video_process_and_upload.py (refactored) @@ -150,31 +150,31 @@ if "device_make" in vars_args and vars_args["device_make"] and vars_args["device_make"].lower() == "blackvue": vars_args["duplicate_angle"] = 360 - sample_video(**({k: v for k, v in vars_args.iteritems() + sample_video(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(sample_video).args})) - process_user_properties(**({k: v for k, v in vars_args.iteritems() + process_user_properties(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_user_properties).args})) process_import_meta_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_import_meta_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_import_meta_properties).args})) process_geotag_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_geotag_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_geotag_properties).args})) process_sequence_properties( - **({k: v for k, v in vars_args.iteritems() if k in inspect.getargspec(process_sequence_properties).args})) + **({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_sequence_properties).args})) - process_upload_params(**({k: v for k, v in vars_args.iteritems() + process_upload_params(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(process_upload_params).args})) - insert_MAPJson(**({k: v for k, v in vars_args.iteritems() + insert_MAPJson(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(insert_MAPJson).args})) print("Process done.") - upload(**({k: v for k, v in vars_args.iteritems() + upload(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(upload).args})) - post_process(**({k: v for k, v in vars_args.iteritems() + post_process(**({k: v for k, v in vars_args.items() if k in inspect.getargspec(post_process).args})) --- ./mapillary_tools/test/test_exifedit.py (original) +++ ./mapillary_tools/test/test_exifedit.py (refactored) @@ -22,8 +22,8 @@ # more info on the standard exif tags # https://sno.phy.queensu.ca/~phil/exiftool/TagNames/EXIF.html -EXIF_PRIMARY_TAGS_DICT = {y: x for x, y in ExifTags.TAGS.iteritems()} -EXIF_GPS_TAGS_DICT = {y: x for x, y in ExifTags.GPSTAGS.iteritems()} +EXIF_PRIMARY_TAGS_DICT = {y: x for x, y in ExifTags.TAGS.items()} +EXIF_GPS_TAGS_DICT = {y: x for x, y in ExifTags.GPSTAGS.items()} def load_exif(filename=EMPTY_EXIF_FILE_TEST): --- ./mapillary_tools/test/test_exifread.py (original) +++ ./mapillary_tools/test/test_exifread.py (refactored) @@ -15,8 +15,8 @@ # more info on the standard exif tags # https://sno.phy.queensu.ca/~phil/exiftool/TagNames/EXIF.html -EXIF_PRIMARY_TAGS_DICT = {y: x for x, y in ExifTags.TAGS.iteritems()} -EXIF_GPS_TAGS_DICT = {y: x for x, y in ExifTags.GPSTAGS.iteritems()} +EXIF_PRIMARY_TAGS_DICT = {y: x for x, y in ExifTags.TAGS.items()} +EXIF_GPS_TAGS_DICT = {y: x for x, y in ExifTags.GPSTAGS.items()} def gps_to_decimal(value, ref): --- ./tests/utils/config.py (original) +++ ./tests/utils/config.py (refactored) @@ -38,19 +38,19 @@ try: config.add_section(user_name) except: - print("Error adding new user section, for user_name " + user_name) + print(("Error adding new user section, for user_name " + user_name)) else: - print("Error, user " + user_name + " already exists") + print(("Error, user " + user_name + " already exists")) save_config(config, config_path) def set_user_items(config, user_name, user_items): - for key in user_items.keys(): + for key in list(user_items.keys()): try: config.set(user_name, key, user_items[key]) except: - print("Error setting config key " + key + " with value " + - str(user_items[key]) + " for user_name " + user_name) + print(("Error setting config key " + key + " with value " + + str(user_items[key]) + " for user_name " + user_name)) return config RefactoringTool: ./pyinstaller/runtime-hooks/ssl.py RefactoringTool: ./tests/integration/mapillary_tools_process_images_provider/test_process_images_provider.py RefactoringTool: ./tests/utils/config.py + sed -i 's/==[0-9.]*//' setup.py + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.KFOCsu + umask 022 + cd /builddir/build/BUILD + cd mapillary_tools-0.5.0 + CFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + /usr/bin/python3 setup.py build '--executable=/usr/bin/python3 -s' running build running build_py creating build creating build/lib creating build/lib/mapillary_tools copying mapillary_tools/utils.py -> build/lib/mapillary_tools copying mapillary_tools/uploader.py -> build/lib/mapillary_tools copying mapillary_tools/upload.py -> build/lib/mapillary_tools copying mapillary_tools/processing.py -> build/lib/mapillary_tools copying mapillary_tools/process_video.py -> build/lib/mapillary_tools copying mapillary_tools/process_user_properties.py -> build/lib/mapillary_tools copying mapillary_tools/process_upload_params.py -> build/lib/mapillary_tools copying mapillary_tools/process_sequence_properties.py -> build/lib/mapillary_tools copying mapillary_tools/process_import_meta_properties.py -> build/lib/mapillary_tools copying mapillary_tools/process_geotag_properties.py -> build/lib/mapillary_tools copying mapillary_tools/process_csv.py -> build/lib/mapillary_tools copying mapillary_tools/post_process.py -> build/lib/mapillary_tools copying mapillary_tools/ipc.py -> build/lib/mapillary_tools copying mapillary_tools/interpolation.py -> build/lib/mapillary_tools copying mapillary_tools/insert_MAPJson.py -> build/lib/mapillary_tools copying mapillary_tools/gpx_from_gopro.py -> build/lib/mapillary_tools copying mapillary_tools/gpx_from_exif.py -> build/lib/mapillary_tools copying mapillary_tools/gpx_from_blackvue.py -> build/lib/mapillary_tools copying mapillary_tools/gps_parser.py -> build/lib/mapillary_tools copying mapillary_tools/gpmf.py -> build/lib/mapillary_tools copying mapillary_tools/geo.py -> build/lib/mapillary_tools copying mapillary_tools/ffprobe.py -> build/lib/mapillary_tools copying mapillary_tools/ffmpeg.py -> build/lib/mapillary_tools copying mapillary_tools/exif_write.py -> build/lib/mapillary_tools copying mapillary_tools/exif_read.py -> build/lib/mapillary_tools copying mapillary_tools/exif_aux.py -> build/lib/mapillary_tools copying mapillary_tools/error.py -> build/lib/mapillary_tools copying mapillary_tools/edit_config.py -> build/lib/mapillary_tools copying mapillary_tools/download.py -> build/lib/mapillary_tools copying mapillary_tools/config.py -> build/lib/mapillary_tools copying mapillary_tools/apply_camera_specific_config.py -> build/lib/mapillary_tools copying mapillary_tools/__init__.py -> build/lib/mapillary_tools creating build/lib/mapillary_tools/commands copying mapillary_tools/commands/video_process_and_upload.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/video_process.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/upload.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/send_videos_for_processing.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/sample_video.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/process_csv.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/process_and_upload.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/process.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/post_process.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/interpolate.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/extract_user_data.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/extract_upload_params.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/extract_sequence_data.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/extract_import_meta_data.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/extract_geotag_data.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/exif_insert.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/download.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/authenticate.py -> build/lib/mapillary_tools/commands copying mapillary_tools/commands/__init__.py -> build/lib/mapillary_tools/commands creating build/lib/mapillary_tools/camera_support copying mapillary_tools/camera_support/prepare_blackvue_videos.py -> build/lib/mapillary_tools/camera_support copying mapillary_tools/camera_support/__init__.py -> build/lib/mapillary_tools/camera_support running build_scripts creating build/scripts-3.8 copying and adjusting bin/mapillary_tools -> build/scripts-3.8 changing mode of build/scripts-3.8/mapillary_tools from 644 to 755 + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.eaa5Hu + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64 ++ dirname /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64 + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64 + cd mapillary_tools-0.5.0 + CFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + /usr/bin/python3 setup.py install -O1 --skip-build --root /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64 running install running install_lib creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8 creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/camera_support copying build/lib/mapillary_tools/camera_support/__init__.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/camera_support copying build/lib/mapillary_tools/camera_support/prepare_blackvue_videos.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/camera_support creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/__init__.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/authenticate.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/download.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/exif_insert.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/extract_geotag_data.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/extract_import_meta_data.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/extract_sequence_data.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/extract_upload_params.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/extract_user_data.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/interpolate.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/post_process.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/process.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/process_and_upload.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/process_csv.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/sample_video.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/send_videos_for_processing.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/upload.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/video_process.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/commands/video_process_and_upload.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands copying build/lib/mapillary_tools/__init__.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/apply_camera_specific_config.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/config.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/download.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/edit_config.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/error.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/exif_aux.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/exif_read.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/exif_write.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/ffmpeg.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/ffprobe.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/geo.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/gpmf.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/gps_parser.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/gpx_from_blackvue.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/gpx_from_exif.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/gpx_from_gopro.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/insert_MAPJson.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/interpolation.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/ipc.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/post_process.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/process_csv.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/process_geotag_properties.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/process_import_meta_properties.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/process_sequence_properties.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/process_upload_params.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/process_user_properties.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/process_video.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/processing.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/upload.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/uploader.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools copying build/lib/mapillary_tools/utils.py -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/camera_support/__init__.py to __init__.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/camera_support/prepare_blackvue_videos.py to prepare_blackvue_videos.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/__init__.py to __init__.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/authenticate.py to authenticate.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/download.py to download.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/exif_insert.py to exif_insert.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/extract_geotag_data.py to extract_geotag_data.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/extract_import_meta_data.py to extract_import_meta_data.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/extract_sequence_data.py to extract_sequence_data.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/extract_upload_params.py to extract_upload_params.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/extract_user_data.py to extract_user_data.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/interpolate.py to interpolate.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/post_process.py to post_process.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/process.py to process.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/process_and_upload.py to process_and_upload.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/process_csv.py to process_csv.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/sample_video.py to sample_video.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/send_videos_for_processing.py to send_videos_for_processing.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/upload.py to upload.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/video_process.py to video_process.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/commands/video_process_and_upload.py to video_process_and_upload.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/__init__.py to __init__.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/apply_camera_specific_config.py to apply_camera_specific_config.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/config.py to config.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/download.py to download.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/edit_config.py to edit_config.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/error.py to error.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/exif_aux.py to exif_aux.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/exif_read.py to exif_read.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/exif_write.py to exif_write.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/ffmpeg.py to ffmpeg.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/ffprobe.py to ffprobe.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/geo.py to geo.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/gpmf.py to gpmf.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/gps_parser.py to gps_parser.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/gpx_from_blackvue.py to gpx_from_blackvue.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/gpx_from_exif.py to gpx_from_exif.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/gpx_from_gopro.py to gpx_from_gopro.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/insert_MAPJson.py to insert_MAPJson.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/interpolation.py to interpolation.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/ipc.py to ipc.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/post_process.py to post_process.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/process_csv.py to process_csv.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/process_geotag_properties.py to process_geotag_properties.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/process_import_meta_properties.py to process_import_meta_properties.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/process_sequence_properties.py to process_sequence_properties.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/process_upload_params.py to process_upload_params.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/process_user_properties.py to process_user_properties.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/process_video.py to process_video.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/processing.py to processing.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/upload.py to upload.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/uploader.py to uploader.cpython-38.pyc byte-compiling /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools/utils.py to utils.cpython-38.pyc writing byte-compilation script '/tmp/tmp559d2hos.py' /usr/bin/python3 /tmp/tmp559d2hos.py /usr/lib/python3.8/site-packages/mapillary_tools/exif_read.py:163: SyntaxWarning: "is" with a literal. Did you mean "=="? removing /tmp/tmp559d2hos.py running install_egg_info running egg_info creating mapillary_tools.egg-info writing mapillary_tools.egg-info/PKG-INFO writing dependency_links to mapillary_tools.egg-info/dependency_links.txt writing requirements to mapillary_tools.egg-info/requires.txt writing top-level names to mapillary_tools.egg-info/top_level.txt writing manifest file 'mapillary_tools.egg-info/SOURCES.txt' reading manifest file 'mapillary_tools.egg-info/SOURCES.txt' writing manifest file 'mapillary_tools.egg-info/SOURCES.txt' Copying mapillary_tools.egg-info to /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8/site-packages/mapillary_tools-0.5.0-py3.8.egg-info running install_scripts creating /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/bin copying build/scripts-3.8/mapillary_tools -> /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/bin changing mode of /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/bin/mapillary_tools to 755 /usr/lib/python3.8/site-packages/mapillary_tools/exif_read.py:163: SyntaxWarning: "is" with a literal. Did you mean "=="? + rm -rfv /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/bin/__pycache__ + /usr/lib/rpm/find-debuginfo.sh -j2 --strict-build-id -m -i --build-id-seed 0.5.0-1.fc33 --unique-debug-suffix -0.5.0-1.fc33.x86_64 --unique-debug-src-base mapillary_tools-0.5.0-1.fc33.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 -S debugsourcefiles.list /builddir/build/BUILD/mapillary_tools-0.5.0 find: 'debug': No such file or directory + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/redhat/brp-python-bytecompile /usr/bin/python 1 0 Bytecompiling .py files below /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/lib/python3.8 using /usr/bin/python3.8 /usr/lib/python3.8/site-packages/mapillary_tools/exif_read.py:163: SyntaxWarning: "is" with a literal. Did you mean "=="? /usr/lib/python3.8/site-packages/mapillary_tools/exif_read.py:163: SyntaxWarning: "is" with a literal. Did you mean "=="? + /usr/lib/rpm/brp-python-hardlink + /usr/lib/rpm/redhat/brp-mangle-shebangs Processing files: python3-mapillary_tools-0.5.0-1.fc33.noarch Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.Cjedpu + umask 022 + cd /builddir/build/BUILD + cd mapillary_tools-0.5.0 + DOCDIR=/builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/doc/python3-mapillary_tools + export LC_ALL=C + LC_ALL=C + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/doc/python3-mapillary_tools + cp -pr README.md /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/doc/python3-mapillary_tools + cp -pr README_osx_package.txt /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/doc/python3-mapillary_tools + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.1hxUhu + umask 022 + cd /builddir/build/BUILD + cd mapillary_tools-0.5.0 + LICENSEDIR=/builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/licenses/python3-mapillary_tools + export LC_ALL=C + LC_ALL=C + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/licenses/python3-mapillary_tools + cp -pr LICENSE /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/licenses/python3-mapillary_tools + cp -pr licenses.csv /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64/usr/share/licenses/python3-mapillary_tools + RPM_EC=0 ++ jobs -p + exit 0 Provides: python-mapillary_tools = 0.5.0-1.fc33 python-mapillary_tools = 0.5.0-1.fc33 python3-mapillary_tools = 0.5.0-1.fc33 python3.8dist(mapillary-tools) = 0.5 python38-mapillary_tools = 0.5.0-1.fc33 python38-mapillary_tools = 0.5.0-1.fc33 python3dist(mapillary-tools) = 0.5 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: /usr/bin/python3 python(abi) = 3.8 python3.8dist(exifread) python3.8dist(gpxpy) python3.8dist(pillow) python3.8dist(pymp4) python3.8dist(pynmea2) python3.8dist(pytest) python3.8dist(python-dateutil) python3.8dist(pytz) python3.8dist(pyyaml) python3.8dist(requests) python3.8dist(tqdm) python3.8dist(tzwhere) Obsoletes: python-mapillary_tools < 0.5.0-1.fc33 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64 Wrote: /builddir/build/RPMS/python3-mapillary_tools-0.5.0-1.fc33.noarch.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.xmcxXt + umask 022 + cd /builddir/build/BUILD + cd mapillary_tools-0.5.0 + /usr/bin/rm -rf /builddir/build/BUILDROOT/mapillary_tools-0.5.0-1.fc33.x86_64 + RPM_EC=0 ++ jobs -p + exit 0 Finish: rpmbuild mapillary_tools-0.5.0-1.fc33.src.rpm Finish: build phase for mapillary_tools-0.5.0-1.fc33.src.rpm INFO: chroot_scan: 3 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1587134151.327542/root/var/log/dnf.rpm.log /var/lib/mock/fedora-rawhide-x86_64-1587134151.327542/root/var/log/dnf.librepo.log /var/lib/mock/fedora-rawhide-x86_64-1587134151.327542/root/var/log/dnf.log INFO: Done(/var/lib/copr-rpmbuild/results/mapillary_tools-0.5.0-1.fc33.src.rpm) Config(child) 0 minutes 21 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot Finish: run