backlogops-gui 0.1__tar.gz → 0.2__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.
- {backlogops_gui-0.1 → backlogops_gui-0.2}/PKG-INFO +69 -31
- {backlogops_gui-0.1 → backlogops_gui-0.2}/README_pypi.md +66 -29
- {backlogops_gui-0.1 → backlogops_gui-0.2}/backlogops_gui.egg-info/PKG-INFO +69 -31
- {backlogops_gui-0.1 → backlogops_gui-0.2}/backlogops_gui.egg-info/SOURCES.txt +4 -0
- backlogops_gui-0.2/backlogops_gui.egg-info/requires.txt +3 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/pyproject.toml +1 -1
- {backlogops_gui-0.1 → backlogops_gui-0.2}/setup.py +4 -3
- backlogops_gui-0.2/src/backlogops_gui/_migrate_warn.py +53 -0
- backlogops_gui-0.2/src/backlogops_gui/application.py +516 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/backlog_io.py +24 -7
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/backlog_window.py +122 -29
- backlogops_gui-0.2/src/backlogops_gui/blog_version_reporter.py +25 -0
- backlogops_gui-0.2/src/backlogops_gui/gui_style.py +70 -0
- backlogops_gui-0.2/src/backlogops_gui/gui_wizard.py +563 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/io_dialogs.py +241 -10
- backlogops_gui-0.2/src/backlogops_gui/python_version.py +32 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/table_view.py +33 -9
- backlogops_gui-0.1/backlogops_gui.egg-info/requires.txt +0 -2
- backlogops_gui-0.1/src/backlogops_gui/application.py +0 -313
- backlogops_gui-0.1/src/backlogops_gui/gui_wizard.py +0 -237
- {backlogops_gui-0.1 → backlogops_gui-0.2}/LICENSE.txt +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/backlogops_gui.egg-info/dependency_links.txt +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/backlogops_gui.egg-info/entry_points.txt +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/backlogops_gui.egg-info/top_level.txt +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/setup.cfg +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/__init__.py +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/__main__.py +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/log_buffer.py +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/py.typed +0 -0
- {backlogops_gui-0.1 → backlogops_gui-0.2}/src/backlogops_gui/tcltk_version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: backlogops-gui
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2
|
|
4
4
|
Summary: Graphical user interface for backlog operations.
|
|
5
5
|
Author: Tom Björkholm
|
|
6
6
|
Author-email: Tom Björkholm <klausuler_linnet0q@icloud.com>
|
|
@@ -21,8 +21,9 @@ Classifier: Topic :: Office/Business :: Scheduling
|
|
|
21
21
|
Requires-Python: >=3.12
|
|
22
22
|
Description-Content-Type: text/markdown
|
|
23
23
|
License-File: LICENSE.txt
|
|
24
|
-
Requires-Dist: backlogops>=0.
|
|
24
|
+
Requires-Dist: backlogops>=0.2
|
|
25
25
|
Requires-Dist: argcomplete>=3.6.3
|
|
26
|
+
Requires-Dist: versionreporter>=0.3
|
|
26
27
|
Dynamic: author
|
|
27
28
|
Dynamic: license-file
|
|
28
29
|
Dynamic: requires-dist
|
|
@@ -32,16 +33,17 @@ Dynamic: requires-python
|
|
|
32
33
|
|
|
33
34
|
There are 3 related packages for backlog operations:
|
|
34
35
|
|
|
35
|
-
- backlogops
|
|
36
|
+
- **[backlogops](https://pypi.org/project/backlogops/)** a collection of library
|
|
37
|
+
functions to manipulate backlogs
|
|
36
38
|
|
|
37
|
-
- backlogops-cli
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
user to use the library.
|
|
39
|
+
- **[backlogops-cli](https://pypi.org/project/backlogops-cli/)** command line
|
|
40
|
+
interface to use the functions in the library. This is just a thin wrapper
|
|
41
|
+
around the library functions. It serves a dual purpose as both an example of
|
|
42
|
+
how to use the library and as a tool for the user to use the library.
|
|
41
43
|
|
|
42
|
-
- backlogops-gui
|
|
43
|
-
|
|
44
|
-
the library.
|
|
44
|
+
- **[backlogops-gui](https://pypi.org/project/backlogops-gui/)** graphical user
|
|
45
|
+
interface to use the functions in the library. It is based on TkInter. The
|
|
46
|
+
ambition is to keep it as a thin wrapper around the library.
|
|
45
47
|
|
|
46
48
|
## Available functionality
|
|
47
49
|
|
|
@@ -70,6 +72,9 @@ The following functionality is available in all 3 packages:
|
|
|
70
72
|
the key is at a higher level it will bring all items it is a parent of in
|
|
71
73
|
front of it (recursively).
|
|
72
74
|
|
|
75
|
+
- Reorder the backlog in release order, optionally taking dependencies into
|
|
76
|
+
account.
|
|
77
|
+
|
|
73
78
|
- Set planned release dates from the estimated release dates.
|
|
74
79
|
|
|
75
80
|
- Calculate the release dates from the backlog items estimated ready dates, with
|
|
@@ -77,7 +82,23 @@ The following functionality is available in all 3 packages:
|
|
|
77
82
|
|
|
78
83
|
- Validate the backlog and releases for consistency.
|
|
79
84
|
|
|
80
|
-
-
|
|
85
|
+
- Convert a backlog and releases between table file formats.
|
|
86
|
+
|
|
87
|
+
- Order the releases by their planned or estimated date.
|
|
88
|
+
|
|
89
|
+
- Rename columns when reading a file and when writing a file.
|
|
90
|
+
|
|
91
|
+
- Map custom status names in input files to backlog item statuses.
|
|
92
|
+
|
|
93
|
+
- Choose how backlog item levels are written: by number, by name, or both, and
|
|
94
|
+
configure custom level names.
|
|
95
|
+
|
|
96
|
+
- Create stand-alone input or output preset configuration files.
|
|
97
|
+
|
|
98
|
+
- Migrate an older configuration or preset file to the current file format.
|
|
99
|
+
|
|
100
|
+
- A wizard to create a backlog-ops configuration file with the workforce, named
|
|
101
|
+
input and output presets, level names, and status name mapping.
|
|
81
102
|
|
|
82
103
|
## The operating model
|
|
83
104
|
|
|
@@ -95,45 +116,45 @@ availability of the team members.
|
|
|
95
116
|
Each backlog item has the following fields that are used by the algorithms in
|
|
96
117
|
the library:
|
|
97
118
|
|
|
98
|
-
- key
|
|
99
|
-
must not contain whitespace and must not contain any of the characters
|
|
100
|
-
( ) \[ \] \{ \}.
|
|
119
|
+
- `key` The key of the backlog item. Required. Must be unique. Must not be
|
|
120
|
+
empty, must not contain whitespace and must not contain any of the characters
|
|
121
|
+
, . ; : ( ) \[ \] \{ \}.
|
|
101
122
|
|
|
102
|
-
- level
|
|
123
|
+
- `level` The level of the backlog item. Required. Must be an integer.
|
|
103
124
|
|
|
104
|
-
- title
|
|
125
|
+
- `title` The title of the backlog item. Required.
|
|
105
126
|
|
|
106
|
-
- story_points
|
|
127
|
+
- `story_points` The story points of the backlog item. Required.
|
|
107
128
|
|
|
108
|
-
- status
|
|
129
|
+
- `status` The status of the backlog item. Required.
|
|
109
130
|
|
|
110
|
-
- parent_key
|
|
131
|
+
- `parent_key` The key of the parent backlog item. Optional. Must exist as a key
|
|
111
132
|
in the backlog. Parent keys are used to build the hierarchy of the backlog.
|
|
112
133
|
The parent key must be at a higher level than the current item. Parent keys
|
|
113
134
|
introduce implicit dependencies between items: the current item cannot start
|
|
114
135
|
before the parent item starts, and the parent item cannot finish before all
|
|
115
136
|
its children have finished.
|
|
116
137
|
|
|
117
|
-
- release
|
|
118
|
-
rules as the key. Must not be empty string.
|
|
138
|
+
- `release` The release of the backlog item. Optional. Follows the same
|
|
139
|
+
character rules as the key. Must not be empty string.
|
|
119
140
|
|
|
120
|
-
- team
|
|
141
|
+
- `team` The team responsible for the backlog item. Optional. Must not be empty
|
|
121
142
|
string. Must be a valid team name. If None the item can be done by any team.
|
|
122
143
|
If not None. the item can only be done by the specified team.
|
|
123
144
|
|
|
124
|
-
- depends_on_f2s
|
|
145
|
+
- `depends_on_f2s` The list of keys of the backlog items that must have been
|
|
125
146
|
finished before the current item can start. May be empty.
|
|
126
147
|
|
|
127
|
-
- depends_on_f2f
|
|
148
|
+
- `depends_on_f2f` The list of keys of the backlog items that must have been
|
|
128
149
|
finished before the current item can finish. May be empty.
|
|
129
150
|
|
|
130
|
-
- depends_on_s2s
|
|
151
|
+
- `depends_on_s2s` The list of keys of the backlog items that must have been
|
|
131
152
|
started before the current item can start. May be empty.
|
|
132
153
|
|
|
133
|
-
- planned_ready_date
|
|
154
|
+
- `planned_ready_date` The planned ready date of the backlog item. The date that
|
|
134
155
|
is communicated to the customer. Optional.
|
|
135
156
|
|
|
136
|
-
- estimated_ready_date
|
|
157
|
+
- `estimated_ready_date` The estimated ready date of the backlog item. Optional.
|
|
137
158
|
|
|
138
159
|
Additionally each backlog item can have any number of other fields.
|
|
139
160
|
|
|
@@ -214,16 +235,29 @@ is in the menus.
|
|
|
214
235
|
- New demo backlog: Create a demo backlog with some backlog items and
|
|
215
236
|
releases. A new backlog window will be opened with the demo backlog.
|
|
216
237
|
|
|
238
|
+
- Exit: Close the application.
|
|
239
|
+
|
|
217
240
|
- Configuration
|
|
218
241
|
|
|
219
|
-
- Run
|
|
242
|
+
- Run configuration wizard...: this lets you configure the teams that work on
|
|
220
243
|
the backlog and also other aspects like the dates the company is
|
|
221
244
|
closed for vacation, and preset configuration for the inputs or
|
|
222
245
|
outputs you want to use.
|
|
223
246
|
|
|
247
|
+
- Create IO preset file...: Create a stand-alone input or output preset
|
|
248
|
+
configuration file via a wizard.
|
|
249
|
+
|
|
250
|
+
- Migrate IO preset file...: Migrate an older input or output preset
|
|
251
|
+
file to the current file format.
|
|
252
|
+
|
|
224
253
|
- Write configuration...: This lets you write the configuration you
|
|
225
254
|
have in application to a file.
|
|
226
255
|
|
|
256
|
+
- Help
|
|
257
|
+
|
|
258
|
+
- Report version information: Show version information for the
|
|
259
|
+
application and its dependencies.
|
|
260
|
+
|
|
227
261
|
## Backlog window
|
|
228
262
|
|
|
229
263
|
The backlog window shows 2 read-only tables: one with the backlog and
|
|
@@ -235,14 +269,18 @@ one with the list of releases. You will want to use the menus.
|
|
|
235
269
|
|
|
236
270
|
- Order by dependencies...
|
|
237
271
|
|
|
272
|
+
- Order by release order...
|
|
273
|
+
|
|
238
274
|
- Estimate ready date...
|
|
239
275
|
|
|
240
276
|
- Set planned date from estimated
|
|
241
277
|
|
|
242
|
-
- Adjust release content
|
|
278
|
+
- Adjust release content...
|
|
243
279
|
|
|
244
280
|
- Adjust planned release dates...
|
|
245
281
|
|
|
282
|
+
- Order releases by date...
|
|
283
|
+
|
|
246
284
|
- Extract keys...
|
|
247
285
|
|
|
248
286
|
- Save to file...
|
|
@@ -251,9 +289,9 @@ one with the list of releases. You will want to use the menus.
|
|
|
251
289
|
|
|
252
290
|
## Test summary
|
|
253
291
|
|
|
254
|
-
- Test result:
|
|
292
|
+
- Test result: 1545 passed in 32s
|
|
255
293
|
- No flake8 warnings.
|
|
256
294
|
- No mypy errors found.
|
|
257
295
|
- No python layout warnings.
|
|
258
|
-
- Built version(s): 0.
|
|
296
|
+
- Built version(s): 0.2
|
|
259
297
|
- Build and test using Python 3.14.6
|
|
@@ -2,16 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
There are 3 related packages for backlog operations:
|
|
4
4
|
|
|
5
|
-
- backlogops
|
|
5
|
+
- **[backlogops](https://pypi.org/project/backlogops/)** a collection of library
|
|
6
|
+
functions to manipulate backlogs
|
|
6
7
|
|
|
7
|
-
- backlogops-cli
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
user to use the library.
|
|
8
|
+
- **[backlogops-cli](https://pypi.org/project/backlogops-cli/)** command line
|
|
9
|
+
interface to use the functions in the library. This is just a thin wrapper
|
|
10
|
+
around the library functions. It serves a dual purpose as both an example of
|
|
11
|
+
how to use the library and as a tool for the user to use the library.
|
|
11
12
|
|
|
12
|
-
- backlogops-gui
|
|
13
|
-
|
|
14
|
-
the library.
|
|
13
|
+
- **[backlogops-gui](https://pypi.org/project/backlogops-gui/)** graphical user
|
|
14
|
+
interface to use the functions in the library. It is based on TkInter. The
|
|
15
|
+
ambition is to keep it as a thin wrapper around the library.
|
|
15
16
|
|
|
16
17
|
## Available functionality
|
|
17
18
|
|
|
@@ -40,6 +41,9 @@ The following functionality is available in all 3 packages:
|
|
|
40
41
|
the key is at a higher level it will bring all items it is a parent of in
|
|
41
42
|
front of it (recursively).
|
|
42
43
|
|
|
44
|
+
- Reorder the backlog in release order, optionally taking dependencies into
|
|
45
|
+
account.
|
|
46
|
+
|
|
43
47
|
- Set planned release dates from the estimated release dates.
|
|
44
48
|
|
|
45
49
|
- Calculate the release dates from the backlog items estimated ready dates, with
|
|
@@ -47,7 +51,23 @@ The following functionality is available in all 3 packages:
|
|
|
47
51
|
|
|
48
52
|
- Validate the backlog and releases for consistency.
|
|
49
53
|
|
|
50
|
-
-
|
|
54
|
+
- Convert a backlog and releases between table file formats.
|
|
55
|
+
|
|
56
|
+
- Order the releases by their planned or estimated date.
|
|
57
|
+
|
|
58
|
+
- Rename columns when reading a file and when writing a file.
|
|
59
|
+
|
|
60
|
+
- Map custom status names in input files to backlog item statuses.
|
|
61
|
+
|
|
62
|
+
- Choose how backlog item levels are written: by number, by name, or both, and
|
|
63
|
+
configure custom level names.
|
|
64
|
+
|
|
65
|
+
- Create stand-alone input or output preset configuration files.
|
|
66
|
+
|
|
67
|
+
- Migrate an older configuration or preset file to the current file format.
|
|
68
|
+
|
|
69
|
+
- A wizard to create a backlog-ops configuration file with the workforce, named
|
|
70
|
+
input and output presets, level names, and status name mapping.
|
|
51
71
|
|
|
52
72
|
## The operating model
|
|
53
73
|
|
|
@@ -65,45 +85,45 @@ availability of the team members.
|
|
|
65
85
|
Each backlog item has the following fields that are used by the algorithms in
|
|
66
86
|
the library:
|
|
67
87
|
|
|
68
|
-
- key
|
|
69
|
-
must not contain whitespace and must not contain any of the characters
|
|
70
|
-
( ) \[ \] \{ \}.
|
|
88
|
+
- `key` The key of the backlog item. Required. Must be unique. Must not be
|
|
89
|
+
empty, must not contain whitespace and must not contain any of the characters
|
|
90
|
+
, . ; : ( ) \[ \] \{ \}.
|
|
71
91
|
|
|
72
|
-
- level
|
|
92
|
+
- `level` The level of the backlog item. Required. Must be an integer.
|
|
73
93
|
|
|
74
|
-
- title
|
|
94
|
+
- `title` The title of the backlog item. Required.
|
|
75
95
|
|
|
76
|
-
- story_points
|
|
96
|
+
- `story_points` The story points of the backlog item. Required.
|
|
77
97
|
|
|
78
|
-
- status
|
|
98
|
+
- `status` The status of the backlog item. Required.
|
|
79
99
|
|
|
80
|
-
- parent_key
|
|
100
|
+
- `parent_key` The key of the parent backlog item. Optional. Must exist as a key
|
|
81
101
|
in the backlog. Parent keys are used to build the hierarchy of the backlog.
|
|
82
102
|
The parent key must be at a higher level than the current item. Parent keys
|
|
83
103
|
introduce implicit dependencies between items: the current item cannot start
|
|
84
104
|
before the parent item starts, and the parent item cannot finish before all
|
|
85
105
|
its children have finished.
|
|
86
106
|
|
|
87
|
-
- release
|
|
88
|
-
rules as the key. Must not be empty string.
|
|
107
|
+
- `release` The release of the backlog item. Optional. Follows the same
|
|
108
|
+
character rules as the key. Must not be empty string.
|
|
89
109
|
|
|
90
|
-
- team
|
|
110
|
+
- `team` The team responsible for the backlog item. Optional. Must not be empty
|
|
91
111
|
string. Must be a valid team name. If None the item can be done by any team.
|
|
92
112
|
If not None. the item can only be done by the specified team.
|
|
93
113
|
|
|
94
|
-
- depends_on_f2s
|
|
114
|
+
- `depends_on_f2s` The list of keys of the backlog items that must have been
|
|
95
115
|
finished before the current item can start. May be empty.
|
|
96
116
|
|
|
97
|
-
- depends_on_f2f
|
|
117
|
+
- `depends_on_f2f` The list of keys of the backlog items that must have been
|
|
98
118
|
finished before the current item can finish. May be empty.
|
|
99
119
|
|
|
100
|
-
- depends_on_s2s
|
|
120
|
+
- `depends_on_s2s` The list of keys of the backlog items that must have been
|
|
101
121
|
started before the current item can start. May be empty.
|
|
102
122
|
|
|
103
|
-
- planned_ready_date
|
|
123
|
+
- `planned_ready_date` The planned ready date of the backlog item. The date that
|
|
104
124
|
is communicated to the customer. Optional.
|
|
105
125
|
|
|
106
|
-
- estimated_ready_date
|
|
126
|
+
- `estimated_ready_date` The estimated ready date of the backlog item. Optional.
|
|
107
127
|
|
|
108
128
|
Additionally each backlog item can have any number of other fields.
|
|
109
129
|
|
|
@@ -184,16 +204,29 @@ is in the menus.
|
|
|
184
204
|
- New demo backlog: Create a demo backlog with some backlog items and
|
|
185
205
|
releases. A new backlog window will be opened with the demo backlog.
|
|
186
206
|
|
|
207
|
+
- Exit: Close the application.
|
|
208
|
+
|
|
187
209
|
- Configuration
|
|
188
210
|
|
|
189
|
-
- Run
|
|
211
|
+
- Run configuration wizard...: this lets you configure the teams that work on
|
|
190
212
|
the backlog and also other aspects like the dates the company is
|
|
191
213
|
closed for vacation, and preset configuration for the inputs or
|
|
192
214
|
outputs you want to use.
|
|
193
215
|
|
|
216
|
+
- Create IO preset file...: Create a stand-alone input or output preset
|
|
217
|
+
configuration file via a wizard.
|
|
218
|
+
|
|
219
|
+
- Migrate IO preset file...: Migrate an older input or output preset
|
|
220
|
+
file to the current file format.
|
|
221
|
+
|
|
194
222
|
- Write configuration...: This lets you write the configuration you
|
|
195
223
|
have in application to a file.
|
|
196
224
|
|
|
225
|
+
- Help
|
|
226
|
+
|
|
227
|
+
- Report version information: Show version information for the
|
|
228
|
+
application and its dependencies.
|
|
229
|
+
|
|
197
230
|
## Backlog window
|
|
198
231
|
|
|
199
232
|
The backlog window shows 2 read-only tables: one with the backlog and
|
|
@@ -205,14 +238,18 @@ one with the list of releases. You will want to use the menus.
|
|
|
205
238
|
|
|
206
239
|
- Order by dependencies...
|
|
207
240
|
|
|
241
|
+
- Order by release order...
|
|
242
|
+
|
|
208
243
|
- Estimate ready date...
|
|
209
244
|
|
|
210
245
|
- Set planned date from estimated
|
|
211
246
|
|
|
212
|
-
- Adjust release content
|
|
247
|
+
- Adjust release content...
|
|
213
248
|
|
|
214
249
|
- Adjust planned release dates...
|
|
215
250
|
|
|
251
|
+
- Order releases by date...
|
|
252
|
+
|
|
216
253
|
- Extract keys...
|
|
217
254
|
|
|
218
255
|
- Save to file...
|
|
@@ -221,9 +258,9 @@ one with the list of releases. You will want to use the menus.
|
|
|
221
258
|
|
|
222
259
|
## Test summary
|
|
223
260
|
|
|
224
|
-
- Test result:
|
|
261
|
+
- Test result: 1545 passed in 32s
|
|
225
262
|
- No flake8 warnings.
|
|
226
263
|
- No mypy errors found.
|
|
227
264
|
- No python layout warnings.
|
|
228
|
-
- Built version(s): 0.
|
|
265
|
+
- Built version(s): 0.2
|
|
229
266
|
- Build and test using Python 3.14.6
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: backlogops-gui
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2
|
|
4
4
|
Summary: Graphical user interface for backlog operations.
|
|
5
5
|
Author: Tom Björkholm
|
|
6
6
|
Author-email: Tom Björkholm <klausuler_linnet0q@icloud.com>
|
|
@@ -21,8 +21,9 @@ Classifier: Topic :: Office/Business :: Scheduling
|
|
|
21
21
|
Requires-Python: >=3.12
|
|
22
22
|
Description-Content-Type: text/markdown
|
|
23
23
|
License-File: LICENSE.txt
|
|
24
|
-
Requires-Dist: backlogops>=0.
|
|
24
|
+
Requires-Dist: backlogops>=0.2
|
|
25
25
|
Requires-Dist: argcomplete>=3.6.3
|
|
26
|
+
Requires-Dist: versionreporter>=0.3
|
|
26
27
|
Dynamic: author
|
|
27
28
|
Dynamic: license-file
|
|
28
29
|
Dynamic: requires-dist
|
|
@@ -32,16 +33,17 @@ Dynamic: requires-python
|
|
|
32
33
|
|
|
33
34
|
There are 3 related packages for backlog operations:
|
|
34
35
|
|
|
35
|
-
- backlogops
|
|
36
|
+
- **[backlogops](https://pypi.org/project/backlogops/)** a collection of library
|
|
37
|
+
functions to manipulate backlogs
|
|
36
38
|
|
|
37
|
-
- backlogops-cli
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
user to use the library.
|
|
39
|
+
- **[backlogops-cli](https://pypi.org/project/backlogops-cli/)** command line
|
|
40
|
+
interface to use the functions in the library. This is just a thin wrapper
|
|
41
|
+
around the library functions. It serves a dual purpose as both an example of
|
|
42
|
+
how to use the library and as a tool for the user to use the library.
|
|
41
43
|
|
|
42
|
-
- backlogops-gui
|
|
43
|
-
|
|
44
|
-
the library.
|
|
44
|
+
- **[backlogops-gui](https://pypi.org/project/backlogops-gui/)** graphical user
|
|
45
|
+
interface to use the functions in the library. It is based on TkInter. The
|
|
46
|
+
ambition is to keep it as a thin wrapper around the library.
|
|
45
47
|
|
|
46
48
|
## Available functionality
|
|
47
49
|
|
|
@@ -70,6 +72,9 @@ The following functionality is available in all 3 packages:
|
|
|
70
72
|
the key is at a higher level it will bring all items it is a parent of in
|
|
71
73
|
front of it (recursively).
|
|
72
74
|
|
|
75
|
+
- Reorder the backlog in release order, optionally taking dependencies into
|
|
76
|
+
account.
|
|
77
|
+
|
|
73
78
|
- Set planned release dates from the estimated release dates.
|
|
74
79
|
|
|
75
80
|
- Calculate the release dates from the backlog items estimated ready dates, with
|
|
@@ -77,7 +82,23 @@ The following functionality is available in all 3 packages:
|
|
|
77
82
|
|
|
78
83
|
- Validate the backlog and releases for consistency.
|
|
79
84
|
|
|
80
|
-
-
|
|
85
|
+
- Convert a backlog and releases between table file formats.
|
|
86
|
+
|
|
87
|
+
- Order the releases by their planned or estimated date.
|
|
88
|
+
|
|
89
|
+
- Rename columns when reading a file and when writing a file.
|
|
90
|
+
|
|
91
|
+
- Map custom status names in input files to backlog item statuses.
|
|
92
|
+
|
|
93
|
+
- Choose how backlog item levels are written: by number, by name, or both, and
|
|
94
|
+
configure custom level names.
|
|
95
|
+
|
|
96
|
+
- Create stand-alone input or output preset configuration files.
|
|
97
|
+
|
|
98
|
+
- Migrate an older configuration or preset file to the current file format.
|
|
99
|
+
|
|
100
|
+
- A wizard to create a backlog-ops configuration file with the workforce, named
|
|
101
|
+
input and output presets, level names, and status name mapping.
|
|
81
102
|
|
|
82
103
|
## The operating model
|
|
83
104
|
|
|
@@ -95,45 +116,45 @@ availability of the team members.
|
|
|
95
116
|
Each backlog item has the following fields that are used by the algorithms in
|
|
96
117
|
the library:
|
|
97
118
|
|
|
98
|
-
- key
|
|
99
|
-
must not contain whitespace and must not contain any of the characters
|
|
100
|
-
( ) \[ \] \{ \}.
|
|
119
|
+
- `key` The key of the backlog item. Required. Must be unique. Must not be
|
|
120
|
+
empty, must not contain whitespace and must not contain any of the characters
|
|
121
|
+
, . ; : ( ) \[ \] \{ \}.
|
|
101
122
|
|
|
102
|
-
- level
|
|
123
|
+
- `level` The level of the backlog item. Required. Must be an integer.
|
|
103
124
|
|
|
104
|
-
- title
|
|
125
|
+
- `title` The title of the backlog item. Required.
|
|
105
126
|
|
|
106
|
-
- story_points
|
|
127
|
+
- `story_points` The story points of the backlog item. Required.
|
|
107
128
|
|
|
108
|
-
- status
|
|
129
|
+
- `status` The status of the backlog item. Required.
|
|
109
130
|
|
|
110
|
-
- parent_key
|
|
131
|
+
- `parent_key` The key of the parent backlog item. Optional. Must exist as a key
|
|
111
132
|
in the backlog. Parent keys are used to build the hierarchy of the backlog.
|
|
112
133
|
The parent key must be at a higher level than the current item. Parent keys
|
|
113
134
|
introduce implicit dependencies between items: the current item cannot start
|
|
114
135
|
before the parent item starts, and the parent item cannot finish before all
|
|
115
136
|
its children have finished.
|
|
116
137
|
|
|
117
|
-
- release
|
|
118
|
-
rules as the key. Must not be empty string.
|
|
138
|
+
- `release` The release of the backlog item. Optional. Follows the same
|
|
139
|
+
character rules as the key. Must not be empty string.
|
|
119
140
|
|
|
120
|
-
- team
|
|
141
|
+
- `team` The team responsible for the backlog item. Optional. Must not be empty
|
|
121
142
|
string. Must be a valid team name. If None the item can be done by any team.
|
|
122
143
|
If not None. the item can only be done by the specified team.
|
|
123
144
|
|
|
124
|
-
- depends_on_f2s
|
|
145
|
+
- `depends_on_f2s` The list of keys of the backlog items that must have been
|
|
125
146
|
finished before the current item can start. May be empty.
|
|
126
147
|
|
|
127
|
-
- depends_on_f2f
|
|
148
|
+
- `depends_on_f2f` The list of keys of the backlog items that must have been
|
|
128
149
|
finished before the current item can finish. May be empty.
|
|
129
150
|
|
|
130
|
-
- depends_on_s2s
|
|
151
|
+
- `depends_on_s2s` The list of keys of the backlog items that must have been
|
|
131
152
|
started before the current item can start. May be empty.
|
|
132
153
|
|
|
133
|
-
- planned_ready_date
|
|
154
|
+
- `planned_ready_date` The planned ready date of the backlog item. The date that
|
|
134
155
|
is communicated to the customer. Optional.
|
|
135
156
|
|
|
136
|
-
- estimated_ready_date
|
|
157
|
+
- `estimated_ready_date` The estimated ready date of the backlog item. Optional.
|
|
137
158
|
|
|
138
159
|
Additionally each backlog item can have any number of other fields.
|
|
139
160
|
|
|
@@ -214,16 +235,29 @@ is in the menus.
|
|
|
214
235
|
- New demo backlog: Create a demo backlog with some backlog items and
|
|
215
236
|
releases. A new backlog window will be opened with the demo backlog.
|
|
216
237
|
|
|
238
|
+
- Exit: Close the application.
|
|
239
|
+
|
|
217
240
|
- Configuration
|
|
218
241
|
|
|
219
|
-
- Run
|
|
242
|
+
- Run configuration wizard...: this lets you configure the teams that work on
|
|
220
243
|
the backlog and also other aspects like the dates the company is
|
|
221
244
|
closed for vacation, and preset configuration for the inputs or
|
|
222
245
|
outputs you want to use.
|
|
223
246
|
|
|
247
|
+
- Create IO preset file...: Create a stand-alone input or output preset
|
|
248
|
+
configuration file via a wizard.
|
|
249
|
+
|
|
250
|
+
- Migrate IO preset file...: Migrate an older input or output preset
|
|
251
|
+
file to the current file format.
|
|
252
|
+
|
|
224
253
|
- Write configuration...: This lets you write the configuration you
|
|
225
254
|
have in application to a file.
|
|
226
255
|
|
|
256
|
+
- Help
|
|
257
|
+
|
|
258
|
+
- Report version information: Show version information for the
|
|
259
|
+
application and its dependencies.
|
|
260
|
+
|
|
227
261
|
## Backlog window
|
|
228
262
|
|
|
229
263
|
The backlog window shows 2 read-only tables: one with the backlog and
|
|
@@ -235,14 +269,18 @@ one with the list of releases. You will want to use the menus.
|
|
|
235
269
|
|
|
236
270
|
- Order by dependencies...
|
|
237
271
|
|
|
272
|
+
- Order by release order...
|
|
273
|
+
|
|
238
274
|
- Estimate ready date...
|
|
239
275
|
|
|
240
276
|
- Set planned date from estimated
|
|
241
277
|
|
|
242
|
-
- Adjust release content
|
|
278
|
+
- Adjust release content...
|
|
243
279
|
|
|
244
280
|
- Adjust planned release dates...
|
|
245
281
|
|
|
282
|
+
- Order releases by date...
|
|
283
|
+
|
|
246
284
|
- Extract keys...
|
|
247
285
|
|
|
248
286
|
- Save to file...
|
|
@@ -251,9 +289,9 @@ one with the list of releases. You will want to use the menus.
|
|
|
251
289
|
|
|
252
290
|
## Test summary
|
|
253
291
|
|
|
254
|
-
- Test result:
|
|
292
|
+
- Test result: 1545 passed in 32s
|
|
255
293
|
- No flake8 warnings.
|
|
256
294
|
- No mypy errors found.
|
|
257
295
|
- No python layout warnings.
|
|
258
|
-
- Built version(s): 0.
|
|
296
|
+
- Built version(s): 0.2
|
|
259
297
|
- Build and test using Python 3.14.6
|
|
@@ -10,12 +10,16 @@ backlogops_gui.egg-info/requires.txt
|
|
|
10
10
|
backlogops_gui.egg-info/top_level.txt
|
|
11
11
|
src/backlogops_gui/__init__.py
|
|
12
12
|
src/backlogops_gui/__main__.py
|
|
13
|
+
src/backlogops_gui/_migrate_warn.py
|
|
13
14
|
src/backlogops_gui/application.py
|
|
14
15
|
src/backlogops_gui/backlog_io.py
|
|
15
16
|
src/backlogops_gui/backlog_window.py
|
|
17
|
+
src/backlogops_gui/blog_version_reporter.py
|
|
18
|
+
src/backlogops_gui/gui_style.py
|
|
16
19
|
src/backlogops_gui/gui_wizard.py
|
|
17
20
|
src/backlogops_gui/io_dialogs.py
|
|
18
21
|
src/backlogops_gui/log_buffer.py
|
|
19
22
|
src/backlogops_gui/py.typed
|
|
23
|
+
src/backlogops_gui/python_version.py
|
|
20
24
|
src/backlogops_gui/table_view.py
|
|
21
25
|
src/backlogops_gui/tcltk_version.py
|
|
@@ -5,7 +5,7 @@ from setuptools import setup
|
|
|
5
5
|
|
|
6
6
|
setup(
|
|
7
7
|
name='backlogops-gui',
|
|
8
|
-
version='0.
|
|
8
|
+
version='0.2',
|
|
9
9
|
description='Graphical user interface for backlog operations.',
|
|
10
10
|
author='Tom Björkholm',
|
|
11
11
|
author_email='klausuler_linnet0q@icloud.com',
|
|
@@ -19,7 +19,8 @@ setup(
|
|
|
19
19
|
]
|
|
20
20
|
},
|
|
21
21
|
install_requires=[
|
|
22
|
-
'backlogops >= 0.
|
|
23
|
-
'argcomplete >= 3.6.3'
|
|
22
|
+
'backlogops >= 0.2',
|
|
23
|
+
'argcomplete >= 3.6.3',
|
|
24
|
+
'versionreporter >= 0.3'
|
|
24
25
|
]
|
|
25
26
|
)
|