]> granicus.if.org Git - graphviz/log
graphviz
2 years agoMerge branch 'smattr/0ee3a8de-0467-49e2-bfeb-9bd70a4bc90a' into 'main'
Matthew Fernandez [Mon, 28 Feb 2022 00:06:30 +0000 (00:06 +0000)]
Merge branch 'smattr/0ee3a8de-0467-49e2-bfeb-9bd70a4bc90a' into 'main'

expr: [nfc] some clean up

See merge request graphviz/graphviz!2480

2 years agoexpr exeval: [nfc] remove unnecessary parens, dereference of function pointers
Matthew Fernandez [Sat, 26 Feb 2022 19:20:56 +0000 (11:20 -0800)]
expr exeval: [nfc] remove unnecessary parens, dereference of function pointers

The C compiler knows how to dereference and call through a function pointer
without needing this manual instruction.

2 years agoexpr: [nfc] remove unnecessary parens and dereference of 'convertf'
Matthew Fernandez [Sat, 26 Feb 2022 19:18:53 +0000 (11:18 -0800)]
expr: [nfc] remove unnecessary parens and dereference of 'convertf'

The C compiler knows how to dereference and call through a function pointer
without needing this manual instruction.

2 years agoexpr: [nfc] remove unnecessary parens and dereference of 'binaryf'
Matthew Fernandez [Sat, 26 Feb 2022 19:10:04 +0000 (11:10 -0800)]
expr: [nfc] remove unnecessary parens and dereference of 'binaryf'

The C compiler knows how to dereference and call through a function pointer
without needing this manual instruction.

2 years agoexpr: [nfc] remove unnecessary parens and dereference of 'matchf'
Matthew Fernandez [Sat, 26 Feb 2022 19:08:03 +0000 (11:08 -0800)]
expr: [nfc] remove unnecessary parens and dereference of 'matchf'

The C compiler knows how to dereference and call through a function pointer
without needing this manual instruction.

2 years agoexpr: [nfc] remove unnecessary parens and dereference of 'exitf'
Matthew Fernandez [Sat, 26 Feb 2022 19:03:00 +0000 (11:03 -0800)]
expr: [nfc] remove unnecessary parens and dereference of 'exitf'

The C compiler knows how to dereference and call through a function pointer
without needing this manual instruction.

2 years agoexpr: [nfc] remove unnecessary parens and dereference of 'setf'
Matthew Fernandez [Sat, 26 Feb 2022 19:01:57 +0000 (11:01 -0800)]
expr: [nfc] remove unnecessary parens and dereference of 'setf'

The C compiler knows how to dereference and call through a function pointer
without needing this manual instruction.

2 years agoexpr: [nfc] remove unnecessary parens in 'eval(…).string' expressions
Matthew Fernandez [Sat, 26 Feb 2022 19:00:08 +0000 (11:00 -0800)]
expr: [nfc] remove unnecessary parens in 'eval(…).string' expressions

2 years agoexpr: [nfc] remove unorthodox spacing around member accesses
Matthew Fernandez [Sat, 26 Feb 2022 18:57:15 +0000 (10:57 -0800)]
expr: [nfc] remove unorthodox spacing around member accesses

2 years agoexpr: [nfc] remove unnecessary parens and dereference of 'getf'
Matthew Fernandez [Sat, 26 Feb 2022 18:56:04 +0000 (10:56 -0800)]
expr: [nfc] remove unnecessary parens and dereference of 'getf'

The C compiler knows how to dereference and call through a function pointer
without needing this manual instruction.

2 years agoMerge branch 'smattr/1197F5FA-7D54-45A7-961E-EC4BB50BCFE2' into 'main'
Matthew Fernandez [Sun, 27 Feb 2022 22:22:57 +0000 (22:22 +0000)]
Merge branch 'smattr/1197F5FA-7D54-45A7-961E-EC4BB50BCFE2' into 'main'

cgraph: fix some minor bugs

See merge request graphviz/graphviz!2475

2 years agocgraph: fix: handle allocation failures in 'agcanon' and friends
Matthew Fernandez [Fri, 25 Feb 2022 16:18:17 +0000 (08:18 -0800)]
cgraph: fix: handle allocation failures in 'agcanon' and friends

There are a number of cgraph API functions that use an internally managed buffer
to save the caller from having to allocate space themselves. Failure to expand
this buffer was being silently ignored, resulting in messy crashes when memory
was exhausted. These failures are now checked for and `agcanon` and `agcanonStr`
return `NULL` on allocation failure. `agwrite` returns `EOF` on allocation
failure.

