]> granicus.if.org Git - graphviz/log
graphviz
3 years agodisable Pylint’s missing-function-docstring warnings on main
Matthew Fernandez [Sat, 3 Jul 2021 02:38:42 +0000 (19:38 -0700)]
disable Pylint’s missing-function-docstring warnings on main

Documenting main does not really make sense.

3 years agoupdate file comments on some Python files so they are recognized by Pylint
Matthew Fernandez [Sat, 3 Jul 2021 02:37:59 +0000 (19:37 -0700)]
update file comments on some Python files so they are recognized by Pylint

Deals with some Pylint missing-module-docstrings.

3 years agoremove quirky use of bitwise AND in Python
Matthew Fernandez [Sat, 3 Jul 2021 02:18:13 +0000 (19:18 -0700)]
remove quirky use of bitwise AND in Python

3 years agoremove legacy use of addition to construct Python strings
Matthew Fernandez [Sat, 3 Jul 2021 02:17:54 +0000 (19:17 -0700)]
remove legacy use of addition to construct Python strings

3 years agofix a Python indentation issue
Matthew Fernandez [Sat, 3 Jul 2021 02:11:54 +0000 (19:11 -0700)]
fix a Python indentation issue

4 spaces is standard for Python, but we set 2 spaces in our .pylintrc.

3 years agodisable Pylint import-error warnings for gv
Matthew Fernandez [Sat, 3 Jul 2021 02:10:26 +0000 (19:10 -0700)]
disable Pylint import-error warnings for gv

This is the Graphviz module itself which is not necessarily expected to be built
and available when the test suite is run.

3 years agoremove use of Python 2 syntax in some demo files
Matthew Fernandez [Sat, 3 Jul 2021 02:03:38 +0000 (19:03 -0700)]
remove use of Python 2 syntax in some demo files

The last remnants of Python 2 support were removed in
61ae0419198465b457df875881a2dae0aadc8bfd. So it makes sense to update these
examples to be Python 3 only.

3 years agoMerge branch 'gentoo-patches' into 'main'
Matthew Fernandez [Thu, 8 Jul 2021 00:54:20 +0000 (00:54 +0000)]
Merge branch 'gentoo-patches' into 'main'

Upstream gentoo patches

See merge request graphviz/graphviz!2038

3 years agochangelog entries for the prior two commits
Matthew Fernandez [Thu, 8 Jul 2021 00:25:36 +0000 (17:25 -0700)]
changelog entries for the prior two commits

3 years agoRemove bashism
David Seifert [Tue, 6 Jul 2021 11:46:13 +0000 (13:46 +0200)]
Remove bashism

* `==` only works in bash, whereas a shell like
  dash is significantly faster for running the
  configure script.

3 years agoDo not install `command_line`
David Seifert [Tue, 6 Jul 2021 11:46:10 +0000 (13:46 +0200)]
Do not install `command_line`

* `command_line` is solely for testing and
  shouldn't be installed to the prefix.

3 years agoMerge branch 'smattr/1482fbac-25eb-4ccc-a9ae-3f15b5b5850c' into 'main'
Matthew Fernandez [Wed, 7 Jul 2021 15:17:07 +0000 (15:17 +0000)]
Merge branch 'smattr/1482fbac-25eb-4ccc-a9ae-3f15b5b5850c' into 'main'

more lib/sparse clean up

See merge request graphviz/graphviz!2028

3 years agoremove now unused dense_transpose
Matthew Fernandez [Thu, 1 Jul 2021 03:18:51 +0000 (20:18 -0700)]
remove now unused dense_transpose

3 years agoremove unused res_transposed argument to SparseMatrix_multiply_dense1
Matthew Fernandez [Thu, 1 Jul 2021 03:18:01 +0000 (20:18 -0700)]
remove unused res_transposed argument to SparseMatrix_multiply_dense1

3 years agoremove unused transposed argument to SparseMatrix_multiply_dense1
Matthew Fernandez [Thu, 1 Jul 2021 03:09:13 +0000 (20:09 -0700)]
remove unused transposed argument to SparseMatrix_multiply_dense1

3 years agoremove the ability to transpose the result of SparseMatrix_multiply_dense
Matthew Fernandez [Thu, 1 Jul 2021 03:06:47 +0000 (20:06 -0700)]
remove the ability to transpose the result of SparseMatrix_multiply_dense

Neither of the two callers was using this functionality.

