Commit e9738b1c by finswimmer Committed by Arun Babu Neelicattu

layouts: add readme to pyproject.toml on creation

Relates-to: #280

Co-authored-by: Arun Babu Neelicattu <arun.neelicattu@gmail.com>
parent 06f7c2d2
...@@ -25,6 +25,7 @@ version = "" ...@@ -25,6 +25,7 @@ version = ""
description = "" description = ""
authors = [] authors = []
license = "" license = ""
readme = ""
packages = [] packages = []
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -37,6 +38,8 @@ BUILD_SYSTEM_MAX_VERSION: Optional[str] = None ...@@ -37,6 +38,8 @@ BUILD_SYSTEM_MAX_VERSION: Optional[str] = None
class Layout: class Layout:
ACCEPTED_README_FORMATS = {"md", "rst"}
def __init__( def __init__(
self, self,
project: str, project: str,
...@@ -56,7 +59,15 @@ class Layout: ...@@ -56,7 +59,15 @@ class Layout:
self._package_name = ".".join(self._package_path_relative.parts) self._package_name = ".".join(self._package_path_relative.parts)
self._version = version self._version = version
self._description = description self._description = description
self._readme_format = readme_format
self._readme_format = readme_format.lower()
if self._readme_format not in self.ACCEPTED_README_FORMATS:
raise ValueError(
"Invalid readme format '{}', use one of {}.".format(
readme_format, ", ".join(self.ACCEPTED_README_FORMATS)
)
)
self._license = license self._license = license
self._python = python self._python = python
self._dependencies = dependencies or {} self._dependencies = dependencies or {}
...@@ -120,6 +131,7 @@ class Layout: ...@@ -120,6 +131,7 @@ class Layout:
else: else:
poetry_content.remove("license") poetry_content.remove("license")
poetry_content["readme"] = "README.{}".format(self._readme_format)
packages = self.get_package_include() packages = self.get_package_include()
if packages: if packages:
poetry_content["packages"].append(packages) poetry_content["packages"].append(packages)
...@@ -164,13 +176,10 @@ class Layout: ...@@ -164,13 +176,10 @@ class Layout:
package_init = package_path / "__init__.py" package_init = package_path / "__init__.py"
package_init.touch() package_init.touch()
def _create_readme(self, path: "Path") -> None: def _create_readme(self, path: "Path") -> "Path":
if self._readme_format == "rst": readme_file = path.joinpath("README.{}".format(self._readme_format))
readme_file = path / "README.rst"
else:
readme_file = path / "README.md"
readme_file.touch() readme_file.touch()
return readme_file
@staticmethod @staticmethod
def _create_tests(path: "Path") -> None: def _create_tests(path: "Path") -> None:
......
...@@ -66,6 +66,7 @@ version = "1.2.3" ...@@ -66,6 +66,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -113,6 +114,7 @@ version = "1.2.3" ...@@ -113,6 +114,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -146,6 +148,7 @@ name = "my-package" ...@@ -146,6 +148,7 @@ name = "my-package"
version = "1.2.3" version = "1.2.3"
description = "" description = ""
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
readme = "README.md"
packages = [{{include = "my_package"}}] packages = [{{include = "my_package"}}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -188,6 +191,7 @@ version = "1.2.3" ...@@ -188,6 +191,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -231,6 +235,7 @@ version = "1.2.3" ...@@ -231,6 +235,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -274,6 +279,7 @@ version = "1.2.3" ...@@ -274,6 +279,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -320,6 +326,7 @@ version = "1.2.3" ...@@ -320,6 +326,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -367,6 +374,7 @@ version = "1.2.3" ...@@ -367,6 +374,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -413,6 +421,7 @@ version = "1.2.3" ...@@ -413,6 +421,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -446,6 +455,8 @@ version = "1.2.3" ...@@ -446,6 +455,8 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
python = "~2.7 || ^3.6" python = "~2.7 || ^3.6"
...@@ -479,6 +490,7 @@ version = "1.2.3" ...@@ -479,6 +490,7 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}] packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
...@@ -520,6 +532,8 @@ version = "1.2.3" ...@@ -520,6 +532,8 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
python = "~2.7 || ^3.6" python = "~2.7 || ^3.6"
...@@ -554,6 +568,8 @@ version = "1.2.3" ...@@ -554,6 +568,8 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
python = "~2.7 || ^3.6" python = "~2.7 || ^3.6"
...@@ -594,11 +610,15 @@ version = "1.2.3" ...@@ -594,11 +610,15 @@ version = "1.2.3"
description = "This is a description" description = "This is a description"
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
license = "MIT" license = "MIT"
readme = "README.md"
packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
python = "~2.7 || ^3.6" python = "~2.7 || ^3.6"
[tool.poetry.dev-dependencies] [tool.poetry.dev-dependencies]
pytest = "^3.6.0"
pytest-requests = "^0.2.0"
""" """
output = tester.io.fetch_output() output = tester.io.fetch_output()
...@@ -657,6 +677,8 @@ name = "my-package" ...@@ -657,6 +677,8 @@ name = "my-package"
version = "0.1.0" version = "0.1.0"
description = "" description = ""
authors = ["Your Name <you@example.com>"] authors = ["Your Name <you@example.com>"]
readme = "README.md"
packages = [{include = "my_package"}]
[tool.poetry.dependencies] [tool.poetry.dependencies]
python = "^3.6" python = "^3.6"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment