diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/scadere/listen.py | 10 |
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='?', |