aboutsummaryrefslogtreecommitdiff
path: root/patch_writer.cc
AgeCommit message (Collapse)Author
2021-11-17[Zucchini] Move version info to a separate file.Samuel Huang
This CL moves zucchini::{kMajorVersion, kMinorVersion, kInvalidVersion} to a standalone file version_info.h. The location should remain stable. Stability is important so that: * External tools can determine Zucchini versoin from source, i.e., the file serves as an implicit API. * Running 'git log' on version_info.h will point to CLs that implement or enable patch break changes. Bug: 1231882 Change-Id: I13243a5627870a31d8789d3579f1a50cc0e52bd5 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3287124 Commit-Queue: Samuel Huang <huangs@chromium.org> Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org> Reviewed-by: Etienne Pierre-Doray <etiennep@chromium.org> Cr-Commit-Position: refs/heads/main@{#942645} NOKEYCHECK=True GitOrigin-RevId: 0b4473c4e1683729ac9f81257ba48e1d3e34418f
2021-10-28[Zucchini]: Add patch version.Etienne Pierre-doray
This is a breaking change to zucchini patch format: Zucchini 1.0, see changelog. Add major/minor patch-wide version, and element version. Also add VerifyPatch() API and command line option to verify patch compatibility. Design: go/zucchini-versions Bug: 1231882 Change-Id: I19f1fbe2ee866c23f0814ffe6a912fb72812edbc Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140224 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by: Samuel Huang <huangs@chromium.org> Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org> Cr-Commit-Position: refs/heads/main@{#936096} NOKEYCHECK=True GitOrigin-RevId: 559d77a9741428a48add017d389d104e431e6de7
2021-07-23[Zucchini] Format change: PatchElementHeader: Group fields by "old" and "new".Samuel Huang
Previously PatchElementHeader members were ordered by: [old_offset, new_offset, old_length, new_length]. This CL changes the order to [old_offset, old_length, new_offset, new_length] to be consistent with PatchHeader's grouping by "old" and "new". Also improve comments in patch_read_write_unittest.cc, and fix input value in PatchElementTest.WrongExtraData. Change-Id: I0dab56b7de1ba99f0a2f686dfebdf422a9d1c3b0 Reviewed-on: https://chromium-review.googlesource.com/1043073 Commit-Queue: Samuel Huang <huangs@chromium.org> Reviewed-by: Greg Thompson <grt@chromium.org> Cr-Commit-Position: refs/heads/master@{#556076} NOKEYCHECK=True GitOrigin-RevId: cfb444ca0a5d494fc7e7beb74b0481249249671a
2021-07-23[Zucchini] Format change: Remove PatchType.Samuel Huang
Previously, Zucchini patches store a uint32_t PatchType enum that distinguishes among (0) raw patch, (1) single executable patch, and (2) ensemble patch. However, ever since every element (and gap) stores ExecutableType, this PatchType field has become a vestige. This CL simplifies Zucchini by removing PatchType, including in README.md and tests. This CL alters Zucchini patch format (removes 4 bytes); patches created across this change are incompatible. Bug: 729154 Change-Id: Ia5f467ba5e01720f5085ce87a5de88f678a64930 Reviewed-on: https://chromium-review.googlesource.com/981789 Commit-Queue: Samuel Huang <huangs@chromium.org> Reviewed-by: Greg Thompson <grt@chromium.org> Cr-Commit-Position: refs/heads/master@{#546621} NOKEYCHECK=True GitOrigin-RevId: 325bcee07f3eb9e3604c8aa0367ae7145025ddb6
2021-07-23[Zucchini] Move Zucchini from /chrome/installer/ to /components/.Samuel Huang
(Use "git log --follow" to see older revisions of files). /components/ is the most logical place to put Zucchini, which only depends on /base and /testing/gtest. This move also enables Zucchini to be used by the Component Updater. Details: - Move all files; run the following to change deps and guards: sed 's/chrome\/installer/components/' *.cc *.h -i sed 's/CHROME_INSTALLER/COMPONENTS/' *.cc *.h -i - Sorting works out pretty well! - Change all 'chrome/installer/zucchini' to 'components/zucchini' throughout other parts of the repo; sort if necessary. - Fix 6 'git cl lint' errors. - Change 1 Bind() usage to BindRepeated(). - Update OWNER. Bug: 729154 Change-Id: I50c5a7d411ea85f707b5994ab319dfb2a1acccf7 Reviewed-on: https://chromium-review.googlesource.com/954923 Reviewed-by: Greg Thompson <grt@chromium.org> Reviewed-by: Jochen Eisinger <jochen@chromium.org> Reviewed-by: Samuel Huang <huangs@chromium.org> Commit-Queue: Samuel Huang <huangs@chromium.org> Cr-Commit-Position: refs/heads/master@{#542857} NOKEYCHECK=True GitOrigin-RevId: 577ef6c435e8d43be6e3e60ccbcbd1881780f4ec