searxng/searx
Ivan Gabaldon 3de7a6da2d
[enh] container: tidy builds (#5086)
Building the container currently does not work properly.
When rebuilding several times with `make container`, `version_frozen.py`
is recreated, which wouldn't be an issue if the file’s timestamp was constant.
Now, when creating `version_frozen.py`, it will have the same timestamp as the
commit when it was created. (`version_frozen.py` is moved to a dedicated layer).

Reusing "builder" cache when building "dist" could be slow
(CD reports 2 seconds, but locally I've seen it take up to 10 seconds),
so the Dockerfile is now split and we save a couple steps
by importing the "builder" image directly.

The last changes made it possible to remove the layer cache in "builder",
since the overhead is now greater than building the layers from scratch.

Until now, all "dist" layers were squashed into a single layer,
which in most cases is a good idea
(except for storage/delivery pricing/overhead), but in our case,
since we manage the entire pipeline, we can ignore this
and share layers between builds.
This means (for example) that if we change files unrelated to the container
in several consecutive commits (documentation changes), we don't have to push
the entire image to registry, but only the different layers
(`version_frozen.py` in this example).
The same applies when pulling, as only the layers that have changed
compared to the local layers will be downloaded (that's the theory,
we'll see if this works as expected or if we need to tweak something else).
2025-08-07 10:46:26 +02:00
..
answerers [feat] statistics answerer: add the ability to calculate the range of a set 2025-07-31 20:13:24 +02:00
botdetection [mod] migrate from Redis to Valkey (#4795) 2025-07-09 07:55:37 +02:00
data [fix] CI task "update_engine_traits.py" fails (#5069) 2025-08-01 12:08:27 +02:00
enginelib [chore] fix some docstring typos (#4815) 2025-05-20 21:03:54 +02:00
engines [feat] duckduckgo weather: migrate to new weather engine template 2025-08-06 14:09:23 +02:00
favicons [chore] fix some docstring typos (#4815) 2025-05-20 21:03:54 +02:00
infopage [chore] docs: various grammatical fixes 2025-06-23 23:01:29 +02:00
metrics [fix] openmetrics: value is None if there's no data 2024-11-25 16:57:03 +01:00
network [fix] searx.network: don't trigger DeprecationWarning (#4845) 2025-05-24 12:40:05 +02:00
plugins [fix] calculator plugin: filtering real calculation tasks (#5016) 2025-07-17 19:50:02 +02:00
result_types [mod] weather results: add types, i18n/l10n, symbols & unit conversions 2025-05-31 20:34:59 +02:00
search [fix] cleanup: rename searx leftovers to SearXNG (#5049) 2025-07-26 06:22:46 +02:00
static/themes/simple [build] /static 2025-07-16 11:02:12 +02:00
templates/simple [chore] docs: various grammatical fixes 2025-06-23 23:01:29 +02:00
translations [l10n] update translations from Weblate (#5076) 2025-08-01 10:02:49 +02:00
__init__.py [fix] issues when launching a local development server 2025-04-22 14:26:11 +02:00
autocomplete.py [fix] restore startpage autocompleter 2025-06-25 17:38:31 +02:00
babel_extract.py [mod] weather results: add types, i18n/l10n, symbols & unit conversions 2025-05-31 20:34:59 +02:00
cache.py [mod] data: implement a simple tracker URL (SQL) database 2025-06-23 22:12:18 +02:00
compat.py [mod] Revision of the favicon solution 2024-10-05 08:18:28 +02:00
exceptions.py [fix] cleanup: rename searx leftovers to SearXNG (#5049) 2025-07-26 06:22:46 +02:00
extended_types.py [chore] fix some docstring typos (#4815) 2025-05-20 21:03:54 +02:00
external_bang.py [mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTION 2024-03-11 14:55:38 +01:00
external_urls.py [mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTION 2024-03-11 14:55:38 +01:00
flaskfix.py [mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTION 2024-03-11 14:55:38 +01:00
limiter.py [mod] migrate from Redis to Valkey (#4795) 2025-07-09 07:55:37 +02:00
limiter.toml [chore] *: fix typos detected by typos-cli 2024-11-24 12:41:57 +01:00
locales.py [refactor] typification of SearXNG (initial) / result items (part 1) 2025-01-28 07:07:08 +01:00
openmetrics.py [chore] fix some docstring typos (#4815) 2025-05-20 21:03:54 +02:00
preferences.py [refactor] migrate plugins from "module" to class SXNGPlugin 2025-03-29 10:16:43 +01:00
query.py [mod] internal ! and external !! bangs: ignore upper/lower case 2025-04-24 10:40:18 +02:00
results.py [fix] NotImplementedError raised by ResultContainer (#5058) 2025-07-28 15:36:26 +02:00
searxng.msg [mod] weather results: add types, i18n/l10n, symbols & unit conversions 2025-05-31 20:34:59 +02:00
settings.yml [fix] engine yummly: website were taken offline in December 2024 (#5080) 2025-08-03 10:49:14 +02:00
settings_defaults.py [fix] false is an invalid value for wiki_url in settings.yml (#5046) 2025-07-24 17:47:09 +02:00
settings_loader.py [fix] custom plugins: settings must not be merged. 2025-07-16 20:55:39 +02:00
sqlitedb.py [chore] fix some docstring typos (#4815) 2025-05-20 21:03:54 +02:00
sxng_locales.py [data] update searx.data - make data.traits (mullvad leta) 2025-04-23 14:06:32 +02:00
unixthreadname.py [mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTION 2024-03-11 14:55:38 +01:00
utils.py [fix] cleanup: rename searx leftovers to SearXNG (#5049) 2025-07-26 06:22:46 +02:00
valkeydb.py [mod] migrate from Redis to Valkey (#4795) 2025-07-09 07:55:37 +02:00
valkeylib.py [mod] migrate from Redis to Valkey (#4795) 2025-07-09 07:55:37 +02:00
version.py [enh] container: tidy builds (#5086) 2025-08-07 10:46:26 +02:00
weather.py [feat] wttr.in: migrate to new weather engine template (#4888) 2025-07-03 16:42:13 +02:00
webadapter.py [chore] *: fix typos detected by typos-cli 2024-11-24 12:41:57 +01:00
webapp.py [fix] webapp.py: info (and other) page(s) don't load properly (#5051) 2025-07-26 17:58:53 +02:00
webutils.py [mod] remove option ui.static_use_hash (cache busting) (#5004) 2025-07-11 16:53:36 +02:00
wikidata_units.py [mod] weather results: add types, i18n/l10n, symbols & unit conversions 2025-05-31 20:34:59 +02:00