backlogops 0.3__tar.gz → 0.4__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 (71) hide show
  1. {backlogops-0.3 → backlogops-0.4}/PKG-INFO +17 -5
  2. {backlogops-0.3 → backlogops-0.4}/README_pypi.md +14 -2
  3. {backlogops-0.3 → backlogops-0.4}/backlogops.egg-info/PKG-INFO +17 -5
  4. {backlogops-0.3 → backlogops-0.4}/backlogops.egg-info/SOURCES.txt +4 -0
  5. {backlogops-0.3 → backlogops-0.4}/backlogops.egg-info/requires.txt +1 -1
  6. {backlogops-0.3 → backlogops-0.4}/pyproject.toml +2 -3
  7. {backlogops-0.3 → backlogops-0.4}/setup.py +2 -2
  8. backlogops-0.4/src/backlogops/__init__.py +159 -0
  9. {backlogops-0.3 → backlogops-0.4}/src/backlogops/backlog_ops_config.py +6 -2
  10. backlogops-0.4/src/backlogops/backlog_ops_wizard.py +498 -0
  11. backlogops-0.4/src/backlogops/config_file_io.py +139 -0
  12. {backlogops-0.3 → backlogops-0.4}/src/backlogops/estimate_ready_date.py +5 -3
  13. backlogops-0.4/src/backlogops/io_preset_wizard.py +195 -0
  14. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_io_config.py +2 -2
  15. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_read.py +49 -4
  16. backlogops-0.4/src/backlogops/jira_search.py +88 -0
  17. backlogops-0.4/src/backlogops/jira_token.py +177 -0
  18. backlogops-0.4/src/backlogops/jira_wizard.py +482 -0
  19. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_write.py +2 -1
  20. {backlogops-0.3 → backlogops-0.4}/src/backlogops/team.py +4 -3
  21. backlogops-0.4/src/backlogops/wizard_forms.py +506 -0
  22. {backlogops-0.3 → backlogops-0.4}/src/backlogops/wizard_helpers.py +310 -426
  23. backlogops-0.4/src/backlogops/wizard_navigator.py +416 -0
  24. backlogops-0.3/src/backlogops/__init__.py +0 -165
  25. backlogops-0.3/src/backlogops/backlog_ops_wizard.py +0 -305
  26. backlogops-0.3/src/backlogops/io_preset_wizard.py +0 -148
  27. backlogops-0.3/src/backlogops/jira_token.py +0 -76
  28. backlogops-0.3/src/backlogops/jira_wizard.py +0 -246
  29. {backlogops-0.3 → backlogops-0.4}/LICENSE.txt +0 -0
  30. {backlogops-0.3 → backlogops-0.4}/backlogops.egg-info/dependency_links.txt +0 -0
  31. {backlogops-0.3 → backlogops-0.4}/backlogops.egg-info/top_level.txt +0 -0
  32. {backlogops-0.3 → backlogops-0.4}/setup.cfg +0 -0
  33. {backlogops-0.3 → backlogops-0.4}/src/backlogops/apply_format_rules.py +0 -0
  34. {backlogops-0.3 → backlogops-0.4}/src/backlogops/available_teams.py +0 -0
  35. {backlogops-0.3 → backlogops-0.4}/src/backlogops/available_teams_config.py +0 -0
  36. {backlogops-0.3 → backlogops-0.4}/src/backlogops/backlog.py +0 -0
  37. {backlogops-0.3 → backlogops-0.4}/src/backlogops/backlog_helpers.py +0 -0
  38. {backlogops-0.3 → backlogops-0.4}/src/backlogops/backlog_in_release_order.py +0 -0
  39. {backlogops-0.3 → backlogops-0.4}/src/backlogops/backlog_releases.py +0 -0
  40. {backlogops-0.3 → backlogops-0.4}/src/backlogops/backlog_releases_io.py +0 -0
  41. {backlogops-0.3 → backlogops-0.4}/src/backlogops/blo_version_reporter.py +0 -0
  42. {backlogops-0.3 → backlogops-0.4}/src/backlogops/date_ranges.py +0 -0
  43. {backlogops-0.3 → backlogops-0.4}/src/backlogops/demo_backlog.py +0 -0
  44. {backlogops-0.3 → backlogops-0.4}/src/backlogops/format_rules.py +0 -0
  45. {backlogops-0.3 → backlogops-0.4}/src/backlogops/io_config.py +0 -0
  46. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_connect.py +0 -0
  47. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_order_releases.py +0 -0
  48. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_rank_backlog.py +0 -0
  49. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_rank_by_keys.py +0 -0
  50. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_rank_move_keys.py +0 -0
  51. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_rename_releases.py +0 -0
  52. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_update_backlog.py +0 -0
  53. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_update_releases.py +0 -0
  54. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_write_fields.py +0 -0
  55. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_write_format.py +0 -0
  56. {backlogops-0.3 → backlogops-0.4}/src/backlogops/jira_write_releases.py +0 -0
  57. {backlogops-0.3 → backlogops-0.4}/src/backlogops/key_list_io.py +0 -0
  58. {backlogops-0.3 → backlogops-0.4}/src/backlogops/levels.py +0 -0
  59. {backlogops-0.3 → backlogops-0.4}/src/backlogops/move_keys_first.py +0 -0
  60. {backlogops-0.3 → backlogops-0.4}/src/backlogops/name_list_io.py +0 -0
  61. {backlogops-0.3 → backlogops-0.4}/src/backlogops/no_text_io.py +0 -0
  62. {backlogops-0.3 → backlogops-0.4}/src/backlogops/order_by_dependencies.py +0 -0
  63. {backlogops-0.3 → backlogops-0.4}/src/backlogops/person.py +0 -0
  64. {backlogops-0.3 → backlogops-0.4}/src/backlogops/py.typed +0 -0
  65. {backlogops-0.3 → backlogops-0.4}/src/backlogops/release_backlog_updates.py +0 -0
  66. {backlogops-0.3 → backlogops-0.4}/src/backlogops/release_change_io.py +0 -0
  67. {backlogops-0.3 → backlogops-0.4}/src/backlogops/releases.py +0 -0
  68. {backlogops-0.3 → backlogops-0.4}/src/backlogops/rename_list_io.py +0 -0
  69. {backlogops-0.3 → backlogops-0.4}/src/backlogops/table_create.py +0 -0
  70. {backlogops-0.3 → backlogops-0.4}/src/backlogops/table_rows.py +0 -0
  71. {backlogops-0.3 → backlogops-0.4}/src/backlogops/work_hours.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: backlogops