2 years agoagwrite: fix: ignore out of range 'linelength'
Matthew Fernandez [Fri, 25 Feb 2022 16:09:36 +0000 (08:09 -0800)]
agwrite: fix: ignore out of range 'linelength'

This code was accepting large negative numbers and then converting them to
positive numbers that were applied as the line length limit. This seems clearly
unintended. This rephrasing now ignores any out of range value set for
`linelength`.

2 years agoagwrite: [nfc] separate assignment from conditional
Matthew Fernandez [Fri, 25 Feb 2022 15:59:14 +0000 (07:59 -0800)]
agwrite: [nfc] separate assignment from conditional

Squashes an MSVC “warning C4706: assignment within conditional expression”
warning.

2 years agoMerge branch 'smattr/D7055808-9A1D-4DCD-90A7-E0484002CF03' into 'main'
Matthew Fernandez [Sat, 26 Feb 2022 18:24:25 +0000 (18:24 +0000)]
Merge branch 'smattr/D7055808-9A1D-4DCD-90A7-E0484002CF03' into 'main'

Start 3.0 development series

See merge request graphviz/graphviz!2478

2 years agoStart 3.0 development series
Matthew Fernandez [Sat, 26 Feb 2022 16:19:01 +0000 (08:19 -0800)]
Start 3.0 development series

2 years agoMerge branch 'smattr/5DA70CF4-980D-4F81-AEF7-058695CA2E40' into 'main' 3.0.0
Matthew Fernandez [Sat, 26 Feb 2022 17:11:28 +0000 (17:11 +0000)]
Merge branch 'smattr/5DA70CF4-980D-4F81-AEF7-058695CA2E40' into 'main'

Stable Release 3.0.0

See merge request graphviz/graphviz!2461

2 years agoStable Release 3.0.0
Matthew Fernandez [Sun, 20 Feb 2022 00:13:41 +0000 (16:13 -0800)]
Stable Release 3.0.0

2 years agoMerge branch 'smattr/51EA14FF-2973-4E74-9B56-9E7681B60DBB' into 'main'
Matthew Fernandez [Sat, 26 Feb 2022 07:05:14 +0000 (07:05 +0000)]
Merge branch 'smattr/51EA14FF-2973-4E74-9B56-9E7681B60DBB' into 'main'

add a test case for #191

See merge request graphviz/graphviz!2474

2 years agoadd a test case for #191
Matthew Fernandez [Fri, 25 Feb 2022 04:09:14 +0000 (20:09 -0800)]
add a test case for #191

2 years agoMerge branch 'smattr/6BECC6DB-0939-436D-839C-A2159C2C25A3' into 'main'
Matthew Fernandez [Sat, 26 Feb 2022 05:55:17 +0000 (05:55 +0000)]
Merge branch 'smattr/6BECC6DB-0939-436D-839C-A2159C2C25A3' into 'main'

agnameof: [nfc] separate assignments from conditionals

See merge request graphviz/graphviz!2473

2 years agoagnameof: [nfc] separate assignments from conditionals
Matthew Fernandez [Fri, 25 Feb 2022 04:56:39 +0000 (20:56 -0800)]
agnameof: [nfc] separate assignments from conditionals

Squashes a number of MSVC “C4706: assignment within conditional expression”
warnings.

2 years agoMerge branch 'fix-warnings' into 'main'
Matthew Fernandez [Fri, 25 Feb 2022 02:07:14 +0000 (02:07 +0000)]
Merge branch 'fix-warnings' into 'main'

fix freeTreeList

See merge request graphviz/graphviz!2449

2 years agofix freeTreeList
Costa Shulyupin [Fri, 25 Feb 2022 02:07:14 +0000 (02:07 +0000)]
fix freeTreeList

2 years agoMerge branch 'smattr/0A79D579-4787-4FF1-AC4B-BE5FFA581FE8' into 'main'
Matthew Fernandez [Thu, 24 Feb 2022 18:20:45 +0000 (18:20 +0000)]
Merge branch 'smattr/0A79D579-4787-4FF1-AC4B-BE5FFA581FE8' into 'main'

cgraph: [nfc] remove unused return value from 'agxbmore'

See merge request graphviz/graphviz!2471

2 years agocgraph: [nfc] remove unused return value from 'agxbmore'
Matthew Fernandez [Wed, 23 Feb 2022 07:57:09 +0000 (23:57 -0800)]
cgraph: [nfc] remove unused return value from 'agxbmore'

2 years agoMerge branch 'smattr/C7E834B5-E093-4BCD-B39E-39DDFA0CE179' into 'main'
Matthew Fernandez [Thu, 24 Feb 2022 08:17:36 +0000 (08:17 +0000)]
Merge branch 'smattr/C7E834B5-E093-4BCD-B39E-39DDFA0CE179' into 'main'

