argv_bytes,
bytes_from_byte,
environ,
- hexstr,
- items,
+ hexstr
)
from bup.git import get_cat_data, parse_commit, walk_object
from bup.helpers import add_error, debug1, log, saved_errors
# Only update the refs at the very end, once the writer is
# closed, so that if something goes wrong above, the old refs
# will be undisturbed.
- for ref_name, info in items(updated_refs):
+ for ref_name, info in updated_refs.items():
orig_ref, new_ref = info
try:
dest_repo.update_ref(ref_name, new_ref, orig_ref)
from os import fsdecode, fsencode
from shlex import quote
+
def hexstr(b):
"""Return hex string (not bytes as with hexlify) representation of b."""
return b.hex()
def __del__(self):
assert self.closed
-def items(x):
- return x.items()
-
def argv_bytes(x):
"""Return the original bytes passed to main() for an argv argument."""
return fsencode(x)
byte_int, bytes_from_byte, bytes_from_uint,
environ,
ExitStack,
- items,
pending_raise,
reraise)
from bup.io import path_msg
repodir = None # The default repository, once initialized
_typemap = {b'blob': 3, b'tree': 2, b'commit': 1, b'tag': 4}
-_typermap = {v: k for k, v in items(_typemap)}
+_typermap = {v: k for k, v in _typemap.items()}
_total_searches = 0
import hashlib, heapq, math, operator, time, tempfile
from bup import _helpers
-from bup import compat
from bup import io
from bup.compat import argv_bytes, byte_int, nullcontext, pending_raise
from bup.io import byte_stream, path_msg
base_size = 2048
for c in command:
base_size += len(command) + 1
- for k, v in compat.items(environ):
+ for k, v in environ.items():
base_size += len(k) + len(v) + 2 + sizeof(c_void_p)
return base_size
import errno, os, pickle, tempfile
-from bup import compat
from bup.compat import pending_raise
f.close()
f = None
# Set up the reverse hard link index.
- for node, paths in compat.items(self._node_paths):
+ for node, paths in self._node_paths.items():
for path in paths:
self._path_node[path] = node
pending_ex = add_ex_ctx(add_ex_tb(ex), pending_ex)
try:
# Try to finish each of the streams
- for fd, pending_items in compat.items(pending):
+ for fd, pending_items in pending.items():
dest = dest_for[fd]
width = tty_width()
try:
from __future__ import absolute_import
from binascii import hexlify, unhexlify
-from bup import compat, git, vfs
+from bup import git, vfs
from bup.client import ClientError
from bup.compat import hexstr, pending_raise
from bup.git import get_commit_items
updated_refs = {} # ref_name -> (original_ref, tip_commit(bin))
- for branchname, branchitem in compat.items(dead_branches):
+ for branchname, branchitem in dead_branches.items():
ref = b'refs/heads/' + branchname
assert(not ref in updated_refs)
updated_refs[ref] = (branchitem.oid, None)
if dead_saves:
writer = git.PackWriter(compression_level=compression)
try:
- for branch, saves in compat.items(dead_saves):
+ for branch, saves in dead_saves.items():
assert(saves)
updated_refs[b'refs/heads/' + branch] = rm_saves(saves, writer)
except BaseException as ex:
# Only update the refs here, at the very end, so that if something
# goes wrong above, the old refs will be undisturbed. Make an attempt
# to update each ref.
- for ref_name, info in compat.items(updated_refs):
+ for ref_name, info in updated_refs.items():
orig_ref, new_ref = info
try:
if not new_ref:
import pytest, re, sys
from bup import compat, path
-from bup.compat import environ, getcwd, items
+from bup.compat import environ, getcwd
from bup.helpers import bquote, merge_dict, unlink
from bup.io import byte_stream
from buptest import ex, exo
verify_rx(b'cannot fetch entire repository', exr.err)
def verify_only_refs(**kwargs):
- for kind, refs in items(kwargs):
+ for kind, refs in kwargs.items():
if kind == 'heads':
abs_refs = [b'refs/heads/' + ref for ref in refs]
karg = b'--heads'
'blob' : (b'.tag/tinyfile', b'.tag/obj'),
'tree' : (b'.tag/tree-1', b'.tag/obj'),
'commit': (b'.tag/commit-1', b'.tag/obj')}
- for ex_type, ex_ref in items(existing_items):
+ for ex_type, ex_ref in existing_items.items():
wvstart(get_disposition + ' --replace ' + ex_type + ' with blob tag')
for item in (b'.tag/tinyfile', b'src/latest' + tinyfile_path):
exr = run_get(get_disposition, b'--replace', (item ,b'.tag/obj'),
return utcs
utcs = sorted(utcs, reverse=True)
period_start = dict(spec)
- for kind, duration in compat.items(period_start):
+ for kind, duration in period_start.items():
period_start[kind] = utc_start - period_as_secs(duration)
period_start = defaultdict(lambda: float('inf'), period_start)
from bup._helpers import write_random
from bup import git, metadata, vfs
-from bup.compat import environ, fsencode, items
+from bup.compat import environ, fsencode
from bup.helpers import exc, shstr
from bup.metadata import Metadata
from bup.repo import LocalRepo
wvpasseq(frozenset([key_0, key_1]), frozenset(vfs._cache_keys))
vfs.cache_notice(key_2, b'and also')
wvpasseq(2, len(vfs._cache))
- wvpass(frozenset(items(vfs._cache))
- < frozenset(items({key_0 : b'something',
- key_1 : b'something else',
- key_2 : b'and also'})))
+ wvpass(frozenset(vfs._cache.items())
+ < frozenset({key_0 : b'something',
+ key_1 : b'something else',
+ key_2 : b'and also'}.items()))
wvpasseq(2, len(vfs._cache_keys))
wvpass(frozenset(vfs._cache_keys) < frozenset([key_0, key_1, key_2]))
vfs.clear_cache()