diff options
author | Markus Heiser <markus.heiser@darmarit.de> | 2024-08-19 17:47:54 +0200 |
---|---|---|
committer | Markus Heiser <markus.heiser@darmarIT.de> | 2024-10-05 08:18:28 +0200 |
commit | 7ab577a1fba43578b77f56b76275d0e65d03b318 (patch) | |
tree | 0179516d6d89aab77b542494b4e90b22d22cc9cf /searx/favicons/__main__.py | |
parent | c49a2707c1ba7122c250ba963a83d095441f4d59 (diff) | |
download | searxng-7ab577a1fba43578b77f56b76275d0e65d03b318.tar.gz searxng-7ab577a1fba43578b77f56b76275d0e65d03b318.zip |
[mod] Revision of the favicon solution
All favicons implementations have been documented and moved to the Python
package:
searx.favicons
There is a configuration (based on Pydantic) for the favicons and all its
components:
searx.favicons.config
A solution for caching favicons has been implemented:
searx.favicon.cache
If the favicon is already in the cache, the returned URL is a data URL [1]
(something like `data:image/png;base64,...`). By generating a data url from
the FaviconCache, additional HTTP roundtripps via the favicon_proxy are saved:
favicons.proxy.favicon_url
The favicon proxy service now sets a HTTP header "Cache-Control: max-age=...":
favicons.proxy.favicon_proxy
The resolvers now also provide the mime type (data, mime):
searx.favicon.resolvers
[1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Diffstat (limited to 'searx/favicons/__main__.py')
-rw-r--r-- | searx/favicons/__main__.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/searx/favicons/__main__.py b/searx/favicons/__main__.py new file mode 100644 index 000000000..c515edfea --- /dev/null +++ b/searx/favicons/__main__.py @@ -0,0 +1,12 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +"""Command line implementation""" + +import typer + +from . import cache +from . import init + +init() +app = typer.Typer() +app.add_typer(cache.app, name="cache", help="commands related to the cache") +app() |