Follow DeepSource reccommendations

Nolonger binding to the address, by default it is always localhost
This commit is contained in:
Michał Gdula 2023-04-02 23:20:34 +00:00
parent 6f759bb678
commit 36a7f83db6
7 changed files with 15 additions and 22 deletions

View file

@ -104,9 +104,6 @@ def register():
db_session.commit() db_session.commit()
except exc.IntegrityError: except exc.IntegrityError:
return f'User {username} is already registered!' return f'User {username} is already registered!'
except Exception as err:
logging.error('User %s could not be registered: %s', username, err)
return 'Something went wrong!'
logging.info('User %s registered', username) logging.info('User %s registered', username)
return 'gwa gwa' return 'gwa gwa'

View file

@ -114,7 +114,7 @@ def delete_image(image_id):
# Delete file # Delete file
try: try:
os.remove(os.path.join(current_app.config['UPLOAD_FOLDER'],img.file_name)) os.remove(os.path.join(current_app.config['UPLOAD_FOLDER'], img.file_name))
except FileNotFoundError: except FileNotFoundError:
logging.warning('File not found: %s, already deleted or never existed', img.file_name) logging.warning('File not found: %s, already deleted or never existed', img.file_name)

View file

@ -3,7 +3,7 @@ Calculate the contrast between two colors
""" """
def contrast(background, light, dark, threshold = 0.179): def contrast(background, light, dark, threshold=0.179):
""" """
background: tuple of (r, g, b) values background: tuple of (r, g, b) values
light: color to use if the background is light light: color to use if the background is light

View file

@ -4,7 +4,7 @@ Tools for generating images and thumbnails
import os import os
import platformdirs import platformdirs
from PIL import Image, ImageOps #, ImageFilter from PIL import Image, ImageOps
from werkzeug.utils import secure_filename from werkzeug.utils import secure_filename
@ -65,13 +65,13 @@ def generate_thumbnail(file_name, resolution, ext=None):
# Save image to cache directory # Save image to cache directory
try: try:
image.save(os.path.join(CACHE_PATH, f'{file_name}_{res_x}x{res_y}.{ext}'), image.save(os.path.join(CACHE_PATH, f'{file_name}_{res_x}x{res_y}.{ext}'),
icc_profile=image_icc) icc_profile=image_icc)
except OSError: except OSError:
# This usually happens when saving a JPEG with an ICC profile, # This usually happens when saving a JPEG with an ICC profile,
# so we convert to RGB and try again # so we convert to RGB and try again
image = image.convert('RGB') image = image.convert('RGB')
image.save(os.path.join(CACHE_PATH, f'{file_name}_{res_x}x{res_y}.{ext}'), image.save(os.path.join(CACHE_PATH, f'{file_name}_{res_x}x{res_y}.{ext}'),
icc_profile=image_icc) icc_profile=image_icc)
# No need to keep the image in memory, learned the hard way # No need to keep the image in memory, learned the hard way
image.close() image.close()

15
run.py
View file

@ -24,19 +24,14 @@ Configuration()
if DEBUG: if DEBUG:
from gallery import create_app from gallery import create_app
# If no address is specified, use localhost
if not ADDRESS:
ADDRESS = 'localhost'
create_app().run(host=ADDRESS, port=PORT, debug=True, threaded=True) create_app().run(host=ADDRESS, port=PORT, debug=True, threaded=True)
else: else:
from setup.runner import OnlyLegs # pylint: disable=C0412 from setup.runner import OnlyLegs # pylint: disable=C0412
import sys
# If no address is specified, bind the server to all interfaces
if not ADDRESS: # Stop Gunicorn from reading the command line arguments as it causes errors
ADDRESS = '0.0.0.0' sys.argv = [sys.argv[0]]
options = { options = {
'bind': f'{ADDRESS}:{PORT}', 'bind': f'{ADDRESS}:{PORT}',
'workers': WORKERS, 'workers': WORKERS,

View file

@ -2,7 +2,7 @@
Startup arguments for the OnlyLegs gallery Startup arguments for the OnlyLegs gallery
-p, --port: Port to run on (default: 5000) -p, --port: Port to run on (default: 5000)
-a, --address: Address to run on (default: For Debug: localhost, For Production: 0.0.0.0) -a, --address: Address to run on (default: 127.0.0.0)
-w, --workers: Number of workers to run (default: 4) -w, --workers: Number of workers to run (default: 4)
-d, --debug: Run as Flask app in debug mode (default: False) -d, --debug: Run as Flask app in debug mode (default: False)
@ -15,7 +15,7 @@ import argparse
parser = argparse.ArgumentParser(description='Run the OnlyLegs gallery') parser = argparse.ArgumentParser(description='Run the OnlyLegs gallery')
parser.add_argument('-p', '--port', type=int, default=5000, help='Port to run on') parser.add_argument('-p', '--port', type=int, default=5000, help='Port to run on')
parser.add_argument('-a', '--address', type=str, default=None, help='Address to run on') parser.add_argument('-a', '--address', type=str, default='127.0.0.0', help='Address to run on')
parser.add_argument('-w', '--workers', type=int, default=4, help='Number of workers to run') parser.add_argument('-w', '--workers', type=int, default=4, help='Number of workers to run')
parser.add_argument('-d', '--debug', action='store_true', help='Run as Flask app in debug mode') parser.add_argument('-d', '--debug', action='store_true', help='Run as Flask app in debug mode')
args = parser.parse_args() args = parser.parse_args()

View file

@ -9,7 +9,7 @@ class OnlyLegs(Application):
""" """
Gunicorn application Gunicorn application
""" """
def __init__(self, options={}): # pylint: disable=W0102, W0231 # noqa def __init__(self, options={}): # pylint: disable=W0102, W0231
self.usage = None self.usage = None
self.callable = None self.callable = None
self.options = options self.options = options
@ -25,7 +25,8 @@ class OnlyLegs(Application):
cfg[setting.lower()] = value cfg[setting.lower()] = value
return cfg return cfg
def prog(self): # pylint: disable=C0116, E0202 # noqa @staticmethod
def prog(self): # pylint: disable=C0116, E0202
return 'OnlyLegs' return 'OnlyLegs'
def load(self): def load(self):