qcanvas 0.0.3.1a0__tar.gz → 0.0.3.2a0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of qcanvas might be problematic. Click here for more details.

Files changed (58) hide show
  1. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/.gitignore +1 -1
  2. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/PKG-INFO +1 -1
  3. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/pyproject.toml +1 -1
  4. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/__main__.py +1 -2
  5. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/db/database.py +8 -1
  6. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/README.md +0 -0
  7. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/QtVersionHelper/QtCore/__init__.py +0 -0
  8. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/QtVersionHelper/QtGui/__init__.py +0 -0
  9. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/QtVersionHelper/QtWidgets/__init__.py +0 -0
  10. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/QtVersionHelper/__init__.py +0 -0
  11. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/__init__.py +0 -0
  12. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/db/__init__.py +0 -0
  13. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/db/db_converter_helper.py +0 -0
  14. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/icons/__init__.py +0 -0
  15. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/icons/icons.qrc +0 -0
  16. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/icons/main_icon.svg +0 -0
  17. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/icons/rc_icons.py +0 -0
  18. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/net/__init__.py +0 -0
  19. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/net/canvas/__init__.py +0 -0
  20. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/net/canvas/canvas_client.py +0 -0
  21. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/net/canvas/legacy_canvas_types.py +0 -0
  22. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/net/custom_httpx_async_transport.py +0 -0
  23. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/net/self_authenticating.py +0 -0
  24. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/queries/__init__.py +0 -0
  25. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/queries/all_courses.gql +0 -0
  26. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/queries/all_courses.py +0 -0
  27. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/queries/canvas_course_data.gql +0 -0
  28. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/queries/canvas_course_data.py +0 -0
  29. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/__init__.py +0 -0
  30. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/container_item.py +0 -0
  31. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/main_ui.py +0 -0
  32. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/setup_dialog.py +0 -0
  33. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/viewer/__init__.py +0 -0
  34. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/viewer/course_list.py +0 -0
  35. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/viewer/file_list.py +0 -0
  36. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/viewer/file_view_tab.py +0 -0
  37. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/ui/viewer/page_list_viewer.py +0 -0
  38. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/__init__.py +0 -0
  39. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/app_settings.py +0 -0
  40. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/canvas_garbage_remover.py +0 -0
  41. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/constants.py +0 -0
  42. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/course_indexer/__init__.py +0 -0
  43. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/course_indexer/conversion_helpers.py +0 -0
  44. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/course_indexer/data_manager.py +0 -0
  45. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/course_indexer/resource_helpers.py +0 -0
  46. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/download_pool.py +0 -0
  47. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/file_icon_helper.py +0 -0
  48. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/linkscanner/__init__.py +0 -0
  49. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/linkscanner/canvas_link_scanner.py +0 -0
  50. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/linkscanner/canvas_media_object_scanner.py +0 -0
  51. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/linkscanner/dropbox_scanner.py +0 -0
  52. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/linkscanner/resource_scanner.py +0 -0
  53. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/task_pool.py +0 -0
  54. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/tree_util/__init__.py +0 -0
  55. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/tree_util/expanding_tree.py +0 -0
  56. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/tree_util/model_helpers.py +0 -0
  57. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/qcanvas/util/tree_util/tree_model.py +0 -0
  58. {qcanvas-0.0.3.1a0 → qcanvas-0.0.3.2a0}/requirements.txt +0 -0
@@ -5,4 +5,4 @@ dist
5
5
  build
6
6
  __main__.spec
7
7
  .venv
8
- .system_pyside
8
+ .system_pyside
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qcanvas
3
- Version: 0.0.3.1a0
3
+ Version: 0.0.3.2a0
4
4
  Summary: A canvas client
5
5
  Author: QCanvas
6
6
  Classifier: Operating System :: OS Independent
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name="qcanvas"
7
- version="0.0.3.1a"
7
+ version="0.0.3.2a"
8
8
  authors= [ {name="QCanvas"} ]
9
9
  description="A canvas client"
10
10
  requires-python=">=3.11,<=3.12"
@@ -102,8 +102,7 @@ if __name__ == '__main__':
102
102
  asyncio.run(begin())
103
103
 
104
104
  app = QApplication(sys.argv)
105
- c = app.palette().base().color()
106
- print(f"{c.red()} {c.green()} {c.blue()}")
105
+
107
106
  qdarktheme.setup_theme("light",
108
107
  custom_colors={"primary": "FF804F"}
109
108
  )
@@ -1,5 +1,7 @@
1
+ import os.path
1
2
  import pathlib
2
3
  import platform
4
+ import re
3
5
  from datetime import datetime
4
6
  from enum import Enum
5
7
  from typing import List, Optional, MutableSequence
@@ -216,8 +218,13 @@ class Resource(MappedAsDataclass, Base, tree.HasText):
216
218
  if platform.system() == "Windows":
217
219
  file_id = file_id.replace(':', '$')
218
220
 
219
- return pathlib.Path("download", f"{file_id}@{self.file_name}")
221
+ file_name, file_extension = os.path.splitext(self.file_name)
220
222
 
223
+ return pathlib.Path("download", self._sanitise_course_name(self.course.name), f"{file_name} [{file_id}]{file_extension}")
224
+
225
+ @staticmethod
226
+ def _sanitise_course_name(name: str) -> str:
227
+ return re.sub("[/\\\\<>:\"?|*]", "_", name)
221
228
 
222
229
  class ModuleItem(MappedAsDataclass, Base, tree.HasText):
223
230
  __tablename__ = "module_items"
File without changes