Repository: asottile/pyupgrade

Issue:
Fails to run on python3.9
This is because there is no import removals defined for https://github.com/asottile/pyupgrade/blob/5e32666723/pyupgrade.py#L680-L693, and https://github.com/asottile/pyupgrade/blob/5e32666723/pyupgrade.py#L732 lookup fails. Perhaps instead of ``[]`` it should use ``.get``?

```
venv/bin/pyupgrade --py39-plus src/**.py 
Traceback (most recent call last):
  File "/Users/bgabor8/git/a/venv/bin/pyupgrade", line 8, in <module>
    sys.exit(main())
  File "/Users/bgabor8/git/a/venv/lib/python3.9/site-packages/pyupgrade.py", line 2823, in main
    ret |= _fix_file(filename, args)
  File "/Users/bgabor8/git/a/venv/lib/python3.9/site-packages/pyupgrade.py", line 2770, in _fix_file
    contents_text = _fix_tokens(contents_text, min_version=args.min_version)
  File "/Users/bgabor8/git/a/venv/lib/python3.9/site-packages/pyupgrade.py", line 808, in _fix_tokens
    _fix_import_removals(tokens, i, min_version)
  File "/Users/bgabor8/git/a/venv/lib/python3.9/site-packages/pyupgrade.py", line 732, in _fix_import_removals
    if modname not in IMPORT_REMOVALS[min_version]:
KeyError: (3, 9)
```

Discussion:

Patch:
diff --git a/pyupgrade.py b/pyupgrade.py
index 796064f..254c9ff 100644
--- a/pyupgrade.py
+++ b/pyupgrade.py
@@ -690,6 +690,7 @@ def _build_import_removals() -> Dict[MinVersion, Dict[str, Tuple[str, ...]]]:
         ((3, 6), ()),
         ((3, 7), ('generator_stop',)),
         ((3, 8), ()),
+        ((3, 9), ()),
     )
 
     prev: Tuple[str, ...] = ()


Test patch:
diff --git a/tests/main_test.py b/tests/main_test.py
index cd992d1..997f682 100644
--- a/tests/main_test.py
+++ b/tests/main_test.py
@@ -19,6 +19,7 @@ def test_main_trivial():
         ('--py36-plus',),
         ('--py37-plus',),
         ('--py38-plus',),
+        ('--py39-plus',),
     ),
 )
 def test_main_noop(tmpdir, args):