Add compatibility with Python 3.9.

Review Request #11270 — Created Nov. 8, 2020 and submitted

chipx86
Djblets
release-2.0.x
djblets

Python 3.9 removed a couple of deprecated functions/arguments that we
used, which was the only thing preventing us from claiming Python 3.9
support.

This change updates our usage of json.loads() to not pass an
encoding= argument (removed in Python 3.9) and to instead handle
decoding byte strings up-front, and to update unit tests to not depend
on an internal, deprecated method on HTMLParser.

setup.py has been updated to reflect the current supported list of
Python versions.

Unit tests pass.

Summary
Add compatibility with Python 3.9.
Description From Last Updated

Is this really something that can happen? It seems like if we had double-encoded JSON, once it's in unicode, loadsing ...

daviddavid
david
  1. 
      
  2. djblets/db/fields/json_field.py (Diff revision 1)
     
     
     

    Is this really something that can happen? It seems like if we had double-encoded JSON, once it's in unicode, loadsing it should stay in unicode.

    1. Probably. I was just keeping the same logic. I'll change it.

  3. 
      
chipx86
david
  1. Ship It!
  2. 
      
chipx86
Review request changed

Status: Closed (submitted)

Change Summary:

Pushed to release-2.0.x (dde5b99)
Loading...