]>
granicus.if.org Git - graphviz/log
Magnus Jacobsson [Mon, 3 Aug 2020 05:13:52 +0000 (07:13 +0200)]
Add new rtest.sh that calls rtest.py
Magnus Jacobsson [Fri, 31 Jul 2020 15:11:38 +0000 (17:11 +0200)]
Run new rtest.py script instead of rtest.sh
Magnus Jacobsson [Thu, 30 Jul 2020 20:31:04 +0000 (22:31 +0200)]
Port rtest.sh ksh code to Python in rtest.py
Resolves https://gitlab.com/graphviz/graphviz/-/issues/1779
The reason this is a separate commit from the previoust commit, which
contains the renaming of the file, is to trick git to show the changes
as a one-file diff regardless of the similarity index, rather than one
deleted and one added file. This makes it easier to compare the ksh
code to the Python code.
Magnus Jacobsson [Mon, 3 Aug 2020 10:48:05 +0000 (12:48 +0200)]
Rename rtest.sh to rtest.py
The reason this is a separate commit from the next commit, which
contains the changed content, is to trick git to show the changes as a
one-file diff regardless of the similarity index, rather than one
deleted and one added file. This makes it easier to compare the ksh
code to the Python code.
Matthew Fernandez [Wed, 29 Jul 2020 02:05:50 +0000 (19:05 -0700)]
add GVPR Vim syntax
Closes #1762.
Matthew Fernandez [Wed, 29 Jul 2020 02:38:55 +0000 (19:38 -0700)]
compiler annotations to explain calling convention of agerr and friends
This change teaches suitably enlightened compilers (Clang and GCC) more about
how these functions are intended to be called. When told to detect misuse of
format strings (`-Wformat`), they can now detect incorrect calls like that fixed
in
31ef5a3c31214d77137e4b36603a2a97576e851e .
Matthew Fernandez [Thu, 30 Jul 2020 00:11:13 +0000 (17:11 -0700)]
remove unnecessary temporary buffer to construct error message
The motivation for this change is to avoid passing a variable to agerr which
triggers so -Wformat-security errors after some upcoming changes. However, it's
nice to be able to just simplify this code anyway.
Matthew Fernandez [Sun, 26 Jul 2020 21:01:27 +0000 (14:01 -0700)]
remove exception-style control flow in lib/rbtree
Fixes #1742.
Matthew Fernandez [Sun, 26 Jul 2020 20:37:43 +0000 (13:37 -0700)]
expose StackDestroy function in stack.h
Matthew Fernandez [Sun, 26 Jul 2020 20:31:44 +0000 (13:31 -0700)]
remove some dead code
Matthew Fernandez [Sun, 26 Jul 2020 20:28:07 +0000 (13:28 -0700)]
remove legacy RBTree comment
The assertions depending on this macro were refactored in
40ef32e7c7adca0a1217135d8d3b1c582e75787e .
Matthew Fernandez [Sun, 26 Jul 2020 20:22:48 +0000 (13:22 -0700)]
remove compiled RBTree test binary
We can rebuild this using makefile.txt in lib/rbtree if necessary. The existing
committed binary was out of date.
Matthew Fernandez [Sun, 26 Jul 2020 21:16:39 +0000 (14:16 -0700)]
de-duplicate gvc.def
Closes #1761.
Magnus Jacobsson [Fri, 31 Jul 2020 22:34:22 +0000 (22:34 +0000)]
Merge branch 'drive-all-tests-from-pytest' into 'master'
Drive all tests from pytest
Closes #1772
See merge request graphviz/graphviz!1483
Magnus Jacobsson [Fri, 31 Jul 2020 17:21:14 +0000 (17:21 +0000)]
Merge branch 'centralized-version-generation' into 'master'
Single source of truth of Grahviz version for all build systems: autotools, CMake & MSbuild
Closes #1745
See merge request graphviz/graphviz!1476
Matthew Fernandez [Fri, 31 Jul 2020 14:42:16 +0000 (07:42 -0700)]
missing changelog entry for the previous commit
Matthew Fernandez [Sun, 26 Jul 2020 02:31:01 +0000 (19:31 -0700)]
fix: out-of-bounds write on invalid label
When the label for a node cannot be parsed (due to it being malformed), it falls
back on the symbol name of the node itself. I.e. the default label the node
would have had if it had no label attribute at all. However, this is applied by
dynamically altering the node's label to "\N", a shortcut for the symbol name of
the node. All of this is fine, however if the hand written label itself is
shorter than the literal string "\N", not enough memory would have been
allocated to write "\N" into the label text.
Here we account for the possibility of error during label parsing, and assume
that the label text may need to be overwritten with "\N" after the fact. Fixes
issue #1700.
Magnus Jacobsson [Thu, 30 Jul 2020 15:37:44 +0000 (17:37 +0200)]
Add temporary skip of some gvpr example tests
Hangs because of https://gitlab.com/graphviz/graphviz/-/issues/1784
Magnus Jacobsson [Thu, 30 Jul 2020 06:16:45 +0000 (08:16 +0200)]
Correct 32-bit Windows check in large graphs test
The previous check was true also for 64-bit Windows since in this case
"win32" stands for the Windows API. For details, see:
* https://docs.microsoft.com/en-us/windows/win32/apiindex/windows-api-list
* https://docs.python.org/3/library/sys.html#sys.platform
* https://softwareengineering.stackexchange.com/questions/356464/why-does-software-use-the-win32-name
Note that the new check does not actually check that the Windows OS is
32 bit, but rather that the Python interpreter is. This means that the
test will be skipped in the unlikely event that a 32-bit Python
interpreter is run on a 64-bit Windows OS. This is *not* the case in
our current CI pipeline on gitlab.com. The test does run there.
To check the Windows OS itself seems to be very complicated according
to
https://stackoverflow.com/questions/
2208828 /detect-64bit-os-windows-in-python/
12578715
and none of the solutions worked for me.
Note also that the check does *not* check whether Graphviz has been
compiled for 32-bit or 64-bit which also seems ok according to the
results from our current CI pipeline.
More background can be found at:
* https://gitlab.com/graphviz/graphviz/-/merge_requests/1345
* https://gitlab.com/graphviz/graphviz/-/issues/1710
* https://gitlab.com/graphviz/graphviz/-/merge_requests/1370
* https://gitlab.com/graphviz/graphviz/-/issues/1698
Magnus Jacobsson [Tue, 28 Jul 2020 12:20:22 +0000 (14:20 +0200)]
Add workaround for gvpr not supporting abs path on Windows
https://gitlab.com/graphviz/graphviz/-/issues/1780
Magnus Jacobsson [Mon, 27 Jul 2020 21:07:25 +0000 (23:07 +0200)]
Add temporary skip of examples test for MSBuild builds on Windows
Fails because of https://gitlab.com/graphviz/graphviz/-/issues/1777.
Magnus Jacobsson [Mon, 27 Jul 2020 16:24:50 +0000 (18:24 +0200)]
Run tests in CI also for CMake Debug builds on Windows
Magnus Jacobsson [Mon, 27 Jul 2020 16:05:12 +0000 (18:05 +0200)]
Run all tests under rtest also for MSBuild builds on Windows
Magnus Jacobsson [Mon, 27 Jul 2020 16:04:54 +0000 (18:04 +0200)]
Run all tests under rtest also for CMake builds on Windows
Magnus Jacobsson [Mon, 27 Jul 2020 15:38:53 +0000 (17:38 +0200)]
Add temporary skip of gvpr test for CMake builds on Windows
Fails because of https://gitlab.com/graphviz/graphviz/-/issues/1753.
Magnus Jacobsson [Mon, 27 Jul 2020 15:14:34 +0000 (17:14 +0200)]
Add temporary skip of test using ksh script rtest.sh on Windows
Cannot be run until https://gitlab.com/graphviz/graphviz/-/issues/1779
is implemented.
Magnus Jacobsson [Mon, 27 Jul 2020 14:13:19 +0000 (16:13 +0200)]
Add temporary skip of installation test for MSBuild builds on Windows
Fails because of https://gitlab.com/graphviz/graphviz/-/issues/1745.
Magnus Jacobsson [Mon, 27 Jul 2020 10:46:52 +0000 (12:46 +0200)]
Make test_installation.py self-contained to run also on Windows
Also removed the now obsolete check_installation.sh bash script.
Magnus Jacobsson [Sun, 26 Jul 2020 22:20:23 +0000 (00:20 +0200)]
Run all tests under tests in CI also for CMake builds in Windows
Magnus Jacobsson [Sun, 26 Jul 2020 22:19:39 +0000 (00:19 +0200)]
Run all tests under tests in CI for MSBuild builds on Windows
Magnus Jacobsson [Thu, 23 Jul 2020 21:13:51 +0000 (23:13 +0200)]
Add shim for python3.exe on Windows
Chocolatey doesn't install python3 as python3.exe, only as python.exe.
Magnus Jacobsson [Sat, 25 Jul 2020 21:40:20 +0000 (23:40 +0200)]
Replace regression_tests.ps1 with direct call to pytest
Magnus Jacobsson [Sat, 25 Jul 2020 21:33:51 +0000 (23:33 +0200)]
Replace call to ctest with call to pytest tests\regression_tests\shapes
which was the only test actually executed by ctest.
Magnus Jacobsson [Sat, 25 Jul 2020 21:24:15 +0000 (23:24 +0200)]
Convert test_large_graphs.py to pytest
Magnus Jacobsson [Sat, 25 Jul 2020 21:09:40 +0000 (23:09 +0200)]
Enable JUnit test reports in CI also for CMake builds on Windows
Magnus Jacobsson [Sat, 25 Jul 2020 21:03:02 +0000 (23:03 +0200)]
Refactor out pytest from test.sh and rename to install-packages.sh
Magnus Jacobsson [Sat, 25 Jul 2020 21:00:51 +0000 (23:00 +0200)]
Remove accidentally left-over debug dir:
Magnus Jacobsson [Tue, 28 Jul 2020 15:51:39 +0000 (17:51 +0200)]
Set up VCTools also for MSBuild tests
The solution comes from https://stackoverflow.com/a/
2128350 /
3122101
Magnus Jacobsson [Tue, 28 Jul 2020 15:21:17 +0000 (17:21 +0200)]
Correct VS compiler option in vmalloc test
Matthew Fernandez [Wed, 29 Jul 2020 13:51:11 +0000 (13:51 +0000)]
Merge branch '
60ddf7c4 -ae97-4594-be26-
aaf88a47d10e ' into 'master'
fix: zero allocations performed via ALLOCATE
See merge request graphviz/graphviz!1484
Mark Hansen [Wed, 29 Jul 2020 11:10:40 +0000 (11:10 +0000)]
Merge branch 'winbuild' into 'master'
Redirect winbuild.html to graphviz.org/doc/winbuild.html
See merge request graphviz/graphviz!1475
Matthew Fernandez [Sat, 18 Jul 2020 23:23:14 +0000 (16:23 -0700)]
add CI tests that GVPR lib is parseable
This does not test addedges, binduce, or histogram that require a command line
argument.
Matthew Fernandez [Wed, 29 Jul 2020 00:43:58 +0000 (17:43 -0700)]
fix: zero allocations performed via ALLOCATE
8d33fa030d308e6f5a4572a5b25bde4508757c31 refactored the site of a call to
vmnewof to remove an assumption that the returned allocation was zeroed. However
I failed to notice that the call to ALLOCATE (which eventually invokes vmnewof)
in exnewnode also relied on this assumption. This remained a latent issue until
84b2983edf458098bb6233368904265c92da4e65 whose changes meant the region returned
by vmnewof was no longer zeroed. The issue (now an active bug) still went
unnoticed until
ea791d46aa1d0f15c483d424fdddabf8f3b61cb0 was merged, which
contained a test that ran `gvpr -f cmd/gvpr/lib/color </dev/null` that triggered
a read through a bad pointer that should have been zeroed during these
allocations.
To fix this, we conservatively zero the result of all calls to ALLOCATE,
ensuring the assumptions these calls may have previously had is now restored.
Magnus Jacobsson [Sat, 25 Jul 2020 19:24:30 +0000 (21:24 +0200)]
Update DEVELOPERS.md after fix of automatic MSBuild versioning
Magnus Jacobsson [Sat, 25 Jul 2020 17:34:49 +0000 (19:34 +0200)]
Replace hard-coded MSBuild version with generated
Fixes https://gitlab.com/graphviz/graphviz/-/issues/1745
Magnus Jacobsson [Sat, 25 Jul 2020 17:15:00 +0000 (19:15 +0200)]
Remove windows/include/builddate.h that is now generated
Magnus Jacobsson [Sat, 25 Jul 2020 14:19:39 +0000 (16:19 +0200)]
Add new MSBuild project "version"
Generates windows/include/version.h and windows/include/builddate.h.
Also ensure that the version project is built first by adding a
dependency from the pathplan project which was the first project to be
built before this change.
Includes auto-updated VisualStudioVersion variable in solution file.
Magnus Jacobsson [Sat, 25 Jul 2020 14:17:14 +0000 (16:17 +0200)]
Change to git ignore some files in project root only
E.g. VERSION (aka version on Windows) was ignored in all directories.
Magnus Jacobsson [Thu, 23 Jul 2020 21:13:51 +0000 (23:13 +0200)]
Add shim for python3.exe on Windows
Chocolatey doesn't install python3 as python3.exe, only as python.exe.
Magnus Jacobsson [Thu, 23 Jul 2020 20:40:17 +0000 (22:40 +0200)]
Use tilde instead of dash for dev versions
RPM doesn't support dash in version numbers. From
http://ftp.rpm.org/max-rpm/ch-rpm-file-format.html: 'The only
restriction placed on the version is that it cannot contain a dash
"-".'
See also https://github.com/semver/semver/issues/145.
Magnus Jacobsson [Thu, 23 Jul 2020 17:02:02 +0000 (19:02 +0200)]
Update DEVELOPERS.md with new version numbering
Magnus Jacobsson [Thu, 23 Jul 2020 11:45:34 +0000 (13:45 +0200)]
Change autogen.sh to get version from gen_version.py
Magnus Jacobsson [Thu, 23 Jul 2020 12:28:14 +0000 (14:28 +0200)]
Change CMakeLists.txt to get version from gen_version.py
Magnus Jacobsson [Thu, 23 Jul 2020 15:58:13 +0000 (17:58 +0200)]
Add --committer-date-graphviz option
Magnus Jacobsson [Wed, 22 Jul 2020 18:09:44 +0000 (20:09 +0200)]
Add --committer-date-iso option
Matthew Fernandez [Tue, 28 Jul 2020 14:35:40 +0000 (14:35 +0000)]
Revert "Merge branch '
99ea7101 -96e1-4730-a6bb-
60a7cef18289 ' into 'master'"
This reverts merge request !1472
Matthew Fernandez [Tue, 28 Jul 2020 13:42:47 +0000 (13:42 +0000)]
Merge branch '
99ea7101 -96e1-4730-a6bb-
60a7cef18289 ' into 'master'
add CI tests that GVPR lib is parseable
See merge request graphviz/graphviz!1472
Matthew Fernandez [Sat, 18 Jul 2020 23:23:14 +0000 (16:23 -0700)]
add CI tests that GVPR lib is parseable
This does not test addedges, binduce, or histogram that require a command line
argument.
Matthew Fernandez [Mon, 27 Jul 2020 13:40:40 +0000 (13:40 +0000)]
Merge branch '
87283f04 -c2e1-4a5b-b9c6-
a7c5ed0ef381 ' into 'master'
replace vmalloc with system allocator (malloc)
Closes #1757 and #1603
See merge request graphviz/graphviz!1460
Magnus Jacobsson [Wed, 22 Jul 2020 14:15:59 +0000 (16:15 +0200)]
If committer date is not available, set to zero
Magnus Jacobsson [Tue, 21 Jul 2020 15:01:05 +0000 (17:01 +0200)]
Add gen_version.py script
Matthew Fernandez [Sun, 26 Jul 2020 17:48:18 +0000 (10:48 -0700)]
Merge branch 'master' of https://gitlab.com/graphviz/graphviz into
23588b12 -6184-423b-a348-
0364f98b4dee
Matthew Fernandez [Sat, 25 Jul 2020 20:37:31 +0000 (20:37 +0000)]
Merge branch '
6c6f68fb -9872-4d5f-b4c4-
1bc30f4d8e9b ' into 'master'
clean up legacy build scripts and remove non-standard configure exec in autogen.sh
Closes #1630
See merge request graphviz/graphviz!1473
Matthew Fernandez [Sat, 25 Jul 2020 20:08:16 +0000 (20:08 +0000)]
Merge branch '
10cc3882 -064d-491f-9420-
b3cd4a184cbb ' into 'master'
remove Cgraph test fragments
Closes #1768
See merge request graphviz/graphviz!1471
Matthew Fernandez [Sat, 25 Jul 2020 20:00:32 +0000 (13:00 -0700)]
add some basic unit tests for vmalloc
Matthew Fernandez [Sat, 18 Jul 2020 19:11:11 +0000 (12:11 -0700)]
expand on vmclear description
Matthew Fernandez [Fri, 17 Jul 2020 00:25:31 +0000 (17:25 -0700)]
remove legacy vmalloc README file
Matthew Fernandez [Fri, 17 Jul 2020 00:17:24 +0000 (17:17 -0700)]
fill in some missing Javadoc vmalloc comments
Matthew Fernandez [Sat, 11 Jul 2020 23:10:27 +0000 (16:10 -0700)]
remove now extraneous parts of vmalloc
Matthew Fernandez [Sat, 11 Jul 2020 22:22:08 +0000 (15:22 -0700)]
remove unused 'type' argument to vmresize
Matthew Fernandez [Sat, 11 Jul 2020 22:05:53 +0000 (15:05 -0700)]
remove a level of indirection in vmalloc
The metadata for the allocator is now allocated directly in Vmalloc_t instead of
within a Vmdata_t. This lets us allocate in a single block more efficiently.
Matthew Fernandez [Sat, 11 Jul 2020 21:57:17 +0000 (14:57 -0700)]
remove unused Vmheap
Matthew Fernandez [Sat, 11 Jul 2020 21:50:27 +0000 (14:50 -0700)]
remove unused Vmregion
Matthew Fernandez [Sat, 11 Jul 2020 21:44:17 +0000 (14:44 -0700)]
remove unused Vmbest
Matthew Fernandez [Sat, 11 Jul 2020 21:25:04 +0000 (14:25 -0700)]
remove now unused parameter to vmopen
Matthew Fernandez [Sat, 11 Jul 2020 21:16:14 +0000 (14:16 -0700)]
unconditionally use bestalloc in vmopen()
This policy is no longer configurable because we simply use the system
allocator, malloc.
Matthew Fernandez [Sat, 11 Jul 2020 21:07:20 +0000 (14:07 -0700)]
expose bestalloc, bestfree, bestresize to other parts of vmalloc
Matthew Fernandez [Sat, 11 Jul 2020 21:00:12 +0000 (14:00 -0700)]
remove unnecessary 'reg' annotations in vmalloc
Whether these parameters are provided in registers or on the stack is entirely
dictated by the platform's calling convention these days.
Matthew Fernandez [Sat, 11 Jul 2020 20:57:04 +0000 (13:57 -0700)]
remove now unused Vmdcsbrk
Closes #1603, #1757.
Matthew Fernandez [Sat, 11 Jul 2020 20:40:27 +0000 (13:40 -0700)]
remove a use of Vmdcsbrk discipline
The discipline is no longer used in vmalloc.
Matthew Fernandez [Sat, 11 Jul 2020 20:37:02 +0000 (13:37 -0700)]
remove now unused Vmdcheap
Matthew Fernandez [Sat, 11 Jul 2020 19:18:47 +0000 (12:18 -0700)]
remove now unused parameters to vmopen()
Matthew Fernandez [Sat, 11 Jul 2020 19:13:39 +0000 (12:13 -0700)]
back vmalloc by the system allocator
Here we replace the custom vmalloc allocator implementation with calls to
malloc, while preserving the overall pool abstraction. That is, it is still
possible to not free any of your vmalloc allocations but then rely on a final
call to vmclose() to clean them up. Note that this also removes the vmprivate
functionality which is no longer relevant.
Mark Hansen [Tue, 21 Jul 2020 09:17:29 +0000 (19:17 +1000)]
Redirect winbuild.html to graphviz.org/doc/
This saves us having to update the file in two repositories, for more
sustainable docs.
Addressing https://gitlab.com/graphviz/graphviz.gitlab.io/-/issues/39
Matthew Fernandez [Tue, 21 Jul 2020 01:00:37 +0000 (18:00 -0700)]
fix: unescaped backslashes in graph labels in xdot output
Variant of #165.
Matthew Fernandez [Tue, 21 Jul 2020 00:54:38 +0000 (17:54 -0700)]
fix: unescaped backslashes in edge labels in xdot output
A variant of #165.
Matthew Fernandez [Tue, 21 Jul 2020 00:18:40 +0000 (17:18 -0700)]
fix: unescaped backslashes in node labels in xdot output
Fixes #165.
Matthew Fernandez [Mon, 20 Jul 2020 14:33:04 +0000 (14:33 +0000)]
Merge branch '
bf07f37f -3fb5-4e00-80d8-
77416f3b1071 ' into 'master'
replace RBTree Assert() with assert()
Closes #1742
See merge request graphviz/graphviz!1461
Matthew Fernandez [Sun, 19 Jul 2020 23:21:19 +0000 (23:21 +0000)]
Merge branch 'subproject-rev2-1477' into 'master'
CMake subproject support - minimal - addresses 1477
See merge request graphviz/graphviz!1466
Matthew Fernandez [Sun, 19 Jul 2020 22:50:45 +0000 (15:50 -0700)]
Merge branch '
d78dd7b6 -6c75-492c-b1d8-
8fd0eaf45be7 ' of ssh://gitlab.com/smattr/graphviz
Matthew Fernandez [Sun, 19 Jul 2020 22:14:23 +0000 (22:14 +0000)]
Merge branch '
643e9f4d -5ec2-46ca-ac43-
33a612fc2e49 ' into 'master'
fix missing parameters to remove_overlap() definition
Closes #1544
See merge request graphviz/graphviz!1468
Matthew Fernandez [Sun, 19 Jul 2020 02:25:16 +0000 (19:25 -0700)]
remove non-standard ./configure step in autogen.sh
Closes #1630.
Matthew Fernandez [Sun, 19 Jul 2020 02:22:42 +0000 (19:22 -0700)]
explicitly run ./configure during CI
Related to #1630.
Matthew Fernandez [Sun, 19 Jul 2020 02:21:49 +0000 (19:21 -0700)]
remove unused CI script
Matthew Fernandez [Sun, 19 Jul 2020 02:18:56 +0000 (19:18 -0700)]
remove unused builder.sh script
Matthew Fernandez [Sat, 18 Jul 2020 18:17:08 +0000 (11:17 -0700)]
remove Cgraph test fragments
Closes #1768.
Matthew Fernandez [Sat, 18 Jul 2020 16:25:15 +0000 (16:25 +0000)]
Merge branch '
340c68ed -f0f6-43b0-aeeb-
551c42c52178 ' into 'master'
fix line numbers in GVPR error reporting
Closes #1594
See merge request graphviz/graphviz!1462
Bob Apthorpe [Thu, 16 Jul 2020 13:29:04 +0000 (08:29 -0500)]
Extended messages for missing formats, layouts. r2
Matthew Fernandez [Wed, 15 Jul 2020 00:17:29 +0000 (00:17 +0000)]
Merge branch 'osx-symbols-1613' into 'master'
Workaround for unresolved symbols in libcommon on OSX
See merge request graphviz/graphviz!1464
Magnus Jacobsson [Tue, 14 Jul 2020 16:35:22 +0000 (16:35 +0000)]
Merge branch 'update-DEVELOPERS.md-after-2.44.1-release' into 'master'
Update DEVELOPERS.md after 2.44.1 release
See merge request graphviz/graphviz!1451