Skip to content

Commit

Permalink
Remove blib2to3 grammar cache logging (#3193)
Browse files Browse the repository at this point in the history
As error logs are emitted often (they happen when Black's cache
directory is created after blib2to3 tries to write its cache) and cause
issues to be filed by users who think Black isn't working correctly.

These errors are expected for now and aren't a cause for concern so
let's remove them to stop worrying users (and new issues from being
opened). We can improve the blib2to3 caching mechanism to write its
cache at the end of a successful command line invocation later.
  • Loading branch information
ichard26 committed Jul 30, 2022
1 parent 4f1772e commit d85cf00
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
2 changes: 2 additions & 0 deletions CHANGES.md
Expand Up @@ -54,6 +54,8 @@

- Change from deprecated `asyncio.get_event_loop()` to create our event loop which
removes DeprecationWarning (#3164)
- Remove logging from internal `blib2to3` library since it regularily emits error logs
about failed caching that can and should be ignored (#3193)

### Packaging

Expand Down
7 changes: 3 additions & 4 deletions src/blib2to3/pgen2/driver.py
Expand Up @@ -263,14 +263,13 @@ def load_grammar(
logger = logging.getLogger(__name__)
gp = _generate_pickle_name(gt) if gp is None else gp
if force or not _newer(gp, gt):
logger.info("Generating grammar tables from %s", gt)
g: grammar.Grammar = pgen.generate_grammar(gt)
if save:
logger.info("Writing grammar tables to %s", gp)
try:
g.dump(gp)
except OSError as e:
logger.info("Writing failed: %s", e)
except OSError:
# Ignore error, caching is not vital.
pass
else:
g = grammar.Grammar()
g.load(gp)
Expand Down

0 comments on commit d85cf00

Please sign in to comment.