RPM Packages

These RPM packages are externally managed by Rallaz at this location: https://github.com/Rallaz/LibreCAD/wiki/Rpm-packages

Please follow your distributions installation instructions on how to install RPM packages.

@arrbee arrbee wip: adding metric to diff 99ba8f2
@arrbee arrbee Change similarity metric to sampled hashes
This moves the similarity metric code out of buf_text and into a
new file.  Also, this implements a different approach to similarity
measurement based on a Rabin-Karp rolling hash where we only keep
the top 100 and bottom 100 hashes.  In theory, that should be
sufficient samples to given a fairly accurate measurement while
limiting the amount of data we keep for file signatures no matter
how large the file is.
@arrbee arrbee More tests of file signatures with whitespace opts
Seems to be working pretty well...
@arrbee arrbee Pluggable similarity metric API a235e9d
@arrbee arrbee Refine pluggable similarity API
This plugs in the three basic similarity strategies for handling
whitespace via internal use of the pluggable API.  In so doing, I
realized that the use of git_buf in the hashsig API was not needed
and actually just made it harder to use, so I tweaked that API as

Note that the similarity metric is still not hooked up in the
find_similarity code - this is just setting out the function that
will be used.
@arrbee arrbee Replace diff delta binary with flags
Previously the git_diff_delta recorded if the delta was binary.
This replaces that (with no net change in structure size) with
a full set of flags.  The flag values that were already in use
for individual git_diff_file objects are reused for the delta
flags, too (along with renaming those flags to make it clear that
they are used more generally).

This (a) makes things somewhat more consistent (because I was
using a -1 value in the "boolean" binary field to indicate unset,
whereas now I can just use the flags that are easier to understand),
and (b) will make it easier for me to add some additional flags to
the delta object in the future, such as marking the results of a
copy/rename detection or other deltas that might want a special

While making this change, I officially moved some of the flags that
were internal only into the private diff header.

This also allowed me to remove a gross hack in rename/copy detect
code where I was overwriting the status field with an internal

parts rpm package is not necessary, it contains the LibreCAD example blocks