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

I created a new version of my package and updated the version if the packageManifest.json file, but the package manager. I then ran the update function in the Hubitat Package Manager app, but it said all packages up-to-date. Did I miss a step? Here is my package manifest file I changed: hubitat-ble-gateway/packageManifest.json at main · ajardolino3/hubitat-ble-gateway · GitHub

Github caches raw files. They refresh every 5 minutes.

Thanks, that was the issue. Just needed to wait. :slight_smile:

Getting some errors recently

you need to remove that developers apps from HPM as he has his own "bundle manager"

1 Like

Specifically, using the "Unmatch" feature found in Settings if I remember correctly.

1 Like

@BorrisTheCat , @jtp10181 I'm on @csteele 's v1.8.2.A, as that been changed?

You’ll definitely need to remove the apps, as to whether 1.8.2.A has the unmatch I don’t know - believe 1.8.7 is the current version.

2 Likes

Un-Match was added in 1.8.6. But you should update all the way to 1.8.7 (current version as of today).

2 Likes

Having an issue with HPM now for 3 hours, it won't install.
Hangs at "checking packages... Please wait..."
Deleted, reinstalled app, no dice.
Re downloaded app from url.
Rebooted hub.
Here are the logs.

app:92022-10-20 06:25:03.465 PMdebugprefPkgMatchUp

app:92022-10-20 06:25:03.058 PMdebugRefreshing repository list

app:92022-10-20 06:22:00.894 PMdebugprefPkgMatchUp

app:92022-10-20 06:22:00.242 PMdebugRefreshing repository list

app:92022-10-20 06:10:37.591 PMdebugprefPkgMatchUp

app:92022-10-20 06:10:36.940 PMdebugRefreshing repository list

app:92022-10-20 06:03:26.152 PMdebugprefPkgMatchUp

app:92022-10-20 06:03:25.583 PMdebugRefreshing repository list

app:92022-10-20 05:53:49.767 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:51:46.901 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:51:42.778 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:49:31.736 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:49:31.725 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:49:31.684 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:49:29.851 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:49:29.698 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:49:29.692 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:49:27.791 PMerrorjava.lang.NullPointerException: Cannot get property ‘results’ on null object on line 3016 (method downloadFileAsyncCallback)

app:92022-10-20 05:45:37.451 PMdebugprefPkgMatchUp

app:92022-10-20 05:45:37.058 PMdebugRefreshing repository list

app:92022-10-20 05:38:32.291 PMinfoFailed to refresh benevolent

app:92022-10-20 05:38:32.290

See the same error PMinfoFailed to refresh benevolent and HOM appears to hang.

1 Like

Seems there's an issue on line 3016.

Also "benevolent" is not being so benevolent in this case.

Got a hub firmware update notification, so after updating the hub thought I'd try installing HPM again, but it just hangs eternally like this...

Screenshot 2022-10-22 090251

The 'benevolent' repository listing was deleted and needs to be removed from the main HPM listing. This is also causing Match Up to fail currently.

@csteele do you have a process in mind for accepting changes in a case like this? Anyone could send you a pull request to remove the listing, but maybe you'd prefer it coming directly from the author or otherwise want to somehow ask them first to ensure it was intentional?

I see three problems-over-time that can arise:

  • Abandoned / no longer updated / author is not responding.
  • Defective / deleted
  • Package no longer useful

If someone points it out, I can delete any of them from the Master Repo, the problem is our own version of "due process" -- how can I tell that deleting it is in the best interest of the community. You touch on that in your question. I ran a scan of the Master Repo just now and see one defective entry.

file_get_contents(https://raw.githubusercontent.com/serenewaffles/hubitat/main/repository.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found

Repos that are defective and 'break' the functionality of HPM need to be quarantined at the very least, deleted at the worst.

If the owner submits a PR to remove the Repo, or otherwise informs me, of course I'll delete it.

I have detected, conversed with, and gotten Repos fixed over the time I've been steward of HPM and I think that's the process I'll invoke:

Defective Repos will be quarantined from the Master Repo and an attempt to contact the owner will be made. If the repo is corrected, then it will be reinstated into the Master Repo.

If the owner doesn't respond, then the value of the Packages must be determined. I added a Repo specifically for 'abandoned but useful' and I can migrate the code there. Unfortunately, HPM's DB won't smoothly transition and an UnMatch would probably be needed. That makes migration a low yield result because notification of the steps is hard to distribute well.

That means the final process is Deletion of quarantined Repos. The difference between Quarantined and Deleted is going to be strictly mine to maintain. After a Delete, the owner would have to resubmit a Pull Request to get added back, while I will take care of that with a quarantined repo.

6 Likes

I created a quarantined json in the HPM Master repo area to advise Owners. If you find your repo is missing from the Master Repo, but find it in the quarantined.json, then I'd advise looking at the problem repo and correct the problem. Once corrected, contact me and I'll restore it.

6 Likes

Hm not sure what's going on here...

app:9162022-10-23 03:33:30.141 PMerrorjava.lang.NullPointerException: Cannot get property 'repositories' on null object on line 3923 (method prefSettings)

app:9162022-10-23 03:33:30.080 PMdebugRefreshing repository list

app:9162022-10-23 03:33:30.078 PMdebugConverted update mode to Never

app:9162022-10-23 03:33:30.042 PMdebugMigrating auto updater mode

app:9162022-10-23 03:33:30.034 PMdebugAdding GitHub and PayPal URLs to manifests...

app:9162022-10-23 03:33:30.030 PMerrorError downloading https://raw.githubusercontent.com/HubitatCommunity/hubitat-packagerepositories/master/repositories.json: java.net.UnknownHostException: raw.githubusercontent.com: Temporary failure in name resolution

app:9162022-10-23 03:33:30.003 PMdebugStoring repository listing in state

That's the critical line I believe... your hub isn't finding an ip address for that site.

Yep, was a DNS covfefe with pfsense...

1 Like

@csteele Bunch of these in my logs today.... I did a repair and matchup last week