uis-sprint-report 0.1.7__tar.gz → 2026.1.201651__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 (23) hide show
  1. {uis-sprint-report-0.1.7/uis_sprint_report.egg-info → uis_sprint_report-2026.1.201651}/PKG-INFO +31 -5
  2. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/README.md +3 -3
  3. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/demo.py +12 -10
  4. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/setup.py +4 -2
  5. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651/uis_sprint_report.egg-info}/PKG-INFO +31 -5
  6. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/uis_sprint_report.egg-info/requires.txt +2 -0
  7. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/LICENSE +0 -0
  8. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/__init__.py +0 -0
  9. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/config.py +0 -0
  10. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/embeddings.py +0 -0
  11. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/main.py +0 -0
  12. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/models.py +0 -0
  13. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/prompts.py +0 -0
  14. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/demo/utils.py +0 -0
  15. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/setup.cfg +0 -0
  16. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/tests/__init__.py +0 -0
  17. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/tests/test_demo.py +0 -0
  18. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/tests/test_embeddings.py +0 -0
  19. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/tests/test_utils.py +0 -0
  20. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/uis_sprint_report.egg-info/SOURCES.txt +0 -0
  21. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/uis_sprint_report.egg-info/dependency_links.txt +0 -0
  22. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/uis_sprint_report.egg-info/entry_points.txt +0 -0
  23. {uis-sprint-report-0.1.7 → uis_sprint_report-2026.1.201651}/uis_sprint_report.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: uis-sprint-report
3
- Version: 0.1.7
3
+ Version: 2026.1.201651
4
4
  Summary: A Python package for generating sprint reports and managing sprint activities at University Information Services.
5
5
  Home-page: https://gitlab.developers.cam.ac.uk/ee345/demo
6
6
  Author: Eugene Evstafev
@@ -13,6 +13,32 @@ Classifier: Operating System :: OS Independent
13
13
  Requires-Python: >=3.7
14
14
  Description-Content-Type: text/markdown
15
15
  License-File: LICENSE
16
+ Requires-Dist: click>=8.1.7
17
+ Requires-Dist: rich>=13.7.1
18
+ Requires-Dist: python-pptx>=0.6.23
19
+ Requires-Dist: huggingface-hub==0.23.4
20
+ Requires-Dist: langchain==0.2.6
21
+ Requires-Dist: langchain-community==0.2.6
22
+ Requires-Dist: langchain-core==0.2.10
23
+ Requires-Dist: langchain-huggingface==0.0.3
24
+ Requires-Dist: langchain-text-splitters==0.2.2
25
+ Requires-Dist: faiss-cpu>=1.8.0
26
+ Requires-Dist: pydantic>=2.7.4
27
+ Requires-Dist: scikit-learn>=0.24.1
28
+ Requires-Dist: torch>=1.9.0
29
+ Requires-Dist: transformers>=4.42.3
30
+ Requires-Dist: ollama==0.2.1
31
+ Requires-Dist: get-gitlab-issues
32
+ Dynamic: author
33
+ Dynamic: author-email
34
+ Dynamic: classifier
35
+ Dynamic: description
36
+ Dynamic: description-content-type
37
+ Dynamic: home-page
38
+ Dynamic: license-file
39
+ Dynamic: requires-dist
40
+ Dynamic: requires-python
41
+ Dynamic: summary
16
42
 
