Conversation
Summary: - add an unauthenticated check_upload_history command that shares upload candidate discovery and checksum semantics - report ordered per-file image matches across sequence boundaries while tolerating malformed local history - add an optional versioned process report for unsupported inputs without changing default processing behavior - document both JSON contracts and cover them with unit, integration, and read-only parity tests Test Plan: - pytest -q tests (719 passed, 52 skipped) - ruff check mapillary_tools - ruff format --check mapillary_tools tests - usort diff mapillary_tools - mypy mapillary_tools tests/cli - PyInstaller ARM64 onefile and folder builds - packaged folder-mode history/process-report integration smoke (4 passed)
|
Hi @rtwojcik! Thank you for your pull request and welcome to our community. Action RequiredIn order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you. ProcessIn order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA. Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with If you have received this in error or have any questions, please contact us at cla@meta.com. Thanks! |
|
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Meta Open Source project. Thanks! |
Summary
check_upload_historycommand that uses the samecandidate discovery, ordering, and checksums as
uploadwithout network orhistory writes.
already_uploaded_filenamesfor each candidate, includingimage matches found across historical sequence boundaries; preserve the
existing exact-sequence behavior for images, videos, and ZIP files.
scanning stored image descriptions.
process --process_report_pathversion 1 JSON output forrecognized and unsupported files. Existing processing behavior is unchanged
when the option is omitted.
Motivation
Mapillary Desktop Uploader needs to explain which files were uploaded before
the user starts an upload and which selected files are unsupported. Today the
upload-time history listener can only silently skip whole candidates, and
processsilently ignores unsupported inputs.Compatibility and privacy
already_uploadedremains an all-members result; the new ordered filenamelist adds per-file detail without weakening exact candidate checks.
contain absolute source filenames.
sidecars; explicit unsupported regular files are always reported.
Test plan
pytest -q tests— 719 passed, 52 skippedruff check mapillary_toolsruff format --check mapillary_tools testsusort diff mapillary_toolsmypy mapillary_tools tests/cliscript/build_osxpassed
The sandbox blocks execution of the one-file PyInstaller binary at its System V
semaphore initialization step. The folder-mode packaged executable runs and
passes the functional smoke; both generated binaries are ARM64 and pass local
code-signature verification.