]> granicus.if.org Git - graphviz/log
graphviz
2 years agosparse hierachical_mq_clustering: remove 'flag' parameter
Matthew Fernandez [Mon, 2 Jan 2023 00:28:09 +0000 (16:28 -0800)]
sparse hierachical_mq_clustering: remove 'flag' parameter

This is always set to 0.

2 years agosparse modularity_clustering: remove 'flag' parameter
Matthew Fernandez [Mon, 2 Jan 2023 00:25:16 +0000 (16:25 -0800)]
sparse modularity_clustering: remove 'flag' parameter

This is always set to 0.

2 years agosparse hierachical_modularity_clustering: remove 'flag' parameter
Matthew Fernandez [Mon, 2 Jan 2023 00:20:38 +0000 (16:20 -0800)]
sparse hierachical_modularity_clustering: remove 'flag' parameter

This is always set to 0.

2 years agosparse Multilevel_Modularity_Clustering_establi: remove unhelpful comment
Matthew Fernandez [Mon, 2 Jan 2023 00:19:26 +0000 (16:19 -0800)]
sparse Multilevel_Modularity_Clustering_establi: remove unhelpful comment

2 years agosparse: remove unnecessary casts
Matthew Fernandez [Mon, 2 Jan 2023 00:19:12 +0000 (16:19 -0800)]
sparse: remove unnecessary casts

2 years agosparse: remove unnecessary parens
Matthew Fernandez [Mon, 2 Jan 2023 00:18:58 +0000 (16:18 -0800)]
sparse: remove unnecessary parens

2 years agosparse Multilevel_Modularity_Clustering_init: rephrase 'deg_total' clamping
Matthew Fernandez [Mon, 2 Jan 2023 00:14:33 +0000 (16:14 -0800)]
sparse Multilevel_Modularity_Clustering_init: rephrase 'deg_total' clamping

Squashes a -Wfloat-equal warning.

2 years agosparse Multilevel_Modularity_Clustering_init: remove shadowing of 'n'
Matthew Fernandez [Mon, 2 Jan 2023 00:12:59 +0000 (16:12 -0800)]
sparse Multilevel_Modularity_Clustering_init: remove shadowing of 'n'

This variable shadowed an `n` from the outer scope with an identical value.

2 years agoMerge branch 'smattr/8d876879-1a00-4159-89fd-5b42fa0e5243' into 'main'
Matthew Fernandez [Tue, 3 Jan 2023 02:50:26 +0000 (02:50 +0000)]
Merge branch 'smattr/8d876879-1a00-4159-89fd-5b42fa0e5243' into 'main'

sparse: squash a couple of compiler warnings

See merge request graphviz/graphviz!3032

2 years agosparse: remove shadowing of 'point' global
Matthew Fernandez [Sun, 1 Jan 2023 22:17:58 +0000 (14:17 -0800)]
sparse: remove shadowing of 'point' global

2 years agosparse: use an 'int' for 'id' field in node data
Matthew Fernandez [Sun, 1 Jan 2023 22:10:31 +0000 (14:10 -0800)]
sparse: use an 'int' for 'id' field in node data

Making this a `double` seems to have been a mistake. Only `int` values are ever
stored into this field and it is only ever compared against `int` values.

2 years agoMerge branch 'smattr/gitlab-1835' into 'main'
Matthew Fernandez [Tue, 3 Jan 2023 01:52:27 +0000 (01:52 +0000)]
Merge branch 'smattr/gitlab-1835' into 'main'

Autotools: discover libANN manually if ann.pc is missing

Closes #1835

See merge request graphviz/graphviz!3037

2 years agoAutotools: discover libANN manually if ann.pc is missing
Matthew Fernandez [Mon, 2 Jan 2023 17:24:43 +0000 (09:24 -0800)]
Autotools: discover libANN manually if ann.pc is missing

On Debian and Debian derivatives (e.g. Ubuntu) the libann and libann-dev
packages ship without an ann.pc file to support `pkg-config`. As a result of
this, `pkg-config` cannot find libANN and concludes it is not installed.

