summaryrefslogtreecommitdiff
path: root/searx
AgeCommit message (Collapse)Author
2025-05-31[feat] open meteo: use new weather answererBnyro
2025-05-31[feat] result types: add weather result answerer and templateBnyro
2025-05-30[mod] UI footer: correct capitalization of "SearXNG" in base.htmlbenpiano800
2025-05-30[l10n] update translations from Weblatesearxng-bot
0f55f2438 - 2025-05-29 - sandijs <sandijs@noreply.codeberg.org> 109f7dcb8 - 2025-05-26 - ngf <ngf@noreply.codeberg.org> d2ba9b3d0 - 2025-05-26 - artnay <artnay@noreply.codeberg.org> 33c6f23bf - 2025-05-26 - realkendrick_fr <realkendrick_fr@noreply.codeberg.org>
2025-05-29[fix] plugins: currency processor bugMarkus Heiser
Fix C&P typo from https://github.com/searxng/searxng/pull/4836 Closes: https://github.com/searxng/searxng/issues/4861
2025-05-29[data] update searx.data - update_ahmia_blacklist.pysearxng-bot
2025-05-29[data] update searx.data - update_firefox_version.pysearxng-bot
2025-05-29[data] update searx.data - update_wikidata_units.pysearxng-bot
2025-05-29[data] update searx.data - update_currencies.pysearxng-bot
2025-05-29[data] update searx.data - update_engine_traits.pysearxng-bot
2025-05-29[data] update searx.data - update_engine_descriptions.pysearxng-bot
2025-05-28[fix] presearch: reuse response cookies from token extractionBnyro
Why? - presearch requires the response cookies of the first request to be sent within the second request - otherwise we miss auth information and the engine doesn't work Related: - https://github.com/searxng/searxng/pull/4858 - closes https://github.com/searxng/searxng/issues/4854 Co-authored-by: Aadniz <8147434+Aadniz@users.noreply.github.com>
2025-05-26[chore] il post: disable by defaultBnyro
2025-05-25[build] /staticBnyro
2025-05-25[mod] data: implement a simple currencies (SQL) database (#4836)Markus Heiser
To reduce the memory footprint, this patch no longer loads the JSON data completely into memory. Instead, there is an SQL database based on `ExpireCacheSQLite`. The class CurrenciesDB is a simple DB application that encapsulates the DB (queries and initialization) and provides convenient methods like `name_to_iso4217` and `iso4217_to_name`. Related: - https://github.com/searxng/searxng/discussions/1892 - https://github.com/searxng/searxng/pull/3458#issuecomment-2900807671 - https://github.com/searxng/searxng/pull/4650 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-25[l10n] update translations from Weblate (#4840)github-actions[bot]
51e0a154c - 2025-05-22 - Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org> 256b8cb8e - 2025-05-16 - wetinee <wetinee@noreply.codeberg.org> ac12b76a8 - 2025-05-16 - wetinee <wetinee@noreply.codeberg.org> Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2025-05-24[mod] engines: Yahoo in different languages (#4826)Markus Heiser
BTW fix issue reported in [1] [1] https://github.com/searxng/searxng/pull/4814#issuecomment-2896948787 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-05-24[fix] searx.network: don't trigger DeprecationWarning (#4845)Alexandre Flament
Avoid a confusing warning: DeprecationWarning: Setting per-request cookies=<...> is being deprecated Code based on httpx unit test [1] [1] https://github.com/encode/httpx/blob/6a99f6f2b3a638719f70200de9983f80d618ee1c/tests/client/test_cookies.py#L123-L137 Closes: https://github.com/searxng/searxng/issues/4833
2025-05-23[fix] preferences: description not localized for all UI languages (#4844)Markus Heiser
The previous implementation for determining the description of an engine did not take into account that the UI languages ​​can also have a region tag and/or a script tag: el-GR: Ελληνικά, Ελλάδα (Greek, Greece) fa-IR: فارسی, ایران (Persian, Iran) nb-NO: Norsk bokmål, Norge (Norwegian bokmål, Norway) nl-BE: Nederlands, België (Dutch, Belgium) pt-BR: Português, Brasil (Portuguese, Brazil) zh-HK: 中文, 中國香港特別行政區 (Chinese, Hong Kong SAR China) zh-Hans-CN: 中文, 中国 (Chinese, China) zh-Hant-TW: 中文, 台灣 (Chinese, Taiwan) Closes: https://github.com/searxng/searxng/issues/4842 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-23[fix] ddg engine: IndexError exception is raised on empty contend (#4843)Markus Heiser
Sometimes (e.g. when ddg does not have a result item) there is no content and the engine will fail with an IndexError: * Error: IndexError * Percentage: 10 * Parameters: `()` * File name: `searx/engines/duckduckgo.py:375` * Function: `response` * Code: `item["content"] = extract_text(eval_xpath(div_result, './/a[contains(@class, "result__snippet")]')[0])` Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-23[refactor] duckduckgo engine: improve request logic and code structure (#4837)useralias
Changes: - Add trailing slash to base URL to prevent potential redirects - Remove advanced search syntax filtering (no longer guarantees a CAPTCHA) - Correct pagination offset calculation: Page 2 now starts at offset 10, subsequent pages use 10 + (n-2)*15 formula instead of the previous broken 20 + (n-2)*50 calculation that caused CAPTCHAs - Restructure request parameter building to better match a real request - "kt" cookie is no longer an empty string if the language/region is "all" - Group related parameter assignments together - Add header logging to debugging output Related: - https://github.com/searxng/searxng/issues/4824
2025-05-22[fix] searx.data: fetch-traits - z-library (httpx.ConnectError) (#4835)Markus Heiser
There is currently no known z-library, and all known URLs are dead [1]. To avoid interrupting automated updates, a connection error to a z-library is treated as a *known error*, and the old properties of the z-library are retained. [1] https://github.com/searxng/searxng/issues/3610 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-22[mod] searx.data: lazy load of the data objects (databases) (#4834)Markus Heiser
In the previous implementation, all databases were loaded into memory when importing the searx.data package, regardless of whether they were ever needed. Regardless of this, it is an antipattern to load entire databases into memory when importing a package or module; databases should be loaded when needed. Lazy loading is a first step toward improving memory usage and also improves performance when setting up the runtime environment. Building on this, subsequent PRs will be able to further optimize memory behavior, e.g., by using a real database application such as the one already available via searx.cache.ExpireCache Related: - https://github.com/searxng/searxng/discussions/1892 - https://github.com/searxng/searxng/pull/3458 - https://github.com/searxng/searxng/pull/4650 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-22[build] /staticMarkus Heiser
2025-05-22[refactor] search.js: use custom auto completion implementationBnyro
The previously used library is unmaintained for 6 years now [1] and the solution had know issues [2][3] [1] https://github.com/searxng/searxng/pull/4284#discussion_r1954493434 [2] https://github.com/searxng/searxng/pull/4318#issuecomment-2731576657 [3] https://github.com/privau/searxng/issues/56
2025-05-21[feat] engines: add Naver engine (#4573)Zhijie He
Refactor Naver engine (Web, News, Images, Videos, Autocomplete) - ref: https://search.naver.com/ - lang: `ko` - Wikidata: https://www.wikidata.org/wiki/Q485639 Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-05-21[fix] engines: disable those with known issues (#4813)Markus Heiser
- z-library https://github.com/searxng/searxng/issues/3610 - library of congress: https://github.com/searxng/searxng/issues/4810 - qwant: https://github.com/searxng/searxng/issues/3929 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-21[fix] pinterest: engine broken due to API changes (#4816)Bnyro
- apparently the API now requires a `X-Pinterest-PWS-Handler` in order to properly function (extracted from their web UI) - the other `X-Pinterest` headers here are added in case they become mandatory too Closes: https://github.com/searxng/searxng/issues/4812
2025-05-21[feat] engines: add uxwing engine for icons (#4819)Bnyro
- uxwing provides attribution-free icons to use for design projects - svgrepo was my go-to before, but it's ratelimiting a lot recently
2025-05-21[refactor] icon engines: add new icon category (#4817)Bnyro
Icons category makes sense because it allows to quickly search for free SVG icons to use for websites / other designs with a quick `!icons` query Icons don't seem to fit into the normal images category that well because icons are quite a special type of images
2025-05-20[chore] fix some docstring typos (#4815)Jost Alemann
2025-05-20[fix] yahoo: url and title xpathuseralias
2025-05-20[mod] upgrade to httpx 0.28.1 (#4674)Alexandre Flament
2025-05-20[fix] duckduckgo engines: issue when get_vqd() is used by ddg-images and ↵Markus Heiser
ddg-videos (#4809) The global variable CACHE is not initialized when DDG images or DDG videos import the get_vqd() function (please remember: the engine modules are imported using the importlib method and not via the `import` keyword). Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-18[mod] engine invidious: commented out / no public API available nowadays (#4800)Markus Heiser
Reported-by: @unifox https://github.com/searxng/searxng/issues/2722#issuecomment-2884993248 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-16[l10n] update translations from Weblate (#4788)github-actions[bot]
2025-05-13[enh] tidy: clean old morty, filtron, searx referencesIvan Gabaldon
Everyone should have already switched from legacy methods
2025-05-13[fix] engine archlinux: avoid Anubis challenge by User-Agent "SearXNG" (#4779)Markus Heiser
Of the archlinux wikis only wiki.archlinux.org has a has Anubis challenge. About Anubis[1]: > Anubis decides to present a challenge using this logic: > > - User-Agent contains "Mozilla" > ... > This should ensure that git clients, RSS readers, and other low-harm clients > can get through without issue .. [1] https://github.com/TecharoHQ/anubis/blob/6c0ff3f4d5e7a66ea85e5873e6ee4c28692091d7/docs/docs/design/how-anubis-works.mdx#challenge-presentation Suggested-by: @unixfox https://github.com/searxng/searxng/issues/4646#issuecomment-2855322406 Closes: https://github.com/searxng/searxng/issues/4646 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-11[mod] rework container deployment (#4764)Ivan Gabaldon
container.yml will run after integration.yml COMPLETES successfully and in master branch. Style changes, cleanup and improved integration with CI by leveraging the use of shared cache between all workflows. * Podman is now supported to build the container images (Docker also received a refactor, merging both build and buildx) * Container images are being built by Buildah instead of Docker BuildKit. * Container images are tested before release. * Splitting "modern" (amd64 & arm64) and "legacy" (armv7) arches on different Dockerfiles allowing future optimizations.
2025-05-09[build] /staticMarkus Heiser
2025-05-09[l10n] update translations from Weblate (#4744)SearXNG Bot
6f8c520f2 - 2025-05-08 - polskiecus <polskiecus@noreply.codeberg.org> 05dd91d5b - 2025-05-08 - return42 <return42@noreply.codeberg.org> 686b8e5fb - 2025-05-08 - return42 <return42@noreply.codeberg.org> f40b42bd8 - 2025-05-05 - ehsanrs2 <ehsanrs2@noreply.codeberg.org> b8013bc99 - 2025-05-03 - polskiecus <polskiecus@noreply.codeberg.org> 5affaa104 - 2025-05-02 - SomeTr <sometr@noreply.codeberg.org> Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2025-05-09[data] update searx.data - update_wikidata_units.py (#4738)github-actions[bot]
2025-05-09[data] update searx.data - update_ahmia_blacklist.py (#4739)github-actions[bot]
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-09[data] update searx.data - update_currencies.py (#4740)github-actions[bot]
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-09[data] update searx.data - update_engine_traits.py (#4741)github-actions[bot]
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-09[data] update searx.data - update_engine_descriptions.py (#4742)github-actions[bot]
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-07[enh] plugins: tor_check: Add more keywords (#4726)benpiano800
Previously, there was only one usable keyword for the tor_check plugin. Adding more keywords eliminates confusion.
2025-05-07[fix] sec-fetch-* blocking infinite scroll (#4728)Brock Vojkovic
2025-05-07[fix] references from searx.botdetection.http_sec_fetch (#4723)Markus Heiser
2025-05-04fix: check if the browser supports Sec-Fetch headers (#4696)Émilien (perso)