lib/pathplan/shortest.c: [nfc] some clean up and warning squashing

See merge request graphviz/graphviz!2469

2 years agolib/pathplan/shortest.c: [nfc] separate assignments from conditionals
Matthew Fernandez [Tue, 22 Feb 2022 16:17:37 +0000 (08:17 -0800)]
lib/pathplan/shortest.c: [nfc] separate assignments from conditionals

Squashes a number of MSVC “C4706: assignment within conditional expression”
warnings.

2 years agopathplan connecttris: [nfc] remove unnecessary use of the comma operator
Matthew Fernandez [Tue, 22 Feb 2022 16:14:28 +0000 (08:14 -0800)]
pathplan connecttris: [nfc] remove unnecessary use of the comma operator

2 years agolib/pathplan/shortest.c: [nfc] reflow some code for readability
Matthew Fernandez [Tue, 22 Feb 2022 16:14:12 +0000 (08:14 -0800)]
lib/pathplan/shortest.c: [nfc] reflow some code for readability

2 years agolib/pathplan/shortest.c: [nfc] remove unnecessary parens
Matthew Fernandez [Tue, 22 Feb 2022 16:09:33 +0000 (08:09 -0800)]
lib/pathplan/shortest.c: [nfc] remove unnecessary parens

2 years agoMerge branch 'smattr/9662124d-546f-46ec-86b2-59fdac3d6e8a' into 'main'
Matthew Fernandez [Thu, 24 Feb 2022 07:08:25 +0000 (07:08 +0000)]
Merge branch 'smattr/9662124d-546f-46ec-86b2-59fdac3d6e8a' into 'main'

various test cases for #2185

See merge request graphviz/graphviz!2463

2 years agovarious test cases for #2185
Matthew Fernandez [Sun, 20 Feb 2022 03:53:59 +0000 (19:53 -0800)]
various test cases for #2185

2 years agoMerge branch 'graphml2gv' into 'main'
Mark Hansen [Wed, 23 Feb 2022 09:40:29 +0000 (09:40 +0000)]
Merge branch 'graphml2gv' into 'main'

tools: remove unused arguments

See merge request graphviz/graphviz!2470

2 years agoMerge branch 'smattr/139c540a-38bd-48cf-806c-10652625b583' into 'main'
Matthew Fernandez [Wed, 23 Feb 2022 09:04:00 +0000 (09:04 +0000)]
Merge branch 'smattr/139c540a-38bd-48cf-806c-10652625b583' into 'main'

add a test case for #2193

See merge request graphviz/graphviz!2462

2 years agoadd a test case for #2193
Matthew Fernandez [Sun, 20 Feb 2022 00:47:08 +0000 (16:47 -0800)]
add a test case for #2193

2 years agotests: recognize 'canon' as a textual format
Matthew Fernandez [Sun, 20 Feb 2022 00:37:25 +0000 (16:37 -0800)]
tests: recognize 'canon' as a textual format

Gitlab: related to #2193

2 years agoMerge branch 'smattr/39320B11-3CE5-4D7B-9C8E-17152F849788' into 'main'
Matthew Fernandez [Wed, 23 Feb 2022 05:54:32 +0000 (05:54 +0000)]
Merge branch 'smattr/39320B11-3CE5-4D7B-9C8E-17152F849788' into 'main'

cdt: [nfc] some clean up

See merge request graphviz/graphviz!2466

2 years agocdt: [nfc] remove unnecessary dereference and parens on function pointers
Matthew Fernandez [Mon, 21 Feb 2022 00:02:03 +0000 (16:02 -0800)]
cdt: [nfc] remove unnecessary dereference and parens on function pointers

The compiler knows how to call through a function pointer without requiring the
programmer to manually dereference it.

2 years agocdt: [nfc] remove some unnecessary casts of 'void*' during assignment
Matthew Fernandez [Sun, 20 Feb 2022 23:42:20 +0000 (15:42 -0800)]
cdt: [nfc] remove some unnecessary casts of 'void*' during assignment

2 years agocdt: [nfc] remove an unnecessary cast of an argument to '_DTKEY'
Matthew Fernandez [Sun, 20 Feb 2022 23:34:42 +0000 (15:34 -0800)]
cdt: [nfc] remove an unnecessary cast of an argument to '_DTKEY'

2 years agocdt: [nfc] remove an unnecessary cast of the return value of '_DTOBJ'
Matthew Fernandez [Sun, 20 Feb 2022 23:33:48 +0000 (15:33 -0800)]
cdt: [nfc] remove an unnecessary cast of the return value of '_DTOBJ'

