Hey @yak_testers, it’s been a little while since I’ve been in touch, sorry for that!
This week’s Rhino WIP release (3rd April 2018) includes a few new things that I wanted to mention…
- Package Manager UI (thanks @Trav!). Try the
- Support for creating packages from RhinoCommon plug-ins (see the guide) or anything else, for that matter (but pre-population of
manifest.yml is only working for Grasshopper assemblies and RhinoCommon-based Rhino plug-ins, so far)
- Weaverbird has been downloaded >1800 times since @piac started distributing it via Yak. Users can download a .gh file that contains Weaverbird components and Yak handles the rest via Package Restore
- Grasshopper loads .ghpy and .ghuser files that are installed via Yak
- Bug fixes
I’m planning to demo this stuff next month at Shape to Fabrication.
I’m currently working on developer workflows and automation, i.e. how to set up a simple plug-in project in a git repository with CI that automatically publishes pre-release versions of the plug-in for general consumption.
Please get in touch if you have any questions or suggestions!
I uploaded my personal SketchPad plug-in that I use to create quick test commands. Worked fine.
Oh man, that would have made all those bending-active workshops day one a bliss
If teachers are going to use Yak to distribute course material to their students, is that going to flood the repo with stuff that is useless for everyone else?
That is a very good point!
Hopefully teachers teach useful stuff!
My hope is that the main package repository won’t need much moderation, like rubygems or npm or, indeed, the Dynamo package manager. In the future it will be possible to host your own package repo (a feature much requested by offices), so maybe schools can go that route to provide an “approved” list of packages for users to pick from.
A couple of other options:
- Like @piac has done with Weaverbird, you could distribute a Grasshopper definition that triggers package restore for the packages that your workshop/lesson requires
- Package “groups” (coming soon™️)
Hi Nathan, what does this plugin do?
It is just a test-bed for code and such, it doesn’t do anything useful per se. Feel free to add more to it. The repository is https://github.com/jesterKing/SketchPad. Clone it,
mame edit it, add quick tests etc. Make PRs and so on.
Is the use of Yak already possible with multiples .ghuser files then (I mean multiples .ghuser files in a single package, created directly in Grasshopper, without Visual Studio GUID or similar) ?
Only .rhp, .gha, .dll and .ghpy are clearly mentioned in Yak’s documentation.
Yes! Grasshopper User Objects (.ghuser) are indeed supported in both Rhino for Windows and Mac. See the “libraries” package for an example that contains a single User Object. Multiple .ghuser files in a single package will also work just fine.
The only limitation (besides the lacking documentation…) is that the
spec command won’t prepopulate the manifest.yml file for you – this only works for .gha and .rhp files right now. It will flesh out the structure with placeholders for you, though.
Thanks for the answer, and this good news. I still have some questions :
- Where am I supposed to find the “librairies” package example you talked about ? I didn’t found it in Yak’s documentation, is it somewhere else ?
- If using multiple .ghuser files in one package then, is the automatic package restore and versioning system working too ?
You can install the “libraries” package from the Package Manager. In Rhino WIP run the
_PackageManager command, or in Rhino 6 run
If you want to download the raw package and have a look at how it’s put together then open https://yak.rhino3d.com/versions/libraries/1.1.0/download, change the extension of the download file from .yak to .zip and extract the contents.
Package Restore isn’t required for User Objects. When they’re added to the canvas it’s similar to just adding the regular objects upon which they’re based. However, Package Restore should work transparently for any third-party component(s) in the User Object.
Hello Will, thanks a lot for all the informations !
I will investigate this, as soon as possible.