More module descriptions

This commit is contained in:
Dima Gerasimov 2020-02-26 16:32:03 +01:00
parent ab77b1d919
commit d00e09d1a1
17 changed files with 92 additions and 15 deletions

View file

@ -26,13 +26,31 @@ Short example to give you an idea: "which subreddits I find most interesting?"
* Supported modules * Supported modules
#+begin_src python :results output :python "with_my python3" #+begin_src python :results output drawer :exports output :python "with_my python3"
from pathlib import Path from pathlib import Path
import re import re
import importlib import importlib
def ignored(m: str): def ignored(m: str):
return re.match('^my.kython', m) excluded = [
'kython.*',
'bluemaestro.check',
'body',
'books',
'calendar',
'coding',
'coding.codeforces',
'coding.topcoder',
'media',
'mycfg_stub',
'reading',
'takeout',
'_rss',
'common',
'error',
]
exs = '|'.join(excluded)
return re.match(f'^my.({exs})$', m)
for f in sorted(Path('my/').glob('**/*.py')): for f in sorted(Path('my/').glob('**/*.py')):
if f.name == '__init__.py': if f.name == '__init__.py':
@ -40,19 +58,25 @@ for f in sorted(Path('my/').glob('**/*.py')):
m = str(f.with_suffix('')).replace('/', '.') m = str(f.with_suffix('')).replace('/', '.')
if ignored(m): if ignored(m):
continue continue
# TODO module link?
# TODO I've done this for infra diagram already...
try: try:
mod = importlib.import_module(m) mod = importlib.import_module(m)
doc = mod.__doc__ doc = mod.__doc__
if doc is None: if doc is None:
print(m, ": NO DOCS!") pass # TODO
# print(m, ": NO DOCS!")
else:
fline = doc.strip().splitlines()[0]
print('-', m, ':', fline)
except Exception as e: except Exception as e:
print(m, e) # TODO pass
# print(m, e) # TODO
#+end_src #+end_src
* Setting up * Setting up
** =mycfg= package for private paths/repositories (optional) ** =mycfg= package for private paths/repositories (optional)
If you're not planning to use private configuration (some modules don't need it) you can skip straight to the next step. Still, I'd recommend you to read anyway. If you're not planning to use private configuration (some modules don't need it) you can skip straight to the next step. Still, I'd recommend you to read anyway.

View file

@ -1,4 +1,9 @@
#!/usr/bin/python3 #!/usr/bin/python3
"""
Bluemaestro temperature/humidity/pressure monitor
"""
# TODO link?
import logging import logging
import sqlite3 import sqlite3
from datetime import datetime from datetime import datetime

View file

@ -1,4 +1,8 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
"""
Blood tracking
"""
from datetime import datetime from datetime import datetime
from typing import Iterable, NamedTuple, Optional from typing import Iterable, NamedTuple, Optional
from itertools import chain from itertools import chain

View file

@ -1,3 +1,7 @@
"""
Kobo e-ink reader: annotations and reading stats
"""
from typing import Callable, Union, List from typing import Callable, Union, List
from mycfg import paths from mycfg import paths

View file

@ -1,3 +1,7 @@
"""
Provides data on days off work (based on public holidays + manual inputs)
"""
from functools import lru_cache from functools import lru_cache
from datetime import date, datetime, timedelta from datetime import date, datetime, timedelta
import re import re

View file

@ -1,3 +1,7 @@
"""
Github events and their metadata: comments/issues/pull requests
"""
from typing import Dict, List, Union, Any, NamedTuple, Tuple, Optional, Iterator, TypeVar, Set from typing import Dict, List, Union, Any, NamedTuple, Tuple, Optional, Iterator, TypeVar, Set
from datetime import datetime from datetime import datetime
import json import json

View file

@ -1,3 +1,7 @@
"""
Module for Facebook Messenger messages
"""
from pathlib import Path from pathlib import Path
from shutil import rmtree from shutil import rmtree
from tempfile import TemporaryDirectory from tempfile import TemporaryDirectory

View file

@ -1,3 +1,7 @@
"""
Module for Feedbin RSS reader
"""
from .common import listify from .common import listify
from ._rss import Subscription from ._rss import Subscription

View file

@ -1,3 +1,7 @@
"""
Module for Fedly RSS reader
"""
from .common import listify from .common import listify
from ._rss import Subscription from ._rss import Subscription

View file

@ -1,6 +1,9 @@
"""
Hypothes.is highlights and annotations
"""
from .common import PathIsh from .common import PathIsh
# TODO add docstring explaining which module is it?
import mycfg.repos.hypexport as hypexport import mycfg.repos.hypexport as hypexport
from mycfg import paths from mycfg import paths

View file

@ -1,9 +1,5 @@
""" """
Uses instapaper API data export JSON file. Instapaper bookmarks, highlights and annotations
Set via
- ~configure~ method
- or in ~mycfg.instpaper.export_path~
""" """
from datetime import datetime from datetime import datetime
import json import json
@ -22,6 +18,7 @@ from .common import group_by_key, PathIsh, get_files
import mycfg.repos.instapexport.dal as dal import mycfg.repos.instapexport.dal as dal
# TODO FIXME remove that stuff
_export_path: Optional[Path] = None _export_path: Optional[Path] = None
def configure(*, export_path: Optional[PathIsh]=None) -> None: def configure(*, export_path: Optional[PathIsh]=None) -> None:
if export_path is not None: if export_path is not None:

View file

@ -1,3 +1,7 @@
"""
Module for Google Takeout data
"""
import json import json
import logging import logging
import re import re

View file

@ -1,6 +1,5 @@
""" """
Module for Materialistic app for Hackernews Module for [[https://play.google.com/store/apps/details?id=io.github.hidroh.materialistic][Materialistic]] app for Hackernews
https://play.google.com/store/apps/details?id=io.github.hidroh.materialistic
""" """
from datetime import datetime from datetime import datetime

View file

@ -1,3 +1,7 @@
"""
Module for pinboard.in bookmarks
"""
from .common import get_files from .common import get_files
from mycfg.repos.pinbexport import dal as pinbexport from mycfg.repos.pinbexport import dal as pinbexport

View file

@ -1,4 +1,9 @@
#!/usr/bin/python3 #!/usr/bin/python3
"""
Module for Polar articles and highlights
"""
from pathlib import Path from pathlib import Path
from datetime import datetime from datetime import datetime
import logging import logging
@ -29,6 +34,7 @@ def parse_dt(s: str) -> datetime:
Uid = str Uid = str
# TODO get rid of this?
class Error(Exception): class Error(Exception):
def __init__(self, p: Path, *args, **kwargs) -> None: def __init__(self, p: Path, *args, **kwargs) -> None:
super().__init__(*args, **kwargs) # type: ignore super().__init__(*args, **kwargs) # type: ignore

View file

@ -1,4 +1,8 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
"""
Module for Reddit data: saved items/comments/upvotes etc
"""
from pathlib import Path from pathlib import Path
from typing import List, Sequence, Mapping, Iterator from typing import List, Sequence, Mapping, Iterator

View file

@ -1,8 +1,11 @@
""" """
Uses official twitter archive export Module for Twitter (uses official twitter archive export)
See https://help.twitter.com/en/managing-your-account/how-to-download-your-twitter-archive See https://help.twitter.com/en/managing-your-account/how-to-download-your-twitter-archive
"""
# TODO remove these
"""
Expects path to be set Expects path to be set
- via ~configure~ (before calling anything else) - via ~configure~ (before calling anything else)
- or in ~mycfg.twitter.export_path~ - or in ~mycfg.twitter.export_path~