255 lines
8.1 KiB
Diff
255 lines
8.1 KiB
Diff
|
From b81b1da55ef0f2768413669725d2874fcb0c29fb Mon Sep 17 00:00:00 2001
|
||
|
From: Kale Kundert <kale@thekunderts.net>
|
||
|
Date: Sun, 2 Feb 2020 19:22:34 -0500
|
||
|
Subject: [PATCH] Replace 'pytoml' with 'toml'
|
||
|
|
||
|
The pytoml package is deprecated, and doesn't support the most recent
|
||
|
TOML standard (e.g. dotted keys).
|
||
|
---
|
||
|
doc/development.rst | 2 +-
|
||
|
doc/pyproject_toml.rst | 2 +-
|
||
|
flit/init.py | 2 +-
|
||
|
flit/tomlify.py | 8 ++++----
|
||
|
flit_core/flit_core/build_thyself.py | 2 +-
|
||
|
flit_core/flit_core/config.py | 2 +-
|
||
|
flit_core/flit_core/sdist.py | 2 +-
|
||
|
flit_core/flit_core/wheel.py | 2 +-
|
||
|
pyproject.toml | 2 +-
|
||
|
tests/test_init.py | 12 ++++++------
|
||
|
tests/test_tomlify.py | 4 ++--
|
||
|
tox.ini | 2 +-
|
||
|
12 files changed, 21 insertions(+), 21 deletions(-)
|
||
|
|
||
|
diff --git doc/development.rst doc/development.rst
|
||
|
index 9b8dc5e..f714999 100644
|
||
|
--- doc/development.rst
|
||
|
+++ doc/development.rst
|
||
|
@@ -5,7 +5,7 @@ To get a development installation of Flit itself::
|
||
|
|
||
|
git clone https://github.com/takluyver/flit.git
|
||
|
cd flit
|
||
|
- python3 -m pip install docutils requests pytoml
|
||
|
+ python3 -m pip install docutils requests toml
|
||
|
python3 bootstrap_dev.py
|
||
|
|
||
|
This links Flit into the current Python environment, so you can make changes
|
||
|
diff --git doc/pyproject_toml.rst doc/pyproject_toml.rst
|
||
|
index f9ddc7f..8d38bf9 100644
|
||
|
--- doc/pyproject_toml.rst
|
||
|
+++ doc/pyproject_toml.rst
|
||
|
@@ -120,7 +120,7 @@ Here's the full metadata section from flit itself:
|
||
|
"flit_core>=2.2.0",
|
||
|
"requests",
|
||
|
"docutils",
|
||
|
- "pytoml",
|
||
|
+ "toml",
|
||
|
"zipfile36; python_version in '3.3 3.4 3.5'",
|
||
|
]
|
||
|
requires-python=">=3.5"
|
||
|
diff --git flit/init.py flit/init.py
|
||
|
index f7ea93a..b0c77c6 100644
|
||
|
--- flit/init.py
|
||
|
+++ flit/init.py
|
||
|
@@ -5,7 +5,7 @@
|
||
|
from pathlib import Path
|
||
|
import re
|
||
|
import sys
|
||
|
-import pytoml as toml
|
||
|
+import toml
|
||
|
|
||
|
def get_data_dir():
|
||
|
"""Get the directory path for flit user data files.
|
||
|
diff --git flit/tomlify.py flit/tomlify.py
|
||
|
index 0c8db69..a9c9c60 100644
|
||
|
--- flit/tomlify.py
|
||
|
+++ flit/tomlify.py
|
||
|
@@ -5,7 +5,7 @@
|
||
|
import configparser
|
||
|
import os
|
||
|
from pathlib import Path
|
||
|
-import pytoml
|
||
|
+import toml
|
||
|
|
||
|
from .config import metadata_list_fields
|
||
|
from .init import TEMPLATE
|
||
|
@@ -40,11 +40,11 @@ def convert(path):
|
||
|
|
||
|
written_entrypoints = False
|
||
|
with Path('pyproject.toml').open('w', encoding='utf-8') as f:
|
||
|
- f.write(TEMPLATE.format(metadata=pytoml.dumps(metadata)))
|
||
|
+ f.write(TEMPLATE.format(metadata=toml.dumps(metadata)))
|
||
|
|
||
|
if scripts:
|
||
|
f.write('\n[tool.flit.scripts]\n')
|
||
|
- pytoml.dump(scripts, f)
|
||
|
+ toml.dump(scripts, f)
|
||
|
|
||
|
for groupname, group in entrypoints.items():
|
||
|
if not dict(group):
|
||
|
@@ -53,7 +53,7 @@ def convert(path):
|
||
|
if '.' in groupname:
|
||
|
groupname = '"{}"'.format(groupname)
|
||
|
f.write('\n[tool.flit.entrypoints.{}]\n'.format(groupname))
|
||
|
- pytoml.dump(OrderedDict(group), f)
|
||
|
+ toml.dump(OrderedDict(group), f)
|
||
|
written_entrypoints = True
|
||
|
|
||
|
print("Written 'pyproject.toml'")
|
||
|
diff --git flit_core/flit_core/build_thyself.py flit_core/flit_core/build_thyself.py
|
||
|
index 7daf67f..f3aaf7c 100644
|
||
|
--- flit_core/flit_core/build_thyself.py
|
||
|
+++ flit_core/flit_core/build_thyself.py
|
||
|
@@ -25,7 +25,7 @@
|
||
|
'summary': ('Distribution-building parts of Flit. '
|
||
|
'See flit package for more information'),
|
||
|
'requires_dist': [
|
||
|
- 'pytoml',
|
||
|
+ 'toml',
|
||
|
],
|
||
|
'requires_python': '>=3.4',
|
||
|
'classifiers': [
|
||
|
diff --git flit_core/flit_core/config.py flit_core/flit_core/config.py
|
||
|
index 0af9c00..6ed20d3 100644
|
||
|
--- flit_core/flit_core/config.py
|
||
|
+++ flit_core/flit_core/config.py
|
||
|
@@ -3,7 +3,7 @@
|
||
|
import logging
|
||
|
import os
|
||
|
import os.path as osp
|
||
|
-import pytoml as toml
|
||
|
+import toml
|
||
|
import re
|
||
|
|
||
|
log = logging.getLogger(__name__)
|
||
|
diff --git flit_core/flit_core/sdist.py flit_core/flit_core/sdist.py
|
||
|
index 1fe5bb4..963b4e5 100644
|
||
|
--- flit_core/flit_core/sdist.py
|
||
|
+++ flit_core/flit_core/sdist.py
|
||
|
@@ -95,7 +95,7 @@ def __init__(self, module, metadata, cfgdir, reqs_by_extra, entrypoints,
|
||
|
|
||
|
@classmethod
|
||
|
def from_ini_path(cls, ini_path: Path):
|
||
|
- # Local import so bootstrapping doesn't try to load pytoml
|
||
|
+ # Local import so bootstrapping doesn't try to load toml
|
||
|
from .config import read_flit_config
|
||
|
ini_info = read_flit_config(ini_path)
|
||
|
srcdir = ini_path.parent
|
||
|
diff --git flit_core/flit_core/wheel.py flit_core/flit_core/wheel.py
|
||
|
index 1550846..2bc55e1 100644
|
||
|
--- flit_core/flit_core/wheel.py
|
||
|
+++ flit_core/flit_core/wheel.py
|
||
|
@@ -83,7 +83,7 @@ def __init__(self, directory, module, metadata, entrypoints, target_fp):
|
||
|
|
||
|
@classmethod
|
||
|
def from_ini_path(cls, ini_path, target_fp):
|
||
|
- # Local import so bootstrapping doesn't try to load pytoml
|
||
|
+ # Local import so bootstrapping doesn't try to load toml
|
||
|
from .config import read_flit_config
|
||
|
directory = ini_path.parent
|
||
|
ini_info = read_flit_config(ini_path)
|
||
|
diff --git pyproject.toml pyproject.toml
|
||
|
index ac8d001..0af74b2 100644
|
||
|
--- pyproject.toml
|
||
|
+++ pyproject.toml
|
||
|
@@ -11,7 +11,7 @@ requires=[
|
||
|
"flit_core>=3.0.0",
|
||
|
"requests",
|
||
|
"docutils",
|
||
|
- "pytoml",
|
||
|
+ "toml",
|
||
|
"zipfile36; python_version in '3.3 3.4 3.5'",
|
||
|
]
|
||
|
requires-python=">=3.5"
|
||
|
diff --git tests/test_init.py tests/test_init.py
|
||
|
index fb8ad4d..7330ff5 100644
|
||
|
--- tests/test_init.py
|
||
|
+++ tests/test_init.py
|
||
|
@@ -6,7 +6,7 @@
|
||
|
from unittest.mock import patch
|
||
|
import pytest
|
||
|
|
||
|
-import pytoml
|
||
|
+import toml
|
||
|
|
||
|
from flit import init
|
||
|
|
||
|
@@ -107,7 +107,7 @@ def test_init():
|
||
|
generated = Path(td) / 'pyproject.toml'
|
||
|
assert_isfile(generated)
|
||
|
with generated.open() as f:
|
||
|
- data = pytoml.load(f)
|
||
|
+ data = toml.load(f)
|
||
|
assert data['tool']['flit']['metadata'][
|
||
|
'author-email'] == "test@example.com"
|
||
|
license = Path(td) / 'LICENSE'
|
||
|
@@ -131,7 +131,7 @@ def test_init_homepage_and_license_are_optional():
|
||
|
ti = init.TerminalIniter(td)
|
||
|
ti.initialise()
|
||
|
with Path(td, 'pyproject.toml').open() as f:
|
||
|
- data = pytoml.load(f)
|
||
|
+ data = toml.load(f)
|
||
|
assert not Path(td, 'LICENSE').exists()
|
||
|
metadata = data['tool']['flit']['metadata']
|
||
|
assert metadata == {
|
||
|
@@ -154,7 +154,7 @@ def test_init_homepage_validator():
|
||
|
ti = init.TerminalIniter(td)
|
||
|
ti.initialise()
|
||
|
with Path(td, 'pyproject.toml').open() as f:
|
||
|
- data = pytoml.load(f)
|
||
|
+ data = toml.load(f)
|
||
|
metadata = data['tool']['flit']['metadata']
|
||
|
assert metadata == {
|
||
|
'author': 'Test Author',
|
||
|
@@ -176,7 +176,7 @@ def test_author_email_field_is_optional():
|
||
|
ti = init.TerminalIniter(td)
|
||
|
ti.initialise()
|
||
|
with Path(td, 'pyproject.toml').open() as f:
|
||
|
- data = pytoml.load(f)
|
||
|
+ data = toml.load(f)
|
||
|
assert not Path(td, 'LICENSE').exists()
|
||
|
metadata = data['tool']['flit']['metadata']
|
||
|
assert metadata == {
|
||
|
@@ -216,7 +216,7 @@ def test_init_readme_found_yes_choosen():
|
||
|
ti = init.TerminalIniter(td)
|
||
|
ti.initialise()
|
||
|
with Path(td, 'pyproject.toml').open() as f:
|
||
|
- data = pytoml.load(f)
|
||
|
+ data = toml.load(f)
|
||
|
|
||
|
metadata = data['tool']['flit']['metadata']
|
||
|
assert metadata == {
|
||
|
diff --git tests/test_tomlify.py tests/test_tomlify.py
|
||
|
index 2bd75dc..a7b7978 100644
|
||
|
--- tests/test_tomlify.py
|
||
|
+++ tests/test_tomlify.py
|
||
|
@@ -1,6 +1,6 @@
|
||
|
import os
|
||
|
from pathlib import Path
|
||
|
-import pytoml
|
||
|
+import toml
|
||
|
from shutil import copy
|
||
|
from testpath import assert_isfile
|
||
|
|
||
|
@@ -18,7 +18,7 @@ def test_tomlify(copy_sample, monkeypatch):
|
||
|
assert_isfile(pyproject_toml)
|
||
|
|
||
|
with pyproject_toml.open(encoding='utf-8') as f:
|
||
|
- content = pytoml.load(f)
|
||
|
+ content = toml.load(f)
|
||
|
|
||
|
assert 'build-system' in content
|
||
|
assert 'tool' in content
|
||
|
diff --git tox.ini tox.ini
|
||
|
index 08ce1bf..d1025e1 100644
|
||
|
--- tox.ini
|
||
|
+++ tox.ini
|
||
|
@@ -18,7 +18,7 @@ deps =
|
||
|
testpath
|
||
|
responses
|
||
|
docutils
|
||
|
- pytoml
|
||
|
+ toml
|
||
|
pytest>=2.7.3
|
||
|
pytest-cov
|
||
|
|