2 years agocdt: [nfc] remove unnecessary casts of arguments to 'searchf'
Matthew Fernandez [Sun, 20 Feb 2022 23:30:08 +0000 (15:30 -0800)]
cdt: [nfc] remove unnecessary casts of arguments to 'searchf'

2 years agocdt: [nfc] remove unnecessary casts of arguments to 'eventf'
Matthew Fernandez [Sun, 20 Feb 2022 23:27:53 +0000 (15:27 -0800)]
cdt: [nfc] remove unnecessary casts of arguments to 'eventf'

2 years agocdt: [nfc] remove unnecessary casts of the return value of 'memoryf'
Matthew Fernandez [Sun, 20 Feb 2022 23:25:43 +0000 (15:25 -0800)]
cdt: [nfc] remove unnecessary casts of the return value of 'memoryf'

2 years agocdt: [nfc] remove unnecessary casts of the arguments to 'memoryf'
Matthew Fernandez [Sun, 20 Feb 2022 23:25:03 +0000 (15:25 -0800)]
cdt: [nfc] remove unnecessary casts of the arguments to 'memoryf'

2 years agocdt dtvsearch: [nfc] squash unused variable warnings from MSVC
Matthew Fernandez [Sun, 20 Feb 2022 23:12:25 +0000 (15:12 -0800)]
cdt dtvsearch: [nfc] squash unused variable warnings from MSVC

2 years agoMerge branch 'smattr/864EBF21-0976-4521-B6B5-7C21A337FD00' into 'main'
Matthew Fernandez [Wed, 23 Feb 2022 04:33:55 +0000 (04:33 +0000)]
Merge branch 'smattr/864EBF21-0976-4521-B6B5-7C21A337FD00' into 'main'

Windows: remove 'sed' as a setup build utility

See merge request graphviz/graphviz!2465

2 years agotools: remove unused argument in setGlobalEdgeAttr
Costa Shulyupin [Wed, 23 Feb 2022 04:12:51 +0000 (06:12 +0200)]
tools: remove unused argument in setGlobalEdgeAttr

fix warning:
cmd/tools/graphml2gv.c: In function ‘setGlobalEdgeAttr’:
cmd/tools/graphml2gv.c:348:71: warning: unused parameter ‘ud’ [-Wunused-parameter]
  348 | setGlobalEdgeAttr(Agraph_t * g, char *name, char *value, userdata_t * ud)
      |

2 years agotools: remove unused argument in setGlobalNodeAttr
Costa Shulyupin [Wed, 23 Feb 2022 04:11:41 +0000 (06:11 +0200)]
tools: remove unused argument in setGlobalNodeAttr

cmd/tools/graphml2gv.c: In function ‘setGlobalNodeAttr’:
cmd/tools/graphml2gv.c:298:71: warning: unused parameter ‘ud’ [-Wunused-parameter]
  298 | setGlobalNodeAttr(Agraph_t * g, char *name, char *value, userdata_t * ud)
      |                                                          ~~~~~~~~~~~~~^~

2 years agoWindows: remove 'sed' as a setup build utility
Matthew Fernandez [Sun, 20 Feb 2022 23:07:31 +0000 (15:07 -0800)]
Windows: remove 'sed' as a setup build utility

Gitlab: #2115

2 years agoWindows: remove usage of 'sed' in setup-build-utilities script
Matthew Fernandez [Sun, 20 Feb 2022 23:03:55 +0000 (15:03 -0800)]
Windows: remove usage of 'sed' in setup-build-utilities script

This results in `$PATH` potentially having duplicated trailing entries, but this
causes no harm and preventing it does not seem worth a `sed` dependency.

Gitlab: #2115

2 years agoMerge branch 'aglasterr' into 'main'
Matthew Fernandez [Wed, 23 Feb 2022 03:21:29 +0000 (03:21 +0000)]
Merge branch 'aglasterr' into 'main'

lib/cgraph: use return value of 'fread' in aglasterr

See merge request graphviz/graphviz!2468

2 years agolib/cgraph: use return value of 'fread' in aglasterr
Costa Shulyupin [Tue, 22 Feb 2022 18:58:05 +0000 (20:58 +0200)]
lib/cgraph: use return value of 'fread' in aglasterr

fix warning:
agerror.c: In function ‘aglasterr’:
agerror.c:49:5: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   49 |     fread(buf, sizeof(char), len, agerrout);

2 years agoMerge branch 'fix' into 'main'
Matthew Fernandez [Wed, 23 Feb 2022 02:18:20 +0000 (02:18 +0000)]
Merge branch 'fix' into 'main'

refactor circularLayout

See merge request graphviz/graphviz!2467

