pyvikunja 0.4__py3-none-any.whl → 0.6__py3-none-any.whl

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.
pyvikunja/api.py CHANGED
@@ -3,10 +3,10 @@ from typing import List, Dict, Any, Optional
3
3
 
4
4
  import httpx
5
5
 
6
- from models.label import Label
7
- from models.project import Project
8
- from models.task import Task
9
- from models.team import Team
6
+ from pyvikunja.models.label import Label
7
+ from pyvikunja.models.project import Project
8
+ from pyvikunja.models.task import Task
9
+ from pyvikunja.models.team import Team
10
10
 
11
11
  # Configure logging
12
12
  logging.basicConfig(level=logging.INFO)
pyvikunja/models/label.py CHANGED
@@ -5,7 +5,7 @@ from pyvikunja.models.models import BaseModel
5
5
 
6
6
  class Label(BaseModel):
7
7
  def __init__(self, data: Dict):
8
- from pyvikunja.models.models import User
8
+ from pyvikunja.models.user import User
9
9
 
10
10
  super().__init__(data)
11
11
  self.title: str = data.get('title', '')
@@ -3,10 +3,9 @@ from typing import Dict, Optional, List
3
3
  from pyvikunja.models.models import BaseModel
4
4
 
5
5
 
6
-
7
6
  class Project(BaseModel):
8
7
  def __init__(self, api: 'VikunjaAPI', data: Dict):
9
- from pyvikunja.models.models import User
8
+ from pyvikunja.models.user import User
10
9
 
11
10
  super().__init__(data)
12
11
  self.api = api
@@ -20,7 +19,7 @@ class Project(BaseModel):
20
19
  return await self.api.get_tasks(self.id, page, per_page)
21
20
 
22
21
  async def create_task(self, task: Dict) -> 'Task':
23
- from pyvikunja.models.models import Task
22
+ from pyvikunja.models.task import Task
24
23
  task_data = await self.api.create_task(self.id, task)
25
24
  return Task(self.api, task_data)
26
25
 
@@ -29,4 +28,4 @@ class Project(BaseModel):
29
28
  return Project(self.api, updated_data)
30
29
 
31
30
  async def delete(self) -> Dict:
32
- return await self.api.delete_project(self.id)
31
+ return await self.api.delete_project(self.id)
pyvikunja/models/task.py CHANGED
@@ -1,15 +1,15 @@
1
- from datetime import datetime, timedelta
1
+ from datetime import datetime, timedelta, timezone
2
2
  from typing import Dict, Optional, List
3
3
 
4
- from pyvikunja.models.models import RepeatMode
5
- from pyvikunja.models.models import Priority
4
+ from pyvikunja.models.enum.repeat_mode import RepeatMode
5
+ from pyvikunja.models.enum.task_priority import Priority
6
+ from pyvikunja.models.label import Label
6
7
  from pyvikunja.models.models import BaseModel
8
+ from pyvikunja.models.user import User
7
9
 
8
10
 
9
11
  class Task(BaseModel):
10
12
  def __init__(self, api: 'VikunjaAPI', data: Dict):
11
- from pyvikunja.models.models import Label
12
- from pyvikunja.models.models import User
13
13
 
14
14
  super().__init__(data)
15
15
  self.api = api
@@ -72,17 +72,26 @@ class Task(BaseModel):
72
72
 
73
73
  async def set_due_date(self, date: datetime) -> 'Task':
74
74
  # Set the task's due date in ISO format
75
- iso_date = date.isoformat() + "Z"
75
+ if date.tzinfo is None:
76
+ date = date.replace(tzinfo=timezone.utc)
77
+
78
+ iso_date = str(date.isoformat())
76
79
  return await self.update({'due_date': iso_date})
77
80
 
78
81
  async def set_start_date(self, date: datetime) -> 'Task':
79
82
  # Set the task's start date in ISO format
80
- iso_date = date.isoformat() + "Z"
83
+ if date.tzinfo is None:
84
+ date = date.replace(tzinfo=timezone.utc)
85
+
86
+ iso_date = str(date.isoformat())
81
87
  return await self.update({'start_date': iso_date})
82
88
 
83
89
  async def set_end_date(self, date: datetime) -> 'Task':
84
90
  # Set the task's end date in ISO format
85
- iso_date = date.isoformat() + "Z"
91
+ if date.tzinfo is None:
92
+ date = date.replace(tzinfo=timezone.utc)
93
+
94
+ iso_date = str(date.isoformat())
86
95
  return await self.update({'end_date': iso_date})