3 years agoremove now unused SparseMatrix_multiply_dense2
Matthew Fernandez [Thu, 1 Jul 2021 03:01:51 +0000 (20:01 -0700)]
remove now unused SparseMatrix_multiply_dense2

3 years agoremove support for transposed matrix v in SparseMatrix_multiply_dense
Matthew Fernandez [Thu, 1 Jul 2021 02:17:52 +0000 (19:17 -0700)]
remove support for transposed matrix v in SparseMatrix_multiply_dense

The only use of this function is with not-transposed matrices.

3 years agoremove support for transposed matrix A in SparseMatrix_multiply_dense
Matthew Fernandez [Thu, 1 Jul 2021 02:15:37 +0000 (19:15 -0700)]
remove support for transposed matrix A in SparseMatrix_multiply_dense

The only use of this function is with not-transposed matrices.

3 years agoremove SUM_REPEATED_REAL_PART option
Matthew Fernandez [Thu, 1 Jul 2021 02:07:35 +0000 (19:07 -0700)]
remove SUM_REPEATED_REAL_PART option

This is a configuration option to
SparseMatrix_from_coordinate_arrays_not_compacted that is never used. The
leading comment that is also removed in this commit seems to have been a
mistake. If refers to incorrect constants, repeats variables, and contains
numerous typographical errors.

3 years agoremove SUM_REPEATED_IMAGINARY_PART option
Matthew Fernandez [Thu, 1 Jul 2021 02:04:49 +0000 (19:04 -0700)]
remove SUM_REPEATED_IMAGINARY_PART option

This is a configuration option to
SparseMatrix_from_coordinate_arrays_not_compacted that is never used.

3 years agoremove SUM_IMGINARY_KEEP_LAST_REAL option
Matthew Fernandez [Thu, 1 Jul 2021 02:00:40 +0000 (19:00 -0700)]
remove SUM_IMGINARY_KEEP_LAST_REAL option

This is a configuration option to
SparseMatrix_from_coordinate_arrays_not_compacted that is never used. Curiously
it also seems misspelled.

3 years agoremove configurability from SparseMatrix_from_coordinate_arrays_not_compacted
Matthew Fernandez [Thu, 1 Jul 2021 01:57:37 +0000 (18:57 -0700)]
remove configurability from SparseMatrix_from_coordinate_arrays_not_compacted

This function is only ever called with SUM_REPEATED_NONE.

3 years agoremove configurability from SparseMatrix_from_coordinate_format_not_compacted
Matthew Fernandez [Thu, 1 Jul 2021 01:55:55 +0000 (18:55 -0700)]
remove configurability from SparseMatrix_from_coordinate_format_not_compacted

This function is only ever called with SUM_REPEATED_NONE.

3 years agoMerge branch 'add-cpp-test-suite' into 'main'
Magnus Jacobsson [Wed, 7 Jul 2021 05:18:07 +0000 (05:18 +0000)]
Merge branch 'add-cpp-test-suite' into 'main'

Add a C++ test infrastructure

See merge request graphviz/graphviz!2035

3 years agochange the always pass test to a simple Graphviz test
Magnus Jacobsson [Mon, 5 Jul 2021 09:54:05 +0000 (11:54 +0200)]
change the always pass test to a simple Graphviz test

The test now uses the existing C API to render SVG from DOT source
code.

To support this, the commit also adds the necessary Graphviz libraries
and the dot_builtins to the common test library and the necessary
include directories to the macro creating the individual test
executables.

3 years agotemporarily disable ODR violation detection caused by lib/ortho
Magnus Jacobsson [Tue, 6 Jul 2021 06:12:24 +0000 (08:12 +0200)]
temporarily disable ODR violation detection caused by lib/ortho

The next commit in this series triggers this violation otherwise.

This will soon be restored when
https://gitlab.com/graphviz/graphviz/-/issues/2096 has been fixed in
an upcoming MR.

3 years agodon't disable leak detection for ctest based tests
Magnus Jacobsson [Mon, 5 Jul 2021 10:24:02 +0000 (12:24 +0200)]
don't disable leak detection for ctest based tests

The current test does not trigger any memory leaks and we want to
ensure that we don't introduce any new leaks and fix existing leaks as
new tests encounter them.

We still want leak detection disabled when running pytest since those
tests still trigger many memory leaks.