2 years agorefactor circularLayout
Costa Shulyupin [Mon, 21 Feb 2022 20:12:01 +0000 (22:12 +0200)]
refactor circularLayout

cut function cleanup, eliminate warning:
./lib/circogen/circular.c: In function ‘cleanup’:
./lib/circogen/circular.c|56 col 50| warning: unused parameter ‘sp’ [-Wunused-parameter]
||    56 | static void cleanup(block_t * root, circ_state * sp)
||       |                                     ~~~~~~~~~~~~~^~

2 years agoMerge branch 'smattr/46A5B7F0-9139-42B6-90B3-E35965040565' into 'main'
Matthew Fernandez [Tue, 22 Feb 2022 17:20:12 +0000 (17:20 +0000)]
Merge branch 'smattr/46A5B7F0-9139-42B6-90B3-E35965040565' into 'main'

lib/common: [nfc] remove 'nnames' micro-optimization and 'nToName'

See merge request graphviz/graphviz!2453

2 years agolib/common: [nfc] replace 'nToName' with 'itos'
Matthew Fernandez [Wed, 16 Feb 2022 21:39:49 +0000 (08:39 +1100)]
lib/common: [nfc] replace 'nToName' with 'itos'

This code was attempting to avoid dynamic string construction with low numbered
IDs. This is unnecessary when using a modern compiler that understands functions
like `snprintf` as built-ins and can achieve better optimization without this
trick.

Apart from de-duplicating code, this has the effect of making this code thread
safe where it was not before.

2 years agoMerge branch 'fix-C++-API-not-usable-after-install' into 'main'
Magnus Jacobsson [Tue, 22 Feb 2022 08:05:34 +0000 (08:05 +0000)]
Merge branch 'fix-C++-API-not-usable-after-install' into 'main'

fix C++ API not usable after install

Closes #2196

See merge request graphviz/graphviz!2464

2 years agoadd a CHANGELOG entry for the C++ API not usable after install fix
Magnus Jacobsson [Sun, 20 Feb 2022 14:03:03 +0000 (15:03 +0100)]
add a CHANGELOG entry for the C++ API not usable after install fix

2 years agogvc++: include "AGraph.h" instead of <AGraph.h> in GVLayout.h
Magnus Jacobsson [Sun, 20 Feb 2022 10:10:04 +0000 (11:10 +0100)]
gvc++: include "AGraph.h" instead of <AGraph.h> in GVLayout.h

This makes it possible to use GVLayout.h from the install directory
without the need to specify both "include" and "include/graphviz" as
include directories to the compiler.

Fixes https://gitlab.com/graphviz/graphviz/-/issues/2196.

2 years agogvc++: include "gvc.h" instead of <gvc.h> in GVContext.h
Magnus Jacobsson [Sun, 20 Feb 2022 10:08:52 +0000 (11:08 +0100)]
gvc++: include "gvc.h" instead of <gvc.h> in GVContext.h

This makes it possible to use GVContext.h from the install directory
without the need to specify both "include" and "include/graphviz" as
include directories to the compiler.

Towards https://gitlab.com/graphviz/graphviz/-/issues/2196.

2 years agocgraph++: include "cgraph.h" instead of <cgraph.h> in AGraph.h
Magnus Jacobsson [Sun, 20 Feb 2022 10:03:43 +0000 (11:03 +0100)]
cgraph++: include "cgraph.h" instead of <cgraph.h> in AGraph.h

This makes it possible to use AGraph.h from the install directory
without the need to specify both "include" and "include/graphviz" as
include directories to the compiler.

Towards https://gitlab.com/graphviz/graphviz/-/issues/2196.

2 years agogvc++: include AGraph.h without the cgraph++ directory prefix in GVLayout.h
Magnus Jacobsson [Sun, 20 Feb 2022 09:35:39 +0000 (10:35 +0100)]
gvc++: include AGraph.h without the cgraph++ directory prefix in GVLayout.h

This makes it possible to use GVLayout.h from the install directory
where AGraph.h is not located under this prefix.

Towards https://gitlab.com/graphviz/graphviz/-/issues/2196.

2 years agogvc++: include gvc.h without the gvc directory prefix in GVContext.h
Magnus Jacobsson [Sun, 20 Feb 2022 09:34:33 +0000 (10:34 +0100)]
gvc++: include gvc.h without the gvc directory prefix in GVContext.h

This makes it possible to use GVContext.h from the install directory
where gvc.h is not located under this prefix.

Towards https://gitlab.com/graphviz/graphviz/-/issues/2196.