This change teaches the Autotools build system how to discover libANN manually
if the `pkg-config` technique fails. Note that we need to use `AC_CHECK_FILE`
instead of `AC_CHECK_HEADER` because libANN is in C++.

Gitlab: closes #1835

2 years agolib/mingle: fix: rename 'DEBUG' to 'MINGLE_DEBUG'
Matthew Fernandez [Mon, 2 Jan 2023 17:40:33 +0000 (09:40 -0800)]
lib/mingle: fix: rename 'DEBUG' to 'MINGLE_DEBUG'

When compiling Graphviz in debug mode (`-DDEBUG`) with libANN, this code causes
syntactic errors due to it using `DEBUG` itself.

2 years agoMerge branch 'smattr/997bc5ba-8507-4ac3-a496-eb9a2d0b2691' into 'main'
Matthew Fernandez [Sun, 1 Jan 2023 18:34:20 +0000 (18:34 +0000)]
Merge branch 'smattr/997bc5ba-8507-4ac3-a496-eb9a2d0b2691' into 'main'

increase stack size on non-Linux platforms to 32MB

Closes #1710

See merge request graphviz/graphviz!3031

2 years agoincrease stack size on macOS to 32MB
Matthew Fernandez [Sun, 1 Jan 2023 02:22:43 +0000 (18:22 -0800)]
increase stack size on macOS to 32MB

Similar to the prior situation with Windows platforms, the CMake build on macOS
was failing the long chain test due to insufficient stack reservation. This
change applies the same increase there. Note that there is no need to adjust the
Autotools build, which seems to handle this test case fine on all platforms.

Gitlab: closes #1710

2 years agoincrease stack size on Windows to 32MB
Matthew Fernandez [Sun, 1 Jan 2023 02:18:31 +0000 (18:18 -0800)]
increase stack size on Windows to 32MB

This repairs the long chain test after it was previously inadvertently broken.
Technically going to 32MB is not necessary on all platforms; in release mode,
the MS Build built Graphviz can handle this example with only a 16MB stack. But
it seems simpler to uniformly go to 32MB on all Windows platforms. In a 64-bit
address space, 32MB is trivial and we could even adjust this limit higher in
future. Note that this is the reserved size, not the committed size.

Gitlab: #1710

2 years agoMerge branch 'smattr/882be40c-6089-424b-99e1-80cdc36ae886' into 'main'
Matthew Fernandez [Sun, 1 Jan 2023 01:29:42 +0000 (01:29 +0000)]
Merge branch 'smattr/882be40c-6089-424b-99e1-80cdc36ae886' into 'main'

circogen, fdpgen: warning squashing and fix a memory leak

See merge request graphviz/graphviz!3020

2 years agofdpgen mkClusters: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen mkClusters: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen deriveGraph: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen deriveGraph: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen: remove unnecessary parens
Matthew Fernandez [Wed, 28 Dec 2022 23:17:03 +0000 (15:17 -0800)]
fdpgen: remove unnecessary parens

2 years agofdpgen: remove 'K2' parameter
Matthew Fernandez [Wed, 28 Dec 2022 23:14:00 +0000 (15:14 -0800)]
fdpgen: remove 'K2' parameter

Without tracing the code, it was challenging to see that `K2` was always being
set consistently to evaluate to `K * K`. We can remove this complexity by
simply removing the parameter entirely and computing it on-demand.

2 years agofdpgen: remove 'Ht2' parameter
Matthew Fernandez [Wed, 28 Dec 2022 23:12:48 +0000 (15:12 -0800)]
fdpgen: remove 'Ht2' parameter

Without tracing the code, it was challenging to see that `Ht2` was always being
set consistently to evaluate to `Ht * Ht`. We can remove this complexity by
simply removing the parameter entirely and computing it on-demand.

2 years agofdpgen: remove 'Wd2' parameter
Matthew Fernandez [Wed, 28 Dec 2022 23:11:43 +0000 (15:11 -0800)]
fdpgen: remove 'Wd2' parameter