87
96
 
88
97
  async def set_repeating_interval(self, interval: timedelta, mode: RepeatMode = RepeatMode.DEFAULT) -> 'Task':
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pyvikunja
3
- Version: 0.4
3
+ Version: 0.6
4
4
  Summary: A Python wrapper for Vikunja API
5
5
  Author: Joseph Shufflebotham
6
6
  License: AGPL
@@ -0,0 +1,15 @@
1
+ pyvikunja/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ pyvikunja/api.py,sha256=z7VIeSbJwyDo5N9TZdo-uxQG8sYp2PWzN8PgYOz3Cek,5184
3
+ pyvikunja/models/label.py,sha256=cOOuVYDVDMmK96Ev22EDgWwXljkAonQNL4XsTMay4K4,467
4
+ pyvikunja/models/models.py,sha256=RCPsYQtcgE-W5ZmhwGDejAI76nHZ9-1X-x5GeTG4RnI,637
5
+ pyvikunja/models/project.py,sha256=viVIe3lVgbh7k05ADDds1cwzvC1vf4tT2vSNjbB7KMk,1179
6
+ pyvikunja/models/task.py,sha256=wsJcfb3M2YdOKITE8jgku4mdAnL8q21HNdupptXWsyM,4442
7
+ pyvikunja/models/team.py,sha256=0Z3828Cm3nNuNr1z2on63fLYAVW325_SQKi5RmqXf-I,559
8
+ pyvikunja/models/user.py,sha256=36duFNyGXKzlwqO0d6FA-C1KTCci2sIMU1IBIF-N_LM,310
9
+ pyvikunja/models/enum/repeat_mode.py,sha256=T0cOJcCYJjewZ9dQ41cEFYmOEEfW73cM4xxNYmH8y6s,106
10
+ pyvikunja/models/enum/task_priority.py,sha256=aVz1HEofIqwUkXG0vYm58n_vLNbgqtbvHuQ5K-YQqA0,119
11
+ pyvikunja-0.6.dist-info/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
12
+ pyvikunja-0.6.dist-info/METADATA,sha256=p6D5FwmWAS4HSFTJGee2oe2ePVegwH_Is9uqpEohzh0,187
13
+ pyvikunja-0.6.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
14
+ pyvikunja-0.6.dist-info/top_level.txt,sha256=WVV9zgxUBuWOkUY1t_U7zI0paWWTVelKYB4vjsiKsks,10
15
+ pyvikunja-0.6.dist-info/RECORD,,
@@ -1,15 +0,0 @@
1
- pyvikunja/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- pyvikunja/api.py,sha256=sHO7m8nFyUd0qefLE4blniLZSDkCDsddw7vdDd9XFZA,5144
3
- pyvikunja/models/label.py,sha256=bQfla6uNDrTrRCLieVJ7TIBod9Q9xyKFXycQugqUWdA,469
4
- pyvikunja/models/models.py,sha256=RCPsYQtcgE-W5ZmhwGDejAI76nHZ9-1X-x5GeTG4RnI,637
5
- pyvikunja/models/project.py,sha256=WwcvsrUbmnTa9Vys4TbZvDnigbRY_IZainvelqXAQNQ,1183
6
- pyvikunja/models/task.py,sha256=QsKIzmix7htIBNeCEu-YmBcdW2aoLLSqY54gyAIHxrY,4174
7
- pyvikunja/models/team.py,sha256=0Z3828Cm3nNuNr1z2on63fLYAVW325_SQKi5RmqXf-I,559
8
- pyvikunja/models/user.py,sha256=36duFNyGXKzlwqO0d6FA-C1KTCci2sIMU1IBIF-N_LM,310
9
- pyvikunja/models/enum/repeat_mode.py,sha256=T0cOJcCYJjewZ9dQ41cEFYmOEEfW73cM4xxNYmH8y6s,106
10
- pyvikunja/models/enum/task_priority.py,sha256=aVz1HEofIqwUkXG0vYm58n_vLNbgqtbvHuQ5K-YQqA0,119
11
- pyvikunja-0.4.dist-info/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
12
- pyvikunja-0.4.dist-info/METADATA,sha256=WDQCKycsCuGloIgPQqiRBg7sYTfUlqL6HGAeFV57pww,187
13
- pyvikunja-0.4.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
14
- pyvikunja-0.4.dist-info/top_level.txt,sha256=WVV9zgxUBuWOkUY1t_U7zI0paWWTVelKYB4vjsiKsks,10
15
- pyvikunja-0.4.dist-info/RECORD,,