diff --git a/inkycal/display/drivers/7_in_8.py b/inkycal/display/drivers/7_in_8.py new file mode 100644 index 0000000..61462f4 --- /dev/null +++ b/inkycal/display/drivers/7_in_8.py @@ -0,0 +1,50 @@ +#!/usr/bin/python3 +# -*- coding: utf-8 -*- +""" +7.8" parallel driver class +Copyright by aceisace +""" +from inkycal.custom import top_level, images +from os.path import exists +from PIL import Image + +# Display resolution +EPD_WIDTH = 1872 +EPD_HEIGHT = 1404 + +# Please insert VCOM of your display. The Minus sign before is not required +VCOM = "2.0" + +driver_dir = top_level+'/inkycal/display/drivers/7_in_8_drivers/' + +command = f'sudo {driver_dir}IT8951/IT8951 0 0 {images+"canvas.bmp"}' +print(command) + +class EPD: + + def __init__(self): + """7.8" epaper class""" + pass + + def init(self): + pass + + def display(self, command): + """displays an image""" + try: + run_command = command.split() + run(run_command) + except: + print("oops, something didn't work right :/") + + def getbuffer(self, image): + """ad-hoc""" + image = image.rotate(90, expand=True) + image.convert('RGB').save(images+'canvas.bmp', 'BMP') + command = f'sudo {driver_dir}IT8951/IT8951 0 {images+"canvas.bmp"}' + print(command) + return command + + def sleep(self): + pass + diff --git a/inkycal/display/drivers/9_in_7_drivers/IT8951.zip b/inkycal/display/drivers/9_in_7_drivers/IT8951.zip deleted file mode 100644 index 8b9dfa5..0000000 Binary files a/inkycal/display/drivers/9_in_7_drivers/IT8951.zip and /dev/null differ diff --git a/inkycal/display/drivers/9_in_7_drivers/bcm2835-1.68.zip b/inkycal/display/drivers/9_in_7_drivers/bcm2835-1.68.zip deleted file mode 100644 index fd4e2d7..0000000 Binary files a/inkycal/display/drivers/9_in_7_drivers/bcm2835-1.68.zip and /dev/null differ diff --git a/inkycal/display/drivers/9_in_7_drivers/install.sh b/inkycal/display/drivers/9_in_7_drivers/install.sh deleted file mode 100644 index 663efe7..0000000 --- a/inkycal/display/drivers/9_in_7_drivers/install.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash - -# Unzip C++ SPI library and driver files -echo "Unzipping files" -unzip bcm2835-1.68.zip -unzip IT8951.zip -rm bcm2835-1.68.zip -rm IT8951.zip - -# Install C++ SPI library for Raspberry -echo "Installing C++ SPI library" -cd bcm2835-1.68 -chmod +x configure -./configure -make -sudo make check -sudo make install - -# Install 9.7" E-Paper drivers -echo "Installing 9.7inch E-Paper drivers" -cd .. -cd IT8951 -make clean -make - -# Show image to check if it works -echo "Showing demo image" -sudo ./IT8951 0 0 pika.bmp - -echo "If you see a pikachu on the E-Paper, the install" -echo "was successfull. If not, please report this issue." \ No newline at end of file diff --git a/inkycal/display/drivers/parallel_drivers/bin/DEV_Config.o b/inkycal/display/drivers/parallel_drivers/bin/DEV_Config.o index 42c0750..397927d 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/DEV_Config.o and b/inkycal/display/drivers/parallel_drivers/bin/DEV_Config.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/EPD_IT8951.o b/inkycal/display/drivers/parallel_drivers/bin/EPD_IT8951.o index bf3559b..bfe85b9 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/EPD_IT8951.o and b/inkycal/display/drivers/parallel_drivers/bin/EPD_IT8951.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/GUI_BMPfile.o b/inkycal/display/drivers/parallel_drivers/bin/GUI_BMPfile.o index 28cf1ba..cd1bb33 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/GUI_BMPfile.o and b/inkycal/display/drivers/parallel_drivers/bin/GUI_BMPfile.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/GUI_Paint.o b/inkycal/display/drivers/parallel_drivers/bin/GUI_Paint.o index 772886a..3ee967e 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/GUI_Paint.o and b/inkycal/display/drivers/parallel_drivers/bin/GUI_Paint.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/example.o b/inkycal/display/drivers/parallel_drivers/bin/example.o index 54a9239..ec9a66c 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/example.o and b/inkycal/display/drivers/parallel_drivers/bin/example.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/font12.o b/inkycal/display/drivers/parallel_drivers/bin/font12.o index 43889f4..c62af3d 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/font12.o and b/inkycal/display/drivers/parallel_drivers/bin/font12.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/font12CN.o b/inkycal/display/drivers/parallel_drivers/bin/font12CN.o index 31c70e3..1eb2a8d 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/font12CN.o and b/inkycal/display/drivers/parallel_drivers/bin/font12CN.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/font16.o b/inkycal/display/drivers/parallel_drivers/bin/font16.o index 7b70c14..07b4c07 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/font16.o and b/inkycal/display/drivers/parallel_drivers/bin/font16.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/font20.o b/inkycal/display/drivers/parallel_drivers/bin/font20.o index 1310dee..3f21769 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/font20.o and b/inkycal/display/drivers/parallel_drivers/bin/font20.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/font24.o b/inkycal/display/drivers/parallel_drivers/bin/font24.o index 96d5ba1..170dbd6 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/font24.o and b/inkycal/display/drivers/parallel_drivers/bin/font24.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/font24CN.o b/inkycal/display/drivers/parallel_drivers/bin/font24CN.o index c709c84..90294d9 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/font24CN.o and b/inkycal/display/drivers/parallel_drivers/bin/font24CN.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/font8.o b/inkycal/display/drivers/parallel_drivers/bin/font8.o index 04908eb..793ea69 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/font8.o and b/inkycal/display/drivers/parallel_drivers/bin/font8.o differ diff --git a/inkycal/display/drivers/parallel_drivers/bin/main.o b/inkycal/display/drivers/parallel_drivers/bin/main.o index 66e5c07..b4d2fef 100644 Binary files a/inkycal/display/drivers/parallel_drivers/bin/main.o and b/inkycal/display/drivers/parallel_drivers/bin/main.o differ diff --git a/inkycal/display/drivers/parallel_drivers/epd b/inkycal/display/drivers/parallel_drivers/epd index 369bfad..a104138 100755 Binary files a/inkycal/display/drivers/parallel_drivers/epd and b/inkycal/display/drivers/parallel_drivers/epd differ diff --git a/inkycal/display/drivers/parallel_drivers/examples/example.c b/inkycal/display/drivers/parallel_drivers/examples/example.c index 6368fce..cf7efa6 100644 --- a/inkycal/display/drivers/parallel_drivers/examples/example.c +++ b/inkycal/display/drivers/parallel_drivers/examples/example.c @@ -223,7 +223,7 @@ UBYTE Display_BMP_Example(UWORD Panel_Width, UWORD Panel_Height, UDOUBLE Init_Ta break; } case BitsPerPixel_4:{ - Paint_DrawString_EN(10, 10, "4 bits per pixel 16 grayscale", &Font24, 0xF0, 0x00); + //Paint_DrawString_EN(10, 10, "4 bits per pixel 16 grayscale", &Font24, 0xF0, 0x00); EPD_IT8951_4bp_Refresh(Refresh_Frame_Buf, 0, 0, WIDTH, HEIGHT, false, Init_Target_Memory_Addr,false); break; } diff --git a/inkycal/display/drivers/parallel_drivers/examples/main.c b/inkycal/display/drivers/parallel_drivers/examples/main.c index 7c3d6ee..c5883d1 100644 --- a/inkycal/display/drivers/parallel_drivers/examples/main.c +++ b/inkycal/display/drivers/parallel_drivers/examples/main.c @@ -61,18 +61,12 @@ int main(int argc, char *argv[]) //Exception handling:ctrl + c signal(SIGINT, Handler); - if (argc < 2){ - Debug("Please input VCOM value on FPC cable!\r\n"); - Debug("Example: sudo ./epd -2.51\r\n"); + if (argc != 4){ + Debug("Usage: sudo ./epd -2.51 0 bmp_filepath\r\n"); + Debug("To use the test, please navigate to Inkycal/inkycal/display/drivers/parallel_drivers and then run\r\n"); + Debug("Test: sudo ./epd -2.51 0 test\r\n"); exit(1); } - if (argc != 3){ - Debug("Please input e-Paper display mode!\r\n"); - Debug("Example: sudo ./epd -2.51 0 or sudo ./epd -2.51 1\r\n"); - Debug("Now, 10.3 inch glass panle is mode1, else is mode0\r\n"); - Debug("If you don't know what to type in just type 0 \r\n"); - exit(1); - } //Init the BCM2835 Device if(DEV_Module_Init()!=0){ @@ -121,50 +115,25 @@ int main(int argc, char *argv[]) #if(SHOW_BMP) //Show a bmp file //1bp use A2 mode by default, before used it, refresh the screen with WHITE - Display_BMP_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_4, "/home/pi/InkycalVenv/inkycal/display/drivers/7_in_8_drivers/pic/1872x1404_2.bmp"); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); -#endif - -#if(USE_Normal_Demo) -/* - //Show 16 grayscale - Display_ColorPalette_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); - - //Show some character and pattern - Display_CharacterPattern_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_4); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); - - //Show a bmp file - //1bp use A2 mode by default, before used it, refresh the screen with WHITE - Display_BMP_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_1); - Display_BMP_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_2); - Display_BMP_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_4); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); + Display_BMP_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_4, argv[3]); + //EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); - //Show A2 mode refresh effect - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, A2_Mode); - Dynamic_Refresh_Example(Dev_Info,Init_Target_Memory_Addr); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, A2_Mode); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); - - //Show how to display a gif, not works well on 6inch e-Paper HAT, 9.7inch e-Paper HAT, others work well - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, A2_Mode); - Dynamic_GIF_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, A2_Mode); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); - - //Show how to test frame rate, test it individually,which is related to refresh area size and refresh mode - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, A2_Mode); - Check_FrameRate_Example(800, 600, Init_Target_Memory_Addr, BitsPerPixel_1); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, A2_Mode); - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, GC16_Mode); - * */ + if( strcmp(argv[3], "test") == 0){ + Debug("----RUNNING DISPLAY TEST----...hold on tight! \r\n"); + char Path[30]; + sprintf(Path,"./pic/%dx%d_0.bmp", Panel_Width, Panel_Height); + Display_BMP_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_4, Path); + }else{ + Debug("Loading BMP File \r\n"); + Display_BMP_Example(Panel_Width, Panel_Height, Init_Target_Memory_Addr, BitsPerPixel_4, argv[3]); + } + #endif + //We recommended refresh the panel to white color before storing in the warehouse. - EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, INIT_Mode); + // EPD_IT8951_Clear_Refresh(Dev_Info, Init_Target_Memory_Addr, INIT_Mode); //EPD_IT8951_Standby(); EPD_IT8951_Sleep(); diff --git a/inkycal/display/drivers/parallel_drivers/pic/1200x825_1.bmp b/inkycal/display/drivers/parallel_drivers/pic/1200x825_1.bmp deleted file mode 100644 index 28dff95..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1200x825_1.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1200x825_2.bmp b/inkycal/display/drivers/parallel_drivers/pic/1200x825_2.bmp deleted file mode 100644 index 36242f0..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1200x825_2.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1200x825_3.bmp b/inkycal/display/drivers/parallel_drivers/pic/1200x825_3.bmp deleted file mode 100644 index 2299cc5..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1200x825_3.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1280x720_1.bmp b/inkycal/display/drivers/parallel_drivers/pic/1280x720_1.bmp deleted file mode 100644 index 24599fb..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1280x720_1.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1280x720_2.bmp b/inkycal/display/drivers/parallel_drivers/pic/1280x720_2.bmp deleted file mode 100644 index 9cfaf72..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1280x720_2.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1280x720_3.bmp b/inkycal/display/drivers/parallel_drivers/pic/1280x720_3.bmp deleted file mode 100644 index 8d29f44..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1280x720_3.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1440x1072_1.bmp b/inkycal/display/drivers/parallel_drivers/pic/1440x1072_1.bmp deleted file mode 100644 index 11328d1..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1440x1072_1.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1440x1072_2.bmp b/inkycal/display/drivers/parallel_drivers/pic/1440x1072_2.bmp deleted file mode 100644 index c8592e5..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1440x1072_2.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1440x1072_3.bmp b/inkycal/display/drivers/parallel_drivers/pic/1440x1072_3.bmp deleted file mode 100644 index decbb69..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1440x1072_3.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_0.bmp b/inkycal/display/drivers/parallel_drivers/pic/1600x1200_0.bmp deleted file mode 100644 index cbf3214..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_0.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_1.bmp b/inkycal/display/drivers/parallel_drivers/pic/1600x1200_1.bmp deleted file mode 100644 index 5bdb932..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_1.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_2.bmp b/inkycal/display/drivers/parallel_drivers/pic/1600x1200_2.bmp deleted file mode 100644 index 50d580f..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_2.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_3.bmp b/inkycal/display/drivers/parallel_drivers/pic/1600x1200_3.bmp deleted file mode 100644 index c5c047c..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1600x1200_3.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1872x1404_1.bmp b/inkycal/display/drivers/parallel_drivers/pic/1872x1404_1.bmp deleted file mode 100644 index f9d8636..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1872x1404_1.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1872x1404_2.bmp b/inkycal/display/drivers/parallel_drivers/pic/1872x1404_2.bmp deleted file mode 100644 index 1183c9d..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1872x1404_2.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/1872x1404_3.bmp b/inkycal/display/drivers/parallel_drivers/pic/1872x1404_3.bmp deleted file mode 100644 index b84026b..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/1872x1404_3.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_1.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_1.bmp deleted file mode 100644 index cc432bf..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_1.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_2.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_2.bmp deleted file mode 100644 index fb9553a..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_2.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_3.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_3.bmp deleted file mode 100644 index 318f226..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_3.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_0.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_0.bmp deleted file mode 100644 index fdd2bd8..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_0.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_1.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_1.bmp deleted file mode 100644 index 15ca442..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_1.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_2.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_2.bmp deleted file mode 100644 index 56e2757..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_2.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_3.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_3.bmp deleted file mode 100644 index f244fa1..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_3.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_4.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_4.bmp deleted file mode 100644 index c3d6dad..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_4.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_5.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_5.bmp deleted file mode 100644 index d63fbdb..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_5.bmp and /dev/null differ diff --git a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_6.bmp b/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_6.bmp deleted file mode 100644 index cc6f9f0..0000000 Binary files a/inkycal/display/drivers/parallel_drivers/pic/800x600_gif_6.bmp and /dev/null differ diff --git a/requirements.txt b/requirements.txt index ccf95b5..0a0981b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,11 +1,30 @@ -wheel==0.37.1 # wheels -pyowm==3.3.0 # weather -Pillow>=7.1.1 # imaging -icalendar==4.0.9 # iCalendar parsing -recurring-ical-events==0.1.17b0 # parse recurring events -feedparser==6.0.8 # parse RSS-feeds -numpy==1.21.5 # image pre-processing #pre-installed on Raspbian, omitting -arrow==1.2.2 # time operations -todoist-python==8.1.3 # todoist api -yfinance>=0.1.62 # yahoo stocks -matplotlib==3.5.1 # plotting +arrow==1.2.2 +certifi==2021.10.8 +charset-normalizer==2.0.12 +cycler==0.11.0 +feedparser==6.0.8 +fonttools==4.32.0 +geojson==2.5.0 +icalendar==4.0.9 +idna==3.3 +kiwisolver==1.4.2 +lxml==4.8.0 +matplotlib==3.5.1 +multitasking==0.0.10 +numpy==1.21.5 +packaging==21.3 +pandas==1.3.5 +Pillow==9.1.0 +pyowm==3.3.0 +pyparsing==3.0.7 +PySocks==1.7.1 +python-dateutil==2.8.2 +pytz==2022.1 +recurring-ical-events==0.1.17b0 +requests==2.27.1 +sgmllib3k==1.0.0 +six==1.16.0 +todoist-python==8.1.3 +typing_extensions==4.1.1 +urllib3==1.26.9 +yfinance==0.1.70