Without tracing the code, it was challenging to see that `Wd2` was always being
set consistently to evaluate to `Wd * Wd`. We can remove this complexity by
simply removing the parameter entirely and computing it on-demand.

2 years agofdpgen: remove 'Cell2' parameter
Matthew Fernandez [Wed, 28 Dec 2022 23:08:00 +0000 (15:08 -0800)]
fdpgen: remove 'Cell2' parameter

This parameter was only being set conditionally, based on whether `useGrid` was
set, making it look as if the incorrect default value of `0` was being used in
some cases. By tracing the code, it was possible to see the only usage of
`T_Cell2` was under exactly the same conditions as which it was set, making the
use safe. We can remove this complexity by simply removing the parameter
entirely and computing it on-demand.

2 years agofdpgen: replace inline object list with generic list
Matthew Fernandez [Wed, 28 Dec 2022 23:03:47 +0000 (15:03 -0800)]
fdpgen: replace inline object list with generic list

2 years agofdpgen compoundEdges: fix memory leak
Matthew Fernandez [Wed, 28 Dec 2022 22:45:30 +0000 (14:45 -0800)]
fdpgen compoundEdges: fix memory leak

When hitting either of the error conditions in the loop, the next iteration
would be begun without clearing or freeing the object list. The next call to
`objectList` would overwrite the still-allocated previous object list and it
would be lost.

2 years agocircogen circomps: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
circogen circomps: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen prGraph: remove unnecessary casts
Matthew Fernandez [Wed, 28 Dec 2022 22:17:43 +0000 (14:17 -0800)]
circogen prGraph: remove unnecessary casts

These casts were also unsafe in that they were casting pointers into a type that
is smaller on, e.g. x86-64, and would truncate the pointer.

2 years agocircogen: remove unnecessary parens
Matthew Fernandez [Wed, 28 Dec 2022 22:17:34 +0000 (14:17 -0800)]
circogen: remove unnecessary parens

2 years agocircogen: fix -Wmissing-prototypes warnings for 'circPos'
Matthew Fernandez [Wed, 28 Dec 2022 22:02:58 +0000 (14:02 -0800)]
circogen: fix -Wmissing-prototypes warnings for 'circPos'

2 years agocircogen position: use a more appropriate type for 'childCount'
Matthew Fernandez [Wed, 28 Dec 2022 22:01:26 +0000 (14:01 -0800)]
circogen position: use a more appropriate type for 'childCount'

Squashes a -Wsign-conversion warning.

2 years agocircogen position: remove shadowing of 'path' global
Matthew Fernandez [Wed, 28 Dec 2022 22:00:14 +0000 (14:00 -0800)]
circogen position: remove shadowing of 'path' global

2 years agocircogen find_longest_path: remove shadowing of 'path' global
Matthew Fernandez [Wed, 28 Dec 2022 21:58:48 +0000 (13:58 -0800)]
circogen find_longest_path: remove shadowing of 'path' global

2 years agoMerge branch 'smattr/ade039bf-94f1-4769-a861-2f41b42a7b9d' into 'main'
Matthew Fernandez [Sun, 1 Jan 2023 00:24:22 +0000 (00:24 +0000)]
Merge branch 'smattr/ade039bf-94f1-4769-a861-2f41b42a7b9d' into 'main'

misc warning squashing

See merge request graphviz/graphviz!3018

2 years agoexpr print: squash a -Wconversion warning
Matthew Fernandez [Mon, 26 Dec 2022 21:56:56 +0000 (13:56 -0800)]
expr print: squash a -Wconversion warning

`integer` is known to fit into an `int` here.

2 years agosparse QuadTree_get_nearest_internal: remove shadowing of 'point' global
Matthew Fernandez [Mon, 26 Dec 2022 21:51:08 +0000 (13:51 -0800)]
sparse QuadTree_get_nearest_internal: remove shadowing of 'point' global

