In reading the various feature requests it becomes clear that there is some difference in how the developers and the users define 'feature'. The sampling is very small, statistically insignificant, but if you pick any 5 users, add the MACH developers and you could have 6 different 'favorite' or 'correct' methods to accomplish almost any processes.
Most of the 'features' requested thus far can be easily accomplished with the new far more powerful scripting. Adding a 'feature' via script has several advantages, the most fundamental of which is the fact that each programmer is free to take whatever path he/she chooses and users might have the benefit of choosing among several different scripts to accomplish the needed task.
Consider:
1) Most of the 'feature' requests thus far are doable in Lua.
2) Different programmers may have very different paths to get to the same place.
3) Skill set varies greatly among programmers as well as specific knowledge of CNC needs and wants.
4) A highly skilled programmer can make the system do whatever and however the users (customer) wants, provided the developers have provided access to the required data.
5) There are already a few programmers who demonstrate programming skills and knowledge of MACH4, so there should be no question that there will be many as discussion continues and particularly when documentation becomes available.
GENERAL SOLUTION:
Given these concepts, it occurs to me that there should be a thread for 'Script Request' in addition to Feature Request. Scriptable 'Features' posted here could be moved to that thread. Programmers will cruise the Script thread looking for interesting challenges, believe it! Code will be posted and comments, corrections, additions and mods will be made by both programmers and users.
SPECIFIC NEEDS:
What I see as reasonable contributions by the MACH4 developers is to provide access to the data (obviously), but also to provide several 'User Fields' in any table used by the software.
Using the example of the mods requested thus far to the MACH4 tool table, all could be done with scripts, but it would be a PIA to have to create new tables and try to link and sync each record to a line in a MACH table. An 'advanced' option should reveal several script accessible 'User Data fields' in each record in the tool table. This would facilitate a programmer being able to store, recall and manipulate data that has a fixed association with a MACH4 var.
In my opinion, accumulating tool run time is not particularly useful, but in any case, the proper place for such a process to execute is within the tool changer control software (which is not part of MACH4). But whether any given 'feature' is useful or not, there need to be 'User Fields' in a data structure for use by scripts.