This is a Node.js-based server for FATE, the FFmpeg Automated Testing Environment (FFmpeg) or FATE Automated Testing Environment (Libav). It is written with Express.js, EJS (Embedded Javascript) and a few other modules. It is geared towards performance (compared to the old Perl CGI-based fateserver) and extensibility (clean JS code and EJS templates).
It is not that cleaner than EJS, but a lot slower (up to 16x slower in my test without caching, i.e. even slower than the old fateserver).
If caching is enabled, and with(){}
syntax is disabled, my tests show
that it is 1.7x slower.
See for yourself in the jade branch (only history page ported).
fateserver-node uses the MIT-licensed FooTable library. However, it does not have an npm package, so any update must be done manually.
The version of FooTable currently in the source tree is 2.0.3.
However, the FooTable in the source tree is not vanilla from the source. On the
stylesheet part, the font loading routine is removed, and all font glyphs used
by fateserver-node are redirected to the prettier FontAwesome glyphs in
public/css/footable.custom.css
.
On the JavaScript part, a patch is applied to greatly improve performance.
The Prism bundled with this copy of fateserver-node is generated on 2015-04-09 from http://prismjs.com/download.html?themes=prism&languages=git&plugins=line-numbers
- Add proper compiler name parsing instead of showing "(Ubuntu 4.8.2-19ubuntu1)"
- Minirep/minilog
- properly support error in configuration
- Convert to promises
xz -8