📢 WebThings Gateway 1.1 Alpha available for testing

Hi everyone,

:loudspeaker: I’m pleased to announce that a WebThings Gateway 1.1 Alpha pre-release is ready for community testing. Please see the GitHub release for release notes.

This release includes a significantly re-factored back end for improved stability, removal of un-used code, security fixes and bug fixes, including a fix for the certificate issuing bug which has been affecting users of the webthings.io secure remote access service.

There are multiple ways to test this pre-release:

  • Raspberry Pi image - can be downloaded here
  • OTA update - To update an existing 1.0 gateway running on a Raspberry Pi, see the instructions on the wiki on how to enable automatic upgrades to pre-release versions. (Please do so at your own risk as this release is not yet well tested and it’s possible it may put your gateway in a broken state. Remember to turn this setting off once you have finished testing if you don’t want to install all future pre-releases.)
  • Docker image - please see the 1.1.0-alpha.2 tag on DockerHub

Note that no .deb or .rpm packages are currently available for this release as they are currently lacking maintainers. Please get in touch if you are interested in maintaining these packages.

:warning: CAUTION: Using pre-release versions on production gateways is not recommended.

🪲 Please report any issues you find on GitHub, with steps to reproduce, and note that you’re using the 1.1.0-alpha.2 release.

Your testing of this release will help identify any bugs before an automatic update is pushed out to all users. It would be particularly useful if you could report any issues you find with the add-ons you use, since core contributors can’t manually test all add-ons.

A huge thank you to all the members of our community who have already contributed to WebThings Gateway 1.1, and for your patience in waiting for this release.

1 Like

THANKS for the continued WebThing support… Users will surely rejoice after deploying this early holiday present!

Is there a way on github to see a list of issues that are linked to this release? I’m not up on github and could not find them during my initial look.

And a question as I’m about to spin up the alpha docker image…

Q: Do we have to worry about copying/backing-up the run-time configuration, log, db, and addon folders?

I will make a copy of my docker volume after stopping the current running image but wanted to get an answer to head off possible issues others may encounter. I’m testing on my backup WebThings server so it’s not too much of an issue for me.

The short answer is I would always recommend backing up any important data before testing a pre-release.

Hopefully it should be possible to roll back a failed upgrade, but not necessarily guaranteed.

I started a Docker image. Did not test remote access since it’s not a production system and I don’t have it configured.

The Date Time addon appeared to work initially, but it’s now failing…

Will have to re-read the thread about DateTime a few weeks ago to remind myself what the issue is and see if it needs to be updated (or reverted)…

2022-12-07 00:00:11.225 INFO : Plugin: date-time-adapter died, code = 0 restarting after 30000
2022-12-07 00:00:41.389 INFO : date-time-adapter: config.py:35 ERROR Strange config:searchReplaceComas() takes 2 positional arguments but 3 were given
2022-12-07 00:00:41.389 INFO : date-time-adapter: Traceback (most recent call last):
2022-12-07 00:00:41.389 INFO : date-time-adapter: File “/home/node/.webthings/addons/date-time-adapter/pkg/config.py”, line 27, in load
2022-12-07 00:00:41.389 INFO : date-time-adapter: self.searchReplaceComas(self, config) # Replace comma w dot
2022-12-07 00:00:41.389 INFO : date-time-adapter: TypeError: searchReplaceComas() takes 2 positional arguments but 3 were given
2022-12-07 00:00:41.389 INFO : date-time-adapter: EXECPTION
2022-12-07 00:00:41.389 INFO : date-time-adapter: can only update value with string or number
2022-12-07 00:00:41.389 INFO : date-time-adapter: (‘can only update value with string or number’,)
2022-12-07 00:00:41.421 INFO : date-time-adapter: [‘Traceback (most recent call last):\n’, ’ File “/home/node/.webthings/addons/date-time-adapter/main.py”, line 41, in \n _ADAPTER = DateTimeAdapter(verbose=_DEBUG)\n’, ’ File “/home/node/.webthings/addons/date-time-adapter/pkg/date_adapter.py”, line 24, in init\n self.start_pairing(1)\n’, ’ File “/home/node/.webthings/addons/date-time-adapter/pkg/date_adapter.py”, line 42, in start_pairing\n self._config))\n’, ’ File “/home/node/.webthings/addons/date-time-adapter/pkg/date_device.py”, line 76, in init\n _config.horizon)\n’, ’ File “/home/node/.webthings/addons/date-time-adapter/pkg/util.py”, line 22, in init\n self.next_sunrise = self.calc_sunrise()\n’, ’ File “/home/node/.webthings/addons/date-time-adapter/pkg/util.py”, line 125, in calc_sunrise\n observer_today = self.get_observer()\n’, ’ File “/home/node/.webthings/addons/date-time-adapter/pkg/util.py”, line 106, in get_observer\n observer_today.horizon = self.horizon\n’, ‘TypeError: can only update value with string or number\n’]

This issue is supposed to be fixed in version 1.2.3, is this the version you have?

Just got done upgrading to 1.2.3 and it indeed fixed the issue…

I first tried to select the “upgrade” option in DateTime. That failed. I then “disabled” the addon and selected “upgrade” again which succeeded. During the successfull upgrade it removed the addon from WT. After adding the addon back to WT it was showed the original configured options. Alas, I did not have any rules configured using DT as this is was on a test server…

I’m not sure, but I think once the faulty 1.2.x DT addon was installed it would not upgrade to 1.2.3. Anyway, it works now.

Here is the pertinant logs:

2022-12-07 08:13:59.403 INFO   : Plugin: date-time-adapter died, code = 0 restarting after 30000
2022-12-07 08:14:00.003 INFO   : Unloading DateTimeAdapter
2022-12-07 08:14:12.300 INFO   : Fetching add-on https://github.com/WTIOAddons/date-time-adapter/releases/download/v1.2.3/date-time-adapter-1.2.3-linux-x64-v3.7.tgz as /tmp/ivDG58/date-time-adapter.tar.gz
2022-12-07 08:14:13.162 INFO   : Expanding add-on /tmp/ivDG58/date-time-adapter.tar.gz
2022-12-07 08:14:13.419 INFO   : Unloading DateTimeAdapter
2022-12-07 08:14:13.420 ERROR  : AdapterProxy: unload already in progress
2022-12-07 08:14:16.423 INFO   : Killing date-time-adapter plugin.
2022-12-07 08:14:29.407 ERROR  : Plugin date-time-adapter not enabled, so not starting.
2022-12-07 08:16:00.013 ERROR  : Failed to toggle add-on date-time-adapter
2022-12-07 08:16:00.014 ERROR  : Error: Package not installed.
    at AddonManager.disableAddon (/home/node/webthings/gateway/build/addon-manager.js:529:19)
    at /home/node/webthings/gateway/build/controllers/addons_controller.js:76:47
    at Layer.handle [as handle_request] (/home/node/webthings/gateway/node_modules/express/lib/router/layer.js:95:5)
    at next (/home/node/webthings/gateway/node_modules/express/lib/router/route.js:144:13)
    at Route.dispatch (/home/node/webthings/gateway/node_modules/express/lib/router/route.js:114:3)
    at Layer.handle [as handle_request] (/home/node/webthings/gateway/node_modules/express/lib/router/layer.js:95:5)
    at /home/node/webthings/gateway/node_modules/express/lib/router/index.js:284:15
    at param (/home/node/webthings/gateway/node_modules/express/lib/router/index.js:365:14)
    at param (/home/node/webthings/gateway/node_modules/express/lib/router/index.js:376:14)
    at Function.process_params (/home/node/webthings/gateway/node_modules/express/lib/router/index.js:421:3)
    at next (/home/node/webthings/gateway/node_modules/express/lib/router/index.js:280:10)
    at Function.handle (/home/node/webthings/gateway/node_modules/express/lib/router/index.js:175:3)
    at router (/home/node/webthings/gateway/node_modules/express/lib/router/index.js:47:12)
    at Layer.handle [as handle_request] (/home/node/webthings/gateway/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/home/node/webthings/gateway/node_modules/express/lib/router/index.js:328:13)
    at /home/node/webthings/gateway/node_modules/express/lib/router/index.js:286:9
2022-12-07 08:16:55.135 INFO   : Fetching add-on https://github.com/WTIOAddons/date-time-adapter/releases/download/v1.2.3/date-time-adapter-1.2.3-linux-x64-v3.7.tgz as /tmp/HoxlCC/date-time-adapter.tar.gz
2022-12-07 08:16:55.768 INFO   : Expanding add-on /tmp/HoxlCC/date-time-adapter.tar.gz
2022-12-07 08:16:55.953 INFO   : Unloading DateTimeAdapter
2022-12-07 08:16:55.953 ERROR  : AdapterProxy: unload already in progress
2022-12-07 08:16:58.957 INFO   : Killing date-time-adapter plugin.
2022-12-07 08:16:59.747 INFO   : Loading add-on: date-time-adapter
2022-12-07 08:16:59.933 INFO   : date-time-adapter: date_adapter.py:37 INFO Log level 30
2022-12-07 08:17:00.004 INFO   : date-time-adapter: util.py:129 INFO CALC_SUNRISE tdy.utc: 2022/12/7 14:17:00 sunrise: 2022/12/8 13:07:27 sunrise_local: 2022-12-08 07:07:27.091733-06:00
2022-12-07 08:17:00.004 INFO   : date-time-adapter: util.py:153 INFO CALC_SUNSET today.utc: 2022/12/7 14:17:00 sunset: 2022/12/7 22:21:51 sunset_local: 2022-12-07 16:21:51.213607-06:00
2022-12-07 08:17:00.004 INFO   : date-time-adapter: util.py:27 INFO DTS lat: 41.790506 lng: -88.192503
2022-12-07 08:17:00.004 INFO   : date-time-adapter: util.py:129 INFO CALC_SUNRISE tdy.utc: 2022/12/7 14:17:00 sunrise: 2022/12/8 13:07:27 sunrise_local: 2022-12-08 07:07:27.091733-06:00
2022-12-07 08:17:00.005 INFO   : date-time-adapter: util.py:153 INFO CALC_SUNSET today.utc: 2022/12/7 14:17:00 sunset: 2022/12/7 22:21:51 sunset_local: 2022-12-07 16:21:51.213607-06:00
2022-12-07 08:17:00.005 INFO   : date-time-adapter: date_device.py:96 INFO sunset: 2022-12-07 16:21:51.213607-06:00 sunrise: 2022-12-08 07:07:27.091733-06:00
2022-12-07 08:17:00.005 INFO   : date-time-adapter: date_device.py:37 INFO DateTimeDevice started

Thanks for reporting. Would you mind filing an issue on the DateTime adapter repo with steps to reproduce? I think this is unrelated to the 1.1 Alpha update.

I think the issue maybe related to addons repo, since 1.2.3 was up to date in the addon, but even on 1.0 i had tp way multiple week before it was available for me in the gateway, bur other have ir

I looked though backup log files previous to the alpha upgrade. It appears that DateTime has been core dumping for some time (before 11/27 which is my earliest log). Version 1.2.1 was installed sometime previous to 11/27, well before the alpha upgrade.

The issue is only related to the installation of DateTime 1.2.1 and not with the alpha install. I only discovered the issue after I reviewed the WT logs after spinning up the WT alpha docker image on my backup server.