Skip to content

Commit

Permalink
New 00README implementation
Browse files Browse the repository at this point in the history
  • Loading branch information
norbusan committed Sep 1, 2024
1 parent cef4f5c commit b820923
Show file tree
Hide file tree
Showing 15 changed files with 1,147 additions and 0 deletions.
34 changes: 34 additions & 0 deletions zerozeroreadme/mypy.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
[mypy]
mypy_path = zerozeroreadme

#
# Covered by --strict, with some turned off:
#
disallow_untyped_defs=True
check_untyped_defs=True
# currently an issue with sql alchemy
disallow_subclassing_any=false
# Need to experiment/think about this one:
disallow_any_decorated=false
warn_redundant_casts=True
warn_return_any=True
warn_unused_ignores=True
# this seems to be at least somewhat non-functioning:
warn_unused_configs=True
#may be worth reconsidering this one:
no_implicit_optional=True
strict_optional=True

#
# Other:
#
ignore_missing_imports=True
follow_imports=silent

#
# Plugins:
#
plugins = pydantic.mypy

[tex_inspection.*]
disallow_untyped_calls=True
386 changes: 386 additions & 0 deletions zerozeroreadme/poetry.lock

Large diffs are not rendered by default.

34 changes: 34 additions & 0 deletions zerozeroreadme/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
[tool.poetry]
name = "zerozeroreadme"
description = "00README parser and tools"
version = "0.0.1"
authors = [ "Norbert Preining" ]

[tool.poetry.dependencies]
python = "^3.11"
ruamel-yaml = "^0.18.5"
toml = "^0.10.2"
tomli_w = "^1.0"

[tool.poetry.group.dev.dependencies]
pytest = "^8.3.2"
mypy = "*"
mypy-extensions = "*"
pydantic = "2.8.*"
types-toml = "^0.10.8.20240310"

[tool.ruff]
# Extend the `pyproject.toml` from the toplevel dir
extend = "../pyproject.toml"
extend-exclude = ["tests"]

[tool.black]
line-length = 120

[tool.pylint]
max-line-length = 120

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

Empty file.
9 changes: 9 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_bad_01/00README.XXX
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Makefile include
fake-file-2.tex toplevelfile
fake-file-3.tex ignore
Q Q
A B C
## ||| eee

fake-file-2.tex landscape
fake-file-1.tex keepcomments
10 changes: 10 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_v1_01/00README.XXX
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
fake-file-1.tex include
fake-file-2.tex toplevelfile
fake-file-3.TEX ignore
fake-file-2.dvi landscape
fake-file-4.dvi keepcomments
fake-file-5.tex toplevelfile
nostamp
nohypertex
myfonts1.map fontmap
myfonts2.map fontmap
17 changes: 17 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_v2_01/00README.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
compilation:
compiler: pdflatex
fontmaps:
- myfonts1.map
- myfonts2.map
sources:
- filename: fake-file-1.tex
usage: include
- filename: fake-file-2.tex
- filename: fake-file-3.TEX
usage: ignore
- filename: fake-file-2.dvi
orientation: landscape
- filename: fake-file-4.dvi
keep_comments: yes
- filename: yaml-5.tex
stamp: no
34 changes: 34 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_v2_02/00README.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{
"compilation": {
"compiler": "latex",
"fontmaps": [
"myfonts1.map",
"myfonts2.map"
]
},
"sources": [
{
"filename": "fake-file-1.tex",
"usage": "include"
},
{
"filename": "fake-file-2.tex"
},
{
"filename": "fake-file-3.TEX",
"usage": "ignore"
},
{
"filename": "fake-file-2.dvi",
"orientation": "landscape"
},
{
"filename": "fake-file-4.dvi",
"keep_comments": "yes"
},
{
"filename": "jackson-5.tex"
}
],
"stamp": "no"
}
26 changes: 26 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_v2_03/00README.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
stamp = "no"
[[sources]]
filename = "fake-file-1.tex"
usage = "include"

[[sources]]
filename = "fake-file-2.tex"

[[sources]]
filename = "fake-file-3.TEX"
usage = "ignore"

[[sources]]
filename = "fake-file-2.dvi"
orientation = "landscape"

[[sources]]
filename = "fake-file-4.dvi"
keep_comments = "yes"

[[sources]]
filename = "toml-5.tex"

[compilation]
compiler = "pdflatex"
fontmaps = ["myfonts1.map", "myfonts2.map"]
41 changes: 41 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_v2_04/00README.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"compilation": {
"compiler": "pdflatex",
"fontmaps": [
{
"fontmap": "myfonts1.map"
},
{
"fontmap": "myfonts2.map"
}
]
},
"sources": [
{
"filename": "fake-file-1.tex",
"usage": "include"
},
{
"filename": "fake-file-2.tex"
},
{
"filename": "fake-file-3.TEX",
"usage": "ignore"
},
{
"filename": "fake-file-2.dvi",
"orientation": "landscape"
},
{
"filename": "fake-file-4.dvi",
"keep_comments": "yes"
},
{
"filename": "fake-file-5.tex"
},
{
"filename": "fake-file-6.tex"
}
],
"stamp": "no"
}
23 changes: 23 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_v2_04/00README.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
[compilation]
compiler = "pdflatex"
fontmaps = "myfonts1.map", "myfonts2.map"
stamp = "no"

[[sources]]
filename = "fake-file-1.tex"
usage = "include"

[[sources]]
filename = "fake-file-2.tex"

[[sources]]
filename = "fake-file-3.TEX"
usage = "ignore"

[[sources]]
filename = "fake-file-2.dvi"
orientation = "landscape"

[[sources]]
filename = "fake-file-4.dvi"
keep_comments = "yes"
18 changes: 18 additions & 0 deletions zerozeroreadme/tests/fixture/zzrm_v2_04/00README.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
compilation:
compiler: pdflatex
fontmaps:
- myfonts1.map
- myfonts2.map
sources:
- filename: fake-file-1.tex
usage: include
- filename: fake-file-2.tex
- filename: fake-file-3.TEX
usage: ignore
- filename: fake-file-2.dvi
orientation: landscape
- filename: fake-file-4.dvi
keep_comments: yes
- filename: yaml1.tex
- filename: yaml2.tex
stamp: no
24 changes: 24 additions & 0 deletions zerozeroreadme/tests/test_typings.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
"""Tests using mypy."""
import os
import shutil
import subprocess
import unittest
from unittest import TestCase


class MyPyTest(TestCase):
"""Class for testing modules with mypy."""

def test_run_mypy_module(self) -> None:
"""Run mypy on all module sources."""
mypy = shutil.which("mypy")
if mypy is None:
raise EnvironmentError("mypy not found in PATH")
root_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
result: int = subprocess.call([mypy, "-p", "zerozeroreadme"],
env=os.environ, cwd=root_dir)
self.assertEqual(result, 0, 'Expect 0 type errors when running mypy')


if __name__ == '__main__':
unittest.main()
Loading

0 comments on commit b820923

Please sign in to comment.