2 years agosparse QuadTree_get_nearest_internal: fix comment typo
Matthew Fernandez [Mon, 26 Dec 2022 21:49:58 +0000 (13:49 -0800)]
sparse QuadTree_get_nearest_internal: fix comment typo

The use of “years” in this comment does not make sense to me, so the comment
still seems faulty, but this is at least an improvement.

2 years agosparse QuadTree_new_from_point_list: rephrase conditional assignment as 'fmax'
Matthew Fernandez [Mon, 26 Dec 2022 21:45:48 +0000 (13:45 -0800)]
sparse QuadTree_new_from_point_list: rephrase conditional assignment as 'fmax'

Avoids a -Wfloat-equal warning.

2 years agosparse Multilevel_MQ_Clustering: remove duplicate 'n'
Matthew Fernandez [Mon, 26 Dec 2022 21:43:18 +0000 (13:43 -0800)]
sparse Multilevel_MQ_Clustering: remove duplicate 'n'

This variable was shadowing another `n` in the outer scope with the same value.

2 years agoortho traverse_polygon: squash two -Wsign-conversion warnings
Matthew Fernandez [Mon, 26 Dec 2022 21:37:33 +0000 (13:37 -0800)]
ortho traverse_polygon: squash two -Wsign-conversion warnings

`trnum` is known positive here.

2 years agoortho emitGraph: do float rounding in 'fprintf'
Matthew Fernandez [Mon, 26 Dec 2022 21:35:34 +0000 (13:35 -0800)]
ortho emitGraph: do float rounding in 'fprintf'

Squashes four -Wfloat-conversion warnings.

2 years agoortho: clang-format partition.h
Matthew Fernandez [Mon, 26 Dec 2022 21:19:16 +0000 (13:19 -0800)]
ortho: clang-format partition.h

2 years agoortho: track number of rectangles as a 'size_t'
Matthew Fernandez [Mon, 26 Dec 2022 21:18:48 +0000 (13:18 -0800)]
ortho: track number of rectangles as a 'size_t'

Squashes a -Wconversion warning.

2 years agocommon: replace 'boxfof' with C99 initialization
Matthew Fernandez [Mon, 26 Dec 2022 21:09:47 +0000 (13:09 -0800)]
common: replace 'boxfof' with C99 initialization

2 years agocommon: remove unused 'boxof'
Matthew Fernandez [Mon, 26 Dec 2022 21:06:34 +0000 (13:06 -0800)]
common: remove unused 'boxof'

2 years agoast: use an int for 'groups'
Matthew Fernandez [Mon, 26 Dec 2022 21:01:00 +0000 (13:01 -0800)]
ast: use an int for 'groups'

Squashes five -Wconversion warnings.

2 years agoMerge branch 'smattr/4ebb6901-a023-458e-a247-b50a40ca5622' into 'main'
Matthew Fernandez [Sat, 31 Dec 2022 23:18:46 +0000 (23:18 +0000)]
Merge branch 'smattr/4ebb6901-a023-458e-a247-b50a40ca5622' into 'main'

common: some warning squashing

See merge request graphviz/graphviz!3019

2 years agocommon writenodeandport: remove shadowing of 'port' global
Matthew Fernandez [Wed, 28 Dec 2022 18:10:03 +0000 (10:10 -0800)]
common writenodeandport: remove shadowing of 'port' global

2 years agocommon agputc: squash -Wconversion warning
Matthew Fernandez [Wed, 28 Dec 2022 18:09:05 +0000 (10:09 -0800)]
common agputc: squash -Wconversion warning

2 years agocommon attach_attrs_and_arrows: remove shadowing of 'i'
Matthew Fernandez [Wed, 28 Dec 2022 18:07:02 +0000 (10:07 -0800)]
common attach_attrs_and_arrows: remove shadowing of 'i'

2 years agocommon attach_attrs_and_arrows: use 'agxbprint' to simplify some code
Matthew Fernandez [Wed, 28 Dec 2022 17:56:52 +0000 (09:56 -0800)]
common attach_attrs_and_arrows: use 'agxbprint' to simplify some code

