Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions python/exporter/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,8 @@ def build_parser() -> argparse.ArgumentParser:
action="store_true",
help=(
"Write a plain zip. The bundle is locked with a generated code by default, because it"
" holds keys that cannot be revoked - but no OpenTagViewer release can open a locked"
" one yet."
" holds keys that cannot be revoked - but no released version of the Android app can"
" open a locked one yet, so a bundle for somebody else needs this."
),
)
parser.add_argument(
Expand Down
15 changes: 12 additions & 3 deletions python/exporter/wizard.py
Original file line number Diff line number Diff line change
Expand Up @@ -564,9 +564,18 @@ def _export(self) -> None:
messagebox.showerror("That selection cannot be exported", str(e))
return

# No password from the window yet: nothing that imports these can open a locked one, so
# offering it here would produce a file the recipient cannot use. See the CLI's
# --no-password, and docs/android-import-handover.md.
# **No password yet, and the reason is release ordering rather than a missing feature.**
# The app on `main` imports locked bundles - zip4j is in `app/build.gradle.kts` and
# `AppleZipImporterUtil` uses it - but no *released* APK does: the newest is 1.0.5, from
# before that work, and `versionName` has not moved past it.
#
# So locking bundles now would produce files that nobody's installed app can open, and the
# people worst affected would be recipients, who did not choose the exporter's version and
# cannot fix it from their side.
#
# **What unblocks this is an Android release containing zip4j, not a change here.** Once
# one exists, this becomes a decision about how long to keep supporting the versions before
# it. See the CLI's --no-password, and docs/android-import-handover.md.
write_zip(bundle, path, password=None)

messagebox.showinfo(
Expand Down
Loading