This is accomplished by moving the disabling of the leak detection
into the test template and performing it after ctest has been
executed, but before pytest executes.

This commit also makes the temporary disabling of ODR violation
bacause of lib/ortho to be selectively for ctest only.

3 years agoadd ctest to the Ubuntu 21.04 ASan test in CI
Magnus Jacobsson [Mon, 5 Jul 2021 10:11:57 +0000 (12:11 +0200)]
add ctest to the Ubuntu 21.04 ASan test in CI

This adds a new test template that is based on the default test
template, but replaces the script section in order to be able to set
up and execute ctest without affecting tests on older OSes.

3 years agoarchive all shared libraries in Ubuntu 21.04 build for ctest
Magnus Jacobsson [Mon, 5 Jul 2021 08:03:17 +0000 (10:03 +0200)]
archive all shared libraries in Ubuntu 21.04 build for ctest

The Ubuntu 21.04 build is renamed and modified to be able to run
ctest, which uses the build products directly from where they reside
before installing them.

Adds archiving of all shared libraries produced directly by "cmake
--build". In the test stage, the test executables load them from those
directory locations since LD_LIBRARY_PATH is automatically set up to
contain them.

3 years agoadd optional ctest & catch2 based test infrastructure
Magnus Jacobsson [Mon, 5 Jul 2021 09:44:15 +0000 (11:44 +0200)]
add optional ctest & catch2 based test infrastructure

This commit adds a CMakeLists.txt in the tests directory containing
the foundation for easily creating new test executables. It includes
creation of a shared library that the individual test executables can
be linked to, allowing them to be as small as possible.

The tests are optional and can be enabled with the CMake option
with_cxx_tests.

Also added is a first simple test case that always passes to show how
to create test cases.

3 years agoinstall catch2 in Ubuntu 21.04 Docker image
Magnus Jacobsson [Mon, 5 Jul 2021 07:21:56 +0000 (09:21 +0200)]
install catch2 in Ubuntu 21.04 Docker image

Catch2 is going to be used to create test cases in upcoming commits.

3 years agoMerge branch 'smattr/9ca68f13-5591-4f3c-a488-f3b15c827039' into 'main'
Matthew Fernandez [Tue, 6 Jul 2021 05:13:39 +0000 (05:13 +0000)]
Merge branch 'smattr/9ca68f13-5591-4f3c-a488-f3b15c827039' into 'main'

fix incorrect reference counting of HTML-like strings in gvpack

See merge request graphviz/graphviz!2026

3 years agofix incorrect reference counting of HTML-like strings in gvpack
Matthew Fernandez [Wed, 30 Jun 2021 03:11:13 +0000 (20:11 -0700)]
fix incorrect reference counting of HTML-like strings in gvpack

When duplicating graph attributes, gvpack was calling agstrdup_html to construct
an HTML-like string and then agattr/agset to assign this to an attribute. It did
not anticipate that *both* of these increment the reference count for the string
that has been interned in the graph’s dictionary. The result was a reference
count of 2 for a new HTML-like string, despite only 1 reference to the string
existing.