3
- Version: 0.3
3
+ Version: 0.4
4
4
  Summary: Library with backlog operations.
5
5
  Author: Tom Björkholm
6
6
  Author-email: Tom Björkholm <klausuler_linnet0q@icloud.com>
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.12
14
14
  Classifier: Programming Language :: Python :: 3.13
15
15
  Classifier: Programming Language :: Python :: 3.14
16
16
  Classifier: Operating System :: OS Independent
17
- Classifier: Development Status :: 3 - Alpha
17
+ Classifier: Development Status :: 4 - Beta
18
18
  Classifier: Intended Audience :: Developers
19
19
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
20
20
  Classifier: Topic :: Office/Business :: Scheduling
@@ -26,7 +26,7 @@ Requires-Dist: config-as-json>=1.4
26
26
  Requires-Dist: cryptography>=49.0.0
27
27
  Requires-Dist: jira[cli,opt]>=3.10.5
28
28
  Requires-Dist: tableio>=1.1
29
- Requires-Dist: tableio-cfg-json>=0.8
29
+ Requires-Dist: tableio-cfg-json>=0.9
30
30
  Requires-Dist: versionreporter>=0.4
31
31
  Dynamic: author
32
32
  Dynamic: license-file
@@ -49,6 +49,18 @@ There are 3 related packages for backlog operations:
49
49
  interface to use the functions in the library. It is based on TkInter. The
50
50
  ambition is to keep it as a thin wrapper around the library.
51
51
 
52
+ ## Project status
53
+
54
+ backlogops is in beta. The algorithms intended for its initial scope are in
55
+ place, so the main work from here is on the user experience rather than on new
56
+ core functionality. The three packages share a version number and are released
57
+ together.
58
+
59
+ The library is not meant to ever be "finished": using it for real planning keeps
60
+ surfacing new ideas. Some of those will be added to backlogops itself, and
61
+ others will fit better in separate packages built on top of backlogops. Early
62
+ adopters are very welcome, and their feedback shapes what comes next.
63
+
52
64
  ## Available functionality
