This appears to be the last caching range in Phobos.
This is a potentially breaking change: we lose the ability to moveFront, and obviously there may be performance implications if the function is expensive and users are calling front more than once. I think this is still a worthwhile change since it is better to have a uniform policy of no caching on ranges rather than arbitrary selection of ranges that do caching.
https://issues.dlang.org/show_bug.cgi?id=5036
The previous docs were simply dissected from the original std.range docs, and
the text in each module is truncated and awkward to read. The main package.d
docs were also missing links to the submodules. So, update the docs to reflect
the current state of things.
Partial fix for makefile to build std.range docs, that was broken after
std.range was split. This is only a partial fix; the full fix will have
to be done as part of [issue 13766] (https://issues.dlang.org/show_bug.cgi?id=13766).
The reason is to do not import `std.uni` tables, `std.string` and
probably `std.algorithm`. Note that format is used in CTFE code and
`Exception` handing.
And it is more comfortable to import `format` from `std.format`.
std.format: clean imports (2)
remove import std.math : pow from std.uni
update scope imports in std.algorithm
update scope imports in std.exception
doFormat -> template
update scope imports in std.typecons
update scope imports in std.functional
update scope imports in std.range
update std.conv scope import
std.format: clean imports (2)
remove import std.math : pow from std.uni
update scope imports in std.algorithm
update scope imports in std.exception
doFormat -> template
update scope imports in std.typecons
update scope imports in std.functional
update scope imports in std.range
move sfromat
add public import of sformat
use std.uni