├── logs └── .keep ├── .pep8 ├── .flake8 ├── media ├── css │ ├── rtd-shim.css │ ├── badge_only.css │ ├── sphinx_rtd_theme.css │ └── autocomplete.css ├── fonts ├── javascript │ ├── underscore.js │ ├── jquery │ │ ├── jquery-2.0.3.min.js │ │ ├── jquery-ui-1.8.24.custom.min.js │ │ └── jquery-migrate-1.2.1.min.js │ └── readthedocs-doc-embed.js ├── font │ ├── fontawesome_webfont.eot │ ├── fontawesome_webfont.svg │ ├── fontawesome_webfont.ttf │ └── fontawesome_webfont.woff ├── robots.txt ├── images │ ├── edit.png │ ├── gear.png │ ├── logo.png │ ├── build.png │ ├── favicon.ico │ ├── favicon.png │ ├── search.png │ ├── badge-rtd.png │ ├── gradient.png │ ├── header-bg.png │ ├── home-logo.png │ ├── badge-revsys.png │ ├── badge-rtd-sm.png │ ├── close-window.png │ ├── email-header.png │ ├── silhouette.png │ ├── gradient-light.png │ ├── project-bar-bg.png │ ├── silhouette-sm.png │ ├── badge-revsys-sm.png │ ├── bookmark-delete.png │ ├── switch-grid-icon.png │ ├── switch-list-icon.png │ ├── bookmark-icon-hover.png │ ├── bookmark-icon-wait.png │ ├── bookmark-icon-active.png │ ├── bookmark-icon-default.png │ ├── body-bg.svg │ └── header-home-bg.svg ├── readthedocsbranding.ai ├── readthedocsbranding.jpg └── humans.txt ├── tasks.py ├── .eslintrc ├── .isort.cfg ├── .style.yapf ├── readthedocs ├── api │ └── __init__.py ├── builds │ ├── __init__.py │ ├── migrations │ │ ├── __init__.py │ │ ├── 0003_add-cold-storage.py │ │ └── 0004_add-apiversion-proxy-model.py │ ├── signals.py │ └── urls.py ├── payments │ ├── __init__.py │ └── static │ │ └── payments │ │ └── css │ │ └── form.css ├── profiles │ ├── __init__.py │ └── urls │ │ ├── __init__.py │ │ ├── public.py │ │ └── private.py ├── redirects │ ├── __init__.py │ ├── views.py │ ├── migrations │ │ └── __init__.py │ ├── admin.py │ └── managers.py ├── restapi │ ├── __init__.py │ ├── views │ │ └── __init__.py │ ├── signals.py │ └── templates │ │ └── restapi │ │ └── log.txt ├── rtd_tests │ ├── __init__.py │ ├── models.py │ ├── fixtures │ │ ├── __init__.py │ │ └── sample_repo │ │ │ ├── README │ │ │ └── source │ │ │ └── index.rst │ ├── mocks │ │ └── __init__.py │ ├── tests │ │ ├── __init__.py │ │ ├── projects │ │ │ └── __init__.py │ │ └── test_search_json_parsing.py │ └── files │ │ ├── test.html │ │ └── conf.py ├── search │ ├── __init__.py │ ├── tests │ │ ├── __init__.py │ │ ├── utils.py │ │ └── dummy_data.py │ └── signals.py ├── settings │ └── __init__.py ├── config │ ├── tests │ │ ├── __init__.py │ │ ├── fixtures │ │ │ └── bad_encode_project │ │ │ │ └── schaue pülaylist an.py │ │ └── utils.py │ ├── __init__.py │ └── find.py ├── doc_builder │ ├── __init__.py │ ├── backends │ │ └── __init__.py │ ├── signals.py │ └── templates │ │ └── doc_builder │ │ └── data.js.tmpl ├── gold │ ├── tests │ │ └── __init__.py │ ├── migrations │ │ └── __init__.py │ ├── __init__.py │ ├── apps.py │ ├── admin.py │ ├── signals.py │ ├── templates │ │ └── gold │ │ │ └── subscription_confirm_delete.html │ └── urls.py ├── integrations │ ├── __init__.py │ ├── migrations │ │ └── __init__.py │ └── utils.py ├── projects │ ├── urls │ │ └── __init__.py │ ├── views │ │ └── __init__.py │ ├── backends │ │ ├── __init__.py │ │ └── views.py │ ├── management │ │ ├── __init__.py │ │ └── commands │ │ │ └── __init__.py │ ├── migrations │ │ ├── __init__.py │ │ ├── 0011_delete-url.py │ │ ├── 0003_project_cdn_enabled.py │ │ ├── 0017_add_domain_https.py │ │ ├── 0008_add_subproject_alias_prefix.py │ │ ├── 0004_add_project_container_image.py │ │ ├── 0020_add-api-project-proxy.py │ │ ├── 0022_add-alias-slug.py │ │ ├── 0015_add_project_allow_promos.py │ │ ├── 0026_ad-free-option.py │ │ ├── 0025_show-version-warning-existing-projects.py │ │ ├── 0018_fix-translation-model.py │ │ └── 0014_add-state-tracking.py │ ├── templatetags │ │ ├── __init__.py │ │ └── projects_tags.py │ ├── __init__.py │ ├── apps.py │ ├── static-src │ │ └── projects │ │ │ └── css │ │ │ └── admin.less │ ├── static │ │ └── projects │ │ │ ├── css │ │ │ └── admin.css │ │ │ └── badges │ │ │ ├── passing-flat-square.svg │ │ │ ├── failing-flat-square.svg │ │ │ ├── unknown-flat-square.svg │ │ │ ├── failing-for-the-badge.svg │ │ │ ├── passing-for-the-badge.svg │ │ │ └── unknown-for-the-badge.svg │ ├── notifications.py │ └── signals.py ├── vcs_support │ ├── __init__.py │ └── backends │ │ └── __init__.py ├── analytics │ ├── vendor │ │ └── __init__.py │ ├── __init__.py │ └── apps.py ├── core │ ├── management │ │ ├── __init__.py │ │ └── commands │ │ │ ├── __init__.py │ │ │ ├── import_github.py │ │ │ ├── update_versions.py │ │ │ ├── pull.py │ │ │ └── set_metadata.py │ ├── migrations │ │ ├── __init__.py │ │ ├── 0003_add_banned_status.py │ │ └── 0002_make_userprofile_user_a_onetoonefield.py │ ├── templatetags │ │ ├── __init__.py │ │ └── privacy_tags.py │ ├── __init__.py │ ├── static │ │ └── core │ │ │ ├── img │ │ │ └── loader.gif │ │ │ ├── font │ │ │ ├── FontAwesome.otf │ │ │ ├── Lato-Bold.ttf │ │ │ ├── Lato-Italic.ttf │ │ │ ├── Lato-Regular.ttf │ │ │ ├── Inconsolata-Bold.ttf │ │ │ ├── RobotoSlab-Bold.ttf │ │ │ ├── lato │ │ │ │ ├── Lato-Bold.eot │ │ │ │ ├── Lato-Bold.ttf │ │ │ │ ├── Lato-Bold.woff │ │ │ │ ├── Lato-Bold.woff2 │ │ │ │ ├── Lato-Italic.eot │ │ │ │ ├── Lato-Italic.ttf │ │ │ │ ├── Lato-Italic.woff │ │ │ │ ├── Lato-Italic.woff2 │ │ │ │ ├── Lato-Regular.eot │ │ │ │ ├── Lato-Regular.ttf │ │ │ │ ├── Lato-Regular.woff │ │ │ │ └── Lato-Regular.woff2 │ │ │ ├── RobotoSlab-Regular.ttf │ │ │ ├── Inconsolata-Regular.ttf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ │ └── js │ │ │ └── site.js │ ├── fields.py │ ├── apps.py │ ├── static-src │ │ └── core │ │ │ └── js │ │ │ ├── doc-embed │ │ │ ├── grokthedocs-client.js │ │ │ └── constants.js │ │ │ ├── readthedocs-doc-embed.js │ │ │ └── site.js │ ├── utils │ │ └── tasks │ │ │ ├── permission_checks.py │ │ │ └── __init__.py │ ├── permissions.py │ ├── templates │ │ └── core │ │ │ └── ko_form_field.html │ ├── fixtures │ │ └── flag_types.json │ ├── backends.py │ └── mixins.py ├── oauth │ ├── migrations │ │ ├── __init__.py │ │ ├── 0008_add-project-relation.py │ │ └── 0007_org_slug_nonunique.py │ ├── __init__.py │ ├── apps.py │ ├── admin.py │ ├── querysets.py │ └── services │ │ └── __init__.py ├── templates │ ├── projects │ │ ├── base_project.html │ │ ├── samples │ │ │ ├── getting_started.rst.html │ │ │ └── installation.rst.html │ │ ├── notifications │ │ │ └── resource_usage_site.html │ │ ├── doc_file.rst.html │ │ ├── index.rst.html │ │ ├── includes │ │ │ ├── icon_built.html │ │ │ └── flagging.html │ │ ├── import_extra.html │ │ ├── project_resync_webhook.html │ │ ├── project_detail.html │ │ ├── tag_list.html │ │ ├── email │ │ │ └── build_failed.txt │ │ ├── import_basics.html │ │ ├── integration_generic_webhook_detail.html │ │ ├── project_delete.html │ │ ├── alias_edit.html │ │ ├── domain_confirm_delete.html │ │ ├── project_advanced.html │ │ ├── integration_form.html │ │ ├── project_create.html │ │ └── upload_html.html │ ├── search │ │ └── indexes │ │ │ └── projects │ │ │ ├── file_text.txt │ │ │ └── project_text.txt │ ├── security.txt │ ├── account │ │ ├── email │ │ │ ├── email_confirmation_signup_message.txt │ │ │ ├── email_confirmation_signup_message.html │ │ │ ├── password_reset_key_subject.txt │ │ │ ├── email_confirmation_subject.txt │ │ │ ├── email_confirmation_message.txt │ │ │ ├── password_reset_key_message.txt │ │ │ ├── email_confirmation_message.html │ │ │ └── password_reset_key_message.html │ │ └── password_change.html │ ├── core │ │ ├── email │ │ │ ├── common.html │ │ │ ├── common.txt │ │ │ └── base.txt │ │ ├── project_list.html │ │ ├── filter_list.html │ │ ├── filter_bar.html │ │ ├── project_bar.html │ │ ├── version_list.html │ │ └── widesearchbar.html │ ├── mkdocs │ │ └── readthedocs │ │ │ ├── searchbox.html │ │ │ └── versions.html │ ├── admin.html │ ├── builds │ │ └── tag_list.html │ ├── socialaccount │ │ └── authentication_error.html │ ├── security.html │ ├── archive │ │ └── index.html │ ├── profiles │ │ └── private │ │ │ ├── create_profile.html │ │ │ ├── edit_profile.html │ │ │ └── delete_account.html │ ├── flagging │ │ └── flag_success.html │ ├── base_filter.html │ ├── 401.html │ ├── post_commit.html │ └── 500.html ├── locale │ ├── ar │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── ca │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── de │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── en │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── es │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── eu │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── fr │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── gl │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── it │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── ja │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── nb │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── pl │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── ru │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── sk │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── uk │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── pt_BR │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── vi_VN │ │ └── LC_MESSAGES │ │ │ └── django.mo │ ├── zh_CN │ │ └── LC_MESSAGES │ │ │ └── django.mo │ └── zh_TW │ │ └── LC_MESSAGES │ │ └── django.mo ├── notifications │ ├── apps.py │ ├── urls.py │ └── __init__.py ├── constants.py ├── __init__.py ├── wsgi.py └── worker.py ├── docs ├── locale │ ├── pot │ ├── da │ │ └── LC_MESSAGES │ │ │ ├── api.mo │ │ │ ├── faq.mo │ │ │ ├── gsoc.mo │ │ │ ├── i18n.mo │ │ │ ├── rtfd.mo │ │ │ ├── todo.mo │ │ │ ├── vcs.mo │ │ │ ├── builds.mo │ │ │ ├── design.mo │ │ │ ├── index.mo │ │ │ ├── talks.mo │ │ │ ├── tests.mo │ │ │ ├── theme.mo │ │ │ ├── api │ │ │ ├── core.mo │ │ │ ├── index.mo │ │ │ ├── builds.mo │ │ │ ├── bookmarks.mo │ │ │ ├── projects.mo │ │ │ ├── doc_builder.mo │ │ │ └── vcs_support.mo │ │ │ ├── canonical.mo │ │ │ ├── changelog.mo │ │ │ ├── features.mo │ │ │ ├── install.mo │ │ │ ├── privacy.mo │ │ │ ├── redirects.mo │ │ │ ├── settings.mo │ │ │ ├── sponsors.mo │ │ │ ├── support.mo │ │ │ ├── symlinks.mo │ │ │ ├── versions.mo │ │ │ ├── webhooks.mo │ │ │ ├── contribute.mo │ │ │ ├── architecture.mo │ │ │ ├── localization.mo │ │ │ ├── single_version.mo │ │ │ ├── custom_installs.mo │ │ │ ├── design_decisions.mo │ │ │ ├── getting_started.mo │ │ │ ├── alternate_domains.mo │ │ │ └── custom_installs │ │ │ ├── index.mo │ │ │ └── customization.mo │ ├── en │ │ └── LC_MESSAGES │ │ │ ├── api.mo │ │ │ ├── faq.mo │ │ │ ├── gsoc.mo │ │ │ ├── i18n.mo │ │ │ ├── rtfd.mo │ │ │ ├── todo.mo │ │ │ ├── vcs.mo │ │ │ ├── builds.mo │ │ │ ├── design.mo │ │ │ ├── index.mo │ │ │ ├── talks.mo │ │ │ ├── tests.mo │ │ │ ├── theme.mo │ │ │ ├── api │ │ │ ├── core.mo │ │ │ ├── index.mo │ │ │ ├── builds.mo │ │ │ ├── bookmarks.mo │ │ │ ├── projects.mo │ │ │ ├── doc_builder.mo │ │ │ └── vcs_support.mo │ │ │ ├── canonical.mo │ │ │ ├── changelog.mo │ │ │ ├── features.mo │ │ │ ├── install.mo │ │ │ ├── privacy.mo │ │ │ ├── redirects.mo │ │ │ ├── settings.mo │ │ │ ├── sponsors.mo │ │ │ ├── support.mo │ │ │ ├── symlinks.mo │ │ │ ├── versions.mo │ │ │ ├── webhooks.mo │ │ │ ├── contribute.mo │ │ │ ├── architecture.mo │ │ │ ├── localization.mo │ │ │ ├── single_version.mo │ │ │ ├── custom_installs.mo │ │ │ ├── design_decisions.mo │ │ │ ├── getting_started.mo │ │ │ ├── alternate_domains.mo │ │ │ └── custom_installs │ │ │ ├── index.mo │ │ │ └── customization.mo │ ├── es │ │ └── LC_MESSAGES │ │ │ ├── api.mo │ │ │ ├── faq.mo │ │ │ ├── gsoc.mo │ │ │ ├── i18n.mo │ │ │ ├── rtfd.mo │ │ │ ├── todo.mo │ │ │ ├── vcs.mo │ │ │ ├── builds.mo │ │ │ ├── design.mo │ │ │ ├── index.mo │ │ │ ├── talks.mo │ │ │ ├── tests.mo │ │ │ ├── theme.mo │ │ │ ├── api │ │ │ ├── core.mo │ │ │ ├── index.mo │ │ │ ├── builds.mo │ │ │ ├── bookmarks.mo │ │ │ ├── projects.mo │ │ │ ├── doc_builder.mo │ │ │ └── vcs_support.mo │ │ │ ├── canonical.mo │ │ │ ├── changelog.mo │ │ │ ├── features.mo │ │ │ ├── install.mo │ │ │ ├── privacy.mo │ │ │ ├── redirects.mo │ │ │ ├── settings.mo │ │ │ ├── sponsors.mo │ │ │ ├── support.mo │ │ │ ├── symlinks.mo │ │ │ ├── versions.mo │ │ │ ├── webhooks.mo │ │ │ ├── contribute.mo │ │ │ ├── architecture.mo │ │ │ ├── localization.mo │ │ │ ├── single_version.mo │ │ │ ├── custom_installs.mo │ │ │ ├── design_decisions.mo │ │ │ ├── getting_started.mo │ │ │ ├── alternate_domains.mo │ │ │ └── custom_installs │ │ │ ├── index.mo │ │ │ └── customization.mo │ ├── it │ │ └── LC_MESSAGES │ │ │ ├── api.mo │ │ │ ├── faq.mo │ │ │ ├── gsoc.mo │ │ │ ├── i18n.mo │ │ │ ├── rtfd.mo │ │ │ ├── todo.mo │ │ │ ├── vcs.mo │ │ │ ├── builds.mo │ │ │ ├── design.mo │ │ │ ├── index.mo │ │ │ ├── talks.mo │ │ │ ├── tests.mo │ │ │ ├── theme.mo │ │ │ ├── api │ │ │ ├── core.mo │ │ │ ├── index.mo │ │ │ ├── builds.mo │ │ │ ├── bookmarks.mo │ │ │ ├── projects.mo │ │ │ ├── doc_builder.mo │ │ │ └── vcs_support.mo │ │ │ ├── canonical.mo │ │ │ ├── changelog.mo │ │ │ ├── features.mo │ │ │ ├── install.mo │ │ │ ├── privacy.mo │ │ │ ├── redirects.mo │ │ │ ├── settings.mo │ │ │ ├── sponsors.mo │ │ │ ├── support.mo │ │ │ ├── symlinks.mo │ │ │ ├── versions.mo │ │ │ ├── webhooks.mo │ │ │ ├── contribute.mo │ │ │ ├── architecture.mo │ │ │ ├── localization.mo │ │ │ ├── single_version.mo │ │ │ ├── custom_installs.mo │ │ │ ├── design_decisions.mo │ │ │ ├── getting_started.mo │ │ │ ├── alternate_domains.mo │ │ │ └── custom_installs │ │ │ ├── index.mo │ │ │ └── customization.mo │ ├── ja │ │ └── LC_MESSAGES │ │ │ ├── api.mo │ │ │ ├── faq.mo │ │ │ ├── gsoc.mo │ │ │ ├── i18n.mo │ │ │ ├── rtfd.mo │ │ │ ├── todo.mo │ │ │ ├── vcs.mo │ │ │ ├── builds.mo │ │ │ ├── design.mo │ │ │ ├── index.mo │ │ │ ├── talks.mo │ │ │ ├── tests.mo │ │ │ ├── theme.mo │ │ │ ├── api │ │ │ ├── core.mo │ │ │ ├── index.mo │ │ │ ├── builds.mo │ │ │ ├── bookmarks.mo │ │ │ ├── projects.mo │ │ │ ├── doc_builder.mo │ │ │ └── vcs_support.mo │ │ │ ├── canonical.mo │ │ │ ├── changelog.mo │ │ │ ├── features.mo │ │ │ ├── install.mo │ │ │ ├── privacy.mo │ │ │ ├── redirects.mo │ │ │ ├── settings.mo │ │ │ ├── sponsors.mo │ │ │ ├── support.mo │ │ │ ├── symlinks.mo │ │ │ ├── versions.mo │ │ │ ├── webhooks.mo │ │ │ ├── contribute.mo │ │ │ ├── architecture.mo │ │ │ ├── localization.mo │ │ │ ├── single_version.mo │ │ │ ├── custom_installs.mo │ │ │ ├── getting_started.mo │ │ │ ├── alternate_domains.mo │ │ │ └── custom_installs │ │ │ ├── index.mo │ │ │ └── customization.mo │ └── nb │ │ └── LC_MESSAGES │ │ ├── api.mo │ │ ├── faq.mo │ │ ├── gsoc.mo │ │ ├── i18n.mo │ │ ├── rtfd.mo │ │ ├── todo.mo │ │ ├── vcs.mo │ │ ├── builds.mo │ │ ├── design.mo │ │ ├── index.mo │ │ ├── talks.mo │ │ ├── tests.mo │ │ ├── theme.mo │ │ ├── api │ │ ├── core.mo │ │ ├── index.mo │ │ ├── builds.mo │ │ ├── bookmarks.mo │ │ ├── projects.mo │ │ ├── doc_builder.mo │ │ └── vcs_support.mo │ │ ├── canonical.mo │ │ ├── changelog.mo │ │ ├── features.mo │ │ ├── install.mo │ │ ├── privacy.mo │ │ ├── redirects.mo │ │ ├── settings.mo │ │ ├── sponsors.mo │ │ ├── support.mo │ │ ├── symlinks.mo │ │ ├── versions.mo │ │ ├── webhooks.mo │ │ ├── contribute.mo │ │ ├── architecture.mo │ │ ├── localization.mo │ │ ├── single_version.mo │ │ ├── custom_installs.mo │ │ ├── design_decisions.mo │ │ ├── getting_started.mo │ │ ├── alternate_domains.mo │ │ └── custom_installs │ │ ├── index.mo │ │ └── customization.mo ├── _config.yml ├── img │ ├── headers.png │ ├── edit_on_github.png │ └── translation_bar.png ├── _ext │ └── djangodocs.py ├── guides │ └── index.rst ├── .rstcheck.cfg ├── custom_installs │ └── index.rst ├── business │ ├── index.rst │ └── analytics.rst └── api │ └── index.rst ├── prospector.yml ├── .pre-commit-config.yaml ├── requirements ├── docs-lint.txt ├── onebox.txt ├── lint.txt ├── deploy.txt └── testing.txt ├── .coveragerc ├── pytest.ini ├── .gitmodules ├── setup.py ├── requirements.txt ├── .github ├── CONTRIBUTING.rst └── ISSUE_TEMPLATE.md ├── scripts └── travis │ ├── run_tests.sh │ └── install_elasticsearch.sh ├── contrib └── changelog.hbs ├── .tx └── config ├── MANIFEST.in ├── manage.py ├── .gitattributes ├── bower.json ├── prospector-more.yml └── setup.cfg /logs/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.pep8: -------------------------------------------------------------------------------- 1 | common/pep8 -------------------------------------------------------------------------------- /.flake8: -------------------------------------------------------------------------------- 1 | common/flake8 -------------------------------------------------------------------------------- /media/css/rtd-shim.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tasks.py: -------------------------------------------------------------------------------- 1 | common/tasks.py -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | common/eslintrc -------------------------------------------------------------------------------- /.isort.cfg: -------------------------------------------------------------------------------- 1 | common/isort.cfg -------------------------------------------------------------------------------- /.style.yapf: -------------------------------------------------------------------------------- 1 | common/style.yapf -------------------------------------------------------------------------------- /media/fonts: -------------------------------------------------------------------------------- 1 | static/core/font/ -------------------------------------------------------------------------------- /readthedocs/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/locale/pot: -------------------------------------------------------------------------------- 1 | ../_build/locale -------------------------------------------------------------------------------- /readthedocs/builds/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/payments/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/profiles/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/redirects/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/redirects/views.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/restapi/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/models.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/search/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/settings/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /prospector.yml: -------------------------------------------------------------------------------- 1 | common/prospector.yml -------------------------------------------------------------------------------- /readthedocs/config/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/doc_builder/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/gold/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/integrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/profiles/urls/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/projects/urls/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/projects/views/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/restapi/views/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/search/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/vcs_support/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-minimal -------------------------------------------------------------------------------- /readthedocs/analytics/vendor/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/builds/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/core/management/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/core/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/core/templatetags/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/gold/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/oauth/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/projects/backends/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/projects/management/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/fixtures/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/mocks/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/core/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/doc_builder/backends/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/integrations/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/projects/templatetags/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/redirects/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/tests/projects/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- 1 | common/pre-commit-config.yaml -------------------------------------------------------------------------------- /readthedocs/projects/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/files/test.html: -------------------------------------------------------------------------------- 1 | Something Else -------------------------------------------------------------------------------- /requirements/docs-lint.txt: -------------------------------------------------------------------------------- 1 | Sphinx 2 | rstcheck 3 | -------------------------------------------------------------------------------- /.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | omit = 3 | */**/migrations/* 4 | -------------------------------------------------------------------------------- /media/css/badge_only.css: -------------------------------------------------------------------------------- 1 | ../static/core/css/badge_only.css -------------------------------------------------------------------------------- /media/css/sphinx_rtd_theme.css: -------------------------------------------------------------------------------- 1 | ../static/core/css/theme.css -------------------------------------------------------------------------------- /media/javascript/underscore.js: -------------------------------------------------------------------------------- 1 | ../static/vendor/underscore-standalone.js -------------------------------------------------------------------------------- /media/font/fontawesome_webfont.eot: -------------------------------------------------------------------------------- 1 | ../static/core/font/fontawesome-webfont.eot -------------------------------------------------------------------------------- /media/font/fontawesome_webfont.svg: -------------------------------------------------------------------------------- 1 | ../static/core/font/fontawesome-webfont.svg -------------------------------------------------------------------------------- /media/font/fontawesome_webfont.ttf: -------------------------------------------------------------------------------- 1 | ../static/core/font/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /readthedocs/config/tests/fixtures/bad_encode_project/schaue pülaylist an.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/base_project.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | -------------------------------------------------------------------------------- /media/font/fontawesome_webfont.woff: -------------------------------------------------------------------------------- 1 | ../static/core/font/fontawesome-webfont.woff -------------------------------------------------------------------------------- /media/javascript/jquery/jquery-2.0.3.min.js: -------------------------------------------------------------------------------- 1 | ../../static/vendor/jquery-standalone.js -------------------------------------------------------------------------------- /media/javascript/readthedocs-doc-embed.js: -------------------------------------------------------------------------------- 1 | ../static/core/js/readthedocs-doc-embed.js -------------------------------------------------------------------------------- /readthedocs/rtd_tests/fixtures/sample_repo/README: -------------------------------------------------------------------------------- 1 | This is a sample git repo 2 | -------------------------------------------------------------------------------- /readthedocs/templates/search/indexes/projects/file_text.txt: -------------------------------------------------------------------------------- 1 | {{ object.content }} 2 | -------------------------------------------------------------------------------- /readthedocs/oauth/__init__.py: -------------------------------------------------------------------------------- 1 | default_app_config = 'readthedocs.oauth.apps.OAuthConfig' 2 | -------------------------------------------------------------------------------- /media/javascript/jquery/jquery-ui-1.8.24.custom.min.js: -------------------------------------------------------------------------------- 1 | ../../static/vendor/jquery-ui-standalone.js -------------------------------------------------------------------------------- /media/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: /builds/ 3 | Disallow: /sustainability/click/ 4 | -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | addopts = --reuse-db 3 | python_files = tests.py test_*.py *_tests.py 4 | -------------------------------------------------------------------------------- /readthedocs/config/__init__.py: -------------------------------------------------------------------------------- 1 | from .config import * # noqa 2 | from .parser import * # noqa 3 | -------------------------------------------------------------------------------- /readthedocs/templates/security.txt: -------------------------------------------------------------------------------- 1 | Policy: https://docs.readthedocs.io/en/latest/security.html 2 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "common"] 2 | path = common 3 | url = https://github.com/rtfd/common.git 4 | -------------------------------------------------------------------------------- /media/javascript/jquery/jquery-migrate-1.2.1.min.js: -------------------------------------------------------------------------------- 1 | ../../static/vendor/jquery-migrate-standalone.js -------------------------------------------------------------------------------- /readthedocs/projects/__init__.py: -------------------------------------------------------------------------------- 1 | default_app_config = 'readthedocs.projects.apps.ProjectsConfig' 2 | -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | 3 | 4 | # Configuration is in setup.cfg 5 | setup() 6 | -------------------------------------------------------------------------------- /docs/img/headers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/img/headers.png -------------------------------------------------------------------------------- /media/images/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/edit.png -------------------------------------------------------------------------------- /media/images/gear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/gear.png -------------------------------------------------------------------------------- /media/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/logo.png -------------------------------------------------------------------------------- /media/images/build.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/build.png -------------------------------------------------------------------------------- /media/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/favicon.ico -------------------------------------------------------------------------------- /media/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/favicon.png -------------------------------------------------------------------------------- /media/images/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/search.png -------------------------------------------------------------------------------- /readthedocs/templates/search/indexes/projects/project_text.txt: -------------------------------------------------------------------------------- 1 | {{ object.name }} 2 | {{ object.description }} 3 | -------------------------------------------------------------------------------- /media/images/badge-rtd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/badge-rtd.png -------------------------------------------------------------------------------- /media/images/gradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/gradient.png -------------------------------------------------------------------------------- /media/images/header-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/header-bg.png -------------------------------------------------------------------------------- /media/images/home-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/home-logo.png -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | -r requirements/pip.txt 2 | # just referencing for a natural `pip install -r requirements.txt` 3 | -------------------------------------------------------------------------------- /docs/img/edit_on_github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/img/edit_on_github.png -------------------------------------------------------------------------------- /docs/img/translation_bar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/img/translation_bar.png -------------------------------------------------------------------------------- /media/images/badge-revsys.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/badge-revsys.png -------------------------------------------------------------------------------- /media/images/badge-rtd-sm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/badge-rtd-sm.png -------------------------------------------------------------------------------- /media/images/close-window.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/close-window.png -------------------------------------------------------------------------------- /media/images/email-header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/email-header.png -------------------------------------------------------------------------------- /media/images/silhouette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/silhouette.png -------------------------------------------------------------------------------- /media/readthedocsbranding.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/readthedocsbranding.ai -------------------------------------------------------------------------------- /media/readthedocsbranding.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/readthedocsbranding.jpg -------------------------------------------------------------------------------- /media/images/gradient-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/gradient-light.png -------------------------------------------------------------------------------- /media/images/project-bar-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/project-bar-bg.png -------------------------------------------------------------------------------- /media/images/silhouette-sm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/silhouette-sm.png -------------------------------------------------------------------------------- /readthedocs/core/__init__.py: -------------------------------------------------------------------------------- 1 | """App initialization.""" 2 | 3 | default_app_config = 'readthedocs.core.apps.CoreAppConfig' 4 | -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/faq.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/faq.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/gsoc.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/gsoc.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/i18n.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/i18n.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/rtfd.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/rtfd.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/todo.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/todo.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/vcs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/vcs.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/faq.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/faq.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/gsoc.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/gsoc.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/i18n.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/i18n.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/rtfd.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/rtfd.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/todo.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/todo.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/vcs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/vcs.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/faq.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/faq.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/gsoc.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/gsoc.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/i18n.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/i18n.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/rtfd.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/rtfd.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/todo.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/todo.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/vcs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/vcs.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/faq.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/faq.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/gsoc.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/gsoc.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/i18n.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/i18n.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/rtfd.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/rtfd.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/todo.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/todo.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/vcs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/vcs.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/faq.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/faq.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/gsoc.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/gsoc.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/i18n.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/i18n.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/rtfd.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/rtfd.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/todo.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/todo.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/vcs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/vcs.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/faq.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/faq.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/gsoc.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/gsoc.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/i18n.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/i18n.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/rtfd.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/rtfd.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/todo.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/todo.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/vcs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/vcs.mo -------------------------------------------------------------------------------- /media/images/badge-revsys-sm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/badge-revsys-sm.png -------------------------------------------------------------------------------- /media/images/bookmark-delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/bookmark-delete.png -------------------------------------------------------------------------------- /media/images/switch-grid-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/switch-grid-icon.png -------------------------------------------------------------------------------- /media/images/switch-list-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/switch-list-icon.png -------------------------------------------------------------------------------- /.github/CONTRIBUTING.rst: -------------------------------------------------------------------------------- 1 | Please review our contributing documentation located at http://docs.readthedocs.org/en/latest/contribute.html 2 | -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/builds.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/design.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/design.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/index.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/talks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/talks.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/tests.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/tests.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/theme.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/theme.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/builds.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/design.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/design.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/index.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/talks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/talks.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/tests.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/tests.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/theme.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/theme.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/builds.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/design.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/design.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/index.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/talks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/talks.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/tests.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/tests.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/theme.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/theme.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/builds.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/design.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/design.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/index.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/talks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/talks.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/tests.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/tests.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/theme.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/theme.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/builds.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/design.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/design.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/index.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/talks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/talks.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/tests.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/tests.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/theme.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/theme.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/builds.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/design.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/design.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/index.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/talks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/talks.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/tests.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/tests.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/theme.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/theme.mo -------------------------------------------------------------------------------- /media/images/bookmark-icon-hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/bookmark-icon-hover.png -------------------------------------------------------------------------------- /media/images/bookmark-icon-wait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/bookmark-icon-wait.png -------------------------------------------------------------------------------- /readthedocs/templates/account/email/email_confirmation_signup_message.txt: -------------------------------------------------------------------------------- 1 | {% extends "account/email/email_confirmation_message.txt" %} 2 | -------------------------------------------------------------------------------- /requirements/onebox.txt: -------------------------------------------------------------------------------- 1 | -r pip.txt 2 | gunicorn 3 | #For resizing images 4 | pillow 5 | python-memcached 6 | whoosh 7 | django-redis 8 | -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api/core.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api/core.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api/index.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/canonical.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/canonical.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/changelog.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/changelog.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/features.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/features.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/install.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/privacy.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/privacy.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/redirects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/redirects.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/settings.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/settings.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/sponsors.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/sponsors.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/support.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/symlinks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/symlinks.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/versions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/versions.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/webhooks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/webhooks.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api/core.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api/core.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api/index.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/canonical.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/canonical.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/changelog.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/changelog.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/features.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/features.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/install.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/privacy.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/privacy.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/redirects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/redirects.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/settings.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/settings.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/sponsors.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/sponsors.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/support.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/symlinks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/symlinks.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/versions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/versions.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/webhooks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/webhooks.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api/core.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api/core.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api/index.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/canonical.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/canonical.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/changelog.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/changelog.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/features.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/features.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/install.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/privacy.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/privacy.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/redirects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/redirects.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/settings.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/settings.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/sponsors.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/sponsors.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/support.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/symlinks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/symlinks.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/versions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/versions.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/webhooks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/webhooks.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api/core.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api/core.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api/index.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/canonical.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/canonical.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/changelog.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/changelog.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/features.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/features.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/install.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/privacy.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/privacy.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/redirects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/redirects.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/settings.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/settings.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/sponsors.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/sponsors.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/support.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/symlinks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/symlinks.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/versions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/versions.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/webhooks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/webhooks.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api/core.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api/core.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api/index.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/canonical.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/canonical.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/changelog.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/changelog.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/features.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/features.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/install.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/privacy.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/privacy.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/redirects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/redirects.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/settings.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/settings.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/sponsors.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/sponsors.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/support.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/symlinks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/symlinks.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/versions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/versions.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/webhooks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/webhooks.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api/core.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api/core.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api/index.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/canonical.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/canonical.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/changelog.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/changelog.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/features.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/features.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/install.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/privacy.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/privacy.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/redirects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/redirects.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/settings.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/settings.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/sponsors.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/sponsors.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/support.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/symlinks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/symlinks.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/versions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/versions.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/webhooks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/webhooks.mo -------------------------------------------------------------------------------- /media/images/bookmark-icon-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/bookmark-icon-active.png -------------------------------------------------------------------------------- /media/images/bookmark-icon-default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/media/images/bookmark-icon-default.png -------------------------------------------------------------------------------- /readthedocs/analytics/__init__.py: -------------------------------------------------------------------------------- 1 | """App init""" 2 | 3 | default_app_config = 'readthedocs.analytics.apps.AnalyticsAppConfig' # noqa 4 | -------------------------------------------------------------------------------- /readthedocs/templates/account/email/email_confirmation_signup_message.html: -------------------------------------------------------------------------------- 1 | {% extends "account/email/email_confirmation_message.html" %} 2 | -------------------------------------------------------------------------------- /scripts/travis/run_tests.sh: -------------------------------------------------------------------------------- 1 | if ! [[ "$TOXENV" =~ ^(docs|lint|eslint) ]]; 2 | then 3 | args="'--including-search'" 4 | fi 5 | tox $args 6 | -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api/builds.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/contribute.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/contribute.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api/builds.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/contribute.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/contribute.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api/builds.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/contribute.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/contribute.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api/builds.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/contribute.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/contribute.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api/builds.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/contribute.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/contribute.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api/builds.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api/builds.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/contribute.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/contribute.mo -------------------------------------------------------------------------------- /readthedocs/templates/core/email/common.html: -------------------------------------------------------------------------------- 1 | {% extends 'core/email/base.html' %} 2 | 3 | {% block content %}{{ content|safe }}{% endblock %} 4 | -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api/bookmarks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api/bookmarks.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api/projects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api/projects.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/architecture.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/architecture.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/localization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/localization.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/single_version.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/single_version.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api/bookmarks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api/bookmarks.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api/projects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api/projects.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/architecture.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/architecture.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/localization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/localization.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/single_version.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/single_version.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api/bookmarks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api/bookmarks.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api/projects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api/projects.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/architecture.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/architecture.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/localization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/localization.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/single_version.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/single_version.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api/bookmarks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api/bookmarks.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api/projects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api/projects.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/architecture.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/architecture.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/localization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/localization.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/single_version.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/single_version.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api/bookmarks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api/bookmarks.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api/projects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api/projects.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/architecture.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/architecture.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/localization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/localization.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/single_version.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/single_version.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api/bookmarks.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api/bookmarks.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api/projects.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api/projects.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/architecture.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/architecture.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/localization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/localization.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/single_version.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/single_version.mo -------------------------------------------------------------------------------- /readthedocs/core/static/core/img/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/img/loader.gif -------------------------------------------------------------------------------- /readthedocs/locale/ar/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/ar/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/ca/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/ca/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/de/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/de/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/en/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/en/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/es/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/es/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/eu/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/eu/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/fr/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/fr/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/gl/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/gl/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/it/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/it/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/ja/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/ja/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/nb/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/nb/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/pl/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/pl/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/ru/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/ru/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/sk/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/sk/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/uk/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/uk/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/templates/core/email/common.txt: -------------------------------------------------------------------------------- 1 | {% extends 'core/email/base.txt' %} 2 | 3 | {% block content %}{{ content|striptags }}{% endblock %} 4 | -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api/doc_builder.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api/doc_builder.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/api/vcs_support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/api/vcs_support.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/custom_installs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/custom_installs.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/design_decisions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/design_decisions.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/getting_started.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/getting_started.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api/doc_builder.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api/doc_builder.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/api/vcs_support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/api/vcs_support.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/custom_installs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/custom_installs.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/design_decisions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/design_decisions.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/getting_started.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/getting_started.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api/doc_builder.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api/doc_builder.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/api/vcs_support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/api/vcs_support.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/custom_installs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/custom_installs.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/design_decisions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/design_decisions.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/getting_started.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/getting_started.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api/doc_builder.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api/doc_builder.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/api/vcs_support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/api/vcs_support.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/custom_installs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/custom_installs.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/design_decisions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/design_decisions.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/getting_started.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/getting_started.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api/doc_builder.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api/doc_builder.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/api/vcs_support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/api/vcs_support.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/custom_installs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/custom_installs.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/getting_started.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/getting_started.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api/doc_builder.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api/doc_builder.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/api/vcs_support.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/api/vcs_support.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/custom_installs.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/custom_installs.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/design_decisions.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/design_decisions.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/getting_started.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/getting_started.mo -------------------------------------------------------------------------------- /readthedocs/locale/pt_BR/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/pt_BR/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/vi_VN/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/vi_VN/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/zh_CN/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/zh_CN/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /readthedocs/locale/zh_TW/LC_MESSAGES/django.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/locale/zh_TW/LC_MESSAGES/django.mo -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/alternate_domains.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/alternate_domains.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/alternate_domains.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/alternate_domains.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/alternate_domains.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/alternate_domains.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/alternate_domains.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/alternate_domains.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/alternate_domains.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/alternate_domains.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/alternate_domains.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/alternate_domains.mo -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/FontAwesome.otf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/Lato-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/Lato-Bold.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/Lato-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/Lato-Italic.ttf -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/custom_installs/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/custom_installs/index.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/custom_installs/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/custom_installs/index.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/custom_installs/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/custom_installs/index.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/custom_installs/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/custom_installs/index.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/custom_installs/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/custom_installs/index.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/custom_installs/index.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/custom_installs/index.mo -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/Lato-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/Lato-Regular.ttf -------------------------------------------------------------------------------- /requirements/lint.txt: -------------------------------------------------------------------------------- 1 | -r pip.txt 2 | astroid==1.6.4 3 | pylint==1.9.1 4 | pylint-django==0.11.1 5 | pylint-celery==0.3 6 | prospector==0.12.10 7 | pyflakes==2.0.0 8 | -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/Inconsolata-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/Inconsolata-Bold.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/RobotoSlab-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/RobotoSlab-Bold.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Bold.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Bold.eot -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Bold.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Bold.woff -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Bold.woff2 -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Italic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Italic.eot -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Italic.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/RobotoSlab-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/RobotoSlab-Regular.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Italic.woff -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Italic.woff2 -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Regular.eot -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Regular.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Regular.woff -------------------------------------------------------------------------------- /readthedocs/templates/projects/samples/getting_started.rst.html: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | 3 | {% trans "Here's a place to describe how to get up and running with your project" %} 4 | -------------------------------------------------------------------------------- /docs/locale/da/LC_MESSAGES/custom_installs/customization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/da/LC_MESSAGES/custom_installs/customization.mo -------------------------------------------------------------------------------- /docs/locale/en/LC_MESSAGES/custom_installs/customization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/en/LC_MESSAGES/custom_installs/customization.mo -------------------------------------------------------------------------------- /docs/locale/es/LC_MESSAGES/custom_installs/customization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/es/LC_MESSAGES/custom_installs/customization.mo -------------------------------------------------------------------------------- /docs/locale/it/LC_MESSAGES/custom_installs/customization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/it/LC_MESSAGES/custom_installs/customization.mo -------------------------------------------------------------------------------- /docs/locale/ja/LC_MESSAGES/custom_installs/customization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/ja/LC_MESSAGES/custom_installs/customization.mo -------------------------------------------------------------------------------- /docs/locale/nb/LC_MESSAGES/custom_installs/customization.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/docs/locale/nb/LC_MESSAGES/custom_installs/customization.mo -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/Inconsolata-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/Inconsolata-Regular.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/fontawesome-webfont.eot -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/fontawesome-webfont.woff -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /readthedocs/core/static/core/font/lato/Lato-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twodayslate/readthedocs.org/master/readthedocs/core/static/core/font/lato/Lato-Regular.woff2 -------------------------------------------------------------------------------- /readthedocs/templates/account/email/password_reset_key_subject.txt: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | {% autoescape off %} 3 | {% blocktrans %}Password reset{% endblocktrans %} 4 | {% endautoescape %} 5 | -------------------------------------------------------------------------------- /docs/_ext/djangodocs.py: -------------------------------------------------------------------------------- 1 | def setup(app): 2 | app.add_crossref_type( 3 | directivename="setting", 4 | rolename="setting", 5 | indextemplate="pair: %s; setting", 6 | ) 7 | -------------------------------------------------------------------------------- /readthedocs/templates/account/email/email_confirmation_subject.txt: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | {% autoescape off %} 3 | {% blocktrans %}Verify your email address{% endblocktrans %} 4 | {% endautoescape %} 5 | -------------------------------------------------------------------------------- /docs/guides/index.rst: -------------------------------------------------------------------------------- 1 | Guides 2 | ====== 3 | 4 | These guides will help walk you through the usage of Read the Docs. 5 | 6 | 7 | .. toctree:: 8 | :maxdepth: 1 9 | :glob: 10 | 11 | * 12 | -------------------------------------------------------------------------------- /readthedocs/builds/signals.py: -------------------------------------------------------------------------------- 1 | """Build signals""" 2 | 3 | from __future__ import absolute_import 4 | import django.dispatch 5 | 6 | 7 | build_complete = django.dispatch.Signal(providing_args=['build']) 8 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/samples/installation.rst.html: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | 3 | {% blocktrans with project.name as name %}Here is where you can describe how to install {{ name }}{% endblocktrans %} 4 | -------------------------------------------------------------------------------- /docs/.rstcheck.cfg: -------------------------------------------------------------------------------- 1 | [rstcheck] 2 | ignore_directives=automodule,http:get 3 | ignore_roles=djangosetting,setting 4 | ignore_messages=(Duplicate implicit target name: ".*")|(Hyperlink target ".*" is not referenced) 5 | -------------------------------------------------------------------------------- /contrib/changelog.hbs: -------------------------------------------------------------------------------- 1 | {{header}} 2 | {{toHeader header "-"}} 3 | 4 | :Date: {{date}} 5 | 6 | {{#issues}}* `@{{user.login}} `_: {{title}} (`#{{number}} <{{html_url}}>`_) 7 | {{/issues}} 8 | -------------------------------------------------------------------------------- /readthedocs/gold/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | A Django app for Gold Membership. 3 | 4 | Gold Membership is Read the Docs' program for recurring, monthly donations. 5 | """ 6 | default_app_config = 'readthedocs.gold.apps.GoldAppConfig' 7 | -------------------------------------------------------------------------------- /requirements/deploy.txt: -------------------------------------------------------------------------------- 1 | -r pip.txt 2 | psycopg2==2.7.3.2 3 | gunicorn==19.1.0 4 | pysolr==2.0.13 5 | django-redis-cache==1.6.3 6 | django-mailgun==0.2.2 7 | 8 | hiredis==0.1.2 9 | 10 | #For resizing images 11 | pillow 12 | -------------------------------------------------------------------------------- /media/css/autocomplete.css: -------------------------------------------------------------------------------- 1 | 2 | .ui-autocomplete-input { width: 225px; } 3 | .ui-autocomplete { background: #fff; text-align: left; } 4 | .ui-state-hover { background: #eee; } 5 | .ui-menu-item a { display: block; padding: 5px 10px; } 6 | -------------------------------------------------------------------------------- /readthedocs/templates/mkdocs/readthedocs/searchbox.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 |
5 |
-------------------------------------------------------------------------------- /.tx/config: -------------------------------------------------------------------------------- 1 | [readthedocs.readthedocs] 2 | file_filter = readthedocs/locale//LC_MESSAGES/django.po 3 | source_file = readthedocs/locale/en/LC_MESSAGES/django.po 4 | source_lang = en 5 | 6 | [main] 7 | host = https://www.transifex.com 8 | type = PO 9 | 10 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/notifications/resource_usage_site.html: -------------------------------------------------------------------------------- 1 | Builds for the project {{ project.name }} are failing due to high resource 2 | usage. Please reduce your usage or consider 3 | donating to raise your resource limits. 4 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/doc_file.rst.html: -------------------------------------------------------------------------------- 1 | {% load projects_tags %}{{ file|file_heading|safe }} 2 | 3 | {{ file.content|safe }} 4 | 5 | .. toctree:: 6 | 7 | {% for file in file.children.all|annotated_tree:1 %} 8 | {{ file.denormalized_path }} 9 | {% endfor %} 10 | -------------------------------------------------------------------------------- /readthedocs/core/fields.py: -------------------------------------------------------------------------------- 1 | """Shared model fields and defaults""" 2 | 3 | from __future__ import absolute_import 4 | import binascii 5 | import os 6 | 7 | 8 | def default_token(): 9 | """Generate default value for token field""" 10 | return binascii.hexlify(os.urandom(20)).decode() 11 | -------------------------------------------------------------------------------- /readthedocs/doc_builder/signals.py: -------------------------------------------------------------------------------- 1 | """Signals for adding custom context data""" 2 | 3 | from __future__ import absolute_import 4 | 5 | import django.dispatch 6 | 7 | finalize_sphinx_context_data = django.dispatch.Signal( 8 | providing_args=['buildenv', 'context', 'response_data'] 9 | ) 10 | -------------------------------------------------------------------------------- /readthedocs/templates/core/email/base.txt: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | {% block salutation %}Hello!{% endblock %} 3 | 4 | {% block content %}{% endblock %} 5 | 6 | {% block signature %}Keep documenting, 7 | Read the Docs{% endblock %} 8 | -- 9 | {% block footer %}http://readthedocs.org{% endblock %} 10 | -------------------------------------------------------------------------------- /readthedocs/notifications/apps.py: -------------------------------------------------------------------------------- 1 | """Django app configuration for the notifications app.""" 2 | from __future__ import absolute_import 3 | from django.apps import AppConfig 4 | 5 | 6 | class NotificationsAppConfig(AppConfig): 7 | name = 'readthedocs.notifications' 8 | verbose_name = 'Notifications' 9 | -------------------------------------------------------------------------------- /readthedocs/vcs_support/backends/__init__.py: -------------------------------------------------------------------------------- 1 | """Listing of all the VCS backends.""" 2 | from __future__ import absolute_import 3 | from . import bzr, hg, git, svn 4 | 5 | backend_cls = { 6 | 'bzr': bzr.Backend, 7 | 'svn': svn.Backend, 8 | 'git': git.Backend, 9 | 'hg': hg.Backend, 10 | } 11 | -------------------------------------------------------------------------------- /readthedocs/restapi/signals.py: -------------------------------------------------------------------------------- 1 | """We define custom Django signals to trigger when a footer is rendered.""" 2 | 3 | from __future__ import absolute_import 4 | 5 | import django.dispatch 6 | 7 | footer_response = django.dispatch.Signal( 8 | providing_args=["request", "context", "response_data"] 9 | ) 10 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ## Details 2 | 3 | * Read the Docs project URL: 4 | * Build URL (if applicable): 5 | * Read the Docs username (if applicable): 6 | 7 | ## Expected Result 8 | 9 | *A description of what you wanted to happen* 10 | 11 | ## Actual Result 12 | 13 | *A description of what actually happened* 14 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/index.rst.html: -------------------------------------------------------------------------------- 1 | {% load projects_tags %}{{ project.name|heading|safe }} 2 | 3 | {{ project.description|safe }} 4 | 5 | Contents: 6 | 7 | .. toctree:: 8 | 9 | {% for file in project.get_top_level_files|annotated_tree:1 %} 10 | {{ file.denormalized_path }} 11 | {% endfor %} 12 | -------------------------------------------------------------------------------- /scripts/travis/install_elasticsearch.sh: -------------------------------------------------------------------------------- 1 | if [ $ES_DOWNLOAD_URL ] 2 | then 3 | wget ${ES_DOWNLOAD_URL} 4 | tar -xzf elasticsearch-${ES_VERSION}.tar.gz 5 | ./elasticsearch-${ES_VERSION}/bin/plugin -install elasticsearch/elasticsearch-analysis-icu/2.3.0 6 | ./elasticsearch-${ES_VERSION}/bin/elasticsearch & 7 | fi 8 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include AUTHORS.rst 2 | include .github/CONTRIBUTING.rst 3 | include README.rst 4 | include CHANGES 5 | include LICENSE 6 | include MANIFEST.in 7 | include requirements.txt 8 | recursive-include requirements *.txt 9 | recursive-include docs * 10 | recursive-include readthedocs * 11 | recursive-exclude readthedocs *.pyc 12 | -------------------------------------------------------------------------------- /readthedocs/analytics/apps.py: -------------------------------------------------------------------------------- 1 | """Django app config for the analytics app.""" 2 | 3 | from __future__ import absolute_import 4 | from django.apps import AppConfig 5 | 6 | 7 | class AnalyticsAppConfig(AppConfig): 8 | 9 | """Analytics app init code""" 10 | 11 | name = 'readthedocs.analytics' 12 | verbose_name = 'Analytics' 13 | -------------------------------------------------------------------------------- /manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import os 3 | import sys 4 | 5 | if __name__ == "__main__": 6 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "readthedocs.settings.dev") 7 | sys.path.append(os.getcwd()) 8 | 9 | from django.core.management import execute_from_command_line 10 | 11 | execute_from_command_line(sys.argv) 12 | -------------------------------------------------------------------------------- /readthedocs/core/apps.py: -------------------------------------------------------------------------------- 1 | """App configurations for core app.""" 2 | 3 | from __future__ import absolute_import 4 | from django.apps import AppConfig 5 | 6 | 7 | class CoreAppConfig(AppConfig): 8 | name = 'readthedocs.core' 9 | verbose_name = 'Core' 10 | 11 | def ready(self): 12 | import readthedocs.core.signals # noqa 13 | -------------------------------------------------------------------------------- /readthedocs/templates/core/project_list.html: -------------------------------------------------------------------------------- 1 | 2 | {% for project in project_list %} 3 |
  • 4 | {{ project.name }} 5 |
  • 6 | {% endfor %} 7 | 8 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/includes/icon_built.html: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | 3 | {% if built %} 4 | ({% trans "Built" %}) 5 | {% else %} 6 | {% if uploaded %} 7 | ({% trans "Uploaded" %}) 8 | {% else %} 9 | ({% trans "Not built" %}) 10 | {% endif %} 11 | {% endif %} 12 | -------------------------------------------------------------------------------- /readthedocs/oauth/apps.py: -------------------------------------------------------------------------------- 1 | """OAuth app config""" 2 | 3 | from django.apps import AppConfig 4 | 5 | 6 | class OAuthConfig(AppConfig): 7 | name = 'readthedocs.oauth' 8 | 9 | def ready(self): 10 | from .tasks import SyncRemoteRepositories 11 | from readthedocs.worker import app 12 | app.tasks.register(SyncRemoteRepositories) 13 | -------------------------------------------------------------------------------- /readthedocs/core/static-src/core/js/doc-embed/grokthedocs-client.js: -------------------------------------------------------------------------------- 1 | function init() { 2 | // Add Grok the Docs Client 3 | $.ajax({ 4 | url: "https://api.grokthedocs.com/static/javascript/bundle-client.js", 5 | crossDomain: true, 6 | dataType: "script", 7 | }); 8 | } 9 | 10 | 11 | module.exports = { 12 | init: init 13 | }; 14 | -------------------------------------------------------------------------------- /readthedocs/gold/apps.py: -------------------------------------------------------------------------------- 1 | """Django app configuration for the Gold Membership app.""" 2 | 3 | from __future__ import absolute_import 4 | from django.apps import AppConfig 5 | 6 | 7 | class GoldAppConfig(AppConfig): 8 | name = 'readthedocs.gold' 9 | verbose_name = 'Gold' 10 | 11 | def ready(self): 12 | import readthedocs.gold.signals # noqa 13 | -------------------------------------------------------------------------------- /readthedocs/templates/admin.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /readthedocs/templates/builds/tag_list.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/base_project.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Popular tags" %}{% endblock %} 6 | 7 | {% block content %} 8 | 13 | {% endblock %} 14 | -------------------------------------------------------------------------------- /readthedocs/search/signals.py: -------------------------------------------------------------------------------- 1 | """We define custom Django signals to trigger before executing searches.""" 2 | from __future__ import absolute_import 3 | import django.dispatch 4 | 5 | before_project_search = django.dispatch.Signal(providing_args=["body"]) 6 | before_file_search = django.dispatch.Signal(providing_args=["body"]) 7 | before_section_search = django.dispatch.Signal(providing_args=["body"]) 8 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Document global line endings settings 2 | # https://help.github.com/articles/dealing-with-line-endings/ 3 | * text eol=lf 4 | 5 | 6 | # Denote all files that are truly binary and should not be modified. 7 | *.ai binary 8 | *.jpg binary 9 | *.otf binary 10 | *.png binary 11 | *.eot binary 12 | *.ttf binary 13 | *.whl binary 14 | *.woff binary 15 | *.woff2 binary 16 | -------------------------------------------------------------------------------- /readthedocs/templates/mkdocs/readthedocs/versions.html: -------------------------------------------------------------------------------- 1 |
    2 | 3 | Read the Docs 4 | 5 | 6 |
    7 |
    8 |
    9 | -------------------------------------------------------------------------------- /requirements/testing.txt: -------------------------------------------------------------------------------- 1 | -r pip.txt 2 | 3 | django-dynamic-fixture==2.0.0 4 | 5 | # 3.6.1 and >3.2.5 is incompatible 6 | # with pytest-describe 0.11.0 7 | pytest==3.2.5 8 | pytest-django==3.1.2 9 | pytest-describe==0.11.0 10 | pytest-xdist==1.22.0 11 | apipkg==1.4 12 | execnet==1.5.0 13 | Mercurial==4.4.2 14 | yamale==1.7.0 15 | pytest-mock==1.10.0 16 | 17 | # local debugging tools 18 | datadiff 19 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/import_extra.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/import_base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

    {% trans "Project Extra Details" %}

    6 | 7 |

    8 | {% blocktrans %} 9 | Here are a few more project options that you may need to configure. 10 | {% endblocktrans %} 11 |

    12 | 13 | {{ block.super }} 14 | {% endblock %} 15 | -------------------------------------------------------------------------------- /readthedocs/templates/account/email/email_confirmation_message.txt: -------------------------------------------------------------------------------- 1 | {% extends "core/email/common.txt" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block content %} 6 | {% trans "To verify your email address and finish setting up your account, please go to:" %} 7 | 8 | {{ activate_url }} 9 | 10 | {% trans "If you did not sign up for an account with Read the Docs, you can disregard this email." %} 11 | {% endblock %} 12 | -------------------------------------------------------------------------------- /readthedocs/projects/apps.py: -------------------------------------------------------------------------------- 1 | """Project app config""" 2 | 3 | from django.apps import AppConfig 4 | 5 | 6 | class ProjectsConfig(AppConfig): 7 | name = 'readthedocs.projects' 8 | 9 | def ready(self): 10 | from readthedocs.projects import tasks 11 | from readthedocs.worker import app 12 | app.tasks.register(tasks.SyncRepositoryTask) 13 | app.tasks.register(tasks.UpdateDocsTask) 14 | -------------------------------------------------------------------------------- /readthedocs/core/utils/tasks/permission_checks.py: -------------------------------------------------------------------------------- 1 | """Permission checks for tasks""" 2 | 3 | __all__ = ('user_id_matches',) 4 | 5 | 6 | def user_id_matches(request, state, context): # pylint: disable=unused-argument 7 | user_id = context.get('user_id', None) 8 | if user_id is not None and request.user.is_authenticated(): 9 | if request.user.id == user_id: 10 | return True 11 | return False 12 | -------------------------------------------------------------------------------- /readthedocs/core/utils/tasks/__init__.py: -------------------------------------------------------------------------------- 1 | """Common task exports""" 2 | 3 | from .permission_checks import user_id_matches # noqa for unused import 4 | from .public import PublicTask # noqa 5 | from .public import TaskNoPermission # noqa 6 | from .public import permission_check # noqa 7 | from .public import get_public_task_data # noqa 8 | from .retrieve import TaskNotFound # noqa 9 | from .retrieve import get_task_data # noqa 10 | -------------------------------------------------------------------------------- /readthedocs/redirects/admin.py: -------------------------------------------------------------------------------- 1 | """Django admin configuration for the redirects app.""" 2 | 3 | from __future__ import absolute_import 4 | 5 | from django.contrib import admin 6 | from .models import Redirect 7 | 8 | 9 | class RedirectAdmin(admin.ModelAdmin): 10 | list_display = ['project', 'redirect_type', 'from_url', 'to_url'] 11 | raw_id_fields = ('project',) 12 | 13 | 14 | admin.site.register(Redirect, RedirectAdmin) 15 | -------------------------------------------------------------------------------- /readthedocs/templates/account/email/password_reset_key_message.txt: -------------------------------------------------------------------------------- 1 | {% extends "core/email/common.txt" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block content %} 6 | {% trans "A request has been made to reset your Read the Docs password. To confirm this reset request, please go to:" %} 7 | 8 | {{ password_reset_url }} 9 | 10 | {% trans "If you did not request to reset your password, you can disregard this email." %} 11 | {% endblock %} 12 | -------------------------------------------------------------------------------- /readthedocs/profiles/urls/public.py: -------------------------------------------------------------------------------- 1 | """URL patterns to view user profiles.""" 2 | 3 | from __future__ import absolute_import 4 | from django.conf.urls import url 5 | 6 | from readthedocs.profiles import views 7 | 8 | 9 | urlpatterns = [ 10 | url(r'^(?P[+\w@.-]+)/$', 11 | views.profile_detail, 12 | {'template_name': 'profiles/public/profile_detail.html'}, 13 | name='profiles_profile_detail'), 14 | ] 15 | -------------------------------------------------------------------------------- /media/images/body-bg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /media/images/header-home-bg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /readthedocs/projects/static-src/projects/css/admin.less: -------------------------------------------------------------------------------- 1 | #content .module ul.project-ads-guidelines { 2 | list-style: initial; 3 | margin-left: 1.5em; 4 | margin-bottom: 1em; 5 | } 6 | 7 | #content .module ul.project-ads-support { 8 | margin-bottom: 1em; 9 | 10 | li > form { 11 | text-align: right; 12 | 13 | input { 14 | display: inline-block; 15 | margin: 1em 0em 0em 0em; 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /readthedocs/templates/socialaccount/authentication_error.html: -------------------------------------------------------------------------------- 1 | {% extends "socialaccount/base.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block head_title %}{% trans "Social Network Login Failure" %}{% endblock %} 6 | 7 | {% block content %} 8 |

    {% trans "Social Network Login Failure" %}

    9 | 10 |

    {% trans "An error occurred while attempting to login via your social network account." %}

    11 | 12 | {{ auth_error.exception }} 13 | 14 | {% endblock %} 15 | -------------------------------------------------------------------------------- /readthedocs/projects/static/projects/css/admin.css: -------------------------------------------------------------------------------- 1 | #content .module ul.project-ads-guidelines { 2 | list-style: initial; 3 | margin-left: 1.5em; 4 | margin-bottom: 1em; 5 | } 6 | #content .module ul.project-ads-support { 7 | margin-bottom: 1em; 8 | } 9 | #content .module ul.project-ads-support li > form { 10 | text-align: right; 11 | } 12 | #content .module ul.project-ads-support li > form input { 13 | display: inline-block; 14 | margin: 1em 0em 0em 0em; 15 | } 16 | -------------------------------------------------------------------------------- /readthedocs/constants.py: -------------------------------------------------------------------------------- 1 | """Common constants""" 2 | 3 | from __future__ import absolute_import 4 | from readthedocs.builds.version_slug import VERSION_SLUG_REGEX 5 | from readthedocs.projects.constants import LANGUAGES_REGEX, PROJECT_SLUG_REGEX 6 | 7 | 8 | pattern_opts = { 9 | 'project_slug': PROJECT_SLUG_REGEX, 10 | 'lang_slug': LANGUAGES_REGEX, 11 | 'version_slug': VERSION_SLUG_REGEX, 12 | 'filename_slug': '(?:.*)', 13 | 'integer_pk': r'[\d]+', 14 | } 15 | -------------------------------------------------------------------------------- /readthedocs/projects/notifications.py: -------------------------------------------------------------------------------- 1 | """Project notifications""" 2 | 3 | from __future__ import absolute_import 4 | from readthedocs.notifications import Notification 5 | from readthedocs.notifications.constants import REQUIREMENT 6 | 7 | 8 | class ResourceUsageNotification(Notification): 9 | 10 | name = 'resource_usage' 11 | context_object_name = 'project' 12 | subject = 'Builds for {{ project.name }} are using too many resources' 13 | level = REQUIREMENT 14 | -------------------------------------------------------------------------------- /readthedocs/templates/core/filter_list.html: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | 3 | {% for obj in filter.qs %} 4 |
  • 5 | 10 |
  • 11 | {% empty %} 12 |
  • {% trans "No objects found" %}
  • 13 | {% endfor %} 14 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/project_resync_webhook.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/base_project.html" %} 2 | {% load i18n %} 3 | 4 | {% block title %}Resync webhook{% endblock title %} 5 | 6 | {% block content-header %}

    Resync webhook

    {% endblock %} 7 | 8 | {% block content %} 9 |

    {% trans "You sure?" %} O_o

    10 | 11 |
    {% csrf_token %} 12 | 13 |
    14 | {% endblock %} 15 | -------------------------------------------------------------------------------- /readthedocs/notifications/urls.py: -------------------------------------------------------------------------------- 1 | """Renames for messages_extends URLs""" 2 | 3 | from __future__ import absolute_import 4 | from django.conf.urls import url 5 | 6 | from messages_extends.views import message_mark_read, message_mark_all_read 7 | 8 | 9 | urlpatterns = [ 10 | url(r'^dismiss/(?P\d+)/$', message_mark_read, 11 | name='message_mark_read'), 12 | url(r'^dismiss/all/$', message_mark_all_read, 13 | name='message_mark_all_read'), 14 | ] 15 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/project_detail.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/base_project.html" %} 2 | 3 | {% block body_class %}project_detail{% endblock %} 4 | 5 | {% block title %}{{ project.name }}{% endblock %} 6 | 7 | {% block project_editing %} 8 | {% with overview_active="active" %} 9 | {% include "core/project_bar.html" %} 10 | {% endwith %} 11 | {% endblock %} 12 | 13 | {% block content %} 14 | {% include "core/project_details.html" %} 15 | {% endblock %} 16 | -------------------------------------------------------------------------------- /readthedocs/gold/admin.py: -------------------------------------------------------------------------------- 1 | """Django admin configuration for the Gold Membership app.""" 2 | 3 | from __future__ import absolute_import 4 | from django.contrib import admin 5 | from .models import GoldUser 6 | 7 | 8 | class GoldAdmin(admin.ModelAdmin): 9 | model = GoldUser 10 | raw_id_fields = ('user', 'projects') 11 | list_display = ('user', 'level', 'modified_date', 'subscribed') 12 | list_filter = ('level',) 13 | 14 | 15 | admin.site.register(GoldUser, GoldAdmin) 16 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/tag_list.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/base_project.html" %} 2 | {% load i18n %} 3 | 4 | {% block title %}{% trans "Popular tags" %}{% endblock %} 5 | 6 | {% block content-header %} 7 |

    {% trans "Popular tags" %}

    8 | {% endblock %} 9 | 10 | {% block content %} 11 |
      12 | {% for tag in tag_list %} 13 |
    • {{ tag.name }}
    • 14 | {% endfor %} 15 |
    16 | {% endblock %} 17 | -------------------------------------------------------------------------------- /readthedocs/templates/security.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans 'Security' %}{% endblock %} 6 | 7 | {% block content %} 8 | 9 |

    {% trans 'Security at Read the Docs' %}

    10 | 11 | {% blocktrans %} 12 | For more details on security at Read the Docs or to report a security issue, please see our security policy. 13 | {% endblocktrans %} 14 | 15 | {% endblock %} 16 | -------------------------------------------------------------------------------- /readthedocs/templates/archive/index.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content-header %} 5 |

    {% trans "Read the Docs Archive" %}

    6 | {% endblock %} 7 | 8 | {% block content %} 9 | {% for project, versions in doc_index.items %} 10 |

    {{ project }}

    11 |
      12 | {% for version in versions %} 13 |
    • 14 | {{ version }} 15 |
    • 16 | {% endfor %} 17 |
    18 | {% endfor %} 19 | {% endblock %} 20 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/email/build_failed.txt: -------------------------------------------------------------------------------- 1 | {% extends "core/email/common.txt" %} 2 | {% block salutation %}Build Failed for {{ project.name }} ({{ version.verbose_name }}){% endblock %} 3 | {% block content %} 4 | {% if build.error %} 5 | Error: 6 | {{ build.error }} 7 | {% endif %} 8 | You can find out more about this failure here: 9 | {{ build_url }} 10 | 11 | If you have questions, a good place to start is the FAQ: 12 | https://docs.readthedocs.org/en/latest/faq.html 13 | 14 | {% endblock %} 15 | -------------------------------------------------------------------------------- /readthedocs/templates/core/filter_bar.html: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | 3 | 4 |
    5 |
    6 | 7 |
    8 |

    {% trans "Filter" %}

    9 |
    10 | 11 |
    12 | 13 | 14 |
      15 | {% block filter_bar %}{% endblock %} 16 |
    17 |
    18 | 19 | 20 |
    21 |
    22 | 23 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0011_delete-url.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0010_migrate_domain_data'), 12 | ] 13 | 14 | operations = [ 15 | migrations.RemoveField( 16 | model_name='domain', 17 | name='url', 18 | ), 19 | ] 20 | -------------------------------------------------------------------------------- /readthedocs/projects/static/projects/badges/passing-flat-square.svg: -------------------------------------------------------------------------------- 1 | docspassing -------------------------------------------------------------------------------- /readthedocs/projects/static/projects/badges/failing-flat-square.svg: -------------------------------------------------------------------------------- 1 | docsfailing -------------------------------------------------------------------------------- /readthedocs/projects/static/projects/badges/unknown-flat-square.svg: -------------------------------------------------------------------------------- 1 | docsunknown -------------------------------------------------------------------------------- /readthedocs/templates/projects/import_basics.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/import_base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

    {% trans "Project Details" %}

    6 | 7 |

    8 | {% blocktrans %} 9 | To import a project, 10 | start by entering a few details about your repository. 11 | More advanced project options can be configured 12 | if you select Edit advanced project options. 13 | {% endblocktrans %} 14 |

    15 | 16 | {{ block.super }} 17 | {% endblock %} 18 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/integration_generic_webhook_detail.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/integration_webhook_detail.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block integration_details %} 6 |

    7 | {% blocktrans %} 8 | The following parameters are configured for this integration: 9 | {% endblocktrans %} 10 |

    11 | 12 |
    13 |
    14 |
    {% trans "Token" %}:
    15 |
    {{ integration.token }}
    16 |
    17 |
    18 | {% endblock %} 19 | -------------------------------------------------------------------------------- /readthedocs/projects/static/projects/badges/failing-for-the-badge.svg: -------------------------------------------------------------------------------- 1 | DOCSFAILING -------------------------------------------------------------------------------- /readthedocs/projects/static/projects/badges/passing-for-the-badge.svg: -------------------------------------------------------------------------------- 1 | DOCSPASSING -------------------------------------------------------------------------------- /readthedocs/projects/static/projects/badges/unknown-for-the-badge.svg: -------------------------------------------------------------------------------- 1 | DOCSUNKNOWN -------------------------------------------------------------------------------- /readthedocs/templates/account/email/email_confirmation_message.html: -------------------------------------------------------------------------------- 1 | {% extends "core/email/common.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block content %} 6 |

    7 | {% trans "To verify your email address and finish setting up your account, please go to:" %} 8 |

    9 | 10 |

    11 | {{ activate_url }} 12 |

    13 | 14 |

    15 | {% trans "If you did not sign up for an account with Read the Docs, you can disregard this email." %} 16 |

    17 | {% endblock %} 18 | 19 | -------------------------------------------------------------------------------- /readthedocs/templates/core/project_bar.html: -------------------------------------------------------------------------------- 1 | {% extends 'core/project_bar_base.html' %} 2 | {% load projects_tags %} 3 | {% load i18n %} 4 | 5 | {% block project-breadcrumb %} 6 | {% if request.user|is_project_user:project %} 7 | {% trans "Projects" %} > 8 | {% endif %} 9 | {% if project.superprojects.count %} 10 | {{ project.superprojects.all.0.parent.name }} > 11 | {% endif %} 12 | {% endblock %} 13 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/fixtures/sample_repo/source/index.rst: -------------------------------------------------------------------------------- 1 | .. sample documentation master file, created by 2 | sphinx-quickstart on Sat Jun 18 07:17:29 2011. 3 | You can adapt this file completely to your liking, but it should at least 4 | contain the root `toctree` directive. 5 | 6 | Welcome to sample's documentation! 7 | ================================== 8 | 9 | Contents: 10 | 11 | .. toctree:: 12 | :maxdepth: 2 13 | 14 | Indices and tables 15 | ================== 16 | 17 | * :ref:`genindex` 18 | * :ref:`modindex` 19 | * :ref:`search` 20 | 21 | -------------------------------------------------------------------------------- /readthedocs/templates/account/email/password_reset_key_message.html: -------------------------------------------------------------------------------- 1 | {% extends "core/email/common.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block content %} 6 |

    7 | {% trans "A request has been made to reset your Read the Docs password. To confirm this reset request, please go to:" %} 8 |

    9 | 10 |

    11 | {{ password_reset_url }} 12 |

    13 | 14 |

    15 | {% trans "If you did not request to reset your password, you can disregard this email." %} 16 |

    17 | {% endblock %} 18 | -------------------------------------------------------------------------------- /readthedocs/gold/signals.py: -------------------------------------------------------------------------------- 1 | """Gold model signals""" 2 | 3 | from __future__ import absolute_import 4 | from django.db.models.signals import pre_delete 5 | from django.dispatch import receiver 6 | 7 | from readthedocs.payments import utils 8 | 9 | from .models import GoldUser 10 | 11 | 12 | @receiver(pre_delete, sender=GoldUser) 13 | def delete_customer(sender, instance, **__): 14 | """On Gold subscription deletion, remove the customer from Stripe""" 15 | if sender == GoldUser and instance.stripe_id is not None: 16 | utils.delete_customer(instance.stripe_id) 17 | -------------------------------------------------------------------------------- /docs/custom_installs/index.rst: -------------------------------------------------------------------------------- 1 | Info about custom installs 2 | ========================== 3 | 4 | Read the Docs is open source, which means you can run your own version of it. There are many reasons to do this, the main one being if you want a private instance. If you have to keep everything behind a firewall or VPN, this is for you. 5 | 6 | .. warning:: Read the Docs developers do not support custom installs of our software. These documents are maintained by the community, and might not be up to date. 7 | 8 | 9 | .. toctree:: 10 | :maxdepth: 2 11 | :glob: 12 | 13 | * 14 | -------------------------------------------------------------------------------- /readthedocs/templates/profiles/private/create_profile.html: -------------------------------------------------------------------------------- 1 | {% extends "profiles/base_profile.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Create your profile" %}{% endblock %} 6 | 7 | {% block dash-nav-profile %}active{% endblock %} 8 | 9 | {% block content-header %} 10 |

    {% trans "Create your profile" %}

    11 | {% endblock %} 12 | 13 | {% block content %} 14 |
    {% csrf_token %} 15 | {{ form }} 16 | 17 |
    18 | {% endblock %} 19 | -------------------------------------------------------------------------------- /readthedocs/templates/profiles/private/edit_profile.html: -------------------------------------------------------------------------------- 1 | {% extends "profiles/base_profile_edit.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Edit your profile" %}{% endblock %} 6 | 7 | {% block profile-admin-details %}active{% endblock %} 8 | 9 | {% block edit_content_header %} {% trans "Edit your profile" %} {% endblock %} 10 | 11 | {% block edit_content %} 12 |
    {% csrf_token %} 13 | {{ form.as_p }} 14 | 15 |
    16 | {% endblock %} 17 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/project_delete.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/base_project.html" %} 2 | {% load i18n %} 3 | 4 | {% block title %}{% blocktrans with project.name as name %}Delete {{ name }}?{% endblocktrans %}{% endblock %} 5 | 6 | {% block content-header %}

    {% blocktrans with project.name as name %}Delete {{ name }}?{% endblocktrans %}

    {% endblock %} 7 | 8 | {% block content %} 9 |

    {% trans "You sure?" %} O_o

    10 | 11 |
    {% csrf_token %} 12 | 13 |
    14 | {% endblock %} 15 | -------------------------------------------------------------------------------- /readthedocs/projects/signals.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """Project signals""" 3 | 4 | from __future__ import absolute_import 5 | import django.dispatch 6 | 7 | 8 | before_vcs = django.dispatch.Signal(providing_args=["version"]) 9 | after_vcs = django.dispatch.Signal(providing_args=["version"]) 10 | 11 | before_build = django.dispatch.Signal(providing_args=["version"]) 12 | after_build = django.dispatch.Signal(providing_args=["version"]) 13 | 14 | project_import = django.dispatch.Signal(providing_args=["project"]) 15 | 16 | files_changed = django.dispatch.Signal(providing_args=["project", "files"]) 17 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/alias_edit.html: -------------------------------------------------------------------------------- 1 | {% extends "dashboard/base_dashboard.html" %} 2 | {% load i18n %} 3 | 4 | {% block title %}{% trans "Project Alias" %}{% endblock %} 5 | 6 | {% block content-header %} 7 |

    {% trans "Project Alias" %}

    8 | {% endblock %} 9 | 10 | {% block content %} 11 |

    12 | {% trans "Add an alias for a project version." %} 13 |

    14 |
    {% csrf_token %} 15 | {{ form.as_p }} 16 |

    17 |
    18 | {% endblock %} 19 | -------------------------------------------------------------------------------- /readthedocs/core/migrations/0003_add_banned_status.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('core', '0002_make_userprofile_user_a_onetoonefield'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='userprofile', 17 | name='banned', 18 | field=models.BooleanField(default=False, verbose_name='Banned'), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0003_project_cdn_enabled.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0002_add_importedfile_model'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='project', 17 | name='cdn_enabled', 18 | field=models.BooleanField(default=False, verbose_name='CDN Enabled'), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/core/static-src/core/js/readthedocs-doc-embed.js: -------------------------------------------------------------------------------- 1 | var sponsorship = require('./doc-embed/sponsorship'); 2 | var footer = require('./doc-embed/footer.js'); 3 | // grokthedocs = require('./doc-embed/grokthedocs-client'), 4 | // mkdocs = require('./doc-embed/mkdocs'), 5 | var rtddata = require('./doc-embed/rtd-data'); 6 | var sphinx = require('./doc-embed/sphinx'); 7 | var search = require('./doc-embed/search'); 8 | 9 | $(document).ready(function () { 10 | footer.init(); 11 | sphinx.init(); 12 | // grokthedocs.init(); 13 | // mkdocs.init(); 14 | search.init(); 15 | sponsorship.init(); 16 | }); 17 | -------------------------------------------------------------------------------- /readthedocs/templates/account/password_change.html: -------------------------------------------------------------------------------- 1 | {% extends "profiles/base_profile_edit.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Change Password" %}{% endblock %} 6 | 7 | {% block profile-admin-change-password %}active{% endblock %} 8 | 9 | {% block edit_content_header %} {% trans "Change Password" %} {% endblock %} 10 | 11 | {% block edit_content %} 12 |
    13 | {% csrf_token %} 14 | {{ form.as_p }} 15 | 16 |
    17 | {% endblock %} 18 | -------------------------------------------------------------------------------- /readthedocs/config/tests/utils.py: -------------------------------------------------------------------------------- 1 | from __future__ import division, print_function, unicode_literals 2 | 3 | 4 | def apply_fs(tmpdir, contents): 5 | """ 6 | Create the directory structure specified in ``contents``. It's a dict of 7 | filenames as keys and the file contents as values. If the value is another 8 | dict, it's a subdirectory. 9 | """ 10 | for filename, content in contents.items(): 11 | if hasattr(content, 'items'): 12 | apply_fs(tmpdir.mkdir(filename), content) 13 | else: 14 | file = tmpdir.join(filename) 15 | file.write(content) 16 | return tmpdir 17 | -------------------------------------------------------------------------------- /readthedocs/templates/flagging/flag_success.html: -------------------------------------------------------------------------------- 1 | {% extends "flagging/base_flagging.html" %} 2 | 3 | {% load i18n %} 4 | 5 | 6 | {% block title %}{% trans "Flagging successful" %}{% endblock %} 7 | {% block body_class %}{{ block.super }} flag_success{% endblock %} 8 | 9 | 10 | {% block content_title %} 11 |

    {% trans "Flagging successful" %}

    12 | {% endblock %} 13 | 14 | 15 | {% block content %} 16 |

    {% blocktrans %}You have successfully flagged "{{ object }}" as "{{ flag_type.title }}"{% endblocktrans %}

    17 | 18 |

    {% trans "Thank you for contributing to the quality of this site!" %}

    19 | {% endblock %} 20 | -------------------------------------------------------------------------------- /readthedocs/builds/urls.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """URL configuration for builds app.""" 3 | from __future__ import ( 4 | absolute_import, division, print_function, unicode_literals) 5 | 6 | from django.conf.urls import url 7 | 8 | from .views import builds_redirect_detail, builds_redirect_list 9 | 10 | urlpatterns = [ 11 | url( 12 | r'^(?P[-\w]+)/(?P\d+)/$', 13 | builds_redirect_detail, 14 | name='old_builds_detail', 15 | ), 16 | url( 17 | r'^(?P[-\w]+)/$', 18 | builds_redirect_list, 19 | name='old_builds_project_list', 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /readthedocs/doc_builder/templates/doc_builder/data.js.tmpl: -------------------------------------------------------------------------------- 1 | var READTHEDOCS_DATA = {{ data_json|safe }} 2 | 3 | // Old variables 4 | var doc_version = "{{ current_version }}"; 5 | var doc_slug = "{{ slug }}"; 6 | var page_name = "{{ pagename }}"; 7 | var html_theme = "{{ html_theme }}"; 8 | 9 | // mkdocs_page_input_path is only defined on the RTD mkdocs theme but it isn't 10 | // available on all pages (e.g. missing in search result) 11 | if (typeof mkdocs_page_input_path !== "undefined") { 12 | READTHEDOCS_DATA["page"] = mkdocs_page_input_path.substr( 13 | 0, mkdocs_page_input_path.lastIndexOf(READTHEDOCS_DATA.source_suffix)); 14 | } 15 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0017_add_domain_https.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0016_build-queue-name'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='domain', 17 | name='https', 18 | field=models.BooleanField(default=False, help_text='SSL is enabled for this domain', verbose_name='Use HTTPS'), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0008_add_subproject_alias_prefix.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0007_migrate_canonical_data'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='projectrelationship', 17 | name='alias', 18 | field=models.CharField(max_length=255, null=True, verbose_name='Alias', blank=True), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/restapi/templates/restapi/log.txt: -------------------------------------------------------------------------------- 1 | Read the Docs build information 2 | Build id: {{ build.id }} 3 | Project: {{ build.project_slug }} 4 | Version: {{ build.version_slug }} 5 | Commit: {{ build.commit }} 6 | Date: {{ build.date }} 7 | State: {{ build.state }} 8 | Success: {% if build.state == 'finished' %}{{ build.success }}{% else %}Unknown{% endif %} 9 | 10 | {% for command in build.commands %} 11 | [rtd-command-info] start-time: {{ command.start_time }}, end-time: {{ command.end_time }}, duration: {{ command.run_time }}, exit-code: {{ command.exit_code }} 12 | {{ command.command|safe }} 13 | {{ command.output|safe }} 14 | {% endfor %} 15 | -------------------------------------------------------------------------------- /readthedocs/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """Read the Docs.""" 3 | 4 | import os.path 5 | 6 | from future.moves.configparser import RawConfigParser 7 | 8 | # Import the Celery application before anything else happens 9 | from readthedocs.worker import app # noqa 10 | 11 | 12 | def get_version(setupcfg_path): 13 | """Return package version from setup.cfg.""" 14 | config = RawConfigParser() 15 | config.read(setupcfg_path) 16 | return config.get('metadata', 'version') 17 | 18 | 19 | __version__ = get_version( 20 | os.path.abspath( 21 | os.path.join(os.path.dirname(__file__), '..', 'setup.cfg'), 22 | ), 23 | ) 24 | -------------------------------------------------------------------------------- /readthedocs/core/management/commands/import_github.py: -------------------------------------------------------------------------------- 1 | """Resync GitHub project for user""" 2 | 3 | from __future__ import absolute_import 4 | from django.core.management.base import BaseCommand 5 | from django.contrib.auth.models import User 6 | 7 | from readthedocs.oauth.services import GitHubService 8 | 9 | 10 | class Command(BaseCommand): 11 | 12 | help = __doc__ 13 | 14 | def handle(self, *args, **options): 15 | if args: 16 | for slug in args: 17 | for service in GitHubService.for_user( 18 | User.objects.get(username=slug) 19 | ): 20 | service.sync() 21 | -------------------------------------------------------------------------------- /docs/business/index.rst: -------------------------------------------------------------------------------- 1 | Read the Docs Business Features 2 | ------------------------------- 3 | 4 | .. note:: These features are for our new business offering, `readthedocs.com`_. 5 | 6 | 7 | All of the other features outlined in these docs work on both sites. 8 | Things inside this section are specific to our business offering. 9 | 10 | The largest feature that is different is that documentation on `readthedocs.com`_ is **private**. 11 | If you have private code that you want documentation for, 12 | this is our solution. 13 | 14 | .. _readthedocs.com: https://readthedocs.com 15 | 16 | .. toctree:: 17 | 18 | organizations 19 | sharing 20 | analytics 21 | -------------------------------------------------------------------------------- /readthedocs/builds/migrations/0003_add-cold-storage.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.12 on 2017-10-09 20:14 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('builds', '0002_build_command_initial'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='build', 17 | name='cold_storage', 18 | field=models.NullBooleanField(help_text='Build steps stored outside the database.', verbose_name='Cold Storage'), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/core/permissions.py: -------------------------------------------------------------------------------- 1 | """Objects for User permission checks""" 2 | 3 | from __future__ import absolute_import 4 | 5 | from readthedocs.core.utils.extend import SettingsOverrideObject 6 | 7 | 8 | class AdminPermissionBase(object): 9 | 10 | @classmethod 11 | def is_admin(cls, user, project): 12 | return user in project.users.all() or user.is_superuser 13 | 14 | @classmethod 15 | def is_member(cls, user, obj): 16 | return user in obj.users.all() or user.is_superuser 17 | 18 | 19 | class AdminPermission(SettingsOverrideObject): 20 | _default_class = AdminPermissionBase 21 | _override_setting = 'ADMIN_PERMISSION' 22 | -------------------------------------------------------------------------------- /readthedocs/gold/templates/gold/subscription_confirm_delete.html: -------------------------------------------------------------------------------- 1 | {% extends "profiles/base_profile_edit.html" %} 2 | {% load i18n %} 3 | 4 | {% block profile-admin-gold-edit %}active{% endblock %} 5 | 6 | {% block title %}Cancel Gold{% endblock %} 7 | 8 | {% block edit_content %} 9 |

    Cancel Gold Subscription

    10 | 11 |

    12 | {% blocktrans %} 13 | Are you sure you want to cancel your subscription? 14 | {% endblocktrans %} 15 |

    16 | 17 |
    18 | {% csrf_token %} 19 | 20 |
    21 | {% endblock %} 22 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0004_add_project_container_image.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0003_project_cdn_enabled'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='project', 17 | name='container_image', 18 | field=models.CharField(max_length=64, null=True, verbose_name='Alternative container image', blank=True), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/templates/base_filter.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block nav-dashboard %} class="active"{% endblock %} 6 | 7 | {% block project_editing %} 8 | 9 | 10 |
    11 |
    12 | 13 |
    14 |

    {% trans "Filter" %}

    15 |
    16 | 17 |
    18 | 19 |
      20 | {% block filter_bar %}{% endblock %} 21 |
    22 |
    23 | 24 | 25 |
    26 |
    27 | 28 | 29 | {% endblock %} 30 | -------------------------------------------------------------------------------- /readthedocs/builds/migrations/0004_add-apiversion-proxy-model.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.12 on 2017-10-27 00:17 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('builds', '0003_add-cold-storage'), 12 | ] 13 | 14 | operations = [ 15 | migrations.CreateModel( 16 | name='APIVersion', 17 | fields=[ 18 | ], 19 | options={ 20 | 'proxy': True, 21 | }, 22 | bases=('builds.version',), 23 | ), 24 | ] 25 | -------------------------------------------------------------------------------- /readthedocs/templates/401.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load core_tags %} 3 | {% load i18n %} 4 | 5 | {% block title %} 6 | {% trans "Maze Found" %} 7 | {% endblock %} 8 | 9 | {% block header-wrapper %} 10 | {% include "error_header.html" %} 11 | {% endblock %} 12 | 13 | {% block notify %}{% endblock %} 14 | 15 | {# Hide the language select form so we don't set a CSRF cookie #} 16 | {% block language-select-form %}{% endblock %} 17 | 18 | {% block content %} 19 |

    Permission Denied

    20 |

    21 | You don't have the proper permissions to view this page. Please contact the owner of this project to request permission. 22 |

    23 | {% endblock %} 24 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0020_add-api-project-proxy.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.12 on 2017-10-27 12:56 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0019_add-features'), 12 | ] 13 | 14 | operations = [ 15 | migrations.CreateModel( 16 | name='APIProject', 17 | fields=[ 18 | ], 19 | options={ 20 | 'proxy': True, 21 | }, 22 | bases=('projects.project',), 23 | ), 24 | ] 25 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0022_add-alias-slug.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.12 on 2017-12-21 16:30 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0021_add-webhook-deprecation-feature'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AlterField( 16 | model_name='projectrelationship', 17 | name='alias', 18 | field=models.SlugField(blank=True, max_length=255, null=True, verbose_name='Alias', db_index=False), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/redirects/managers.py: -------------------------------------------------------------------------------- 1 | """Manager and queryset for the redirects app.""" 2 | 3 | from __future__ import absolute_import 4 | from django.db.models import Manager 5 | from django.db.models.query import QuerySet 6 | 7 | 8 | class RedirectQuerySet(QuerySet): 9 | def get_redirect_path(self, path, language=None, version_slug=None): 10 | for redirect in self.select_related('project'): 11 | new_path = redirect.get_redirect_path( 12 | path=path, language=language, version_slug=version_slug) 13 | if new_path: 14 | return new_path 15 | 16 | 17 | RedirectManager = Manager.from_queryset(RedirectQuerySet) 18 | -------------------------------------------------------------------------------- /readthedocs/wsgi.py: -------------------------------------------------------------------------------- 1 | """WSGI application helper""" 2 | 3 | from __future__ import absolute_import 4 | import os 5 | 6 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "readthedocs.settings.dev") 7 | 8 | # This application object is used by any WSGI server configured to use this 9 | # file. This includes Django's development server, if the WSGI_APPLICATION 10 | # setting points here. 11 | from django.core.wsgi import get_wsgi_application # pylint: disable=wrong-import-position 12 | application = get_wsgi_application() 13 | 14 | # Apply WSGI middleware here. 15 | # from helloworld.wsgi import HelloWorldApplication 16 | # application = HelloWorldApplication(application) 17 | -------------------------------------------------------------------------------- /readthedocs/search/tests/utils.py: -------------------------------------------------------------------------------- 1 | from readthedocs.search.tests.dummy_data import DUMMY_PAGE_JSON 2 | 3 | 4 | def get_search_query_from_project_file(project_slug, page_num=0, data_type='title'): 5 | """Return search query from the project's page file. 6 | Query is generated from the value of `data_type` 7 | """ 8 | 9 | all_pages = DUMMY_PAGE_JSON[project_slug] 10 | file_data = all_pages[page_num] 11 | query_data = file_data[data_type] 12 | 13 | if data_type in ['headers']: 14 | # The data is in list. slice in order to get the text 15 | query_data = query_data[0] 16 | 17 | query = query_data.split()[0] 18 | return query 19 | -------------------------------------------------------------------------------- /readthedocs/core/management/commands/update_versions.py: -------------------------------------------------------------------------------- 1 | """Rebuild documentation for all projects""" 2 | 3 | from __future__ import absolute_import 4 | from django.core.management.base import BaseCommand 5 | 6 | from readthedocs.builds.models import Version 7 | from readthedocs.projects.tasks import UpdateDocsTask 8 | 9 | 10 | class Command(BaseCommand): 11 | 12 | help = __doc__ 13 | 14 | def handle(self, *args, **options): 15 | for version in Version.objects.filter(active=True, built=False): 16 | update_docs = UpdateDocsTask() 17 | update_docs.run(version.project_id, record=False, 18 | version_pk=version.pk) 19 | -------------------------------------------------------------------------------- /readthedocs/core/migrations/0002_make_userprofile_user_a_onetoonefield.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | from django.conf import settings 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('core', '0001_initial'), 13 | ] 14 | 15 | operations = [ 16 | migrations.AlterField( 17 | model_name='userprofile', 18 | name='user', 19 | field=models.OneToOneField(related_name='profile', verbose_name='User', to=settings.AUTH_USER_MODEL), 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /readthedocs/templates/post_commit.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Build Started" %} {% endblock %} 6 | 7 | {% block content %} 8 | 9 | {% if built %} 10 | {% blocktrans %}{{ project }} is now building.{% endblocktrans %}

    11 | {# Translators: 'it' refers the current project being built. #} 12 | {% blocktrans with project.get_absolute_url as project_url %}Check it out over here.{% endblocktrans %} 13 | {% else %} 14 | {% trans "This is a post-commit hook. Set it up in your project admin to POST here, for us to update your doc changes automatically." %} 15 | {% endif %} 16 | 17 | {% endblock %} 18 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0015_add_project_allow_promos.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0014_add-state-tracking'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='project', 17 | name='allow_promos', 18 | field=models.BooleanField(default=True, help_text='Allow sponsor advertisements on my project documentation', verbose_name='Sponsor advertisements'), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0026_ad-free-option.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.13 on 2018-06-29 15:53 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0025_show-version-warning-existing-projects'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='project', 17 | name='ad_free', 18 | field=models.BooleanField(default=False, help_text='If checked, do not show advertising for this project', verbose_name='Ad-free'), 19 | ), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/templates/profiles/private/delete_account.html: -------------------------------------------------------------------------------- 1 | {% extends "profiles/base_profile_edit.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Delete Account" %}{% endblock %} 6 | 7 | {% block profile-admin-delete-account %}active{% endblock %} 8 | 9 | {% block edit_content_header %} {% trans "Delete Account" %} {% endblock %} 10 | 11 | {% block edit_content %} 12 |
    13 | {% csrf_token %} 14 | {{ form }} 15 |
    16 | {% trans "Be careful! This can not be undone!" %} 17 |
    18 | 19 |
    20 | {% endblock %} 21 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0025_show-version-warning-existing-projects.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.13 on 2018-05-07 19:25 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | 7 | 8 | def show_version_warning_to_existing_projects(apps, schema_editor): 9 | Project = apps.get_model('projects', 'Project') 10 | Project.objects.all().update(show_version_warning=True) 11 | 12 | 13 | class Migration(migrations.Migration): 14 | 15 | dependencies = [ 16 | ('projects', '0024_add-show-version-warning'), 17 | ] 18 | 19 | operations = [ 20 | migrations.RunPython(show_version_warning_to_existing_projects), 21 | ] 22 | -------------------------------------------------------------------------------- /readthedocs/oauth/admin.py: -------------------------------------------------------------------------------- 1 | """Admin configuration for the OAuth app.""" 2 | 3 | from __future__ import absolute_import 4 | from django.contrib import admin 5 | 6 | from .models import RemoteRepository, RemoteOrganization 7 | 8 | 9 | class RemoteRepositoryAdmin(admin.ModelAdmin): 10 | 11 | """Admin configuration for the RemoteRepository model.""" 12 | 13 | raw_id_fields = ('users',) 14 | 15 | 16 | class RemoteOrganizationAdmin(admin.ModelAdmin): 17 | 18 | """Admin configuration for the RemoteOrganization model.""" 19 | 20 | raw_id_fields = ('users',) 21 | 22 | 23 | admin.site.register(RemoteRepository, RemoteRepositoryAdmin) 24 | admin.site.register(RemoteOrganization, RemoteOrganizationAdmin) 25 | -------------------------------------------------------------------------------- /readthedocs/core/management/commands/pull.py: -------------------------------------------------------------------------------- 1 | """Trigger build for project slug""" 2 | 3 | from __future__ import absolute_import 4 | import logging 5 | 6 | from django.core.management.base import BaseCommand 7 | 8 | from readthedocs.builds.constants import LATEST 9 | from readthedocs.projects import tasks, utils 10 | 11 | 12 | log = logging.getLogger(__name__) 13 | 14 | 15 | class Command(BaseCommand): 16 | 17 | help = __doc__ 18 | 19 | def handle(self, *args, **options): 20 | if args: 21 | for slug in args: 22 | version = utils.version_from_slug(slug, LATEST) 23 | tasks.SyncRepositoryTask().run( 24 | version.pk, 25 | ) 26 | -------------------------------------------------------------------------------- /readthedocs/core/static-src/core/js/site.js: -------------------------------------------------------------------------------- 1 | /* Site-specific javascript */ 2 | 3 | // Notifications that can both dismiss and point to a separate URL 4 | module.exports.handle_notification_dismiss = function () { 5 | $(document).ready(function () { 6 | $('ul.notifications li.notification > a').click(function (ev) { 7 | var url = $(this).attr('href'); 8 | var dismiss_url = $(this).parent().attr('data-dismiss-url'); 9 | if (dismiss_url) { 10 | ev.preventDefault(); 11 | $.get(dismiss_url, function (data, text_status, xhr) { 12 | window.location.href = url; 13 | }); 14 | } 15 | else { 16 | $(this).hide(); 17 | } 18 | }); 19 | }); 20 | }; 21 | -------------------------------------------------------------------------------- /readthedocs/core/templatetags/privacy_tags.py: -------------------------------------------------------------------------------- 1 | """Template tags to query projects by privacy.""" 2 | 3 | from __future__ import absolute_import 4 | 5 | from django import template 6 | 7 | from readthedocs.core.permissions import AdminPermission 8 | from readthedocs.projects.models import Project 9 | 10 | 11 | register = template.Library() 12 | 13 | 14 | @register.filter 15 | def is_admin(user, project): 16 | return AdminPermission.is_admin(user, project) 17 | 18 | 19 | @register.simple_tag(takes_context=True) 20 | def get_public_projects(context, user): 21 | projects = Project.objects.for_user_and_viewer(user=user, viewer=context['request'].user) 22 | context['public_projects'] = projects 23 | return '' 24 | -------------------------------------------------------------------------------- /media/humans.txt: -------------------------------------------------------------------------------- 1 | Original Authors 2 | =============== 3 | * Charlie Leifer 4 | * Eric Holscher 5 | * Bobby Grace 6 | 7 | Operations Team 8 | =============== 9 | 10 | * Eric Holscher 11 | * Chris McDonald 12 | 13 | Awesome Contributors 14 | ==================== 15 | * Eric Pierce 16 | * Chris Dickinson 17 | * Jonas Obrist 18 | * Issac Kelly 19 | * Dan Colish 20 | * Jacob Kaplan-Moss 21 | * Paul McMillan 22 | * Daniel Greenfeld 23 | * Chris McDonald 24 | * Daniel Graña 25 | * Alex Gaynor 26 | * Richard Boulton 27 | * Mark Sandstrom 28 | * Thomas Purchas 29 | * Dustin J. Mitchell 30 | * Michael Kurze 31 | * Dag Odenhall 32 | * Jacob Burch 33 | 34 | For a list of all the contributions: https://github.com/rtfd/readthedocs.org/contributors 35 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0018_fix-translation-model.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | import django.db.models.deletion 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('projects', '0017_add_domain_https'), 13 | ] 14 | 15 | operations = [ 16 | migrations.AlterField( 17 | model_name='project', 18 | name='main_language_project', 19 | field=models.ForeignKey(related_name='translations', on_delete=django.db.models.deletion.SET_NULL, blank=True, to='projects.Project', null=True), 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /readthedocs/templates/500.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block title %} 5 | {% trans "Server Error" %} 6 | {% endblock %} 7 | 8 | {% block header-wrapper %} 9 | {% include "error_header.html" %} 10 | {% endblock %} 11 | 12 | {% block notify %}{% endblock %} 13 | 14 | {# Hide the language select form so we don't set a CSRF cookie #} 15 | {% block language-select-form %}{% endblock %} 16 | 17 | {% block content %} 18 |
    19 |           .
    20 |          ":"
    21 |        ___:____     |"\/"|
    22 |      ,'        `.    \  /
    23 |      |  O        \___/  |
    24 |    ~^~^~^~^~^~^~^~^~^~^~^~^~
    25 | 
    26 |    Fail.  Check back in a bit!
    27 | 
    28 |   
    29 | {% endblock %} 30 | -------------------------------------------------------------------------------- /readthedocs/worker.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """Celery worker application instantiation""" 3 | 4 | from __future__ import absolute_import, unicode_literals 5 | 6 | import os 7 | 8 | from celery import Celery 9 | from django.conf import settings 10 | 11 | 12 | def create_application(): 13 | """Create a Celery application using Django settings.""" 14 | os.environ.setdefault( 15 | 'DJANGO_SETTINGS_MODULE', 16 | 'readthedocs.settings.dev', 17 | ) 18 | 19 | application = Celery(settings.CELERY_APP_NAME) 20 | application.config_from_object('django.conf:settings') 21 | application.autodiscover_tasks(None) 22 | return application 23 | 24 | 25 | app = create_application() # pylint: disable=invalid-name 26 | -------------------------------------------------------------------------------- /readthedocs/config/find.py: -------------------------------------------------------------------------------- 1 | """Helper functions to search files.""" 2 | 3 | from __future__ import division, print_function, unicode_literals 4 | 5 | import os 6 | 7 | 8 | def find_all(path, filenames): 9 | """Find all files in ``path`` that match in ``filenames``.""" 10 | path = os.path.abspath(path) 11 | for root, dirs, files in os.walk(path, topdown=True): 12 | dirs.sort() 13 | for filename in filenames: 14 | if filename in files: 15 | yield os.path.abspath(os.path.join(root, filename)) 16 | 17 | 18 | def find_one(path, filenames): 19 | """Find the first file in ``path`` that match in ``filenames``.""" 20 | for _path in find_all(path, filenames): 21 | return _path 22 | return '' 23 | -------------------------------------------------------------------------------- /readthedocs/core/templates/core/ko_form_field.html: -------------------------------------------------------------------------------- 1 | {% if field.is_hidden %} 2 | {{ field }} 3 | {% else %} 4 | 5 | {{ field.errors }} 6 | {% if not skip_errorlist and 'data-bind' in field.field.widget.attrs %} 7 | 13 | {% endif %} 14 |

    15 | 16 | {{ field }} 17 | {% if field.help_text %} 18 | {{ field.help_text }} 19 | {% endif %} 20 |

    21 | 22 | {% endif %} 23 | -------------------------------------------------------------------------------- /readthedocs/projects/templatetags/projects_tags.py: -------------------------------------------------------------------------------- 1 | """Project template tags and filters""" 2 | 3 | from __future__ import absolute_import 4 | from django import template 5 | 6 | from readthedocs.projects.version_handling import comparable_version 7 | 8 | 9 | register = template.Library() 10 | 11 | 12 | @register.filter 13 | def sort_version_aware(versions): 14 | """Takes a list of versions objects and sort them using version schemes""" 15 | return sorted( 16 | versions, 17 | key=lambda version: comparable_version(version.verbose_name), 18 | reverse=True) 19 | 20 | 21 | @register.filter 22 | def is_project_user(user, project): 23 | """Return if user is a member of project.users""" 24 | return user in project.users.all() 25 | -------------------------------------------------------------------------------- /readthedocs/templates/core/version_list.html: -------------------------------------------------------------------------------- 1 |
    2 |
      3 | {% for version in versions %} 4 |
    • 5 | {# Link to the docs #} 6 | {{ version.slug }} 7 | {% if request.user in project.users.all %} 8 | {{ version.get_privacy_level_display }} 9 | {% endif %} 10 | {% if request.user in project.users.all %} 11 | 14 | {% endif %} 15 |
    • 16 | {% endfor %} 17 |
    18 |
    19 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/domain_confirm_delete.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/project_edit_base.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Edit Domains" %}{% endblock %} 6 | 7 | {% block nav-dashboard %} class="active"{% endblock %} 8 | 9 | {% block editing-option-edit-proj %}class="active"{% endblock %} 10 | 11 | {% block project-domains-active %}active{% endblock %} 12 | 13 | {% block project_edit_content_header %}{% trans "Confirm Delete" %}{% endblock %} 14 | 15 | {% block project_edit_content %} 16 |
    {% csrf_token %} 17 |

    Are you sure you want to delete {{ object.domain }}?

    18 | 19 |
    20 | 21 | {% endblock %} 22 | 23 | 24 | -------------------------------------------------------------------------------- /readthedocs/projects/backends/views.py: -------------------------------------------------------------------------------- 1 | """ 2 | Project views loaded by configuration settings 3 | 4 | Use these views instead of calling the views directly, in order to allow for 5 | settings override of the view class. 6 | """ 7 | 8 | from __future__ import absolute_import 9 | from readthedocs.core.utils.extend import SettingsOverrideObject 10 | from readthedocs.projects.views import private 11 | 12 | 13 | # Project Import Wizard 14 | class ImportWizardView(SettingsOverrideObject): 15 | _default_class = private.ImportWizardView 16 | _override_setting = 'PROJECT_IMPORT_VIEW' 17 | 18 | 19 | # Project demo import 20 | class ImportDemoView(SettingsOverrideObject): 21 | _default_class = private.ImportDemoView 22 | _override_setting = 'PROJECT_IMPORT_DEMO_VIEW' 23 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/tests/test_search_json_parsing.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import 2 | import os 3 | 4 | from django.test import TestCase 5 | 6 | from readthedocs.search.parse_json import process_file 7 | 8 | base_dir = os.path.dirname(os.path.dirname(__file__)) 9 | 10 | class TestHacks(TestCase): 11 | 12 | def test_h2_parsing(self): 13 | data = process_file( 14 | os.path.join( 15 | base_dir, 16 | 'files/api.fjson', 17 | ) 18 | ) 19 | self.assertEqual(data['sections'][1]['id'], 'a-basic-api-client-using-slumber') 20 | # Only capture h2's after the first section 21 | for obj in data['sections'][1:]: 22 | self.assertEqual(obj['content'][:5], '\n

    ') 23 | -------------------------------------------------------------------------------- /readthedocs/core/fixtures/flag_types.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "pk": 1, 4 | "model": "flagging.flagtype", 5 | "fields": { 6 | "description": "This item is inappropriate to the purpose of the site", 7 | "slug": "inappropriate", 8 | "title": "Inappropriate" 9 | } 10 | }, 11 | { 12 | "pk": 2, 13 | "model": "flagging.flagtype", 14 | "fields": { 15 | "description": "This item is spam", 16 | "slug": "spam", 17 | "title": "Spam" 18 | } 19 | }, 20 | { 21 | "pk": 3, 22 | "model": "flagging.flagtype", 23 | "fields": { 24 | "description": "These docs are a duplicate of other, official docs, on the site", 25 | "slug": "duplicate", 26 | "title": "Duplicate" 27 | } 28 | } 29 | ] 30 | -------------------------------------------------------------------------------- /readthedocs/oauth/migrations/0008_add-project-relation.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.12 on 2017-03-22 20:10 3 | from __future__ import unicode_literals 4 | 5 | from __future__ import absolute_import 6 | from django.db import migrations, models 7 | import django.db.models.deletion 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('oauth', '0007_org_slug_nonunique'), 14 | ] 15 | 16 | operations = [ 17 | migrations.AddField( 18 | model_name='remoterepository', 19 | name='project', 20 | field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='remote_repository', to='projects.Project'), 21 | ), 22 | ] 23 | -------------------------------------------------------------------------------- /readthedocs/core/static/core/js/site.js: -------------------------------------------------------------------------------- 1 | require=function o(u,f,a){function c(r,t){if(!f[r]){if(!u[r]){var i="function"==typeof require&&require;if(!t&&i)return i(r,!0);if(s)return s(r,!0);var n=new Error("Cannot find module '"+r+"'");throw n.code="MODULE_NOT_FOUND",n}var e=f[r]={exports:{}};u[r][0].call(e.exports,function(t){return c(u[r][1][t]||t)},e,e.exports,o,u,f,a)}return f[r].exports}for(var s="function"==typeof require&&require,t=0;t a").click(function(t){var n=$(this).attr("href"),r=$(this).parent().attr("data-dismiss-url");r?(t.preventDefault(),$.get(r,function(t,r,i){window.location.href=n})):$(this).hide()})})}},{}]},{},[]); -------------------------------------------------------------------------------- /readthedocs/core/backends.py: -------------------------------------------------------------------------------- 1 | """Email backends for core app.""" 2 | 3 | from __future__ import absolute_import 4 | import smtplib 5 | 6 | from django.core.mail.utils import DNS_NAME 7 | from django.core.mail.backends.smtp import EmailBackend 8 | 9 | 10 | class SSLEmailBackend(EmailBackend): 11 | 12 | def open(self): 13 | if self.connection: 14 | return False 15 | try: 16 | self.connection = smtplib.SMTP_SSL(self.host, self.port, 17 | local_hostname=DNS_NAME.get_fqdn()) 18 | if self.username and self.password: 19 | self.connection.login(self.username, self.password) 20 | return True 21 | except Exception: 22 | if not self.fail_silently: 23 | raise 24 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/project_advanced.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/project_edit_base.html" %} 2 | {% load i18n %} 3 | 4 | {% block project-advanced-active %}active{% endblock %} 5 | {% block nav-dashboard %} class="active"{% endblock %} 6 | 7 | {% block title %}{% trans "Edit Advanced Project Settings" %}{% endblock %} 8 | 9 | {% block editing-option-edit-proj %}class="active"{% endblock %} 10 | {% block editing-option-view %}active{% endblock %} 11 | 12 | {% block project_edit_content_header %}{% trans "Advanced Settings" %}{% endblock %} 13 | 14 | {% block project_edit_content %} 15 |
    {% csrf_token %} 16 | {{ form.as_p }} 17 |

    18 | 19 |

    20 |
    21 | {% endblock %} 22 | -------------------------------------------------------------------------------- /docs/api/index.rst: -------------------------------------------------------------------------------- 1 | Public API 2 | ========== 3 | 4 | This section of the documentation details the public API 5 | usable to get details of projects, builds, versions and other details 6 | from Read the Docs. 7 | 8 | .. warning:: 9 | 10 | Originally, the Read the Docs API allowed connections over insecure HTTP. 11 | Starting in January 2019, requests over HTTP 12 | will be automatically redirected to HTTPS 13 | and non-GET/HEAD requests over insecure HTTP will fail. 14 | 15 | .. tip:: 16 | 17 | It is a good idea to put your email address, application name, 18 | or Read the Docs username into the user agent header of your requests. 19 | That way the Read the Docs' team can contact you in the event of issues. 20 | 21 | 22 | .. toctree:: 23 | :maxdepth: 3 24 | 25 | v2 26 | v1 27 | -------------------------------------------------------------------------------- /readthedocs/gold/urls.py: -------------------------------------------------------------------------------- 1 | """Gold subscription URLs""" 2 | 3 | from __future__ import absolute_import 4 | from django.conf.urls import url 5 | 6 | from readthedocs.gold import views 7 | from readthedocs.projects.constants import PROJECT_SLUG_REGEX 8 | 9 | 10 | urlpatterns = [ 11 | url(r'^$', views.DetailGoldSubscription.as_view(), name='gold_detail'), 12 | url(r'^subscription/$', views.UpdateGoldSubscription.as_view(), 13 | name='gold_subscription'), 14 | url(r'^cancel/$', views.DeleteGoldSubscription.as_view(), name='gold_cancel'), 15 | url(r'^projects/$', views.projects, name='gold_projects'), 16 | url((r'^projects/remove/(?P{project_slug})/$' 17 | .format(project_slug=PROJECT_SLUG_REGEX)), 18 | views.projects_remove, 19 | name='gold_projects_remove'), 20 | ] 21 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/integration_form.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/project_edit_base.html" %} 2 | 3 | {% load i18n %} 4 | 5 | {% block title %}{% trans "Integrations" %}{% endblock %} 6 | 7 | {% block nav-dashboard %} class="active"{% endblock %} 8 | 9 | {% block editing-option-edit-integrations %}class="active"{% endblock %} 10 | 11 | {% block project-integrations-active %}active{% endblock %} 12 | {% block project_edit_content_header %}{% trans "Integrations" %}{% endblock %} 13 | 14 | {% block project_edit_content %} 15 |
    19 | {% csrf_token %} 20 | {{ form.as_p }} 21 | 22 |
    23 | {% endblock %} 24 | -------------------------------------------------------------------------------- /bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "readthedocs", 3 | "version": "0.0.0", 4 | "authors": [ 5 | "Anthony Johnson " 6 | ], 7 | "description": "Read the Docs - Frontend", 8 | "license": "MIT", 9 | "ignore": [ 10 | "**/.*", 11 | "node_modules", 12 | "bower_components", 13 | "test", 14 | "tests" 15 | ], 16 | "dependencies": { 17 | "jquery": "2.0.3", 18 | "underscore": "~1.7.0", 19 | "readthedocs-client": "https://github.com/agjohnson/readthedocs-client-js.git", 20 | "sphinx-rtd-theme": "https://github.com/rtfd/sphinx_rtd_theme.git#0.3.1", 21 | "knockout": "~3.3.0", 22 | "jquery.payment": "~1.3.0", 23 | "jquery-migrate": "~1.2.1", 24 | "jquery-ui": "1.8.23", 25 | "xss": "~0.3.1" 26 | }, 27 | "resolutions": { 28 | "jquery": "2.0.3" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /readthedocs/payments/static/payments/css/form.css: -------------------------------------------------------------------------------- 1 | /* Payment form CSS */ 2 | 3 | form.payment input#id_cc_number { 4 | height: 23px; 5 | margin: 3px 0px 10px; 6 | background: url('/static/donate/img/creditcard.png'); 7 | background-repeat: no-repeat; 8 | background-position: -0px -128px; 9 | padding-left: 40px; 10 | } 11 | 12 | form.payment input#id_cc_number.visa { 13 | background-position: -40px -96px; 14 | } 15 | form.payment input#id_cc_number.mastercard { 16 | background-position: -80px -64px; 17 | } 18 | form.payment input#id_cc_number.amex { 19 | background-position: -120px -32px; 20 | } 21 | form.payment input#id_cc_number.discover { 22 | background-position: -160px -0px; 23 | } 24 | 25 | form.payment input#id_cc_expiry { width: 150px; } 26 | form.payment input#id_cc_cvv { width: 100px; } 27 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/project_create.html: -------------------------------------------------------------------------------- 1 | {% extends "dashboard/base_dashboard.html" %} 2 | {% load i18n %} 3 | 4 | {% block dash-nav-create %}active{% endblock %} 5 | 6 | {% block title %}{% trans "Create a new project" %}{% endblock %} 7 | 8 | {% block content-header %} 9 |

    {% trans "Create a New Project" %}

    10 | {% endblock %} 11 | 12 | {% block content %} 13 |

    14 | {% trans "Create new documentation here. If you already have docs in a public repository," %} 15 | {% trans "import an existing project" %}. 16 |

    17 |
    {% csrf_token %} 18 | {{ form.as_p }} 19 |

    20 |
    21 | {% endblock %} 22 | -------------------------------------------------------------------------------- /readthedocs/core/mixins.py: -------------------------------------------------------------------------------- 1 | """Common mixin classes for views""" 2 | 3 | from __future__ import absolute_import 4 | from builtins import object 5 | from vanilla import ListView 6 | from django.contrib.auth.decorators import login_required 7 | from django.utils.decorators import method_decorator 8 | 9 | 10 | class ListViewWithForm(ListView): 11 | 12 | """List view that also exposes a create form""" 13 | 14 | def get_context_data(self, **kwargs): 15 | context = super(ListViewWithForm, self).get_context_data(**kwargs) 16 | context['form'] = self.get_form(data=None, files=None) 17 | return context 18 | 19 | 20 | class LoginRequiredMixin(object): 21 | 22 | @method_decorator(login_required) 23 | def dispatch(self, *args, **kwargs): 24 | return super(LoginRequiredMixin, self).dispatch(*args, **kwargs) 25 | -------------------------------------------------------------------------------- /readthedocs/search/tests/dummy_data.py: -------------------------------------------------------------------------------- 1 | import json 2 | import os 3 | 4 | _DATA_FILES = { 5 | 'pipeline': ['installation.json', 'signals.json'], 6 | 'kuma': ['documentation.json', 'docker.json'], 7 | 'docs': ['story.json', 'wiping.json'], 8 | } 9 | 10 | 11 | def _get_dummy_json(): 12 | dictionary = {} 13 | for key, value in _DATA_FILES.items(): 14 | data = [] 15 | for file_name in value: 16 | current_path = os.path.abspath(os.path.dirname(__file__)) 17 | path = os.path.join(current_path, "data", key, file_name) 18 | with open(path) as f: 19 | content = json.load(f) 20 | data.append(content) 21 | 22 | dictionary[key] = data 23 | 24 | return dictionary 25 | 26 | 27 | DUMMY_PAGE_JSON = _get_dummy_json() 28 | ALL_PROJECTS = DUMMY_PAGE_JSON.keys() 29 | -------------------------------------------------------------------------------- /readthedocs/integrations/utils.py: -------------------------------------------------------------------------------- 1 | """Integration utility functions.""" 2 | 3 | 4 | def normalize_request_payload(request): 5 | """ 6 | Normalize the request body, hopefully to JSON. 7 | 8 | This will attempt to return a JSON body, backing down to a string body next. 9 | 10 | :param request: HTTP request object 11 | :type request: django.http.HttpRequest 12 | :returns: The request body as a string 13 | :rtype: str 14 | """ 15 | request_payload = getattr(request, 'data', {}) 16 | if request.content_type != 'application/json': 17 | # Here, request_body can be a dict or a MergeDict. Probably best to 18 | # normalize everything first 19 | try: 20 | request_payload = dict(list(request_payload.items())) 21 | except AttributeError: 22 | pass 23 | return request_payload 24 | -------------------------------------------------------------------------------- /readthedocs/rtd_tests/files/conf.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | 3 | from __future__ import division, print_function, unicode_literals 4 | 5 | from datetime import datetime 6 | 7 | from recommonmark.parser import CommonMarkParser 8 | 9 | extensions = [] 10 | templates_path = ['/tmp/sphinx-template-dir', 'templates', '_templates', '.templates'] 11 | source_suffix = ['.rst', '.md'] 12 | source_parsers = { 13 | '.md': CommonMarkParser, 14 | } 15 | master_doc = 'index' 16 | project = u'Pip' 17 | copyright = str(datetime.now().year) 18 | version = '0.8.1' 19 | release = '0.8.1' 20 | exclude_patterns = ['_build'] 21 | pygments_style = 'sphinx' 22 | htmlhelp_basename = 'pip' 23 | html_theme = 'sphinx_rtd_theme' 24 | file_insertion_enabled = False 25 | latex_documents = [ 26 | ('index', 'pip.tex', u'Pip Documentation', 27 | u'', 'manual'), 28 | ] 29 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/includes/flagging.html: -------------------------------------------------------------------------------- 1 | {% load flagging %} 2 | {% load i18n %} 3 | 4 | {% if request.user.is_authenticated %} 5 |

    6 | {# Translators: After 'Flag this project as' follows either 'Inappropriate', 'Spam' and/or 'Duplicate' #} 7 | {% trans "Flag this project as" %} ( 8 | {% if not project|flagged_with:"inappropriate" %}{% trans "Inappropriate" %} |{% endif %} 9 | {% if not project|flagged_with:"spam" %}{% trans "Spam" %} |{% endif %} 10 | {% if not project|flagged_with:"duplicate" %}{% trans "Duplicate" %}{% endif %} 11 | ) 12 |

    13 | {% endif %} 14 | -------------------------------------------------------------------------------- /docs/business/analytics.rst: -------------------------------------------------------------------------------- 1 | Analytics 2 | --------- 3 | 4 | 5 | .. note:: These features are still being developed, and aren't deployed yet. 6 | 7 | Analytics lets you see *who* is viewing *which* documents. 8 | This allows you to understand how your documentation is being used, 9 | so you can focus on expanding and updating parts people are reading most. 10 | 11 | 12 | Viewing 13 | ~~~~~~~ 14 | 15 | Each project page has a listing of the number of views that it has seen. 16 | You can click through here to inspect more information about who is viewing, 17 | and when they are looking at things. 18 | 19 | You can also view your Analytics data in your documentation pages. 20 | There is a button in the Read the Docs flyout what will overlay analytics information. 21 | This will let you understand how users are using docs, 22 | in context of the actual documentation. 23 | -------------------------------------------------------------------------------- /prospector-more.yml: -------------------------------------------------------------------------------- 1 | inherits: prospector 2 | 3 | strictness: high 4 | 5 | ignore-paths: 6 | - constants.py 7 | - urls.py 8 | - wsgi.py 9 | - acl 10 | - api 11 | - betterversion 12 | - builds 13 | - cdn 14 | - comments 15 | - core 16 | - djangome 17 | - doc_builder 18 | - donate 19 | - gold 20 | - integrations 21 | - locale 22 | - notifications 23 | - oauth 24 | - payments 25 | - privacy 26 | - profiles 27 | - projects 28 | - redirects 29 | - restapi 30 | - rtd_tests 31 | - search 32 | - settings 33 | - tastyapi 34 | - templates 35 | - vcs_support 36 | 37 | pylint: 38 | options: 39 | docstring-min-length: 20 40 | dummy-variables-rgx: '_$|__$|dummy' 41 | max-line-length: 100 42 | disable: 43 | - logging-format-interpolation 44 | - too-many-arguments 45 | 46 | pep257: 47 | run: true 48 | -------------------------------------------------------------------------------- /readthedocs/oauth/migrations/0007_org_slug_nonunique.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('oauth', '0006_move_oauth_source'), 12 | ] 13 | 14 | operations = [ 15 | migrations.RemoveField( 16 | model_name='remoteorganization', 17 | name='source', 18 | ), 19 | migrations.RemoveField( 20 | model_name='remoterepository', 21 | name='source', 22 | ), 23 | migrations.AlterField( 24 | model_name='remoteorganization', 25 | name='slug', 26 | field=models.CharField(max_length=255, verbose_name='Slug'), 27 | ), 28 | ] 29 | -------------------------------------------------------------------------------- /readthedocs/profiles/urls/private.py: -------------------------------------------------------------------------------- 1 | """URL patterns for views to modify user profiles.""" 2 | 3 | from __future__ import absolute_import 4 | from django.conf.urls import url 5 | 6 | from readthedocs.core.forms import UserProfileForm 7 | from readthedocs.profiles import views 8 | 9 | urlpatterns = [ 10 | url(r'^create/', views.create_profile, 11 | { 12 | 'form_class': UserProfileForm, 13 | }, 14 | name='profiles_profile_create'), 15 | url(r'^edit/', views.edit_profile, 16 | { 17 | 'form_class': UserProfileForm, 18 | 'template_name': 'profiles/private/edit_profile.html', 19 | }, 20 | name='profiles_profile_edit'), 21 | url(r'^delete/', views.delete_account, name='delete_account'), 22 | url(r'^advertising/$', views.account_advertising, name='account_advertising'), 23 | ] 24 | -------------------------------------------------------------------------------- /readthedocs/templates/projects/upload_html.html: -------------------------------------------------------------------------------- 1 | {% extends "projects/project_edit_base.html" %} 2 | {% load i18n %} 3 | 4 | {% block title %}{% trans "Import HTML Documentation" %}{% endblock %} 5 | 6 | {% block project-versions-active %}active{% endblock %} 7 | {% block project_edit_content_header %}{{ project.name }} {% trans "Versions" %} / {% trans "Upload HTML" %}{% endblock %} 8 | 9 | {% block project_edit_content %} 10 |

    11 | {% trans "Use this to upload pre-existing HTML documentation for versions that don't build correctly anymore." %} 12 |

    13 |
    {% csrf_token %} 14 | {{ form.as_p }} 15 |

    16 |
    17 | {% endblock %} 18 | -------------------------------------------------------------------------------- /readthedocs/core/management/commands/set_metadata.py: -------------------------------------------------------------------------------- 1 | """Generate metadata for all projects""" 2 | 3 | from __future__ import absolute_import 4 | import logging 5 | 6 | from django.core.management.base import BaseCommand 7 | 8 | from readthedocs.projects import tasks 9 | from readthedocs.projects.models import Project 10 | from readthedocs.core.utils import broadcast 11 | 12 | log = logging.getLogger(__name__) 13 | 14 | 15 | class Command(BaseCommand): 16 | 17 | help = __doc__ 18 | 19 | def handle(self, *args, **options): 20 | queryset = Project.objects.all() 21 | for p in queryset: 22 | log.info("Generating metadata for %s", p) 23 | try: 24 | broadcast(type='app', task=tasks.update_static_metadata, args=[p.pk]) 25 | except Exception: 26 | log.exception('Build failed for %s', p) 27 | -------------------------------------------------------------------------------- /readthedocs/templates/core/widesearchbar.html: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | 3 | 4 |

    {% trans "Search all the docs" %}

    5 | 6 | -------------------------------------------------------------------------------- /readthedocs/projects/migrations/0014_add-state-tracking.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from __future__ import absolute_import 5 | from django.db import models, migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('projects', '0013_add-container-limits'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AddField( 16 | model_name='project', 17 | name='has_valid_clone', 18 | field=models.BooleanField(default=False, help_text='This project has been successfully cloned'), 19 | ), 20 | migrations.AddField( 21 | model_name='project', 22 | name='has_valid_webhook', 23 | field=models.BooleanField(default=False, help_text='This project has been build with a webhook'), 24 | ), 25 | ] 26 | -------------------------------------------------------------------------------- /readthedocs/oauth/querysets.py: -------------------------------------------------------------------------------- 1 | """Managers for OAuth models""" 2 | 3 | from __future__ import absolute_import 4 | 5 | from django.db import models 6 | 7 | from readthedocs.core.utils.extend import SettingsOverrideObject 8 | 9 | 10 | class RelatedUserQuerySetBase(models.QuerySet): 11 | 12 | """For models with relations through :py:class:`User`""" 13 | 14 | def api(self, user=None): 15 | """Return objects for user""" 16 | if not user.is_authenticated(): 17 | return self.none() 18 | return self.filter(users=user) 19 | 20 | 21 | class RelatedUserQuerySet(SettingsOverrideObject): 22 | _default_class = RelatedUserQuerySetBase 23 | _override_setting = 'RELATED_USER_MANAGER' 24 | 25 | 26 | class RemoteRepositoryQuerySet(RelatedUserQuerySet): 27 | pass 28 | 29 | 30 | class RemoteOrganizationQuerySet(RelatedUserQuerySet): 31 | pass 32 | -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | [metadata] 2 | name = readthedocs 3 | version = 2.6.1 4 | license = MIT 5 | description = Read the Docs builds and hosts documentation 6 | author = Read the Docs, Inc 7 | author_email = dev@readthedocs.com 8 | url = http://readthedocs.org 9 | classifiers = 10 | Development Status :: 5 - Production/Stable 11 | Environment :: Web Environment 12 | Intended Audience :: Developers 13 | License :: OSI Approved :: MIT License 14 | Operating System :: OS Independent 15 | Programming Language :: Python 16 | Programming Language :: Python :: 2.7 17 | Programming Language :: Python :: 3.4 18 | Programming Language :: Python :: 3.5 19 | Programming Language :: Python :: 3.6 20 | Framework :: Django 21 | 22 | [options] 23 | packages = find: 24 | include_package_data = True 25 | zip_safe = False 26 | 27 | [tool:release] 28 | github_owner = rtfd 29 | github_repo = readthedocs.org 30 | 31 | -------------------------------------------------------------------------------- /readthedocs/core/static-src/core/js/doc-embed/constants.js: -------------------------------------------------------------------------------- 1 | /* Documentation embed shared constants */ 2 | 3 | var exports = { 4 | THEME_RTD: 'sphinx_rtd_theme', 5 | THEME_ALABASTER: 'alabaster', 6 | THEME_CELERY: 'sphinx_celery', 7 | THEME_MKDOCS_RTD: 'readthedocs', 8 | 9 | DEFAULT_PROMO_PRIORITY: 5, 10 | MINIMUM_PROMO_PRIORITY: 10, 11 | MAXIMUM_PROMO_PRIORITY: 1, 12 | LOW_PROMO_PRIORITY: 10, 13 | }; 14 | 15 | exports.PROMO_SUPPORTED_THEMES = [ 16 | exports.THEME_RTD, 17 | exports.THEME_ALABASTER, 18 | exports.THEME_CELERY 19 | ]; 20 | 21 | exports.PROMO_TYPES = { 22 | LEFTNAV: 'doc', // Left navigation on documentation pages 23 | FOOTER: 'site-footer', // Footer of documentation pages 24 | FIXED_FOOTER: 'fixed-footer' // A footer ad fixed at the bottom fo the screen 25 | }; 26 | 27 | module.exports = exports; 28 | -------------------------------------------------------------------------------- /readthedocs/oauth/services/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """Conditional classes for OAuth services.""" 3 | 4 | from __future__ import ( 5 | absolute_import, division, print_function, unicode_literals) 6 | 7 | from readthedocs.core.utils.extend import SettingsOverrideObject 8 | from readthedocs.oauth.services import bitbucket, github, gitlab 9 | 10 | 11 | class GitHubService(SettingsOverrideObject): 12 | _default_class = github.GitHubService 13 | _override_setting = 'OAUTH_GITHUB_SERVICE' 14 | 15 | 16 | class BitbucketService(SettingsOverrideObject): 17 | _default_class = bitbucket.BitbucketService 18 | _override_setting = 'OAUTH_BITBUCKET_SERVICE' 19 | 20 | 21 | class GitLabService(SettingsOverrideObject): 22 | _default_class = gitlab.GitLabService 23 | _override_setting = 'OAUTH_GITLAB_SERVICE' 24 | 25 | 26 | registry = [GitHubService, BitbucketService, GitLabService] 27 | -------------------------------------------------------------------------------- /readthedocs/notifications/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Extensions to Django messages to support notifications to users. 3 | 4 | Notifications are important communications to users that need to be as visible 5 | as possible. We support different backends to make notifications visible in 6 | different ways. For example, they might be e-mailed to users as well as 7 | displayed on the site. 8 | 9 | This app builds on `django-messages-extends`_ to provide persistent messages 10 | on the site. 11 | 12 | .. _`django-messages-extends`: https://github.com 13 | /AliLozano/django-messages-extends/ 14 | """ 15 | from .notification import Notification, SiteNotification 16 | from .backends import send_notification 17 | 18 | __all__ = ( 19 | 'Notification', 20 | 'SiteNotification', 21 | 'send_notification' 22 | ) 23 | 24 | 25 | default_app_config = 'readthedocs.notifications.apps.NotificationsAppConfig' 26 | --------------------------------------------------------------------------------