[DEV] Create CI flow and native environment
ArgosOfIthica opened this issue · 1 comments
Any kind of good CI flow will involve a native interpreter. We should create a barebones interpreter to process the basic unit testing and return stdout as a string.
There are two options for doing this; recreate the console system from scratch, or strip Quake down to just what we need. The upsides of the former is that it'll will be much quicker to do and be much more flexible for future uses; the downsides are that we are not getting the "true" Quake console behavior.
I believe that the warts of Quake's console and alias system are sufficiently captured and documented by scalu already. Seeing as keeping our CI in pure Python reduces complexity and should provide us with a light weight and easily tested interpreter, this will be the course of action.
This interpreter does not implement all behavior present in the Quake console; scalu binaries only use a subset of the grammar of valid console inputs. Compatibility can be increased with time, but isn't a priority.