This is similar to bb80d536e9cfdd4680254d9e91511b224a143eb4.

2 years agocommon set_record_rects: use 'agxbprint' to simplify some code
Matthew Fernandez [Wed, 28 Dec 2022 17:56:52 +0000 (09:56 -0800)]
common set_record_rects: use 'agxbprint' to simplify some code

This is similar to bb80d536e9cfdd4680254d9e91511b224a143eb4.

2 years agoMerge branch 'smattr/b4703bf7-d781-48d4-bac0-726026a5e221' into 'main'
Matthew Fernandez [Sat, 31 Dec 2022 22:29:04 +0000 (22:29 +0000)]
Merge branch 'smattr/b4703bf7-d781-48d4-bac0-726026a5e221' into 'main'

slightly accelerate circo

See merge request graphviz/graphviz!3014

2 years agocircogen: replace CDT 'deglist' with a generic list
Matthew Fernandez [Sun, 25 Dec 2022 22:49:52 +0000 (14:49 -0800)]
circogen: replace CDT 'deglist' with a generic list

Apart from de-duplicating some code, this has the following notable effects:

  1. The list of nodes is now stored as a contiguous array rather than a linked
     list, improving performance characteristics.

  2. The list no longer stores degrees, only node pointers. While the code using
     this list does modify node degrees, it does not seem to modify the degree
     of any node while it is present in the list. So looking up a node’s degree
     through the node itself saves some memory overhead.

  3. Nodes are inserted into the list and _then_ the list is sorted, rather than
     maintaining an always-sorted list. This is a slight performance
     improvement.

  4. The list is sorted by degree _descending_ now instead of ascending. This
     enables operating on the list as a stack, making the pop operation more
     efficient.

Using `circo -Tsvg -o /dev/null swedish-flag.dot` on the example attached to
#1718, we have the following:

  ┌──────┬───────────────┬───────────────┬──────┐
  │      │ before        │ after         │ diff │
  ╞══════╪═══════════════╪═══════════════╪══════╡
  │ 1718 │ 3m34s         │ 3m27s         │  -3% │
  │      │ 18MB peak RSS │ 18MB peak RSS │  -0% │
  └──────┴───────────────┴───────────────┴──────┘

2 years agocgraph: add remove-by-value functionality to the generic list
Matthew Fernandez [Sun, 25 Dec 2022 22:22:38 +0000 (14:22 -0800)]
cgraph: add remove-by-value functionality to the generic list

Note that this assumes elements can be compared using `memcmp` which is not true
for most aggregates. It is the responsibility of the caller to avoid using this
with types that cannot be compared in this way.

2 years agocgraph: add sorting functionality to the generic list
Matthew Fernandez [Sun, 25 Dec 2022 21:53:03 +0000 (13:53 -0800)]
cgraph: add sorting functionality to the generic list

Note that this implementation needed to guard the call to `qsort` with a check
that the list is non-empty. UBSan considers passing `NULL` as the first
parameter to `qsort` undefined behavior, even when `nmemb` is 0. I do not know
why this is. I cannot find any text in `qsort` references or ISO C99 to justify
this. But it is simple enough to avoid.

Similarly, passing 0 as `size` causes out-of-bounds accesses in Glibc’s `qsort`.
It is possible there is some text in ISO C99 regarding sizes that indirectly
implies this value must be non-zero. For this implementation, we rely on this
macro never being instantiated with a 0-sized type. It is possible 0-sized types
themselves are impossible without C++’s Empty Base Optimization. I only stumbled
across this quirk of `qsort` by accidentally swapping the `size` and `nmemb`
parameters.

2 years agoMerge branch 'smattr/a6d4ce20-5174-4877-9f60-60bd1cdf0829' into 'main'
Matthew Fernandez [Sat, 31 Dec 2022 20:43:25 +0000 (20:43 +0000)]
Merge branch 'smattr/a6d4ce20-5174-4877-9f60-60bd1cdf0829' into 'main'

sfdpgen: remove dead code