17
43
  [![PyPI version](https://badge.fury.io/py/uis-sprint-report.svg)](https://badge.fury.io/py/uis-sprint-report)
18
44
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
@@ -30,7 +56,7 @@ To install `UIS Sprint Report`, you can use pip:
30
56
  pip install uis-sprint-report
31
57
  ```
32
58
 
33
- Ensure that the Ollama local model server is running and that you have downloaded the necessary models locally before running this command-line tool.
59
+ Ensure that the [Ollama](https://ollama.com/) local model server is running and that you have downloaded the necessary models locally before running this command-line tool.
34
60
 
35
61
  ## Usage
36
62
 
@@ -39,7 +65,7 @@ The tool is intended to be run with various commands based on the required opera
39
65
  ### Command-Line Interface
40
66
 
41
67
  ```bash
42
- uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "Goal 1; Goal 2"
68
+ uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "Goal 1; Goal 2" --iteration-id=952
43
69
  ```
44
70
 
45
71
  ### Input Parameters
@@ -48,7 +74,7 @@ uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "G
48
74
  - `--access-token` (`str`): Access token for API authentication.
49
75
  - `--command` (`str`): Command to execute. Options are `"report"`, `"pptx"`, or `"chat"`.
50
76
  - `--group-id` (`int`): GitLab group ID. Default is `5`.
51
- - `--iteration-id` (`int`): Iteration ID within the group. Default is `383`.
77
+ - `--iteration-id` (`int`): [Iteration ID](https://gitlab.developers.cam.ac.uk/groups/uis/devops/-/cadences/) within the group. Default is `383`.
52
78
  - `--labels` (`str`): Labels to filter the issues. Default is `"team::Identity"`.
53
79
  - `--model` (`str`): Ollama model to use. Default is `"mistral:latest"`.
54
80
  - `--cache-file` (`str`): Path to the cache file. Default is `".cache"`.
@@ -14,7 +14,7 @@ To install `UIS Sprint Report`, you can use pip:
14
14
  pip install uis-sprint-report
15
15
  ```
16
16
 
17
- Ensure that the Ollama local model server is running and that you have downloaded the necessary models locally before running this command-line tool.
17
+ Ensure that the [Ollama](https://ollama.com/) local model server is running and that you have downloaded the necessary models locally before running this command-line tool.
18
18
 
19
19
  ## Usage
20
20
 
@@ -23,7 +23,7 @@ The tool is intended to be run with various commands based on the required opera
23
23
  ### Command-Line Interface
24
24
 
25
25
  ```bash
26
- uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "Goal 1; Goal 2"
26
+ uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "Goal 1; Goal 2" --iteration-id=952
27
27
  ```
28
28
 
29
29
  ### Input Parameters
@@ -32,7 +32,7 @@ uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "G
32
32
  - `--access-token` (`str`): Access token for API authentication.
33
33
  - `--command` (`str`): Command to execute. Options are `"report"`, `"pptx"`, or `"chat"`.
34
34
  - `--group-id` (`int`): GitLab group ID. Default is `5`.
35
- - `--iteration-id` (`int`): Iteration ID within the group. Default is `383`.
35
+ - `--iteration-id` (`int`): [Iteration ID](https://gitlab.developers.cam.ac.uk/groups/uis/devops/-/cadences/) within the group. Default is `383`.
36
36
  - `--labels` (`str`): Labels to filter the issues. Default is `"team::Identity"`.
37
37
  - `--model` (`str`): Ollama model to use. Default is `"mistral:latest"`.
38
38
  - `--cache-file` (`str`): Path to the cache file. Default is `".cache"`.
@@ -96,17 +96,18 @@ def get_report(llm, embeddings, max_attempts, sprint_goals=None):
96
96
  return report
97
97
 
98
98
 
99
- def report(llm, embeddings, max_attempts):
99
+ def report(llm, embeddings, sprint_goals, max_attempts):
100
100
  """
101
101
  Prints a sprint report in a rich formatted table.
102
102
 
103
103
  Parameters:
104
104
  llm (ChatOllama): Language model for processing.
105
105
  embeddings (any): Embeddings of sprint data.
106
+ sprint_goals (str): Sprint goals to include in the report.
106
107
  max_attempts (int): Maximum number of attempts for generating the report.
107
108
  """
108
109
  print("[bold]Generating report...[/bold]")
109
- report = get_report(llm, embeddings, max_attempts)
110
+ report = get_report(llm, embeddings, max_attempts, sprint_goals)
110
111
 
111
112
  table = Table(title="Sprint Activities Report")
112
113
 
@@ -125,16 +126,16 @@ def report(llm, embeddings, max_attempts):
125
126
  print(table)
126
127
 
127
128
 
128
- def pptx(llm, embeddings, max_attempts, sprint_goals, pptx_file_name):
129
+ def pptx(llm, embeddings, sprint_goals, pptx_file_name, max_attempts):
129
130
  """
130
131
  Generates a PowerPoint presentation from sprint report data.
131
132
 
132
133
  Parameters:
133
134
  llm (ChatOllama): Language model used for generating the report.
134
135
  embeddings (any): Embeddings containing sprint data.
135
- max_attempts (int): Maximum number of attempts for data retrieval.
136
136
  sprint_goals (str): Sprint goals to include in the report.
137
137
  pptx_file_name (str): File name for the generated PowerPoint presentation.
138
+ max_attempts (int): Maximum number of attempts for data retrieval.
138
139
  """
139
140
  report = get_report(llm, embeddings, max_attempts, sprint_goals)
140
141
 
@@ -156,13 +157,14 @@ def pptx(llm, embeddings, max_attempts, sprint_goals, pptx_file_name):
156
157
  print("[green]✅ PowerPoint report generated[/green]")
157
158
 
158
159
 
159
- def chat(llm, embeddings, max_attempts):
160
+ def chat(llm, embeddings, sprint_goals, max_attempts):
160
161
  """
161
162
  Conducts a chat session where users can interactively query sprint status.
162
163
 
163
164
  Parameters:
164
165
  llm (ChatOllama): Language model for processing chat queries.
165
166
  embeddings (any): Data retriever for sprint activities.
167
+ sprint_goals (str): Sprint goals to include in the chat session.
166
168
  max_attempts (int): Maximum number of attempts for responding to each query.
167
169
  """
168
170
  is_end = False
@@ -175,7 +177,7 @@ def chat(llm, embeddings, max_attempts):
175
177
  chain = prepare_chain(llm, embeddings, ResponseModel)
176
178
  response = invoke_chain(
177
179
  chain,
178
- user_input + "\n" + prompts['chat']['question'],
180
+ user_input + "\n" + prompts['chat']['question'] + "\n Sprint goals were: " + sprint_goals,
179
181
  max_attempts
180
182
  )
181
183
  print(f"Bot: {response}")
@@ -199,11 +201,11 @@ def execute_command(command, embeddings, model, max_tokens, max_attempts, sprint
199
201
  """
200
202
  llm = ChatOllama(model=model, max_tokens=max_tokens)
201
203
  if command == "report":
202
- report(llm, embeddings, max_attempts)
204
+ report(llm, embeddings, sprint_goals, max_attempts)
203
205
  elif command == "pptx":
204
- pptx(llm, embeddings, max_attempts, sprint_goals, pptx_file_name)
206
+ pptx(llm, embeddings, sprint_goals, pptx_file_name, max_attempts)
205
207
  elif command == "chat":
206
- chat(llm, embeddings, max_attempts)
208
+ chat(llm, embeddings, sprint_goals, max_attempts)
207
209
  else:
208
210
  print("Invalid command")
209
- raise Exception("Invalid command")
211
+ raise Exception("Invalid command")
@@ -3,7 +3,7 @@ from setuptools import setup, find_packages
3
3
 
4
4
  setup(
5
5
  name='uis-sprint-report',
6
- version='0.1.7',
6
+ version='2026.01.201651',
7
7
  author='Eugene Evstafev',
8
8
  author_email='ee345@cam.ac.uk',
9
9
  description='A Python package for generating sprint reports and managing sprint activities at University Information Services.',
@@ -25,7 +25,9 @@ setup(
25
25
  'pydantic>=2.7.4',
26
26
  'scikit-learn>=0.24.1',
27
27
  'torch>=1.9.0',
28
- 'transformers>=4.42.3'
28
+ 'transformers>=4.42.3',
29
+ 'ollama==0.2.1',
30
+ 'get-gitlab-issues'
29
31
  ],
30
32
  entry_points={
31
33
  'console_scripts': [
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: uis-sprint-report
3
- Version: 0.1.7
3
+ Version: 2026.1.201651
4
4
  Summary: A Python package for generating sprint reports and managing sprint activities at University Information Services.
5
5
  Home-page: https://gitlab.developers.cam.ac.uk/ee345/demo
6
6
  Author: Eugene Evstafev
@@ -13,6 +13,32 @@ Classifier: Operating System :: OS Independent
13
13
  Requires-Python: >=3.7
14
14
  Description-Content-Type: text/markdown
15
15
  License-File: LICENSE
16
+ Requires-Dist: click>=8.1.7
17
+ Requires-Dist: rich>=13.7.1
18
+ Requires-Dist: python-pptx>=0.6.23
19
+ Requires-Dist: huggingface-hub==0.23.4
20
+ Requires-Dist: langchain==0.2.6
21
+ Requires-Dist: langchain-community==0.2.6
22
+ Requires-Dist: langchain-core==0.2.10
23
+ Requires-Dist: langchain-huggingface==0.0.3
24
+ Requires-Dist: langchain-text-splitters==0.2.2
25
+ Requires-Dist: faiss-cpu>=1.8.0
26
+ Requires-Dist: pydantic>=2.7.4
27
+ Requires-Dist: scikit-learn>=0.24.1
28
+ Requires-Dist: torch>=1.9.0
29
+ Requires-Dist: transformers>=4.42.3
30
+ Requires-Dist: ollama==0.2.1
31
+ Requires-Dist: get-gitlab-issues
32
+ Dynamic: author
33
+ Dynamic: author-email
34
+ Dynamic: classifier
35
+ Dynamic: description
36
+ Dynamic: description-content-type
37
+ Dynamic: home-page
38
+ Dynamic: license-file
39
+ Dynamic: requires-dist
40
+ Dynamic: requires-python
41
+ Dynamic: summary
16
42
 
17
43
  [![PyPI version](https://badge.fury.io/py/uis-sprint-report.svg)](https://badge.fury.io/py/uis-sprint-report)
18
44
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
@@ -30,7 +56,7 @@ To install `UIS Sprint Report`, you can use pip:
30
56
  pip install uis-sprint-report
31
57
  ```
32
58
 
33
- Ensure that the Ollama local model server is running and that you have downloaded the necessary models locally before running this command-line tool.
59
+ Ensure that the [Ollama](https://ollama.com/) local model server is running and that you have downloaded the necessary models locally before running this command-line tool.
34
60
 
35
61
  ## Usage
36
62
 
@@ -39,7 +65,7 @@ The tool is intended to be run with various commands based on the required opera
39
65
  ### Command-Line Interface
40
66
 
41
67
  ```bash
42
- uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "Goal 1; Goal 2"
68
+ uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "Goal 1; Goal 2" --iteration-id=952
43
69
  ```
44
70
 
45
71
  ### Input Parameters
@@ -48,7 +74,7 @@ uis-sprint-report --access-token "YOUR_TOKEN" --command "pptx" --sprint-goals "G
48
74
  - `--access-token` (`str`): Access token for API authentication.
49
75
  - `--command` (`str`): Command to execute. Options are `"report"`, `"pptx"`, or `"chat"`.
50
76
  - `--group-id` (`int`): GitLab group ID. Default is `5`.
51
- - `--iteration-id` (`int`): Iteration ID within the group. Default is `383`.
77
+ - `--iteration-id` (`int`): [Iteration ID](https://gitlab.developers.cam.ac.uk/groups/uis/devops/-/cadences/) within the group. Default is `383`.
52
78
  - `--labels` (`str`): Labels to filter the issues. Default is `"team::Identity"`.
53
79
  - `--model` (`str`): Ollama model to use. Default is `"mistral:latest"`.
54
80
  - `--cache-file` (`str`): Path to the cache file. Default is `".cache"`.
@@ -12,3 +12,5 @@ pydantic>=2.7.4
12
12
  scikit-learn>=0.24.1
13
13
  torch>=1.9.0
14
14
  transformers>=4.42.3
15
+ ollama==0.2.1
16
+ get-gitlab-issues