diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000..cd544ca --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,32 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.11" + # You can also specify other tool versions: + # nodejs: "19" + # rust: "1.64" + # golang: "1.19" + +# Build documentation in the "docs/" directory with Sphinx +sphinx: + configuration: docs/conf.py + +# Optionally build your docs in additional formats such as PDF and ePub +formats: + - pdf +# - epub + +# Optional but recommended, declare the Python requirements required +# to build your documentation +# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +python: + install: + - requirements: docs/requirements.txt diff --git a/CHANGELOG.md b/CHANGELOG.md index 79c7100..7799a16 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,9 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [0.9.11] - 2023-09-25 ### Fixed -- Bug introduced with the upgrade to Pydantic v2 where - course content with the 'groupContent' attribute - set would cause related content to not be downloaded +- Bug introduced with pydantic v2 where some content would be skipped ### Changed - Pin dependencies in Pipfile and pyproject.toml for improved stability diff --git a/Pipfile b/Pipfile index 1b71a1e..0ecb56b 100644 --- a/Pipfile +++ b/Pipfile @@ -40,6 +40,7 @@ types-beautifulsoup4 = "*" types-appdirs = "*" types-python-dateutil = "*" pyqt5-stubs = "*" +sphinx-rtd-theme = "*" [requires] python_version = "3.10" diff --git a/Pipfile.lock b/Pipfile.lock index 739530b..a614877 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "3c58268c4b6dedafef2a0b577eb7d0eedddd32780e33ac35cf6f2fc07dd790a8" + "sha256": "6188f37c1f7232c52696f012238a50aa119bbdf35a6056e36f3b326ee625c9c4" }, "pipfile-spec": 6, "requires": { @@ -864,11 +864,11 @@ }, "docutils": { "hashes": [ - "sha256:96f387a2c5562db4476f09f13bbab2192e764cac08ebbf3a34a95d9b1e4a59d6", - "sha256:f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b" + "sha256:23010f129180089fbcd3bc08cfefccb3b890b0050e1ca00c867036e9d161b98c", + "sha256:679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06" ], - "markers": "python_version >= '3.7'", - "version": "==0.20.1" + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", + "version": "==0.18.1" }, "exceptiongroup": { "hashes": [ @@ -1559,6 +1559,15 @@ "markers": "python_version >= '3.9'", "version": "==7.2.6" }, + "sphinx-rtd-theme": { + "hashes": [ + "sha256:46ddef89cc2416a81ecfbeaceab1881948c014b1b6e4450b815311a89fb977b0", + "sha256:590b030c7abb9cf038ec053b95e5380b5c70d61591eb0b552063fbe7c41f0931" + ], + "index": "pypi", + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", + "version": "==1.3.0" + }, "sphinxcontrib-applehelp": { "hashes": [ "sha256:094c4d56209d1734e7d252f6e0b3ccc090bd52ee56807a5d9315b19c122ab15d", @@ -1583,6 +1592,14 @@ "markers": "python_version >= '3.9'", "version": "==2.0.4" }, + "sphinxcontrib-jquery": { + "hashes": [ + "sha256:1620739f04e36a2c779f1a131a2dfd49b2fd07351bf1968ced074365933abc7a", + "sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + ], + "markers": "python_version >= '2.7'", + "version": "==4.1" + }, "sphinxcontrib-jsmath": { "hashes": [ "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178", diff --git a/blackboard_sync/__about__.py b/blackboard_sync/__about__.py index 3baf5dd..b000104 100644 --- a/blackboard_sync/__about__.py +++ b/blackboard_sync/__about__.py @@ -33,7 +33,7 @@ __summary__ = "Automatic Syncing Of Your Blackboard Content" __uri__ = "https://github.com/jacobszpz/BlackboardSync" -__version__ = "0.9.11-alpha.2" +__version__ = "0.9.11" __author__ = "Jacob Sánchez" __email__ = "jacobszpz@protonmail.com" diff --git a/docs/conf.py b/docs/conf.py index 3b0d157..98b669a 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -18,7 +18,7 @@ # -- Project information ----------------------------------------------------- -project = __about__.__title__ +project = "Blackboard Sync" copyright = __about__.__copyright__ author = __about__.__author__ @@ -70,7 +70,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = 'alabaster' +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/docs/index.rst b/docs/index.rst index 235d2f5..a88e156 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -3,7 +3,7 @@ You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -BlackboardSync +Blackboard Sync ========================================== .. image:: https://img.shields.io/github/license/jacobszpz/BlackboardSync @@ -22,20 +22,36 @@ Features - Attachments of any type (e.g. .docx, .pptx, .pdf, etc.) - Internet links - - Content descriptions (saved as markdown files [1]_) + - Content descriptions (saved as html) - Cross-platform - Linux, Windows, and macOS ready +Installation +------------ + +You can find all releases on GitHub_. +Only MacOS (.dmg) and Windows (.exe) are supported at the moment. + +.. _GitHub: https://github.com/jacobszpz/BlackboardSync/releases/ + + +From PyPI +^^^^^^^^^ + +.. code-block:: bash + + $ python3 -m pip install blackboardsync + $ python3 -m blackboard_sync # notice the underscore -.. [1] List of `markdown editors`_. Personally, I like to use `Typora`_. API Documentation ----------------- -Information about the internal APIs. +If you are interested about contributing, or if you just want +to understand the internals of BlackboardSync more. .. toctree:: :maxdepth: 2 @@ -43,18 +59,3 @@ Information about the internal APIs. dev/bb_api dev/sync_api dev/qt_api - - -Contributing ------------- - -If you intend to contribute to this project, this may be of interest. - -.. toctree:: - :maxdepth: 2 - - dev/bb_api - - -.. _Typora: https://typora.io -.. _markdown editors: https://www.markdownguide.org/tools/ diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..58f1a8c --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,4 @@ +-i https://pypi.org/simple +recommonmark==0.7.1 +sphinx==7.2.6; python_version >= '3.9' +sphinx-rtd-theme==1.3.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'