My case is currently that I'm streaming use log files using sh::cat() and using a callback closure to pass the data (after a filter) to an PHPExcel object. The log files can easily get over 500MB. Looking through the code it seems that even when using a callback/closure, the output of the cat command still gets saved to a variable, making memory usage go up and up.
I cannot grep on the log files as it's filled with IDs, possible conflicting with other data in the same line.
Is this currently possible in a less memory consuming way? Else I'm also willing to submit a PR with some extra functionality on this. Reasoning could be that when streaming through a closure, no need is left to save things to the self::$output variable.
My case is currently that I'm streaming use log files using
sh::cat()and using a callback closure to pass the data (after a filter) to an PHPExcel object. The log files can easily get over 500MB. Looking through the code it seems that even when using a callback/closure, the output of thecatcommand still gets saved to a variable, making memory usage go up and up.I cannot grep on the log files as it's filled with IDs, possible conflicting with other data in the same line.
Is this currently possible in a less memory consuming way? Else I'm also willing to submit a PR with some extra functionality on this. Reasoning could be that when streaming through a closure, no need is left to save things to the self::$output variable.