53
65
 
54
66
  The following functionality is available in all 3 packages:
@@ -304,9 +316,9 @@ For the full set of public names see the API documentation linked above.
304
316
 
305
317
  ## Test summary
306
318
 
307
- - Test result: 2284 passed, 7 deselected in 44s
319
+ - Test result: 2638 passed, 7 deselected in 51s
308
320
  - No flake8 warnings.
309
321
  - No mypy errors found.
310
322
  - No python layout warnings.
311
- - Built version(s): 0.3
323
+ - Built version(s): 0.4
312
324
  - Build and test using Python 3.14.6
@@ -14,6 +14,18 @@ There are 3 related packages for backlog operations:
14
14
  interface to use the functions in the library. It is based on TkInter. The
15
15
  ambition is to keep it as a thin wrapper around the library.
16
16
 
17
+ ## Project status
18
+
19
+ backlogops is in beta. The algorithms intended for its initial scope are in
20
+ place, so the main work from here is on the user experience rather than on new
21
+ core functionality. The three packages share a version number and are released
22
+ together.
23
+
24
+ The library is not meant to ever be "finished": using it for real planning keeps
25
+ surfacing new ideas. Some of those will be added to backlogops itself, and
26
+ others will fit better in separate packages built on top of backlogops. Early
27
+ adopters are very welcome, and their feedback shapes what comes next.
28
+
17
29
  ## Available functionality
18
30
 
19
31
  The following functionality is available in all 3 packages:
@@ -269,9 +281,9 @@ For the full set of public names see the API documentation linked above.
269
281
 
270
282
  ## Test summary
271
283
 
272
- - Test result: 2284 passed, 7 deselected in 44s
284
+ - Test result: 2638 passed, 7 deselected in 51s
273
285
  - No flake8 warnings.
274
286
  - No mypy errors found.
275
287
  - No python layout warnings.
276
- - Built version(s): 0.3
288
+ - Built version(s): 0.4
277
289
  - Build and test using Python 3.14.6
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: backlogops
3
- Version: 0.3
3
+ Version: 0.4
4
4
  Summary: Library with backlog operations.
5
5
  Author: Tom Björkholm
6
6
  Author-email: Tom Björkholm <klausuler_linnet0q@icloud.com>
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.12
14
14
  Classifier: Programming Language :: Python :: 3.13
15
15
  Classifier: Programming Language :: Python :: 3.14
16
16
  Classifier: Operating System :: OS Independent
17
- Classifier: Development Status :: 3 - Alpha
17
+ Classifier: Development Status :: 4 - Beta
18
18
  Classifier: Intended Audience :: Developers
19
19
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
20
20
  Classifier: Topic :: Office/Business :: Scheduling
@@ -26,7 +26,7 @@ Requires-Dist: config-as-json>=1.4
26
26
  Requires-Dist: cryptography>=49.0.0
27
27
  Requires-Dist: jira[cli,opt]>=3.10.5
28
28
  Requires-Dist: tableio>=1.1
29
- Requires-Dist: tableio-cfg-json>=0.8
29
+ Requires-Dist: tableio-cfg-json>=0.9
30
30
  Requires-Dist: versionreporter>=0.4
31
31
  Dynamic: author
32
32
  Dynamic: license-file
@@ -49,6 +49,18 @@ There are 3 related packages for backlog operations:
49
49
  interface to use the functions in the library. It is based on TkInter. The
50
50
  ambition is to keep it as a thin wrapper around the library.
51
51
 
52
+ ## Project status
53
+
54
+ backlogops is in beta. The algorithms intended for its initial scope are in
55
+ place, so the main work from here is on the user experience rather than on new
56
+ core functionality. The three packages share a version number and are released
57
+ together.
58
+
59
+ The library is not meant to ever be "finished": using it for real planning keeps
60
+ surfacing new ideas. Some of those will be added to backlogops itself, and
61
+ others will fit better in separate packages built on top of backlogops. Early
62
+ adopters are very welcome, and their feedback shapes what comes next.
63
+
52
64
  ## Available functionality
53
65
 
54
66
  The following functionality is available in all 3 packages:
