atr/routes/voting.py (6 lines):
- line 50: # TODO: Consider relaxing this to all committers
- line 90: # TODO: We should consider not allowing the subject to be changed
- line 125: # TODO: We also need to store the duration of the vote
- line 153: # TODO: We should log all outgoing email and the session so that users can confirm
- line 178: # TODO: Use session.release here
- line 193: # TODO: Obtain a lock for this
atr/blueprints/admin/admin.py (6 lines):
- line 66: # TODO: Add distribution channel, key link, and any others
- line 178: # TODO: Use session.apache_uid instead of session.uid?
- line 436: # TODO: Confirm that this is a bug, and report upstream
- line 527: # FIXME: this is a quick workaround for inconsistent data wrt webservices PMC / projects
- line 533: # TODO: Annotator is in both projects and ldap_projects
- line 562: # TODO: find a better way to declare a project retired
atr/routes/__init__.py (5 lines):
- line 53: # TODO: Should get this from config, checking debug there
- line 70: # TODO: (Obviously we should move this, but where to?)
- line 174: # TODO: Not type safe, should subclass properly if possible
- line 221: # TODO: We probably shouldn't do that, or should make it clearer
- line 279: # TODO: Is this actually UTC?
atr/routes/keys.py (5 lines):
- line 246: # TODO: Check if key already exists
- line 258: # # TODO: Not sure that we should do this
- line 259: # # TODO: Check for multiple signing subkeys
- line 411: # TODO: Make an auth.require wrapper that gives the session automatically
- line 572: # TODO: Do we modify this? Store a copy just in case, for the template to use
atr/db/models.py (5 lines):
- line 118: # TODO: Consider using key or label for primary string keys
- line 150: # TODO: Consider using key or label for primary string keys
- line 153: # TODO: Ideally full_name would be unique for str only, but that's complex
- line 158: # TODO: We should have this on Committee too, or instead
- line 393: # TODO: Not all releases have a version
atr/routes/draft.py (5 lines):
- line 122: # TODO: Confirm that this is a bug, and report upstream
- line 433: # TODO: Should we deprecate this and ensure compose covers it all?
- line 449: # TODO: Move to somewhere appropriate
- line 469: # TODO: Validate the vote duration again? Probably not necessary in a preview
- line 502: # TODO: Use session.release here
atr/mail.py (4 lines):
- line 33: # TODO: We should choose a pattern for globals
- line 37: # TODO: Get at least global_dkim_domain from configuration
- line 78: # TODO: Add message.references if necessary
- line 114: # TODO: Document this, or improve it
atr/routes/start.py (4 lines):
- line 54: # TODO: Temporarily allow committers to start drafts
- line 68: # TODO: Consider using Release.revision instead of ./latest
- line 81: # TODO: We should check that it's bigger than the current version
- line 115: # TODO: Move the helper somewhere else
atr/util.py (4 lines):
- line 133: # TODO: Skip metadata files
- line 215: # TODO: We're currently using cp -al instead
- line 556: # TODO: Use with contextlib.suppress(FileNotFoundError) for these sorts of blocks?
- line 563: # TODO: This should probably be a session method instead
atr/tasks/checks/rat.py (4 lines):
- line 75: # TODO: Or bubble for task failure?
- line 141: # TODO: We could extract to somewhere in "state/" instead
- line 229: # TODO: From RAT 0.17, --exclude will become --input-exclude
- line 230: # TODO: Check whether --exclude NAME works on inner files
atr/routes/resolve.py (3 lines):
- line 52: # TODO: Make this a proper query
- line 134: # TODO: Improve this
- line 162: # TODO: Format this better based on committee and project
atr/tasks/bulk.py (3 lines):
- line 60: # TODO: Use a Pydantic model instead
- line 160: # TODO: We flatten the hierarchy to get the filename
- line 168: # TODO: Check whether local_path itself exists first
atr/routes/projects.py (3 lines):
- line 47: TODO: Currently only a single mailto_address is supported.
- line 230: # TODO: Move this filtering logic somewhere else
- line 272: # TODO: We should probably add long name validation
atr/tasks/checks/zipformat.py (3 lines):
- line 153: # TODO: Obviously we want to reuse the license files check logic from license.py
- line 207: # TODO: Add more specific NOTICE checks if needed
- line 320: # # TODO: Airavata has e.g. "-source-release"
atr/server.py (3 lines):
- line 47: # TODO: Technically this is a global variable
- line 242: # TODO: Figure out why pyright doesn't know about this attribute
- line 257: # FIXME: when running in SSL mode, you will receive these exceptions upon termination at times:
atr/tasks/checks/license.py (3 lines):
- line 193: # TODO: Be more specific about the issues
- line 312: # TODO: Check length, should be 11,358 bytes
- line 315: # TODO: Check length doesn't exceed some preset
atr/worker.py (2 lines):
- line 20: # TODO: If started is older than some threshold and status
- line 287: # TODO: Should probably be more robust about this
atr/templates/download-all.html (2 lines):
- line 95:
- line 105:
atr/templates/phase-view.html (2 lines):
- line 13: {# TODO: Use mappings.py #}
- line 110: {# TODO: Should probably disable the link here #}
atr/analysis.py (2 lines):
- line 185: # TODO: Check total depth to give an indication of SUB?
- line 260: # TODO: -incubating
atr/ssh.py (2 lines):
- line 105: # TODO: Where do we actually do this?
- line 158: # TODO: Use shlex.split or similar if commands can contain quoted arguments
atr/db/__init__.py (2 lines):
- line 125: # TODO: Need to type all of these arguments correctly
- line 678: # FIXME: occasionally you see this in the console output
atr/tasks/message.py (2 lines):
- line 60: # TODO: Move this call into send itself?
- line 64: # TODO: Record the vote in the database?
atr/routes/preview.py (2 lines):
- line 158: # TODO: Move to somewhere appropriate
- line 207: # TODO: Abstract this to a function
atr/tasks/sbom.py (2 lines):
- line 95: # TODO: Add other types here
- line 182: # TODO: Ideally we'd have task dependencies or archive caching
atr/routes/announce.py (2 lines):
- line 33: # TODO: Improve upon the routes_release pattern
- line 171: # TODO: We should update only if the announcement email was sent
atr/tasks/checks/paths.py (2 lines):
- line 131: # TODO: Is .mds supported in analysis.METADATA_SUFFIXES?
- line 161: # TODO: There is not a a policy for this
atr/manager.py (2 lines):
- line 195: # TODO: How long should we wait before trying again?
- line 281: # TODO: Return False here to avoid over-reporting errors
scripts/interface_privacy.py (1 line):
- line 2: # TODO: We want to go the other way around too
atr/templates/project-select.html (1 line):
- line 16: {# TODO: We're only setting data-project-url for style #}
atr/templates/announce-selected.html (1 line):
- line 92: TODO: The limited options above are provided for testing purposes. In the finished version of ATR, you will be able to send to your own specified mailing lists.
atr/routes/release.py (1 line):
- line 152: # TODO: Move to somewhere appropriate
atr/tasks/checks/hashing.py (1 line):
- line 64: # TODO: Check the FILENAME part
atr/config.py (1 line):
- line 48: # FIXME: retrieve the list of admin users from LDAP or oath session / isRoot
atr/user.py (1 line):
- line 82: # TODO: We're limiting this to candidates
atr/templates/release-select.html (1 line):
- line 31: {# TODO: Use mappings.py #}
atr/templates/voting-selected-revision.html (1 line):
- line 30:
atr/revision.py (1 line):
- line 95: # TODO: It's hard to know whether we should clean up the new revision directory
atr/routes/file.py (1 line):
- line 30: # TODO: Make this independent of the release phase
atr/templates/macros/dialog.html (1 line):
- line 2: {# TODO: Make ESC close this modal #}
atr/construct.py (1 line):
- line 142: # TODO: Handle the DURATION == 0 case
atr/templates/projects.html (1 line):
- line 78: {# TODO: Could add "or is_viewing_as_admin_fn(current_user.uid)" #}
atr/templates/upload-selected.html (1 line):
- line 137:
atr/blueprints/api/api.py (1 line):
- line 32: # FIXME: we need to return the dumped model instead of the actual pydantic class
atr/blueprints/admin/templates/tasks.html (1 line):
- line 64: // TODO: Need a better fix here
atr/routes/vote.py (1 line):
- line 164: # TODO: This List ID will be dynamic when we allow posting to arbitrary lists
atr/templates/check-selected-candidate-forms.html (1 line):
- line 6: TODO: We plan to make "Binding" dynamic based on membership. Currently this form always says "Binding" which is known to be wrong.
atr/routes/revisions.py (1 line):
- line 124: # TODO: We should probably log who is doing this, to create an audit trail
atr/routes/download.py (1 line):
- line 164: # TODO: Report the bug upstream to mypy
atr/tasks/checks/signature.py (1 line):
- line 110: # TODO: Log warning about invalid key?
atr/routes/report.py (1 line):
- line 42: # TODO: When we do more than one thing in a dir, we should use the revision directory directly
atr/templates/keys-review.html (1 line):
- line 95:
atr/routes/candidate.py (1 line):
- line 62: # TODO: Move to somewhere appropriate