<feed xmlns='http://www.w3.org/2005/Atom'>
<title>searxng/searx/webadapter.py, branch master</title>
<subtitle>Free internet metasearch engine which aggregates results from various search services and databases</subtitle>
<id>https://git.ikboikov.net/searxng/atom?h=master</id>
<link rel='self' href='https://git.ikboikov.net/searxng/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/'/>
<updated>2026-05-30T14:43:50Z</updated>
<entry>
<title>[mod] typification of the preference settings</title>
<updated>2026-05-30T14:43:50Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2026-05-30T12:43:50Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=4ac822fd7fbb5bd35b3e0d8695e4942fbc4d202a'/>
<id>urn:sha1:4ac822fd7fbb5bd35b3e0d8695e4942fbc4d202a</id>
<content type='text'>
no functional change / except the missing online doc which is now available::

    $ make docs.live
    $ xdg-open "http://127.0.0.1:8000/admin/settings/settings_preferences.html"

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>[mod] drop fasttext-predict (#5795)</title>
<updated>2026-03-06T14:40:44Z</updated>
<author>
<name>Brock Vojkovic</name>
<email>git@vojk.au</email>
</author>
<published>2026-03-06T14:40:44Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=68ff08f2244c6fa9e95255eb6733c157be2f46a7'/>
<id>urn:sha1:68ff08f2244c6fa9e95255eb6733c157be2f46a7</id>
<content type='text'>
Removes the `fasttext-predict` dependency and the language detection code.

If a user now selects `auto` for the search language, the detected language now
falls back directly to the `Accept-Language` header sent by the browser (which was already the fallback when fasttext returned no result).

- fasttext's [language detection is unreliable](https://github.com/searxng/searxng/issues/4195) for some languages, especially short search queries, and in particular for queries containing proper names which is a common case.
- `fasttext-predict` consumes [significant memory](https://github.com/searxng/searxng/pull/1969#issuecomment-1345366676) without offering users much real value.
- the upstream fasttext project was archived by Meta in 2024
- users already have two better alternatives: the `Accept-Language` header and the search-syntax language prefix (e.g. `:fr` or `:de`).

Related: https://github.com/searxng/searxng/issues/4195
Closes: https://github.com/searxng/searxng/issues/5790</content>
</entry>
<entry>
<title>[mod] addition of various type hints / tbc</title>
<updated>2025-09-03T11:37:36Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2025-08-22T15:17:51Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=57b9673efb1b4fd18a3ac15e26da642201e2cd33'/>
<id>urn:sha1:57b9673efb1b4fd18a3ac15e26da642201e2cd33</id>
<content type='text'>
- pyright configuration [1]_
- stub files: types-lxml [2]_
- addition of various type hints
- enable use of new type system features on older Python versions [3]_
- ``.tool-versions`` - set python to lowest version we support (3.10.18) [4]_:
  Older versions typically lack some typing features found in newer Python
  versions.  Therefore, for local type checking (before commit), it is necessary
  to use the older Python interpreter.

.. [1] https://docs.basedpyright.com/v1.20.0/configuration/config-files/
.. [2] https://pypi.org/project/types-lxml/
.. [3] https://typing-extensions.readthedocs.io/en/latest/#
.. [4] https://mise.jdx.dev/configuration.html#tool-versions

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
Format: reST
</content>
</entry>
<entry>
<title>[chore] *: fix typos detected by typos-cli</title>
<updated>2024-11-24T11:41:57Z</updated>
<author>
<name>Bnyro</name>
<email>bnyro@tutanota.com</email>
</author>
<published>2024-10-09T09:59:31Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=f31a3a2053b07b834c5143bd6be4eaf05c1a014d'/>
<id>urn:sha1:f31a3a2053b07b834c5143bd6be4eaf05c1a014d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTION</title>
<updated>2024-03-11T13:55:38Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2024-03-11T13:06:26Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=542f7d0d7bd1a12e1884ba4a1508b40e2514d472'/>
<id>urn:sha1:542f7d0d7bd1a12e1884ba4a1508b40e2514d472</id>
<content type='text'>
In the past, some files were tested with the standard profile, others with a
profile in which most of the messages were switched off ... some files were not
checked at all.

- ``PYLINT_SEARXNG_DISABLE_OPTION`` has been abolished
- the distinction ``# lint: pylint`` is no longer necessary
- the pylint tasks have been reduced from three to two

  1. ./searx/engines -&gt; lint engines with additional builtins
  2. ./searx ./searxng_extra ./tests -&gt; lint all other python files

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>Revert "[fix] limit maximum page number of a search query to page 50." (#2979)</title>
<updated>2023-11-01T16:55:20Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarIT.de</email>
</author>
<published>2023-11-01T16:55:20Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=b5a8ddfec8622fcd7ca008bf4024223038382af5'/>
<id>urn:sha1:b5a8ddfec8622fcd7ca008bf4024223038382af5</id>
<content type='text'>
This reverts commit 7e2e335dd1e06ea20496028abe58b3ad8b255662.</content>
</entry>
<entry>
<title>[fix] limit maximum page number of a search query to page 50.</title>
<updated>2023-10-29T15:17:25Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2023-10-29T10:20:41Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=7e2e335dd1e06ea20496028abe58b3ad8b255662'/>
<id>urn:sha1:7e2e335dd1e06ea20496028abe58b3ad8b255662</id>
<content type='text'>
To test this PR run a local instance and try to query page 51:

    http://127.0.0.1:8888/search?q=foo&amp;pageno=51

A parameter exception will be raised:

    searx.exceptions.SearxParameterException: Invalid value "51" for parameter pageno

And the client will receive a HTTP 400 (Bad request).

Closes https://github.com/searxng/searxng/issues/2972

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>[feat] implement feeling lucky feature</title>
<updated>2023-09-19T07:40:57Z</updated>
<author>
<name>Bnyro</name>
<email>bnyro@tutanota.com</email>
</author>
<published>2023-09-10T16:44:16Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=dcee82334548ad8849391b5c29cdcd868b65daad'/>
<id>urn:sha1:dcee82334548ad8849391b5c29cdcd868b65daad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[mod] move language recognition to get_search_query_from_webapp</title>
<updated>2023-04-15T20:23:33Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2023-01-31T11:40:23Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=d5ecda99303f1555dc34d824f9dca662bbdda24e'/>
<id>urn:sha1:d5ecda99303f1555dc34d824f9dca662bbdda24e</id>
<content type='text'>
To set the language from language recognition and hold the value selected by the
client, the previous implementation creates a copy of the SearchQuery object and
manipulates the SearchQuery object by calling function replace_auto_language().

This patch tries to implement a similar functionality in a more central place,
in function get_search_query_from_webapp() when the SearchQuery object is build
up.

Additional this patch uses the language preferred by the client, if language
recognition does not have a match / the existing implementation does not care
about client preferences and uses 'all' in case of no match.

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>Add "Auto-detected" as a language.</title>
<updated>2023-02-17T15:17:36Z</updated>
<author>
<name>Alexandre Flament</name>
<email>alex@al-f.net</email>
</author>
<published>2022-12-16T20:28:57Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=6748e8e2d5eff3c2202b2a714afb5534b1573101'/>
<id>urn:sha1:6748e8e2d5eff3c2202b2a714afb5534b1573101</id>
<content type='text'>
When the user choose "Auto-detected", the choice remains on the following queries.
The detected language is displayed.

For example "Auto-detected (en)":
* the next query language is going to be auto detected
* for the current query, the detected language is English.

This replace the autodetect_search_language plugin.
</content>
</entry>
</feed>
