这是indexloc提供的服务,不要输入任何密码
Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-20.04]
python-version: [3.6, 3.7, 3.8, 3.9]
python-version: [3.7, 3.8, 3.9]
steps:
- name: Checkout
uses: actions/checkout@v2
Expand Down
3 changes: 2 additions & 1 deletion dockerfiles/docker-entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -146,4 +146,5 @@ unset MORTY_KEY

# Start uwsgi
printf 'Listen on %s\n' "${BIND_ADDRESS}"
exec su-exec searx:searx uwsgi --master --http-socket "${BIND_ADDRESS}" "${UWSGI_SETTINGS_PATH}"
export SEARX_BIND_ADDRESS="${BIND_ADDRESS}"
exec su-exec searx:searx python3 -m searx.webapp
12 changes: 8 additions & 4 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,20 @@
certifi==2021.5.30
babel==2.9.1
flask-babel==2.0.0
flask==2.0.1
jinja2==3.0.1
lxml==4.6.3
pygments==2.9.0
python-dateutil==2.8.2
pyyaml==5.4.1
aiohttp[speedup]==3.7.4.post0
httpx[http2]==0.17.1
Brotli==1.0.9
uvloop==0.16.0; python_version >= '3.7'
uvloop==0.14.0; python_version < '3.7'
uvloop==0.16.0
httpx-socks[asyncio]==0.3.1
langdetect==1.0.9
setproctitle==1.2.2
starlette==0.16.0
starlette-i18n==1.0.0
starlette-context==0.3.3
python-multipart==0.0.5
uvicorn[standard]==0.14.0
gunicorn==20.1.0
8 changes: 5 additions & 3 deletions searx/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,13 @@
settings = settings_set_defaults(settings)

searx_debug = settings['general']['debug']
logging.basicConfig()
if searx_debug:
logging.basicConfig(level=logging.DEBUG)
logging.root.setLevel(logging.DEBUG)
for logger_name in ('hpack.hpack', 'hpack.table', 'multipart.multipart'):
logging.getLogger(logger_name).setLevel(logging.WARNING)
else:
logging.basicConfig(level=logging.WARNING)

logging.root.setLevel(logging.WARNING)
logger = logging.getLogger('searx')
logger.info(settings_load_message)

Expand Down
2 changes: 1 addition & 1 deletion searx/answerers/random/answerer.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import random
import string
import uuid
from flask_babel import gettext
from searx.i18n import gettext

# required answerer attribute
# specifies which search query keywords triggers this answerer
Expand Down
2 changes: 1 addition & 1 deletion searx/answerers/statistics/answerer.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from functools import reduce
from operator import mul

from flask_babel import gettext
from searx.i18n import gettext


keywords = ('min',
Expand Down
2 changes: 1 addition & 1 deletion searx/engines/openstreetmap.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from urllib.parse import urlencode
from functools import partial

from flask_babel import gettext
from searx.i18n import gettext

from searx.data import OSM_KEYS_TAGS, CURRENCIES
from searx.utils import searx_useragent
Expand Down
2 changes: 1 addition & 1 deletion searx/engines/pdbe.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"""

from json import loads
from flask_babel import gettext
from searx.i18n import gettext

# about
about = {
Expand Down
2 changes: 1 addition & 1 deletion searx/engines/pubmed.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
PubMed (Scholar publications)
"""

from flask_babel import gettext
from lxml import etree
from datetime import datetime
from urllib.parse import urlencode
from searx.i18n import gettext
from searx.network import get

# about
Expand Down
2 changes: 1 addition & 1 deletion searx/engines/qwant.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@
)
from json import loads
from urllib.parse import urlencode
from flask_babel import gettext

from searx.i18n import gettext
from searx.utils import match_language
from searx.exceptions import SearxEngineAPIException
from searx.network import raise_for_httperror
Expand Down
77 changes: 0 additions & 77 deletions searx/flaskfix.py

This file was deleted.

50 changes: 50 additions & 0 deletions searx/i18n.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
# lint: pylint
# pylint: disable=missing-module-docstring,missing-function-docstring

import babel
import babel.numbers
import babel.dates
import babel.support

from starlette_i18n import (
i18n,
load_gettext_translations,
)
from starlette_i18n import gettext_lazy as gettext

__all__ = (
'gettext',
'format_decimal',
'format_date',
'initialize_i18n'
)


def format_decimal(number, format=None): # pylint: disable=redefined-builtin
locale = i18n.get_locale()
return babel.numbers.format_decimal(number, format=format, locale=locale)


def format_date(date=None, format='medium', rebase=False): # pylint: disable=redefined-builtin
if rebase:
raise ValueError('rebase=True not implemented')
locale = i18n.get_locale()
if format in ('full', 'long', 'medium', 'short'):
format = locale.date_formats[format]
pattern = babel.dates.parse_pattern(format)
return pattern.apply(date, locale)


def monkeypatch():
old_i18n_Locale_parse = i18n.Locale.parse
def i18n_Locale_parse(identifier, sep='_', resolve_likely_subtags=True):
if identifier == 'oc':
identifier = 'fr'
return old_i18n_Locale_parse(identifier, sep, resolve_likely_subtags)
setattr(i18n.Locale, 'parse', i18n_Locale_parse)


def initialize_i18n(translations_path):
monkeypatch()
load_gettext_translations(directory=translations_path, domain="messages")
Loading