Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/4.3.x' into 4.4.x
Browse files Browse the repository at this point in the history
  • Loading branch information
kalefranz committed Aug 16, 2017
2 parents 16a0799 + 4b27868 commit 2f786d2
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 7 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,5 @@ conda_build_test_recipe/
record.txt
.vagrant/
Vagrantfile
docs/_build
env/
14 changes: 8 additions & 6 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,8 +157,8 @@
* enable threadpool use for repodata collection by default (#5546, #5587)
* conda info now raises PackagesNotFoundError (#5655)
* index building optimizations (#5776)
* fix #5811 change safety_checks default to 'warn' for conda 4.4 (#5824)
* add constrained dependencies to conda's own recipe (#5823)
* fix #5811 change safety_checks default to 'warn' for conda 4.4 (4.4.0rc1) (#5824)
* add constrained dependencies to conda's own recipe (4.4.0rc1) (#5823)

### Bug Fixes
* fix some conda-build compatibility issues (#5089)
Expand All @@ -182,10 +182,11 @@
* fix exception when generating JSON output (#5628)
* fix target prefix determination (#5642)
* use proxy to avoid segfaults (#5716)
* fix #5790 incorrect activation message (#5820)
* fix #5808 assertion error when loading package cache (#5815)
* fix #5809 _pip_install_via_requirements got an unexpected keyword argument 'prune' (#5814)
* fix #5811 change safety_checks default to 'warn' for conda 4.4 (#5824)
* fix #5790 incorrect activation message (4.4.0rc1) (#5820)
* fix #5808 assertion error when loading package cache (4.4.0rc1) (#5815)
* fix #5809 _pip_install_via_requirements got an unexpected keyword argument 'prune' (4.4.0rc1) (#5814)
* fix #5811 change safety_checks default to 'warn' for conda 4.4 (4.4.0rc1) (#5824)
* fix #5825 --json output format (4.4.0rc1) (#5831)

### Non-User-Facing Changes
* eliminate index modification in Resolve init (#4333)
Expand Down Expand Up @@ -217,6 +218,7 @@
### Bug Fixes
* fix #5763 channel url string splitting error (#5764)
* fix regex for repodata _mod and _etag (#5795)
* fix uncaught OSError for missing device (#5830)


## 4.3.24 (2017-07-31)
Expand Down
9 changes: 8 additions & 1 deletion conda/core/repodata.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
import bz2
from collections import defaultdict
from contextlib import closing
from errno import ENODEV
from functools import wraps
from genericpath import getmtime, isfile
import hashlib
import json
Expand Down Expand Up @@ -354,11 +356,16 @@ def read_mod_and_etag(path):
match_objects = take(3, re.finditer(REPODATA_HEADER_RE, m))
result = dict(map(ensure_unicode, mo.groups()) for mo in match_objects)
return result
except (BufferError, ValueError):
except (BufferError, ValueError, OSError): # pragma: no cover
# BufferError: cannot close exported pointers exist
# https://github.com/conda/conda/issues/4592
# ValueError: cannot mmap an empty file
return {}
except (IOError, OSError) as e: # pragma: no cover
# OSError: [Errno 19] No such device
if e.errno == ENODEV:
return {}
raise


def get_cache_control_max_age(cache_control_value):
Expand Down

0 comments on commit 2f786d2

Please sign in to comment.