Script Meta Data

Idea created by Chris Irvine on Dec 4, 2015

    Add and expose meta data about scripts to developers. This could start very simple: How about including some basic meta data about each script in the DDR, something akin to what we have/do for records:

    • CreatedBy (account name)
    • CreatedTS
    • ModifiedBy
    • ModifiedTS
    • ModificationCount


    This capability could be further expanded to an inspector or workspace panel that corresponds to the current script. That panel could expose all kinds of data about scripts. In addition to basic information listed above, it could also display a modification history or even a "diff log" of changes that have been made to a script over it's lifetime. Compare and restore a script to a previous state.


    You could go farther and allow user specified information, such as a script comment. Meta data could also include information derived from the script content, like a list of referenced local variables or fields, or data scraped from comments like DocBlock or @tags. If a script is private, execute only, then public meta data could provide a calling specification like a "header .h" file.


    The immediate problem that this solves for a lot of people is a very rudimentary audit capability to get a clue when a bug might have been introduced into a script and by whom. It could also fulfill needs of various regulated industries.


    Most of these features would be appropriate for FMP Advanced users, both through UI and DDR. Although, some passively tracked data about scripts should still be collected in non-advanced FMP clients.


    While I'm on this bandwagon, I might also suggested usage and/or profiling data, because I personally utilize this data together with the above. However, I realize this is more about analytics compared to schema change tracking:

    • LastPerformedBy
    • LastPerformedTS
    • LastPerformedDurationMilliseconds
    • PerformedCount