New Github package registry sounds really interesting

Github has a new package registry that sounds really interesting given that you can publish both private and public packages using the same credentials. I already registered for the beta to test it with UPM.

There is a blog post explaining the new feature.

5 Likes

I see two issues that prevent the Github Package Registry being used with Unity:

  1. The registry requires authentication, which Unity does not yet support. I wasn’t able to install a package as an anonymous user and the docs do instruct you to authenticate before installing a package. I’m not sure if Github plans to allow anonymous installs for public packages at a later time. Unity has stated they’re planning to support authentication but that it’s not a high priority at this point.

  2. The registry uses @-scopes for packages. Unity has decided to instead use reverse domain names and prefixes thereof for their scoped registry implementation and don’t allow @ as part of package names (last time I checked, at least). This means that packages from the Github Package Registry can’t be used with Unity, unless Unity explicitly adds support for @-scoped package names.

1 Like

@Adrian is right, I’ve looked at the documentation and tested their sample package in a Unity project. It doesn’t work with Unity Package Manager. Sadly, Github packages registry is tightly coupled with npm’s scope registry feature and this is not something we support. We will investigate further and see what we can do.

Regards,

Pascal

1 Like

I’m interested in this topic too.
I was thinking of build a registry using Verdaccio on my own, but I’ll use GitHub Package Registry if Unity supports it.

@monry I’ve requested beta access to test the feature in more depth with Unity.

3 Likes

is there any news on how/when/if unity plans to support github package registries?

I want to know the progress too. Will it support or it won’t

Hi,

The Github registries feature is deeply tied to npm’s scoped packages. Sadly, our client implementation has diverged from the npm client and we don’t have support for npm’s scoped packages. If you guys find a way to refer to a Github registry directly without using a scoped package (e.g. using the registry attribute in the configuration), please let us know!

Supporting Github registries is not something we have in our short-term or mid-term plans. Sorry!

Regards,

Pascal

Sadly now official UPM has less and less desirable in every aspect. I would now consider switch my prefer package system into NuGet For Unity | Utilities Tools | Unity Asset Store

or maybe GitHub - mob-sakai/UpmGitExtension: This package extends the UI of Unity Package Manager (UPM) for the packages installed from git repository.

It would be great if you did, though.

Ohh… I think its wrong way. Github is most popular code repo in the world.
Still no fully npm and github support, one year more and programmers will replace unity package manager for custom solutions.
I was waiting branches in collab for years, one day dropped and switched to pure git, no regrets.

You can use google cloud to deploy a linux npm registry for free. That’s how I host my scriptable framework:

https://github.com/pablothedolphin/Scriptable-Framework

This also allows my packages to have dependencies with one another and to Unity’s own packages. It works exactly as you would expect.

Thanks for sharing and yes, very cool. But I am tired of reinventing the wheel with Unity for everything. Come on… Why not just adopt an existing package manager solution and let us use the registries already available?

1 Like

As you have already said, it seems to me a very bad strategy to use resources to “remake” something (upm) that is already done (npm) and at the same time remove functionalities that already exist in the other widely used solution.

2 Likes

Any news on this? Is there any plan for when this will be supported? Or any decision that this will never be supported?

Something related: if you’re working on an open source UPM project. You can submit it to the OpenUPM registry. It’s not a traditional push based registry, read the beta announcement for details. Also some tips about maintaining a UPM project: How to Maintain an UPM project Part 1.

I’m glad to help you convert your UPM project to the platform. Just leave a word here or create an issue for help.

1 Like