taskdog-server 0.28.0__tar.gz → 0.28.1__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.
Files changed (44) hide show
  1. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/PKG-INFO +2 -2
  2. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/pyproject.toml +2 -2
  3. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/analytics.py +28 -4
  4. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server.egg-info/PKG-INFO +2 -2
  5. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server.egg-info/requires.txt +1 -1
  6. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/README.md +0 -0
  7. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/setup.cfg +0 -0
  8. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/__init__.py +0 -0
  9. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/__init__.py +0 -0
  10. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/app.py +0 -0
  11. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/audit_helpers.py +0 -0
  12. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/context.py +0 -0
  13. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/dependencies.py +0 -0
  14. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/error_handlers.py +0 -0
  15. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/middleware.py +0 -0
  16. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/models/__init__.py +0 -0
  17. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/models/requests.py +0 -0
  18. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/models/responses.py +0 -0
  19. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/__init__.py +0 -0
  20. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/audit.py +0 -0
  21. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/backup.py +0 -0
  22. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/bulk.py +0 -0
  23. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/lifecycle.py +0 -0
  24. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/notes.py +0 -0
  25. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/relationships.py +0 -0
  26. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/tags.py +0 -0
  27. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/tasks.py +0 -0
  28. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/routers/websocket.py +0 -0
  29. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/utils.py +0 -0
  30. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/api/validators.py +0 -0
  31. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/config/__init__.py +0 -0
  32. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/config/server_config_manager.py +0 -0
  33. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/infrastructure/__init__.py +0 -0
  34. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/infrastructure/logging/__init__.py +0 -0
  35. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/infrastructure/logging/config.py +0 -0
  36. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/main.py +0 -0
  37. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/py.typed +0 -0
  38. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/websocket/__init__.py +0 -0
  39. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/websocket/broadcaster.py +0 -0
  40. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server/websocket/connection_manager.py +0 -0
  41. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server.egg-info/SOURCES.txt +0 -0
  42. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server.egg-info/dependency_links.txt +0 -0
  43. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server.egg-info/entry_points.txt +0 -0
  44. {taskdog_server-0.28.0 → taskdog_server-0.28.1}/src/taskdog_server.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: taskdog-server
3
- Version: 0.28.0
3
+ Version: 0.28.1
4
4
  Summary: FastAPI server for Taskdog task management system
5
5
  Author: Kohei Wada
6
6
  License: MIT
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.12
15
15
  Classifier: Programming Language :: Python :: 3.13
16
16
  Requires-Python: >=3.12
17
17
  Description-Content-Type: text/markdown
18
- Requires-Dist: taskdog-core==0.28.0
18
+ Requires-Dist: taskdog-core==0.28.1
19
19
  Requires-Dist: fastapi>=0.141.1
20
20
  Requires-Dist: uvicorn[standard]>=0.52.3
21
21
  Requires-Dist: pydantic>=2.10.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "taskdog-server"
3
- version = "0.28.0"
3
+ version = "0.28.1"
4
4
  description = "FastAPI server for Taskdog task management system"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"
@@ -18,7 +18,7 @@ classifiers = [
18
18
  ]
19
19
 
20
20
  dependencies = [
21
- "taskdog-core==0.28.0",
21
+ "taskdog-core==0.28.1",
22
22
  "fastapi>=0.141.1",
23
23
  "uvicorn[standard]>=0.52.3",
24
24
  "pydantic>=2.10.0",
@@ -237,11 +237,25 @@ def get_gantt_chart(
237
237
  tags: Annotated[
238
238
  list[str] | None, Query(description="Filter by tags (OR logic)")
239
239
  ] = None,
240
+ filter_start_date: Annotated[
241
+ str | None, Query(description="Task filter start date (ISO format)")
242
+ ] = None,
243
+ filter_end_date: Annotated[
244
+ str | None, Query(description="Task filter end date (ISO format)")
245
+ ] = None,
240
246
  start_date: Annotated[
241
- str | None, Query(description="Chart start date (ISO format)")
247
+ str | None,
248
+ Query(
249
+ description="Chart start date (ISO format). "
250
+ "Filters tasks when no task filter dates are given."
251
+ ),
242
252
  ] = None,
243
253
  end_date: Annotated[
244
- str | None, Query(description="Chart end date (ISO format)")
254
+ str | None,
255
+ Query(
256
+ description="Chart end date (ISO format). "
257
+ "Filters tasks when no task filter dates are given."
258
+ ),
245
259
  ] = None,
246
260
  sort: Annotated[str, Query(description="Sort field")] = "deadline",
247
261
  reverse: Annotated[bool, Query(description="Reverse sort order")] = False,
@@ -251,12 +265,16 @@ def get_gantt_chart(
251
265
  Returns the shared task list plus the Gantt overlay (daily hours, workload,
252
266
  holidays); clients join them by task id.
253
267
 
268
+ Without task filter dates, chart dates also filter tasks.
269
+
254
270
  Args:
255
271
  controller: Query controller dependency
256
272
  holiday_checker: Holiday checker dependency
257
273
  include_archived: Include archived tasks
258
274
  status_filter: Filter by task status
259
275
  tags: Filter by tags (OR logic)
276
+ filter_start_date: Task filter start date
277
+ filter_end_date: Task filter end date
260
278
  start_date: Chart start date
261
279
  end_date: Chart end date
262
280
  sort: Sort field name
@@ -268,14 +286,20 @@ def get_gantt_chart(
268
286
  # Parse date strings to date objects
269
287
  start = parse_iso_date(start_date)
270
288
  end = parse_iso_date(end_date)
289
+ if filter_start_date is None and filter_end_date is None:
290
+ task_start = start
291
+ task_end = end
292
+ else:
293
+ task_start = parse_iso_date(filter_start_date)
294
+ task_end = parse_iso_date(filter_end_date)
271
295
 
272
296
  # Create Input DTO (filter building is done in Use Case)
273
297
  input_dto = ListTasksInput(
274
298
  include_archived=include_archived,
275
299
  status=status_filter,
276
300
  tags=tags or [],
277
- start_date=start,
278
- end_date=end,
301
+ start_date=task_start,
302
+ end_date=task_end,
279
303
  sort_by=sort,
280
304
  reverse=reverse,
281
305
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: taskdog-server
3
- Version: 0.28.0
3
+ Version: 0.28.1
4
4
  Summary: FastAPI server for Taskdog task management system
5
5
  Author: Kohei Wada
6
6
  License: MIT
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.12
15
15
  Classifier: Programming Language :: Python :: 3.13
16
16
  Requires-Python: >=3.12
17
17
  Description-Content-Type: text/markdown
18
- Requires-Dist: taskdog-core==0.28.0
18
+ Requires-Dist: taskdog-core==0.28.1
19
19
  Requires-Dist: fastapi>=0.141.1
20
20
  Requires-Dist: uvicorn[standard]>=0.52.3
21
21
  Requires-Dist: pydantic>=2.10.0
@@ -1,4 +1,4 @@
1
- taskdog-core==0.28.0
1
+ taskdog-core==0.28.1
2
2
  fastapi>=0.141.1
3
3
  uvicorn[standard]>=0.52.3
4
4
  pydantic>=2.10.0