Changes:
- refs: Image names are now checked using Docker's rules. Malformed names are refused with a clear message.
- install: Added support for images pinned by digest, e.g.
ubuntu@sha256:.... The download is verified against the digest. A pinned image can be reinstalled from the cache without network. - build, push: A digest is refused in
build -tandpush. - install: Fixed intact image layers sometimes refused with "does not match its digest".
- http: Redirects can no longer move a download from HTTPS to plain HTTP.
--allow-insecurelifts this. - registry:
--allow-insecureno longer applies to Docker Hub. It is always verified. - http: Network requests give up after 2 minutes of silence instead of hanging forever.
- http: Invalid URLs and registry addresses now show an error message instead of a traceback.
- build, login: Bytes that are not valid UTF-8 in arguments, build args or image environment no longer cause a traceback.
- list, remove:
--imageno longer prints control characters from cache entries as they are. - sync, copy: Files that change during the transfer are handled correctly. No more missed updates or wrong permissions.
- sysdata: Fake
/proc/statnow lists the same CPUs as/proc/cpuinfo. Existing containers are fixed automatically. - tests, docs: Tests now pass with the default open files limit. Comments and docs were brought up to date.