Commit Graph

793 Commits (4d1d3f4984af66feecd5a3de8801123307aa3f7e)

Author SHA1 Message Date
Ben Busby 4d1d3f4984
Add public instance [skip ci]
https://search.snine.nl

Closes #1115
2024-03-06 10:58:32 -07:00
Ben Busby c389c26220
Add favicon.ico endpoint
Closes #1121
2024-03-06 10:37:48 -07:00
Ben Busby ef54f00212
Only show redirects on error page if query is available
The redirects portion of the error page is only needed in scenarios
where the instance is rate limited, in which case the user's query is
provided to the error template. If this isn't provided, it should just
display the error and allow the user to redirect to the home page.

Fixes #1122
2024-03-06 10:14:52 -07:00
dependabot[bot] af60509a8d
Bump cryptography to 42.0.4, pyopenssl to 24.0.0 (#1123)
* Bump cryptography to 42.0.4

* Bump pyopenssl to 24.0.0

* Squashed commit of the following:

commit 2395bb7a6a
Author: Ben Busby <contact@benbusby.com>
Date:   Wed Mar 6 09:35:48 2024 -0700

    Remove version from DDG bangs url

    Including the version portion of the URL now redirects to search results
    for the name of the bang file, rather than returning the bang file
    itself. Removing the version from the URL returns the correct bang file.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ben Busby <contact@benbusby.com>
2024-03-06 09:51:16 -07:00
Ben Busby 2395bb7a6a
Remove version from DDG bangs url
Including the version portion of the URL now redirects to search results
for the name of the bang file, rather than returning the bang file
itself. Removing the version from the URL returns the correct bang file.
2024-03-06 09:35:48 -07:00
dependabot[bot] c216c033ef
Bump jinja2 from 3.1.2 to 3.1.3 (#1111)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.2 to 3.1.3.
- [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.2...3.1.3)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-05 09:55:19 -07:00
Ben Busby aaf90b52bb
Add public instance [skip ci]
Closes #1105
2024-01-08 10:46:42 -07:00
Ben Busby 7313edff46
Include more options for continuing search in error tmpl
The error template previously only included the option to continue a
user's search via Farside (whoogle or searxng), and would only appear
when an instance was ratelimited. This has been updated to display
anytime an exception has occurred, and now includes other options for
continuing a search, such as Kagi, DDG, Brave, Ecosia, etc.

Closes #1099
2023-12-20 12:14:34 -07:00
Ben Busby cdbe550737
Add env vars for hiding favicons and removing daily update check
- WHOOGLE_SHOW_FAVICONS: Default on, can be set to 0 to hide favicons
  and skip the request for fetching them
- WHOOGLE_UPDATE_CHECK: Default on, can be set to 0 to disable the
  daily check for new versions released on github

Closes #1098
Closes #1059
2023-12-20 11:28:00 -07:00
Vivek 70dc750c7a
Add arg for configuring unix socket perms (#1103)
The default unix socket permissions of 600 is too restrictive for many use
cases.

Added a new argument --unix-socket-perms which is passed to waitress to allow
for user configurable socket permissions
2023-12-20 11:05:38 -07:00
Ben Busby b5ae07613b
Use url params for testing time based result filtering
The ":past <duration>" query string filtering isn't used anymore since
adding the option to filter by time in the result view.
2023-12-20 11:00:10 -07:00
Ben Busby 166b28040a
Remove outdated instance [skip ci]
Closes #1102
2023-12-05 15:23:59 -07:00
dependabot[bot] 57398a9b3b
Bump cryptography from 3.3.2 to 41.0.6 (#1101)
Bumps [cryptography](https://github.com/pyca/cryptography) from 3.3.2 to 41.0.6.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/3.3.2...41.0.6)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-05 15:22:52 -07:00
Ben Busby b97f3dd4c0
Bump version to 0.8.4 2023-11-01 14:45:42 -06:00
Ben Busby 9f68c843d6
Specify links that should trigger div removal from results
There are certain links (such as the age verification link mentioned in
issue #1083) that should trigger removal of the entire container div on
the results page, rather than just hiding the link itself.

This introduces a new `unsupported_g_divs` list that holds links that
will trigger a removal of the result div on the result page.

Fixes #1083
2023-11-01 14:30:23 -06:00
dependabot[bot] 2a0b9a47b2
Bump werkzeug from 2.3.3 to 3.0.1 (#1093)
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.3.3 to 3.0.1.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.3.3...3.0.1)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 14:08:49 -06:00
dependabot[bot] 1644a4a04e
Bump urllib3 from 1.26.17 to 1.26.18 (#1085)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 14:08:29 -06:00
Zhiyong Dou 6a10efbd9e
fix: add missing dependency `validators` to setup.cfg (#1087) 2023-11-01 14:08:08 -06:00
Gautam Korlam 9cc1004fb8
fix: correctly handle skip_prefix logic for site_alts (#1092)
Fixes #1091
2023-11-01 14:07:45 -06:00
Ben Busby cdf0b50284
Update search tests to only perform GET requests
Since POST requests are now redirected to GET requests (with an
encrypted query string), POST searches are no longer the correct
approach to use for testing purposes.
2023-10-16 16:46:15 -06:00
Ben Busby 2950aa869b
Redirect POST search -> enc GET request
This should fix the annoyance with browsers like Firefox not caching
POST request responses. By redirecting a POST search to be a GET request
instead (with an encrypted query string), the page can be cached and
successfully navigated back to after visiting a result.
2023-10-16 16:28:36 -06:00
Ben Busby 7bda165ca3
Fetch fallback site icons from DDG
DDG provides favicons using the url format
icons.duckduckgo.com/ip2/{site}.ico

This can be used to fetch favicons in the event that the default
"/favicon.ico" path does not work.
2023-10-11 17:26:12 -06:00
Ben Busby 81b7fd1876
Encrypt site icon requests
Paths to favicons are now encrypted with the user's Fernet key, the same
as any other external result page element
2023-10-11 17:18:25 -06:00
Ben Busby a7e937f7c6
Skip scrollers when applying site icons to results
Scroller results (like the "latest from ___" or "top stories" results)
shouldn't have a site icon associated with them. This extracts the class
that those types of results have and skips over the process of inserting
an icon.
2023-10-11 15:58:52 -06:00
Ben Busby c2873190c9
Display audio controls, refactor site icon placement
Audio controls are now always shown by default (mostly found in searches
that contain word pronunciation guides).

Site icons were moved to the left side of the results.
2023-10-11 15:41:48 -06:00
Ben Busby f7513bab69
Echo address:port in run script 2023-10-11 14:12:40 -06:00
Ben Busby 330ae964f3
Only sanitize result content on main result page
The other result tabs (images/maps/videos/news) don't have text content
that needs sanitizing.

Fixes #1080
2023-10-11 11:09:09 -06:00
Ben Busby 67b6110087
Display an empty img if a site icon can't be found
This improves the search result icon feature by "hiding" the site's icon
if one was not found. This happens in scenarios where a site doesn't
have a /favicon.ico due to having a unique path or using javascript to
load the icon.
2023-10-11 11:05:53 -06:00
Ben Busby 4292ec7f63
Add icons for each search result
This appends an icon element to each search result, using the result
domain's "/favicon.ico" path.

Note that some sites do not have a standard /favicon.ico, but have a
unique path to a specifically sized favicon instead. Worse still, some
sites use javascript to load their favicon, which would make it even
more difficult for Whoogle to figure out.

For now this approach is fine, but can be expanded upon in the future
if desired.
2023-10-11 11:05:53 -06:00
Ben Busby 3ef191b5d8
Add missing env var to readme [skip ci]
Closes #1075
2023-10-10 16:42:42 -06:00
Ben Busby c36396e9cb
Sanitize valid html in result text content
This inspects the text content of each individual result div and strips
out valid 'script' or 'iframe' tags from the result.

Closes #1076
2023-10-10 16:38:13 -06:00
dependabot[bot] 0d013c788f
Bump urllib3 from 1.26.14 to 1.26.17 (#1073)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.14 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.14...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-10 15:22:47 -06:00
AlekseiKondrashov ec05f8d52f
Remove a public instance [skip ci] (#1074)
Removes https://search.neadond.space

---------

Co-authored-by: Ben Busby <contact@benbusby.com>
2023-10-10 15:22:29 -06:00
AlekseiKondrashov e2070045bf
Add new public instance [skip ci] (#1069)
New instance: https://search.neadond.space

---------

Co-authored-by: Ben Busby <contact@benbusby.com>
2023-09-29 10:40:09 -06:00
dependabot[bot] b093d39ed1
Bump cryptography from 3.3.2 to 41.0.4 (#1067)
Bumps [cryptography](https://github.com/pyca/cryptography) from 3.3.2 to 41.0.4.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/3.3.2...41.0.4)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-28 14:32:09 -06:00
Ben Busby e9c4ed6399
Add `WorkingDirectory` to systemd example [skip ci] 2023-09-13 15:58:01 -06:00
Ben Busby 8b99a87020
Include `validators` in requirements.txt 2023-09-13 15:51:35 -06:00
Ben Busby 3a2e0b262e
Validate urls in `element` and `window` endpoints
Domains were previously not validated before being handled, leading to a
potential scenario where someone could pass something like
"element_url=127.0.0.1:<port>/<resource>" to access other resources on a
machine running Whoogle. This change ensures that the resource used in
both endpoints is a valid domain.

This also includes validation of config names to prevent names from
including path values such as "../../(etc)".
2023-09-13 15:50:04 -06:00
Anton Mironov 8830615abc
[Helm] Provide auth in probes if it is set (#1065)
If the auth is set, the probes fail with a 401 error.
2023-09-13 14:14:03 -06:00
MoistCat 693ca3a9a8
Fix invalid calculator widget path (#1064)
When starting whoogle from another directory, the path to the calculator
widget was previously invalid. It now specifies the path relative to the widget
loader file.
2023-09-13 14:13:21 -06:00
Ben Busby a35b1dabbc
Use filtered query for map tab
The map tab should only ever pass the raw query (i.e. no "-site:..."
strings), otherwise the maps page will return an error.

Fixes #1048
2023-09-08 16:44:04 -06:00
Ben Busby a623210244
Match exact words to trigger calculator widget
The calculator was previously triggered for partial matches with words
like "calc", which meant searches containing the word "calcium" would
cause the calculator widget to appear.
2023-09-08 16:19:39 -06:00
Ben Busby abbe29d9d3
Add public instance to readme [skip ci]
whoogle.yepserver.xyz

Closes #1061
2023-09-08 16:08:12 -06:00
satoru 19be033ba2
Update fly.io doc in readme [skip ci] (#1058) 2023-09-08 16:01:13 -06:00
Ben Busby 92e8ede24e
Bump version to 0.8.3 2023-08-21 15:06:17 -06:00
Ahmad Alkadri 4a0089686e
Fix: `keep_blank_values = True` to handle blank `q` input (#1052) 2023-08-21 14:53:10 -06:00
Fabian Wunsch a40b98341b
Change the consent cookies (#1054)
* Changed the consent cookies

* Shorter cookie thanks to @Imaskiller
2023-08-21 14:50:38 -06:00
Ben Busby 18fc14dc5b
Add public instance [skip ci]
* whoogle.datura.network

Closes #1034
2023-08-02 11:02:27 -06:00
dependabot[bot] 8a3c9ea397
Bump cryptography from 41.0.0 to 41.0.3 (#1044)
Bumps [cryptography](https://github.com/pyca/cryptography) from 41.0.0 to 41.0.3.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/41.0.0...41.0.3)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-02 10:47:41 -06:00
dependabot[bot] ee25d3a23d
Bump certifi from 2022.12.7 to 2023.7.22 (#1038)
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-02 10:46:09 -06:00