2 years agocgraph++: include cgraph.h without the cgraph directory prefix in AGraph.h
Magnus Jacobsson [Sun, 20 Feb 2022 09:33:45 +0000 (10:33 +0100)]
cgraph++: include cgraph.h without the cgraph directory prefix in AGraph.h

This makes it possible to use AGraph.h from the install directory
where cgraph.h is not located under this prefix.

Towards https://gitlab.com/graphviz/graphviz/-/issues/2196.

2 years agoMerge branch 'smattr/5E2D9BBC-3087-4FC2-8C95-929FC239F0CC' into 'main'
Matthew Fernandez [Mon, 21 Feb 2022 01:58:33 +0000 (01:58 +0000)]
Merge branch 'smattr/5E2D9BBC-3087-4FC2-8C95-929FC239F0CC' into 'main'

diffimg: handle allocation errors

See merge request graphviz/graphviz!2455

2 years agodiffimg: handle allocation errors
Matthew Fernandez [Sat, 19 Feb 2022 18:21:02 +0000 (10:21 -0800)]
diffimg: handle allocation errors

Previously these would be ignored resulting in crashes when allocations failed.

2 years agoMerge branch 'smattr/3ECB75F8-D9B2-4B09-9DD4-DCEF26761D98' into 'main'
Matthew Fernandez [Mon, 21 Feb 2022 00:40:45 +0000 (00:40 +0000)]
Merge branch 'smattr/3ECB75F8-D9B2-4B09-9DD4-DCEF26761D98' into 'main'

cgraph: [nfc] guard 'strcasecmp' definition to avoid duplication

See merge request graphviz/graphviz!2456

2 years agocgraph: [nfc] guard 'strcasecmp' definition to avoid duplication
Matthew Fernandez [Sat, 19 Feb 2022 17:59:06 +0000 (09:59 -0800)]
cgraph: [nfc] guard 'strcasecmp' definition to avoid duplication

When compiling with Microsoft Visual Studio 2019, the compiler emits:

  …\lib\cgraph\strcasecmp.h(12,64): warning C4211: nonstandard extension used:
    redefined extern to static

Investigation reveals libgd defines their own `strcasecmp` shim in gd.h:

  /* VS2012+ disable keyword macroizing unless _ALLOW_KEYWORD_MACROS is set
     We define inline, and strcasecmp if they're missing
  */
  #ifdef _MSC_VER
  #  define _ALLOW_KEYWORD_MACROS
  #  ifndef inline
  #    define inline __inline
  #  endif
  #  ifndef strcasecmp
  #    define strcasecmp _stricmp
  #  endif
  #endif

To avoid this warning, guard Graphviz’ shim so it is only used when the libgd
shim is not in use.

Note that this also explains why MSVC is able to compile diffimg.c despite the
Graphviz shim file not being included.

2 years agoMerge branch 'smattr/dc60dea5-b999-463f-976a-13c2b7443e26' into 'main'
Matthew Fernandez [Sun, 20 Feb 2022 23:26:15 +0000 (23:26 +0000)]
Merge branch 'smattr/dc60dea5-b999-463f-976a-13c2b7443e26' into 'main'

[nfc] remove 'NOTUSED' and propagate its definition everywhere

Closes #2195

See merge request graphviz/graphviz!2457

2 years ago[nfc] remove 'NOTUSED' and propagate its definition everywhere
Matthew Fernandez [Sat, 19 Feb 2022 21:55:41 +0000 (13:55 -0800)]
[nfc] remove 'NOTUSED' and propagate its definition everywhere

Gitlab: closes #2195

2 years agoMerge branch 'smattr/B20B33D7-255E-4435-A2DD-403C0F96EC13' into 'main'
Matthew Fernandez [Sun, 20 Feb 2022 22:14:32 +0000 (22:14 +0000)]
Merge branch 'smattr/B20B33D7-255E-4435-A2DD-403C0F96EC13' into 'main'

MS Build: remove references to non-existent ReadMe.txt files

See merge request graphviz/graphviz!2459

2 years agoMS Build: remove references to non-existent ReadMe.txt files
Matthew Fernandez [Sat, 19 Feb 2022 22:30:05 +0000 (14:30 -0800)]
MS Build: remove references to non-existent ReadMe.txt files

2 years agoMerge branch 'smattr/9e779c9a-a15f-478d-b576-789a6bdba462' into 'main'
Matthew Fernandez [Sun, 20 Feb 2022 21:03:57 +0000 (21:03 +0000)]
Merge branch 'smattr/9e779c9a-a15f-478d-b576-789a6bdba462' into 'main'

fix 'gvpr' usage output

See merge request graphviz/graphviz!2460

