Related story
Package Team Update | August 2020
Since you last saw us in June, we've had some exciting community contributions to UmbPack, a new Package Templates tool in the making, and much more! Get all the details in this month's update:
In September we opened up for new applications to the community teams, including the Package Team.
We are super happy to include David Brendel as a new team member!
David participated in our recent Community Team Days (more on those below), and has already submitted his first couple of PRs for the Package Templates project!
You can read more about the new community team members in the dedicated blog post.
During Hacktoberfest, the package team held a couple of package workshops that showed you how to create a package from scratch, get it listed on Our.umbraco and set up a good workflow for maintaining it using CI/CD on Github.
If you missed it, and it sounds interesting to you, then we’ve released the workshop as a documentation tutorial as well.
If you would like to host your own workshop with this material then we have the slides and the workbook available online:
https://umbra.co/pkg-slides
https://umbra.co/pkg-workbook
For the last 2 years, we’ve invited all community teams to Umbraco HQ in November for a couple of days, to sync up, collaborate, plan and also celebrate all the hard work they are doing. This year for obvious reasons we couldn’t do that, so we did it online instead.
For the package team, it was a great opportunity to sync up and sort out our priorities. Lots were accomplished during the 2 days, we reviewed and updated our mission statement and goals, released UmbPack v1.0.0, synced up with the other teams, and had a great session with the Unicore team about packages in the upcoming Netcore release.
We also wanted to do some hacking, so we decided to try our hands at developing a package!
We’ve had lots of feedback from people who would love some better information on backoffice elements they can use in their own packages, so we got to work on creating a package that adds a nice overview of these elements. Once we have a clear structure and contribution guidelines in place we will share more info on getting involved, but for now, I will leave you with a sneak peek of the first part - the umb-button:
The great part about releasing this as a package is that people will be able to read the code and parts required directly in their solution. We can include code snippets, link to the API docs for each element and most importantly since it exists within the backoffice, we can actually render it as an example.
We are quite excited about this package and hope it will be useful! If you have any thoughts, ideas or questions feel free to reach out to us either on packages@umbraco.com or our Twitter account.
If you want a summary of what we and the other 4 community teams got up to during our virtual community team days, you can find the recap blog post here.
One thing we decíded during the community team days, was that UmbPack should no longer be in a prerelease state. It has had several improvements and has been used by lots of package authors at this point. So we are happy to announce that the first “official” release of UmbPack is now out!
The latest version of UmbPack as of this post is 1.0.1, and contains several small bug fixes, metadata improvements (Thanks to Richard Ockerby, Ronald Barendse & Callum Whyte) and 2 new features:
Name templating is the first new feature. If you’ve used UmbPack before you will know that the name of the package created with the “pack” command is generated based on the package name and version. It would follow this structure:
Command: umbpak pack ./package.xml
Name: MyPackage
Version: 1.1.1
Output name: MyPackage_1.1.1.zip
With the new name templating you will have more control by using a {name} and {version placeholder}, so you can fx do the following:
Command: umbpak pack ./package.xml -n {name}.hello.{version}.zip
Name: MyPackage
Version: 1.1.1
Output name: MyPackage.hello.1.1.1.zip
This will give you much more control of naming of your packages, great addition by Kevin Jump!
The other great addition is adding replaceable properties. This feature allows you to replace values in your package.xml. An example is:
Command:umbpack pack .\package.xml -p Name=ThisIsANewName;Version=1.1.1
This would overwrite those values in the package.xml, and would be done before packing it up and naming the zip based on those values. Thanks a lot to Matt Brailsford for this addition!
In the spirit of openness and transparency (and making it easier for ourselves 😁) we have decided in the Package team to release our meeting notes for our biweekly meetings on Github; so if you feel like these blog posts aren’t enough, you can check our notes on our repo.
And remember to sign up for the Packages newsletter!
If you have something you think should be highlighted in the coming package newsletter - please reach out to me on packages@umbraco.com!