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
#+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
import re
import importlib
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')):
if f.name == '__init__.py':
@ -40,19 +58,25 @@ for f in sorted(Path('my/').glob('**/*.py')):
m = str(f.with_suffix('')).replace('/', '.')
if ignored(m):
continue
# TODO module link?
# TODO I've done this for infra diagram already...
try:
mod = importlib.import_module(m)
doc = mod.__doc__
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:
print(m, e) # TODO
pass
# print(m, e) # TODO
#+end_src
* Setting up
** =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.

View file

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

View file

@ -1,4 +1,8 @@
#!/usr/bin/env python3
"""
Blood tracking
"""
from datetime import datetime
from typing import Iterable, NamedTuple, Optional
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 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 datetime import date, datetime, timedelta
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 datetime import datetime
import json

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -1,4 +1,8 @@
#!/usr/bin/env python3
"""
Module for Reddit data: saved items/comments/upvotes etc
"""
from pathlib import Path
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
"""
# TODO remove these
"""
Expects path to be set
- via ~configure~ (before calling anything else)
- or in ~mycfg.twitter.export_path~