This is the correct lexer for interactive console sessions, according to
<http://pygments.org/docs/lexers/>. This does require command lines to
be prefixed with `$`, otherwise they are interpreted as the output of a
command. It highlights the command nicely, including environment
variables, strings, and comments.
Most of the samples were already 4-space indented, but a few were using 2-space,
which is both inconsistent and, when it happened with Python code samples,
incompatible with PEP8.
Indexed.search_fields used to be a tuple. This is incorrect, and it
should have been a list. Changing it to be a list now would be a
backwards incompatible change, as people do
search_fields = Page.search_fields + (
SearchField('body')
)
Adding a tuple to the end of a list causes an error, so this would
cause all old code that used tuples to throw an error. This is not
great.
A new ThisShouldBeAList class, which subclasses list, has been added.
It additionally allows tuples to be added to it, as in the above
behaviour, but will raise a deprecation warning if someone does this.
Old code that uses tuples will continue to work, but raise a deprecation
warning.
See #2310
Generating links with `link text <./path/to/doc#anchor>`__ does not work for html.
It produces a link to `./path/to/doc#anchor` instead of `./path/to/doc.html#anchor`.
It would be tempting to add `.html` before `#` but would likely cause some more issues
when generating the documentation as pdf or epub.
References on the other hand will work regardless of the output format.
Need to flip order of creating `BlogIndexRelatedLink` and `BlogIndexPage`, otherwise `BlogIndexRelatedLink` references `BlogIndexPage` before it's been created and you get:
```bash
ERRORS:
blog.BlogIndexRelatedLink.page: (fields.E300) Field defines a relation with model 'BlogIndexPage', which is either not installed, or is abstract.
```
While the project template is intended to be as generic as possible, and not everyone will want to use requirements.txt (some would prefer to use setup.py to define requirements, for example), we need some way to formally indicate that the project template is specific to Django 1.8.
Depending on libsass for all Wagtail installations was causing issues
with various operating systems, dramatically increasing installation
times, and preventing front end development adopting modern practices.
libsass has been removed as a dependency. Sass files are compiled before
release as a dependency of the `sdist` setup command. Sass compilation
is done through `gulp`. People wishing to hack on the frontend assets
should now install wagtail locally, install the node dependencies, and
run `gulp`:
$ pip install -e path/to/wagtail
$ cd path/to/wagtail
$ npm install
$ npm start
All the templates and JS files have been updated to reference the new
compiled CSS files instead of the Sass files.
Precompiled CSS for jquery-ui and similar have been moved out of the
`scss/` directory to the `css/` directory.