diff --git a/requirements.txt b/requirements.txt index 501e963..0b2f1e4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,10 +1,14 @@ yarl<1.2 -numpy==1.14.0 aiofiles # aiomultiprocess # aiosqlite -# asyncpg -# dataclasses # cached_property uvloop==0.9.1 -aiohttp==3.2.1 \ No newline at end of file +aiohttp==3.2.1 +# Someone forgot to add this in. +asyncpg +# Music cog requirements +opuslib +dataclasses +PyNaCl +youtube_dl diff --git a/sebi_machine_launcher.sh b/sebi_machine_launcher.sh index d5140a3..ceb3395 100644 --- a/sebi_machine_launcher.sh +++ b/sebi_machine_launcher.sh @@ -1,6 +1,17 @@ #!/bin/bash -until python -m src; do - echo "Sebi-Machine shutdown with error: $?. Restarting..." >&2 - sleep 1 +# 20th June 2018 +# Esp: added a trap here, as it otherwise attempts to restart when given +# the interrupt signal. This is really annoying over SSH when I have +# a 1-second lag anyway. +trap "echo 'Received interrupt. Exiting.'; exit 0" SIGINT + +# Also loads the venv if it is present. +[ -d .venv/bin ] && source .venv/bin/activate && echo "Entered venv." || echo "No venv detected." + +until python -m src; do + # Added colouring to ensure the date of shutdown and the exit code stands + # out from the other clutter in the traceback that might have been output. + echo -e "\e[0;31m[$(date --utc)]\e[0m Sebi-Machine shutdown with error \e[0;31m$?\e[0m. Restarting..." >&2 + sleep 1 done diff --git a/src/cogs/music.py b/src/cogs/music.py index 9a2f546..54eb3a9 100644 --- a/src/cogs/music.py +++ b/src/cogs/music.py @@ -11,7 +11,7 @@ from discord.ext import commands import youtube_dl # noinspection PyUnresolvedReferences,PyUnresolvedReferences,PyPackageRequirements -from utils import noblock +from . utils import noblock YT_DL_OPTS = { diff --git a/src/shared_libs/utils.py b/src/shared_libs/utils.py index 9ba5998..fbd2827 100644 --- a/src/shared_libs/utils.py +++ b/src/shared_libs/utils.py @@ -32,7 +32,6 @@ import sys import asyncio import discord from discord.ext.commands.formatter import Paginator -import numpy as np class Capturing(list):