See merge request graphviz/graphviz!3026

2 years agosfdpgen prolongate: remove unhelpful comment
Matthew Fernandez [Fri, 30 Dec 2022 18:16:39 +0000 (10:16 -0800)]
sfdpgen prolongate: remove unhelpful comment

2 years agosfdpgen: remove 'coarsen_scheme_used' option that is always set the same
Matthew Fernandez [Fri, 30 Dec 2022 18:10:38 +0000 (10:10 -0800)]
sfdpgen: remove 'coarsen_scheme_used' option that is always set the same

2 years agosfdpgen: remove 'coarsen_mode' option that is always set the same
Matthew Fernandez [Fri, 30 Dec 2022 18:00:14 +0000 (10:00 -0800)]
sfdpgen: remove 'coarsen_mode' option that is always set the same

2 years agosparse: remove no longer used doubly linked list implementation
Matthew Fernandez [Fri, 30 Dec 2022 17:56:59 +0000 (09:56 -0800)]
sparse: remove no longer used doubly linked list implementation

2 years agosfdpgen: remove 'MAX_IND_VTX_SET_*' constants
Matthew Fernandez [Fri, 30 Dec 2022 17:47:52 +0000 (09:47 -0800)]
sfdpgen: remove 'MAX_IND_VTX_SET_*' constants

The last use of these was removed in df4f59e20e2de38b47aa58571750df4bfcc1cc13.

2 years agosfdpgen: remove 'PriorityQueue' code
Matthew Fernandez [Fri, 30 Dec 2022 17:44:06 +0000 (09:44 -0800)]
sfdpgen: remove 'PriorityQueue' code

The last use of this was removed in d42aea4877c8ff9ea0d1cc4f23b45f2d1b958622.

2 years agoMerge branch 'smattr/gitlab-2233' into 'main'
Matthew Fernandez [Sat, 31 Dec 2022 18:10:37 +0000 (18:10 +0000)]
Merge branch 'smattr/gitlab-2233' into 'main'

CMake: look for and use Qt6 in preference to Qt5

See merge request graphviz/graphviz!3027

2 years agoCMake: look for and use Qt6 in preference to Qt5
Matthew Fernandez [Sat, 31 Dec 2022 00:23:31 +0000 (16:23 -0800)]
CMake: look for and use Qt6 in preference to Qt5

Gitlab: #2233

2 years agogvedit MdiChild::saveFile: disable explicit UTF-8 saving with Qt ≥ 6
Matthew Fernandez [Sat, 31 Dec 2022 00:20:20 +0000 (16:20 -0800)]
gvedit MdiChild::saveFile: disable explicit UTF-8 saving with Qt ≥ 6

From Qt6 onwards, `QTextStream` is in UTF-8 by default:¹

  By default, QStringConverter::Utf8 is used, and automatic unicode detection
  is enabled.

Gitlab: #2233

¹ https://doc.qt.io/qt-6.2/qtextstream.html#setEncoding

2 years agogvedit CMainWindow::actions: use '|' instead of '+' to combine QKeyCombinations
Matthew Fernandez [Sat, 31 Dec 2022 00:11:17 +0000 (16:11 -0800)]
gvedit CMainWindow::actions: use '|' instead of '+' to combine QKeyCombinations

`operator+` is deprecated on this type in Qt6 and produces a warning.
`operator|` works in both Qt5 and Qt6.

Gitlab: #2233

2 years agoMerge branch 'smattr/0c9a1cb2-b3b4-4876-9d37-15e27a83c8c7' into 'main'
Matthew Fernandez [Sat, 31 Dec 2022 17:23:11 +0000 (17:23 +0000)]
Merge branch 'smattr/0c9a1cb2-b3b4-4876-9d37-15e27a83c8c7' into 'main'

sparse: some cgraph allocation wrapper migration, removing unnecessary casts

See merge request graphviz/graphviz!3023

