Skip to content

update readme and fix CI problem with .NET SDK version #103

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Jun 2, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -209,3 +209,8 @@ dotnet_naming_symbols.private_internal_fields.applicable_kinds = field
dotnet_naming_symbols.private_internal_fields.applicable_accessibilities = private, internal
dotnet_naming_style.camel_case_underscore_style.required_prefix = _
dotnet_naming_style.camel_case_underscore_style.capitalization = camel_case

# To avoid the scrollbar on the github homepage
[Tutorial.cs]
max_line_length = 100
indent_size = 2
6 changes: 3 additions & 3 deletions .github/workflows/linux-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ jobs:
- name: Install libgts
run: sudo apt-get update && sudo apt-get install -y libgts-0.7-5

- name: Setup .NET
uses: actions/setup-dotnet@v3
- name: Setup .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
dotnet-version: '8.0.x'

- name: Setup Just
uses: extractions/setup-just@v3
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/nuget.org-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ jobs:
- name: Install libgts
run: sudo apt-get update && sudo apt-get install -y libgts-0.7-5

- name: Setup .NET
uses: actions/setup-dotnet@v3
- name: Setup .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
dotnet-version: '8.0.x'

- name: Setup Just
uses: extractions/setup-just@v3
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/nuget.org-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,11 @@ jobs:
with:
fetch-depth: 0

- name: Setup .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'

- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v1.0.2

Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/win-build.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# This is a basic workflow to help you get started with Actions

name: win-build

# Controls when the action will run. Triggers the workflow on push or pull request
Expand All @@ -21,6 +19,11 @@ jobs:
with:
fetch-depth: 0

- name: Setup .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'

- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v1.0.2

Expand Down
13 changes: 7 additions & 6 deletions README-src.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,19 @@ Graphviz.NetWrapper

`Rubjerg.Graphviz` ships with precompiled Graphviz binaries to ensure the exact graphviz version is used that we have tested and to make deployment more predictable.
The current version we ship is Graphviz 11.0.0.

### Windows
`Rubjerg.Graphviz` ships with a bunch of precompiled Graphviz dlls built for 64 bit Windows.
This library is compatible with .NET Standard 2.0, but the nuget package only supports .NET5.0 and higher.
The unit tests run on windows and linux against .NET Framework .NET 8.0.

### Windows
`Rubjerg.Graphviz` ships with the necessary Graphviz binaries and dependencies built for 64 bit Windows.

### Linux
In the same vein as our windows build, we ship precompiled binaries to make sure that this library is deployed with the same binaries as we've tested it.
However, we do not ship graphviz dependencies, you will have to installed those yourself, if you need them.
In the same vein as our windows build, we ship Graphviz binaries to make sure that this library is deployed with the same binaries as we've tested it.
However, we do not ship all the dependencies of Graphviz.
You will have to make sure these are available on your system, if you need them.
[Here is a list of all the graphviz dependencies.](https://packages.fedoraproject.org/pkgs/graphviz/graphviz/fedora-rawhide.html#dependencies)
In practice you may not need all of those.
In particular, if you only want to read graphs and e.g. run the DOT algorithm, libc and libz are enough.
In particular, if you only want to read graphs and run the DOT layout algorithm, libc and libz are enough.
To run our tests successfully you will also need libgts and libpcre2 (for the neato algorithm).
For more details, check the dependencies of any graphviz binaries with `ldd`.

Expand Down
420 changes: 213 additions & 207 deletions README.md

Large diffs are not rendered by default.

407 changes: 206 additions & 201 deletions Rubjerg.Graphviz.Test/Tutorial.cs

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions global.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"sdk": {
"version": "8.0.0",
"rollForward": "latestFeature"
}
}
5 changes: 4 additions & 1 deletion justfile
Original file line number Diff line number Diff line change
Expand Up @@ -82,5 +82,8 @@ check-diff:
check-fixme:
bash -c "! git grep 'FIX''NOW'"

check-all: generate-readme normalize format check-diff check-fixme
check-tutorial-width:
awk 'length($0) > 100 { print FILENAME ":" NR ": " $0; found=1 } END { exit found }' Rubjerg.Graphviz.Test/Tutorial.cs

check-all: generate-readme normalize format check-diff check-fixme check-tutorial-width

Loading