173ff0ef5a
schema: Continue
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-02-04 10:27:38 +01:00
4cc9906055
db.query: Add Query, QueryResult, Queries
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-02-02 14:02:21 +01:00
2b061a6dc4
db: Add DataBase.py
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-02-02 15:58:52 +01:00
859bb8000f
Cmds / Cmd: Add comments and debug logging
...
Add some comments and a little debug logging to clarify operation.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-02-02 14:01:21 +01:00
fb907b0493
schema: Add utils
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-02-01 09:58:25 +01:00
c50c614f13
schema: Continue
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-30 20:34:44 +01:00
9cfcc1bd68
db.schema: Add location definition to API
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-30 14:26:43 +01:00
e688cd2364
Config: Support refuse_mode_mask
...
refuse_mode_mask can be passed to the constructor and determines
which permission bits need to be absent from config file modes if
they smell like they contain secrets.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-30 09:54:03 +01:00
17ab47e96a
Add db.schema framework
...
jw.db.schema is a set of classes meant as an interface to describe a database schema.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 10:18:57 +01:00
cc7aeeac31
misc: Add load_function()
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-29 16:54:10 +01:00
e004f8ade7
db: Add TableIoHandler
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 14:27:27 +01:00
7399388f60
Fix errors reported by mypy
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-29 16:51:07 +01:00
bee3e28ff5
Config: Accept strings as value for glob_paths
...
Make Config's ctor accept strings as values for glob_paths, as
opposed to lists. This covers the canonical case of one configuration
file being passed.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-29 12:56:32 +01:00
2ec6e72cff
Cmds: Add parsed args as attribute
...
The parsed args container is passed to the run() function and friends
for convenient use. Sometimes, though, the base classes or umbrella
commands need to make use of it, too, even more so as they may define
command line arguments via add_arguments(). However, run() or _run()
or whatever is never called on them, neither any other callback, so
make args available to them as a member variable.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-29 12:51:01 +01:00
055c008a33
Cmds: Make run() accept argv argument
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 20:27:25 +01:00
d5e268a03b
log: Add throw()
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 10:17:27 +01:00
2462ad8c60
log: Add log_level()
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 10:17:17 +01:00
ce347772dd
misc: Add debug logging to load_class()
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 10:16:06 +01:00
ddb1fd0eb4
Add db.rows
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 08:11:54 +01:00
8c0b975e1b
Config: Mutually exclude loading from tree or files
...
Initializing Config from a StringTree object doesn't stop it from
looking for config files to read. Stop that.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 08:05:16 +01:00
64ce94b142
String Tree: Fix order of overwrites
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 07:18:50 +01:00
126ecbb411
StringTree: Beautify debug logging
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-28 05:08:50 +01:00
1ff24b870a
Release 1.0.0-19@suse-tumbleweed/x86_64
...
Signed-off-by: janware DevOps <devops@janware.com>
2025-01-27 15:59:03 +00:00
08fbe19397
Start version: 1.0.0-19
...
Signed-off-by: janware DevOps <devops@janware.com>
2025-01-27 15:58:42 +00:00
84a4053157
Add class Config
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-20 11:39:56 +01:00
224a16ec71
Cmds: Add TODO Rename to App
...
There's an ungreppable TODO remark in Cmds about renaming the class
to App, make it greppable.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-18 20:53:45 +01:00
45b5a8fb5a
log: Add prio_gets_logged()
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-18 16:42:33 +01:00
24bfa0f806
stree/serdes: Support -include lines
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-16 13:44:09 +01:00
a0234e7d54
Add module jwutils.cast
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-16 12:39:20 +01:00
57ff96608b
StringTree.value(): Add keyword-argument default
...
Add argument default to StringTree.value(), defaulting to None, doing
the obvious.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-16 10:53:09 +01:00
381514ab2c
misc: Add load_class()
...
Add load_class() to complement load_object(), returning the class as
opposed to instantiated object.
Signed-off-by: Jan Lindemann <jan@janware.com>
2025-01-16 10:51:28 +01:00
3a7fb50979
Apply monkeytype traces
...
Run
monkeytype run jw-acc.py --log-level debug db import --format mdb-json-dir dbs
monkeytype list-modules | grep ^jw | while read m; do
monkeytype apply $m
done
and fix the fallout.
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-15 15:35:29 +01:00
440b40e267
Release 1.0.0-18@suse-tumbleweed/x86_64
...
Signed-off-by: janware DevOps <devops@janware.com>
2024-12-22 15:45:41 +00:00
0583167961
Start version: 1.0.0-18
...
Signed-off-by: janware DevOps <devops@janware.com>
2024-12-22 15:45:17 +00:00
385edd7169
StopWatch: Fix compilation error
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-03 13:34:26 +01:00
4b8d67b8ee
Cmd.add_subcommand(): Add support for passing cmd argument as string
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-12-03 13:34:25 +01:00
3cd7926693
stree.parse(): Beautify debug logging
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-10-06 17:13:41 +02:00
08045442e2
StringTree: Fix exception in child_list()
...
child_list() throws an exception saying that <str> has no to_list()
method. No, it hasn't. No idea how this has even worked at all, ever.
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-10-06 17:04:25 +02:00
f6cdd395da
Release 1.0.0-17@suse-tumbleweed/x86_64
...
Signed-off-by: janware DevOps <devops@janware.com>
2024-07-16 12:55:18 +00:00
9e185fafe8
Start version: 1.0.0-17
...
Signed-off-by: janware DevOps <devops@janware.com>
2024-07-16 12:54:58 +00:00
4e53e37c7c
Cmds.py: Emit usage message by default
...
Running an application derived from Cmds throws an error if invoked
without arguments, fix that.
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-07-11 20:38:07 +02:00
047ce7227c
Release 1.0.0-16@suse-tumbleweed/x86_64
...
Signed-off-by: janware DevOps <devops@janware.com>
2024-06-04 12:55:04 +00:00
e51676fae9
Start version: 1.0.0-16
...
Signed-off-by: janware DevOps <devops@janware.com>
2024-06-04 12:54:43 +00:00
748247f1ed
Add jwutils.StopWatch
...
Add StopWatch class, intended to be useful for benchmarking.
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-06-03 12:33:36 +02:00
27813efc04
Fix bogus type errors dug up by mypy
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-06-02 12:05:44 +02:00
7888b2cff4
Release 1.0.0-15@suse-tumbleweed/x86_64
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2024-05-28 18:16:22 +00:00
3885ee2c51
Start version: 1.0.0-15
...
Signed-off-by: janware DevOps <devops@janware.com>
2024-05-28 18:16:02 +00:00
bab0cfd680
Release 1.0.0-14@suse-tumbleweed/x86_64
...
Signed-off-by: janware DevOps <devops@janware.com>
2023-03-17 13:28:45 +00:00
97d528746d
Start version: 1.0.0-14
...
Signed-off-by: janware DevOps <devops@janware.com>
2023-03-17 13:28:24 +00:00
319d97e8bc
log.py: Fix mypy warning (Incompatible types in assignment)
...
Fix mypy warning
jwutils/log.py:209: error: Incompatible types in assignment
(expression has type int, variable has type Literal[5])
Signed-off-by: Jan Lindemann <jan@janware.com>
2022-10-04 13:11:44 +02:00