2 years agosparse get_or_alloc_force_qt: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
sparse get_or_alloc_force_qt: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agosparse get_or_alloc_force_qt: remove unnecessary casts
Matthew Fernandez [Thu, 29 Dec 2022 21:47:09 +0000 (13:47 -0800)]
sparse get_or_alloc_force_qt: remove unnecessary casts

2 years agosparse get_or_assign_node_force: remove unnecessary casts
Matthew Fernandez [Thu, 29 Dec 2022 21:46:37 +0000 (13:46 -0800)]
sparse get_or_assign_node_force: remove unnecessary casts

2 years agosparse DoubleLinkedList_new: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
sparse DoubleLinkedList_new: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agosparse SingleLinkedList_prepend_int: remove unnecessary cast
Matthew Fernandez [Thu, 29 Dec 2022 21:43:25 +0000 (13:43 -0800)]
sparse SingleLinkedList_prepend_int: remove unnecessary cast

2 years agosparse SingleLinkedList_prepend_int: fix unchecked allocation failure
Matthew Fernandez [Thu, 29 Dec 2022 21:43:15 +0000 (13:43 -0800)]
sparse SingleLinkedList_prepend_int: fix unchecked allocation failure

2 years agosparse SingleLinkedList_new_int: remove unnecessary cast
Matthew Fernandez [Thu, 29 Dec 2022 21:42:15 +0000 (13:42 -0800)]
sparse SingleLinkedList_new_int: remove unnecessary cast

2 years agosparse SingleLinkedList_new_int: fix unchecked allocation failure
Matthew Fernandez [Thu, 29 Dec 2022 21:42:03 +0000 (13:42 -0800)]
sparse SingleLinkedList_new_int: fix unchecked allocation failure

2 years agosparse SingleLinkedList_new: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
sparse SingleLinkedList_new: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoMerge branch 'smattr/gitlab-2332' into 'main'
Matthew Fernandez [Fri, 30 Dec 2022 18:25:37 +0000 (18:25 +0000)]
Merge branch 'smattr/gitlab-2332' into 'main'

Autotools: remove legacy `python` discovery

See merge request graphviz/graphviz!3022

2 years agoAutotools: remove legacy `python` discovery
Matthew Fernandez [Thu, 29 Dec 2022 21:16:01 +0000 (13:16 -0800)]
Autotools: remove legacy `python` discovery

When removing Python 2 support, the discovery paths that checked for the Python
interpreter as `python` were retained to support older distros in the Red Hat
ecosystem where Python 3 goes by the name `python`. All currently supported
distros use the name `python3`, so this code is no longer needed.

Gitlab: related to #2332

2 years agoMerge branch 'smattr/baf8fad8-8d84-44e2-8ff6-1ac1ee98a0e2' into 'main'
Matthew Fernandez [Fri, 30 Dec 2022 07:36:19 +0000 (07:36 +0000)]
Merge branch 'smattr/baf8fad8-8d84-44e2-8ff6-1ac1ee98a0e2' into 'main'

sfdpgen: remove unused control options

See merge request graphviz/graphviz!3021

2 years agosfdpgen: remove unused 'maximal_independent_vertex_set'
Matthew Fernandez [Thu, 29 Dec 2022 20:03:06 +0000 (12:03 -0800)]
sfdpgen: remove unused 'maximal_independent_vertex_set'

2 years agosfdpgen: remove unused 'maximal_independent_vertex_set_RS'
Matthew Fernandez [Thu, 29 Dec 2022 20:01:09 +0000 (12:01 -0800)]
sfdpgen: remove unused 'maximal_independent_vertex_set_RS'

2 years agosfdpgen: remove unused 'maximal_independent_edge_set'
Matthew Fernandez [Thu, 29 Dec 2022 19:59:12 +0000 (11:59 -0800)]
sfdpgen: remove unused 'maximal_independent_edge_set'

2 years agosfdpgen: remove unused 'maximal_independent_edge_set_heavest_edge_pernode'
Matthew Fernandez [Thu, 29 Dec 2022 19:57:28 +0000 (11:57 -0800)]
sfdpgen: remove unused 'maximal_independent_edge_set_heavest_edge_pernode'

