mirror of
https://github.com/micropython/micropython.git
synced 2025-12-16 09:50:15 +01:00
all: Remove Python 2.7 support.
Python 2.7 has been EOL since January 2020. Ubuntu oldoldlts (Focal Fossa, 20.04) has Python 3.8. Debian oldoldstable (Buster, from 2019) has Python 3.7. RHEL 8 (from 2019) has Python 3.6. It's easier than ever to install a modern Python using uv. Given this, it seems like a fine idea to drop Python 2.7 support. Even though the build is not tested on Python as old as 3.3, I left comments stating that "3.3+" is the baseline Python version. However, it might make sense to bump this to e.g., 3.10, the oldest Python 3 version used during CI. Or, using uv or another method actually test on the oldest Python interpreter that is desirable to support (uv goes back to Python 3.7 easily; in October 2025, the oldest supported Python interpreter version will be 3.10) Signed-off-by: Jeff Epler <jepler@gmail.com>
This commit is contained in:
committed by
Damien George
parent
d441788975
commit
f0c6f16b9e
@@ -24,40 +24,20 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
|
||||
# Python 2/3/MicroPython compatibility code
|
||||
from __future__ import print_function
|
||||
import sys
|
||||
|
||||
if sys.version_info[0] == 2:
|
||||
from binascii import hexlify as hexlify_py2
|
||||
|
||||
str_cons = lambda val, enc=None: str(val)
|
||||
bytes_cons = lambda val, enc=None: bytearray(val)
|
||||
is_str_type = lambda o: isinstance(o, str)
|
||||
is_bytes_type = lambda o: type(o) is bytearray
|
||||
is_int_type = lambda o: isinstance(o, int) or isinstance(o, long) # noqa: F821
|
||||
|
||||
def hexlify_to_str(b):
|
||||
x = hexlify_py2(b)
|
||||
return ":".join(x[i : i + 2] for i in range(0, len(x), 2))
|
||||
|
||||
elif sys.version_info[0] == 3: # Also handles MicroPython
|
||||
from binascii import hexlify
|
||||
|
||||
str_cons = str
|
||||
bytes_cons = bytes
|
||||
is_str_type = lambda o: isinstance(o, str)
|
||||
is_bytes_type = lambda o: isinstance(o, bytes)
|
||||
is_int_type = lambda o: isinstance(o, int)
|
||||
|
||||
def hexlify_to_str(b):
|
||||
return str(hexlify(b, ":"), "ascii")
|
||||
|
||||
|
||||
# end compatibility code
|
||||
|
||||
import sys
|
||||
import struct
|
||||
import sys
|
||||
from binascii import hexlify
|
||||
|
||||
str_cons = str
|
||||
bytes_cons = bytes
|
||||
is_str_type = lambda o: isinstance(o, str)
|
||||
is_bytes_type = lambda o: isinstance(o, bytes)
|
||||
is_int_type = lambda o: isinstance(o, int)
|
||||
|
||||
|
||||
def hexlify_to_str(b):
|
||||
return str(hexlify(b, ":"), "ascii")
|
||||
|
||||
|
||||
sys.path.append(sys.path[0] + "/../py")
|
||||
import makeqstrdata as qstrutil
|
||||
|
||||
Reference in New Issue
Block a user