Markus Heiser
10d3af84b8
[fix] engine: duckduckgo - don't quote query string
...
The query string send to DDG must not be qouted.
The query string was URL-qouted in #4011 , but the URL-qouted query string result
in unexpected *URL decoded* and other garbish results as reported in #4019
and #4020 . To test compare the results of a query like::
!ddg Häuser und Straßen :de
!ddg Häuser und Straßen :all
!ddg 房屋和街道 :all
!ddg 房屋和街道 :zh
Closed:
- [#4019 ] https://github.com/searxng/searxng/issues/4019
- [#4020 ] https://github.com/searxng/searxng/issues/4020
Related:
- [#4011 ] https://github.com/searxng/searxng/pull/4011
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-17 18:14:22 +01:00
searxng-bot
a345cbbe51
[l10n] update translations from Weblate
...
0216898a3
- 2024-11-14 - KhietVo <KhietVo@users.noreply.translate.codeberg.org>
3293db4c8
- 2024-11-14 - return42 <return42@users.noreply.translate.codeberg.org>
574e0d683
- 2024-11-13 - lrnz2 <lrnz2@users.noreply.translate.codeberg.org>
a32d9d158
- 2024-11-08 - Aadniz <Aadniz@users.noreply.translate.codeberg.org>
2024-11-15 13:20:52 +01:00
Nicolas Dato
abd9b271bc
[fix] engine: duckduckgo - only uses first word of the search terms
...
during the revision in PR #3955 the query string was accidentally converted into
a list of words, further the query must be quoted before POSTed in the ``data``
field, see ``urllib.parse.quote_plus`` [1]
[1] https://docs.python.org/3/library/urllib.parse.html#urllib.parse.quote_plus
Closed : #4009
Co-Authored-by: @return42
2024-11-14 09:33:54 +01:00
Leo Liu
dfaf5868e2
[fix] settings.yml - enabled_plugins: document to reflect default settings
...
Remove 'Autodetect search language', which is no longer valid, from settings,
and add 'Unit converter plugin', which is now default enabled, to settings.
2024-11-10 16:09:41 +01:00
Leo Liu
b173f3a8b9
Fix scheduler.lua
2024-11-10 15:53:58 +01:00
searxng-bot
08c5f258d8
[l10n] update translations from Weblate
...
8d90a7e6d
- 2024-11-06 - sahussawud <sahussawud@users.noreply.translate.codeberg.org>
41ee8bb0d
- 2024-11-02 - laaknor <laaknor@users.noreply.translate.codeberg.org>
c1a30afab
- 2024-11-02 - return42 <return42@users.noreply.translate.codeberg.org>
627ab7a8e
- 2024-11-01 - zarlin <zarlin@users.noreply.translate.codeberg.org>
2024-11-08 08:45:07 +01:00
Bnyro
b07c0ae39f
[fix] annas archive: crash when no thumbnail, differing results, paging
2024-11-01 12:49:33 +01:00
searxng-bot
cc148a76b0
[l10n] update translations from Weblate
...
a4cdaaa26
- 2024-10-30 - Juno Takano <jutty@users.noreply.translate.codeberg.org>
46bad3a79
- 2024-10-29 - saltsnorter <saltsnorter@users.noreply.translate.codeberg.org>
6a4096da9
- 2024-10-27 - Eryk Michalak <gnu.ewm@protonmail.com>
64815d956
- 2024-10-28 - ljansen <ljansen@users.noreply.translate.codeberg.org>
851ae554d
- 2024-10-26 - return42 <return42@users.noreply.translate.codeberg.org>
24f16d5e3
- 2024-10-26 - return42 <return42@users.noreply.translate.codeberg.org>
8278d1cb9
- 2024-10-26 - Atul_Eterno <Atul_Eterno@users.noreply.translate.codeberg.org>
2024-11-01 08:30:38 +01:00
uply23333
fa108c140f
[fix] google: display every result when keyword is contained in content field
2024-10-31 13:21:32 +01:00
Markus Heiser
fa4dfd4efe
[fix] favicons: msgspec.ValidationError: Expected Path
, got str
- at $.favicons.cache.db_url
...
Closes: https://github.com/searxng/searxng/issues/3975
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-29 18:22:22 +01:00
Markus Heiser
b183e620d8
[refactor] engine: duckduckgo - https://html.duckduckgo.com/html
...
The entire source code of the duckduckgo engine has been reengineered and
purified.
1. DDG used the URL https://html.duckduckgo.com/html for no-JS requests whose
response is also easier to parse than the previous
https://lite.duckduckgo.com/lite/ URL
2. the bot detection of DDG has so far caused problems and often led to a
CAPTCHA, this can be circumvented using `'Sec-Fetch-Mode'] = “navigate”`
Closes: https://github.com/searxng/searxng/issues/3927
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-29 14:56:27 +01:00
Markus Heiser
3e5621e1af
[refactor] replace pydantic by msgspec
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-29 13:50:38 +01:00
return42
e392892578
[data] update searx.data - update_firefox_version.py
2024-10-29 09:30:40 +01:00
return42
68ed8245da
[data] update searx.data - update_ahmia_blacklist.py
2024-10-29 09:29:58 +01:00
return42
2d748d1d74
[data] update searx.data - update_currencies.py
2024-10-29 09:29:18 +01:00
return42
2985ece0ca
[data] update searx.data - update_wikidata_units.py
2024-10-29 09:28:58 +01:00
return42
adc38c5800
[data] update searx.data - update_engine_traits.py
2024-10-29 09:28:28 +01:00
return42
a084436ff4
[data] update searx.data - update_engine_descriptions.py
2024-10-29 09:17:30 +01:00
Markus Heiser
b176323e89
[fix] calculator: use locale from UI (not from selected language)
...
Closes: https://github.com/searxng/searxng/issues/3956
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-28 15:53:57 +01:00
Markus Heiser
da28f5280b
[fix] limiter: don't hard code settings folder to /etc/searxng
...
The location of the local settings depends on environment ``SEARXNG_SETTINGS_PATH``
and can be different from ``/etc/searxng``. Issue was reported on Matrix [1].
To get the location function ``searx.settings_loader.get_user_cfg_folder()``
should be used.
[1] https://matrix.to/#/!vxScbLNEAmRvOraXBn:matrix.org/$_eLS0JpE9oVEWsiGJkqJnWcFWEeZClIMGDK6cWv_Q4g?via=matrix.org&via=tchncs.de&via=envs.net
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-28 12:51:05 +01:00
Markus Heiser
e08ff05fff
[fix] add missing tomli to the requirements.txt
...
Package ``tomli`` is needed for py < 3.11, BTW remove the no longer needed
pytomlpp package.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-26 15:59:42 +02:00
Markus Heiser
ae496e9dd0
[build] /static
2024-10-26 08:34:21 +02:00
JJ
9b01e3c9d6
[mod] shrink new favicons in search results
2024-10-26 08:34:21 +02:00
searxng-bot
446ee2dd25
[l10n] update translations from Weblate
...
21c063bf1
- 2024-10-20 - Priit Jõerüüt <jrtcdbrg@users.noreply.translate.codeberg.org>
2024-10-26 07:29:54 +02:00
Markus Heiser
b14d885f23
[fix] favicons: don't hard code settings folder to /etc/searxng
...
The location of the local settings depends on environment ``SEARXNG_SETTINGS_PATH``
and can be different from ``/etc/searxng``. Issue was reported on Matrix [1].
To get the location function ``searx.settings_loader.get_user_cfg_folder()``
should be used.
[1] https://matrix.to/#/!vxScbLNEAmRvOraXBn:matrix.org/$5xNMYvONGB-mPt2B3ttoL27QncRFhkjGkO-TISdmP08?via=matrix.org&via=tchncs.de&via=envs.net
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-23 05:29:15 +02:00
Markus Heiser
050451347b
[fix] engine: duckduckgo - CAPTCHA detection
...
The previous implementation could not distinguish a CAPTCHA response from an
ordinary result list. In the previous implementation a CAPTCHA was taken as a
result list where no items are in.
DDG does not block IPs. Instead, a CAPTCHA wall is placed in front of request
on a dubious request.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-19 14:55:44 +02:00
searxng-bot
eeae3664c2
[l10n] update translations from Weblate
...
17f8bce27
- 2024-10-17 - hemie143 <hemie143@users.noreply.translate.codeberg.org>
fbeb82816
- 2024-10-15 - return42 <return42@users.noreply.translate.codeberg.org>
eacea331b
- 2024-10-15 - return42 <return42@users.noreply.translate.codeberg.org>
36156687e
- 2024-10-15 - return42 <return42@users.noreply.translate.codeberg.org>
61cb3375d
- 2024-10-15 - return42 <return42@users.noreply.translate.codeberg.org>
2b3c92d37
- 2024-10-13 - Pedro_Tresp <Pedro_Tresp@users.noreply.translate.codeberg.org>
d4febbf8a
- 2024-10-12 - stoychevww <stoychevww@users.noreply.translate.codeberg.org>
2024-10-19 11:01:32 +02:00
mrpaulblack
cf7627557a
[build] /static
2024-10-16 19:46:36 +02:00
mrpaulblack
2cacc560d6
[fix] simple theme: unset width for images on mobile layout
...
* fix fallout from 2fbedc4316
-> similar to 14fb187548
* change: set image height to 10rem
-> this is in my opinion more sensible size for mobile
2024-10-16 19:46:36 +02:00
Markus Heiser
058a072404
[build] /static
2024-10-15 15:54:58 +02:00
Markus Heiser
14fb187548
[fix] stretching pics in "pic search"
...
Issue is described in:
- https://github.com/searxng/searxng/issues/3915
The issue was caused bei merge of PR:
- https://github.com/searxng/searxng/pull/3895
Solution:
- Unset `width` for objects of class `.result-images`.
Tested by `make run` and query a list of results, containing `.result` and
`.result-images` objects:
!images !go bäder :de
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Closes: https://github.com/searxng/searxng/issues/3915
2024-10-15 15:54:58 +02:00
Markus Heiser
c96ba25f5b
[fix] online_currency.py: if more alternatives, use the last in the list
...
If there are more than one ISO 4217 numeric codes [1] for a currency use the
last one in the list of alternatives [2].
[1] https://en.wikipedia.org/wiki/ISO_4217#Active_codes_(list_one)
[2] https://en.wikipedia.org/wiki/ISO_4217#Historical_codes
Closes: https://github.com/searxng/searxng/issues/3713
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-15 15:20:39 +02:00
dependabot[bot]
2986681b31
[upd] pypi: Bump pylint from 3.2.7 to 3.3.1
...
Bumps [pylint](https://github.com/pylint-dev/pylint ) from 3.2.7 to 3.3.1.
- [Release notes](https://github.com/pylint-dev/pylint/releases )
- [Commits](https://github.com/pylint-dev/pylint/compare/v3.2.7...v3.3.1 )
---
updated-dependencies:
- dependency-name: pylint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-10-15 14:29:10 +02:00
Bnyro
9f48d5f84f
[feat] engine: support for openlibrary
2024-10-15 13:06:00 +02:00
Grant Lanham
3e87354f0e
[fix] float operations in calculator plugin
...
This patch adds an additional *isinstance* check within the ast parser to check
for float along with int, fixing the underlying issue.
Co-Authored: Markus Heiser <markus.heiser@darmarit.de>
2024-10-15 08:10:52 +02:00
Markus Heiser
e275f8e18e
[data] update searx.data - update_engine_traits.py
...
Patches generated by::
make data.traits
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-15 06:37:01 +02:00
0xhtml
8b6a3f3e11
[enh] engine: mojeek - add language support
...
Improve region and language detection / all locale
Testing has shown the following behaviour for the different
default and empty values of Mojeeks parameters:
| param | idx | value | behaviour |
| -------- | --- | ------ | ------------------------- |
| region | 0 | '' | detect region based on IP |
| region | 1 | 'none' | all regions |
| language | 0 | '' | all languages |
2024-10-15 06:37:01 +02:00
Snoweuph
5b6f40414a
[mod] engine gitea: compatible with modern gitea or forgejo
...
Without this patch the Gitea Search Engine is only partially compatible with
modern gitea or forgejo:
- Fixing some JSON Fields
- Using Repository Avatar when Available
To Verify My results you can look at the Modern API doc and results, its
available on all Gitea and Forgejo instance by Default. Heres an Search API
result of Mine:
- https://git.euph.dev/api/v1/repos/search?q=ccna
2024-10-14 14:39:11 +02:00
Markus Heiser
7e8b330b3e
[build] /static
2024-10-12 11:08:44 +02:00
Markus Heiser
2fbedc4316
[fix] simple theme: fix deformed result item
...
Setting ``box-sizing: border-box;`` [1] and ``width`` to fix deformed results
reported in [2].
[1] https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing
[2] https://github.com/searxng/searxng/issues/3892
Closes : #3892
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-12 11:08:44 +02:00
searxng-bot
5a32ee410b
[l10n] update translations from Weblate
...
83a8d6627
- 2024-10-10 - Outbreak2096 <Outbreak2096@users.noreply.translate.codeberg.org>
c4474a60b
- 2024-10-10 - return42 <return42@users.noreply.translate.codeberg.org>
a632dff03
- 2024-10-09 - bobolau <bobolau@users.noreply.translate.codeberg.org>
e8944e486
- 2024-10-08 - elek <elek@users.noreply.translate.codeberg.org>
2bd9c1229
- 2024-10-07 - AndersNordh <AndersNordh@users.noreply.translate.codeberg.org>
5cb441b60
- 2024-10-07 - return42 <return42@users.noreply.translate.codeberg.org>
aba724c87
- 2024-10-07 - return42 <return42@users.noreply.translate.codeberg.org>
92bea9f03
- 2024-10-08 - Linerly <Linerly@users.noreply.translate.codeberg.org>
f574a3a3f
- 2024-10-08 - ghose <ghose@users.noreply.translate.codeberg.org>
4845ea7e2
- 2024-10-08 - Ricky-Tigg <Ricky-Tigg@users.noreply.translate.codeberg.org>
7d0b4d0d9
- 2024-10-07 - AndersNordh <AndersNordh@users.noreply.translate.codeberg.org>
6431436b2
- 2024-10-07 - AndersNordh <AndersNordh@users.noreply.translate.codeberg.org>
30e671f30
- 2024-10-07 - Fabio_Perri <Fabio_Perri@users.noreply.translate.codeberg.org>
6629d15cb
- 2024-10-07 - AndersNordh <AndersNordh@users.noreply.translate.codeberg.org>
a3b4d53cc
- 2024-10-05 - 0ko <0ko@users.noreply.translate.codeberg.org>
1763b224e
- 2024-10-05 - Atul_Eterno <Atul_Eterno@users.noreply.translate.codeberg.org>
0ea2b49a8
- 2024-10-06 - return42 <return42@users.noreply.translate.codeberg.org>
837324445
- 2024-10-05 - Fjuro <fjuro@alius.cz>
eec53d3b1
- 2024-10-05 - SomeTr <SomeTr@users.noreply.translate.codeberg.org>
4cd76e531
- 2024-10-05 - Priit Jõerüüt <jrtcdbrg@users.noreply.translate.codeberg.org>
2024-10-11 18:33:17 +02:00
Markus Heiser
f00fa76eda
[build] /static
2024-10-05 08:18:28 +02:00
Markus Heiser
a631f77401
[mod] favicons: simplify RTL in template & CSS
...
Comes from a sughgestion in:
- https://github.com/searxng/searxng/pull/3727#issuecomment-2388998803
Suggested-by: Bnyro <bnyro@tutanota.com>
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-05 08:18:28 +02:00
Markus Heiser
a7d02d4101
[doc] documentation of the favicons infrastructure
...
Run ``make docs.live`` and visit http://0.0.0.0:8000/admin/searx.favicons.html
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-05 08:18:28 +02:00
Markus Heiser
5ded9ada82
[mod] UI: add favicon's border- and background color to the definitons
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-05 08:18:28 +02:00
Markus Heiser
7ab577a1fb
[mod] Revision of the favicon solution
...
All favicons implementations have been documented and moved to the Python
package:
searx.favicons
There is a configuration (based on Pydantic) for the favicons and all its
components:
searx.favicons.config
A solution for caching favicons has been implemented:
searx.favicon.cache
If the favicon is already in the cache, the returned URL is a data URL [1]
(something like `data:image/png;base64,...`). By generating a data url from
the FaviconCache, additional HTTP roundtripps via the favicon_proxy are saved:
favicons.proxy.favicon_url
The favicon proxy service now sets a HTTP header "Cache-Control: max-age=...":
favicons.proxy.favicon_proxy
The resolvers now also provide the mime type (data, mime):
searx.favicon.resolvers
[1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-05 08:18:28 +02:00
Markus Heiser
c49a2707c1
[mod] sqlitedb: access to SQLite databases a little more convenient.
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-05 08:18:28 +02:00
Brock Vojkovic
e17d7632d0
[feat] add favicons to result urls
2024-10-05 08:18:28 +02:00
searxng-bot
3e747d0491
[l10n] update translations from Weblate
...
b59b0d937
- 2024-10-04 - ghose <ghose@users.noreply.translate.codeberg.org>
770781548
- 2024-10-04 - return42 <return42@users.noreply.translate.codeberg.org>
0d5f72f8c
- 2024-10-04 - return42 <return42@users.noreply.translate.codeberg.org>
b14fd01b1
- 2024-10-04 - return42 <return42@users.noreply.translate.codeberg.org>
e457a6b1c
- 2024-10-03 - SomeTr <SomeTr@users.noreply.translate.codeberg.org>
328b93af4
- 2024-10-03 - Fjuro <fjuro@alius.cz>
2024-10-04 09:18:26 +02:00
Grant Lanham
44a06190bb
[refactor] unit tests to utilize paramaterized and break down monolithic tests
...
- for tests which perform the same arrange/act/assert pattern but with different
data, the data portion has been moved to the ``paramaterized.expand`` fields
- for monolithic tests which performed multiple arrange/act/asserts,
they have been broken up into different unit tests.
- when possible, change generic assert statements to more concise
asserts (i.e. ``assertIsNone``)
This work ultimately is focused on creating smaller and more concise tests.
While paramaterized may make adding new configurations for existing tests
easier, that is just a beneficial side effect. The main benefit is that smaller
tests are easier to reason about, meaning they are easier to debug when they
start failing. This improves the developer experience in debugging what went
wrong when refactoring the project.
Total number of tests went from 192 -> 259; or, broke apart larger tests into 69
more concise ones.
2024-10-03 13:20:32 +02:00