[RELEASE] Hubitat Package Manager (HPM) -- HubitatCommunity

Just updated 3 hubs (2 C7s, 1 C5) and they all finished in about 30 seconds without errors. Went from 1.8.2 to 1.8.3.

Go figure!

1 Like

Just FYI, the "Community Thread" link still points to the old thread (for 1.8.3).

:smiley:
At the time, THIS thread was rather empty :slight_smile:

I'll change it for 1.8.4

3 Likes

@csteele, looking forward to 1.8.4. Thanks for all your work! Like RM, HPM is perhaps the most universally useful app available on HE (HPM made even more significant as its a community app and illustrates what makes the HE community and hub so special). Thanks for keeping it going!

1 Like

It wouldn't have gone away, I easily imagine there were several others that would have jumped in if I had not raised my hand first. :raised_hand: :smiley: :wave:

2 Likes

I've got v1.8.4 "in the bag" and have 1.8.5 well on it's way. The primary feature for 1.8.5 is "Bundles" support. For a single driver or app, bundles are a tiny user benefit. Anyone who's pasted a Driver into "Apps Code" or an App into "Drivers Code" would see how having a single "universal" install would save a click or two in that case. Otherwise it's perhaps a click or two more to use a bundle. However, anytime there's more than one code package involved, bundles save a lot of clicks... and errors I imagine. It's the #1 reason I built HubConnect bundles... to get Apps into Apps and Drivers into Drivers, since HubConnect needs both just to work.

 *    csteele v1.8.5     Bundles support added.
 *    csteele v1.8.4     Migrated to HubitatCommunity
 *                         added txtEnable to silence log.info messages
 *                         use httpS for Fast Search 
 *    csteele v1.8.3     No change here. Changes were to Dominic's repo to cause an upgrade to here.
 *    csteele v1.8.2.A   Converted to using HubitatCommunity.com as the search resource.

and:

Screen Shot 2022-05-30 at 1.32.25 PM

After that, I have nothing... :smiley:

7 Likes

One request if you are up for it is to change the release note display in the app from multi text to a paragraph or input field that displays HTML. As a developer I have wanted to include HTML in my HPM manifest releaseNotes key to things like upgrade instructions.

That would be nice. Another benefit is that a lot of apps seem to just say "see community thread for patch notes." If it was html they could include a link to it.

Screen Shot 2022-05-31 at 10.43.30 PM

Screen Shot 2022-05-31 at 10.44.41 PM

I thought that's what those blue words were for...
as implemented by:
Screen Shot 2022-05-31 at 10.46.09 PM

Screen Shot 2022-05-31 at 10.46.24 PM

1 Like

Those will take you to specific links defined in the manifest. As part of a major release of my Google Calendar search I had to create one off upgrade instructions that I mentioned via the releaseNotes key but because the display uses multi text the link wasn’t clickable. Plus it would be nice to include other HTML like bullets, bold, underline, etc.

This is the multi text field I am referring to that doesn’t support HTML:

1 Like

Is this app being deprecated in favor of Bundle Manager? I installed a new app from Package Manager and was told I need to switch to using Bundle Manager for future updates.
I hate the idea of having multiple "package managers" installed just to do something as infrequent as install apps/drivers.

1 Like

They are different apps from different authors, though both can ultimately be used for a similar purpose. HPM has, seemingly, a large community following now, while the other apps is newer. I suppose it is TBD where the "market" will take either. (There are actually some feature differences: HPM works directly with app and driver files now, where as the latter works with "bundles," a feature that didn't exist at the time when HPM was created but perhaps would have made things easier and might be able to be retro-fitted into the existing structure. It also doesn't support libraries, which should be able to be added in a similar fashion.)

If you infrequently install apps or drivers--and even if you do so frequently--you don't truly "need" either app. You can do so manually, and especially if the author provides direct links to "raw" URLs, they are fairly easy to either import via URL or copy/paste yourself. The new-ish "Bundles" feature on the hub is also supposed to make this easier for multi-file apps/drivers/libraries--regardless of whether that's you doing it or an app pretending to be you doing it for you (basically how these both work, given no truly "native" support for this kind of thing). :smiley:

2 Likes

