Location: /topic/528-2024-icc-t20-world-cup?page=1#pid10001
The Flask Debug Toolbar has intercepted a redirect to the above URL for
debug viewing purposes. You can click the above link to continue with the
redirect as normal. If you'd like to disable this feature, you can set the
config variable DEBUG_TB_INTERCEPT_REDIRECTS to False.
Current Site Packages Directory:
/usr/local/flaskbb_2.2.1/flaskbb/.venv/lib/python3.12/site-packages
| Package | Version | Homepage | Summary |
|---|---|---|---|
| alabaster | 1.0.0 | None | A light, configurable Sphinx theme |
| alembic | 1.18.5 | None | A database migration tool for SQLAlchemy. |
| amqp | 5.3.1 | http://github.com/celery/py-amqp | Low-level AMQP client for Python (fork of amqplib). |
| asttokens | 3.0.1 | https://github.com/gristlabs/asttokens | Annotate AST trees with source code positions |
| attrs | 26.1.0 | None | Classes Without Boilerplate |
| babel | 2.18.0 | https://babel.pocoo.org/ | Internationalization utilities |
| billiard | 4.2.4 | https://github.com/celery/billiard | Python multiprocessing fork with improvements and bugfixes |
| blinker | 1.9.0 | None | Fast, simple object-to-object and broadcast signaling |
| cachelib | 0.14.0 | None | A collection of cache libraries in the same API interface. |
| celery | 5.6.3 | https://docs.celeryq.dev/ | Distributed Task Queue. |
| certifi | 2026.6.17 | https://github.com/certifi/python-certifi | Python package for providing Mozilla's CA Bundle. |
| cfgv | 3.5.0 | https://github.com/asottile/cfgv | Validate configuration and produce human readable error messages. |
| charset-normalizer | 3.4.7 | None | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. |
| click | 8.4.2 | None | Composable command line interface toolkit |
| click-didyoumean | 0.3.1 | https://github.com/click-contrib/click-didyoumean | Enables git-like *did-you-mean* feature in click |
| click-log | 0.4.0 | https://github.com/click-contrib/click-log | Logging integration for Click |
| click-plugins | 1.1.1.2 | https://github.com/click-contrib/click-plugins | An extension module for click to enable registering CLI commands via setuptools entry-points. |
| click-repl | 0.3.0 | https://github.com/untitaker/click-repl | REPL plugin for Click |
| cov-core | 1.15.0 | https://github.com/schlamar/cov-core | plugin core for use by pytest-cov, nose-cov and nose2-cov |
| coverage | 7.15.0 | https://github.com/coveragepy/coveragepy | Code coverage measurement for Python |
| decorator | 5.3.1 | None | Decorators for Humans |
| Deprecated | 1.3.1 | https://github.com/laurent-laporte-pro/deprecated | Python @deprecated decorator to deprecate old python classes, functions or methods. |
| distlib | 0.4.3 | https://github.com/pypa/distlib | Distribution utilities |
| dnspython | 2.8.0 | None | DNS toolkit |
| docutils | 0.22.4 | None | Docutils -- Python Documentation Utilities |
| email-validator | 2.3.0 | https://github.com/JoshData/python-email-validator | A robust email address syntax and deliverability validation library. |
| execnet | 2.1.2 | None | execnet: rapid multi-Python deployment |
| executing | 2.2.1 | https://github.com/alexmojaki/executing | Get the currently executing AST node of a frame, and other information |
| filelock | 3.29.5 | None | A platform independent file lock. |
| Flask | 3.1.3 | None | A simple framework for building complex web applications. |
| Flask-Alembic | 3.2.0 | None | Integrate Alembic with Flask. |
| Flask-Allows2 | 1.2.0 | None | Impose authorization requirements on Flask routes |
| Flask-BabelPlus | 2.4.1 | None | Adds i18n/l10n support to Flask applications |
| Flask-Caching | 2.4.0 | None | Adds caching support to Flask applications. |
| Flask-DebugToolbar | 0.16.0 | None | A toolbar overlay for debugging Flask applications. |
| flask-debugtoolbar-warnings | 0.1.0 | https://github.com/flaskbb/flask-debugtoolbar-warnings | Adds warnings support to Flask-Debugtoolbar |
| Flask-Limiter | 4.1.1 | None | Rate limiting for flask applications |
| Flask-Login | 0.6.3 | https://github.com/maxcountryman/flask-login | User authentication and session management for Flask. |
| Flask-Mail | 0.10.0 | None | Flask extension for sending email |
| flask-redis | 0.4.0 | https://github.com/underyx/flask-redis/ | A nice way to use Redis in your Flask app |
| Flask-SQLAlchemy | 3.1.1 | None | Add SQLAlchemy support to your Flask application. |
| Flask-Themes2 | 1.0.1 | https://github.com/sysr-q/flask-themes2 | Provides infrastructure for theming Flask applications |
| flask-whooshee | 0.9.1 | https://github.com/fedora-copr/flask-whooshee | Flask-SQLAlchemy - Whoosh Integration |
| Flask-WTF | 1.3.0 | None | Form rendering, validation, and CSRF protection for Flask with WTForms. |
| FlaskBB | 2.2.1 | None | A classic Forum Software in Python using Flask. |
| flaskbb-plugin-conversations | 2.0.2 | None | A private messaging plugin for FlaskBB |
| flaskbb-plugin-portal | 2.0.0 | None | A portal plugin for FlaskBB. |
| freezegun | 1.5.5 | https://github.com/spulec/freezegun | Let your Python tests travel through time |
| greenlet | 3.5.3 | None | Lightweight in-process concurrent programming |
| gunicorn | 26.0.0 | None | WSGI HTTP Server for UNIX |
| identify | 2.6.19 | https://github.com/pre-commit/identify | File identification library for Python |
| idna | 3.18 | None | Internationalized Domain Names in Applications (IDNA) |
| imagesize | 2.0.0 | https://github.com/shibukawa/imagesize_py | Get image size from headers (BMP/PNG/JPEG/JPEG2000/GIF/TIFF/SVG/Netpbm/WebP/AVIF/HEIC/HEIF) |
| iniconfig | 2.3.0 | None | brain-dead simple config-ini parsing |
| ipython | 9.15.0 | None | IPython: Productive Interactive Computing |
| ipython_pygments_lexers | 1.1.1 | None | Defines a variety of Pygments lexers for highlighting IPython code. |
| itsdangerous | 2.2.0 | None | Safely pass data to untrusted environments and back. |
| jedi | 0.20.0 | https://github.com/davidhalter/jedi | An autocompletion tool for Python that can be used for text editors. |
| Jinja2 | 3.1.6 | None | A very fast and expressive template engine. |
| kombu | 5.6.2 | https://kombu.readthedocs.io | Messaging library for Python. |
| limits | 5.8.0 | None | Rate limiting utilities |
| Mako | 1.3.12 | https://www.makotemplates.org/ | A super-fast templating language that borrows the best ideas from the existing templating languages. |
| MarkupSafe | 3.0.3 | None | Safely add untrusted strings to HTML/XML markup. |
| matplotlib-inline | 0.2.2 | None | Inline Matplotlib backend for Jupyter |
| mistune | 3.3.2 | None | A sane and fast Markdown parser with useful plugins and renderers |
| nodeenv | 1.10.0 | https://github.com/ekalinin/nodeenv | Node.js virtual environment builder |
| ordered-set | 4.1.0 | None | An OrderedSet is a custom MutableSet that remembers its order, so that every |
| packaging | 26.2 | None | Core utilities for Python packages |
| parso | 0.8.7 | https://github.com/davidhalter/parso | A Python Parser |
| pexpect | 4.9.0 | https://pexpect.readthedocs.io/ | Pexpect allows easy control of interactive console applications. |
| pillow | 12.3.0 | None | Python Imaging Library (fork) |
| platformdirs | 4.10.0 | None | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. |
| pluggy | 1.6.0 | None | plugin and hook calling mechanisms for python |
| pre_commit | 4.6.0 | https://github.com/pre-commit/pre-commit | A framework for managing and maintaining multi-language pre-commit hooks. |
| prompt_toolkit | 3.0.52 | None | Library for building powerful interactive command lines in Python |
| psutil | 7.2.2 | https://github.com/giampaolo/psutil | Cross-platform lib for process and system monitoring. |
| ptyprocess | 0.7.0 | https://github.com/pexpect/ptyprocess | Run a subprocess in a pseudo terminal |
| pure_eval | 0.2.3 | http://github.com/alexmojaki/pure_eval | Safely evaluate AST nodes without side effects |
| py | 1.11.0 | https://py.readthedocs.io/ | library with cross-python path, ini-parsing, io, code, log facilities |
| Pygments | 2.20.0 | None | Pygments is a syntax highlighting package written in Python. |
| PyJWT | 2.13.0 | None | JSON Web Token implementation in Python |
| pytest | 9.1.1 | None | pytest: simple powerful testing with Python |
| pytest-cov | 7.1.0 | None | Pytest plugin for measuring coverage. |
| pytest-mock | 3.15.1 | None | Thin-wrapper around the mock package for easier use with pytest |
| pytest-xdist | 3.8.0 | None | pytest xdist plugin for distributed testing, most importantly across multiple CPUs |
| python-dateutil | 2.9.0.post0 | https://github.com/dateutil/dateutil | Extensions to the standard Python datetime module |
| python-discovery | 1.4.3 | None | Python interpreter discovery |
| pytz | 2026.2 | http://pythonhosted.org/pytz | World timezone definitions, modern and historical |
| PyYAML | 6.0.3 | https://pyyaml.org/ | YAML parser and emitter for Python |
| redis | 8.0.1 | None | Python client for Redis database and key-value store |
| requests | 2.34.2 | None | Python HTTP for Humans. |
| responses | 0.26.2 | https://github.com/getsentry/responses | A utility library for mocking out the `requests` Python library. |
| roman-numerals | 4.1.0 | None | Manipulate well-formed Roman numerals |
| ruff | 0.15.20 | https://docs.astral.sh/ruff | An extremely fast Python linter and code formatter, written in Rust. |
| six | 1.17.0 | https://github.com/benjaminp/six | Python 2 and 3 compatibility utilities |
| snowballstemmer | 3.1.1 | https://github.com/snowballstem/snowball | This package provides 36 stemmers for 34 languages generated from Snowball algorithms. |
| Sphinx | 9.1.0 | None | Python documentation generator |
| sphinxcontrib-applehelp | 2.0.0 | None | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books |
| sphinxcontrib-devhelp | 2.0.0 | None | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents |
| sphinxcontrib-htmlhelp | 2.1.0 | None | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files |
| sphinxcontrib-jsmath | 1.0.1 | http://sphinx-doc.org/ | A sphinx extension which renders display math in HTML via JavaScript |
| sphinxcontrib-qthelp | 2.0.0 | None | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents |
| sphinxcontrib-serializinghtml | 2.0.0 | None | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) |
| SQLAlchemy | 2.0.51 | https://www.sqlalchemy.org | Database Abstraction Library |
| SQLAlchemy-Utils | 0.42.1 | None | Various utility functions for SQLAlchemy. |
| stack-data | 0.6.3 | http://github.com/alexmojaki/stack_data | Extract data from python stack frames and tracebacks for informative displays |
| traitlets | 5.15.1 | None | Traitlets Python configuration system |
| typing_extensions | 4.16.0 | None | Backported and Experimental Type Hints for Python 3.9+ |
| tzdata | 2026.2 | https://github.com/python/tzdata | Provider of IANA time zone data |
| tzlocal | 5.4.4 | None | tzinfo object for the local timezone |
| Unidecode | 1.4.0 | UNKNOWN | ASCII transliterations of Unicode text |
| urllib3 | 2.7.0 | None | HTTP library with thread-safe connection pooling, file post, and more. |
| vine | 5.1.0 | https://github.com/celery/vine | Python promises. |
| virtualenv | 21.5.1 | None | Virtual Python Environment builder |
| wcwidth | 0.8.2 | None | Measures the displayed width of unicode strings in a terminal |
| Werkzeug | 3.1.8 | None | The comprehensive WSGI web application library. |
| Whoosh | 2.7.4 | http://bitbucket.org/mchaput/whoosh | Fast, pure-Python full text indexing, search, and spell checking library. |
| wrapt | 2.2.2 | None | Module for decorators, wrappers and monkey patching. |
| WTForms | 3.2.2 | None | Form validation and rendering for Python web development. |
| WTForms-SQLAlchemy | 0.4.2 | None | SQLAlchemy tools for WTForms |
| Resource | Value |
|---|---|
| User CPU time | 7.530 msec |
| System CPU time | 0.000 msec |
| Total CPU time | 7.530 msec |
| Elapsed time | 7.538 msec |
| Context switches | 0 voluntary, 1 involuntary |
| Key | Value |
|---|---|
| HTTP_ACCEPT | */* |
| HTTP_ACCEPT_ENCODING | gzip, br, zstd, deflate |
| HTTP_CONNECTION | Keep-Alive |
| HTTP_HOST | www.bearsfans.org.uk |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| QUERY_STRING | |
| REMOTE_ADDR | 127.0.0.1 |
| REQUEST_METHOD | GET |
| SCRIPT_NAME | |
| SERVER_NAME | 0.0.0.0 |
| SERVER_PORT | 5000 |
| SERVER_PROTOCOL | HTTP/1.1 |
| SERVER_SOFTWARE | gunicorn/26.0.0 |
| View Function | kwargs |
|---|---|
| flaskbb.forum.views.view_post | post_id=10001 |
| Variable | Value |
|---|---|
| 'session' | 'eyJjc3JmX3Rva2VuIjoiNmVmMWRiNDBkMDk5MjQwYWNjYTE1M2U1Y2M5MWM3YWVkM2VjZDYwNiJ9.anl0HA.f4w8SOBU46PHAUR-YtHKf-lLa2A' |
| Variable | Value |
|---|---|
| 'csrf_token' | '6ef1db40d099240acca153e5cc91c7aed3ecd606' |
| '_fresh' | False |
| Variable | Value |
|---|
| Variable | Value |
|---|
| Key | Value |
|---|---|
| ADMIN_URL_PREFIX | '/admin' |
| ADMINS | ['admin@yourdomain'] |
| ALEMBIC | {'script_location': '/usr/local/flaskbb_2.2.1/flaskbb/flaskbb/migrations', 'version_locations': [('conversations', '/usr/local/flaskbb_2.2.1/flaskbb/.venv/lib/python3.12/site-packages/conversations/migrations'), ('portal', '/usr/local/flaskbb_2.2.1/flaskbb/.venv/lib/python3.12/site-packages/portal/migrations')], 'file_template': '%%(year)d%%(month).2d%%(day).2d%%(hour).2d%%(minute).2d_%%(rev)s_%%(slug)s', 'path_separator': 'os'} |
| ALEMBIC_CONTEXT | {'render_as_batch': True, 'compare_server_default': True} |
| ALLOWED_HOSTS | None |
| APPLICATION_ROOT | '/' |
| AUTH_URL_PREFIX | '/auth' |
| BABEL_CONFIGURE_JINJA | True |
| BABEL_DEFAULT_LOCALE | 'en' |
| BABEL_DEFAULT_TIMEZONE | 'UTC' |
| BABEL_DOMAIN | <flaskbb.utils.translations.FlaskBBDomain object at 0x7f8d0b645730> |
| CACHE_DEFAULT_TIMEOUT | 60 |
| CACHE_TYPE | 'SimpleCache' |
| CELERY_CONFIG | {'broker_url': 'redis://localhost:6379', 'result_backend': 'redis://localhost:6379', 'broker_transport_options': {'max_retries': 1}} |
| CONFIG_PATH | '/usr/local/flaskbb_2.2.1/flaskbb/flaskbb.cfg' |
| DEBUG | True |
| DEBUG_TB_ENABLED | True |
| DEBUG_TB_HOSTS | () |
| DEBUG_TB_INTERCEPT_REDIRECTS | True |
| DEBUG_TB_PANELS | ['flask_debugtoolbar.panels.versions.VersionDebugPanel', 'flask_debugtoolbar.panels.timer.TimerDebugPanel', 'flask_debugtoolbar.panels.headers.HeaderDebugPanel', 'flask_debugtoolbar.panels.request_vars.RequestVarsDebugPanel', 'flask_debugtoolbar.panels.config_vars.ConfigVarsDebugPanel', 'flask_debugtoolbar.panels.template.TemplateDebugPanel', 'flask_debugtoolbar.panels.sqlalchemy.SQLAlchemyDebugPanel', 'flask_debugtoolbar.panels.logger.LoggingPanel', 'flask_debugtoolbar.panels.route_list.RouteListDebugPanel', 'flask_debugtoolbar.panels.profiler.ProfilerDebugPanel', 'flask_debugtoolbar_warnings.WarningsPanel'] |
| DEBUG_TB_ROUTES_HOST | None |
| DEPRECATION_LEVEL | 'default' |
| EXPLAIN_TEMPLATE_LOADING | False |
| FORUM_URL_PREFIX | '' |
| LOG_CONF_FILE | None |
| LOG_DEFAULT_CONF | {'version': 1, 'disable_existing_loggers': False, 'formatters': {'standard': {'format': '%(asctime)s %(levelname)-7s %(name)-25s %(message)s'}, 'advanced': {'format': '%(asctime)s %(levelname)s: %(message)s [in %(pathname)s:%(lineno)d]'}}, 'handlers': {'console': {'level': 'NOTSET', 'formatter': 'standard', 'class': 'logging.StreamHandler'}, 'flaskbb': {'level': 'DEBUG', 'formatter': 'standard', 'class': 'logging.handlers.RotatingFileHandler', 'filename': '/usr/local/flaskbb_2.2.1/flaskbb/logs/flaskbb.log', 'mode': 'a', 'maxBytes': 10485760, 'backupCount': 5}, 'infolog': {'level': 'INFO', 'formatter': 'standard', 'class': 'logging.handlers.RotatingFileHandler', 'filename': '/usr/local/flaskbb_2.2.1/flaskbb/logs/info.log', 'mode': 'a', 'maxBytes': 10485760, 'backupCount': 5}, 'errorlog': {'level': 'ERROR', 'formatter': 'standard', 'class': 'logging.handlers.RotatingFileHandler', 'filename': '/usr/local/flaskbb_2.2.1/flaskbb/logs/error.log', 'mode': 'a', 'maxBytes': 10485760, 'backupCount': 5}}, 'loggers': {'flask.app': {'handlers': ['infolog', 'errorlog'], 'level': 'INFO', 'propagate': True}, 'flaskbb': {'handlers': ['console', 'flaskbb'], 'level': 'WARNING', 'propagate': True}}} |
| LOG_PATH | '/usr/local/flaskbb_2.2.1/flaskbb/logs' |
| LOGIN_MESSAGE_CATEGORY | 'info' |
| LOGIN_VIEW | 'auth.login' |
| MAIL_DEFAULT_SENDER | ('FlaskBB Mailer', 'noreply@yourdomain') |
| MAIL_PASSWORD | '' |
| MAIL_PORT | 25 |
| MAIL_SERVER | 'localhost' |
| MAIL_USE_SSL | False |
| MAIL_USE_TLS | False |
| MAIL_USERNAME | '' |
| MAX_CONTENT_LENGTH | None |
| MAX_COOKIE_SIZE | 4093 |
| MAX_FORM_MEMORY_SIZE | 500000 |
| MAX_FORM_PARTS | 1000 |
| MESSAGE_URL_PREFIX | '/message' |
| PERMANENT_SESSION_LIFETIME | datetime.timedelta(days=31) |
| PREFERRED_URL_SCHEME | 'http' |
| PROPAGATE_EXCEPTIONS | None |
| PROVIDE_AUTOMATIC_OPTIONS | True |
| RATELIMIT_ENABLED | True |
| RATELIMIT_STORAGE_URL | 'memory://' |
| RATELIMIT_STRATEGY | 'fixed-window' |
| REAUTH_VIEW | 'auth.reauth' |
| RECAPTCHA_ENABLED | False |
| RECAPTCHA_PRIVATE_KEY | 'site-key' |
| RECAPTCHA_PUBLIC_KEY | 'site-key' |
| REDIS_DATABASE | 0 |
| REDIS_ENABLED | False |
| REDIS_URL | 'redis://localhost:6379' |
| REFRESH_MESSAGE_CATEGORY | 'info' |
| REMEMBER_COOKIE_DOMAIN | None |
| REMEMBER_COOKIE_DURATION | datetime.timedelta(days=365) |
| REMEMBER_COOKIE_HTTPONLY | True |
| REMEMBER_COOKIE_NAME | 'remember_token' |
| REMEMBER_COOKIE_PATH | '/' |
| REMEMBER_COOKIE_SECURE | False |
| REMOVE_DEAD_PLUGINS | False |
| SECRET_KEY | '01d330afb1fc5e2a755919fa9ca6ce87dd62ce314d50b422' |
| SECRET_KEY_FALLBACKS | None |
| SEND_FILE_MAX_AGE_DEFAULT | None |
| SEND_LOGS | False |
| SERVER_NAME | 'localhost:5000' |
| SESSION_COOKIE_DOMAIN | None |
| SESSION_COOKIE_HTTPONLY | True |
| SESSION_COOKIE_NAME | 'session' |
| SESSION_COOKIE_PARTITIONED | False |
| SESSION_COOKIE_PATH | None |
| SESSION_COOKIE_SAMESITE | None |
| SESSION_COOKIE_SECURE | False |
| SESSION_REFRESH_EACH_REQUEST | True |
| SQLALCHEMY_BINDS | {} |
| SQLALCHEMY_DATABASE_URI | 'sqlite:////usr/local/flaskbb_2.2.1/flaskbb/flaskbb.sqlite' |
| SQLALCHEMY_ECHO | False |
| SQLALCHEMY_ENGINE_OPTIONS | {} |
| SQLALCHEMY_RECORD_QUERIES | False |
| SQLALCHEMY_TRACK_MODIFICATIONS | False |
| TEMPLATES_AUTO_RELOAD | None |
| TESTING | False |
| TRAP_BAD_REQUEST_ERRORS | None |
| TRAP_HTTP_EXCEPTIONS | False |
| TRUSTED_HOSTS | None |
| USE_DEFAULT_LOGGING | True |
| USE_X_SENDFILE | False |
| USER_URL_PREFIX | '/user' |
| WHOOSHEE_DIR | '/usr/local/flaskbb_2.2.1/flaskbb/whoosh_index/312' |
| WHOOSHEE_MIN_STRING_LEN | 3 |
| WHOOSHEE_WRITER_TIMEOUT | 2 |
| WTF_CSRF_CHECK_DEFAULT | True |
| WTF_CSRF_ENABLED | True |
| WTF_CSRF_FIELD_NAME | 'csrf_token' |
| WTF_CSRF_HEADERS | ['X-CSRFToken', 'X-CSRF-Token'] |
| WTF_CSRF_META_NAME | 'csrf-token' |
| WTF_CSRF_METHODS | {'PUT', 'POST', 'DELETE', 'PATCH'} |
| WTF_CSRF_SECRET_KEY | 'cd0fe14acddb6883e4f596ebb8df6972430d4b7180fc2bd2' |
| WTF_CSRF_SSL_STRICT | True |
| WTF_CSRF_TIME_LIMIT | 3600 |
| WTF_I18N_ENABLED | False |
No template rendered
The toolbar was unable to fetch the SQLAlchemy queries for this request. To enable the SQLAlchemy query display, please:
Since this app is not currently running in DEBUG mode, Flask-SQLAlchemy will not record queries by default. To enable query recording in non-debug mode, set the following configuration value:
app.config['SQLALCHEMY_RECORD_QUERIES'] = True
See the
documention of Flask-SQLAlchemy's get_debug_queries()
for additional details.
No messages logged.
| URL route | Endpoint name | HTTP methods | Is alias | Redirect to |
|---|---|---|---|---|
| / | forum.index | GET, HEAD, OPTIONS | False | None |
| /<int:forum_id>-<slug>/markread | forum.markread | OPTIONS, POST | False | None |
| /<int:forum_id>-<slug>/topic/new | forum.new_topic | GET, HEAD, OPTIONS, POST | False | None |
| /<int:forum_id>/markread | forum.markread | OPTIONS, POST | False | None |
| /<int:forum_id>/topic/new | forum.new_topic | GET, HEAD, OPTIONS, POST | False | None |
| /_themes/<themeid>/<path:filename> | _themes.static | GET, HEAD, OPTIONS | False | None |
| /admin/ | management.overview | GET, HEAD, OPTIONS | False | None |
| /admin/category/<int:category_id>/delete | management.delete_category | OPTIONS, POST | False | None |
| /admin/category/<int:category_id>/edit | management.edit_category | GET, HEAD, OPTIONS, POST | False | None |
| /admin/category/add | management.add_category | GET, HEAD, OPTIONS, POST | False | None |
| /admin/celerystatus | management.celery_status | GET, HEAD, OPTIONS | False | None |
| /admin/forums | management.forums | GET, HEAD, OPTIONS | False | None |
| /admin/forums/<int:category_id>/add | management.add_forum | GET, HEAD, OPTIONS, POST | False | None |
| /admin/forums/<int:forum_id>/delete | management.delete_forum | OPTIONS, POST | False | None |
| /admin/forums/<int:forum_id>/edit | management.edit_forum | GET, HEAD, OPTIONS, POST | False | None |
| /admin/forums/add | management.add_forum | GET, HEAD, OPTIONS, POST | False | None |
| /admin/groups | management.groups | GET, HEAD, OPTIONS | False | None |
| /admin/groups/<int:group_id>/delete | management.delete_group | OPTIONS, POST | False | None |
| /admin/groups/<int:group_id>/edit | management.edit_group | GET, HEAD, OPTIONS, POST | False | None |
| /admin/groups/add | management.add_group | GET, HEAD, OPTIONS, POST | False | None |
| /admin/groups/delete | management.delete_group | OPTIONS, POST | False | None |
| /admin/plugins | management.plugins | GET, HEAD, OPTIONS | False | None |
| /admin/plugins/<path:name>/disable | management.disable_plugin | OPTIONS, POST | False | None |
| /admin/plugins/<path:name>/enable | management.enable_plugin | OPTIONS, POST | False | None |
| /admin/plugins/<path:name>/install | management.install_plugin | OPTIONS, POST | False | None |
| /admin/plugins/<path:name>/uninstall | management.uninstall_plugin | OPTIONS, POST | False | None |
| /admin/reports | management.reports | GET, HEAD, OPTIONS | False | None |
| /admin/reports/<int:report_id>/delete | management.delete_report | OPTIONS, POST | False | None |
| /admin/reports/<int:report_id>/markread | management.report_markread | OPTIONS, POST | False | None |
| /admin/reports/delete | management.delete_report | OPTIONS, POST | False | None |
| /admin/reports/markread | management.report_markread | OPTIONS, POST | False | None |
| /admin/reports/unread | management.unread_reports | GET, HEAD, OPTIONS | False | None |
| /admin/settings | management.settings | GET, HEAD, OPTIONS, POST | False | None |
| /admin/settings/<path:slug> | management.settings | GET, HEAD, OPTIONS, POST | False | None |
| /admin/settings/plugin/<path:plugin> | management.settings | GET, HEAD, OPTIONS, POST | False | None |
| /admin/users | management.users | GET, HEAD, OPTIONS, POST | False | None |
| /admin/users/<int:user_id>/ban | management.ban_user | OPTIONS, POST | False | None |
| /admin/users/<int:user_id>/delete | management.delete_user | OPTIONS, POST | False | None |
| /admin/users/<int:user_id>/edit | management.edit_user | GET, HEAD, OPTIONS, POST | False | None |
| /admin/users/<int:user_id>/unban | management.unban_user | OPTIONS, POST | False | None |
| /admin/users/add | management.add_user | GET, HEAD, OPTIONS, POST | False | None |
| /admin/users/ban | management.ban_user | OPTIONS, POST | False | None |
| /admin/users/banned | management.banned_users | GET, HEAD, OPTIONS, POST | False | None |
| /admin/users/delete | management.delete_user | OPTIONS, POST | False | None |
| /admin/users/unban | management.unban_user | OPTIONS, POST | False | None |
| /auth/activate | auth.request_activation_token | GET, HEAD, OPTIONS, POST | False | None |
| /auth/activate/confirm | auth.activate_account | GET, HEAD, OPTIONS, POST | False | None |
| /auth/activate/confirm/<token> | auth.autoactivate_account | GET, HEAD, OPTIONS | False | None |
| /auth/login | auth.login | GET, HEAD, OPTIONS, POST | False | None |
| /auth/logout | auth.logout | GET, HEAD, OPTIONS | False | None |
| /auth/reauth | auth.reauth | GET, HEAD, OPTIONS, POST | False | None |
| /auth/register | auth.register | GET, HEAD, OPTIONS, POST | False | None |
| /auth/reset-password | auth.forgot_password | GET, HEAD, OPTIONS, POST | False | None |
| /auth/reset-password/<token> | auth.reset_password | GET, HEAD, OPTIONS, POST | False | None |
| /category/<int:category_id> | forum.view_category | GET, HEAD, OPTIONS | False | None |
| /category/<int:category_id>-<slug> | forum.view_category | GET, HEAD, OPTIONS | False | None |
| /conversations/ | conversations_bp.inbox | GET, HEAD, OPTIONS | False | None |
| /conversations/<int:conversation_id>/delete | conversations_bp.delete_conversation | OPTIONS, POST | False | None |
| /conversations/<int:conversation_id>/edit | conversations_bp.edit_conversation | GET, HEAD, OPTIONS, POST | False | None |
| /conversations/<int:conversation_id>/move | conversations_bp.move_conversation | OPTIONS, POST | False | None |
| /conversations/<int:conversation_id>/restore | conversations_bp.restore_conversation | OPTIONS, POST | False | None |
| /conversations/<int:conversation_id>/view | conversations_bp.view_conversation | GET, HEAD, OPTIONS, POST | False | None |
| /conversations/drafts | conversations_bp.drafts | GET, HEAD, OPTIONS | False | None |
| /conversations/inbox | conversations_bp.inbox | GET, HEAD, OPTIONS | False | None |
| /conversations/message/<int:message_id>/raw | conversations_bp.raw_message | GET, HEAD, OPTIONS | False | None |
| /conversations/new | conversations_bp.new_conversation | GET, HEAD, OPTIONS, POST | False | None |
| /conversations/sent | conversations_bp.sent | GET, HEAD, OPTIONS | False | None |
| /conversations/trash | conversations_bp.trash | GET, HEAD, OPTIONS | False | None |
| /forum/<int:forum_id> | forum.view_forum | GET, HEAD, OPTIONS | False | None |
| /forum/<int:forum_id>-<slug> | forum.view_forum | GET, HEAD, OPTIONS | False | None |
| /forum/<int:forum_id>-<slug>/edit | forum.manage_forum | GET, HEAD, OPTIONS, POST | False | None |
| /forum/<int:forum_id>/edit | forum.manage_forum | GET, HEAD, OPTIONS, POST | False | None |
| /markdown | forum.markdown_preview | OPTIONS, POST | False | None |
| /markdown/<path:mode> | forum.markdown_preview | OPTIONS, POST | False | None |
| /memberlist | forum.memberlist | GET, HEAD, OPTIONS, POST | False | None |
| /portal/ | portal.index | GET, HEAD, OPTIONS | False | None |
| /post/<int:post_id> | forum.view_post | GET, HEAD, OPTIONS | False | None |
| /post/<int:post_id>/delete | forum.delete_post | OPTIONS, POST | False | None |
| /post/<int:post_id>/edit | forum.edit_post | GET, HEAD, OPTIONS, POST | False | None |
| /post/<int:post_id>/hide | forum.hide_post | OPTIONS, POST | False | None |
| /post/<int:post_id>/raw | forum.raw_post | GET, HEAD, OPTIONS | False | None |
| /post/<int:post_id>/report | forum.report_post | GET, HEAD, OPTIONS, POST | False | None |
| /post/<int:post_id>/unhide | forum.unhide_post | OPTIONS, POST | False | None |
| /search | forum.search | GET, HEAD, OPTIONS, POST | False | None |
| /static/<path:filename> | static | GET, HEAD, OPTIONS | False | None |
| /topic/<int:topic_id> | forum.view_topic | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug> | forum.view_topic | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/delete | forum.delete_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/edit | forum.edit_topic | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/hide | forum.hide_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/highlight | forum.highlight_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/lock | forum.lock_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/post/<int:post_id>/reply | forum.reply_post | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/post/new | forum.new_post | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/trivialize | forum.trivialize_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/unhide | forum.unhide_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>-<slug>/unlock | forum.unlock_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>/delete | forum.delete_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>/edit | forum.edit_topic | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>/hide | forum.hide_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>/highlight | forum.highlight_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>/lock | forum.lock_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>/post/<int:post_id>/reply | forum.reply_post | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>/post/new | forum.new_post | GET, HEAD, OPTIONS, POST | False | None |
| /topic/<int:topic_id>/trivialize | forum.trivialize_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>/unhide | forum.unhide_topic | OPTIONS, POST | False | None |
| /topic/<int:topic_id>/unlock | forum.unlock_topic | OPTIONS, POST | False | None |
| /topictracker | forum.topictracker | GET, HEAD, OPTIONS, POST | False | None |
| /topictracker/<int:topic_id>-<slug>/add | forum.track_topic | OPTIONS, POST | False | None |
| /topictracker/<int:topic_id>-<slug>/delete | forum.untrack_topic | OPTIONS, POST | False | None |
| /topictracker/<int:topic_id>/add | forum.track_topic | OPTIONS, POST | False | None |
| /topictracker/<int:topic_id>/delete | forum.untrack_topic | OPTIONS, POST | False | None |
| /user/<username> | user.profile | GET, HEAD, OPTIONS | False | None |
| /user/<username>/posts | user.view_all_posts | GET, HEAD, OPTIONS | False | None |
| /user/<username>/topics | user.view_all_topics | GET, HEAD, OPTIONS | False | None |
| /user/settings/email | user.change_email | GET, HEAD, OPTIONS, POST | False | None |
| /user/settings/general | user.settings | GET, HEAD, OPTIONS, POST | False | None |
| /user/settings/password | user.change_password | GET, HEAD, OPTIONS, POST | False | None |
| /user/settings/user-details | user.change_user_details | GET, HEAD, OPTIONS, POST | False | None |
| /who-is-online | forum.who_is_online | GET, HEAD, OPTIONS | False | None |