webCoRE for Hubitat Updates

Ah, I see! That step was crucial, and I overlooked it. Thanks for setting me straight!

1 Like

Thanks again for the detailed description.

One question came up on my side. How do I pause a HE app as stated in bullet point 1?

Thanks

2 Likes

I noticed that in HPM, we have an available upgrade for webCoRE from version 1.0.89 to 1.0.90. I'm excited about the new features and improvements this update could bring.

I wanted to check in and ask if it's possible to use HPM to perform this upgrade, or if it needs to be done manually like the last upgrade. Your guidance on this would be greatly appreciated.

Thanks so much for your help!

I just went straight to repair and it updated first time

Still getting the Fatal error using HPM on a C7. Will do the update manually

@nh.schottfam - can you comment on what's changed in 1.0.90? Maybe I missed it, but I don't see anything about a version update in post 1 of this message thread. Thanks!

I truly hope we can resolve this issue soon. Is there any light at the end of the tunnel, @nh.schottfam?

1 Like

My understanding:

The issue is the java changes in the latest HE builds slow down the compiles, and there appears to be a fixed timeout in the api's that hpm uses. @gopher.ny is aware, but has not had time to find a solution to the hpm fixed timeout.

This is not in HPM or webCoRE's control, it is a platform item.

When you compile by hand, there is no issue.

7 Likes

@nh.schottfam - can you comment on what's changed in 1.0.90? I don't see anything about a version update in post 1 of this message thread. Thank you.

I'm trying out some improvements to the piston expression editor on https://staging.webcore.co if anyone with related grievances wants to give it a try. Please @mention me with any bug reports - it's not perfect but should be better than the live dashboard.

Here is a screen recording

  1. Expression evaluation (the result shown above the expression editor) uses the value to which local variables are set in the editor, rather than the saved value. Previously required saving the piston and editing again to evaluate newly created variables or modified constant/initial value variables.
  2. [device : attribute] expressions autocompletion includes all local, system, and global device variables in addition to device names.
  3. [device : attribute] expressions show attributes relevant to the device or variable. Previously showed only the list of all built-in attributes. All built-in attributes are available for device variables, but the attributes relevant to the devices currently in that variable are shown at the top of the list.
  4. Text strings are highlighted which may make it easier to figure out text with escaped quotes like 'won\'t you'.
  5. Previously an expression containing html tags would make the editor go bananas because the HTML that you typed was rendered inline rather than shown as text. Now all HTML should be properly escaped so that you see the actual value you have typed.

If you see garbage like this, hard refresh or otherwise clear your cache - your browser is still running some older code:
Screenshot 2024-02-25 at 5.18.13 PM

9 Likes

note 1 is updated for current release.

3 Likes

My two cents …

Why not split the problematic files into two or more? Like moving some parts to a library and include it in the HPM package?

Thank you for providing clarity on the issue with the latest HE builds and the impact on compilation speed due to Java changes. It's insightful to learn about the fixed timeout in the APIs that HPM utilizes and the current awareness of @gopher.ny regarding this matter. I understand the constraints on finding a solution promptly amidst other commitments.

I will manual update.

Not so easily done. There is a lot of sharing of data structures across piston instances, which is controlled by child/file.

Parent/child calls are expensive and can get interesting for some locking behaviors.

The resulting compiled java is not that big for webCoRE,

You have the option to use built in, which you don't have to compile.

That’s exactly what I’m doing - gradually, of course!

Next up on staging is improved support for certain system variables.

  • $currentEventDevice when used inside an on events from block will act like the specific devices selected in that block. When $currentEventDevice is selected the attribute and command lists will include the attributes and commands relevant to the monitored devices. Previously included only the global built-in attributes and commands.
  • $currentEventValue when used inside an on events from block will act like the attribute(s) selected in that block. So inside an on events from My Light's switch if you have a condition based on $currentEventValue the Value dropdown will show off and on and a numeric attribute would show range conditions like "greater than."
  • $device is a special variable inside for each device loops and now it will behave like the devices being looped.

This is live on https://staging.webcore.co, just be sure to do a hard refresh if your browser doesn't pick up the new code. If you encounter any issues please look up how to view your browser's developer console and share any red errors that appear there.

Worth noting this is a frontend dashboard change only, it has no effect on how the pistons run just makes it easier to work with those variables.

8 Likes

New version available

updates future sunrise/sunset calculations. (note 1 in this thread is updated)

Note, you may need to update manually if user install at latest HE releases still may timeout in HPM.

2 Likes

Sunset offset doesn't appear to work for me. My shades went down at sunset instead of 30 minutes past sunset tonight. I rebooted and created a test piston with a sunset offset in the future and it scheduled it for tomorrow.

Just updated to the latest piston code. Don't know what caused this as it's not at sunset :slight_smile:
app:122024-03-04 17:04:16.658errorjava.util.ConcurrentModificationException: null on line 1533 (method finishRecovery)