@@ -304,9 +316,9 @@ For the full set of public names see the API documentation linked above.
304
316
 
305
317
  ## Test summary
306
318
 
307
- - Test result: 2284 passed, 7 deselected in 44s
319
+ - Test result: 2638 passed, 7 deselected in 51s
308
320
  - No flake8 warnings.
309
321
  - No mypy errors found.
310
322
  - No python layout warnings.
311
- - Built version(s): 0.3
323
+ - Built version(s): 0.4
312
324
  - Build and test using Python 3.14.6
@@ -19,6 +19,7 @@ src/backlogops/backlog_ops_wizard.py
19
19
  src/backlogops/backlog_releases.py
20
20
  src/backlogops/backlog_releases_io.py
21
21
  src/backlogops/blo_version_reporter.py
22
+ src/backlogops/config_file_io.py
22
23
  src/backlogops/date_ranges.py
23
24
  src/backlogops/demo_backlog.py
24
25
  src/backlogops/estimate_ready_date.py
@@ -33,6 +34,7 @@ src/backlogops/jira_rank_by_keys.py
33
34
  src/backlogops/jira_rank_move_keys.py
34
35
  src/backlogops/jira_read.py
35
36
  src/backlogops/jira_rename_releases.py
37
+ src/backlogops/jira_search.py
36
38
  src/backlogops/jira_token.py
37
39
  src/backlogops/jira_update_backlog.py
38
40
  src/backlogops/jira_update_releases.py
@@ -56,5 +58,7 @@ src/backlogops/rename_list_io.py
56
58
  src/backlogops/table_create.py
57
59
  src/backlogops/table_rows.py
58
60
  src/backlogops/team.py
61
+ src/backlogops/wizard_forms.py
59
62
  src/backlogops/wizard_helpers.py
63
+ src/backlogops/wizard_navigator.py
60
64
  src/backlogops/work_hours.py
@@ -2,5 +2,5 @@ config-as-json>=1.4
2
2
  cryptography>=49.0.0
3
3
  jira[cli,opt]>=3.10.5
4
4
  tableio>=1.1
5
- tableio-cfg-json>=0.8
5
+ tableio-cfg-json>=0.9
6
6
  versionreporter>=0.4
@@ -4,7 +4,6 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "backlogops"
7
- version = "0.3"
8
7
  authors = [
9
8
  { name="Tom Björkholm", email="klausuler_linnet0q@icloud.com" },
10
9
  ]
@@ -22,13 +21,13 @@ classifiers = [
22
21
  "Programming Language :: Python :: 3.13",
23
22
  "Programming Language :: Python :: 3.14",
24
23
  "Operating System :: OS Independent",
25
- "Development Status :: 3 - Alpha",
24
+ "Development Status :: 4 - Beta",
26
25
  "Intended Audience :: Developers",
27
26
  "Topic :: Software Development :: Libraries :: Python Modules",
28
27
  "Topic :: Office/Business :: Scheduling",
29
28
  "Typing :: Typed"
30
29
  ]
31
- dynamic = ["dependencies"]
30
+ dynamic = ["dependencies", "version"]
32
31
 
33
32
  [project.urls]
34
33
  "Homepage" = "https://github.com/tom-bjorkholm/backlog-ops"
@@ -5,7 +5,7 @@ from setuptools import setup
5
5
 
6
6
  setup(
7
7
  name='backlogops',
8
- version='0.3',
8
+ version='0.4',
9
9
  description='Library with backlog operations.',
10
10
  author='Tom Björkholm',
11
11
  author_email='klausuler_linnet0q@icloud.com',
@@ -18,7 +18,7 @@ setup(
18
18
  'cryptography >= 49.0.0',
19
19
  'jira[cli,opt] >= 3.10.5',
20
20
  'tableio >= 1.1',
21
- 'tableio-cfg-json >= 0.8',
21
+ 'tableio-cfg-json >= 0.9',
22
22
  'versionreporter >= 0.4'
23
23
  ]
24
24
  )
