summaryrefslogtreecommitdiff
path: root/src/libostree/ostree-repo-static-delta-compilation-analysis.c
Commit message (Collapse)AuthorAgeFilesLines
* tree-wide: Run clang-formatColin Walters2023-05-021-78/+58
| | | | | This is a one-time tree wide reformatting to ensure consistency going forward.
* Strip trailing whitespace on all C filesDan Nicholson2023-02-071-3/+3
| | | | | | | | My editor started following the configuration in .editorconfig and is applying this rule to many files I'm editing. Let's just get this over with and strip everything. This was done like so: git ls-files | grep '\.[ch]$' | xargs sed -ri 's/\s+$//'
* Update FSF license notices to use URL instead of addressJoseph Marrero2021-12-071-3/+1
|
* Add SPDX-License-Identifier to source filesMarcus Folkesson2018-01-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | SPDX License List is a list of (common) open source licenses that can be referred to by a “short identifier”. It has several advantages compared to the common "license header texts" usually found in source files. Some of the advantages: * It is precise; there is no ambiguity due to variations in license header text * It is language neutral * It is easy to machine process * It is concise * It is simple and can be used without much cost in interpreted environments like java Script, etc. * An SPDX license identifier is immutable. * It provides simple guidance for developers who want to make sure the license for their code is respected See http://spdx.org for further reading. Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> Closes: #1439 Approved by: cgwalters
* deltas: Don't try to rollsum/bsdiff .xz filesColin Walters2017-11-091-9/+35
| | | | | | | | | | | | | | | | Fedora switched to 'xz' compress kernel modules, and recently [RHEL7 did too](https://bugzilla.redhat.com/show_bug.cgi?id=1367496). This compression defeats bsdiff. While we have a "rollsum-able" test, we don't have a "bsdiff-able" test as it'd be very expensive (we'd have to bsdiff, then apply it and compare the result). Let's do the tactical quick fix here and just not try to delta files ending in `.xz.`. This avoids us using bsdiff pointlessly for over 4000 files, which is quite a notable speed increase for generating deltas. Closes: #1333 Approved by: jlebon
* tree-wide: Remove Emacs modelinesColin Walters2017-09-211-2/+1
| | | | | | | | | We added a `.dir-locals.el` in commit: 9a77017d87b74c5e2895cdd64ad098018929403f There's no need to have it per-file, with that people might think to add other editors, which is the wrong direction. Closes: #1206 Approved by: jlebon
* [ASAN] lib: Squash various leaks in library and commandlineColin Walters2016-11-211-1/+1
| | | | | | | | The pull one is the most likely to affect users. Otherwise mostly just cleaning up `-fsanitize=address`. Closes: #587 Approved by: jlebon
* static-delta: find a similar filename using what is before '.' or '-'Giuseppe Scrivano2016-10-281-25/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve the heuristic to use only the part before the first '.' when looking for a similar file in the current directory. last versions of dracut generate reproducible initramfs files, but we still fallback to the full file download if there is any minimal change that causes a different checksum and file name. This change extends that case to deal better with similar files that have a different suffix. This is the difference generating a static delta from fedora-atomic/f24/x86_64/docker-host to fedora-atomic/f24/x86_64/testing/docker-host before the patch: fallback for 111ec866aa7ce3688407fa4a1ae7c9fca93dcee0b851fc9434c59ff947830cc7 (47.0 MB) fallback for c6a898265de22b02c89ea2f35d132628d0ee1c0a058052ed14fee5799c17904c (47.0 MB) fallback for fbce656249ece77260887ed873e445561b9d43bcb28a32e759c0b1bab89e7137 (6.6 MB) fallback for cfdb51457e47e0a0fe0bac38991a21279d2646ff2f019630c7b52a0cd3451397 (6.6 MB) part 0 n:1972 compressed:11239809 uncompressed:33747412 part 1 n:1079 compressed:9683681 uncompressed:55641397 part 2 n:1507 compressed:15050265 uncompressed:44448838 part 3 n:101 compressed:1865881 uncompressed:31896086 part 4 n:278 compressed:2452585 uncompressed:52811323 part 5 n:18 compressed:67621 uncompressed:100220 uncompressed=218645276 compressed=40359842 loose=545102 rollsum=49 objects, 2117254 bytes bsdiff=4067 objects after the patch: part 0 n:843 compressed:19844109 uncompressed:95443178 part 1 n:1223 compressed:11188609 uncompressed:33330401 part 2 n:990 compressed:15762905 uncompressed:61214132 part 3 n:1441 compressed:20614573 uncompressed:31534195 part 4 n:163 compressed:2734997 uncompressed:51356423 part 5 n:285 compressed:2480813 uncompressed:52902904 part 6 n:14 compressed:59125 uncompressed:75341 uncompressed=325856574 compressed=72685131 loose=533283 rollsum=51 objects, 57235332 bytes bsdiff=4073 objects Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com> Closes: #554 Approved by: cgwalters
* libglnx porting: gs_transfer_out_value -> g_steal_pointerColin Walters2016-03-181-2/+4
| | | | It's a bit more verbose but...eh.
* static-delta: Ignore symlinks when computing similar objectsJohn Hiesey2015-08-261-9/+7
| | | | | | | | _ostree_delta_compute_similar_objects should not output symlinks. Previously, a symlink in the "from" commit could be matched to a real file in the "to" commit, since nothing was filtering symlinks on the "from" side. This led to failures running the bzdiff algorithm.
* Use g_autoptr(GVariant) instead of gs_unref_variantMatthew Barnes2015-05-061-1/+1
|
* Use g_autoptr(GPtrArray) instead of gs_unref_ptrarrayMatthew Barnes2015-05-061-3/+3
|
* Use g_autoptr(GHashTable) instead of gs_unref_hashtableMatthew Barnes2015-05-061-2/+2
|
* Use g_autoptr() for GIO object typesMatthew Barnes2015-05-061-1/+1
| | | | | GLib 2.44 supplies all the necessary autocleanup macros for GIO types, and libglnx backports the relevant macros for ostree.
* Fix "make syntax-check" failures.Giuseppe Scrivano2015-03-031-1/+0
| | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* Fix GObject introspection annotationGiuseppe Scrivano2015-02-231-1/+1
| | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* deltas: Search for similar objects (possibly renamed across directories)Colin Walters2015-02-161-0/+305
The previous diff algorithm was file tree based, and only looked at modified files that lived at the same path. However, components like the Linux kernel have versioned subdirectories, e.g. /usr/lib/modules/$kver/.../ext4.ko. We want to be able to detect these "modified renames" so that we can compute diffs (rollsum, bsdiff).