Skip to content

Stop publishing NuGet packages #84

Closed

Description

@objorke
  1. Keeping the OxyPlot Xamarin NuGet packages up-to-date requires frequent updates (due to the Xamarin dependencies)
  2. To create stable package releases, we should test on all the supported platforms

This is a lot of work and quite time consuming. An alternative could be to recommend everyone using this library to build it themselves, e.g. include the source code in their project as a git submodule or subtree.

Activity

  1. changed the title [-]Remove NuGet packages[/-] [+]Stop publishing NuGet packages[/+] on Nov 28, 2019
  2. dsyme commented on Apr 22, 2020

    @dsyme
    Contributor

    If it is a lot of work and time consuming, why not ask to bring on extra maintainers to this project and also automate the process?

    This package is a great package! and deserves a nuget, like most other packages....

  3. objorke commented on Apr 22, 2020

    @objorke
    MemberAuthor

    Yes, with more maintainers we could avoid this. It seems like we need some people to support each major platform. The Xamarin platform is extra challenging to automate on CI and requires Apple hardware for testing (MacOS, iOS).

  4. janusw commented on Nov 12, 2022

    @janusw
    Member

    Yes, with more maintainers we could avoid this. It seems like we need some people to support each major platform. The Xamarin platform is extra challenging to automate on CI and requires Apple hardware for testing (MacOS, iOS).

    @objorke I could actually offer to act as a (co-)maintainer here and take care of building nupkgs (via CI). I have Apple hardware available and can do basic tests on all major platforms (Android, iOS, Mac, UWP).

    I have managed to build a nuget package based on OxyPlot.Core version 2.0 already, which works very well on Android at least (on other platforms I get errors which probably need some minor code fixing).

    For CI I would suggest GitHub Actions. I have used this before and could contribute a setup that builds the code and generates nupkgs.

    Maybe as a compromise for avoiding too much maintenance overhead, one could drop support for the 'native' Xamarin.Android and Xamarin.iOS packages, and instead only support a Xamarin.Forms package on all major platforms (Android, iOS, Mac, UWP)? It would be nice to evolve that into something that works with MAUI as well.

  5. janusw commented on Nov 12, 2022

    @janusw
    Member

    I have managed to build a nuget package based on OxyPlot.Core version 2.0 already, which works very well on Android at least (on other platforms I get errors which probably need some minor code fixing).

    see PR #125

  6. objorke commented on Nov 13, 2022

    @objorke
    MemberAuthor

    Hi @janusw! I am not active in this project at the moment, but will try to answer!

    I see the release pace of Xamarin has slowed down, so it is hopefully easier to keep up with the latest versions now... https://www.nuget.org/packages/Xamarin.Forms#versions-body-tab

    It sounds great if everything can be built on GitHub Actions, then we could add the publish step. Can it also include a step to sign the package? I think building in a pipeline and signing the packages are mandatory, otherwise the integrity of the packages cannot be verified.

    It would also be great to see all builds in this project moved from AppVeyor to GitHub actions and include signing of the packages. Publish to NuGet or GitHub packages (does it offer built-in integrity checks?) @VisualMelon

  7. janusw commented on Nov 13, 2022

    @janusw
    Member

    I am not active in this project at the moment, but will try to answer!

    Oh, not even in Oxyplot.Core? That's a shame. Thanks even more for your reply then ;)

    I see the release pace of Xamarin has slowed down, so it is hopefully easier to keep up with the latest versions now... https://www.nuget.org/packages/Xamarin.Forms#versions-body-tab

    Well, yeah, Xamarin.Forms is in the process of being replaced by Maui, so there will probably be no major releases any more, but only some minor bugfixes, I assume.

    It sounds great if everything can be built on GitHub Actions, then we could add the publish step. Can it also include a step to sign the package?

    I have never done this, but in principle it should be possible, I guess.

    I think building in a pipeline and signing the packages are mandatory, otherwise the integrity of the packages cannot be verified.

    Yeah, makes sense.

    Although, in most other packages I'm involved in, the CI-built packages are only left on the CI server as an artifact for interested people to download, and release packages are uploaded to nuget.org manually.

    But yes, the scheme you propose is more bullet-proof.

  8. VisualMelon commented on Nov 13, 2022

    @VisualMelon

    I'm afraid I don't know anything about signing either, but we should be able to find examples on other projects. I also have increasingly little time for OxyPlot, unfortunately, but happy to help if possible (better @VisualMelon me though, because I don't generally watch this repo carefully)

    I'm pretty oblivious to all matters Xamarin, but happy to publish packages when we're happy they're in sensible state.

    Pushing CI builds for accepted merges (not PRs) to nuget as pre-releases is OK by me.

  9. janusw commented on Dec 2, 2022

    @janusw
    Member

    I'm afraid I don't know anything about signing either, but we should be able to find examples on other projects. I also have increasingly little time for OxyPlot, unfortunately, but happy to help if possible (better @VisualMelon me though, because I don't generally watch this repo carefully)

    Maybe we simply defer this discussion and stick to manual uploading for now ...?

    I'm pretty oblivious to all matters Xamarin, but happy to publish packages when we're happy they're in sensible state.

    I have merged #125 yesterday and tagged that as 2.0.0-beta.1.

    @VisualMelon, @objorke Could one of you please upload the OxyPlot.Xamarin.Forms package (built by GHA) from https://github.com/oxyplot/oxyplot-xamarin/actions/runs/3593037496 (see 'artifacts' at the bottom)?

    Or alternatively give me permissions for https://www.nuget.org/packages/OxyPlot.Xamarin.Forms/, so that I can do it myself? (my nuget account is this one: https://www.nuget.org/profiles/janusw)

    (Btw, I'd propose to deprecate the Xamarin.Android, Xamarin.iOS and Xamarin.Mac packages, and only publish updates for the Xamarin.Forms package from now on. Hope that is ok with you.)

  10. VisualMelon commented on Dec 2, 2022

    @VisualMelon

    I can upload it tomorrow if no-one beats me to it.

  11. VisualMelon commented on Dec 3, 2022

    @VisualMelon

    @janusw pushed to my test myget https://www.myget.org/feed/melonoxyplottesting/package/nuget/OxyPlot.Xamarin.Forms/2.0.0-beta.1 should you want to do any tests on pulling the package from the nuget source before I push it to nuget.org (just ping me when you're happy for me to push it to nuget.org)

  12. janusw commented on Dec 3, 2022

    @janusw
    Member

    @janusw pushed to my test myget https://www.myget.org/feed/melonoxyplottesting/package/nuget/OxyPlot.Xamarin.Forms/2.0.0-beta.1 should you want to do any tests on pulling the package from the nuget source before I push it to nuget.org (just ping me when you're happy for me to push it to nuget.org)

    @VisualMelon Looks great! I have already tested the nupkg (as downloaded from GitHub), so basically it's fine with me if you just push it to nuget.org. Thanks a lot for your support!

  13. VisualMelon commented on Dec 3, 2022

    @VisualMelon

    @janusw done; nuget says it may take a while for it to appear. It also said this which may be of interest

    image

  14. janusw commented on Dec 3, 2022

    @janusw
    Member

    @janusw done;

    Thanks!

    nuget says it may take a while for it to appear.

    Usually just takes a few minutes. Seems like it's available already :)

    It also said this which may be of interest

    image

    Yes, I think I've already seen this in the GHA logs. Will update the nuget metadata soon (and maybe release a beta.2 with some updates and cleanup within a week or two).

  15. janusw commented on Dec 3, 2022

    @janusw
    Member

    With the new package published, I think this issue can be closed, since we're publishing nupkgs again (and it also fixes a handful of other GH issues as well).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions