<feed xmlns='http://www.w3.org/2005/Atom'>
<title>searxng/tests, branch custom</title>
<subtitle>Free internet metasearch engine which aggregates results from various search services and databases</subtitle>
<id>https://git.ikboikov.net/searxng/atom?h=custom</id>
<link rel='self' href='https://git.ikboikov.net/searxng/atom?h=custom'/>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/'/>
<updated>2026-07-30T12:54:39Z</updated>
<entry>
<title>[mod] engines: replace [random.choice(...) for ... in range(..)] with random.choices</title>
<updated>2026-07-30T12:54:39Z</updated>
<author>
<name>Bnyro</name>
<email>bnyro@tutanota.com</email>
</author>
<published>2026-07-29T15:11:53Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=a449518ed410407e9bebefcf45efca50a880d722'/>
<id>urn:sha1:a449518ed410407e9bebefcf45efca50a880d722</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[unbload] drop meaningless field ``number_of_results_xpath`` from results (#6130)</title>
<updated>2026-05-25T10:43:02Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarIT.de</email>
</author>
<published>2026-05-25T10:43:02Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=dd27fce3b7b5a14e4855474ead81447adbf73d7d'/>
<id>urn:sha1:dd27fce3b7b5a14e4855474ead81447adbf73d7d</id>
<content type='text'>
In the result-list, the ``number_of_results`` indicate the number of hits in the
Index, they do not indicate how many results are in the answer.

In the past, search engines such as google or ddg had an indication on the first
page of a search term of how many hits there were for this term in total in
their index.

This info was added up in SearXNG and delivered under ``number_of_results``.
Nowadays the search engines no longer indicate how many hits there are in the
index and so this field in SearXNG is also superfluous.

- https://github.com/searxng/searxng/issues/2457#issuecomment-2566181574
- https://github.com/searxng/searxng/issues/2987
- https://github.com/searxng/searxng/issues/5034

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;</content>
</entry>
<entry>
<title>[fix] clean up and update python requirements (#5899)</title>
<updated>2026-03-24T20:41:39Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarIT.de</email>
</author>
<published>2026-03-24T20:41:39Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=c52d23f262135aa672602a16e82fe940a8a843a8'/>
<id>urn:sha1:c52d23f262135aa672602a16e82fe940a8a843a8</id>
<content type='text'>
Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;</content>
</entry>
<entry>
<title>[mod] remove the "Submit a new issue on Github" form (#5896)</title>
<updated>2026-03-24T18:39:11Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2026-03-24T08:27:04Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=8d44ff51e2bb7fb40c4d7eda44393d57d72cfd88'/>
<id>urn:sha1:8d44ff51e2bb7fb40c4d7eda44393d57d72cfd88</id>
<content type='text'>
Submitting an issue on GitHub isn't a end user task .. most issue reports coming
from this form are not filled out, since end users are not familiar with the
needs of a developer community.

Closes: https://github.com/searxng/searxng/issues/5820
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] drop SearXNG's checker (#5767)</title>
<updated>2026-02-22T13:44:21Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarIT.de</email>
</author>
<published>2026-02-22T13:44:21Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=191818b865b19270c8c38d905141356a6ba01d9a'/>
<id>urn:sha1:191818b865b19270c8c38d905141356a6ba01d9a</id>
<content type='text'>
To date, there is no analysis for the checker that could be evaluated in any
meaningful way.

- https://github.com/searxng/searxng/issues/3407
- https://github.com/searxng/searxng/pull/3312

The checker would need to be completely redesigned, but even then, its
usefulness and the maintenance required for it would be disproportionate.

TBH: In its current form, it is useless and only consumes resources and
causes the engines to be blocked, because these tests (query terms) come
from *hundreds* of instances and could be interpreted as bot attacks.

Related issues: [search.checker](https://github.com/searxng/searxng/issues?q=label%3A%22search.checker%22)

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;</content>
</entry>
<entry>
<title>[fix] test_locale_optimized_territory_1_fr (test_locales.TestLocales)</title>
<updated>2026-02-06T13:42:13Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2026-02-06T13:16:07Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=b5bb27f231e5f24b3985cd7cbd3f371486c21a11'/>
<id>urn:sha1:b5bb27f231e5f24b3985cd7cbd3f371486c21a11</id>
<content type='text'>
Unit test fails::

    Traceback (most recent call last):
      File "/share/searxng/local/py3/lib/python3.10/site-packages/parameterized/parameterized.py", line 620, in standalone_func
        return func(*(a + p.args), **p.kwargs, **kw)
      File "/share/searxng/tests/unit/test_locales.py", line 121, in test_locale_optimized_territory
        self.assertEqual(locales.match_locale(locale, locale_list), expected_locale)
    AssertionError: 'fr-CH' != 'fr-BE'
    - fr-CH
    + fr-BE

With the `babel` update from 2.17.0 to 2.18.0 the population DB has been
updated (the test was implemented for the old values).

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>[mod] client/simple: client plugins (#5406)</title>
<updated>2025-12-02T10:18:00Z</updated>
<author>
<name>Ivan Gabaldon</name>
<email>igabaldon@inetol.net</email>
</author>
<published>2025-12-02T10:18:00Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=fb089ae297b27f51777318e3a28bca8b172a4165'/>
<id>urn:sha1:fb089ae297b27f51777318e3a28bca8b172a4165</id>
<content type='text'>
* [mod] client/simple: client plugins

Defines a new interface for client side *"plugins"* that coexist with server
side plugin system. Each plugin (e.g., `InfiniteScroll`) extends the base
`ts Plugin`. Client side plugins are independent and lazy‑loaded via `router.ts`
when their `load()` conditions are met. On each navigation request, all
applicable plugins are instanced.

Since these are client side plugins, we can only invoke them once DOM is fully
loaded. E.g. `Calculator` will not render a new `answer` block until fully
loaded and executed.

For some plugins, we might want to handle its availability in `settings.yml`
and toggle in UI, like we do for server side plugins. In that case, we extend
`py Plugin` instancing only the information and then checking client side if
[`settings.plugins`](https://github.com/inetol/searxng/blob/1ad832b1dc33f3f388da361ff2459b05dc86a164/client/simple/src/js/toolkit.ts#L134)
array has the plugin id.

* [mod] client/simple: rebuild static</content>
</entry>
<entry>
<title>[mod] replace js_variable_to_python by js_obj_str_to_python (#2792) (#5477)</title>
<updated>2025-11-25T11:51:08Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarIT.de</email>
</author>
<published>2025-11-25T11:51:08Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=54a97e10431c1cdae910d3b37074a63eda7100fc'/>
<id>urn:sha1:54a97e10431c1cdae910d3b37074a63eda7100fc</id>
<content type='text'>
This patch is based on PR #2792 (old PR from 2023)

- js_obj_str_to_python handle more cases
- bring tests from chompjs ..
- comment out tests do not pass

The tests from chompjs give some overview of what is not implemented.

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;</content>
</entry>
<entry>
<title>[fix] engines initialization - if engine load fails, set to inactive</title>
<updated>2025-11-25T05:25:45Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2025-11-23T11:30:14Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=989b49335c54b23f274f0b969893a43de5b6c31c'/>
<id>urn:sha1:989b49335c54b23f274f0b969893a43de5b6c31c</id>
<content type='text'>
- if engine load fails, set the engine to inactive
- dont' load a engine, when the config says its inactive

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
</feed>
