aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNguyễn Gia Phong <cnx@loang.net>2025-06-19 17:02:52 +0900
committerNguyễn Gia Phong <cnx@loang.net>2025-06-19 17:02:52 +0900
commitf72ededb1245d554163cb10a9e22ee2ebe75c736 (patch)
treed4d6fbe872d686dd73f2a6190f0522691eb91b09 /src
parent34bed92c459313eebcf8f1752f05e6405f176ed4 (diff)
downloadscadere-f72ededb1245d554163cb10a9e22ee2ebe75c736.tar.gz
Allow falling back to default title from CLI
Diffstat (limited to 'src')
-rw-r--r--src/scadere/listen.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/scadere/listen.py b/src/scadere/listen.py
index 18f5323..cc08cd1 100644
--- a/src/scadere/listen.py
+++ b/src/scadere/listen.py
@@ -229,7 +229,7 @@ def write_xml(writer, http_version, application, func, *args):
writer.write(content)
-async def handle(certs, base_url, reader, writer, title=None):
+async def handle(certs, base_url, reader, writer, title=''):
"""Handle HTTP request."""
try:
try:
@@ -262,8 +262,6 @@ async def handle(certs, base_url, reader, writer, title=None):
assert len(lookup) == len(summaries)
url_parts = urlsplit(urljoin(base_url, url.strip().decode()))
domains = tuple(parse_qs(url_parts.query).get('domain', []))
- if title is None:
- title = certs.name
except Exception: # pragma: no cover
describe_status(writer, HTTPStatus.INTERNAL_SERVER_ERROR,
http_version)
@@ -271,7 +269,7 @@ async def handle(certs, base_url, reader, writer, title=None):
if url_parts.path == urlsplit(base_url).path: # Atom feed
write_xml(writer, http_version, 'atom', unparsed_feed,
- base_url, title, mtime, summaries, domains)
+ base_url, title or certs.name, mtime, summaries, domains)
elif url_parts.path in lookup: # accessible Atom entry's link/ID
write_xml(writer, http_version, 'xhtml', unparsed_page,
lookup.get(url_parts.path))
@@ -326,7 +324,9 @@ def main(prog=basename(argv[0]), arguments=argv[1:]):
parser.add_argument('-v', '--version', action='version',
version=format_version('scadere-listen',
'2025', 'Nguyễn Gia Phong'))
- parser.add_argument('-t', '--title', help='title of Atom feeds')
+ parser.add_argument('-t', '--title', default='',
+ help=('title of Atom feeds'
+ " (default to PATH's filename)"))
parser.add_argument('certs', metavar='PATH', type=Path)
parser.add_argument('base_url', metavar='URL', type=with_trailing_slash)
parser.add_argument('netloc', metavar='[HOST][:PORT]', nargs='?',