d0ee97582c
changed configuration
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
Security / Container (push) Has been cancelled
Checker / Search (push) Has been cancelled
Translation / Update (push) Has been cancelled
Translation / Pull Request (push) Has been cancelled
Update searx.data / update_ahmia_blacklist.py (push) Has been cancelled
Update searx.data / update_currencies.py (push) Has been cancelled
Update searx.data / update_engine_descriptions.py (push) Has been cancelled
Update searx.data / update_engine_traits.py (push) Has been cancelled
Update searx.data / update_external_bangs.py (push) Has been cancelled
Update searx.data / update_firefox_version.py (push) Has been cancelled
Update searx.data / update_wikidata_units.py (push) Has been cancelled
2025-07-19 18:11:19 +00:00
ac3dd7b804
replaced favicon
Security / Container (push) Has been cancelled
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 23:53:49 -05:00
3075003825
changed branding
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 23:38:21 -05:00
c6f1156bc6
changed approach, got rid of settings.yml binding entirely
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 22:50:37 -05:00
cf5dbbbc77
fixed...?
2025-05-10 22:45:56 -05:00
8477fb4846
oh, portainer didn't like that one
2025-05-10 22:43:33 -05:00
8204f4ee72
sets the config volume to read-only
2025-05-10 22:37:36 -05:00
9d9a0fe95e
reverted
2025-05-10 22:31:02 -05:00
427a84d823
attempt #2
2025-05-10 22:29:01 -05:00
e971a3d7ab
experimental mobile touchscreen support for oneko
2025-05-10 22:20:36 -05:00
89cb563793
fixed issue where oneko.gif was not referenced correctly, causing invisible neko
2025-05-10 21:51:46 -05:00
ac5c83b87d
fixed typo in docker compose
2025-05-10 21:45:51 -05:00
34437e8491
implemented oneko
2025-05-10 21:41:29 -05:00
3d30ed1caa
updated compose file to be able to define the port in an env var
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 20:46:57 -05:00
2ee495b383
whoops
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 20:31:49 -05:00
c27fd585ce
carried over branding from current install
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 20:29:32 -05:00
89425caaa6
changed the embed description to nekosearch-branded desc. I think.
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 20:03:08 -05:00
52347c1843
added pull_policy to docker-compose
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 19:44:39 -05:00
c5b2bff2c5
whoops, teehee, swapped ports on compose
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 19:30:43 -05:00
61059eff9c
fixed docker-compose (maybe
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 19:15:00 -05:00
d159f8384f
added docker-compose.yml for continuous integration
Documentation / Release (push) Has been cancelled
Integration / Python 3.10 (push) Has been cancelled
Integration / Python 3.11 (push) Has been cancelled
Integration / Python 3.12 (push) Has been cancelled
Integration / Python 3.13 (push) Has been cancelled
Integration / Python 3.9 (push) Has been cancelled
Integration / Theme (push) Has been cancelled
Integration / Docker (push) Has been cancelled
2025-05-10 19:08:22 -05:00
Ivan Gabaldon
1b787ed35e
[mod] refactor integration.yml ( #4763 )
...
Style changes, cleanup and improved integration with CI by leveraging the use of
shared cache between all workflows.
2025-05-10 13:59:31 +02:00
Ivan Gabaldon
8e2e7774d7
[mod] new l10n.yml workflow ( #4734 )
...
l10n.yml will run after integration.yml finishes successfully (will defer anything depending on integration.yml until heavy loads like container building are moved to separate workflows) and in master branch.
* After every integration.yml workflow completes successfully, only the `update` job runs.
* Dispatch and Crontab triggers only the `pr` job.
Style changes, cleanup and improved integration with CI by leveraging the use of shared cache between all workflows (not functional until all workflows have been refactored).
2025-05-10 13:08:20 +02:00
Ivan Gabaldon
e982b9f732
[fix] documentation should run on push/pr
...
Instead of executing the workflow after integration.yml completes correctly, let's run this workflow parallel to integration.yml restoring the original behaviour.
2025-05-10 07:41:42 +02:00
Émilien (perso)
48456caeb3
chore: docker + github-actions dependabot ( #4754 )
...
* chore: docker dependabot
* Add github actions too
2025-05-09 20:46:20 +02:00
Markus Heiser
ef158ce1f4
[build] /static
2025-05-09 12:40:34 +02:00
Markus Heiser
cbf9ec7bf4
[fix] static.build.commit: add missing searx/templates/simple/icons.html
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-09 12:40:34 +02:00
Markus Heiser
409ede1530
[fix] simple client: jinja_svg_catalog addClassesToSVGElement
...
Starting with ionicons-8.0.8 the SVG already contains a class attribute and
instaed of using SVGO plugin ``addAttributesToSVGElement`` we habve to use
``addClassesToSVGElement`` to add out ``__jinja_class_placeholder__``.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-09 12:40:34 +02:00
dependabot[bot]
1326ec7429
[upd] web-client (simple): Bump ionicons in /client/simple
...
Bumps [ionicons](https://github.com/ionic-team/ionicons ) from 7.4.0 to 8.0.8.
- [Release notes](https://github.com/ionic-team/ionicons/releases )
- [Commits](https://github.com/ionic-team/ionicons/compare/v7.4.0...v8.0.8 )
---
updated-dependencies:
- dependency-name: ionicons
dependency-version: 8.0.8
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-09 12:40:34 +02:00
dependabot[bot]
50406d4b46
[upd] pypi: Bump pylint from 3.3.6 to 3.3.7 ( #4750 )
...
Bumps [pylint](https://github.com/pylint-dev/pylint ) from 3.3.6 to 3.3.7.
- [Release notes](https://github.com/pylint-dev/pylint/releases )
- [Commits](https://github.com/pylint-dev/pylint/compare/v3.3.6...v3.3.7 )
---
updated-dependencies:
- dependency-name: pylint
dependency-version: 3.3.7
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-09 11:10:37 +02:00
dependabot[bot]
5ce3aa3acf
[upd] pypi: Bump yamllint from 1.37.0 to 1.37.1 ( #4752 )
...
Bumps [yamllint](https://github.com/adrienverge/yamllint ) from 1.37.0 to 1.37.1.
- [Release notes](https://github.com/adrienverge/yamllint/releases )
- [Changelog](https://github.com/adrienverge/yamllint/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/adrienverge/yamllint/compare/v1.37.0...v1.37.1 )
---
updated-dependencies:
- dependency-name: yamllint
dependency-version: 1.37.1
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-09 11:09:44 +02:00
SearXNG Bot
76ebad0b21
[l10n] update translations from Weblate ( #4744 )
...
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 09:31:50 +02:00
github-actions[bot]
d76f030cb3
[data] update searx.data - update_wikidata_units.py ( #4738 )
2025-05-09 07:09:58 +02:00
github-actions[bot]
b3b15ecc72
[data] update searx.data - update_ahmia_blacklist.py ( #4739 )
...
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-09 07:09:00 +02:00
github-actions[bot]
1319b250af
[data] update searx.data - update_currencies.py ( #4740 )
...
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-09 07:08:26 +02:00
github-actions[bot]
198928de05
[data] update searx.data - update_engine_traits.py ( #4741 )
...
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-09 07:07:33 +02:00
github-actions[bot]
11d9c830b8
[data] update searx.data - update_engine_descriptions.py ( #4742 )
...
Co-authored-by: inetol <inetol@users.noreply.github.com>
2025-05-09 07:06:52 +02:00
Ivan Gabaldon
743f90514b
[fix] missing PR perm data-update.yml workflow ( #4737 )
...
We actually don't need to keep the token on checkout because `peter-evans/create-pull-request` will read from `github.token`. The obvious `pull-requests` write permission wasn't set in the last fix, so I added it now.
2025-05-08 23:55:23 +02:00
Ivan Gabaldon
48801dbc9a
[mod] CI move build of online docs to dedicated workflow documentation.yml ( #4733 )
...
documentation.yml will run after integration.yml COMPLETES successfully (will
defer anything depending on integration.yml until heavy loads like container
building are moved to separate workflows) and in master branch.
Style changes, cleanup and improved integration with CI by leveraging the use of
shared cache between all workflows (not functional until all workflows have been
refactored).
2025-05-08 17:40:05 +02:00
Ivan Gabaldon
5451ab243a
[fix] fix security.yml workflow ( #4735 )
...
Uploading SARIFs needs to write into the repository GitHub security tab
2025-05-08 17:13:07 +02:00
Ivan Gabaldon
7ca24eee45
[fix] missing perm data-update.yml workflow ( #4736 )
...
We need to keep the token on checkout and allow writing into the repository to create the branch
2025-05-08 16:51:21 +02:00
Ivan Gabaldon
c6a70782b2
[mod] CI: refactor data-update.yml - searxng_extra/update scripts ( #4732 )
...
Style changes, cleanup and improved integration with CI by leveraging the use of
shared cache between all workflows (not functional until all workflows have been
refactored).
2025-05-08 15:13:22 +02:00
Ivan Gabaldon
01a07f34b2
[mod] CI refactor security.yml - style and cleanup changes ( #4731 )
2025-05-08 14:44:22 +02:00
Ivan Gabaldon
f32fcb1243
[mod] CI: refactor checker.yml - make search.checker ( #4730 )
...
Style changes, cleanup and improved integration with CI by leveraging the use of
shared cache between all workflows (not functional until all workflows have been
refactored).
2025-05-08 13:58:06 +02:00
benpiano800
bc06b1aece
[enh] plugins: tor_check: Add more keywords ( #4726 )
...
Previously, there was only one usable keyword for the tor_check plugin. Adding more keywords eliminates confusion.
2025-05-07 10:39:46 +02:00
Brock Vojkovic
ff60fe635f
[fix] sec-fetch-* blocking infinite scroll ( #4728 )
2025-05-07 10:38:21 +02:00
Markus Heiser
6e7119fa4e
[fix] references from searx.botdetection.http_sec_fetch ( #4723 )
2025-05-07 10:25:47 +02:00
Ivan Gabaldon
f52cd3f008
missing dependency for armv7 ( #4727 )
2025-05-07 08:53:34 +02:00
Ivan Gabaldon
a2fa7de880
[mod] Rework Dockerfile - migrate to glibc (debian) ( #4721 )
2025-05-06 11:56:59 +02:00
Bnyro
0315988f5a
fix] revert searxng/searxng#4699 due to breaking issues ( #4720 )
...
This reverts commit 2e74d863210c0d21b9e0a64576dcd24237f23f8c.
2025-05-05 09:46:37 +02:00
Ivan Gabaldon
2e74d86321
Rework Dockerfile ( #4699 )
...
This is one of various PR to refactor the entire SearXNG Docker workflow.
Switches to Python glibc based images, all dependencies are installed via pip and not from system repositories, and several minor changes.
This PR will increase the image size from 194.9 MB to 345.47 MB (amd64), this is due to ARMv7 images (needs dependencies for wheels compilation and runtime (?)) and uWSGI webserver. Later PR will reduce the final image size.
2025-05-04 22:27:53 +02:00
Émilien (perso)
19b116f1d7
fix: check if the browser supports Sec-Fetch headers ( #4696 )
2025-05-04 10:12:25 +02:00
Markus Heiser
fe08bb1d90
[mod] botdetection: HTTP Fetch Metadata Request Headers
...
HTTP Fetch Metadata Request Headers [1][2] are used to detect bot requests. Bots
with invalid *Fetch Metadata* will be redirected to the intro (`index`) page.
[1] https://www.w3.org/TR/fetch-metadata/
[2] https://developer.mozilla.org/en-US/docs/Glossary/Fetch_metadata_request_header
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-04 02:07:26 +02:00
Markus Heiser
8ef5fbca4e
[fix] cache.ExpireCache: definition of a context name for the key
...
The definition of a context name belongs in the abstract base class (was
previously only in the concrete implementation for the SQLite adapter).
Suggested-by: @dalf https://github.com/searxng/searxng/pull/4650#discussion_r2069873853
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-03 08:39:12 +02:00
Markus Heiser
7351c38e6c
[fix] (armv7) cache.ExpireCache: remove option ENCRYPT_VALUE
...
Prophylactic encryption of the value currently makes no sense; on the contrary,
since the ``cryptography`` package is not available on armv7, it would cause
further problems.
Suggested-by: @dalf https://github.com/searxng/searxng/pull/4650#issuecomment-2830786661
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-03 08:39:12 +02:00
Markus Heiser
bdfe1c2a15
[mod] engines: migration of the individual cache solutions to EngineCache
...
The EngineCache class replaces all previously individual solutions for caches in
the context of the engines.
- demo_offline.py
- duckduckgo.py
- radio_browser.py
- soundcloud.py
- startpage.py
- wolframalpha_api.py
- wolframalpha_noapi.py
Search term to test most of the modified engines::
!ddg !rb !sc !sp !wa test
!ddg !rb !sc !sp !wa foo
For introspection of the DB, jump into developer environment and run command to
show cache state::
$ ./manage pyenv.cmd bash --norc --noprofile
(py3) python -m searx.enginelib cache state
cache tables and key/values
===========================
[demo_offline ] 2025-04-22 11:32:50 count --> (int) 4
[startpage ] 2025-04-22 12:32:30 SC_CODE --> (str) fSOBnhEMlDfE20
[duckduckgo ] 2025-04-22 12:32:31 4dff493e.... --> (str) 4-128634958369380006627592672385352473325
[duckduckgo ] 2025-04-22 12:40:06 3e2583e2.... --> (str) 4-263126175288871260472289814259666848451
[radio_browser ] 2025-04-23 11:33:08 servers --> (list) ['https://de2.api.radio-browser.info ', ...]
[soundcloud ] 2025-04-29 11:40:06 guest_client_id --> (str) EjkRJG0BLNEZquRiPZYdNtJdyGtTuHdp
[wolframalpha ] 2025-04-22 12:40:06 code --> (str) 5aa79f86205ad26188e0e26e28fb7ae7
number of tables: 6
number of key/value pairs: 7
In the "cache tables and key/values" section, the table name (engine name) is at
first position on the second there is the calculated expire date and on the
third and fourth position the key/value is shown.
About duckduckgo: The *vqd coode* of ddg depends on the query term and therefore
the key is a hash value of the query term (to not to store the raw query term).
In the "properties of ENGINES_CACHE" section all properties of the SQLiteAppl /
ExpireCache and their last modification date are shown::
properties of ENGINES_CACHE
===========================
[last modified: 2025-04-22 11:32:27] DB_SCHEMA : 1
[last modified: 2025-04-22 11:32:27] LAST_MAINTENANCE :
[last modified: 2025-04-22 11:32:27] crypt_hash : ca612e3566fdfd7cf7efe2b1c9349f461158d07cb78a3750e5c5be686aa8ebdc
[last modified: 2025-04-22 11:32:30] CACHE-TABLE--demo_offline: demo_offline
[last modified: 2025-04-22 11:32:30] CACHE-TABLE--startpage: startpage
[last modified: 2025-04-22 11:32:31] CACHE-TABLE--duckduckgo: duckduckgo
[last modified: 2025-04-22 11:33:08] CACHE-TABLE--radio_browser: radio_browser
[last modified: 2025-04-22 11:40:06] CACHE-TABLE--soundcloud: soundcloud
[last modified: 2025-04-22 11:40:06] CACHE-TABLE--wolframalpha: wolframalpha
These properties provide information about the state of the ExpireCache and
control the behavior. For example, the maintenance intervals are controlled by
the last modification date of the LAST_MAINTENANCE property and the hash value
of the password can be used to detect whether the password has been changed (in
this case the DB entries can no longer be decrypted and the entire cache must be
discarded).
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-03 08:39:12 +02:00
Markus Heiser
4cbfba9d7b
[mod] ExpireCache - sqlite based key/value cache with expire time
2025-05-03 08:39:12 +02:00
Markus Heiser
4a594f1b53
[fix] ResourceWarning: unclosed database in sqlite3
...
Reported:
- https://github.com/inetol-infrastructure/searxng-container/issues/5
Related:
- https://github.com/searxng/searxng/issues/4405#issuecomment-2692352352
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-03 08:39:12 +02:00
Bnyro
590b211652
[fix] semantic scholar: method not allowed / engine doesn't work
...
Fixes the semantic scholar engine by extracting a ui version token.
BTW: remove html tags from the content.
Author's checklist:
- they are ratelimiting very fast, if you do approx more than 2 requests per
minute, you have to wait some time again...
- they also have an official api at api.semanticscholar.org, but it's ratelimits
are even harder
Closes: https://github.com/searxng/searxng/issues/4685
2025-05-02 16:46:38 +02:00
return42
41e3a0baa7
[data] update searx.data - update_engine_descriptions.py
2025-05-02 16:45:47 +02:00
dependabot[bot]
11204459da
[upd] web-client (simple): Bump less-loader in /client/simple
...
Bumps [less-loader](https://github.com/webpack-contrib/less-loader ) from 12.2.0 to 12.3.0.
- [Release notes](https://github.com/webpack-contrib/less-loader/releases )
- [Changelog](https://github.com/webpack-contrib/less-loader/blob/master/CHANGELOG.md )
- [Commits](https://github.com/webpack-contrib/less-loader/compare/v12.2.0...v12.3.0 )
---
updated-dependencies:
- dependency-name: less-loader
dependency-version: 12.3.0
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-02 16:06:36 +02:00
Markus Heiser
03787b2e5a
[docs] fix link searx/languages.py to new file searx/sxng_locales.py
...
The language settings page in the documentation reference languages.py which was
removed in commit c9cd376
Closes: https://github.com/searxng/searxng/issues/4690
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-02 15:19:55 +02:00
dependabot[bot]
72294a9ffa
[upd] web-client (simple): Bump webpack in /client/simple
...
Bumps [webpack](https://github.com/webpack/webpack ) from 5.99.6 to 5.99.7.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.99.6...v5.99.7 )
---
updated-dependencies:
- dependency-name: webpack
dependency-version: 5.99.7
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-02 14:50:13 +02:00
BrandonStudio
d47cf9db24
[feat] engine ChinaSo: support source filter for ChinaSo-News
...
* filtering ChinaSo-News results by source, option ``chinaso_news_source``
* add ChinaSo engine to the online docs https://docs.searxng.org/dev/engines/online/chinaso.html
* fix SearXNG categories in the settings.yml
* deactivate ChinaSo engines ``inactive: true`` until [1] is fixed
* configure network of the ChinaSo engines
[1] https://github.com/searxng/searxng/issues/4694
Signed-off-by: @BrandonStudio
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-02 14:22:51 +02:00
dependabot[bot]
705ebe64b5
[upd] pypi: Bump typer-slim from 0.15.2 to 0.15.3
...
Bumps [typer-slim](https://github.com/fastapi/typer ) from 0.15.2 to 0.15.3.
- [Release notes](https://github.com/fastapi/typer/releases )
- [Changelog](https://github.com/fastapi/typer/blob/master/docs/release-notes.md )
- [Commits](https://github.com/fastapi/typer/compare/0.15.2...0.15.3 )
---
updated-dependencies:
- dependency-name: typer-slim
dependency-version: 0.15.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-02 13:46:47 +02:00
dependabot[bot]
b072b0f66b
[upd] pypi: Bump setproctitle from 1.3.5 to 1.3.6
...
Bumps [setproctitle](https://github.com/dvarrazzo/py-setproctitle ) from 1.3.5 to 1.3.6.
- [Changelog](https://github.com/dvarrazzo/py-setproctitle/blob/master/HISTORY.rst )
- [Commits](https://github.com/dvarrazzo/py-setproctitle/compare/version-1.3.5...version-1.3.6 )
---
updated-dependencies:
- dependency-name: setproctitle
dependency-version: 1.3.6
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-02 13:37:39 +02:00
dependabot[bot]
4beb5523f5
[upd] pypi: Bump certifi from 2025.1.31 to 2025.4.26
...
Bumps [certifi](https://github.com/certifi/python-certifi ) from 2025.1.31 to 2025.4.26.
- [Commits](https://github.com/certifi/python-certifi/compare/2025.01.31...2025.04.26 )
---
updated-dependencies:
- dependency-name: certifi
dependency-version: 2025.4.26
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-02 13:37:11 +02:00
dependabot[bot]
54e6e2a96d
[upd] web-client (simple): Bump stylelint in /client/simple
...
Bumps [stylelint](https://github.com/stylelint/stylelint ) from 16.19.0 to 16.19.1.
- [Release notes](https://github.com/stylelint/stylelint/releases )
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/stylelint/stylelint/compare/16.19.0...16.19.1 )
---
updated-dependencies:
- dependency-name: stylelint
dependency-version: 16.19.1
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-02 13:36:01 +02:00
searxng-bot
abcf8ca073
[l10n] update translations from Weblate
...
244e1f3f2 - 2025-04-30 - return42 <return42@noreply.codeberg.org>
2025-05-02 13:29:05 +02:00
dependabot[bot]
1a16281490
Bump vite from 6.3.3 to 6.3.4 in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.3.3 to 6.3.4.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.3.4/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 6.3.4
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-05-01 09:43:39 +02:00
Bnyro
fd33559cfb
[fix] brave: fix images and videos engines
2025-04-30 08:28:04 +02:00
Denperidge
60e31eacfc
[fix] pdia: dynamically fetch API key config file location
...
As suggested by @Bnyro at
https://github.com/searxng/searxng/pull/4652#discussion_r2055760390 !
2025-04-29 20:45:08 +02:00
return42
c45b970546
[data] update searx.data - update_currencies.py
2025-04-29 09:12:06 +02:00
Markus Heiser
a4251be397
[data] update searx.data - make data.traits
...
Related:
- https://github.com/searxng/searxng/pull/4687
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-29 09:11:33 +02:00
Markus Heiser
c20038e7c3
[fix] engine yahoo: replace fetch_traits by a list of languages
...
The Yahoo engine's fetch_traits function has been encountering an error in CI
jobs for several months [1], thus aborting the process for all other engines as
well.
The language selection dialog (which fetch_traits calls) requires an `EuConsent`
cookie. Strangely, the cookie is not needed for searching, which is why the
engine itself still works.
Since Yahoo won't be conquering any new marketplaces in the foreseeable future,
it should be sufficient to hard-implement the list of currently available
languages (`yahoo_languages`).
[1] https://github.com/searxng/searxng/actions/runs/14720458830/job/41313149268
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-29 08:48:56 +02:00
return42
20e40ded6d
[data] update searx.data - update_wikidata_units.py
2025-04-29 07:07:15 +02:00
return42
4de0766b76
[data] update searx.data - update_ahmia_blacklist.py
2025-04-29 07:06:49 +02:00
return42
6de83ca47f
[data] update searx.data - update_firefox_version.py
2025-04-29 07:06:26 +02:00
return42
a32bcd54c5
[data] update searx.data - update_external_bangs.py
2025-04-29 07:06:10 +02:00
searxng-bot
c733aa83e8
[l10n] update translations from Weblate
...
bec89c8a4 - 2025-04-24 - Atul_Eterno <atul_eterno@noreply.codeberg.org>
97edb4d63 - 2025-04-23 - whytf <whytf@noreply.codeberg.org>
e7111d6ec - 2025-04-22 - prashere <prashere@noreply.codeberg.org>
f5eeda966 - 2025-04-20 - return42 <return42@noreply.codeberg.org>
2025-04-27 17:13:43 +02:00
dependabot[bot]
9dfc6f38d5
[upd] web-client (simple): Bump vite in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.3.2 to 6.3.3.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.3.3/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 6.3.3
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-27 10:16:44 +02:00
dependabot[bot]
e1076f5c35
[upd] web-client (simple): Bump @eslint/js in /client/simple
...
Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js ) from 9.24.0 to 9.25.1.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/commits/v9.25.1/packages/js )
---
updated-dependencies:
- dependency-name: "@eslint/js"
dependency-version: 9.25.1
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-27 10:16:26 +02:00
dependabot[bot]
8489817561
[upd] web-client (simple): Bump webpack in /client/simple
...
Bumps [webpack](https://github.com/webpack/webpack ) from 5.99.5 to 5.99.6.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.99.5...v5.99.6 )
---
updated-dependencies:
- dependency-name: webpack
dependency-version: 5.99.6
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-27 10:16:03 +02:00
dependabot[bot]
38ff1e4a7d
[upd] web-client (simple): Bump stylelint in /client/simple
...
Bumps [stylelint](https://github.com/stylelint/stylelint ) from 16.18.0 to 16.19.0.
- [Release notes](https://github.com/stylelint/stylelint/releases )
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/stylelint/stylelint/compare/16.18.0...16.19.0 )
---
updated-dependencies:
- dependency-name: stylelint
dependency-version: 16.19.0
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-27 10:15:40 +02:00
dependabot[bot]
21cdb0332b
[upd] web-client (simple): Bump eslint in /client/simple
...
Bumps [eslint](https://github.com/eslint/eslint ) from 9.24.0 to 9.25.1.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v9.24.0...v9.25.1 )
---
updated-dependencies:
- dependency-name: eslint
dependency-version: 9.25.1
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-27 10:15:33 +02:00
dependabot[bot]
30330617d9
[upd] pypi: Bump lxml from 5.3.2 to 5.4.0
...
Bumps [lxml](https://github.com/lxml/lxml ) from 5.3.2 to 5.4.0.
- [Release notes](https://github.com/lxml/lxml/releases )
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt )
- [Commits](https://github.com/lxml/lxml/compare/lxml-5.3.2...lxml-5.4.0 )
---
updated-dependencies:
- dependency-name: lxml
dependency-version: 5.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-26 13:46:56 +02:00
Markus Heiser
33729439c5
[fix] is_werkzeug_reload_active is not realted to python -m
...
Werkzeug's reloader is not active when was server is launched by uWSGI.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-24 17:24:51 +02:00
Markus Heiser
20ce88a274
Revert "[fix] is_werkzeug_reload_active is not realted to python -m"
...
This reverts commit 3392beb914591cac6e862dab66e4d4911b798800.
2025-04-24 17:03:20 +02:00
Zhijie He
8595e467ce
[fix] fix Quark engine calling
2025-04-24 16:17:34 +02:00
Markus Heiser
3392beb914
[fix] is_werkzeug_reload_active is not realted to python -m
...
Werkzeug's reloader is not active when was server is launched by::
python -m searx.webapp
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-24 15:33:59 +02:00
Markus Heiser
c6c6d3027c
[mod] internal ! and external !! bangs: ignore upper/lower case
...
Closes: https://github.com/searxng/searxng/issues/1223
Suggested-by: @dalf https://github.com/searxng/searxng/issues/1223#issuecomment-1133772363
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-24 10:40:18 +02:00
Markus Heiser
d19eb3903e
[clean] drop unusable engine: server/project on curlie.org is broken
...
The websites of https://curlie.org are no longer usable, long runtimes and
recurring "Bad Gateway" messages .. the project is no longer maintained and is
therefore no longer useful in SearXNG.
Related: https://github.com/searxng/searxng/issues/1190
Closes: https://github.com/searxng/searxng/issues/3482
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-24 09:57:50 +02:00
Markus Heiser
f45d4145e6
[fix] typo in soundcloud engine
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-23 18:42:40 +02:00
Markus Heiser
937eb907d3
[data] update searx.data - make data.traits (mullvad leta)
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-23 14:06:32 +02:00
Grant Lanham
851c0e5cc0
[fix] engine: re-implement mullvad leta integration
...
Re-writes the Mullvad Leta integration to work with the new breaking changes.
Mullvad Leta is a search engine proxy. Currently Leta only offers text search
results not image, news or any other types of search result. Leta acts as a
proxy to Google and Brave search results.
- Remove docstring comments regarding requiring the use of Mullvad VPN, which is
no longer a hard requirement.
- configured two engines: ``mullvadleta`` (uses google) and
``mullvadleta brave`` (uses brave)
- since leta may not provide up-to-date search results, both search engines are
disabled by default.
.. hint::
Leta caches each search for up to 30 days. For example, if you use search
terms like ``news``, contrary to your intention you'll get very old results!
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
Signed-off-by: Grant Lanham <contact@grantlanham.com>
2025-04-23 14:06:32 +02:00
Aadniz
07a94d4d2e
[mod] include SEARXNG_METHOD environment variable
2025-04-23 07:29:26 +02:00
Markus Heiser
e9157b3c1a
[fix] issues when launching a local development server
...
A local development server can be launched by one of these command lines::
$ flask --app searx.webapp run
$ python -m searx.webapp
The different ways of starting the server should lead to the same result, which
is generally the case. However, if the modules are reloaded after code
changes (reload option), it must be avoided that the application is initialized
twice at startup. We have already discussed this in 2022 [1][2].
Further information on this topic can be found in [3][4][5].
To test a bash in the ./local environment was started and the follwing commands
had been executed::
$ ./manage pyenv.cmd bash --norc --noprofile
(py3) SEARXNG_DEBUG=1 flask --app searx.webapp run --reload
(py3) SEARXNG_DEBUG=1 python -m searx.webapp
Since the generic parts of the docs also initialize the app to generate doc from
it, the build of the docs was also tested::
$ make docs.clean docs.live
[1] https://github.com/searxng/searxng/pull/1656#issuecomment-1214198941
[2] https://github.com/searxng/searxng/pull/1616#issuecomment-1206137468
[3] https://flask.palletsprojects.com/en/stable/api/#flask.Flask.run
[4] https://github.com/pallets/flask/issues/5307#issuecomment-1774646119
[5] https://stackoverflow.com/a/25504196
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-22 14:26:11 +02:00
dependabot[bot]
5ae3b3f17e
[upd] web-client (simple): Bump vite-plugin-static-copy
...
Bumps [vite-plugin-static-copy](https://github.com/sapphi-red/vite-plugin-static-copy ) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/sapphi-red/vite-plugin-static-copy/releases )
- [Changelog](https://github.com/sapphi-red/vite-plugin-static-copy/blob/main/CHANGELOG.md )
- [Commits](https://github.com/sapphi-red/vite-plugin-static-copy/compare/vite-plugin-static-copy@2.3.0...vite-plugin-static-copy@2.3.1 )
---
updated-dependencies:
- dependency-name: vite-plugin-static-copy
dependency-version: 2.3.1
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-18 09:46:01 +02:00
dependabot[bot]
50ac76ce94
[upd] web-client (simple): Bump vite in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.2.6 to 6.3.2.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.3.2/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 6.3.2
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-18 09:43:05 +02:00
searxng-bot
5aea044eb5
[l10n] update translations from Weblate
...
f290f4ffe - 2025-04-15 - return42 <return42@noreply.codeberg.org>
4a9134b03 - 2025-04-14 - DZDevelopers <dzdevelopers@noreply.codeberg.org>
a8c86581d - 2025-04-14 - aindriu80 <aindriu80@noreply.codeberg.org>
2b5395719 - 2025-04-11 - ayame30 <ayame30@noreply.codeberg.org>
448a443fa - 2025-04-11 - ayame30 <ayame30@noreply.codeberg.org>
2025-04-18 09:30:55 +02:00
Zhijie He
808dcaf1e2
[feat] engine: add Steam engine
2025-04-18 09:30:17 +02:00
Markus Heiser
777ba6ddf8
[fix] disable engine ansa by default
...
Reported-by: https://github.com/searxng/searxng/pull/4575#issuecomment-2813007107
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-17 16:50:57 +02:00
Tommaso Colella
8ca57748ff
[fix] docs: changed "many" to "some" for clarity in contribution guide's privacy by design section
2025-04-17 16:47:52 +02:00
Tommaso Colella
30399c50e2
[fix] docs: typos and minor refinements in contribution_guide.rst
2025-04-17 16:47:52 +02:00
Tommaso Colella
e6467bce7c
[fix] docs: better phrasing for many sections of contribution_guide.rst
2025-04-17 16:47:52 +02:00
Tommaso Colella
8ca2bbc4e9
[fix] docs: typos in dev contrib guide "it's might be because
...
of the tool" -> "it might be because the tool"
2025-04-17 16:47:52 +02:00
Tommaso Colella
a74593419f
[fix] docs: typo in templates dev doc developerat -> developer at
2025-04-17 16:47:52 +02:00
Zhijie He
f94802f2d2
[feat] engines: add Hugging Face engine
2025-04-17 16:43:32 +02:00
Tommaso Colella
d1c584b961
[feat] engine: add engine for italian press agency ansa
2025-04-17 15:33:57 +02:00
Markus Heiser
81f3d15665
[fix] settings.yml files: doc & obsolete settings in the template
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-17 13:31:10 +02:00
Tommaso Colella
99ad69450d
[fix] Result type: remove rstrip "/" form url normalization
2025-04-17 10:24:05 +02:00
RobinFrcd
087da66565
[feat] add SensCritique (FR) engine
...
Closes: https://github.com/searxng/searxng/issues/4623
2025-04-17 10:19:22 +02:00
Markus Heiser
b84ae39978
[fix] doc of setting server.base_url, env is SEARXNG_BASE_URL
...
Related:
- https://github.com/searxng/searxng/issues/4634
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-16 14:54:46 +02:00
Tommaso Colella
391bb1268d
[feat] engine: add microsoft learn engine
2025-04-12 11:14:13 +02:00
dependabot[bot]
2287a6826a
Bump vite from 6.2.5 to 6.2.6 in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.2.5 to 6.2.6.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.6/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.2.6/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 6.2.6
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 18:23:56 +02:00
dependabot[bot]
b3971f89e2
[upd] web-client (simple): Bump less in /client/simple
...
Bumps [less](https://github.com/less/less.js ) from 4.2.2 to 4.3.0.
- [Release notes](https://github.com/less/less.js/releases )
- [Changelog](https://github.com/less/less.js/blob/master/CHANGELOG.md )
- [Commits](https://github.com/less/less.js/compare/v4.2.2...v4.3.0 )
---
updated-dependencies:
- dependency-name: less
dependency-version: 4.3.0
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 16:02:15 +02:00
Markus Heiser
a4e08a5c2f
[upd] web-client (simple): Bump eslint, sharp, webpack
...
Closes: https://github.com/searxng/searxng/pull/4618
Closes: https://github.com/searxng/searxng/pull/4617
Closes: https://github.com/searxng/searxng/pull/4616
Closes: https://github.com/searxng/searxng/pull/4615
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-11 15:57:01 +02:00
grasdk
8ee51cc0f3
[fix] engine dokuwiki: basedir duplication
...
Dokuwiki searches behind reverse proxy had duplicate base path in the url,
creating a wrong url.
This patch exchanges string concat of URLs with urljoin [1] from urllib.parse. This
eliminates the dual problem, while retaining the old functionality designed to
concatenate protocol, hostname and port (as base_url) with path.
[1] https://docs.python.org/3/library/urllib.parse.html#urllib.parse.urljoin
Closes: https://github.com/searxng/searxng/issues/4598
2025-04-11 09:47:25 +02:00
dependabot[bot]
ed2953c59f
[upd] pypi: Bump lxml from 5.3.1 to 5.3.2
...
Bumps [lxml](https://github.com/lxml/lxml ) from 5.3.1 to 5.3.2.
- [Release notes](https://github.com/lxml/lxml/releases )
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt )
- [Commits](https://github.com/lxml/lxml/compare/lxml-5.3.1...lxml-5.3.2 )
---
updated-dependencies:
- dependency-name: lxml
dependency-version: 5.3.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 09:25:19 +02:00
dependabot[bot]
e2fac7f306
[upd] pypi: Bump selenium from 4.30.0 to 4.31.0
...
Bumps [selenium](https://github.com/SeleniumHQ/Selenium ) from 4.30.0 to 4.31.0.
- [Release notes](https://github.com/SeleniumHQ/Selenium/releases )
- [Commits](https://github.com/SeleniumHQ/Selenium/compare/selenium-4.30.0...selenium-4.31.0 )
---
updated-dependencies:
- dependency-name: selenium
dependency-version: 4.31.0
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 09:23:45 +02:00
dependabot[bot]
8db2a15307
[upd] pypi: Bump sphinx-issues from 5.0.0 to 5.0.1
...
Bumps [sphinx-issues](https://github.com/sloria/sphinx-issues ) from 5.0.0 to 5.0.1.
- [Commits](https://github.com/sloria/sphinx-issues/compare/5.0.0...5.0.1 )
---
updated-dependencies:
- dependency-name: sphinx-issues
dependency-version: 5.0.1
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 09:23:30 +02:00
searxng-bot
92b8f71780
[l10n] update translations from Weblate
...
63157cd1f - 2025-04-10 - pfaca <pfaca@noreply.codeberg.org>
e50166782 - 2025-04-10 - return42 <return42@noreply.codeberg.org>
f7ed39011 - 2025-04-09 - Kita Ikuyo <kitakita@disroot.org>
c8786066f - 2025-04-08 - return42 <return42@noreply.codeberg.org>
dd4adf136 - 2025-04-08 - return42 <return42@noreply.codeberg.org>
df50952f0 - 2025-04-08 - return42 <return42@noreply.codeberg.org>
d9a9a0bad - 2025-04-06 - eatyourglory <eatyourglory@noreply.codeberg.org>
2025-04-11 09:21:14 +02:00
Markus Heiser
15384e8fc5
[fix] make docs - ERROR: Unknown target name: "auth_key"
...
BTW: fix a bug with sys.path: repo-root (not util) needs to added to generate
autodoc from scripts in ./searxng_extra
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-09 17:28:18 +02:00
Markus Heiser
b146b745a7
[fix] Meilisearch engine: Authorization Token When Integrating Meilisearch
...
`X-Meili-API-Key` has been changed to `Authorization` [1]
[1] https://www.meilisearch.com/docs/reference/api/overview#authorization
Suggested-by: https://github.com/searxng/searxng/issues/4416#issuecomment-2781254841
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-07 08:44:00 +02:00
Markus Heiser
c185d07689
[build] /static
2025-04-06 19:21:07 +02:00
Markus Heiser
5a54372368
[fix] images cropped in Safari (webkit)
...
- Closes: https://github.com/searxng/searxng/issues/4156
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-06 19:21:07 +02:00
Markus Heiser
8c8aba8cf5
[fix] engine radio browser: get servers from DNS api.radio-browser.info
...
Do a DNS-lookup of 'all.api.radio-browser.info', add reverse lookup and select
randomly a URL from available servers
Closes: https://github.com/searxng/searxng/issues/4576
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-06 18:59:10 +02:00
Ivan Gabaldon
9424bac031
Don't hardcode uWSGI parameters ( #4578 )
...
* Initial update
* fix
* add todo note
2025-04-04 14:57:53 +02:00
dependabot[bot]
59228fb1db
[upd] web-client (simple): Bump vite in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.2.4 to 6.2.5.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.5/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.2.5/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 6.2.5
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-04 11:47:26 +02:00
searxng-bot
f630a24311
[l10n] update translations from Weblate
...
faf95be5a - 2025-04-03 - sakistzimas <sakistzimas@noreply.codeberg.org>
e42efee66 - 2025-04-02 - Juno Takano <jutty@noreply.codeberg.org>
c1fbb26c4 - 2025-04-02 - return42 <return42@noreply.codeberg.org>
562d21fb9 - 2025-04-02 - ghose <ghose@noreply.codeberg.org>
1ea9e67c5 - 2025-04-01 - return42 <return42@noreply.codeberg.org>
daaa0b41e - 2025-03-31 - wags07 <wags07@noreply.codeberg.org>
52635ec5f - 2025-03-31 - return42 <return42@noreply.codeberg.org>
589ad13f2 - 2025-03-31 - return42 <return42@noreply.codeberg.org>
1f063c96e - 2025-03-31 - return42 <return42@noreply.codeberg.org>
c001e606d - 2025-03-31 - return42 <return42@noreply.codeberg.org>
9bc14f1a0 - 2025-03-31 - wags07 <wags07@noreply.codeberg.org>
6a524ecb4 - 2025-03-31 - return42 <return42@noreply.codeberg.org>
508fe79c7 - 2025-03-31 - return42 <return42@noreply.codeberg.org>
8c8db80e7 - 2025-03-31 - return42 <return42@noreply.codeberg.org>
c9f551913 - 2025-03-31 - AndersNordh <andersnordh@noreply.codeberg.org>
6c56adc71 - 2025-03-31 - artens <artens@noreply.codeberg.org>
15526190b - 2025-03-31 - Linerly <linerly@noreply.codeberg.org>
2102783df - 2025-03-31 - AndersNordh <andersnordh@noreply.codeberg.org>
fee510d78 - 2025-03-30 - kratos <makesocialfoss32@keemail.me>
d5c9b970c - 2025-03-30 - Fjuro <fjuro@noreply.codeberg.org>
94259815b - 2025-03-30 - return42 <return42@noreply.codeberg.org>
a448cf7da - 2025-03-29 - Outbreak2096 <outbreak2096@noreply.codeberg.org>
0c3ef7929 - 2025-03-29 - Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
ce2fbffe8 - 2025-03-29 - SomeTr <sometr@noreply.codeberg.org>
2025-04-04 10:21:19 +02:00
dependabot[bot]
4452358e87
Bump vite from 6.2.3 to 6.2.4 in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.2.3 to 6.2.4.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.4/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.2.4/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-04-03 09:25:43 +02:00
Markus Heiser
7546f88b1e
[build] /static
2025-04-03 09:03:35 +02:00
Markus Heiser
d4c6c9401d
[fix] client/simple: add missing "swiped-events" devDependencies (import)
...
In commit 1a3543d4b in PR-4284 [1] the swiped-events [2] were forgotten to be
migrated. In this patch, the event library is added to the ``devDependencies``
and imported by::
import "../../../node_modules/swiped-events/src/swiped-events.js
[1] https://github.com/searxng/searxng/pull/4284
[2] https://www.npmjs.com/package/swiped-events
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Reported-by: https://github.com/searxng/searxng/pull/4198#issuecomment-2770734321
2025-04-03 09:03:35 +02:00
Markus Heiser
e6308b8167
[fix] hardening against arguments of type None, where str or dict is expected
...
On a long-running server, the tracebacks below can be found (albeit rarely),
which indicate problems with NoneType where a string or another data type is
expected.
result.img_src::
File "/usr/local/searxng/searxng-src/searx/templates/simple/result_templates/images.html", line 13, in top-level template code
<img src="" data-src="{{ image_proxify(result.img_src) }}" alt="{{ result.title|striptags }}">{{- "" -}}
^
File "/usr/local/searxng/searxng-src/searx/webapp.py", line 284, in image_proxify
if url.startswith('//'):
^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'startswith'
result.content::
File "/usr/local/searxng/searxng-src/searx/result_types/_base.py", line 105, in _normalize_text_fields
result.content = WHITESPACE_REGEX.sub(" ", result.content).strip()
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
TypeError: expected string or bytes-like object, got 'NoneType'
html_to_text, when html_str is a NoneType::
File "/usr/local/searxng/searxng-src/searx/engines/wikipedia.py", line 190, in response
title = utils.html_to_text(api_result.get('titles', {}).get('display') or api_result.get('title'))
File "/usr/local/searxng/searxng-src/searx/utils.py", line 158, in html_to_text
html_str = html_str.replace('\n', ' ').replace('\r', ' ')
^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'replace'
presearch engine, when json_resp is a NoneType::
File "/usr/local/searxng/searxng-src/searx/engines/presearch.py", line 221, in response
results = parse_search_query(json_resp.get('results'))
File "/usr/local/searxng/searxng-src/searx/engines/presearch.py", line 161, in parse_search_query
for item in json_results.get('specialSections', {}).get('topStoriesCompact', {}).get('data', []):
^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'get'
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-04-01 11:13:47 +02:00
Zhijie He
08885d0614
[feat] add Quark autocomplete support
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-31 14:59:49 +02:00
Zhijie He
7b4612e862
[feat] engines: add Ollama engine
2025-03-30 14:25:58 +02:00
Bnyro
9ffa9fb730
[feat] engines: add reuters news engine
2025-03-30 13:56:09 +02:00
Tommaso Colella
5daa4f0460
[feat] engine: add engine for italian online newspaper "il post"
2025-03-30 13:45:06 +02:00
Zhijie He
33661cc5c3
[feat] engines: add Quark engine
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-30 13:20:35 +02:00
Zhijie He
b231cb4b59
[feat] engines: add Niconico videos engine
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-30 12:42:31 +02:00
naughtymommy42069
c8b419fcbb
[feat] engine: add bitchute
2025-03-30 12:41:43 +02:00
Markus Heiser
237267ffbe
[data] update searx.data - update_engine_descriptions.py
2025-03-30 09:54:03 +02:00
Markus Heiser
50f92779bd
[refactor] migrate plugins from "module" to class SXNGPlugin
...
This patch brings two major changes:
- ``Result.filter_urls(..)`` to pass a filter function for URL fields
- The ``enabled_plugins:`` section in SearXNG's settings do no longer exists.
To understand plugin development compile documentation:
$ make docs.clean docs.live
and read http://0.0.0.0:8000/dev/plugins/development.html
There is no longer a distinction between built-in and external plugin, all
plugins are registered via the settings in the ``plugins:`` section.
In SearXNG, plugins can be registered via a fully qualified class name. A
configuration (`PluginCfg`) can be transferred to the plugin, e.g. to activate
it by default / *opt-in* or *opt-out* from user's point of view.
built-in plugins
================
The built-in plugins are all located in the namespace `searx.plugins`.
.. code:: yaml
plugins:
searx.plugins.calculator.SXNGPlugin:
active: true
searx.plugins.hash_plugin.SXNGPlugin:
active: true
searx.plugins.self_info.SXNGPlugin:
active: true
searx.plugins.tracker_url_remover.SXNGPlugin:
active: true
searx.plugins.unit_converter.SXNGPlugin:
active: true
searx.plugins.ahmia_filter.SXNGPlugin:
active: true
searx.plugins.hostnames.SXNGPlugin:
active: true
searx.plugins.oa_doi_rewrite.SXNGPlugin:
active: false
searx.plugins.tor_check.SXNGPlugin:
active: false
external plugins
================
SearXNG supports *external plugins* / there is no need to install one, SearXNG
runs out of the box.
- Only show green hosted results: https://github.com/return42/tgwf-searx-plugins/
To get a developer installation in a SearXNG developer environment:
.. code:: sh
$ git clone git@github.com:return42/tgwf-searx-plugins.git
$ ./manage pyenv.cmd python -m \
pip install -e tgwf-searx-plugins
To register the plugin in SearXNG add ``only_show_green_results.SXNGPlugin`` to
the ``plugins:``:
.. code:: yaml
plugins:
# ...
only_show_green_results.SXNGPlugin:
active: false
Result.filter_urls(..)
======================
The ``Result.filter_urls(..)`` can be used to filter and/or modify URL fields.
In the following example, the filter function ``my_url_filter``:
.. code:: python
def my_url_filter(result, field_name, url_src) -> bool | str:
if "google" in url_src:
return False # remove URL field from result
if "facebook" in url_src:
new_url = url_src.replace("facebook", "fb-dummy")
return new_url # return modified URL
return True # leave URL in field unchanged
is applied to all URL fields in the :py:obj:`Plugin.on_result` hook:
.. code:: python
class MyUrlFilter(Plugin):
...
def on_result(self, request, search, result) -> bool:
result.filter_urls(my_url_filter)
return True
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-29 10:16:43 +01:00
return42
d36da0a6c3
[data] update searx.data - update_ahmia_blacklist.py
2025-03-29 09:49:27 +01:00
return42
d7ca257fcd
[data] update searx.data - update_firefox_version.py
2025-03-29 09:48:39 +01:00
return42
98024d8518
[data] update searx.data - update_wikidata_units.py
2025-03-29 09:48:06 +01:00
return42
96d0854a50
[data] update searx.data - update_currencies.py
2025-03-29 09:47:33 +01:00
Aadniz
ecee73eafd
[fix] presearch engine: Unexpected crash if duration not in videos
2025-03-28 16:26:39 +01:00
searxng-bot
1189b1906c
[l10n] update translations from Weblate
...
9a0c9e142 - 2025-03-27 - return42 <return42@noreply.codeberg.org>
8e06fb05a - 2025-03-27 - return42 <return42@noreply.codeberg.org>
8e683ef69 - 2025-03-27 - return42 <return42@noreply.codeberg.org>
3588715a0 - 2025-03-27 - return42 <return42@noreply.codeberg.org>
acf531db2 - 2025-03-27 - return42 <return42@noreply.codeberg.org>
b4b09bdef - 2025-03-27 - return42 <return42@noreply.codeberg.org>
8bef57082 - 2025-03-27 - return42 <return42@noreply.codeberg.org>
239bae388 - 2025-03-27 - return42 <return42@noreply.codeberg.org>
ca6a6fc4f - 2025-03-27 - return42 <return42@noreply.codeberg.org>
2a19a52db - 2025-03-27 - return42 <return42@noreply.codeberg.org>
7b217fad1 - 2025-03-24 - Haraldher <haraldher@noreply.codeberg.org>
649d15f55 - 2025-03-24 - Haraldher <haraldher@noreply.codeberg.org>
2025-03-28 08:51:09 +01:00
dependabot[bot]
4a0ff84a40
[upd] pypi: Bump selenium from 4.29.0 to 4.30.0
...
Bumps [selenium](https://github.com/SeleniumHQ/Selenium ) from 4.29.0 to 4.30.0.
- [Release notes](https://github.com/SeleniumHQ/Selenium/releases )
- [Commits](https://github.com/SeleniumHQ/Selenium/compare/selenium-4.29.0...selenium-4.30.0 )
---
updated-dependencies:
- dependency-name: selenium
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-28 08:50:32 +01:00
dependabot[bot]
d02d432862
[upd] pypi: Bump yamllint from 1.36.2 to 1.37.0
...
Bumps [yamllint](https://github.com/adrienverge/yamllint ) from 1.36.2 to 1.37.0.
- [Release notes](https://github.com/adrienverge/yamllint/releases )
- [Changelog](https://github.com/adrienverge/yamllint/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/adrienverge/yamllint/compare/v1.36.2...v1.37.0 )
---
updated-dependencies:
- dependency-name: yamllint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-28 08:50:10 +01:00
dependabot[bot]
3c537f958f
[upd] web-client (simple): Bump stylelint in /client/simple
...
Bumps [stylelint](https://github.com/stylelint/stylelint ) from 16.16.0 to 16.17.0.
- [Release notes](https://github.com/stylelint/stylelint/releases )
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/stylelint/stylelint/compare/16.16.0...16.17.0 )
---
updated-dependencies:
- dependency-name: stylelint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-28 08:49:44 +01:00
dependabot[bot]
a2ad1bed00
[upd] web-client (simple): Bump eslint in /client/simple
...
Bumps [eslint](https://github.com/eslint/eslint ) from 9.22.0 to 9.23.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v9.22.0...v9.23.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-28 08:48:46 +01:00
Markus Heiser
f62f6194e3
[build] /static
2025-03-27 12:27:37 +01:00
Markus Heiser
68d871dea0
[fix] image deatils view: vertical overflow in results.image-detail-open
...
overflow-y: scroll
If the information on the image exceeds the visible area in the detail view,
there must be a way to access this information via scroll.
max-height: -17rem versus 7rem
There are new fields in the lower area, so the height of the image (top) must
be reduced
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-27 12:27:37 +01:00
Markus Heiser
150b2e21fd
[fix] make docs -> ERROR: Unknown target name: "google: max 50 pages".
...
Fix the issues reported by sphinx build::
docstring of searx.engines.google.max_page:1: ERROR: Unknown target name: "google: max 50 pages".
docstring of searx.engines.google_images.max_page:1: ERROR: Unknown target name: "google: max 50 pages".
docstring of searx.engines.google_scholar.max_page:1: ERROR: Unknown target name: "google: max 50 pages".
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-27 06:57:28 +01:00
Aadniz
02f5002a5f
[fix] baidu engine: properly decoding HTML escape codes
2025-03-27 06:11:39 +01:00
Bnyro
4dfc47584d
[refactor] duration strings: move parsing logic to utils.py
2025-03-25 16:48:44 +01:00
Bnyro
c28d35c7fc
[fix] duckduckgo news: unescaped html sequences in description
2025-03-25 16:14:36 +01:00
dependabot[bot]
2ad987c711
Bump vite from 6.2.2 to 6.2.3 in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.2.2 to 6.2.3.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.3/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.2.3/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-25 16:04:41 +01:00
Markus Heiser
5986629c6b
[fix] make data.traits - partial revert of commit 30a8204
...
The entries in the catalog of search languages are build up from the "Engine
Traits" [1] and which entries are included in the catalog is controlled qby two
threshold values [2].
If possible, the values should ensure that no languages or regions disappear
from the catalog of search languages [3].
The threshold values should have been adjusted in commit 30a8204:
- ``min_eng_per_region = 18``
- ``min_eng_per_lang = 22``
Because the threshold values were not adjusted, many entries were missing in the
search language catalog. This bug has been fixed with this patch: the threshold
values have been adjusted and the catalog of search languages has been completed
again.
[1] https://docs.searxng.org/dev/engines/enginelib.html#module-searx.enginelib.traits
[2] 96a6e3dcb2/searxng_extra/update/update_engine_traits.py (L104-L105)
[3] https://github.com/searxng/searxng/blob/master/searx/sxng_locales.py
Closes: https://github.com/searxng/searxng/issues/4519
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-22 07:52:36 +01:00
dependabot[bot]
7e680d8e8e
[upd] web-client (simple): Bump stylelint in /client/simple
...
Bumps [stylelint](https://github.com/stylelint/stylelint ) from 16.15.0 to 16.16.0.
- [Release notes](https://github.com/stylelint/stylelint/releases )
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/stylelint/stylelint/compare/16.15.0...16.16.0 )
---
updated-dependencies:
- dependency-name: stylelint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-21 11:43:46 +01:00
Ikko Eltociear Ashimine
2482646323
[fix] typo in doc-str: offical -> official
2025-03-21 11:05:54 +01:00
Markus Heiser
96a6e3dcb2
[fix] Results.url: don't normalize www.example.com to example.com
...
Hostname "www" in URL results can't be normalized to an empty string:
- https://www.tu-darmstadt.de/
- https://tu-darmstadt.de/
Reported-By: @Bnyro <bnyro@tutanota.com>
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-21 10:28:34 +01:00
searxng-bot
ef99cc472d
[l10n] update translations from Weblate
...
efbb54229 - 2025-03-16 - gkkulik <gkkulik@noreply.codeberg.org>
f76dddd02 - 2025-03-15 - cc5efd7b0 <cc5efd7b0@noreply.codeberg.org>
2025-03-21 08:40:14 +01:00
dependabot[bot]
64b52d485b
[upd] pypi: Bump yamllint from 1.36.0 to 1.36.2
...
Bumps [yamllint](https://github.com/adrienverge/yamllint ) from 1.36.0 to 1.36.2.
- [Release notes](https://github.com/adrienverge/yamllint/releases )
- [Changelog](https://github.com/adrienverge/yamllint/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/adrienverge/yamllint/compare/v1.36.0...v1.36.2 )
---
updated-dependencies:
- dependency-name: yamllint
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-21 08:39:32 +01:00
dependabot[bot]
de6b027ec7
[upd] pypi: Bump tomli from 2.0.2 to 2.2.1
...
Bumps [tomli](https://github.com/hukkin/tomli ) from 2.0.2 to 2.2.1.
- [Changelog](https://github.com/hukkin/tomli/blob/master/CHANGELOG.md )
- [Commits](https://github.com/hukkin/tomli/compare/2.0.2...2.2.1 )
---
updated-dependencies:
- dependency-name: tomli
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-21 08:38:48 +01:00
dependabot[bot]
f687306a95
[upd] pypi: Bump pylint from 3.3.4 to 3.3.6
...
Bumps [pylint](https://github.com/pylint-dev/pylint ) from 3.3.4 to 3.3.6.
- [Release notes](https://github.com/pylint-dev/pylint/releases )
- [Commits](https://github.com/pylint-dev/pylint/compare/v3.3.4...v3.3.6 )
---
updated-dependencies:
- dependency-name: pylint
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-21 08:38:16 +01:00
Bnyro
b75e56afe6
[fix] duckduckgo: answer sometimes contains faulty (duplicated) url
2025-03-21 07:48:30 +01:00
Bnyro
3668c7012e
[fix] presearch videos: item description and duration are located in metadata field
2025-03-20 20:55:09 +01:00
Aadniz
556db857aa
[fix] presearch engine: News and Videos formatted incorrectly
2025-03-20 20:44:43 +01:00
Tan Yong Sheng
40feede51e
[fix] engine: core.ac.uk implement API v3 / v2 is no longer supported
2025-03-19 17:51:00 +01:00
Alexandre Flament
82b9e533b2
[fix] static.build: upgrade min. node version to 18.17
...
For sharp [1] dependency / this commit was cherry picked from PR #3157
[1] https://www.npmjs.com/package/sharp
2025-03-18 06:19:44 +01:00
Bnyro
babbe9e1ae
[fix] duckduckgo: show proper source url of answers
2025-03-18 05:31:28 +01:00
Bnyro
885d02c8c3
[feat] engine: add selfh.st/icons for logos of common self-hosted programs
2025-03-17 20:23:54 +01:00
Bnyro
bbb2894b04
[engine] elasticsearch: add pagination support
2025-03-16 22:10:05 +01:00
Brock Vojkovic
84636ef49a
[feat] add docker healthcheck back ( #4504 )
2025-03-16 11:34:26 +01:00
Markus Heiser
a1d5add718
fixup! [fix] fix invalid escape error in Baidu Images & default config typo
2025-03-15 17:14:54 +01:00
Zhijie He
38caa49540
[fix] fix invalid escape error in Baidu Images & default config typo
2025-03-15 17:14:54 +01:00
Zhijie He
4ce7f1accc
[feat]: engines add images & kaifa from baidu.com
2025-03-15 17:14:54 +01:00
Ivan Gabaldon
11b5ae186b
container: add default support for IPv6 ( #4448 )
...
* Initial update
* update docs and test files
2025-03-15 11:20:37 +01:00
Markus Heiser
583007fd04
[build] /static
2025-03-15 10:36:33 +01:00
Markus Heiser
da7b069d6e
[fix] plugins: bugfix of tor_check and unit_converter
...
Closes: https://github.com/searxng/searxng/issues/4461
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-15 10:36:33 +01:00
Markus Heiser
f49b2c94a9
[mod] migrate all key-value.html templates to KeyValue type
...
The engines now all use KeyValue results and return the results in a
EngineResults object.
The sqlite engine can return MainResult results in addition to KeyValue
results (based on engine's config in settings.yml),
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-15 10:36:33 +01:00
Markus Heiser
af5dbdf768
[mod] typification of SearXNG: add new result type KeyValue
...
This patch adds a new result type: KeyValue
- Python class: searx/result_types/keyvalue.py
- Jinja template: searx/templates/simple/result_templates/keyvalue.html
- CSS (less) client/simple/src/less/result_types/keyvalue.less
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-15 10:36:33 +01:00
Markus Heiser
8769b7c6d6
[refactor] typification of SearXNG (MainResult) / result items (part 2)
...
The class ReslutContainer has been revised, it can now handle the typed Result
items of classes:
- MainResult
- LegacyResult (a dict wrapper for backward compatibility)
Due to the now complete typing of theses three clases, instead of the *getitem*
accesses, the fields can now be accessed directly via attributes (which is also
supported by the IDE).
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-15 10:36:33 +01:00
Markus Heiser
d6ce29f7f0
[build] /static
2025-03-15 09:03:49 +01:00
Markus Heiser
eb1bdea865
[fix] make static.build.commit: add client/simple/package-lock.json
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-15 09:03:49 +01:00
bearz314
85bdff6b0a
[web-client] simple theme: dynamic vertical height
...
On mobile devices with browser chrome (UI) that recedes on scroll,
'vh' includes the height covered by chrome, which 'dvh' does not.
By using 'dvh' the footer is immediately visible on the homepage
without scrollbar on mobile devices.
2025-03-15 09:03:49 +01:00
dependabot[bot]
f7ef4396b1
[upd] pypi: Bump aiounittest from 1.4.3 to 1.5.0
...
Bumps [aiounittest](https://github.com/kwarunek/aiounittest ) from 1.4.3 to 1.5.0.
- [Release notes](https://github.com/kwarunek/aiounittest/releases )
- [Commits](https://github.com/kwarunek/aiounittest/compare/1.4.3...1.5.0 )
---
updated-dependencies:
- dependency-name: aiounittest
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-15 08:04:23 +01:00
dependabot[bot]
83f6545903
[upd] pypi: Bump yamllint from 1.35.1 to 1.36.0
...
Bumps [yamllint](https://github.com/adrienverge/yamllint ) from 1.35.1 to 1.36.0.
- [Changelog](https://github.com/adrienverge/yamllint/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/adrienverge/yamllint/compare/v1.35.1...v1.36.0 )
---
updated-dependencies:
- dependency-name: yamllint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-15 07:52:10 +01:00
searxng-bot
6afe0e29a7
[l10n] update translations from Weblate
...
efa1f5656 - 2025-03-13 - return42 <return42@noreply.codeberg.org>
5e0a76d3c - 2025-03-13 - return42 <return42@noreply.codeberg.org>
2025-03-15 07:50:21 +01:00
dependabot[bot]
523871ae7b
[upd] web-client (simple): Bump @eslint/js in /client/simple
...
Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js ) from 9.21.0 to 9.22.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/commits/v9.22.0/packages/js )
---
updated-dependencies:
- dependency-name: "@eslint/js"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-15 07:49:52 +01:00
dependabot[bot]
505f7732d8
[upd] web-client (simple): Bump vite in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.2.1 to 6.2.2.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.2.2/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-15 07:49:44 +01:00
dependabot[bot]
896cb3ab46
[upd] web-client (simple): Bump eslint in /client/simple
...
Bumps [eslint](https://github.com/eslint/eslint ) from 9.21.0 to 9.22.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v9.21.0...v9.22.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-15 07:49:34 +01:00
XLion
3fe602a468
[fix] "[fix] uwsgi: don't set static-expires": Clean comment that forgot to cleen
...
I noticed this when I tracking the difference between my current `settings.yml` and the `settings.yml`.
2025-03-11 11:04:34 +01:00
Brock Vojkovic
8b1d73c5b9
[feat] add docker into devcontainer ( #4475 )
2025-03-09 09:40:49 +01:00
Aadniz
a88b4d7036
[fix] presearch engine: domain sometimes included in beginning of titles
2025-03-08 12:39:16 +01:00
Austin-Olacsi
73d50f5748
[feat] add bilibili support to get get_embeded_stream_url
2025-03-08 10:47:30 +01:00
Markus Heiser
523d2a7683
[fix] uwsgi: don't set static-expires
...
As long we don't have a working solution for cache busting [3][4] we should not
set an expire time in thw uWSGI config.
The default procedure in every web browser is the "304 Not Modified" [2] and
this default procedure should also be sufficient for us as long as we have not
implemented a complete alternative (cache busting) / form [1]
> By default uWSGI will add a Last-Modified [2] header to all static responses,
> and will honor the If-Modified-Since [2] request header.
[1] https://uwsgi-docs.readthedocs.io/en/latest/StaticFiles.html#setting-the-expires-headers
[2] https://developer.mozilla.org/de/docs/Web/HTTP/Status/304
[3] https://github.com/searxng/searxng/pull/4433
[4] https://github.com/searxng/searxng/issues/964
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-08 09:08:03 +01:00
Aadniz
4884747508
[fix] presearch engine: Title showing <em> html code
2025-03-07 21:24:35 +01:00
Markus Heiser
eb3633629a
[fix] set language for engines from chinese market (no i18n index nor UI)
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-07 19:59:13 +01:00
Loris
02b76c8389
[fix] engine qwant: add tgp and llm arguments to avoid CAPTCHA
2025-03-07 18:58:45 +01:00
Aadniz
67a8b66f75
[README] Updated logo paths
...
Since the commit a207f5d0353d61e43d3140db1243ce003cd0c46b, logos has been moved and README.rst needs to point to the new paths.
2025-03-07 13:40:31 +01:00
Markus Heiser
08a90d46d6
[doc] add missing docs for the search.max_page setting
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-07 10:07:41 +01:00
dependabot[bot]
e7cb18c3dd
[upd] web-client (simple): Bump vite-plugin-static-copy
...
Bumps [vite-plugin-static-copy](https://github.com/sapphi-red/vite-plugin-static-copy ) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/sapphi-red/vite-plugin-static-copy/releases )
- [Changelog](https://github.com/sapphi-red/vite-plugin-static-copy/blob/main/CHANGELOG.md )
- [Commits](https://github.com/sapphi-red/vite-plugin-static-copy/compare/vite-plugin-static-copy@2.2.0...vite-plugin-static-copy@2.3.0 )
---
updated-dependencies:
- dependency-name: vite-plugin-static-copy
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-07 09:34:05 +01:00
dependabot[bot]
9a50f6c9a1
[upd] web-client (simple): Bump vite in /client/simple
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 6.2.0 to 6.2.1.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/create-vite@6.2.1/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-07 09:21:34 +01:00
dependabot[bot]
00bae78463
[upd] web-client (simple): Bump stylelint in /client/simple
...
Bumps [stylelint](https://github.com/stylelint/stylelint ) from 16.14.1 to 16.15.0.
- [Release notes](https://github.com/stylelint/stylelint/releases )
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/stylelint/stylelint/compare/16.14.1...16.15.0 )
---
updated-dependencies:
- dependency-name: stylelint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-07 09:21:16 +01:00
dependabot[bot]
375f0c4a79
[upd] pypi: Bump mock from 5.1.0 to 5.2.0
...
Bumps [mock](https://github.com/testing-cabal/mock ) from 5.1.0 to 5.2.0.
- [Changelog](https://github.com/testing-cabal/mock/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/testing-cabal/mock/compare/5.1.0...5.2.0 )
---
updated-dependencies:
- dependency-name: mock
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-07 08:17:31 +01:00
dependabot[bot]
424cbf7851
[upd] pypi: Bump jinja2 from 3.1.5 to 3.1.6
...
Bumps [jinja2](https://github.com/pallets/jinja ) from 3.1.5 to 3.1.6.
- [Release notes](https://github.com/pallets/jinja/releases )
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst )
- [Commits](https://github.com/pallets/jinja/compare/3.1.5...3.1.6 )
---
updated-dependencies:
- dependency-name: jinja2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-03-07 08:17:14 +01:00
searxng-bot
860f0a35ac
[l10n] update translations from Weblate
...
a516df5a2 - 2025-03-06 - DanielBoone <danielboone@noreply.codeberg.org>
2763a5d77 - 2025-03-06 - return42 <return42@noreply.codeberg.org>
4a3a81c9b - 2025-03-06 - marc-lopez <marc-lopez@noreply.codeberg.org>
d2bd5b048 - 2025-03-05 - MonsoonFire <monsoonfire@noreply.codeberg.org>
752b558d6 - 2025-03-05 - buiducnhat <buiducnhat@noreply.codeberg.org>
0ff2ccf43 - 2025-03-04 - marc-lopez <marc-lopez@noreply.codeberg.org>
462a0625d - 2025-03-03 - Juno Takano <jutty@noreply.codeberg.org>
5cb41045c - 2025-03-02 - gkkulik <gkkulik@noreply.codeberg.org>
e599c3942 - 2025-03-02 - gkkulik <gkkulik@noreply.codeberg.org>
d44128eda - 2025-03-02 - gkkulik <gkkulik@noreply.codeberg.org>
2025-03-07 08:16:45 +01:00
Bubu
b8671c7a4a
[feat] engines: add baidu (general)
2025-03-07 06:59:28 +01:00
Zhijie He
066aabc112
[feat] engines: add www.acfun.cn
2025-03-06 17:52:16 +01:00
Zhijie He
8fe4904619
[feat] engines: add www.iqiyi.com
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-06 17:28:14 +01:00
Zhijie He
08d08475fc
[feat] engines: add www.chinaso.com
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-06 17:23:11 +01:00
Markus Heiser
194f222203
[fix] engines: Google-Web & Google-Video (random arc_id)
...
Both enghines have been reported ``TooManyRequests``, additionaly Google-Videos
thumbnails needed a review.
Based on the research from @unixfox [1] this patch generates every hour a new random
``arc_id``.
[1] https://github.com/searxng/searxng/issues/4435#issuecomment-2703279522
Closes:
- https://github.com/searxng/searxng/issues/4435
- https://github.com/searxng/searxng/issues/4431
Related:
- https://github.com/searxng/searxng/discussions/4434
- https://github.com/searxng/searxng/discussions/4429
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-06 15:43:53 +01:00
Markus Heiser
8984d7ae02
[fix] brave engine: add sec-fetch headers and source=web argument
...
The intention is to reduce the "TooManyRequestsException".
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-02 18:19:55 +01:00
Zhijie He
b0beb307ca
[chore] add timediff field for sogou_videos
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-02 13:31:31 +01:00
Zhijie He
76f52b5b45
[feat] add Sogou WeChat article search support
2025-03-02 13:31:31 +01:00
Zhijie He
97aa5a779b
[feat] add Sogou engine for searxng
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-02 13:31:31 +01:00
Zhijie He
71d1504e57
[feat] add 360search engine for searxng
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-03-02 13:25:35 +01:00
Markus Heiser
80f5fad16e
[fix] add backward compatibility for the "enabled_plugins:"
...
Before #4183 a builtin plugin was *defautlt_on* when it is listed in the
"enabled_plugins" settings, this patch restores the previous behavior.
Not part of this patch but just to mentioning in context of #4263 :
In the long term, we will abolish the "enabled_plugins:" setting and combine
all options for the plugins in the "plugins:" setting, as is already planned
in the PR #4282
Closes: https://github.com/searxng/searxng/issues/4263
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-01 18:02:31 +01:00
Markus Heiser
0c2076ca5b
[doc] minor improvements to the favicon docs (cache.db_url)
...
Related:
- https://github.com/searxng/searxng/issues/4405
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-01 18:02:05 +01:00
Bnyro
a51416c7c3
[feat] engines: add openclipart.org
2025-03-01 18:01:51 +01:00
Markus Heiser
d0022d86d2
[refactor] soundcloud engine
...
Closes: https://github.com/searxng/searxng/issues/4226
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-01 17:51:14 +01:00
Markus Heiser
1d16b94279
[fix] wikidata: increase wikidata queries timeout
...
The big queries for initializing and updating the currencies take longer than
the default of the wikidata engine, which is only 3sec.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-01 12:21:29 +01:00
return42
30a820437d
[data] update searx.data - update_engine_traits.py
2025-03-01 09:43:06 +01:00
Markus Heiser
03419078ef
[fix] bing fetch engine traits - adjusted XPath selectors
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-01 09:43:06 +01:00
return42
01e2b3e325
[data] update searx.data - update_firefox_version.py
2025-03-01 07:47:48 +01:00
return42
ccf485c519
[data] update searx.data - update_wikidata_units.py
2025-03-01 07:47:24 +01:00
return42
64810ee911
[data] update searx.data - update_ahmia_blacklist.py
2025-03-01 07:44:28 +01:00
return42
a4b120c33d
[data] update searx.data - update_engine_descriptions.py
2025-03-01 07:43:29 +01:00
return42
73e4128970
[data] update searx.data - update_external_bangs.py
2025-03-01 07:43:00 +01:00
dependabot[bot]
355883f366
[upd] pypi: Bump typer-slim from 0.15.1 to 0.15.2
...
Bumps [typer-slim](https://github.com/fastapi/typer ) from 0.15.1 to 0.15.2.
- [Release notes](https://github.com/fastapi/typer/releases )
- [Changelog](https://github.com/fastapi/typer/blob/master/docs/release-notes.md )
- [Commits](https://github.com/fastapi/typer/compare/0.15.1...0.15.2 )
---
updated-dependencies:
- dependency-name: typer-slim
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-28 12:58:29 +01:00
dependabot[bot]
b4b1a61562
[upd] pypi: Bump setproctitle from 1.3.4 to 1.3.5
...
Bumps [setproctitle](https://github.com/dvarrazzo/py-setproctitle ) from 1.3.4 to 1.3.5.
- [Changelog](https://github.com/dvarrazzo/py-setproctitle/blob/master/HISTORY.rst )
- [Commits](https://github.com/dvarrazzo/py-setproctitle/compare/version-1.3.4...version-1.3.5 )
---
updated-dependencies:
- dependency-name: setproctitle
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-28 12:57:45 +01:00
searxng-bot
28b5cbf276
[l10n] update translations from Weblate
...
0e9536840 - 2025-02-24 - dauiau <dauiau@users.noreply.translate.codeberg.org>
047501d2d - 2025-02-25 - return42 <return42@users.noreply.translate.codeberg.org>
647b20923 - 2025-02-21 - kratos <kratos@users.noreply.translate.codeberg.org>
288d0d4c8 - 2025-02-21 - guenael <guenael@users.noreply.translate.codeberg.org>
2025-02-28 12:57:15 +01:00
dependabot[bot]
d9d5e9140e
[upd] web-client (simple): Bump globals in /client/simple
...
Bumps [globals](https://github.com/sindresorhus/globals ) from 15.15.0 to 16.0.0.
- [Release notes](https://github.com/sindresorhus/globals/releases )
- [Commits](https://github.com/sindresorhus/globals/compare/v15.15.0...v16.0.0 )
---
updated-dependencies:
- dependency-name: globals
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-28 12:56:27 +01:00
Markus Heiser
cd1b88e916
[mod] bump copy-webpack-plugin 13.0.2, eslint 9.21 & vite 6.2.0
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:41:06 +01:00
Markus Heiser
4e195e1000
[mod] bump copy-webpack-plugin 13.0.2, eslint 9.21 & vite 6.2.0
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:38:59 +01:00
Markus Heiser
d5ba3bf150
[build] /static
2025-02-28 12:27:41 +01:00
Markus Heiser
485f1f8eff
[upd] npm: Bump eslint from 9.19.0 to 9.20.1 in /client/simple
...
Related:
- https://github.com/searxng/searxng/pull/4322
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
8b864ed111
[fix] simple template - video.html fix button icon to icon_small
...
BTW: Rename the manufacturer-specific name ``ion-icon`` of the icon set in
SerXNG to ``sxng-icon-set`` --> The icon set can be assembled together as
desired in the FE and should therefore not have a manufacturer-specific name in
the style and template definitions.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
6500d73714
[web-client] integrate the migrated theme in the github CI
...
- upgrade to ubuntu-24.04 to get NodeJS v20
- remove DEBUG (V=1) environment / in a ViteJS env the DEBUG environment is
reserved for interactive debugging tasks (not for verbose build messages).
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
2bf77f5d2d
[web-client] integrate the migrated theme in the development workflows
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
1a3543d4b2
[web-client] simple theme: final build by vite & clean up grunt leftovers
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
872e09d103
[web-client] simple theme: move SVGs to client/simple/src and deploy to static by plg_svg2svg
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
189dd0155d
[web-client] simple theme: refactor jinja_svg_catalog and cleanup icon names
...
This patch implements the template generation of the template:
searx/templates/simple/icons.html
by the way the icon set (the icon names) has been normalized:
film-outline --> film
magnet-outline --> magnet
..
warning --> alert
Some missing (categorie) icons had been added.
Some of the ionicons are not suitable for a dark theme, we fixed the svg
manually in src/svg/ionicons:
- https://github.com/searxng/searxng/pull/4284#issuecomment-2680550342
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
30ee34d3ea
[web-client] simple theme: vite plugins plg_svg2png & plg_svg2svg
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
a207f5d035
[web-client] simple theme: move src/brand to client/simple/src
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
d29ca7d593
[web-client] simple theme: stylelint-prettier LESS source files
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
a8ed79b730
[web-client] simple theme: stylelint LESS source files
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
b74496b192
[web-client] simple theme: eslint JS source files
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
7a6ea56565
[web-client] simple theme: vite build -- CSS sourcemaps still missing!!!
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
a1132deaa4
[web-client] simple theme: move sources to client/simple/src
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
b6487b70aa
[web-client] simple theme: build & development env based on vite.
...
Vite is a build tool, it consists of two major parts [1]:
- A dev server that provides rich feature enhancements over native ES modules,
for example extremely fast Hot Module Replacement (HMR).
- A build command that bundles your code with Rollup, pre-configured to output
highly optimized static assets for production.
[1] https://vite.dev/guide/
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-28 12:27:41 +01:00
Markus Heiser
e86bfa163b
Revert "[feat] add HEALTHCHECK in Dockerfile"
...
This reverts commit dabe42549991619789485fa0841954d9f5db8b60.
2025-02-26 11:55:43 +01:00
Markus Heiser
333d536937
Revert "Updated health check in Dockerfile"
...
This reverts commit 1fd4dab3b41bd45da12a66677ed94ae438d27912.
2025-02-26 11:55:43 +01:00
Salvatore Gabriele La Greca
1fd4dab3b4
Updated health check in Dockerfile
2025-02-26 10:20:51 +01:00
Markus Heiser
887594f634
[fix] Internet links disappeared from wikidata side box (second try)
...
Related:
- https://github.com/searxng/searxng/pull/4286#issuecomment-2639960013
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-26 08:45:56 +01:00
fatwang2
bc5c8e5748
[fix] engine unsplash: image links by preserving URL parameters
...
Only remove ixid parameter while keeping other essential URL parameters
to ensure images are properly displayed in search results.
2025-02-26 08:44:39 +01:00
dependabot[bot]
cb0a75bad9
[upd] pypi: Bump selenium from 4.28.1 to 4.29.0
...
Bumps [selenium](https://github.com/SeleniumHQ/Selenium ) from 4.28.1 to 4.29.0.
- [Release notes](https://github.com/SeleniumHQ/Selenium/releases )
- [Commits](https://github.com/SeleniumHQ/Selenium/commits/selenium-4.29.0 )
---
updated-dependencies:
- dependency-name: selenium
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-26 07:18:24 +01:00
Brock Vojkovic
dabe425499
[feat] add HEALTHCHECK in Dockerfile
2025-02-26 07:17:49 +01:00
searxng-bot
f325f8a886
[l10n] update translations from Weblate
...
fecbeb1d5 - 2025-02-20 - return42 <return42@users.noreply.translate.codeberg.org>
8891568c6 - 2025-02-17 - AlanBacker <alanbacker@users.noreply.translate.codeberg.org>
727ae2508 - 2025-02-15 - return42 <return42@users.noreply.translate.codeberg.org>
11f215e90 - 2025-02-15 - return42 <return42@users.noreply.translate.codeberg.org>
9eb07083e - 2025-02-15 - thenack0 <thenack0@users.noreply.translate.codeberg.org>
2025-02-26 07:16:01 +01:00
Markus Heiser
2e0abc9310
[fix] various issues in the documentation
...
Closes: https://github.com/searxng/searxng/issues/4370
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-26 07:15:39 +01:00
Markus Heiser
28d1240fce
[fix] remove dead invidious instances from the settings
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-20 17:16:15 +01:00
Markus Heiser
4994fbb5af
[fix] engines bing.images & brave.videos - fix parse data string
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-20 17:03:25 +01:00
Markus Heiser
caf0dd5372
[fix] piped engine - update backend_url list
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-20 14:43:01 +01:00
Markus Heiser
c0a21789a3
[mod] activate startpage by default and use default timeout (3sec)
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-20 14:23:03 +01:00
Bnyro
0f2fc5879d
[feat] startpage: support for news and images
2025-02-20 13:44:28 +01:00
Markus Heiser
feb15e3878
[fix] brave.news engine: response is HTML and no longer JSON
...
The response from brave.com for news is no longer a JSON string.
Closes: https://github.com/searxng/searxng/issues/4352
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-20 10:08:03 +01:00
bearz314
c2804c51e2
[doc] Add myself for trying to improve searxng
2025-02-20 07:55:45 +01:00
bearz314
0a3eb24a0b
[fix] limiter: prevent loading cached index html when redirected
...
The redirection to index lets client requests CSS token, if somehow they haven't been.
We need to ensure the html isn't cached so the latest token can be retrieved.
2025-02-20 07:55:45 +01:00
bearz314
16fafed6a2
[fix] limiter: prevent caching of token link
...
Depending on server and client setup, this CSS link with empty content may be cached.
For example, in my setup CloudFlare automatically adds 14400s (4hours) in my test.
This prevents caching by browser and proxies so the CSS can be reliably requested.
2025-02-20 07:55:45 +01:00
Markus Heiser
44d941c93c
[fix] mojeek web engine: don't add empty fmt argument for web searches
...
Empty ``&fmt=`` argument triggers an automated tools detection from mojeek.
Suggested-by: @shinodark in https://github.com/searxng/searxng/issues/4307#issuecomment-2669355322
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-20 07:45:57 +01:00
Markus Heiser
cc9dbde2e5
[fix] autocomplete: remove broken startpage backend
...
as long we don't have a solution for #4334 we can't offer startpage as
autocomplete backend.
Related:
- https://github.com/searxng/searxng/issues/4334
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-17 11:00:18 +01:00
Duckxz
1ae37728e4
[fix] Fix improper import of corrections.html
2025-02-17 06:41:04 +01:00
searxng-bot
d37dc30783
[l10n] update translations from Weblate
...
2b26704c4 - 2025-02-12 - return42 <return42@users.noreply.translate.codeberg.org>
647377905 - 2025-02-12 - return42 <return42@users.noreply.translate.codeberg.org>
afd50738d - 2025-02-12 - alexgabi <alexgabi@users.noreply.translate.codeberg.org>
665fafbe2 - 2025-02-11 - naktinis <naktinis@users.noreply.translate.codeberg.org>
583834fec - 2025-02-10 - alexgabi <alexgabi@users.noreply.translate.codeberg.org>
0f4f34434 - 2025-02-10 - MonsoonFire <monsoonfire@users.noreply.translate.codeberg.org>
fbd59c560 - 2025-02-08 - akinu <akinu@users.noreply.translate.codeberg.org>
c3f7f27f6 - 2025-02-07 - SecularSteve <secularsteve@users.noreply.translate.codeberg.org>
cba4bc53f - 2025-02-07 - SecularSteve <secularsteve@users.noreply.translate.codeberg.org>
2025-02-15 07:16:17 +01:00
dependabot[bot]
f92bfebe21
[upd] pypi: Bump lxml from 5.3.0 to 5.3.1
...
Bumps [lxml](https://github.com/lxml/lxml ) from 5.3.0 to 5.3.1.
- [Release notes](https://github.com/lxml/lxml/releases )
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt )
- [Commits](https://github.com/lxml/lxml/compare/lxml-5.3.0...lxml-5.3.1 )
---
updated-dependencies:
- dependency-name: lxml
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-15 07:16:00 +01:00
dependabot[bot]
0eb23c490d
[upd] pypi: Bump aiounittest from 1.4.2 to 1.4.3
...
Bumps [aiounittest](https://github.com/kwarunek/aiounittest ) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/kwarunek/aiounittest/releases )
- [Commits](https://github.com/kwarunek/aiounittest/compare/1.4.2...1.4.3 )
---
updated-dependencies:
- dependency-name: aiounittest
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-15 07:15:35 +01:00
bonswouar
d456f3dd9f
[fix] engine adobe stock videos datetime parsing
...
re #4310
2025-02-12 07:05:58 +01:00
Markus Heiser
a1e2b25467
[mod] improve description of the prefernces URL in the "COOKIES" tab
...
Closes: https://github.com/searxng/searxng/issues/4272
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-09 13:32:33 +01:00
Bnyro
3a59aea742
[fix] results.py: crashes when 'parsed_url' is None
2025-02-08 17:18:43 +01:00
Bnyro
28ead13eb9
[chore] engines: replace datetime.utcfromtimestamp with datetime.fromtimestamp
2025-02-07 17:19:00 +01:00
searxng-bot
9b1f8681a1
[l10n] update translations from Weblate
...
d030e5252 - 2025-02-06 - curtwheeler <curtwheeler@users.noreply.translate.codeberg.org>
d3c6b503b - 2025-02-06 - curtwheeler <curtwheeler@users.noreply.translate.codeberg.org>
ed13a35ed - 2025-02-06 - curtwheeler <curtwheeler@users.noreply.translate.codeberg.org>
1126eef12 - 2025-02-06 - curtwheeler <curtwheeler@users.noreply.translate.codeberg.org>
ee8fd4d82 - 2025-02-06 - curtwheeler <curtwheeler@users.noreply.translate.codeberg.org>
b9507095f - 2025-02-06 - curtwheeler <curtwheeler@users.noreply.translate.codeberg.org>
5766ca07e - 2025-02-06 - curtwheeler <curtwheeler@users.noreply.translate.codeberg.org>
cadb0be4f - 2025-02-06 - ivantodorov <ivantodorov@users.noreply.translate.codeberg.org>
9e1d733b7 - 2025-02-06 - ivantodorov <ivantodorov@users.noreply.translate.codeberg.org>
bbb8c9646 - 2025-02-06 - AndersNordh <andersnordh@users.noreply.translate.codeberg.org>
463ea44dc - 2025-02-05 - artens <artens@users.noreply.translate.codeberg.org>
3549e01c0 - 2025-02-05 - return42 <return42@users.noreply.translate.codeberg.org>
58277713c - 2025-02-05 - Ricky-Tigg <ricky-tigg@users.noreply.translate.codeberg.org>
511926257 - 2025-02-03 - artens <artens@users.noreply.translate.codeberg.org>
6d49bafee - 2025-02-03 - artens <artens@users.noreply.translate.codeberg.org>
5d1dcf0b0 - 2025-02-03 - return42 <return42@users.noreply.translate.codeberg.org>
bb40eae80 - 2025-02-03 - artens <artens@users.noreply.translate.codeberg.org>
3e34b5486 - 2025-02-03 - davquar <davquar@users.noreply.translate.codeberg.org>
e67e0eaaf - 2025-02-03 - return42 <return42@users.noreply.translate.codeberg.org>
664e90b17 - 2025-02-03 - kny5 <kny5@users.noreply.translate.codeberg.org>
34ebe95c7 - 2025-02-03 - AndersNordh <andersnordh@users.noreply.translate.codeberg.org>
74e21c47a - 2025-02-03 - rodgui <rodgui@users.noreply.translate.codeberg.org>
ac770eae1 - 2025-02-03 - kny5 <kny5@users.noreply.translate.codeberg.org>
e9509ed4b - 2025-02-02 - davquar <davquar@users.noreply.translate.codeberg.org>
79824e94e - 2025-02-01 - matsob0123 <matsob0123@users.noreply.translate.codeberg.org>
4153606b0 - 2025-02-01 - Fjuro <fjuro@users.noreply.translate.codeberg.org>
9c6763231 - 2025-01-31 - Shihfu Juan <xlion@xlion.tw>
791869503 - 2025-01-31 - Shihfu Juan <xlion@xlion.tw>
00e05f5aa - 2025-01-31 - Shihfu Juan <xlion@xlion.tw>
2025-02-07 17:06:27 +01:00
dependabot[bot]
739822f705
[upd] pypi: Bump babel from 2.16.0 to 2.17.0
...
Bumps [babel](https://github.com/python-babel/babel ) from 2.16.0 to 2.17.0.
- [Release notes](https://github.com/python-babel/babel/releases )
- [Changelog](https://github.com/python-babel/babel/blob/master/CHANGES.rst )
- [Commits](https://github.com/python-babel/babel/compare/v2.16.0...v2.17.0 )
---
updated-dependencies:
- dependency-name: babel
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-02-07 17:06:09 +01:00
Markus Heiser
d45dea56c5
[fix] selenium: binary is not a Firefox executable
...
Since Ubuntu installs firefox frrom snap, we can't use any longer
``Browser('firefox')``.
[1] https://github.com/searxng/searxng/pull/3663#issuecomment-2255963036
[2] https://splinter.readthedocs.io/en/latest/drivers/firefox.html#custom-binary-path
Suggested-by: @allendema
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-07 17:05:06 +01:00
Markus Heiser
8c610404bd
[upd] upgrade: github actions / to ubuntu: 24.04 / to nvm: node 20.15
...
- ubuntu-20.04 --> ubuntu-24.04
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-07 17:05:06 +01:00
Markus Heiser
147bda894e
[fix] Internet links disappeared from wikidata side box
...
Closes: https://github.com/searxng/searxng/issues/4285
Reported and tested by: Popolon
Suggested-by: @dalf
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-02-06 14:50:30 +01:00
allixx
4ab7984edd
[fix] public domain image archive: change name to lowercase
...
Otherwise logs are flooded with warnings:
WARNING:searx.engines: Engine name is not lowercase: "Public Domain Image Archive", converting to lowercase
2025-02-03 18:38:56 +01:00
XLion
ab1e895cc0
[fix] openverse: update API and website URL ( #4275 )
2025-02-02 22:12:24 +01:00
dependabot[bot]
6324a9752a
[upd] pypi: Bump certifi from 2024.12.14 to 2025.1.31
...
Bumps [certifi](https://github.com/certifi/python-certifi ) from 2024.12.14 to 2025.1.31.
- [Commits](https://github.com/certifi/python-certifi/compare/2024.12.14...2025.01.31 )
---
updated-dependencies:
- dependency-name: certifi
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-31 08:58:22 +01:00
dependabot[bot]
d7602aa4f1
[upd] pypi: Bump sphinx-notfound-page from 1.0.4 to 1.1.0
...
Bumps [sphinx-notfound-page](https://github.com/readthedocs/sphinx-notfound-page ) from 1.0.4 to 1.1.0.
- [Changelog](https://github.com/readthedocs/sphinx-notfound-page/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/readthedocs/sphinx-notfound-page/compare/1.0.4...1.1.0 )
---
updated-dependencies:
- dependency-name: sphinx-notfound-page
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-31 08:57:55 +01:00
dependabot[bot]
157c9267ec
[upd] pypi: Bump pylint from 3.3.3 to 3.3.4
...
Bumps [pylint](https://github.com/pylint-dev/pylint ) from 3.3.3 to 3.3.4.
- [Release notes](https://github.com/pylint-dev/pylint/releases )
- [Commits](https://github.com/pylint-dev/pylint/compare/v3.3.3...v3.3.4 )
---
updated-dependencies:
- dependency-name: pylint
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-31 08:57:18 +01:00
searxng-bot
eea4d4fd1d
[l10n] update translations from Weblate
...
86a55bb1f - 2025-01-30 - Shihfu Juan <xlion@xlion.tw>
553225b31 - 2025-01-30 - kratos <kratos@users.noreply.translate.codeberg.org>
f6ad2986e - 2025-01-30 - return42 <return42@users.noreply.translate.codeberg.org>
b550ed406 - 2025-01-30 - nebras <nebras@users.noreply.translate.codeberg.org>
2852d3ada - 2025-01-29 - Outbreak2096 <outbreak2096@users.noreply.translate.codeberg.org>
98d2ed269 - 2025-01-30 - Linerly <linerly@users.noreply.translate.codeberg.org>
8b13e0d11 - 2025-01-29 - RoyBarina <roybarina@users.noreply.translate.codeberg.org>
75bcc2aaf - 2025-01-29 - ghose <ghose@users.noreply.translate.codeberg.org>
6b21bccc2 - 2025-01-29 - Priit Jõerüüt <jrtcdbrg@users.noreply.translate.codeberg.org>
5dc3d664d - 2025-01-29 - return42 <return42@users.noreply.translate.codeberg.org>
2025-01-31 08:54:00 +01:00
return42
738906358b
[data] update searx.data - update_currencies.py
2025-01-29 06:23:04 +01:00
return42
fc8938c968
[data] update searx.data - update_ahmia_blacklist.py
2025-01-29 06:07:28 +01:00
return42
3b9e06fbd2
[data] update searx.data - update_wikidata_units.py
2025-01-29 06:06:50 +01:00
return42
4934922156
[data] update searx.data - update_engine_traits.py
2025-01-29 06:05:58 +01:00
return42
bee39e4ec0
[data] update searx.data - update_engine_descriptions.py
2025-01-29 06:04:54 +01:00
Markus Heiser
3f4e0b0859
[fix] gettext can't work with f-strings (i10n)
...
``str.format`` is the pythonic way of handling strings returned by
gettext.gettext that retain interpolation tokens.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-29 06:04:09 +01:00
Markus Heiser
a235c54f8c
[mod] rudimentary implementation of a MainResult type
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-29 05:04:41 +01:00
Markus Heiser
df3344e5d5
[fix] JSON & CSV format return error 500
...
For CSV and JSON output, the LegacyResult and the Result objects needs to be
converted to a python dictionary.
Closes: https://github.com/searxng/searxng/issues/4244
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-29 05:04:41 +01:00
Markus Heiser
906b9e7d4c
[fix] hostnames plugin: AttributeError: 'NoneType' object has no attribute 'netloc'
...
Closes: https://github.com/searxng/searxng/issues/4245
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-28 16:28:12 +01:00
Markus Heiser
36a1ef1239
[refactor] typification of SearXNG / EngineResults
...
In [1] and [2] we discussed the need of a Result.results property and how we can
avoid unclear code. This patch implements a class for the reslut-lists of
engines::
searx.result_types.EngineResults
A simple example for the usage in engine development::
from searx.result_types import EngineResults
...
def response(resp) -> EngineResults:
res = EngineResults()
...
res.add( res.types.Answer(answer="lorem ipsum ..", url="https://example.org ") )
...
return res
[1] https://github.com/searxng/searxng/pull/4183#pullrequestreview-257400034
[2] https://github.com/searxng/searxng/pull/4183#issuecomment-2614301580
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-28 07:07:08 +01:00
Markus Heiser
edfbf1e118
[refactor] typification of SearXNG (initial) / result items (part 1)
...
Typification of SearXNG
=======================
This patch introduces the typing of the results. The why and how is described
in the documentation, please generate the documentation ..
$ make docs.clean docs.live
and read the following articles in the "Developer documentation":
- result types --> http://0.0.0.0:8000/dev/result_types/index.html
The result types are available from the `searx.result_types` module. The
following have been implemented so far:
- base result type: `searx.result_type.Result`
--> http://0.0.0.0:8000/dev/result_types/base_result.html
- answer results
--> http://0.0.0.0:8000/dev/result_types/answer.html
including the type for translations (inspired by #3925 ). For all other
types (which still need to be set up in subsequent PRs), template documentation
has been created for the transition period.
Doc of the fields used in Templates
===================================
The template documentation is the basis for the typing and is the first complete
documentation of the results (needed for engine development). It is the
"working paper" (the plan) with which further typifications can be implemented
in subsequent PRs.
- https://github.com/searxng/searxng/issues/357
Answer Templates
================
With the new (sub) types for `Answer`, the templates for the answers have also
been revised, `Translation` are now displayed with collapsible entries (inspired
by #3925 ).
!en-de dog
Plugins & Answerer
==================
The implementation for `Plugin` and `Answer` has been revised, see
documentation:
- Plugin: http://0.0.0.0:8000/dev/plugins/index.html
- Answerer: http://0.0.0.0:8000/dev/answerers/index.html
With `AnswerStorage` and `AnswerStorage` to manage those items (in follow up
PRs, `ArticleStorage`, `InfoStorage` and .. will be implemented)
Autocomplete
============
The autocompletion had a bug where the results from `Answer` had not been shown
in the past. To test activate autocompletion and try search terms for which we
have answerers
- statistics: type `min 1 2 3` .. in the completion list you should find an
entry like `[de] min(1, 2, 3) = 1`
- random: type `random uuid` .. in the completion list, the first item is a
random UUID
Extended Types
==============
SearXNG extends e.g. the request and response types of flask and httpx, a module
has been set up for type extensions:
- Extended Types
--> http://0.0.0.0:8000/dev/extended_types.html
Unit-Tests
==========
The unit tests have been completely revised. In the previous implementation,
the runtime (the global variables such as `searx.settings`) was not initialized
before each test, so the runtime environment with which a test ran was always
determined by the tests that ran before it. This was also the reason why we
sometimes had to observe non-deterministic errors in the tests in the past:
- https://github.com/searxng/searxng/issues/2988 is one example for the Runtime
issues, with non-deterministic behavior ..
- https://github.com/searxng/searxng/pull/3650
- https://github.com/searxng/searxng/pull/3654
- https://github.com/searxng/searxng/pull/3642#issuecomment-2226884469
- https://github.com/searxng/searxng/pull/3746#issuecomment-2300965005
Why msgspec.Struct
==================
We have already discussed typing based on e.g. `TypeDict` or `dataclass` in the past:
- https://github.com/searxng/searxng/pull/1562/files
- https://gist.github.com/dalf/972eb05e7a9bee161487132a7de244d2
- https://github.com/searxng/searxng/pull/1412/files
- https://github.com/searxng/searxng/pull/1356
In my opinion, TypeDict is unsuitable because the objects are still dictionaries
and not instances of classes / the `dataclass` are classes but ...
The `msgspec.Struct` combine the advantages of typing, runtime behaviour and
also offer the option of (fast) serializing (incl. type check) the objects.
Currently not possible but conceivable with `msgspec`: Outsourcing the engines
into separate processes, what possibilities this opens up in the future is left
to the imagination!
Internally, we have already defined that it is desirable to decouple the
development of the engines from the development of the SearXNG core / The
serialization of the `Result` objects is a prerequisite for this.
HINT: The threads listed above were the template for this PR, even though the
implementation here is based on msgspec. They should also be an inspiration for
the following PRs of typification, as the models and implementations can provide
a good direction.
Why just one commit?
====================
I tried to create several (thematically separated) commits, but gave up at some
point ... there are too many things to tackle at once / The comprehensibility of
the commits would not be improved by a thematic separation. On the contrary, we
would have to make multiple changes at the same places and the goal of a change
would be vaguely recognizable in the fog of the commits.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-28 07:07:08 +01:00
Bnyro
9079d0cac0
[refactor] translation engines: common interface
2025-01-28 07:07:08 +01:00
Denperidge
70f1b65008
[feat] engines: add NixOS Wiki
...
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-01-26 20:12:19 +01:00
Markus Heiser
06f6ee4e36
[build] /static
2025-01-26 13:34:52 +01:00
Markus Heiser
9beff8212b
[refactor] results.js: wait one second before loading full high-res image
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-26 13:34:52 +01:00
Bnyro
cf4e183790
[refactor] results.js: cancel image loading after next one selected
2025-01-26 13:34:52 +01:00
Bnyro
c1fcee9d9f
[docs] settings_search.rst: add missing autocompletion providers
2025-01-26 08:38:29 +01:00
Bnyro
176079977d
[chore] autocomplete.py: order autocompletion engines alphabetically
2025-01-25 12:12:46 +01:00
Zhijie He
f3f13519ff
[feat] autocompletion: add baidu search autocompleter ( #4227 )
2025-01-25 11:59:10 +01:00
dependabot[bot]
04a6ab12fb
[upd] npm: Bump less from 4.2.1 to 4.2.2 in /searx/static/themes/simple
...
Bumps [less](https://github.com/less/less.js ) from 4.2.1 to 4.2.2.
- [Release notes](https://github.com/less/less.js/releases )
- [Changelog](https://github.com/less/less.js/blob/master/CHANGELOG.md )
- [Commits](https://github.com/less/less.js/commits )
---
updated-dependencies:
- dependency-name: less
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-24 20:24:52 +01:00
searxng-bot
edf6d96625
[l10n] update translations from Weblate
...
8a0e2e2d6 - 2025-01-21 - return42 <return42@users.noreply.translate.codeberg.org>
b70a88fec - 2025-01-19 - rajeeban <rajeeban@users.noreply.translate.codeberg.org>
2025-01-24 09:52:04 +01:00
dependabot[bot]
fa50324dae
[upd] pypi: Bump selenium from 4.27.1 to 4.28.1
...
Bumps [selenium](https://github.com/SeleniumHQ/Selenium ) from 4.27.1 to 4.28.1.
- [Release notes](https://github.com/SeleniumHQ/Selenium/releases )
- [Commits](https://github.com/SeleniumHQ/Selenium/commits )
---
updated-dependencies:
- dependency-name: selenium
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-24 09:48:34 +01:00
Markus Heiser
bee2677929
[build] /static
2025-01-21 22:55:45 +01:00
Markus Heiser
e7081bb2c1
[update] make pygments.less
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-21 16:12:27 +01:00
dependabot[bot]
1fde000499
[upd] pypi: Bump pygments from 2.18.0 to 2.19.1
...
Bumps [pygments](https://github.com/pygments/pygments ) from 2.18.0 to 2.19.1.
- [Release notes](https://github.com/pygments/pygments/releases )
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES )
- [Commits](https://github.com/pygments/pygments/compare/2.18.0...2.19.1 )
---
updated-dependencies:
- dependency-name: pygments
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-21 16:12:27 +01:00
Bnyro
8731e37796
[build] /static
2025-01-20 18:46:31 +01:00
Bnyro
e92d1bc6af
[fix] results.js: back button not working after closing image result manually
2025-01-20 18:46:31 +01:00
Bnyro
f766faca3f
[feat] engines: add ipernity (images)
2025-01-20 17:22:32 +01:00
dependabot[bot]
c020a964e4
[upd] npm: Bump eslint in /searx/static/themes/simple
...
Bumps [eslint](https://github.com/eslint/eslint ) from 9.17.0 to 9.18.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v9.17.0...v9.18.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-20 16:53:12 +01:00
dependabot[bot]
46b16e6ff1
[upd] npm: Bump stylelint-config-standard in /searx/static/themes/simple
...
Bumps [stylelint-config-standard](https://github.com/stylelint/stylelint-config-standard ) from 36.0.1 to 37.0.0.
- [Release notes](https://github.com/stylelint/stylelint-config-standard/releases )
- [Changelog](https://github.com/stylelint/stylelint-config-standard/blob/main/CHANGELOG.md )
- [Commits](https://github.com/stylelint/stylelint-config-standard/compare/36.0.1...37.0.0 )
---
updated-dependencies:
- dependency-name: stylelint-config-standard
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-01-20 16:52:21 +01:00
Markus Heiser
98c66c0ae6
[build] /static
2025-01-20 16:41:00 +01:00
Markus Heiser
c06ec65b2a
[fix] LESS sourcemaps broken in less-plugin-clean-css v1.6.0
...
The ``less-plugin-clean-css`` lacks some maintenance: the sourcemaps are broken
since v1.6.0 (08/2024) [1]
- [1] https://github.com/less/less-plugin-clean-css/issues/42
Closes: https://github.com/searxng/searxng/issues/4143
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-20 16:41:00 +01:00
Markus Heiser
e581921c92
[fix] engine brave: remove date from the content string
...
Related: https://github.com/searxng/searxng/issues/4211#issuecomment-2601941440
Closes: https://github.com/searxng/searxng/issues/4006
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-20 16:40:36 +01:00
Markus Heiser
073d9549a0
[build] /static
2025-01-20 13:52:43 +01:00
Markus Heiser
601ffcb8a3
[mod] add swipe events to the image gallery (gesture control)
...
Adds [1] to the searxng.min.js and horizontal swipe events to the image gallery.
[1] https://www.npmjs.com/package/swiped-events
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-20 13:52:43 +01:00
Markus Heiser
d9115b8d48
[build] /static
2025-01-20 13:29:26 +01:00
Bnyro
c760ad0808
[feat] image results: dismiss image viewer on back button press on mobile devices
2025-01-20 13:29:26 +01:00
Bnyro
2f087a3a22
[feat] public domain image archive: automatically obtain algolia api key
2025-01-20 12:56:15 +01:00
Denperidge
3333d9f385
[feat] engines: public domain image archive
2025-01-20 12:56:15 +01:00
Popolon
1a885b70ce
[feat] wikidata: add mastodon, peertube and Lemmy accounts to infobox
...
Co-authored-by: Popolon <popolon@popolon.org>
Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-01-20 11:19:56 +01:00
searxng-bot
a576f69c12
[l10n] update translations from Weblate
...
09c56a561 - 2025-01-16 - tentsbet <tentsbet@users.noreply.translate.codeberg.org>
219fff972 - 2025-01-14 - hirushaadi <hirushaadi@users.noreply.translate.codeberg.org>
2b4b64e60 - 2025-01-14 - return42 <return42@users.noreply.translate.codeberg.org>
6a359da17 - 2025-01-14 - return42 <return42@users.noreply.translate.codeberg.org>
2025-01-17 08:13:57 +01:00
DanielMowitz
272e39893d
[feat]: engines: add astrophysical data system
2025-01-16 20:27:55 +01:00
Markus Heiser
41159fed32
[build] /static
2025-01-16 10:51:33 +01:00
Markus Heiser
b1507f188e
[fix] gallery view overlaps category bar
...
Closes: https://github.com/searxng/searxng/issues/4190
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-16 10:51:33 +01:00
Markus Heiser
1668ff5e64
[fix] theme simple: image viewer hides autocomplete suggestions
...
Closes: https://github.com/searxng/searxng/issues/3509
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-16 10:51:33 +01:00
Markus Heiser
f03ab00155
[fix] broken mobile view (from #4154 )
...
Related:
- https://github.com/searxng/searxng/pull/4154#issuecomment-2591881963
Closes: https://github.com/searxng/searxng/issues/4187
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-16 10:51:33 +01:00
Markus Heiser
15d0e274b3
[fix] build workflows of the themes
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-16 10:51:33 +01:00
Markus Heiser
e4f8f0483f
[mod] slightly improve make node.clean themes.all
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-14 15:22:23 +01:00
Bnyro
5a1a43ef74
[build] /static
2025-01-14 15:22:23 +01:00
Bnyro
94b6adf03d
[chore] stylelint: fix reported errors
2025-01-14 15:22:23 +01:00
Bnyro
337a6db064
[upd] stylelint: use less-compatible configuration and update rules
2025-01-14 15:22:23 +01:00
Markus Heiser
9d834c0722
[fix] issues reported by sytlelint
...
"Unexpected vendor-prefixed":
-webkit-transform & -ms-transform [3]
-webkit-animation [2]
@-webkit-keyframes [1]
[1] https://developer.mozilla.org/en-US/docs/Web/CSS/@keyframes
[2] https://developer.mozilla.org/en-US/docs/Web/CSS/animation
[3] https://developer.mozilla.org/en-US/docs/Web/CSS/transform
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-14 15:22:23 +01:00
Markus Heiser
0abad23daa
[upd] migrate .eslintrc.json to eslint.config.mjs
...
The migration was done by the following steps, firts prepare the node enviroment
an open a bash in this environment::
$ make clean nvm.nodejs
...
$ ./manage nvm.bash
$ which npx
searxng/.nvm/versions/node/v23.5.0/bin/npx
In this environment the migration command from [1] is started::
$ npx @eslint/migrate-config .eslintrc.json
Need to install the following packages:
@eslint/migrate-config@1.3.5
Migrating .eslintrc.json
Wrote new config to ./eslint.config.mjs
You will need to install the following packages to use the new config:
- globals
- @eslint/js
- @eslint/eslintrc
You can install them using the following command:
npm install globals @eslint/js @eslint/eslintrc -D
The following messages were generated during migration:
- The 'node' environment is used, so switching sourceType to 'commonjs'.
[1] https://eslint.org/docs/latest/use/configure/migration-guide#migrate-your-config-file
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-14 15:22:23 +01:00
Markus Heiser
943c8fb85b
[upd] update npm dependencies (package.json) and .tool-versions
...
To avoid issue like [1], versions from now on are pinned in::
searx/static/themes/simple/package-lock.json
To test nodejs v23 or newer is needed (will be installed by nvm). To drop a
possibly existing installation::
$ make clean
Install nodejs in nvm::
$ make nvm.nodejs
INFO: install (update) NVM at searxng/.nvm
...
Now using node v23.5.0 (npm v10.9.2)
Creating default alias: default -> v23.5 (-> v23.5.0)
INFO: Node.js is installed at searxng/.nvm/versions/node/v23.5.0/bin/node
INFO: Node.js is version v23.5.0
INFO: npm is installed at searxng/.nvm/versions/node/v23.5.0/bin/npm
INFO: npm is version 10.9.2
INFO: NVM is installed at searxng/.nvm
To test npm checks and builds:
$ make static.build.commit
Related:
[1] https://github.com/searxng/searxng/issues/4143
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-14 15:22:23 +01:00
Lucki
35c80268bf
[json_engine] Fix R0912 (too-many-branches)
2025-01-14 14:07:35 +01:00
Lucki
3942b311ac
[json_engine] Add unit test
2025-01-14 14:07:35 +01:00
Lucki
64d954b350
[json_engine] mirror xpath functionality
2025-01-14 14:07:35 +01:00
Lucki
591d9c2505
[json_engine] document existing options
2025-01-14 14:07:35 +01:00
Markus Heiser
09cce18518
[data] update searx.data - make data.all
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-13 08:02:01 +01:00
searxng-bot
94a0b415ef
[l10n] update translations from Weblate
...
8f8f92dc0 - 2025-01-10 - hirushaadi <hirushaadi@users.noreply.translate.codeberg.org>
d4ae2e4ba - 2025-01-08 - Harshith-10 <harshith-10@users.noreply.translate.codeberg.org>
05848d0bb - 2025-01-08 - return42 <return42@users.noreply.translate.codeberg.org>
151cde7fc - 2025-01-08 - return42 <return42@users.noreply.translate.codeberg.org>
43ba79c99 - 2025-01-06 - return42 <return42@users.noreply.translate.codeberg.org>
2025-01-10 08:13:22 +01:00
Markus Heiser
6dab7fe78b
Revert "[l10n ga] trigger weblate.push.translations (another try)"
...
This reverts commit e352926187774ea6c390e89e27623136e1495b49.
2025-01-06 17:12:16 +01:00
Markus Heiser
e352926187
[l10n ga] trigger weblate.push.translations (another try)
...
Related:
- https://github.com/searxng/searxng/issues/4117
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-06 16:59:20 +01:00
Markus Heiser
b0391fe718
reomve DUMMY from searxng.msg catalog
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-06 16:24:44 +01:00
Markus Heiser
91d3d38690
[l10n ga] trigger weblate.push.translations
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-06 16:16:04 +01:00
Markus Heiser
c5991865c8
[fix] l10n ga (Irish) messages.po is marked as fuzzy
...
$ ./manage pyenv.cmd pybabel compile --statistics -d searx/translations/
reports:
catalog searx/translations/ga/LC_MESSAGES/messages.po is marked as fuzzy, skipping
This commit removes the ``fuzzy`` tag and BTW reverts commit 655e41f27
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-06 15:49:21 +01:00
Markus Heiser
655e41f274
[l10n ga] trigger weblate.push.translations
...
Related:
- https://github.com/searxng/searxng/issues/4117
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-06 14:54:41 +01:00
Aindriú Mac Giolla Eoin
d9343b6388
[l10n] adding new language Irish (ga)
2025-01-06 14:54:41 +01:00
Bnyro
0642c5434a
[fix] dockerhub: switch to new api path
...
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2025-01-06 13:46:13 +01:00
Lucki
18c3e08837
Fix usage of api_key engine setting
...
The value of `params['api_key']` isn't read anywhere.
Writing directly into the header object solves this quite easily though.
> [Users can authenticate by including their API key either in a request URL by appending `?apikey=<API KEY>`, or by including the `X-API-Key: <API KEY>` header with the request.](https://wallhaven.cc/help/api )
2025-01-06 12:25:33 +01:00
Alexandre Flament
96c32549be
[fix] requirements-dev.txt: remove autodoc_pydantic
...
Related to #3727
2025-01-05 09:31:03 +01:00
searxng-bot
a060c09854
[l10n] update translations from Weblate
...
3db237112 - 2024-12-31 - kratos <kratos@users.noreply.translate.codeberg.org>
2025-01-03 08:49:25 +01:00
Markus Heiser
c1bb0bebd4
[data] update searx.data - update_engine_traits.py
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-12-29 10:12:45 +01:00
Markus Heiser
af3f272b0b
[fix] update_engine_traits.py: annas archive, bing-* and zlibrary engines
...
Github action Update data - update_engine_traits [1] had issues in annas
archive, bing-* and zlibrary engines:
./manage pyenv.cmd python ./searxng_extra/update/update_engine_traits.py
[1] https://github.com/searxng/searxng/actions/runs/12530827768/job/34953392587
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-12-29 10:12:45 +01:00
return42
05c82d3201
[data] update searx.data - update_engine_descriptions.py
2024-12-29 10:12:24 +01:00
return42
f0e9c3be8c
[data] update searx.data - update_currencies.py
2024-12-29 10:11:38 +01:00
return42
428eaea2b7
[data] update searx.data - update_wikidata_units.py
2024-12-29 10:11:09 +01:00
return42
3d55008f23
[data] update searx.data - update_ahmia_blacklist.py
2024-12-29 10:10:38 +01:00