diff --git a/.circleci/config.yml b/.circleci/config.yml index fd023a1c55..9aeea1cd17 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -15,7 +15,7 @@ jobs: paths: - ~/.local/ key: pip-package-v1-{{ .Branch }} - - run: pipenv run flake8 wagtail + - run: pipenv run flake8 - run: pipenv run isort --check-only --diff --recursive wagtail # Filter out known false positives, while preserving normal output and error codes. # See https://github.com/motet-a/jinjalint/issues/18. diff --git a/Makefile b/Makefile index 4ddce6ebe2..b19939bb4c 100644 --- a/Makefile +++ b/Makefile @@ -16,8 +16,8 @@ develop: clean-pyc npm install --no-save && npm run build lint: - flake8 wagtail - isort --check-only --diff --recursive wagtail + flake8 + isort --check-only --diff --recursive . # Filter out known false positives, while preserving normal output and error codes. # See https://github.com/motet-a/jinjalint/issues/18. jinjalint --parse-only wagtail | grep -v 'welcome_page.html:6:70' | tee /dev/tty | wc -l | grep -q '0' diff --git a/docs/conf.py b/docs/conf.py index 65bd3c605a..bf8079c159 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -14,9 +14,12 @@ import sys import os - from datetime import datetime +import django + +from wagtail import __version__, VERSION + # on_rtd is whether we are on readthedocs.org, this line of code grabbed from docs.readthedocs.org on_rtd = os.environ.get('READTHEDOCS', None) == 'True' @@ -34,17 +37,15 @@ sys.path.insert(0, os.path.abspath('..')) # Autodoc may need to import some models modules which require django settings # be configured os.environ['DJANGO_SETTINGS_MODULE'] = 'wagtail.tests.settings' -import django django.setup() # Use SQLite3 database engine so it doesn't attempt to use psycopg2 on RTD os.environ['DATABASE_ENGINE'] = 'django.db.backends.sqlite3' - # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' +# needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom @@ -64,22 +65,19 @@ templates_path = ['_templates'] source_suffix = '.rst' # The encoding of source files. -#source_encoding = 'utf-8-sig' +# source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. -project = u'Wagtail' -copyright = u'{year:d}, Torchbox'.format(year=datetime.now().year) +project = 'Wagtail' +copyright = '{year:d}, Torchbox'.format(year=datetime.now().year) # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. -# Get Wagtail version -from wagtail import __version__, VERSION - # The short X.Y version. version = '{}.{}'.format(VERSION[0], VERSION[1]) # The full version, including alpha/beta/rc tags. @@ -87,13 +85,13 @@ release = __version__ # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. -#language = None +# language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: -#today = '' +# today = '' # Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' +# today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. @@ -101,56 +99,51 @@ exclude_patterns = ['_build'] # The reST default role (used for this markup: `text`) to use for all # documents. -#default_role = None +# default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True +# add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). -#add_module_names = True +# add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. -#show_authors = False +# show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'default' # A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] +# modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. -#keep_warnings = False - +# keep_warnings = False # splhinxcontrib.spelling settings spelling_lang = 'en_GB' -spelling_word_list_filename='spelling_wordlist.txt' +spelling_word_list_filename = 'spelling_wordlist.txt' # sphinx.ext.intersphinx settings intersphinx_mapping = { 'django': ('https://docs.djangoproject.com/en/stable/', 'https://docs.djangoproject.com/en/stable/_objects/') } - # -- Options for HTML output ---------------------------------------------- - # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. -#html_theme_options = {} - - +# html_theme_options = {} # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". -#html_title = None +# html_title = None # A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None +# html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. @@ -169,94 +162,97 @@ html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. -#html_extra_path = [] +# html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' +# html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. -#html_use_smartypants = True +# html_use_smartypants = True # Custom sidebar templates, maps document names to template names. -#html_sidebars = {} +# html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. -#html_additional_pages = {} +# html_additional_pages = {} # If false, no module index is generated. -#html_domain_indices = True +# html_domain_indices = True # If false, no index is generated. -#html_use_index = True +# html_use_index = True # If true, the index is split into individual pages for each letter. -#html_split_index = False +# html_split_index = False # If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True +# html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True +# html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True +# html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. -#html_use_opensearch = '' +# html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None +# html_file_suffix = None # Output file base name for HTML help builder. htmlhelp_basename = 'Wagtaildoc' - # -- Options for LaTeX output --------------------------------------------- latex_elements = { -# The paper size ('letterpaper' or 'a4paper'). -#'papersize': 'letterpaper', + # The paper size ('letterpaper' or 'a4paper'). + # 'papersize': 'letterpaper', -# The font size ('10pt', '11pt' or '12pt'). -#'pointsize': '10pt', + # The font size ('10pt', '11pt' or '12pt'). + # 'pointsize': '10pt', -# Additional stuff for the LaTeX preamble. -#'preamble': '', + # Additional stuff for the LaTeX preamble. + # 'preamble': '', } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ - ('index', 'Wagtail.tex', u'Wagtail Documentation', - u'Torchbox', 'manual'), + ( + 'index', + 'Wagtail.tex', + 'Wagtail Documentation', + 'Torchbox', + 'manual' + ), ] # The name of an image file (relative to this directory) to place at the top of # the title page. -#latex_logo = None +# latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. -#latex_use_parts = False +# latex_use_parts = False # If true, show page references after internal links. -#latex_show_pagerefs = False +# latex_show_pagerefs = False # If true, show URL addresses after external links. -#latex_show_urls = False +# latex_show_urls = False # Documents to append as an appendix to all manuals. -#latex_appendices = [] +# latex_appendices = [] # If false, no module index is generated. -#latex_domain_indices = True - +# latex_domain_indices = True # -- Options for manual page output --------------------------------------- @@ -268,8 +264,7 @@ man_pages = [ ] # If true, show URL addresses after external links. -#man_show_urls = False - +# man_show_urls = False # -- Options for Texinfo output ------------------------------------------- @@ -277,22 +272,28 @@ man_pages = [ # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ - ('index', 'Wagtail', u'Wagtail Documentation', - u'Torchbox', 'Wagtail', 'One line description of project.', - 'Miscellaneous'), + ( + 'index', + 'Wagtail', + 'Wagtail Documentation', + 'Torchbox', + 'Wagtail', + 'One line description of project.', + 'Miscellaneous' + ), ] # Documents to append as an appendix to all manuals. -#texinfo_appendices = [] +# texinfo_appendices = [] # If false, no module index is generated. -#texinfo_domain_indices = True +# texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' +# texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. -#texinfo_no_detailmenu = False +# texinfo_no_detailmenu = False def setup(app): diff --git a/scripts/get-translator-credits.py b/scripts/get-translator-credits.py index 36de3f3bfd..37586f3e97 100644 --- a/scripts/get-translator-credits.py +++ b/scripts/get-translator-credits.py @@ -47,6 +47,7 @@ def get_language_name(locale_string): except KeyError: return Locale.parse(locale_string).english_name + language_names = [ (get_language_name(locale_string), locale_string) for locale_string in authors_by_locale.keys() diff --git a/scripts/nightly/upload.py b/scripts/nightly/upload.py index 97fe7e9541..3facb2afa0 100644 --- a/scripts/nightly/upload.py +++ b/scripts/nightly/upload.py @@ -1,4 +1,3 @@ -import datetime import pathlib import sys import json @@ -15,7 +14,7 @@ except StopIteration: print("Uploading", f.name) s3 = boto3.client('s3') -s3.upload_file(str(f), 'releases.wagtail.io', 'nightly/dist/' + f.name, ExtraArgs={'ACL':'public-read'}) +s3.upload_file(str(f), 'releases.wagtail.io', 'nightly/dist/' + f.name, ExtraArgs={'ACL': 'public-read'}) print("Updating latest.json") diff --git a/setup.cfg b/setup.cfg index 1890fad5b2..364a1747d9 100644 --- a/setup.cfg +++ b/setup.cfg @@ -11,7 +11,7 @@ python-tag = py3 # W503: line break before binary operator (superseded by W504 line break after binary operator) # N806: Variable in function should be lowercase ignore = D100,D101,D102,D103,D105,E501,W503,N806 -exclude = wagtail/project_template/* +exclude = wagtail/project_template/*,node_modules,venv max-line-length = 120 [isort] diff --git a/setup.py b/setup.py index aaa4e6073e..a2e83a7cf8 100755 --- a/setup.py +++ b/setup.py @@ -1,7 +1,5 @@ #!/usr/bin/env python -import sys - from wagtail import __version__ from wagtail.utils.setup import assets, sdist, check_bdist_egg @@ -15,7 +13,7 @@ except ImportError: # in multiprocessing/util.py _exit_function when setup.py exits # (see http://www.eby-sarna.com/pipermail/peak/2010-May/003357.html) try: - import multiprocessing + import multiprocessing # noqa except ImportError: pass diff --git a/tox.ini b/tox.ini index a5ad63bd61..07f9ff9124 100644 --- a/tox.ini +++ b/tox.ini @@ -61,4 +61,4 @@ setenv = [testenv:flake8] basepython=python3.6 deps=flake8>=2.2.0 -commands=flake8 wagtail +commands=flake8