2 years agofix 'gvpr' usage output
Matthew Fernandez [Sat, 19 Feb 2022 21:04:13 +0000 (13:04 -0800)]
fix 'gvpr' usage output

Commit 83eea6075b8f4746d632a792b1d1b97c19797acb altered the calling convention
of `errorv`, but failed to take into account that the local variable `s` was
being used for something else prior to its use as the first unpacked parameter.
Following this commit, the first parameter was being discarded as `s` was
overwritten with `error_info.id` or `id`.

This fix restores the previous behavior.

2 years agoadd a test case demonstrating a GVPR regression
Matthew Fernandez [Sat, 19 Feb 2022 20:41:08 +0000 (12:41 -0800)]
add a test case demonstrating a GVPR regression

2 years agoMerge branch 'smattr/45757D7F-6696-4553-985F-16E4C839E43D' into 'main'
Matthew Fernandez [Sun, 20 Feb 2022 19:45:04 +0000 (19:45 +0000)]
Merge branch 'smattr/45757D7F-6696-4553-985F-16E4C839E43D' into 'main'

tclpkg vgpanecmd: remove acceptance of ambiguous abbreviated commands

Closes #1961

See merge request graphviz/graphviz!2458

2 years agotclpkg vgpanecmd: remove acceptance of ambiguous abbreviated commands
Matthew Fernandez [Tue, 8 Feb 2022 10:51:32 +0000 (21:51 +1100)]
tclpkg vgpanecmd: remove acceptance of ambiguous abbreviated commands

`vgpanecmd` accepted abbreviations of commands, e.g. `li` for list. However
these abbreviations were accepted as first match with no disambiguation. So `r`
would always be interpreted as `rotate`, not `remove`. This behavior appears to
be an unintentional side effect of commands being incrementally introduced over
time without this kind of prefix-matching overlap being taken into account,
though this is mostly a guess as all this code was implemented prior to the
first Git commit.

Gitlab: fixes #1961

2 years agoMerge branch 'smattr/294959A0-076C-47FA-AF24-40225D33D7A0' into 'main'
Matthew Fernandez [Sun, 20 Feb 2022 03:14:16 +0000 (03:14 +0000)]
Merge branch 'smattr/294959A0-076C-47FA-AF24-40225D33D7A0' into 'main'

CI: remove '$OS_ID'

See merge request graphviz/graphviz!2454

2 years agoCI: [nfc] remove writing of OS_ID file
Matthew Fernandez [Sat, 19 Feb 2022 06:54:56 +0000 (22:54 -0800)]
CI: [nfc] remove writing of OS_ID file

As of the prior commit, nothing uses this.

2 years agoCI: [nfc] remove setting of '$OS_ID'
Matthew Fernandez [Sat, 19 Feb 2022 06:53:42 +0000 (22:53 -0800)]
CI: [nfc] remove setting of '$OS_ID'

As of the prior commit, nothing uses this variable.

2 years agoCI: remove the use of '$OS_ID' during testing
Matthew Fernandez [Sat, 19 Feb 2022 06:48:51 +0000 (22:48 -0800)]
CI: remove the use of '$OS_ID' during testing

This commit alters the CI tests to now pull OS information from /etc/os-release
instead of from an ad hoc environment variable. This makes test case execution
independent from which/whether environment variables have been exported. The
intent with this is to reduce the likelihood of an issue like that fixed in
50db0c5e8da293d816d8b5c4620f2fa2d311d37a being reintroduced.

2 years agoMerge branch 'smattr/4DE02E85-5B6C-45CD-BB3C-4C7183C5DD33' into 'main'
Matthew Fernandez [Sun, 20 Feb 2022 01:51:12 +0000 (01:51 +0000)]
Merge branch 'smattr/4DE02E85-5B6C-45CD-BB3C-4C7183C5DD33' into 'main'

neatogen: [nfc] remove 'DEVDBG' guarded code

See merge request graphviz/graphviz!2452

2 years agoneatogen: [nfc] remove 'DEVDBG' guarded code
Matthew Fernandez [Thu, 17 Feb 2022 04:11:40 +0000 (15:11 +1100)]
neatogen: [nfc] remove 'DEVDBG' guarded code

Nothing in the build systems define this, but it is also unclear how to use this
debugging support as the psdbg.c support functions seem to be something internal
that was never committed to the repository.

2 years agoMerge branch 'smattr/08C6E85C-C8A0-48CB-B812-98567782EBAC' into 'main'
Matthew Fernandez [Sat, 19 Feb 2022 07:08:21 +0000 (07:08 +0000)]
Merge branch 'smattr/08C6E85C-C8A0-48CB-B812-98567782EBAC' into 'main'

upgrade Pylint dependency

