User Tools

Site Tools


current

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
current [2018/07/28 17:33] – [Change Log] James Sentmancurrent [2024/02/05 17:53] (current) James Sentman
Line 1: Line 1:
-=====XTension Version 9.4.7===== +=====Download XTension 9.5.4===== 
-Released7/28/2018\\+ 
 +>2/5/2024 [[current:beta|XTension 9.5.5 Beta 1]] is available. 
 + 
 +Released 12/19/2023\\
 \\ \\
-Download[[http://www.machomeautomation.com/files/xtension/xtension_987.zip|XTension v9.4.7 (build 9877/28/2018]]\\ +Download Universal Binary for all Supported OS versions; [[https://www.machomeautomation.com/files/xtension/xtension_9_5_4.dmg|XTension. v 9.5.4 (build 1085)]]\\
-zipfile md5 = [[tech_notes:md5|f7fa94e2b490265116c81b95a90e7a4b]]\\+
  
 +**This is an important update for NGROK users.** This updates the ngrok client to support the system changes they are making live. The older version will no longer be supported very soon. Anyone using ngrok tunnels should definitely perform this upgrade as soon as possible.
  
-====Change Log====+**Minimum System Version** for this release is OSX 10.10 but not all plugins will function properly prior to 10.13. Please start the necessary work to upgrade to at least 10.13 or recommended 10.15 or newer. At some point in the near future it will no longer be possible for me to support anything prior to 10.13 and the video plugins will never work prior to Catalina. 
 + 
 +**Rosetta Note:** While the entirety of the main app and all more recent plugins are Universal and run natively on Intel or Apple Silicon there are a few older plugins including the W800 and CM11 that are still Intel only. They run fine under Rosetta and you’ll never notice the difference. The only issue is that Rosetta is not included by default on the new Apple Silicon Macs. You’ll need to first run any Intel app, or do a get info on any app at all and select “open using Rosetta” then the OS will tell you that you need Rosetta and would you like to install it now. Once you complete that those plugins will run normally. 
 + 
 +====9.5.4 Change Log:==== 
 + 
 +  * The [[supported_hardware:hue|Phillips Hue]] plugin now properly supports non-dimmable plug in modules. 
 +  * Fixed a problem with the [[supported_hardware:wiz|Wiz plugin]] that would log errors as the libraries now return the name of the scene rather than it’s ID as they did previously. 
 +  * Fixed the error that was logged while trying to create a symlink to the internal python version if you did not have a /usr/local/bin folder on your machine.  
 +  * The python symlink is now created inside the XTension Support folder “pythonxt” and you can use that to run python scripts inside XTension or from elsewhere but using the XTension settings. It is especially useful if you are running python scripts from an async shell script in XTension as they will inherit all the path info to run properly where running the built in python may cause errors. 
 +  * NEW: Added an option to delay quitting. This will popup a window asking if you really meant to quit, stopping accidental shutdown of the entire program due to misplaced fingers. The window will count down for 30 seconds and then quit the app. This window does not come up if the system tells XTension to quit as if before a restart or something similar. Find the checkbox to turn it on in the Preferences. 
 +  * NEW: Added the option to send a value of 0 for a dimmable Unit to the On script if there is no Off script. Normally a value of 0 for any dimmable unit will be sent to the Off script rather than the On script. Unless there is no off script. This meant that previously you potentially had to duplicate some of your logic for handling values in the On and Off script. When this is turned on in the Preference, and a Unit has no Off script. The On script will be run instead with the future value set to 0. This is on by default, but if it causes you issues with some of your scripting you can turn it off in the preferences window. 
 +  * Fixed the incorrect link to the mailing list signup page in the purchase dialog. 
 +  * Removed some debug logging I failed to remove before the last release. This was in the conversion of potentially confused strings into floats and so did not affect every plugin, but might have logged confusing information occationally. 
 +  * There was a change in AppleScript support in OS versions from Ventura on that would actually enforce some, but not all, of the scripting dictionary flags that have never, in the entire history of the Mac, mattered. So us developers got sloppy and failed to add things like the “optional” flag to all the verbs reliably. The first I’ve found and fixed was with the Speak verb where it would tell you that the “in” parameter was required. It is no longer required. So far I have not found any other such issues and a visual search through the dictionary did not reveal any more such issues, but it’s entirely possible there are more parameters that are not properly marked as optional. If you find any such errors please let me know. 
 +  * The Interface list window can now be sorted by CPU Usage, Memory Usage and Process ID. This only works if you have the “show more information” option turned on in the gear menu on the window. This can be a great aide in finding the plugin process that is eating up all your CPU or memory and linking a python process shown in the Activity Monitor to the plugin it’s actually running. They all just say “python” in the monitor. But now it’s easier to find the PID number in the list if you sort by it. 
 +  * Updated the [[xtension_manual:ngrok|ngrok client]] version to 3.5. This is an important update if you are using this service as the old version will no longer be supported sometime in January. There were many changes to the usage of the client, and many more to the layout of the configuration file. I believe I have them all sorted out, but if you have issues let me know. All output from the client is logged during startup so you can check immediately if it thinks it started the tunnels or if it logged errors instead. 
 +  * I had previously hidden some of the lower level debugging aids in the contextual menus by having people hold the option key while right clicking. There is really no need for this extra step so I removed it. The Contextual menus for Units and Interfaces will have their “log debug data” and “Reveal in Finder” options at the bottom of all the contextual menus for them. This will make it easier to collect info for me if things start behaving oddly. 
 +  * I added the same debug logging info to the contextual menus of global scripts should it ever be necessary to get a look at that. 
 +  * To that debug output I added another line of info comparing the length of the Unit Address in both bytes and glyphs. This might be helpful to more easily discover if a plugin or a bug somewhere has inserted invisible characters into the Address field of a Unit causing things to get disconnected in the database and potentially making more and more units being created when there really should be only the one. 
 +  * There were some significant updates and improvements in the main program libraries that will make many things run faster and smoother. So far my testing of all of them work just fine. They aren’t a thing I can turn off though, they are just part of the latest compiler update. It will depend on what you’re doing, how busy your machine is and how fast it is in general whether you’ll see any difference at all. Usually the things they improved aren’t an issue until you’re doing something many times in a row. So I expect that the main improvements will be in window redrawing and things like that, but if you have a machine that is very busy it may improve that somewhat throughout. 
 + 
 +----- 
 + 
 +NOTE: This disk image no longer includes the older legacy plugins that will not be updated for newer OS versions. If you still need to run the [[supported_hardware:cm19]], [[supported_hardware:cm15a]], [[supported_hardware:zwave]] or the various Smarthome X10 interfaces please download [[tech_notes:catalina|the legacy plugins package from here]] and install the ones you need via the “Install Plugin” menu item of the “Database” menu. 
    
-  * Enhanced error checking for scripts with [[dictionary:xtension:startidler|idle]] callbacks. Errors in the script will not reliably cause the script to stop executing and not result in it potentially continuing to error as fast as it can. 
-  * Script results are now cleared before the next calling of the script rather than after so no error condition can cause a previous result ID to hang around incorrectly. 
-  * Thermostat “state” displays will now properly show the on or off label if you have set one, or the default label if being sent from the Vera or other plugin. This means that you’ll see the proper state of your thermostat shown in the label for that unit even if it’s something that XTension has never heard of before. You can always override this default label by adding in your own [[xtension_manual:advancedlabel|advanced label]] if you wish it to me more human readable than what comes directly from the Vera. 
-  * In the script editing window the GoTo popup will more reliably highlight the correct handler in your script. Previously it might have matched both init2() and init() but will now find the right one. 
-  * New: Added a “Resolution” popup to the thermostat controls. If you have a thermostat that can be set in increments of .5° or something other than full degree increments this will allow you to select those with the regular up and down buttons in the thermostat. NOTE: there is still a fish in there somewhere that keeps the thermostat control from working properly after you edit the page it’s on. If you edit the page a thermostat is on just save it and reload to get things going again until I can figure out why that is.\\ 
-available resolutions are currently 0.1, 0.2, 0.5, 1.0 and 2.0. If you need other values here let me know. NOTE: your thermostat has to actually support setting the temperature in these increments or it won’t work. 
-  * Fix: The [[dictionary:more:parsejson|parse json]] verb previously had a problem with booleans in a keyed dictionary, but not in an array, this is fixed and booleans are handled properly in both cases. 
-  * New: List menu is now always alphabetical. Previously the list was manually arrangeable and the first 9 items would get the menu shortcuts of command-1 through command-9. These commands are now configurable see next item. 
-  * New: Menu Shortcuts panel on the Preferences window lets you set the menu shortcut keys 1 through 9 to any List or View. 
-  * Sorting and management of the global scripts menu is now much faster for people that have many scripts. 
-  * Fix: fixed a crashing problem with the find dialog on OS versions prior to 10.12. The find system now works properly with 10.12 back through 10.9 but will bring up the separate find panel for those versions rather than embedding the find bar at the top of the edit script window. 
-  * Searching the database is now ludicrously faster than previous. It’s almost not worth having a progress bar anymore. 
-  * Fix: When editing a Mobile Web Remote interface the pin number was not always being filled back into the edit field. It now gets properly populated regardless. 
-  * New: For database sharing you can now select Global Scripts to share to the remote machine as well as unit lists. They will show up in the scripts menu under a sub menu with the name of the prefix that you set in the remote machines database sender configuration. At this moment you can only execute a script remotely. You can do so manually via those new menus, via a script or via a scheduled event. You cannot interact with the script yet at any level lower than that. You cannot tell it to execute a handler yet, nor can you get or set properties in it like you can with a local script. Unlike shared units, shared global scripts are ephemeral and will not appear in your system until the remote system connects. If you are referencing them in a script either before the remote system has connected, or after it has disconnected you’ll get a script not found error. You should wrap such commands in try/on error blocks to make sure your script continues to execute. The scripts will not show in the Manage Global Scripts window as you can’t edit them, but only in the scripts menu and be available to scheduled events or scripts by name. 
-  * New: Added “put data” parameter to the [[dictionary:more:loadurl|load URL]] verb. If you wish to make a PUT to a web server or other device you can now supply whatever payload you wish to send via this parameter as a string. The request type will be automatically set to PUT so it will not be necessary to specify “PUT” as your custom request type. If you do set a custom request type however you can use this to send a non-form encoded block of data to any other web resource. 
-  * New: The VeraUI7 interface now lets you send a set value command of 0 or non-zero to lock or unlock a door. This allows you to use the inline control of popup to select the state if you wish rather than just the on/off toggle. Previously the vera interface would have complained that set value didn’t apply to a door lock and please send an on or off command. 
-  * Fix: Unit icons now display properly for Plugins such as the VeraUI7 interface. This was broken in the previous release. 
 =====Previous Releases===== =====Previous Releases=====
 {{indexmenu>:current#2|js#doku}} {{indexmenu>:current#2|js#doku}}
  
-=== Older Versions === +
-[[beta|The Changelog and Download links for builds between 763 and version 9.1 can be found here]]+
current.1532799221.txt.gz · Last modified: 2023/02/13 14:51 (external edit)