From 667a388da4993f1def3767c9e0d08f67a555cfdc Mon Sep 17 00:00:00 2001 From: Boyan <36108495+confestim@users.noreply.github.com> Date: Sun, 21 Apr 2024 02:08:58 +0200 Subject: [PATCH] Updated files. getting ready for publishing. Some issues --- .gitignore | 1 + README.md | 6 ++-- docs/api.md | 1 - setup.py | 29 +++++++++++++++++++ temmies/__init__.py | 0 {src => temmies}/course.py | 6 ++-- .../exceptions/course_unavailable.py | 0 {src => temmies}/exceptions/illegal_action.py | 0 {src => temmies}/exercise_group.py | 4 +-- {src => temmies}/submission.py | 1 - {src => temmies}/themis.py | 4 +-- {src => temmies}/year.py | 4 +-- 12 files changed, 42 insertions(+), 14 deletions(-) create mode 100644 setup.py create mode 100644 temmies/__init__.py rename {src => temmies}/course.py (93%) rename {src => temmies}/exceptions/course_unavailable.py (100%) rename {src => temmies}/exceptions/illegal_action.py (100%) rename {src => temmies}/exercise_group.py (98%) rename {src => temmies}/submission.py (99%) rename {src => temmies}/themis.py (97%) rename {src => temmies}/year.py (96%) diff --git a/.gitignore b/.gitignore index 5de3fd0..1d4ceea 100644 --- a/.gitignore +++ b/.gitignore @@ -331,3 +331,4 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. #.idea/ +project-hierarchy.txt diff --git a/README.md b/README.md index cbadea1..21dfe42 100644 --- a/README.md +++ b/README.md @@ -12,14 +12,14 @@ A python library which interacts with themis. Uses bs4. I'll try to end developm * [x] Log in * [x] Submit * [x] Bulk download of test cases and files -* [ ] Submission status +* [x] Submission status ## Docs [here](http://temmies.rtfd.io/). ## Possible continuations -* [ ] Discord bot -* [ ] CLI program +* Discord bot +* CLI program ## Thanks to * [Glitchcat](https://glitchcat.github.io/themis-api/), cool docs bro. diff --git a/docs/api.md b/docs/api.md index 4660fd2..67bfe0b 100644 --- a/docs/api.md +++ b/docs/api.md @@ -58,7 +58,6 @@ courses = year.all_courses() ## `Course` ### Usage ```python - pf = year.get_course("Programming Fundamentals (for CS)") print(pf.info) # <- course info attribute assignments = pf.get_groups() diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..e8c74a8 --- /dev/null +++ b/setup.py @@ -0,0 +1,29 @@ +from setuptools import find_packages, setup + +with open("README.md", "r") as f: + l_description = f.read() + +setup( + name="temmies", + version="1.0.1", + package_dir = {"": "temmies"}, + packages=find_packages(where="temmies"), + description="A wrapper for the Themis website", + long_description=l_description, + long_description_content_type="text/markdown", + url="https://github.com/Code-For-Groningen/temmies", + author="Boyan K.", + author_email="boyan@confest.im", + license="GPLv3", + classifiers=[ + "Development Status :: 4 - Beta", + "Intended Audience :: Developers", + "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", + "Programming Language :: Python :: 3.9", + ], + install_requires=[ + "requests", + "bs4", + ], + python_requires=">=3.9", +) \ No newline at end of file diff --git a/temmies/__init__.py b/temmies/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/course.py b/temmies/course.py similarity index 93% rename from src/course.py rename to temmies/course.py index db69c99..d3771f4 100644 --- a/src/course.py +++ b/temmies/course.py @@ -4,9 +4,9 @@ Houses the Course class which is used to represent a course in a year. from bs4 import BeautifulSoup from requests import Session -from exercise_group import ExerciseGroup -from exceptions.course_unavailable import CourseUnavailable -from exceptions.illegal_action import IllegalAction +from .exercise_group import ExerciseGroup +from .exceptions.course_unavailable import CourseUnavailable +from .exceptions.illegal_action import IllegalAction class Course: diff --git a/src/exceptions/course_unavailable.py b/temmies/exceptions/course_unavailable.py similarity index 100% rename from src/exceptions/course_unavailable.py rename to temmies/exceptions/course_unavailable.py diff --git a/src/exceptions/illegal_action.py b/temmies/exceptions/illegal_action.py similarity index 100% rename from src/exceptions/illegal_action.py rename to temmies/exceptions/illegal_action.py diff --git a/src/exercise_group.py b/temmies/exercise_group.py similarity index 98% rename from src/exercise_group.py rename to temmies/exercise_group.py index e9ee768..105affd 100644 --- a/src/exercise_group.py +++ b/temmies/exercise_group.py @@ -7,8 +7,8 @@ Represents a group of exercises or a single exercise. from json import loads from time import sleep from bs4 import BeautifulSoup -from exceptions.illegal_action import IllegalAction -from submission import Submission +from .exceptions.illegal_action import IllegalAction +from .submission import Submission class ExerciseGroup: """ diff --git a/src/submission.py b/temmies/submission.py similarity index 99% rename from src/submission.py rename to temmies/submission.py index 507caed..14f9105 100644 --- a/src/submission.py +++ b/temmies/submission.py @@ -4,7 +4,6 @@ File to define the submission class from bs4 import BeautifulSoup - class Submission: """ Submission class diff --git a/src/themis.py b/temmies/themis.py similarity index 97% rename from src/themis.py rename to temmies/themis.py index 99707ff..20d9c8e 100644 --- a/src/themis.py +++ b/temmies/themis.py @@ -6,8 +6,8 @@ Main class for the Themis API import urllib3 from requests import Session from bs4 import BeautifulSoup -from year import Year -from exceptions.illegal_action import IllegalAction +from .year import Year +from .exceptions.illegal_action import IllegalAction # Disable warnings diff --git a/src/year.py b/temmies/year.py similarity index 96% rename from src/year.py rename to temmies/year.py index cc09604..0ed4b64 100644 --- a/src/year.py +++ b/temmies/year.py @@ -5,8 +5,8 @@ Class which represents an academic year. from bs4 import BeautifulSoup from requests import Session -from course import Course -from exceptions.course_unavailable import CourseUnavailable +from .course import Course +from .exceptions.course_unavailable import CourseUnavailable # Works