See merge request graphviz/graphviz!2442

2 years agoupgrade Pylint dependency
Matthew Fernandez [Sat, 12 Feb 2022 23:15:54 +0000 (10:15 +1100)]
upgrade Pylint dependency

2 years agoMerge branch 'smattr/4F517B52-B8A0-4A70-9E3E-AAB95452CC48' into 'main'
Matthew Fernandez [Sat, 19 Feb 2022 03:17:32 +0000 (03:17 +0000)]
Merge branch 'smattr/4F517B52-B8A0-4A70-9E3E-AAB95452CC48' into 'main'

fix: Run feasible_tree() even if maxiter is zero

Closes #1902

See merge request graphviz/graphviz!2448

2 years agoMove maxiter check after the feasible_tree() call.
Rob Hart [Tue, 8 Dec 2020 13:01:24 +0000 (05:01 -0800)]
Move maxiter check after the feasible_tree() call.

Edit from Matt: changelog entry and un-xfailed the test case.

Quoting the description of MR !1688 if it ever ends up lost to the sands of
time:

  If `nslimit1` is zero, then `rank2` is called with `maxiter=0`. It is likely
  the intent here is to at least compute and return an initial feasible solution
  (though not running any network simplex iterations).

Gitlab: fixes #1902

Co-authored-by: Matthew Fernandez <matthew.fernandez@gmail.com>
2 years agotests: [nfc] conform with double quotes for strings in #1902
Matthew Fernandez [Tue, 15 Feb 2022 20:36:47 +0000 (07:36 +1100)]
tests: [nfc] conform with double quotes for strings in #1902

2 years agotests: [nfc] use newer 'dot' helper in #1902
Matthew Fernandez [Tue, 15 Feb 2022 20:36:13 +0000 (07:36 +1100)]
tests: [nfc] use newer 'dot' helper in #1902

2 years agotests: [nfc] use more modern 'pathlib' in #1902
Matthew Fernandez [Tue, 15 Feb 2022 20:35:23 +0000 (07:35 +1100)]
tests: [nfc] use more modern 'pathlib' in #1902

2 years agoRegression test for issue 1902
Rob Hart [Tue, 8 Dec 2020 16:29:53 +0000 (08:29 -0800)]
Regression test for issue 1902

Edit from Matt: Added `xfail` marker as I have reordered the commits to put this
test case introduction before its fix, as well as aligning with current Pylint
requirements.

Gitlab: #1902

Co-authored-by: Matthew Fernandez <matthew.fernandez@gmail.com>
2 years agoMerge branch 'smattr/5DE18E14-8822-4DB4-96DF-550AEDEBC599' into 'main'
Matthew Fernandez [Sat, 19 Feb 2022 02:06:58 +0000 (02:06 +0000)]
Merge branch 'smattr/5DE18E14-8822-4DB4-96DF-550AEDEBC599' into 'main'

CI: some minor clean up of steps

See merge request graphviz/graphviz!2451

2 years agoCI: [nfc] abbreviate metrics file creation
Matthew Fernandez [Wed, 16 Feb 2022 19:48:40 +0000 (06:48 +1100)]
CI: [nfc] abbreviate metrics file creation

Slightly more efficient and concise.

2 years agoCI: remove log file deletion steps
Matthew Fernandez [Wed, 16 Feb 2022 19:44:41 +0000 (06:44 +1100)]
CI: remove log file deletion steps

The CI environments are transient and start fresh each time, so there is no need
to clean up temporary files.

2 years agoMerge branch 'smattr/C3D5797C-DD58-4F74-AD17-DE8C39AEFA1D' into 'main'
Matthew Fernandez [Wed, 16 Feb 2022 11:19:44 +0000 (11:19 +0000)]
Merge branch 'smattr/C3D5797C-DD58-4F74-AD17-DE8C39AEFA1D' into 'main'

neatogen: some simplification

See merge request graphviz/graphviz!2447

2 years agoneatogen: [nfc] brace a single-line if block
Matthew Fernandez [Wed, 16 Feb 2022 10:11:17 +0000 (21:11 +1100)]
neatogen: [nfc] brace a single-line if block

2 years agoneatogen: [nfc] remove some temporaries
Matthew Fernandez [Tue, 15 Feb 2022 08:35:30 +0000 (19:35 +1100)]
neatogen: [nfc] remove some temporaries

These seemed to be making the code less clear rather than more clear.

2 years agoneatogen max_absf: replace open coded max with a call to 'fmaxf'
Matthew Fernandez [Tue, 15 Feb 2022 08:32:10 +0000 (19:32 +1100)]
neatogen max_absf: replace open coded max with a call to 'fmaxf'