There are some complications. It is pointless to do this assert in WebpageRender constructor because constructor is also called on each request. It is not good to call this assert on import time because there could be another render implementation that can handle VIEWPORT=full, and we don't want a full module to fail in this case. It is bad to call this assert in Pool because this assert is an implementation detail of WebpageRender. Also, asserts are very fast so I doubt it could have a measurable performance impact. Anyways, I just removed this limitation and so this assert is gone.