The fact that installing certain apps from Package Manager (which means there is no problem with them being installed from it) and then having the app tell me I should be using a different packager manager (Bundle Manager in this case) is ridiculous. This is the type of app we do NOT need multiple of. Not only is it bad for the end user who will have to research which one contains what they want to use (if they don't want to install everything manually), but I imagine it would be bad for all other app/driver devs as they will have to keep two package managers in mind when choosing support.

Why does there really have to be a whole new one? It would be better to just add the features to the established app. Can that other dev not submit pull requests with these features?

1 Like

Bundles are being added to HPM. There's a story there, but doesn't matter much now. Last year, I grabbed a copy of HPM "just in case". I built a Fast Search feature and made it selectable. Last year, I also got Bundles working, at least the easy part. :smiley:

The first thing to do is migrate people from 1.8.2 from dmeglio repo to 1.8.3 on HubitatCommunity repo. Because of the Holiday I chose NOT to pile update on top of update and am letting the migration percolate out.

As stated above... v1.8.4 is "done, sitting on the shelf" waiting for a large number of HPM users to migrate. I'm itching to release it, but I'm trying to be kind too. :slight_smile:

v1.8.5 will be for Bundles. Bundle Install, Bundle Repair, Bundle Uninstall, View Apps and Drivers are all tested and working. Match Up isn't, and both Update and Modify haven't been tested, because I have to build bundles that would test those features.

4 Likes

The Answer... note the date.

In other words, until this holiday weekend, Bundles were NOT going to get added to HPM. Brian chose, like I did, to invest in getting Bundles to work, but along different paths.

1 Like

Oh this has been a discussion for a year now? Sounds like "Bundles" is a solution in search of a problem. :rofl:

First thing I thought of when I read "bundle" was, how does it manage apps with multiple drivers in which I only need one of the drivers? Like those apps that handle color bulbs, white bulbs, switches, outlets all with a different driver. I would usually only install the specific driver I use. Bundles just sound redundant with less value to me.

But maybe I missed something.

That is a choice made by the author of that "package" (app/driver/etc.), not the creator or maintainer of HPM. If this is important to you, I would suggest providing feedback to the developer who made this choice. Nobody can force an author to use HPM or stop them from using a different solution.

Also, in case you aren't aware "bundles" is a new-ish platform feature that lets you upload a ZIP file to the hub to install apps, drivers, and/or libraries (also new-ish) without needing to add each individually. This is not something HPM or Bundle Manager created, though it looks like HPM will support bundles soon (yay/thanks!). Bundles are very handy for manual installs of multi-file apps/drivers (think of HubConnect, or for me, CoCoHue)--perhaps less so for automated ones like this, but I still think they'll be easier for developers to maintain since it's less HPM-specific work they'd have to do. Very much a solution to an actual problem, IMHO. :smiley:

3 Likes

Yea, you missed something :smiley:

Try an Install in HPM, search for "hubconnect" and you'll be offered this:

Screen Shot 2022-06-01 at 1.03.53 PM

Click that and take your pick of all the HubConnect Drivers:

I don't know what the original use case for Bundles was BUT for HubConnect it was an answer to a huge support problem. Unfortunately, it didn't arrive in time. Many people couldn't wrap their heads around "Drivers go in Driver Code, Apps go in Apps Code" and many others would just decide that drivers were entirely optional. :smiley: The product simply wouldn't work under those circumstances. :slight_smile:

Bundles can contain Apps and Drivers. Installing them, even without HPM, yields the components landing in the right spot, at the very least.

In my opinion, Parent/Child products are better served by Bundles, because it's fewer clicks and no "parent then child? or child then parent?" install ordering question arises.

For single modules, Import is the simplest, BUT then you run into exactly what you started with.. different methods for different circumstances. HPM targeted exactly that, again, in my opinion.

2 Likes

Thanks for the explanation @csteele , that clears it up a lot. And yeah, I already use hubconnect so I'm aware of that list lol. I remember having to read through that lengthly install doc to get that working.

I have not looked at Bundle Manager because I've been spending all spare minutes either responding in the Community or pounding away at my Typos as I get Bundle support added to HPM.

I think Bundles are and will continue to be low usage. For a developer, they solve a specific set of issues and if you don't have one of those issues, why take the time? But my recent work, be it HubConnect, or Honeywell Thermostat, have all been multi-part and bundles help. Would I build a bundle for Aeotec MultiSensor 6 ?? no.. it would duplicate what HPM is already doing well. :slight_smile:

4 Likes