2 years agosfdpgen: remove unused 'maximal_independent_edge_set_heavest_edge_pernode_leaves_first'
Matthew Fernandez [Thu, 29 Dec 2022 19:55:39 +0000 (11:55 -0800)]
sfdpgen: remove unused 'maximal_independent_edge_set_heavest_edge_pernode_leaves_first'

2 years agosfdpgen: remove unused 'maximal_independent_edge_set_heavest_cluster_pernode_leaves_f...
Matthew Fernandez [Thu, 29 Dec 2022 19:53:30 +0000 (11:53 -0800)]
sfdpgen: remove unused 'maximal_independent_edge_set_heavest_cluster_pernode_leaves_first'

2 years agosfdpgen: remove unused 'maximal_independent_edge_set_heavest_edge_pernode_scaled'
Matthew Fernandez [Thu, 29 Dec 2022 19:48:43 +0000 (11:48 -0800)]
sfdpgen: remove unused 'maximal_independent_edge_set_heavest_edge_pernode_scaled'

2 years agosfdpgen: remove unused 'D' parameter threaded through functions
Matthew Fernandez [Thu, 29 Dec 2022 19:47:56 +0000 (11:47 -0800)]
sfdpgen: remove unused 'D' parameter threaded through functions

2 years agosfdpgen: remove 'coarsen_scheme' control parameter that is always set the same
Matthew Fernandez [Thu, 29 Dec 2022 19:44:02 +0000 (11:44 -0800)]
sfdpgen: remove 'coarsen_scheme' control parameter that is always set the same

2 years agosfdpgen: remove 'randomize' control parameter that is always true
Matthew Fernandez [Thu, 29 Dec 2022 19:28:55 +0000 (11:28 -0800)]
sfdpgen: remove 'randomize' control parameter that is always true

2 years agosparse Multilevel_MQ_Clustering_establish: remove unnecessary cast
Matthew Fernandez [Thu, 29 Dec 2022 19:15:44 +0000 (11:15 -0800)]
sparse Multilevel_MQ_Clustering_establish: remove unnecessary cast

2 years agosparse get_mq: remove unnecessary cast
Matthew Fernandez [Thu, 29 Dec 2022 19:15:27 +0000 (11:15 -0800)]
sparse get_mq: remove unnecessary cast

2 years agosparse SparseMatrix_import_dot: remove unnecessary cast
Matthew Fernandez [Thu, 29 Dec 2022 19:15:13 +0000 (11:15 -0800)]
sparse SparseMatrix_import_dot: remove unnecessary cast

2 years agoneatogen OverlapSmoother_new: remove unnecessary casts
Matthew Fernandez [Thu, 29 Dec 2022 19:14:55 +0000 (11:14 -0800)]
neatogen OverlapSmoother_new: remove unnecessary casts

2 years agoneatogen ideal_distance_avoid_overlap: remove useless return statement
Matthew Fernandez [Thu, 29 Dec 2022 19:14:22 +0000 (11:14 -0800)]
neatogen ideal_distance_avoid_overlap: remove useless return statement

2 years agoneatogen fdpAdjust: remove unused return value
Matthew Fernandez [Thu, 29 Dec 2022 19:14:03 +0000 (11:14 -0800)]
neatogen fdpAdjust: remove unused return value

2 years agogvmap get_polygon_solids: remove commented out code
Matthew Fernandez [Thu, 29 Dec 2022 19:11:15 +0000 (11:11 -0800)]
gvmap get_polygon_solids: remove commented out code

2 years agogvmap get_polygon_solids: remove unnecessary casts
Matthew Fernandez [Thu, 29 Dec 2022 19:10:18 +0000 (11:10 -0800)]
gvmap get_polygon_solids: remove unnecessary casts

2 years agogvmap get_poly_lines: remove unnecessary cast
Matthew Fernandez [Thu, 29 Dec 2022 19:10:00 +0000 (11:10 -0800)]
gvmap get_poly_lines: remove unnecessary cast