[+] implement toml_add_overlay
This commit is contained in:
parent
49119673d2
commit
20a4570484
@ -5,7 +5,7 @@ project(
|
||||
).stdout().strip('\n'),
|
||||
# 'online.fxreader.uv',
|
||||
# ['c', 'cpp'],
|
||||
version: '0.1.5.17+27.13',
|
||||
version: '0.1.5.17+27.14',
|
||||
# default_options: [
|
||||
# 'cpp_std=c++23',
|
||||
# # 'prefer_static=true',
|
||||
|
@ -796,6 +796,7 @@ class CLI(abc.ABC):
|
||||
|
||||
from . import cli_bootstrap
|
||||
from . import argparse as pr34_argparse
|
||||
from .toml import toml_add_overlay
|
||||
|
||||
project = self.projects[project_name]
|
||||
|
||||
@ -859,9 +860,14 @@ class CLI(abc.ABC):
|
||||
# assert isinstance(pyproject_tool, tomlkit.items.Array)
|
||||
assert isinstance(pyproject_tool, MutableMapping)
|
||||
|
||||
for k, v in module.tool.items():
|
||||
assert not k in pyproject_tool
|
||||
pyproject_tool[k] = v
|
||||
toml_add_overlay(
|
||||
pyproject_tool,
|
||||
module.tool,
|
||||
)
|
||||
|
||||
# for k, v in module.tool.items():
|
||||
# assert not k in pyproject_tool
|
||||
# pyproject_tool[k] = v
|
||||
|
||||
del p
|
||||
del pyproject_tool
|
||||
|
30
python/online/fxreader/pr34/commands_typed/toml.py
Normal file
30
python/online/fxreader/pr34/commands_typed/toml.py
Normal file
@ -0,0 +1,30 @@
|
||||
from .cli_bootstrap import check_dict
|
||||
|
||||
from typing import (
|
||||
Any,
|
||||
Mapping,
|
||||
MutableMapping,
|
||||
Iterable,
|
||||
)
|
||||
|
||||
|
||||
def toml_add_overlay(
|
||||
toml: Any,
|
||||
overlay: Any,
|
||||
) -> Any:
|
||||
if isinstance(toml, MutableMapping):
|
||||
overlay2 = check_dict(
|
||||
overlay,
|
||||
str,
|
||||
)
|
||||
|
||||
for k, v in overlay2.items():
|
||||
if not k in toml:
|
||||
toml[k] = v
|
||||
else:
|
||||
toml_add_overlay(
|
||||
toml[k],
|
||||
v,
|
||||
)
|
||||
else:
|
||||
raise NotImplementedError
|
BIN
releases/whl/online_fxreader_pr34-0.1.5.17+27.14-py3-none-any.whl
(Stored with Git LFS)
Normal file
BIN
releases/whl/online_fxreader_pr34-0.1.5.17+27.14-py3-none-any.whl
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user