@@ -0,0 +1,159 @@
1
+ #! /usr/local/bin/python3
2
+ """Library with backlog operations.
3
+
4
+ This package provides the data model for a backlog, the available
5
+ workforce and the calendar, together with the operations that build and
6
+ validate them. The names an application programmer is most likely to use
7
+ are re-exported here, so that they can be imported directly from
8
+ ``backlogops``.
9
+ """
10
+
11
+ # Copyright (c) 2026, Tom Björkholm
12
+ # MIT License
13
+
14
+ from backlogops.apply_format_rules import format_backlog, format_releases
15
+ from backlogops.available_teams import AvailableTeams
16
+ from backlogops.available_teams_config import (
17
+ AvailableTeamsConfig, read_available_teams, write_available_teams)
18
+ from backlogops.backlog import (
19
+ Backlog, BacklogItem, Status, build_dependency_graph,
20
+ check_backlog_consistency, event_finish, event_start, get_backlog,
21
+ get_backlog_item, item_dependency_edges)
22
+ from backlogops.backlog_helpers import find_cycle
23
+ from backlogops.backlog_in_release_order import backlog_in_release_order
24
+ from backlogops.backlog_ops_config import (
25
+ BacklogOpsConfig, DEF_STATUS_INPUT_MAP, get_backlog_ops_config,
26
+ read_backlog_ops_config, write_backlog_ops_config)
27
+ from backlogops.backlog_ops_wizard import (
28
+ available_teams_wizard, backlog_ops_wizard)
29
+ from backlogops.backlog_releases import BacklogReleases
30
+ from backlogops.backlog_releases_io import (
31
+ read_backlog_releases, write_backlog_releases)
32
+ from backlogops.config_file_io import read_io_preset, safe_write_config
33
+ from backlogops.date_ranges import check_date_range, check_no_overlap
34
+ from backlogops.demo_backlog import get_demo_backlog
35
+ from backlogops.estimate_ready_date import (
36
+ estimate_ready_date, set_plan_from_estimate)
37
+ from backlogops.format_rules import FormatRules
38
+ from backlogops.io_config import (
39
+ GuiDisplayConfig, InputFormatConfig, OutputFormatConfig, make_input_config,
40
+ make_output_config, resolve_input_config, resolve_output_config)
41
+ from backlogops.io_preset_wizard import preset_wizard
42
+ from backlogops.jira_connect import JiraConnections
43
+ from backlogops.jira_io_config import (
44
+ CLEAR_TOKEN_WARNING, DEF_BACKLOG_COLUMN_MAP, DEF_RELEASE_COLUMN_MAP,
45
+ JiraAttrPath, JiraAttrType, JiraColumnMap, JiraConnectConfig, JiraIOConfig,
46
+ JiraIssueTypeMap, JiraPreset, JiraType, TokenStorage, default_jira_filter)
47
+ from backlogops.jira_order_releases import (
48
+ OrderedReleasesInJira, format_order_result, order_jira_rel_by_date,
49
+ order_releases_in_jira)
50
+ from backlogops.jira_rank_backlog import (
51
+ BadJiraRankFilter, JiraRankAnchor, jira_rank_backlog)
52
+ from backlogops.jira_rank_by_keys import (
53
+ JiraKeyError, JiraTooManyLoops, jira_rank_by_keys_raw)
54
+ from backlogops.jira_rank_move_keys import (
55
+ RankedInJira, format_rank_result, jira_rank_move_keys)
56
+ from backlogops.jira_read import (
57
+ build_backlog_releases, read_backlog_from_jira, read_jira_from_config,
58
+ resolve_jql)
59
+ from backlogops.jira_rename_releases import (
60
+ FailedRename, ReleaseRename, RenamedReleasesInJira, format_rename_result,
61
+ rename_release_in_jira, rename_releases_in_jira)
62
+ from backlogops.jira_token import encrypt_token_file, encrypt_token_to_file
63
+ from backlogops.jira_update_backlog import (
64
+ LinkUpdate, UpdatedBacklogInJira, format_backlog_updates,
65
+ updatable_backlog_fields, update_backlog_in_jira)
66
+ from backlogops.jira_update_releases import (
67
+ UpdatedReleasesInJira, format_release_updates, update_releases_in_jira)
68
+ from backlogops.jira_write import (
69
+ AddedToJira, ExistsInJiraError, FailedItem, ItemNotInJiraError,
70
+ OnExistingKey, OnMissingKey, StatusMismatch, UnknownIssueTypeError,
71
+ add_backlog_to_jira, apply_jira_keys, jira_custom_fields,
72
+ jira_editable_fields)
73
+ from backlogops.jira_write_fields import FailedLink
74
+ from backlogops.jira_write_format import format_add_result
75
+ from backlogops.jira_write_releases import (
76
+ AddedReleasesToJira, FailedRelease, ReleaseExistsError,
77
+ add_releases_to_jira, format_release_result)
78
+ from backlogops.key_list_io import read_key_list, write_key_list
79
+ from backlogops.levels import (
80
+ DEFAULT_LEVELS, Level, LevelDisplay, Levels, check_levels_consistency,
81
+ level_name, level_number_from_name, levels_from_list)
82
+ from backlogops.move_keys_first import get_keys_in_order, move_keys_first
83
+ from backlogops.name_list_io import read_name_list
84
+ from backlogops.no_text_io import NoTextIO
85
+ from backlogops.order_by_dependencies import (
86
+ DependencyMode, order_by_dependencies, precedence_relations)
87
+ from backlogops.person import Person
88
+ from backlogops.release_backlog_updates import (
89
+ BacklogReleaseChange, ReleaseChange, ReleaseChanges, ReleaseDateChange,
90
+ ReleaseDateChanges, ReleasesAndDateChanges, adjust_release_content,
91
+ estimate_release_dates, release_plan_on_estimate)
92
+ from backlogops.release_change_io import (
93
+ format_content_changes, format_date_changes, write_content_changes,
94
+ write_date_changes)
95
+ from backlogops.releases import Release, Releases, get_release, get_releases
96
+ from backlogops.rename_list_io import read_renames
97
+ from backlogops.table_create import FileExistsCb, allow_overwrite
98
+ from backlogops.table_rows import (
99
+ LEVEL_COLUMN, LEVEL_NAME_COLUMN, apply_column_map, display_level_order,
100
+ display_level_rows, fold_level_name, item_to_row, map_column_order,
101
+ release_to_row, row_to_item, row_to_release)
102
+ from backlogops.team import FteException, Membership, Team
103
+ from backlogops.work_hours import (
104
+ CompanyWorkHours, DEFAULT_WORK_WEEK, ExceptionWorkHours, ScheduleWorkHours,
105
+ WeekDay)
106
+
107
+ __all__ = [
108
+ 'AddedReleasesToJira', 'AddedToJira', 'AvailableTeams',
109
+ 'AvailableTeamsConfig', 'Backlog', 'BacklogItem', 'BacklogOpsConfig',
110
+ 'BacklogReleaseChange', 'BacklogReleases', 'BadJiraRankFilter',
111
+ 'CLEAR_TOKEN_WARNING', 'CompanyWorkHours', 'DEFAULT_LEVELS',
112
+ 'DEFAULT_WORK_WEEK', 'DEF_BACKLOG_COLUMN_MAP', 'DEF_RELEASE_COLUMN_MAP',
113
+ 'DEF_STATUS_INPUT_MAP', 'DependencyMode', 'ExceptionWorkHours',
114
+ 'ExistsInJiraError', 'FailedItem', 'FailedLink', 'FailedRelease',
115
+ 'FailedRename', 'FileExistsCb', 'FormatRules', 'FteException',
116
+ 'GuiDisplayConfig', 'InputFormatConfig', 'ItemNotInJiraError',
117
+ 'JiraAttrPath', 'JiraAttrType', 'JiraColumnMap', 'JiraConnectConfig',
118
+ 'JiraConnections', 'JiraIOConfig', 'JiraIssueTypeMap', 'JiraKeyError',
119
+ 'JiraPreset', 'JiraRankAnchor', 'JiraTooManyLoops', 'JiraType',
120
+ 'LEVEL_COLUMN', 'LEVEL_NAME_COLUMN', 'Level', 'LevelDisplay', 'Levels',
121
+ 'LinkUpdate', 'Membership', 'NoTextIO', 'OnExistingKey', 'OnMissingKey',
122
+ 'OrderedReleasesInJira', 'OutputFormatConfig', 'Person', 'RankedInJira',
123
+ 'Release', 'ReleaseChange', 'ReleaseChanges', 'ReleaseDateChange',
124
+ 'ReleaseDateChanges', 'ReleaseExistsError', 'ReleaseRename', 'Releases',
125
+ 'ReleasesAndDateChanges', 'RenamedReleasesInJira', 'ScheduleWorkHours',
126
+ 'Status', 'StatusMismatch', 'Team', 'TokenStorage',
127
+ 'UnknownIssueTypeError', 'UpdatedBacklogInJira', 'UpdatedReleasesInJira',
128
+ 'WeekDay', 'add_backlog_to_jira', 'add_releases_to_jira',
129
+ 'adjust_release_content', 'allow_overwrite', 'apply_column_map',
130
+ 'apply_jira_keys', 'available_teams_wizard', 'backlog_in_release_order',
131
+ 'backlog_ops_wizard', 'build_backlog_releases', 'build_dependency_graph',
132
+ 'check_backlog_consistency', 'check_date_range',
133
+ 'check_levels_consistency', 'check_no_overlap', 'default_jira_filter',
134
+ 'display_level_order', 'display_level_rows', 'encrypt_token_file',
135
+ 'encrypt_token_to_file', 'estimate_ready_date', 'estimate_release_dates',
136
+ 'event_finish', 'event_start', 'find_cycle', 'fold_level_name',
137
+ 'format_add_result', 'format_backlog', 'format_backlog_updates',
138
+ 'format_content_changes', 'format_date_changes', 'format_order_result',
139
+ 'format_rank_result', 'format_release_result', 'format_release_updates',
140
+ 'format_releases', 'format_rename_result', 'get_backlog',
141
+ 'get_backlog_item', 'get_backlog_ops_config', 'get_demo_backlog',
142
+ 'get_keys_in_order', 'get_release', 'get_releases',
143
+ 'item_dependency_edges', 'item_to_row', 'jira_custom_fields',
144
+ 'jira_editable_fields', 'jira_rank_backlog', 'jira_rank_by_keys_raw',
145
+ 'jira_rank_move_keys', 'level_name', 'level_number_from_name',
146
+ 'levels_from_list', 'make_input_config', 'make_output_config',
147
+ 'map_column_order', 'move_keys_first', 'order_by_dependencies',
148
+ 'order_jira_rel_by_date', 'order_releases_in_jira', 'precedence_relations',
149
+ 'preset_wizard', 'read_available_teams', 'read_backlog_from_jira',
150
+ 'read_backlog_ops_config', 'read_backlog_releases', 'read_io_preset',
151
+ 'read_jira_from_config', 'read_key_list', 'read_name_list', 'read_renames',
152
+ 'release_plan_on_estimate', 'release_to_row', 'rename_release_in_jira',
153
+ 'rename_releases_in_jira', 'resolve_input_config', 'resolve_jql',
154
+ 'resolve_output_config', 'row_to_item', 'row_to_release',
155
+ 'safe_write_config', 'set_plan_from_estimate', 'updatable_backlog_fields',
156
+ 'update_backlog_in_jira', 'update_releases_in_jira',
157
+ 'write_available_teams', 'write_backlog_ops_config',
158
+ 'write_backlog_releases', 'write_content_changes', 'write_date_changes',
159
+ 'write_key_list']
@@ -3,12 +3,16 @@
3
3
 
4
4
  The :class:`BacklogOpsConfig` is the single configuration object an
5
5
  application reads and writes. It groups together the available workforce,
6
- the named TableIO input and output presets, and an optional set of
7
- backlog item levels:
6
+ the named TableIO input and output presets, the status-name map, the GUI
7
+ display settings, the Jira configuration, and an optional set of backlog
8
+ item levels:
8
9
 
9
10
  * ``available_teams`` is the workforce (persons, teams and company work
10
11
  hours), bridged to JSON by :class:`AvailableTeamsConfig`;
11
12
  * ``input_configs`` and ``output_configs`` are named TableIO presets;
13
+ * ``status_input_map`` maps the status names in files and Jira to the
14
+ internal statuses;
15
+ * ``gui_display`` holds the GUI column-rename and level-display settings;
12
16
  * ``jira`` is the Jira input and output configuration, bridged to JSON by
13
17
  :class:`backlogops.jira_io_config.JiraIOConfig`;
14
18
  * ``levels`` is the optional list of backlog item levels. It is omitted