Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
History of file src/fsl_diff.c at check-in ee03f7343f44cea8
2024-10-31
| ||
23:48 | Pull in upstream [fossil:f214aba4f5c4846de0e1] to fix an obscure assert() triggered by diffs with hundreds of thousands of lines. However, this fix leads to the same offending diff now causing an apparently hang in libfossil (still waiting after four minutes, whereas fossil diff took only 2s). That's to be investigated Real Soon Now. file: [353dc9564f] check-in: [203439be88] user: stephan branch: trunk, size: 62074 | |
2023-12-08
| ||
09:35 | Upstream tweak [fossil:a45c7f0a560a90541967f790c4b5] to adjust diff output slightly. file: [65804ff8b1] check-in: [9313a01a00] user: stephan branch: trunk, size: 62043 | |
2023-07-28
| ||
16:22 | Apply upstream diff int overflow patch [fossil:5882e9e87861c7c0]. file: [7ff3f0a168] check-in: [ef095328f7] user: stephan branch: trunk, size: 62031 | |
2023-04-19
| ||
02:26 | Apply a set of missing f(void) and assigned-but-unused vars from Mark J. file: [c6dcb2ad36] check-in: [b96f5840ea] user: stephan branch: no-common-ancestor, size: 62013 | |
2022-02-18
| ||
16:36 | Back-ported [fossil:868d1608382a9bb1] for (cosmetic) diff alignment improvements. file: [6bc434ba0f] check-in: [57f6086d58] user: stephan branch: trunk, size: 62154 | |
2022-01-24
| ||
03:44 | Ported in upstream [fossil:8cd73dda3d10ff143740] diff generation tweaks. file: [eac0542d0f] check-in: [75349fc193] user: stephan branch: trunk, size: 60368 | |
2022-01-23
| ||
18:58 | Removed duplicate docs for fsl__diff_optimize(). file: [fc36a4eb18] check-in: [d8d1bc92a4] user: stephan branch: trunk, size: 58109 | |
18:57 | Now that the v1 diff code is gone, consolidated diff.c/diff2.c into diff.c and moved the dibu-specific code into the new dibu.c. That required exposing fsl__diff_optimize() via internal.h so that fnc.c can see it. (Edit: in hindsight, should have renamed diff2.c to dibu.c since most of diff2.c was dibu stuff. Oh, well.) file: [0debae9190] check-in: [2cca86d9a0] user: stephan branch: trunk, size: 59038 | |
08:57 | Ported in upstream diff changes [fossil:fbdbc09b402b19de] and [fossil:c311efef078c8733]. Diffing still seems to work. file: [3f279e5199] check-in: [93f03cf9ee] user: stephan branch: trunk, size: 13605 | |
2022-01-20
| ||
08:54 | Remove deprecated diff v1 code as per /chat discussion. This removes all exclusive diff v1 library routines and data types in preparation for importing this implementation into fnc as per chat with Stephan. It is on a branch pending review in case any bits were missed or incorrectly purged. file: [2560a46c43] check-in: [dbf0fb30dd] user: mark branch: rm-diff-v1, size: 13839 | |
2022-01-02
| ||
00:32 | Added FSL_OMIT_DEPRECATED #define to cause the deprecated APIs to be elided. Got core lib building that way. Removed FSL_EXPORT from functions declared in deprecated.h. file: [7dd54a8bce] check-in: [b7046bf39b] user: stephan branch: trunk, size: 63269 | |
2021-12-21
| ||
08:28 | Moved fossil-scm/fossil.h to ../libfossil.h so that client code can build from both the canonical tree and amalgamation using the same include name. file: [ebbfd18d5d] check-in: [76d6359435] user: stephan branch: trunk, size: 63490 | |
2021-12-20
| ||
22:45 | Ported in upstream diff fixes from [fossil:5bb01585bc8677ab15ef]. file: [23bd03e8ca] check-in: [0bee68c7c7] user: stephan branch: trunk, size: 63498 | |
2021-12-03
| ||
04:49 | Removed a large swath of assigned-but-unused code in the v1 HTML sbs diff generator, as detected by clang 13. Reported by Mark via /chat. file: [a8dd63025e] check-in: [5a433bf878] user: stephan branch: trunk, size: 63532 | |
2021-11-02
| ||
23:52 | Mass renaming of many internal APIs from fsl_X to fsl__X (two underscores) and several adjacent const cleanups. file: [114b893b93] check-in: [83917b7b45] user: stephan branch: trunk, size: 63954 | |
2021-11-01
| ||
14:15 | Replaced sprintf() with snprintf() and might (unsure) have squelched a warning regarding uninitialized array elements. file: [167a5486d0] check-in: [1dbcee9144] user: stephan branch: trunk, size: 63938 | |
2021-10-11
| ||
07:05 | Ported over the UTF-8 parts of fossil's "looks like" APIs. Whether or not we really need the UTF-16 counterparts remains to be seen. file: [bba32c009f] check-in: [496de4c153] user: stephan branch: trunk, size: 63934 | |
2021-10-08
| ||
19:46 | Fixed a NULL deref in the diff code when one version of a file being diffed does not exist (e.g. when diffing a new file against a non-existent prior version). This fixes a segfault when fnc is asked to diff a checkin which contains a new file. file: [3905f01a5b] check-in: [6aac145a22] user: stephan branch: trunk, size: 64186 | |
2021-10-07
| ||
03:27 | Resolved the mind-numbing diff problem, caused by having used an (unsigned int) where a uint64_t was needed for the fsl_dline::h member (hash value overflow led to mismatches between this impl and fossil's). Annotate, at least in its basic form, now works (testing with ignoring whitespace and such is pending). file: [080573489d] check-in: [e456c5ab39] user: stephan branch: port-annotate, size: 64266 | |
02:02 | Eliminated some extraneous diff-internal code. file: [5c300edc57] check-in: [32ba71065d] user: stephan branch: trunk, size: 64670 | |
2021-10-06
| ||
23:21 | Have narrowed down the source of the annotation difference (as it were) to the lower-level diff code, but _why_ libf is getting different results from fossil there (unless we force _both_ to do optimal matching on all diffs) is still a complete mystery. file: [955fe1eb6e] check-in: [0e55962dc9] user: stephan branch: port-annotate, size: 67762 | |
2021-09-26
| ||
22:56 | Seem to have gotten unified text diff _mostly_ working with the diff builder interface, though it required extending that interface a bit. We're still outputing more context than fossil does, for as-yet-unknown reasons, but the suspected off-by-one mentioned in the last commit was solved (it was not an off-by-one, but misuse of comparison routine results in fsl__diff_optimize()). file: [a936359f84] check-in: [103399cdf7] user: stephan branch: trunk, size: 68051 | |
14:33 | More work on the 2021-09 diff rendering bits. Fixed a couple deeply-internal diff bits which leave me wondering how diffs _ever_ worked here. file: [8762f96bdd] check-in: [af4d016879] user: stephan branch: trunk, size: 67271 | |
2021-09-18
| ||
17:39 | More work on the 2021 diff backend port. Still much to do. file: [34963633f4] check-in: [ed33831c3f] user: stephan branch: trunk, size: 66423 | |
10:48 | Tiny internal optimization in diff output. file: [dc6e8825ec] check-in: [5a1f0835b9] user: stephan branch: trunk, size: 68686 | |
10:39 | Changed semantics of fsl_appendf() to 0 on success, non-0 on error. Removed fsl_appendf_f() and replaced its uses with fsl_output_f(). Be on the lookout for subtle bugs, but the old printf()-style return semantics have never been relied upon so this should be side-effect-free. file: [f0b19d0b37] check-in: [b2e283edbf] user: stephan branch: trunk, size: 68672 | |
2021-03-01
| ||
16:21 | Arguably a typo fix in the new header. Thank goodness for stream editors. file: [8ada7266db] check-in: [386316db07] user: stephan branch: trunk, size: 68689 | |
15:46 | Replaced the overwhelming majority of license headers with the new project-standard one. Left a few as they were for files which were imported essentially unchanged from Fossil or, in the case of SHA1/SHA3/MD5 bits, other 3rd-party sources. file: [2b9a1e5fbd] check-in: [fa5fb24496] user: stephan branch: trunk, size: 68681 | |
2021-02-28
| ||
17:10 | Started porting in fossil's merge algorithm. It looks like the support algos are all in place, just the main merge is missing. First some sleep, though. file: [5aa968a4f2] check-in: [2cfc9d6ae9] user: stephan branch: trunk, size: 68933 | |
2021-02-15
| ||
03:24 | Renamed src/fsl_diff.c → src/diff.c. Renamed src/fsl_XYZ.c to src/XYZ.c. f-checkin vfile dump now includes renames. file: [38702cd852] check-in: [ed3183170a] user: stephan branch: trunk, size: 67745 | |
2021-02-12
| ||
22:09 | libfossil is now C99, rather than C89, per discussion at [https://fossil.wanderinghorse.net/r/libfossil-forum/forumpost/e02ff0e8d0]. fsl_int{16,32,64}_t have been replaced by the standard uint{16,32,64}_t, FSL_xxx_T_PFMT/SFMT replaced with PRIx32 and friends, and auto.def now checks for -std=c99 capability (but that check could probably be done differently/improved). fsl_int_t and fsl_uint_t are retained, as they're more about documentation/intent than fixed sizes. file: [38702cd852] check-in: [ee070353b9] user: stephan branch: trunk, size: 67745 | |
2021-02-09
| ||
00:18 | Updated license text in almost all C/H to claim copyright while attributing all of the files as heavily derived from DRH's work. file: [4a33752f8a] check-in: [631fb3f69a] user: stephan branch: trunk, size: 67773 | |
2021-02-07
| ||
14:39 | Back-ported diff numeric overflow fix from [https://fossil-scm.org/fossil/info/e2b7dca948da84b7]. file: [4ecef28e82] check-in: [f11bfb3bcf] user: stephan branch: trunk, size: 67732 | |
14:31 | Globally replaced http://... URLs with https://.... Most of them probably still work, too. file: [8d725a538f] check-in: [6af7b3b7c8] user: stephan branch: trunk, size: 67719 | |
2014-04-28
| ||
11:22 | Cherry-pick [http://fossil-scm.org/index.html/info/1274c97d700ed05fbb60d327fa758562824bc280|1274c97d70]: Fix function same_dline_ignore_allws(), for the case where one side of the diff was an empty line. Example where it went wrong: [http://fossil-scm.org/index.html/fdiff?v1=d5e0c2dc93&v2=7ee7dd0a42&sbs=1&w] file: [0030e714a9] check-in: [e54f14f83c] user: jan.nijtmans branch: trunk, size: 67717 | |
2014-04-03
| ||
17:50 | pulled in upstream fix from http://www.fossil-scm.org/index.html/info/c23190a61d7794b7935bbef1b00eee3377f80c85 file: [f1fe48b25e] check-in: [11edd969f0] user: stephan branch: trunk, size: 67695 | |
2014-04-01
| ||
17:03 | fixed resetting of ANSI colors when in HTML mode. file: [b6c5da7125] check-in: [a030960792] user: stephan branch: trunk, size: 67751 | |
2014-03-28
| ||
21:33 | All sorts of minor warning fixes revealed by compiling the amalgamation in Qt Creator. fsl_delta.c is not warning-free yet b/c my attempts to fix the signedness complaints have broken it. file: [95a9d0b829] check-in: [cb99e115a4] user: stephan branch: trunk, size: 67738 | |
2014-03-27
| ||
16:23 | Ported in the DContext::same_fn() bits from fossil(1). Have not tested them but no existing code was broken by them. file: [a538351a61] check-in: [dab9579623] user: stephan branch: trunk, size: 67726 | |
2014-03-26
| ||
17:18 | minor tinkering with the diff code. file: [8a8729263b] check-in: [304a5dc4d0] user: stephan branch: trunk, size: 66934 | |
15:48 | Fluff: started adding basic ANSI color support to text-mode diffs. Only context diffs for the time being. file: [6d4853054a] check-in: [41e6280df7] user: stephan branch: trunk, size: 66918 | |
2014-03-17
| ||
14:40 | Port [http://fossil-scm.org/index.html/info/597d1101b4|597d1101b4] bugfix. file: [9e3e4959b5] check-in: [e4bf163a5f] user: jan.nijtmans branch: trunk, size: 64254 | |
2014-03-16
| ||
17:30 | Pulled in upstream diff-generation tweaks. file: [39ca6d9bb9] check-in: [adb83cc610] user: stephan branch: trunk, size: 64389 | |
2014-03-15
| ||
09:33 | Pulled in upstream diff fix http://www.fossil-scm.org/index.html/info/e2e8531ba7. file: [c57036d302] check-in: [a5bda1ae61] user: stephan branch: trunk, size: 63919 | |
2014-03-13
| ||
11:36 | Make some files compile on MinGW. Ongoing. file: [e96a5ef59a] check-in: [7e5ca27c8c] user: jan.nijtmans branch: trunk, size: 63855 | |
2014-03-12
| ||
11:37 | Pulled i upstream fix (well, _change_) in diff algos. file: [7333b7649a] check-in: [f6586dfda9] user: stephan branch: trunk, size: 63806 | |
2014-03-11
| ||
21:00 | pulled in upstream diff-generation changes: http://www.fossil-scm.org/index.html/info/ac3fcebb19 file: [607fcb7f98] check-in: [d84b24de1e] user: stephan branch: trunk, size: 63806 | |
2014-03-04
| ||
16:51 | pulled in fixes from [http://fossil-scm.org/index.html/info/7a0f4af68e] and [http://fossil-scm.org/index.html/info/8f885df209]. file: [205bc933e8] check-in: [9d234667f6] user: stephan branch: trunk, size: 63437 | |
2014-02-23
| ||
10:44 | Added f-adiff (artifact diff) app. Renamed fsl_diff_text()-generated CSS class names for consistency and to unbrevitize them a bit. file: [f413295502] check-in: [d1487367a6] user: stephan branch: trunk, size: 63428 | |
2014-02-14
| ||
09:05 | Globally changes the API docs from fossil/sqlite-style '**' to Doxygen-friendly format because the extra stars hinder writability/changability and require an extra filter at the doxygen-processing level. file: [8d9f25e80c] check-in: [a2cbd2e343] user: stephan branch: trunk, size: 63314 | |
2013-09-18
| ||
17:17 | changed semantics of contextLines diff argument when==0. file: [5853309647] check-in: [85d6717c6c] user: stephan branch: trunk, size: 63314 | |
2013-09-01
| ||
11:48 | switched line number column from 6 back to 5 digits. Minor test code and doc tweaks. file: [8d947bd239] check-in: [1ea8b6c48a] user: stephan branch: trunk, size: 62724 | |
11:37 | doc updates. fixed an off-by-one in sbs display in inverted mode (caused by a formatting change i made earlier, not a bug in the original code). Added 'fsl-' prefix to all CSS class names. file: [958df5f0f4] check-in: [1a45779c91] user: stephan branch: trunk, size: 62724 | |
11:15 | FSL_DIFF_SIDEBYSIDE is now implicit if the sbsWidth argument is not 0. file: [287fe2a864] check-in: [c044f55804] user: stephan branch: trunk, size: 62743 | |
10:50 | removed dangling debug output. file: [eea5de078c] check-in: [91c7f44a58] user: stephan branch: trunk, size: 62645 | |
10:48 | Ported in sbs diffs. file: [50e5250bd8] check-in: [b9651d78bf] user: stephan branch: trunk, size: 62816 | |
09:22 | consolidated duplicate htmlize code. Re-added htmlize to diffs. file: [ef5ca6513f] check-in: [2e4b4226b9] user: stephan branch: trunk, size: 31923 | |
08:37 | Refactored diff generator to send its output to a fsl_output_f() instead of a buffer. file: [9876aa1e4f] check-in: [f156d46b10] user: stephan branch: trunk, size: 31924 | |
2013-08-31
| ||
16:08 | memleak fix in test code while testing for a leak in lib code. file: [aa54363ed0] check-in: [c0d1362cd6] user: stephan branch: trunk, size: 30513 | |
15:58 | Introducing fsl_diff_text(). file: [16a8bd1ad4] check-in: [881eabc5ba] user: stephan branch: trunk, size: 30549 | |
14:21 | Added: Started porting in the diff generation bits. Still much to do. file: [479937f9aa] check-in: [71111bb670] user: stephan branch: trunk, size: 7730 | |