This was not directly visible to users (hence no changelog entry for this
commit) and the extra reference counts are disposed of when the graph itself is
destroyed. However, this persistent off-by-one issue internally confused some
debugging and potentially retained memory longer than was necessary. The issue
was visible with the following patch applied:

  diff --git cmd/tools/gvpack.c cmd/tools/gvpack.c
  index 16a4ffa5b..8e8fbf3b9 100644
  --- cmd/tools/gvpack.c
  +++ cmd/tools/gvpack.c
  @@ -352,9 +352,13 @@ static void cloneAttrs(void *old, void *new)

       for (a = agnxtattr(g, kind, 0); a; a =  agnxtattr(g, kind, a)) {
    s = agxget (old, a);
  - if (aghtmlstr(s))
  -     agset(new, a->name, agstrdup_html(ng, s));
  - else
  + if (aghtmlstr(s)) {
  +     printf("creating HTML string...\n");
  +     char *scopy = agstrdup_html(ng, s);
  +     agrefcntprint(scopy);
  +     agset(new, a->name, scopy);
  +     agrefcntprint(scopy);
  + } else
        agset(new, a->name, s);
       }
   }
  diff --git lib/cgraph/cgraph.h lib/cgraph/cgraph.h
  index a043fb26d..e2b065e16 100644
  --- lib/cgraph/cgraph.h
  +++ lib/cgraph/cgraph.h
  @@ -305,6 +305,7 @@ CGRAPH_API int agobjkind(void *);
   /* strings */
   CGRAPH_API char *agstrdup(Agraph_t *, char *);
   CGRAPH_API char *agstrdup_html(Agraph_t *, char *);
  +CGRAPH_API void *agrefcntprint(const char *);
   CGRAPH_API int aghtmlstr(char *);
   CGRAPH_API char *agstrbind(Agraph_t * g, char *);
   CGRAPH_API int agstrfree(Agraph_t *, char *);
  diff --git lib/cgraph/refstr.c lib/cgraph/refstr.c
  index b524649ff..d8d7ca468 100644
  --- lib/cgraph/refstr.c
  +++ lib/cgraph/refstr.c
  @@ -9,6 +9,7 @@
    *************************************************************************/

   #include <cgraph/cghdr.h>
  +#include <inttypes.h>
   #include <stddef.h>
   #include <stdio.h>

  @@ -139,6 +140,11 @@ char *agstrdup_html(Agraph_t * g, char *s)
       return r->s;
   }

  +void *agrefcntprint(const char *s) {
  +    refstr_t *key = (refstr_t *) (s - offsetof(refstr_t, store[0]));
  +    printf("reference count: %" PRIu64 "\n", (uint64_t)key->refcnt);
  +}
  +
   int agstrfree(Agraph_t * g, char *s)
   {
       refstr_t *r;

With these changes, attempting to gvpack a graph with an HTML-like string
attribute results in the following output:

  creating HTML string...
  reference count: 1
  reference count: 2

The present commit fixes this issue by replicating the correct pattern for doing
this kind of duplication from lib/gvpr/actions.c:copyAttr.

3 years agoMerge branch 'smattr/32e830af-ed59-441c-9dc6-9eaef9316b04' into 'main'
Matthew Fernandez [Tue, 6 Jul 2021 00:15:26 +0000 (00:15 +0000)]
Merge branch 'smattr/32e830af-ed59-441c-9dc6-9eaef9316b04' into 'main'

work towards solution for round tripping GV→GXL→GV

See merge request graphviz/graphviz!2016

3 years agoremove some unnecessary casts to agxbuf functions
Matthew Fernandez [Thu, 24 Jun 2021 03:07:57 +0000 (20:07 -0700)]
remove some unnecessary casts to agxbuf functions

These functions take const char pointers. There is no need to cast away the
const-ness of the original pointers.

3 years agogv2gxl: in GXL output, indicate when a label originated as an HTML like label
Matthew Fernandez [Thu, 24 Jun 2021 02:55:29 +0000 (19:55 -0700)]
gv2gxl: in GXL output, indicate when a label originated as an HTML like label

When translating Dot to GXL, labels come out as strings. Input something like:
`label="foo"` and the GXL output is something like
`<attr name="label"><string>foo</string></attr>`. This translation is fine and
works well, until you start using HTML like labels.

Graphviz allows `<` and `>` as delimiters to indicate your label string contains
HTML that should be parsed. When you try to use this feature in combination with
gv2gxl, you get a lossy translation. E.g. the labels `label="foo"` and
`label=<foo>` come out identically in GXL.

This commit makes use of the GXL ‘kind’ field on attributes to note that the
source was an HTML like label. If you translate the two labels from above, you
will now get:

  <attr name="label"><string>foo</string></attr>

and

  <attr name="label" kind="HTML-like string"><string>foo</string></attr>

respectively.

This is a partial fix for #517. This makes the translation to GXL no longer
lossy. The other half of this is recognizing the ‘kind’ field during gxl2gv
translation and preserving it on the way back.

3 years agoreflow some text
Matthew Fernandez [Thu, 24 Jun 2021 02:41:26 +0000 (19:41 -0700)]
reflow some text

3 years agoadd a test case for #517
Matthew Fernandez [Thu, 24 Jun 2021 02:04:27 +0000 (19:04 -0700)]
add a test case for #517

3 years agoMerge branch 'smattr/cbc230d2-1896-4082-84b8-df235572234c' into 'main'
Matthew Fernandez [Mon, 5 Jul 2021 23:06:31 +0000 (23:06 +0000)]
Merge branch 'smattr/cbc230d2-1896-4082-84b8-df235572234c' into 'main'

branch-tune allocation wrappers

See merge request graphviz/graphviz!2021

3 years agobranch-tune allocation wrappers
Matthew Fernandez [Sat, 26 Jun 2021 19:12:13 +0000 (12:12 -0700)]
branch-tune allocation wrappers

These functions are used extensively within Graphviz. This change tells the
compiler to optimize for the case when allocation succeeds. This may slow the
case when allocation fails, though we do not care about this case as Graphviz is
about to exit with failure in this scenario.

3 years agoMerge branch 'smattr/5d05e2d1-45cd-4422-b78c-122a62fff5c8' into 'main'
Matthew Fernandez [Mon, 5 Jul 2021 22:17:51 +0000 (22:17 +0000)]
Merge branch 'smattr/5d05e2d1-45cd-4422-b78c-122a62fff5c8' into 'main'

more gvmap-related clean up

See merge request graphviz/graphviz!2025

3 years agoremove GVIEWER-guarded code
Matthew Fernandez [Tue, 29 Jun 2021 03:57:23 +0000 (20:57 -0700)]
remove GVIEWER-guarded code

Nothing in the build system(s) define this. A lot of this also looks broken.
For example, the GVIEWER alternative of the stress_model function sets up an
argv whose first string entry is not terminated.

3 years agoremove commented out code in stress_model.c
Matthew Fernandez [Tue, 29 Jun 2021 03:59:21 +0000 (20:59 -0700)]
remove commented out code in stress_model.c

3 years agoremove useless flag parameter to remove_overlap
Matthew Fernandez [Tue, 29 Jun 2021 03:51:46 +0000 (20:51 -0700)]
remove useless flag parameter to remove_overlap

This function has no path in which it sets this output parameter to non-zero.

3 years agomark array parameters to get_local_12_norm as const
Matthew Fernandez [Tue, 29 Jun 2021 03:29:05 +0000 (20:29 -0700)]
mark array parameters to get_local_12_norm as const

This makes it clearer that this function does not modify these arrays.

3 years agoremove unused norm variable in improve_antibandwidth_by_swapping
Matthew Fernandez [Tue, 29 Jun 2021 03:23:06 +0000 (20:23 -0700)]
remove unused norm variable in improve_antibandwidth_by_swapping

3 years agoremove unused norm_1 output parameter to country_graph_coloring_internal
Matthew Fernandez [Tue, 29 Jun 2021 03:19:00 +0000 (20:19 -0700)]
remove unused norm_1 output parameter to country_graph_coloring_internal

3 years agoremove unused norm_1 output parameter to country_graph_coloring
Matthew Fernandez [Tue, 29 Jun 2021 03:15:26 +0000 (20:15 -0700)]
remove unused norm_1 output parameter to country_graph_coloring

3 years agoMerge branch 'smattr/B7DD3AE0-829A-49E5-9A94-5518A9FFA6D9' into 'main'
Matthew Fernandez [Mon, 5 Jul 2021 21:27:10 +0000 (21:27 +0000)]
Merge branch 'smattr/B7DD3AE0-829A-49E5-9A94-5518A9FFA6D9' into 'main'

remove unused gvfwrite

Closes #1846

See merge request graphviz/graphviz!2029

3 years agoremove unused gvfwrite
Matthew Fernandez [Thu, 1 Jul 2021 14:48:39 +0000 (07:48 -0700)]
remove unused gvfwrite

The last use of gvfwrite was removed in
6e818420cf02ad01d9c976b69d49fb794a661f5e. But more problematically, this
function seems incorrect. By ignoring its size argument it will generate
surprising results if ever called with a non-1 size. Closes #1846.

3 years agoMerge branch 'smattr/12de6328-7c30-45ad-9029-63f88edd6385' into 'main'
Matthew Fernandez [Mon, 5 Jul 2021 19:51:32 +0000 (19:51 +0000)]
Merge branch 'smattr/12de6328-7c30-45ad-9029-63f88edd6385' into 'main'

clean up in lib/sfio

See merge request graphviz/graphviz!2027

3 years agoMerge branch 'smattr/F16DEFA3-B7E0-4DC8-BDD5-C4D2C9D8242F' into 'main'
Matthew Fernandez [Mon, 5 Jul 2021 19:18:55 +0000 (19:18 +0000)]
Merge branch 'smattr/F16DEFA3-B7E0-4DC8-BDD5-C4D2C9D8242F' into 'main'

port deploy script from os.path to pathlib

See merge request graphviz/graphviz!2024

3 years agoremove _SFBINARY_H-conditional code
Matthew Fernandez [Thu, 1 Jul 2021 00:24:58 +0000 (17:24 -0700)]
remove _SFBINARY_H-conditional code

Nothing in the build defines this.

3 years agoremove unused SETCLOEXEC and FD_CLOEXEC
Matthew Fernandez [Thu, 1 Jul 2021 00:24:51 +0000 (17:24 -0700)]
remove unused SETCLOEXEC and FD_CLOEXEC

The last use of these was removed in f552c0dece1435773de62334dee3310d1728e22f.

3 years agoremove unused ESPIPE
Matthew Fernandez [Thu, 1 Jul 2021 00:24:49 +0000 (17:24 -0700)]
remove unused ESPIPE

ESPIPE has never been used in sfio.

3 years agoremove unused ENOMEM
Matthew Fernandez [Thu, 1 Jul 2021 00:24:46 +0000 (17:24 -0700)]
remove unused ENOMEM

The last use of this in sfio was removed in
bb04aad8c6e033b6fef9cecd424a4d02758d661a.

3 years agoremove cbrt configuration check
Matthew Fernandez [Thu, 1 Jul 2021 00:24:44 +0000 (17:24 -0700)]
remove cbrt configuration check

Graphviz is built with C99 which requires cbrt.

3 years agoremove unlink configuration check and Windows shim
Matthew Fernandez [Thu, 1 Jul 2021 00:24:41 +0000 (17:24 -0700)]
remove unlink configuration check and Windows shim

Nothing in Graphviz uses unlink.

3 years agoremove remove/unlink declarations in sfio
Matthew Fernandez [Thu, 1 Jul 2021 00:24:39 +0000 (17:24 -0700)]
remove remove/unlink declarations in sfio

The last use of these was removed in 751ab539a2531b5459ef709946ea0642ce2c44e8.

3 years agoremove fork/vfork detection
Matthew Fernandez [Thu, 1 Jul 2021 00:24:35 +0000 (17:24 -0700)]
remove fork/vfork detection

As of the previous commit, nothing uses these configuration variables.

3 years agoremove unused sfio fork/vfork declarations
Matthew Fernandez [Thu, 1 Jul 2021 00:24:33 +0000 (17:24 -0700)]
remove unused sfio fork/vfork declarations

The last usage of fork in this library was removed in
f552c0dece1435773de62334dee3310d1728e22f.

3 years agoremove unnecessary errno declaration
Matthew Fernandez [Thu, 1 Jul 2021 00:24:30 +0000 (17:24 -0700)]
remove unnecessary errno declaration

The errno variable/macro is part of ISO C.

3 years agoremove unused MAXSHORT
Matthew Fernandez [Thu, 1 Jul 2021 00:24:25 +0000 (17:24 -0700)]
remove unused MAXSHORT

3 years agoremove unused MAXLONG
Matthew Fernandez [Thu, 1 Jul 2021 00:24:21 +0000 (17:24 -0700)]
remove unused MAXLONG

3 years agosquash Pylint warning in deploy script smattr/F16DEFA3-B7E0-4DC8-BDD5-C4D2C9D8242F
Matthew Fernandez [Tue, 29 Jun 2021 02:41:49 +0000 (19:41 -0700)]
squash Pylint warning in deploy script

With this tweak, deploy.py is Pylint-warning-free. I do not think it makes sense
to write docstrings on a main function.

3 years agoport deploy script from os.path to pathlib
Matthew Fernandez [Tue, 29 Jun 2021 02:39:40 +0000 (19:39 -0700)]
port deploy script from os.path to pathlib

While this does not look like a win in terms of conciseness, I think the trade
off is worth it for stronger typing within this script. It is hard to test this
script without actually running a deployment, so we heavily rely on Pylint to
validate what it is doing. Giving Pylint some more hints as to what is going on
seems like a good idea.

3 years agoMerge branch 'smattr/77f377e7-e733-48ca-8003-6de107b48820' into 'main'
Matthew Fernandez [Mon, 5 Jul 2021 04:24:07 +0000 (04:24 +0000)]
Merge branch 'smattr/77f377e7-e733-48ca-8003-6de107b48820' into 'main'

test cases for #2089

See merge request graphviz/graphviz!2023

3 years agotest cases for #2089
Matthew Fernandez [Tue, 29 Jun 2021 00:23:27 +0000 (17:23 -0700)]
test cases for #2089

3 years agoremove prototype for unimplemented agrelabel
Matthew Fernandez [Tue, 29 Jun 2021 00:26:17 +0000 (17:26 -0700)]
remove prototype for unimplemented agrelabel

I do not know why this function was described as “scary.” However, it seems it
was so scary no one in Graphviz’ history ever implemented it.

3 years agoMerge branch 'smattr/259855E7-1FFB-4A36-8116-EA81D402CFCD' into 'main'
Matthew Fernandez [Sun, 4 Jul 2021 15:33:10 +0000 (15:33 +0000)]
Merge branch 'smattr/259855E7-1FFB-4A36-8116-EA81D402CFCD' into 'main'

fix macOS CI

See merge request graphviz/graphviz!2030

3 years agoremove Courier.gv graph reference test
Matthew Fernandez [Fri, 2 Jul 2021 03:51:28 +0000 (20:51 -0700)]
remove Courier.gv graph reference test

This test compares the rendering of a graph using the Courier font against
reference examples. However the rendering of Courier is not stable across
operating system releases. At present, this test is spuriously failing due to a
macOS upgrade. But in principle, an upgrade of any platform can break it. To
avoid testing this unstable behavior, we remove this test.

3 years agoremove unused font_tests.txt
Matthew Fernandez [Fri, 2 Jul 2021 03:53:40 +0000 (20:53 -0700)]
remove unused font_tests.txt

This seems to be a subset of tests covered elsewhere. This file is also
currently unused.

3 years agoUpdate README.md -- queries go to Graphviz forum
Mark Hansen [Fri, 2 Jul 2021 07:46:49 +0000 (07:46 +0000)]
Update README.md -- queries go to Graphviz forum

Should keep bug tracker full of bugs, and give people with other queries a better chance at getting them answered (there are more people on the forum).

3 years agoMerge branch 'smattr/94045bf0-ac99-4edb-acba-84c65c67d983' into 'main'
Matthew Fernandez [Wed, 30 Jun 2021 05:15:17 +0000 (05:15 +0000)]
Merge branch 'smattr/94045bf0-ac99-4edb-acba-84c65c67d983' into 'main'

clean up in lib/vpsc

See merge request graphviz/graphviz!2020

3 years agoremove unused Rectangle {x|y}Border
Matthew Fernandez [Sat, 26 Jun 2021 18:59:04 +0000 (11:59 -0700)]
remove unused Rectangle {x|y}Border

3 years agouse a range-based for-loop to simplify remapOutConstraints
Matthew Fernandez [Sat, 26 Jun 2021 18:48:39 +0000 (11:48 -0700)]
use a range-based for-loop to simplify remapOutConstraints

3 years agouse a range-based for-loop to simplify remapInConstraints
Matthew Fernandez [Sat, 26 Jun 2021 18:47:49 +0000 (11:47 -0700)]
use a range-based for-loop to simplify remapInConstraints

3 years agorephrase accumulate loop in Blocks::cost using a range-based for-loop
Matthew Fernandez [Sat, 26 Jun 2021 18:38:26 +0000 (11:38 -0700)]
rephrase accumulate loop in Blocks::cost using a range-based for-loop

3 years agorephrase delete loop in Blocks::~Blocks to a range-based for-loop
Matthew Fernandez [Sat, 26 Jun 2021 18:31:59 +0000 (11:31 -0700)]
rephrase delete loop in Blocks::~Blocks to a range-based for-loop

3 years agoremove unnecessary clear of Blocks set
Matthew Fernandez [Sat, 26 Jun 2021 18:28:35 +0000 (11:28 -0700)]
remove unnecessary clear of Blocks set

The object is being destructed, so the underlying set is automatically cleared.

3 years agoremove unused getSplitCnt
Matthew Fernandez [Sat, 26 Jun 2021 18:23:45 +0000 (11:23 -0700)]
remove unused getSplitCnt

3 years agoremove unused splitIncVPSC
Matthew Fernandez [Sat, 26 Jun 2021 18:23:08 +0000 (11:23 -0700)]
remove unused splitIncVPSC

3 years agoremove duplicate solve_VPSC.h in VPSC noinst_HEADERS list
Matthew Fernandez [Sat, 26 Jun 2021 18:20:27 +0000 (11:20 -0700)]
remove duplicate solve_VPSC.h in VPSC noinst_HEADERS list

3 years agoremove unused newVPSC
Matthew Fernandez [Sat, 26 Jun 2021 18:19:55 +0000 (11:19 -0700)]
remove unused newVPSC

3 years agoMerge branch 'smattr/49e76f9c-dbd6-42d8-bcc1-cbe0a523441e' into 'main'
Matthew Fernandez [Wed, 30 Jun 2021 04:09:15 +0000 (04:09 +0000)]
Merge branch 'smattr/49e76f9c-dbd6-42d8-bcc1-cbe0a523441e' into 'main'

clean up in lib/sparse

See merge request graphviz/graphviz!2019

3 years agoremove unused StringVector
Matthew Fernandez [Sat, 26 Jun 2021 04:57:43 +0000 (21:57 -0700)]
remove unused StringVector

3 years agoremove unused IntegerVector
Matthew Fernandez [Sat, 26 Jun 2021 04:56:45 +0000 (21:56 -0700)]
remove unused IntegerVector

3 years agoremove unused SparseMatrix_pseudo_diameter_weighted
Matthew Fernandez [Sat, 26 Jun 2021 04:48:29 +0000 (21:48 -0700)]
remove unused SparseMatrix_pseudo_diameter_weighted

3 years agoremove unused SparseMatrix_pseudo_diameter_unweighted
Matthew Fernandez [Sat, 26 Jun 2021 04:43:15 +0000 (21:43 -0700)]
remove unused SparseMatrix_pseudo_diameter_unweighted

3 years agoremove pattern_symmetric_only parameter to SparseMatrix_symmetrize_nodiag
Matthew Fernandez [Sat, 26 Jun 2021 04:33:21 +0000 (21:33 -0700)]
remove pattern_symmetric_only parameter to SparseMatrix_symmetrize_nodiag

This function is only called with FALSE for this argument, so we can propagate
it through and remove the parameter.

3 years agoremove duplicate palette_grey_to_red
Matthew Fernandez [Sat, 26 Jun 2021 04:25:20 +0000 (21:25 -0700)]
remove duplicate palette_grey_to_red

3 years agoremove another unused MAXINT
Matthew Fernandez [Sat, 26 Jun 2021 04:19:29 +0000 (21:19 -0700)]
remove another unused MAXINT

3 years agoremove unused MAXINT
Matthew Fernandez [Sat, 26 Jun 2021 04:18:30 +0000 (21:18 -0700)]
remove unused MAXINT

3 years agoremove unused vector_subtract_from
Matthew Fernandez [Sat, 26 Jun 2021 04:17:00 +0000 (21:17 -0700)]
remove unused vector_subtract_from

3 years agoremove unused vector_add_to
Matthew Fernandez [Sat, 26 Jun 2021 04:15:43 +0000 (21:15 -0700)]
remove unused vector_add_to

3 years agoMerge branch 'smattr/584ca143-13f9-4b18-aecc-1195d5de7644' into 'main'
Matthew Fernandez [Wed, 30 Jun 2021 03:21:51 +0000 (03:21 +0000)]
Merge branch 'smattr/584ca143-13f9-4b18-aecc-1195d5de7644' into 'main'

clean up in lib/common

See merge request graphviz/graphviz!2018

3 years agoreflow some routespl.c code for readability
Matthew Fernandez [Sat, 26 Jun 2021 03:30:48 +0000 (20:30 -0700)]
reflow some routespl.c code for readability

3 years agoremove dead code in get_centroid
Matthew Fernandez [Sat, 26 Jun 2021 03:12:54 +0000 (20:12 -0700)]
remove dead code in get_centroid

The preceding return statement ensures none of the latter part of the function
is reachable. This was introduced in 05674ae147c14ec4ec74b2b6771e04e0c82209b8
and seemingly never noticed.

This commit also drops now-unused variables, as well as the static qualifier
from sum. It is not clear to me what the purpose of making sum static was. It is
a small struct and both its fields are overwritten immediately when entering
this function, so there is no value to retaining it across calls or
BSS-allocating it.

3 years agoremove a micro-optimization in checkpath
Matthew Fernandez [Sat, 26 Jun 2021 03:11:49 +0000 (20:11 -0700)]
remove a micro-optimization in checkpath

Self-stores like this are effectively free on a modern CPU. The branch guarding
this store is more costly than the store itself.