CalcyteJS issueshttps://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues2018-09-05T09:00:12+10:00https://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/23Security audit for shelling out2018-09-05T09:00:12+10:00Mike LynchSecurity audit for shelling outFind all places in the code where we shell out to do something (like identifying files with siegfried) and check whether
* a node library exists with the same functionality - if so, use that instead
* the operation is async (anything wh...Find all places in the code where we shell out to do something (like identifying files with siegfried) and check whether
* a node library exists with the same functionality - if so, use that instead
* the operation is async (anything which spawns a subprocess should be)
* shell commands include any values coming from outside either by interpolation or otherwise, because this is a security riskhttps://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/19./defaults behaviour when called as a library2018-09-04T11:40:31+10:00Mike Lynch./defaults behaviour when called as a libraryI wasn't able to get context.json loading as a file - had to spin up a web server and put it on a URL.
Need to do the configuration and default templates in a more node-idiomatic way and give an easy way for calling code to override themI wasn't able to get context.json loading as a file - had to spin up a web server and put it on a URL.
Need to do the configuration and default templates in a more node-idiomatic way and give an easy way for calling code to override themhttps://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/18Get rid of unwanted files before packaging2018-08-23T16:55:46+10:00PTSEFTONpeter.sefton@uts.edu.auGet rid of unwanted files before packaging.DS_Store, ~.* etc.DS_Store, ~.* etchttps://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/17Add a -t --trim option to remove unused terms from a @context in a CATALOG.js...2018-09-25T07:52:19+10:00PTSEFTONpeter.sefton@uts.edu.auAdd a -t --trim option to remove unused terms from a @context in a CATALOG.json fileDepends on #16Depends on #16https://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/15Trim CATALOG.json @context to only terms used2018-08-23T11:40:58+10:00PTSEFTONpeter.sefton@uts.edu.auTrim CATALOG.json @context to only terms usedhttps://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/13Default to pruning unused keys out of the context2018-08-14T12:09:36+10:00PTSEFTONpeter.sefton@uts.edu.auDefault to pruning unused keys out of the contexthttps://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/11Add docstring equivalents to all files w/ license2018-08-14T11:55:02+10:00PTSEFTONpeter.sefton@uts.edu.auAdd docstring equivalents to all files w/ licensehttps://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/10Deal with empty directories which disappear in zip or git2018-08-14T11:52:47+10:00PTSEFTONpeter.sefton@uts.edu.auDeal with empty directories which disappear in zip or gitShould we have something like a .gitkeep?Should we have something like a .gitkeep?https://code.research.uts.edu.au/eresearch/CalcyteJS/-/issues/4Need to support siegfried options.2018-08-02T12:02:10+10:00Mike Lakemike.lake@uts.edu.auNeed to support siegfried options.The siegfried default.sig is assumed to be in `$HOME/siegfried` unless you invoke sf with "-home".
I'm not using the default `$HOME/siegfried` for good reasons and use an `alias sf="sf -home /shared/homes/mlake/siegfried"`. This is becau...The siegfried default.sig is assumed to be in `$HOME/siegfried` unless you invoke sf with "-home".
I'm not using the default `$HOME/siegfried` for good reasons and use an `alias sf="sf -home /shared/homes/mlake/siegfried"`. This is because siegfried does not have a config file as far as I can find.
However when calcyfy runs it invokes sf through a shell using the line below from collection.js:
`JSON.parse(shell.exec('sf -nr -json "' + dir + '"', {silent:true}).stdout);`
This invokes a shell which does not have any of a users normal aliases or env settings. So for me sf won't work here.
Solution: Using a calcyfy.conf file that can contain a siegfried_home var that can be set to e.g. `/shared/homes/mlake/siegfried` and then use `shell.exec('sf -home siegfried_home -nr -json "' + ....);` would work but that supports only that option. We need to support general options so maybe a siegfried options var which is a general string `shell.exec('sf siegfried_opts -nr -json "' + ....);`
Better might be to get siegfried to support a conf file and we can them do a `shell.exec('sf -c /path/to/siegfried.conf -nr -json "')`