msc-generator (8.6.2-1) [PTS] [DDPO]
OLD: VCS is behind the version in the archive: 8.5-1 < 8.6.2-1.Hint: This git repository uses http. You might need to run git update-server-info to update the auxiliary info files.
- Git: https://gitlab.com/msc-generator/msc-generator.git -b debian/unstable
- Branch: debian/unstable
- Path: debian/changelog
- Repo size: 29200384
- Browser: https://gitlab.com/msc-generator/msc-generator/-/tree/debian/unstable
- Last scan: 2024-08-13 15:14:12+00
- Next scan: 2024-08-14 16:26:00+00
- Debian changelog in Git:
msc-generator (8.5-1) unstable; urgency=medium * New upstream v8.5 * No need to forward 0001-debian-example.patch upstream * Remove unused build dep python3-pil * Bump copyright years -- Gábor Németh <homar@riseup.net> Sat, 20 Jan 2024 08:45:45 +0100
- This branch is 274 commits ahead of tag v8.4
- Git log:
commit 6c9870efbca552f9406b0d8364dbf854fcb8dbd3 Author: Gábor Németh <homar@riseup.net> Date: Sat Jan 20 08:45:45 2024 +0100 Bump copyright years commit 9158adecb30c9db176eebccbf7d796816b1cbc29 Author: Gábor Németh <homar@riseup.net> Date: Tue Oct 3 08:17:51 2023 +0200 Drop unused BD commit c3ab30e379b5d358ec7b07a7a8990aa96238baa7 Author: Gábor Németh <homar@riseup.net> Date: Mon Oct 2 16:18:05 2023 +0200 Fix DEP-3 header for 0001 commit d384d020609dfe4188d505c7dca93bc7de2c3f0c Author: Gábor Németh <homar@riseup.net> Date: Fri Jan 19 15:51:48 2024 +0100 Start on new upstream 8.5 commit 5b8ec245fa1d25681349f63632e65bc62e874a44 Merge: 7f4e55c65 074a209f8 Author: Gábor Németh <homar@riseup.net> Date: Fri Jan 19 15:47:56 2024 +0100 Merge tag 'v8.5' into debian/unstable commit 074a209f8b6fdf193eda5f1e4af84be273487b7c Author: Gábor Németh <homar@riseup.net> Date: Thu Jan 18 16:55:59 2024 +0100 [build] Add missing images for dist commit dccfe7a7351bdbe324ce46e85eb83785bc04e330 Author: Gábor Németh <homar@riseup.net> Date: Mon Jan 15 11:01:02 2024 +0000 [ci] Make building with 'my' default commit adc6618f2baa5a4d896168151dcff224c6c9c2ba Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Dec 5 17:20:40 2023 +0100 v8.5 version bump and doc update commit 8c294a96af1466564109b4d704f3f06d8ef53d1d Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Dec 8 16:27:06 2023 +0100 [signalling] fix: last page in OLE is distorted When copying the last page of a chart as an OLE object to the clipboard, it ended up in the right size object for the last page, but compressing the last page to the bottom of the rectangle having empty space above corresponding to previous pages. This turned out to be a problem with EMF/WMF drawing. When drawing the last page of a signalling chart, the background fill was not clipped by cairo/windows (not sure which is to blame). So the entire chart background was added to the EMF (with the size of only the last page), which compressed the image in the Y dir. This is a workaround to avoid clipping the background for WMF/EMF exactly at the bk rectangle's edge. commit b7cfda09d31feb3774085e846ddb89fe5d8a52fa Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Dec 7 15:05:27 2023 +0100 fix: Canvas WMF and EMF drawing - fake_scale now calculated from actual page size, not the size of the whole chart. - Bad control flow fully prevented WMF and EMF file output. - WMF was not a possible file extension for output files. commit 1ff4ff1c33d1b8aed12e5d5ed32f1290bf8e757d Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Dec 8 22:10:01 2023 +0100 [win] Dont allow pasting arbitrary text as a chart commit 163eab33351de4773468fc39aa27270e248e073f Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Dec 7 15:03:41 2023 +0100 [win] fix: blocking compilation freezes It ended up in an infinite loop by forcing redraw from inside OnDraw(). It also did not take compilation result due to seq number mismatch. commit 96414d9c4e78ba871c7be6ba422d2029f5daf63d Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Dec 5 16:48:56 2023 +0100 [win, gui] fix: multi-page copying Now when copying the entire chart, we use the currently selected page. - win: Removed the sub-buttons of the "Copy Chart" button - gui: we save clipboard content even if only page or gui state changes commit d26b4d2405cc62713143f743b39dfbcc50821ea0 Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Dec 5 11:40:42 2023 +0100 [win] Added AutoSave to the MFC GUI Also rationalized the checks for changes (both for AutoSave and Instant Compilation). Now we only check for changes 200ms after the last change was made. If the user kept typing we postpone the saves and compilations until we have 200ms of no change. This provides a less vibrant experience. commit e9a2cc5be532cc73d8d221324a40909eb45171c5 Author: Zoltán Turányi <teknos@gmail.com> Date: Mon Dec 4 11:34:41 2023 +0100 [win] Added Instant Compile to the MFC GUI commit 0cae5e9b2499513af69d3a3d89ca30034c4610fa Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Dec 1 15:47:41 2023 +0100 [win] Added support for alt-text embedding - Changes to the GUI - Added AutoPaste checkbox to settings (saved to registry) - Added new "Copy entire chart" button, fixed button menu - Added logic to handle Clipboard-originated files & store original clipboard content (for update) - Added code to paste alt-text clipboard content - Added code to save when originating from Clipboard - Added code to copy to clipboard in alt-text format - Added CMscGenDoc::SetStatusMessage() to change the status bar. Known bugs: external editor does not handle this. commit 7ded8d660800bffb6ae860648f41e304129d3cb3 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Dec 1 14:39:48 2023 +0100 Extend DrawToFile() with single-page option Both Canvas::DrawToFile() and CDrawingChartData::DrawToFile() is extended with a parameter that allows drawing only a single page of the chart to a file. This also involves changing the Canvas ctor used for file output. It no longer adds page number to the filename, that was moved to Chart::DrawToFile(). commit 1daaf37a13936d99b9b62dfaef0745142bd00e80 Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Nov 30 12:58:37 2023 +0100 [win] rationalize CMscGenConf::SetLanguage() commit c3fb5f52a98d464393d65a8f294fc73e0502846d Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Nov 30 12:53:53 2023 +0100 [win] rationalize CDrawingChartData::GetSize() commit e8a01957f7f091b11272091487d8e629b017bc11 Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Nov 30 10:49:40 2023 +0100 Small refactor of Canvas::GetPagePosition() commit 14d0ba599700cf988276ce7628d9dc928e330760 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 29 20:47:21 2023 +0100 [win] Clipboard ops moved to separate file So that the MFC GUI can use them later. commit a5dba5e443aa90ebc4e87ffa07c2eb5af92ec678 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 29 20:45:50 2023 +0100 [win] Disambiguate taking compile results There is a race condition scenario: a compilation is finished, then a message is sent, but is not processed until a second compilation is done and a second message is sent. Then we process the first message and take the compilation result (of the second compilation as it overwrites that of the first). When the second message comes, we will have no compile result. In this patch we fix this race. Now we track each compilation with a seq number and can match them to WM_APP+293 messages. commit 31b0a22fd494d1bc5cf0340f30d1a354dce100fd Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 29 20:39:04 2023 +0100 [win] opt: move CChartData instead of copy commit a9e079ce3064a46c46a031f8f607f52f44ba52f9 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 29 20:35:40 2023 +0100 [gui] More precise clipboard detection When we see an eligible object on the clipboard (Art_GVML or Alt-text) we only offer to paste it until it is on the clipboard. commit 8e51bcf0901004446ee9f0d2a0135a2a2c1fe5cb Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 29 09:59:12 2023 +0100 [gui] separate clipboard.h from GUI commit 7f3357ee7f3c51fab82ba585e147904ecf8704d9 Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Nov 28 14:06:30 2023 +0100 Spelling commit d3f549d21fb3b42eb20d42e76f823020364e641d Author: Gábor Németh <homar@riseup.net> Date: Mon Dec 11 20:42:23 2023 +0000 [build] Fix UB regexp; fix #90 commit f39467ec1c4967ddb5bcf719476259be74402520 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Dec 1 15:33:28 2023 +0100 [mac] fix: drop a framework deprecated in 10.11 Starting in macOS 11.0, the Uniform Type Identifiers (UTI) framework replaces the older Core Services framework for UTI management. The use of deprecated values stopped working sometime Nov 2023. This patch makes Msc-generator work only on MacOS 11.0 and later. commit a9b5d782b2ecbe1b05b08f0357db4166fdbe5d4d Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Nov 28 14:12:24 2023 +0100 [mac] avoid a warning commit 41cf4b85cbe4f77cda0ce6c6835eec5f71016aec Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Nov 28 17:49:41 2023 +0100 [graph] Fix compatibility with graphviz 9.0 Both 9.0 and 8.0 has introduced breaking API changes. Here we cater for them. Note that graphviz does not define a version macro available at compile time, hence the tinkering in configure. On Windows, please set the graphviz version in src/IncludesGraphviz.props manually. commit b7e0e7409ff451f51f896df602ebfa0b7beb4685 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Nov 24 09:31:07 2023 +0100 [contour] Make at() non-checking A few more percentages, all across the board. (Most cases we just use it in iterating through the contour, hence no checking is needed. Also at_next() and at_prev() uses it, and they are guaranteed to be in-bounds. Also, never did we get an exception so far.) This results in another 1.6% increase, bringing the total from where we started almost to 30%. Run on (24 X 1236 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 0.20, 0.25, 0.58 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3044 ns 3044 ns 230729 ExpandBoxy/16 55765 ns 55765 ns 12577 ExpandBoxy/256 7876395 ns 7875878 ns 89 ExpandBoxyRotate/1 3631 ns 3631 ns 192275 ExpandBoxyRotate/16 62579 ns 62578 ns 11112 ExpandBoxyRotate/256 8312183 ns 8311254 ns 84 ExpandCurvy/1 26525 ns 26523 ns 26388 ExpandCurvy/16 224321 ns 224318 ns 3126 ExpandCurvy/256 8438712 ns 8438524 ns 83 UnionBoxy/1 7151 ns 7151 ns 98032 UnionBoxy/16 156933 ns 156932 ns 4461 UnionBoxy/256 21684130 ns 21682948 ns 32 UnionBoxyRotate/1 7894 ns 7893 ns 88426 UnionBoxyRotate/16 166515 ns 166503 ns 4201 UnionBoxyRotate/256 22315575 ns 22314481 ns 31 UnionCurvy/1 71387 ns 71388 ns 9786 UnionCurvy/16 971975 ns 971967 ns 720 UnionCurvy/256 72198055 ns 72191717 ns 10 commit 45d80af47f77be2c858add486fbcf97b5a08b867 Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Nov 23 15:03:01 2023 +0100 [contour] Improved storage for crosspoints Below a certain threshold we store them in a sorted vector, above we use our own hashmap. This way we could improve on the small use cases. Run on (24 X 2400 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 0.19, 4.67, 6.49 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3077 ns 3077 ns 227920 ExpandBoxy/16 57622 ns 57622 ns 12172 ExpandBoxy/256 8461165 ns 8460465 ns 83 ExpandBoxyRotate/1 3695 ns 3695 ns 189408 ExpandBoxyRotate/16 64395 ns 64394 ns 10884 ExpandBoxyRotate/256 8890518 ns 8889880 ns 78 ExpandCurvy/1 26667 ns 26666 ns 26073 ExpandCurvy/16 224740 ns 224733 ns 3100 ExpandCurvy/256 8618920 ns 8618740 ns 80 UnionBoxy/1 7227 ns 7227 ns 97316 UnionBoxy/16 163395 ns 163395 ns 4290 UnionBoxy/256 22832381 ns 22831577 ns 31 UnionBoxyRotate/1 8019 ns 8019 ns 87210 UnionBoxyRotate/16 173376 ns 173361 ns 4037 UnionBoxyRotate/256 23418420 ns 23418490 ns 30 UnionCurvy/1 70937 ns 70935 ns 9877 UnionCurvy/16 983335 ns 983313 ns 710 UnionCurvy/256 75947501 ns 75946574 ns 9 And this concludes the contour performance optimization batch, we have started in "[test] added simple perf test to measure Expand()" and continued for 11 commits. The cumulative performance gains are shown below. Boxy contours contain only horizontal and vertical edges, 4 times the number shown. Curvy contours only contain beziers the same number. -------------------------------------------------- Benchmark Old Time New Time Improvement -------------------------------------------------- ExpandBoxy/1 3647 3077 15.63% ExpandBoxy/16 89383 57622 35.53% ExpandBoxy/256 15439473 8460465 45.20% ExpandBoxyRotate/1 4214 3695 12.32% ExpandBoxyRotate/16 95817 64394 32.79% ExpandBoxyRotate/256 15810175 8889880 43.77% ExpandCurvy/1 29061 26666 8.24% ExpandCurvy/16 248244 224733 9.47% ExpandCurvy/256 11399963 8618740 24.40% UnionBoxy/1 6645 7227 -8.76% UnionBoxy/16 243493 163395 32.90% UnionBoxy/256 91934166 22831577 75.17% UnionBoxyRotate/1 7609 8019 -5.39% UnionBoxyRotate/16 253343 173361 31.57% UnionBoxyRotate/256 93682701 23418490 75.00% UnionCurvy/1 74213 70935 4.42% UnionCurvy/16 1139692 983313 13.72% UnionCurvy/256 160781347 75946574 52.76% This is an overall ~28% increase across all test cases, with the small contours not improving this much (or getting a bit worse), but with the larger ones having a more significant improvement. The small cases suffer from the more logic, which is needed to improve the large cases. Also, curvy test cases do not improve (or get worse) that much because their runtime is somewhat spent on crosspoint finding, which is not changed by these patches. commit 3157d9d79b2bf0d53a6d4bc7a7fbd60b18976b40 Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Nov 23 10:49:04 2023 +0100 [contour] Rearrange Ray fields to save padding We also move 'coverage_at_0_minus_inf', which is only ever used once per crosspoint from Ray to ContoursHelper::cp_heads. This reduces the size of Ray from 88/120 bytes (x86/x64) to 72/88 bytes. Surprisingly this has almost no effect on performance. commit d5816db28d652a25927194c2d3fabdf48d905698 Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Nov 23 09:55:16 2023 +0100 nit: better error message commit 9cf6d50e07ed9305595dce7aa742721dee7ee53e Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Nov 21 09:23:55 2023 +0100 [contour] Deterministic CP ordering When evaluating the crosspoints and selecting start rays, do them in increasing order of the crosspoints to make this order deterministic. This is to make tests reproducible. Only 4 tests are broken in very minor ways, so we update them in canonical. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2400 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 4.21, 3.85, 7.14 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3197 ns 3197 ns 219019 ExpandBoxy/16 59298 ns 59294 ns 11818 ExpandBoxy/256 8578589 ns 8578126 ns 82 ExpandBoxyRotate/1 3774 ns 3774 ns 184572 ExpandBoxyRotate/16 65595 ns 65594 ns 10671 ExpandBoxyRotate/256 8924224 ns 8923285 ns 78 ExpandCurvy/1 26689 ns 26688 ns 26249 ExpandCurvy/16 223863 ns 223861 ns 3121 ExpandCurvy/256 8649631 ns 8649333 ns 80 UnionBoxy/1 9078 ns 9077 ns 77168 UnionBoxy/16 178782 ns 178779 ns 3924 UnionBoxy/256 23158646 ns 23158062 ns 30 UnionBoxyRotate/1 9840 ns 9839 ns 71189 UnionBoxyRotate/16 185952 ns 185947 ns 3753 UnionBoxyRotate/256 23859546 ns 23858207 ns 29 UnionCurvy/1 72716 ns 72714 ns 9583 UnionCurvy/16 991993 ns 991933 ns 705 UnionCurvy/256 77092493 ns 77091358 ns 9 commit 505713b6fd5923d9e43e0de98bbdab0ffbf9dc9a Author: Zoltán Turányi <teknos@gmail.com> Date: Mon Nov 20 20:38:47 2023 +0100 [contour] Further optimizing ContoursHelper Remove the in-place linked list for contours from Ray. This saves some memory and lookup. Instead simply order Rays such that the rays are ordered as in a contour. Also, the heads of the contours are now stored in an ordered vector rather than in a hashmap, as most of the times we only have a very few SimpleContours participating. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 1767.88 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 1.77, 3.14, 6.60 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3148 ns 3148 ns 222377 ExpandBoxy/16 58574 ns 58573 ns 11940 ExpandBoxy/256 8718093 ns 8717710 ns 80 ExpandBoxyRotate/1 3674 ns 3673 ns 189143 ExpandBoxyRotate/16 65069 ns 65068 ns 10767 ExpandBoxyRotate/256 9087769 ns 9086854 ns 77 ExpandCurvy/1 26779 ns 26778 ns 26185 ExpandCurvy/16 225796 ns 225788 ns 3105 ExpandCurvy/256 8790516 ns 8790273 ns 80 UnionBoxy/1 8820 ns 8820 ns 79406 UnionBoxy/16 186609 ns 186608 ns 3757 UnionBoxy/256 23539413 ns 23538844 ns 30 UnionBoxyRotate/1 9695 ns 9695 ns 72121 UnionBoxyRotate/16 191479 ns 191475 ns 3644 UnionBoxyRotate/256 24072302 ns 24071279 ns 29 UnionCurvy/1 72496 ns 72494 ns 9614 UnionCurvy/16 998862 ns 998853 ns 701 UnionCurvy/256 77605554 ns 77602713 ns 9 commit 883c5e665e15ed6193fc6ca93a10722da017a4c5 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 22 14:20:38 2023 +0100 [contour] fix: evaluate CPs for untangle When we do untangle (one contour), we try finding the rightmost point of the path and deduce the coverage right of each crosspoint (and store it in the head's coverage_at_0_minus_inf member). This makes evaluating the crosspoints faster, as we do not need to find this out the hard way by walking the whole contour and checking X crossings for each crosspoint individually. Now, this mechanism was broken for some contours, where the rightmost point was also a crosspoint. This patch fixes it. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2400 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 1.33, 2.81, 6.31 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3120 ns 3120 ns 225112 ExpandBoxy/16 57256 ns 57255 ns 12230 ExpandBoxy/256 8468749 ns 8468250 ns 83 ExpandBoxyRotate/1 3654 ns 3653 ns 191672 ExpandBoxyRotate/16 63917 ns 63917 ns 10947 ExpandBoxyRotate/256 8875926 ns 8875386 ns 78 ExpandCurvy/1 26843 ns 26843 ns 26034 ExpandCurvy/16 224080 ns 224077 ns 3107 ExpandCurvy/256 8723783 ns 8723582 ns 80 UnionBoxy/1 8785 ns 8785 ns 80043 UnionBoxy/16 183018 ns 183016 ns 3831 UnionBoxy/256 23231065 ns 23229650 ns 30 UnionBoxyRotate/1 9710 ns 9710 ns 72760 UnionBoxyRotate/16 194118 ns 194116 ns 3609 UnionBoxyRotate/256 23895696 ns 23895429 ns 29 UnionCurvy/1 72573 ns 72571 ns 9640 UnionCurvy/16 992309 ns 992297 ns 704 UnionCurvy/256 77759144 ns 77756110 ns 9 commit de67863b8bd2d3747c1cf147056278e8a8e4dfb7 Author: Zoltán Turányi <teknos@gmail.com> Date: Sun Nov 19 15:09:01 2023 +0100 [contour] Optimize ContoursHelper data structures Replace the loose in-place lists in ContoursHelper::Ray with hashmaps to hold the head of contour and cp lists. This makes insertion to them much faster. It also makes Ray smaller, but this is not a large effect. We also realize that after PruneCrosspoints() all rays of a crosspoint are snapped to *exactly* the same coordinates, so strict equality is OK. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 1686.22 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 1.22, 2.54, 6.03 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3090 ns 3090 ns 227863 ExpandBoxy/16 59533 ns 59533 ns 11759 ExpandBoxy/256 8625136 ns 8624522 ns 80 ExpandBoxyRotate/1 3677 ns 3677 ns 190909 ExpandBoxyRotate/16 66114 ns 66114 ns 10594 ExpandBoxyRotate/256 8978649 ns 8978082 ns 78 ExpandCurvy/1 26556 ns 26555 ns 26374 ExpandCurvy/16 225428 ns 225420 ns 3107 ExpandCurvy/256 8744011 ns 8743616 ns 80 UnionBoxy/1 6291 ns 6291 ns 111820 UnionBoxy/16 176010 ns 176005 ns 3983 UnionBoxy/256 33784629 ns 33781507 ns 21 UnionBoxyRotate/1 7200 ns 7200 ns 97436 UnionBoxyRotate/16 182913 ns 182904 ns 3827 UnionBoxyRotate/256 34180432 ns 34178828 ns 21 UnionCurvy/1 70126 ns 70125 ns 9952 UnionCurvy/16 992774 ns 992768 ns 700 UnionCurvy/256 88512068 ns 88506930 ns 8 commit 803a9c5f49bb6809f682ea918f05606f72fa32ec Author: Zoltán Turányi <teknos@gmail.com> Date: Sun Nov 19 15:39:02 2023 +0100 Spelling commit 200b611e667fe196d5dc0de01cfe985c1bd66a0e Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Nov 17 17:48:42 2023 +0100 [contour] Optimize PruneCrosspoints() When creating the in-place ordered linked lists, we take too much time in linearly searching for the right place. We pre-sort the array to minimize the linear search time for the most pressing of the lists. For large unions (1K edges, many crosspoints) this improves performance by 2-3x (curvy or straight contours). Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 1889.13 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 1.13, 0.76, 0.86 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3060 ns 3059 ns 228050 ExpandBoxy/16 58206 ns 58203 ns 12001 ExpandBoxy/256 8538906 ns 8538540 ns 82 ExpandBoxyRotate/1 3647 ns 3647 ns 192058 ExpandBoxyRotate/16 64771 ns 64771 ns 10801 ExpandBoxyRotate/256 8876092 ns 8875077 ns 79 ExpandCurvy/1 26341 ns 26341 ns 26554 ExpandCurvy/16 224607 ns 224599 ns 3116 ExpandCurvy/256 8755116 ns 8754567 ns 80 UnionBoxy/1 6250 ns 6250 ns 111537 UnionBoxy/16 176146 ns 176147 ns 3971 UnionBoxy/256 33756795 ns 33756231 ns 21 UnionBoxyRotate/1 7137 ns 7137 ns 97904 UnionBoxyRotate/16 183211 ns 183210 ns 3820 UnionBoxyRotate/256 34233502 ns 34232768 ns 21 UnionCurvy/1 70030 ns 70029 ns 9917 UnionCurvy/16 998098 ns 998088 ns 701 UnionCurvy/256 89037008 ns 89033030 ns 8 commit 84fe564d8b97fb9f3df8b435de8789e9e62bd8a5 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Nov 17 14:46:25 2023 +0100 [contour] Optimize Edge::Crossing() Instead of passing in a pointer to a remote bool, we signal overlap as the sign of the return value. 5% improvement Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2382.78 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 1.04, 0.82, 0.87 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3092 ns 3092 ns 225583 ExpandBoxy/16 58479 ns 58477 ns 11901 ExpandBoxy/256 8578946 ns 8578339 ns 82 ExpandBoxyRotate/1 3671 ns 3671 ns 191205 ExpandBoxyRotate/16 65171 ns 65168 ns 10786 ExpandBoxyRotate/256 8874038 ns 8873636 ns 79 ExpandCurvy/1 26521 ns 26520 ns 26402 ExpandCurvy/16 224298 ns 224294 ns 3108 ExpandCurvy/256 8747602 ns 8747045 ns 80 UnionBoxy/1 6281 ns 6281 ns 111417 UnionBoxy/16 233701 ns 233698 ns 3001 UnionBoxy/256 88473853 ns 88473339 ns 8 UnionBoxyRotate/1 7200 ns 7200 ns 96409 UnionBoxyRotate/16 244203 ns 244199 ns 2869 UnionBoxyRotate/256 90075972 ns 90075198 ns 8 UnionCurvy/1 70023 ns 70020 ns 10002 UnionCurvy/16 1042126 ns 1042117 ns 669 UnionCurvy/256 143005912 ns 142992150 ns 5 commit 46271fcc64a20a882b87a1bb78685080ffc3a1d5 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Nov 17 11:44:17 2023 +0100 [contour] Optimize Edge::GetBezierHullBlock() Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2400 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 4.24, 2.01, 1.29 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3093 ns 3093 ns 227384 ExpandBoxy/16 63126 ns 63124 ns 11088 ExpandBoxy/256 9661498 ns 9660411 ns 72 ExpandBoxyRotate/1 3668 ns 3668 ns 190580 ExpandBoxyRotate/16 69606 ns 69604 ns 10061 ExpandBoxyRotate/256 10037188 ns 10036719 ns 70 ExpandCurvy/1 26399 ns 26398 ns 26487 ExpandCurvy/16 224990 ns 224984 ns 3110 ExpandCurvy/256 9063532 ns 9063044 ns 77 UnionBoxy/1 6431 ns 6431 ns 109056 UnionBoxy/16 242802 ns 242803 ns 2881 UnionBoxy/256 91744030 ns 91739486 ns 8 UnionBoxyRotate/1 7267 ns 7267 ns 95927 UnionBoxyRotate/16 253878 ns 253868 ns 2763 UnionBoxyRotate/256 93526998 ns 93526202 ns 8 UnionCurvy/1 70180 ns 70174 ns 9983 UnionCurvy/16 1064443 ns 1064436 ns 657 UnionCurvy/256 149243001 ns 149241016 ns 5 commit 02d59d391f5b89d2324a1aeae5f3972d6680fed0 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Nov 17 11:30:36 2023 +0100 [contour] Optimize Edge::Split() So that we do not copy the flags one-by-one. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2398.44 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 5.58, 3.06, 1.72 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3202 ns 3202 ns 220744 ExpandBoxy/16 62769 ns 62769 ns 11157 ExpandBoxy/256 9527944 ns 9527110 ns 73 ExpandBoxyRotate/1 3742 ns 3742 ns 185159 ExpandBoxyRotate/16 69260 ns 69260 ns 10141 ExpandBoxyRotate/256 9842994 ns 9842690 ns 71 ExpandCurvy/1 27223 ns 27222 ns 25694 ExpandCurvy/16 232406 ns 232399 ns 3016 ExpandCurvy/256 9701937 ns 9701832 ns 72 UnionBoxy/1 6417 ns 6417 ns 109111 UnionBoxy/16 244114 ns 244107 ns 2867 UnionBoxy/256 91238731 ns 91237774 ns 8 UnionBoxyRotate/1 7320 ns 7320 ns 95487 UnionBoxyRotate/16 253537 ns 253533 ns 2759 UnionBoxyRotate/256 91889547 ns 91883564 ns 7 UnionCurvy/1 72927 ns 72924 ns 9594 UnionCurvy/16 1133671 ns 1133657 ns 617 UnionCurvy/256 158969167 ns 158954584 ns 4 commit 42f4fd9d2403dedf3c7e561d4b71b5e306b537e2 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 15 18:28:39 2023 +0100 [contour] Optimize Range/Block::Overlap() if gap=0 Some additional speedup. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2330.5 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 6.63, 3.85, 2.08 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3162 ns 3162 ns 221080 ExpandBoxy/16 62124 ns 62123 ns 11265 ExpandBoxy/256 9535133 ns 9533980 ns 73 ExpandBoxyRotate/1 3803 ns 3803 ns 184758 ExpandBoxyRotate/16 68706 ns 68706 ns 10187 ExpandBoxyRotate/256 9834227 ns 9832842 ns 71 ExpandCurvy/1 27992 ns 27990 ns 25018 ExpandCurvy/16 234765 ns 234759 ns 2981 ExpandCurvy/256 9667316 ns 9666984 ns 72 UnionBoxy/1 6362 ns 6361 ns 109734 UnionBoxy/16 237149 ns 237146 ns 2952 UnionBoxy/256 92037391 ns 92029563 ns 8 UnionBoxyRotate/1 7241 ns 7241 ns 96259 UnionBoxyRotate/16 246903 ns 246898 ns 2834 UnionBoxyRotate/256 93513362 ns 93510579 ns 7 UnionCurvy/1 73331 ns 73329 ns 9537 UnionCurvy/16 1124003 ns 1124007 ns 622 UnionCurvy/256 158141054 ns 158141551 ns 4 commit 1c22eaf2f4e3f6f3e69ace13d1c9c1ebdf6d9120 Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Nov 7 15:27:52 2023 +0100 [contour] Broken out data storage from Edge - Meta, Update and the enums are now in EdgeBase - The actual coordinates and the metadata is stored in EdgeStorage - All functions in Edge refers to the coordinates and metadata via accessor functions. - We have tightened up sanity checking a bit via asserts. This resulted in minimal changes to contour canonical images. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2299.33 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 7.62, 4.69, 2.49 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3221 ns 3221 ns 217304 ExpandBoxy/16 64012 ns 64011 ns 10939 ExpandBoxy/256 9921228 ns 9920743 ns 70 ExpandBoxyRotate/1 3784 ns 3784 ns 185293 ExpandBoxyRotate/16 70436 ns 70435 ns 9929 ExpandBoxyRotate/256 10266532 ns 10265627 ns 68 ExpandCurvy/1 28235 ns 28235 ns 24805 ExpandCurvy/16 237383 ns 237377 ns 2950 ExpandCurvy/256 9819898 ns 9819090 ns 72 UnionBoxy/1 6345 ns 6345 ns 110307 UnionBoxy/16 238006 ns 238004 ns 2932 UnionBoxy/256 91115695 ns 91114687 ns 7 UnionBoxyRotate/1 7284 ns 7284 ns 96047 UnionBoxyRotate/16 249491 ns 249486 ns 2789 UnionBoxyRotate/256 93221069 ns 93221374 ns 8 UnionCurvy/1 73833 ns 73830 ns 9494 UnionCurvy/16 1132631 ns 1132595 ns 618 UnionCurvy/256 159377044 ns 159369192 ns 4 commit fcda584c62553661d692784c6867563a61540d34 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 15 09:22:58 2023 +0100 [contour] perf improvement, removing modulo Performance measurements (the tests/perftest) showed that 66% of ContoursHelper::FindCrosspointsHelper(contour::SimpleContour const*) was spent in doing the modulo of EdgeVector<>::next(size_t). It had been replaced to a much faster branch, instead. This commit also contains removal of modulo elsewhere and some spelling. This commit resulted in a 40% speed improvement for large expands and 20% for small ones. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 2399.95 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 5.44, 4.80, 2.74 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3131 ns 3131 ns 222241 ExpandBoxy/16 64679 ns 64675 ns 10816 ExpandBoxy/256 10177695 ns 10176548 ns 69 ExpandBoxyRotate/1 3791 ns 3791 ns 187171 ExpandBoxyRotate/16 71145 ns 71145 ns 9844 ExpandBoxyRotate/256 10433025 ns 10432030 ns 67 ExpandCurvy/1 28454 ns 28454 ns 24658 ExpandCurvy/16 236349 ns 236341 ns 2963 ExpandCurvy/256 9905471 ns 9904955 ns 71 UnionBoxy/1 6284 ns 6284 ns 111003 UnionBoxy/16 238098 ns 238084 ns 2939 UnionBoxy/256 89089513 ns 89082565 ns 8 UnionBoxyRotate/1 7272 ns 7272 ns 96191 UnionBoxyRotate/16 249242 ns 249235 ns 2808 UnionBoxyRotate/256 95122406 ns 95119738 ns 7 UnionCurvy/1 74723 ns 74721 ns 9343 UnionCurvy/16 1143973 ns 1143961 ns 613 UnionCurvy/256 159312827 ns 159313425 ns 4 commit 2200e012a3e0e549f536261813d7b98ad4b392c5 Author: Zoltán Turányi <teknos@gmail.com> Date: Mon Nov 6 09:31:20 2023 +0100 [test] added simple perf test to measure Expand() - You need Google Benchmark installed - Measures Expand() on an increasingly complex set of contours - The contours only have horizontal and vertical edges, 4x the number displayed in the text. - A second set of tests have only 15 degree slanted edges (a bit more compute power to calculate crossings. Perf results on bigdata5 using -O3 -DNDEBUG with g++-13: Run on (24 X 1776.6 MHz CPU s) CPU Caches: L1 Data 32 KiB (x12) L1 Instruction 32 KiB (x12) L2 Unified 256 KiB (x12) L3 Unified 15360 KiB (x2) Load Average: 5.91, 5.27, 3.06 --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- ExpandBoxy/1 3647 ns 3647 ns 191825 ExpandBoxy/16 89385 ns 89383 ns 7829 ExpandBoxy/256 15439916 ns 15439473 ns 45 ExpandBoxyRotate/1 4214 ns 4214 ns 167277 ExpandBoxyRotate/16 95817 ns 95817 ns 7323 ExpandBoxyRotate/256 15811340 ns 15810175 ns 44 ExpandCurvy/1 29063 ns 29061 ns 24046 ExpandCurvy/16 248263 ns 248244 ns 2817 ExpandCurvy/256 11400485 ns 11399963 ns 61 UnionBoxy/1 6645 ns 6645 ns 105062 UnionBoxy/16 243501 ns 243493 ns 2856 UnionBoxy/256 91933859 ns 91934166 ns 8 UnionBoxyRotate/1 7609 ns 7609 ns 92562 UnionBoxyRotate/16 253359 ns 253343 ns 2764 UnionBoxyRotate/256 93691533 ns 93682701 ns 8 UnionCurvy/1 74214 ns 74213 ns 9407 UnionCurvy/16 1139742 ns 1139692 ns 613 UnionCurvy/256 160789415 ns 160781347 ns 4 commit 7099826ccf5ffbe18f4f2a0380f859853ae73a0b Author: Zoltán Turányi <teknos@gmail.com> Date: Sun Nov 19 15:12:21 2023 +0100 Spelling commit 6a022b8312749663190f36444210f512436d7116 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Nov 15 12:10:25 2023 +0100 [win] Remove workaround for VS bug Fixed by: https://developercommunity.visualstudio.com/t/Internal-compiler-error-when-inheriting-/10180917 Plus some spellcheck. commit f6d53bc9de9ba805d1fa29519dbd045dc68650c7 Author: Zoltán Turányi <teknos@gmail.com> Date: Mon Nov 6 08:38:39 2023 +0100 [block] Fix GUI expand/collapse for no-name boxes Also fix the associated help and some spellcheck. commit 8858945c6ea52be6ea393b4df13f9d156f54c3bc Author: Gábor Németh <homar@riseup.net> Date: Mon Oct 2 16:13:18 2023 +0200 [test] Dump failing tests as Base64 We save some logfile space and PNG conversion hassle commit b3deb113d9a50c13fcb79580b3cecf951767cb4f Author: Gábor Németh <homar@riseup.net> Date: Mon Oct 2 15:53:04 2023 +0200 [test] More png tools commit 4eb5eef130c1e49599dce30e85b7a09f9313fcb7 Author: Zoltán Turányi <teknos@gmail.com> Date: Thu Nov 2 10:59:43 2023 +0100 nits commit 69e667e939186ea752ce82b387dc6273b5c51e72 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri Aug 18 14:05:13 2023 +0200 [gui] --fps and MSCGEN_FPS to limit frame rate commit cc2af02b8052483fa5d8588c1c9680eef7537057 Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Oct 17 16:10:53 2023 +0200 [gui] fix help text wrapping commit 7f4e55c65200576c7ac9e031dc2999735cb0ba29 Author: Gábor Németh <homar@riseup.net> Date: Mon Sep 25 16:14:23 2023 +0200 Show failing tests in text log commit 02d3631bd40391ec8f6a4959597527dcbc99598b Author: Gábor Németh <homar@riseup.net> Date: Mon Sep 25 15:56:45 2023 +0200 New upstream tarball 8.4.2 commit 1da58068e398da8ae38e5c07687ae0db6a413554 Author: Gábor Németh <homar@riseup.net> Date: Wed Sep 6 15:40:24 2023 +0200 [build] Check for timeouts in unit tests commit 3f4c7d158c598d0a2fbc2cd7cbe335c64ad8a51b Author: Gábor Németh <homar@riseup.net> Date: Mon Aug 28 14:33:57 2023 +0200 [build] Make explicit when unit tests finish and update the target file only then. Besides this checks whether `contours` gets stuck in verbose builds. commit 9ab4c9a38df67c65644494ccac826bc5f54fce2b Author: Gábor Németh <homar@riseup.net> Date: Tue Jul 18 10:56:10 2023 +0200 Fix release tag in d/ch commit 7f0f6688f893189ab61220e1118984ecedb110ef Author: Gábor Németh <homar@riseup.net> Date: Wed Jun 14 16:18:55 2023 +0200 Fix missing include with g++-13 commit cd4268b3f2e76f95e4bcd089b636c7b31cb98772 Author: Gábor Németh <homar@riseup.net> Date: Thu Jun 1 10:12:42 2023 +0200 Switch to limpress-nogui (#1024840) commit 0c9a1c4bf7e79adec102a1fe16f20cecf41ef902 Author: Gábor Németh <homar@riseup.net> Date: Thu May 25 12:28:30 2023 +0200 Remove built header file commit 2bc6da072fff2adc630858aaf6530b14bd613768 Author: Gábor Németh <homar@riseup.net> Date: Mon May 22 12:17:02 2023 +0200 Remove more Windows-only files commit 715c8698a5f657f9b4b695595967f95997ea91d9 Author: Gábor Németh <homar@riseup.net> Date: Mon Mar 6 10:53:02 2023 +0100 Bump copyright years commit 320e8e9f192b222aa4fc966ad6848cef592dd63a Author: Gábor Németh <homar@riseup.net> Date: Mon Mar 6 10:49:23 2023 +0100 Bump std version commit 3be2ef2a9c8181b2f0b63fce2c5657b8f883137f Author: Gábor Németh <homar@riseup.net> Date: Mon Mar 6 10:29:37 2023 +0100 Dependency change Libfreetype6-dev became obsolete after transition to libfreetype-dev. commit a42b700477a6320aeb15d3bf688a5add0b51aaf2 Author: Gábor Németh <homar@riseup.net> Date: Tue Dec 20 12:45:55 2022 +0100 Report test failures on non-amd64 Partially revert decision in b08e310c to only run tests for amd64. We run the tests but only fail on amd64, as logic errors are expected to either happen on all or none of the arch:s. Report about pixel errors in different arch:s is still a valuable input, if any, so we keep those on all other archs. commit 318058e1b412e7ad075966696f91cd767a2b7fe1 Author: Gábor Németh <homar@riseup.net> Date: Sun Dec 18 10:24:57 2022 +0100 Remove patches applied by upstream commit 1818a91532a7aefb9a0d2de8931c010343328af1 Author: Gábor Németh <homar@riseup.net> Date: Fri Mar 3 14:20:52 2023 +0100 Start on new upstream 8.4 Fix uscan matching in d/watch to capture the 3-part version number. commit ecfe357f402762445baf219af9de6554c34fdef5 Merge: 21ceac365 b47ca0ff1 Author: Gábor Németh <homar@riseup.net> Date: Wed May 24 15:50:18 2023 +0200 Merge branch 'master' into debian/next2 commit b47ca0ff1e88645efc4dbaa3ad3d05c15a53f95d Author: Gábor Németh <homar@riseup.net> Date: Wed May 24 13:14:56 2023 +0200 [build] Bump autoconf version commit fe095f06d6cfc2863aa4dcfbe6e1631c29e79168 Author: Gábor Németh <homar@riseup.net> Date: Wed May 24 10:20:11 2023 +0200 [test] NOFONT canon for contour tests commit 9931601473d7a55ecaf1f4cf2eb87b0c8237394d Author: Gábor Németh <homar@riseup.net> Date: Wed May 24 09:50:22 2023 +0200 [build] Make NOFONT the default for contour unit tests This results in omission of titles in the generated PNGs. The original behavior can still be achieved if MSC_TEST_NOFONT is *not* set or empty and MSCGEN_NOFONT is *set* to empty or "0". So preset value of the latter is honored iff the former is null or unset. commit eb5dbaec2f8d902172b707da4daad74da766d27e Author: Gábor Németh <homar@riseup.net> Date: Wed May 24 08:51:33 2023 +0200 [test] Contour unit tests report on cout, not PNG commit e1c687906432453a4bcab4ed4c9b3e719c34833c Author: Gábor Németh <homar@riseup.net> Date: Tue May 23 12:31:35 2023 +0200 [build] Fix make variable vs envvars commit de9bce0be99fc98d213190c18646d1cf92c25903 Author: Gábor Németh <homar@riseup.net> Date: Fri May 19 15:58:33 2023 +0200 [build] Option to test with NOFONT masking MSC_TEST_NOFONT=1 creates test PNGs with NOFONT too, and calls pngdiff with them as the 3rd argument. Also, if set, unit tests do not draw fonts at all. commit bbb114d987280b767d3b996f2bbd5543ceebe628 Author: Gábor Németh <homar@riseup.net> Date: Fri May 19 14:53:30 2023 +0200 [ci] Undo NOFONT canonincals in the dist (part of bb6136e) It was a bad idea, born of desperation. With the new pngdiff functionality we can return to the practice of distributing the same canonicals in the tarball as they are in the repo. commit dd66b3ba95da313f0a258fd48d1c719a36b14bf1 Author: Gábor Németh <homar@riseup.net> Date: Tue May 23 15:07:26 2023 +0200 [test] Unused params in contours test commit 53066a5b4a32b576c1bf580f1817a51f962d1fde Author: Gábor Németh <homar@riseup.net> Date: Tue May 23 14:34:31 2023 +0200 [test] Unused vars in contour tests commit 6b3fb0449cf80cf193be9961425fde5ea517bd58 Author: Gábor Németh <homar@riseup.net> Date: Tue May 23 10:54:39 2023 +0200 [test] Allow creating unit tests w/o text commit 46e2c60c643ff7094381ddaef6206dcc5e4d5829 Author: Gábor Németh <homar@riseup.net> Date: Fri May 19 10:13:44 2023 +0200 [test] pngdiff accepts a 3rd PNG, for creating a mask If specified, an alpha mask is created first with the diff of the 1st and 3rd arguments, inflated by 2px (hard-coded for now). Then the diff between the 1st and 2nd PNGs is only checked *outside* the mask. Use it with a NOFONT canonical as the 3rd file to allow for font-less testing. commit 71dbaea29083067805fda2518315a2d15998d56d Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Apr 26 09:33:43 2023 +0200 nit: Better natvis for UPtrList<> commit a017c38d4df1196b50f9ba146d05c19178f4a52f Author: Zoltán Turányi <teknos@gmail.com> Date: Wed May 10 17:24:27 2023 +0200 [graph, gui] URLs now clickable - [graph] Revamped text formatting to make URLs blue and underlined. - [graph] Added 'link_format' graphviz attribute - [graph] Documented these changes. Also that we ignore URL, and similar attributes - [gui] Links (that are URLs) are now clickable and open the browser - Quick and dirty common mechanism to determine what references are clickable URLs. commit 5cd0545e90839520fd5978709c69971c13997d55 Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Apr 26 09:33:06 2023 +0200 [gui] Beautify PNG options dialog commit c3956ceac21099ed10cd799cccbc2b59c61add60 Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Apr 25 15:41:37 2023 +0200 [gui] fix: Keep Fit to Window/Width mechanism commit 24f3b6fb817c4aa34b24b55599f41197b41510dd Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Apr 25 13:15:44 2023 +0200 [gui] Don't display success on a failed Load commit bc708541c89abcacde30d8eaccb1d30bb1a62fd9 Author: Zoltán Turányi <teknos@gmail.com> Date: Tue Apr 25 13:15:15 2023 +0200 Added contour::Range::operator[] commit a06d6ca73ac42ac75699786056a7d91e7ddff92c Author: Zoltán Turányi <teknos@gmail.com> Date: Wed Apr 19 16:02:42 2023 +0200 nits: string_view, range-based for & spelling Also, better error messages for misapplied chart-specific CLI arguments. commit f0a7ca0f36ca56d82d74d3b04ee31d3d35df5727 Author: Gábor Németh <homar@riseup.net> Date: Tue May 23 08:46:20 2023 +0000 Missing license files in dist commit 95e572c5fbda5a714ec502555f25080ee5045bc9 Author: Zoltán Turányi <teknos@gmail.com> Date: Fri May 19 16:44:20 2023 +0200 [win] Build nits - use C++20 for Msc-generator Handler project instead of c++latest, because the latter uses modules on VS 2022 Preview and does not compile that way due to some missing precompiled header error. - uplift Advanced Installer version to 20.6 commit 685bf66ccf8d055e260de24b27b0339f1297c656 Author: Gábor Németh <homar@riseup.net> Date: Wed May 17 15:08:16 2023 +0200 [ci] winbuild is manual for now commit 115222c089068113f8b280588c17f436d6509488 Author: Gábor Németh <homar@riseup.net> Date: Wed May 10 15:56:02 2023 +0200 [ci] 2nd shot at winbuild: install deps in build-time Revert to install&build scenario: getting 3PPs takes only 6-7' out of 40'. - Switch to C++ MSVC 2020 - Use winflexbison; manually instead of choco, as version 3.8.2 is needed - Use Graphviz from choco at a fixed version [1]. Added an env var for include directory path. - Include MFC & redistributables - Do not registered the Msc handlers dll in the CI (needs admin privileges) - Use AdvancedInstaller from choco - Produce .msi as an artifact [1] GV 7.1 to avoid API change; S.E.P. [2] [2] https://en.wikipedia.org/wiki/Somebody_else%27s_problem commit d6d9a2c85b8bae1e9cdcabfcbbc0d83c2d2d67e2 Author: Gábor Németh <homar@riseup.net> Date: Thu May 4 10:32:55 2023 +0000 [ci] First shot at a Windows build We use a customized builder image (unfinished; only has Bison as of yet). Unfortunately, pulling the image and running it in dind (11') is slower than installing the tools in an ephemeral build run (7-8') so we leave this track. commit 21ceac365dfaa92f0eb78b250d1847d939257880 Author: Gábor Németh <homar@riseup.net> Date: Thu Jul 28 20:49:38 2022 +0200 Add patch header to 0001-debian-example.patch commit caf9d5d2e1d21e7fe5e86f90ad13647dc8bfc350 Author: Gábor Németh <homar@riseup.net> Date: Thu Jul 28 20:24:52 2022 +0200 Remove unused A patch file is kept in master for upstream's CI machinery that is unnecessary for Debian builds. commit b08e310c84f13a5f2b76c3ed723365c86c2521b1 Author: Gábor Németh <homar@riseup.net> Date: Thu Jul 28 12:36:16 2022 +0200 Skip tests on non-amd64 when building the package All of upstream's tests revolve around generating PNGs and comparing them with known good ones. It seems to be sufficient to run this process but once, for amd64 only. commit a3d84cef7568d8e24aa4e4f74aef67771609da19 Author: Gábor Németh <homar@riseup.net> Date: Thu Jul 28 11:48:25 2022 +0200 Only depend on libreoffice for amd64 builds LibreOffice is used in only some of the test cases, to convert PPTX files to PNG, before comparing those PNGs with their canonical counterparts. These tests are gracefully skipped if no libreoffice binary is found, therefore those architectures that do not even have the packake will still buildd. commit a01c6b5b6d8aa4861a9f255b9c7662241418e3a9 Author: Gábor Németh <homar@riseup.net> Date: Thu Jul 28 11:59:48 2022 +0200 Undo patching third-party component Upstream uses a patch for its internal CI setup that got into the released tarball erroneously. This change fixes that and will be contributed upstream for the next release. commit 65fca60c074938ca3e8e2f3c8e3b5f05dab8fc37 Author: Gábor Németh <homar@riseup.net> Date: Tue Jul 26 18:34:47 2022 +0200 Switch upstream URLs in debian/* The upstream project has moved to GitLab. All URLs in the package control files should now point to the new locations. Thanks to Geert Stappers for pointing out some missing ones.