Skip to content
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

Update nuget package #20

Open
saskathex opened this issue Nov 1, 2021 · 19 comments
Open

Update nuget package #20

saskathex opened this issue Nov 1, 2021 · 19 comments

Comments

@saskathex
Copy link

Update nuget package with with correct version 2.1

Now that the port to version 2.1 was done. The current nuget package is still outdated (v1.0). It would be great to update the version number and dependencies to oxy* 2.1

@VisualMelon
Copy link
Contributor

I was thinking about this yesterday; the problem is that I've not been able to test the non-.NET core stuff, so I'm hesitant to 'just do it'.

I don't have anything on tomorrow, so I'll have another go at getting everything running.

@hol430
Copy link
Contributor

hol430 commented Nov 1, 2021

If it helps, the gtk2 and gtk3 builds both work for me on linux when targeting .net framework. No idea about windows :).

@VisualMelon
Copy link
Contributor

I'm afraid a whole load of Python and Haskell have stopped me having time to look at this today and I shan't have time tomorrow: feel free to ping me semi-regularly so that I don't forget I'm meant to be doing this.

@hol430 thanks for testing

@hol430
Copy link
Contributor

hol430 commented Dec 20, 2021

Hi @VisualMelon, any update on this? Having an updated nuget package would be useful for people using oxyplot-gtksharp with GtkSharp (see #21).

@VisualMelon
Copy link
Contributor

VisualMelon commented Dec 21, 2021

@hol430 thanks for the nudge; I'll see if I can get this tested on Windows today; otherwise, I think we are good to go?

@hol430
Copy link
Contributor

hol430 commented Dec 22, 2021

I think so; we've been using the netstandard version in our release builds (Linux, windows and mac) for several months now
without noticing any issues (at least, no issues on the oxyplot side of things :).

If it helps, I was able to build and run the gtk3 example browser on windows under both .net core (via GtkSharp) and .net framework 4.5.1 (via gtk-sharp-3). The gtk2 build I'm not sure about - on windows, I was able to build it, but encountered BadImageFormatExceptions at runtime. This is probably just a problem with my machine though.

@VisualMelon
Copy link
Contributor

OK. Seeing as we can't get Gtk to work, I think I'll just push the new Gtk3 stuff for the time being.

To avoid my doing something daft, I have for now pushed a Preview-1 to MyGet (https://www.myget.org/feed/melonoxyplottesting/package/nuget/OxyPlot.GtkSharp3)

If you happen to be able to let me know if that works that would be very helpful; if not, no problem: I'll find some time to test it (I can probably borrow a Mac from someone; though I don't have any Linux VMs lying around these days).

Once we are happy the package works, then I'll push up a Preview-1 to NuGet. Hopefully that will see some wider usage, and we can address/document any remaining deployment issues before releasing 2.1.0 proper.

@hol430
Copy link
Contributor

hol430 commented Dec 22, 2021

Sure thing - I can test on windows, Mac and Linux, although my Mac is currently in the office so I don't have access to it until early next year. Will test the others tomorrow and get back to you re Mac support.

@VisualMelon
Copy link
Contributor

@hol430 many thanks!

@hol430
Copy link
Contributor

hol430 commented Dec 23, 2021

Ok, I just tested on Linux and windows and the Preview1 package on your myget seems to be working fine in my tests. (Not that I tested every feature.)

@VisualMelon
Copy link
Contributor

VisualMelon commented Dec 24, 2021

Pushed OxyPlot.GtkSharp3 2.1.0-Preview1 to NuGet

@hol430
Copy link
Contributor

hol430 commented Dec 24, 2021

Many thanks @VisualMelon!

@hengestone
Copy link

Just as another datapoint, it works fine here, on Ubuntu-21.10 with dotnet-6 packages from MIcrosoft. Thanks!

@hol430
Copy link
Contributor

hol430 commented Jan 19, 2022

I've just tested this on MacOS 10.15.7 (Catalina) and was able to build run the latest gtk3 example browser without problems. This requires that you've installed the gtk3 runtimes as per the instructions in the GtkSharp repo (ie brew install gtk+3).

Edit: nuget package also seems to be working fine on macos...insofar as I can tell from a quick manual test.

@seikosantana
Copy link

I've been using this library for a while and somehow on windows now randomly could crash with AccessViolationException. It runs real smooth on Ubuntu 20.04 but recently crashed on Windows.

I'm aware that there is many factors that could crash the application. I'm still investigating and still got no clue but the problem does not occur if I dont update the chart. I've made sure that any calls to UI update is wrapped inside Application.Invoke() and still it crashes on Windows.

Still investigating till today.

@hol430
Copy link
Contributor

hol430 commented May 19, 2022

If you've recently updated GtkSharp versions, that could be the culprit. They have changed the way that memory is handled (in terms of disposal of native resources) in the last year or so, which can result in crashes if your application is not behvaing "correctly".

Any warning messages (e.g. Gtk-CRITICAL ...) written to stdout are useful for debugging these types of problems. A native stack trace at time of crash is better still; debuggers like gdb are your friend here.

@seikosantana
Copy link

Ah that could make some clue.
I never used gdb but will see if i can get anything useful.

@seikosantana
Copy link

This warning message shows up on console

(Iotaweigher.Gtk:31200): GLib-GObject-CRITICAL **: 02:43:21.382: g_object_remove_toggle_ref: assertion 'G_IS_OBJECT (object)' failed

@hol430
Copy link
Contributor

hol430 commented May 20, 2022

Likely related to memory management/disposal of your objects. Even if that message is not what's causing the crash, it's indicative of a problem that will be worth solving anyway. GtkSharp/GtkSharp#82 may be worth a read if you're not familiar with how this works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants