Skip to content

Docs: cleanup of old/deprecated documents #7994

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Mar 25, 2021

Conversation

humitos
Copy link
Member

@humitos humitos commented Mar 8, 2021

  • Remove /development/install completely
  • Rename /development/standards page to /development/install
  • Remove /custom_installs/ folder since we don't support it and those documents are completely broken
  • Remove /development/buildenvironments due that it's not valid anymore
  • Update Front-End page to mention inv docker.buildassets instead
  • Do not mention "Installation guide" when contributing to documentation (see Expand section "Contributing to Documentation" #8042)
  • Put our design documents at the bottom of the list in the index
  • Put /development/install at the top of the list in the index
  • Remove Elasticsearch manual installation: users shouldn't use this
  • Remove MULTIPLE_APP_SERVERS setting
  • Move explanation for DOCKER_LIMITS settings into settings page

I limited this work to remove old/confusing stuffs for now, but there some sections that could be improved a lot by communicating exactly what we need.

@humitos humitos requested review from ericholscher and a team March 8, 2021 12:44
@humitos humitos force-pushed the humitos/documentation-cleanup branch from 38bc7a0 to 9731da6 Compare March 8, 2021 12:56
Copy link
Member

@ericholscher ericholscher left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good start, but definitely needs some more cleanup


There are several settings used to configure usage of virtual machines:

DOCKER_ENABLE
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems we are losing these docs? We should probably migrate these to the settings docs.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't find them relevant, that's why I delete this page completely. On the other hand, I don't think that using DOCKER_ENABLED=False works. I want to remove all mentions to settings that we don't normally use and/or we don't officially support. All of these just confuses users/contributors, unfortunately.

I moved DOCKER_LIMITS to the settings page because is still useful for local development and, in fact, a user needed/asked about it some weeks ago.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One thing I don't understand: it seems that DOCKER_ENABLED is used in a couple of places:

$ grep DOCKER_ENABLE . -r --exclude=*.pyc
./docs/development/buildenvironments.rst:DOCKER_ENABLE
./docs/development/buildenvironments.rst:    Default: :djangosetting:`DOCKER_ENABLE`
./readthedocs/projects/tasks.py:            if settings.DOCKER_ENABLE:
./readthedocs/projects/tasks.py:        if settings.DOCKER_ENABLE:
./readthedocs/projects/tasks.py:        if settings.DOCKER_ENABLE:
./readthedocs/doc_builder/environments.py:    If :py:data:`settings.DOCKER_ENABLE` is true, build documentation inside a
./readthedocs/settings/base.py:    DOCKER_ENABLE = False
./readthedocs/settings/docker_compose.py:    DOCKER_ENABLE = True

Does that mean that we should remove it from the code too?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(This applies to DOCKER_ENABLED since you mentioned that perhaps it doesn't work - I get that there are other variables that do their job, but we want to avoid confusing users anyway)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We are using DOCKER_ENABLED. However, the only value that works is True.

Some time ago, we used to support DOCKER_ENABLED=False and in that case we didn't use Docker to build documentation but we used the host packages (latex, pip, python, etc). However, using False now is completely broken and it confuses contributors.

IMHO, removing it from the documentation is the first step. The next one is remove all the code for the case when it's False; but it's outside the scope of this PR.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should at least open a ticket with a TODO removing this setting, then.

.. TODO: expand this section explaining there the PR is automatically built and
the author can visualize changes without installing anything on their system.
However, if there is going to be periodic/bigger contributions, it may be a
good idea to install the Sphinx requirements to build our docs.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't just delete the mention of Sphinx here? Isn't this just making our docs worse and more confusing for new contributors?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO, I would just mention that people can just edit the files directly on GitHub and create a PR that automatically does the preview.

If there is going to be a bigger contributing at some time, we can write this guide at that point 😄

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In fact, isn't it weird to have a "Contributing to Documentation" document under "Developer documentation" if we want to avoid referencing local installation instructions here? Perhaps we should move this to some other section, expand the content guidelines, and refer to development/standards for further information. But definitely not in this cleanup PR?

Copy link
Member Author

@humitos humitos Mar 22, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@astrojuanlu I agree. In fact, we do have a "Contributing to Read the Docs" (https://docs.readthedocs.io/en/stable/contribute.html) and we have a section for "Contributing to Documentation". Probably improving that section is a cleaner path to move forward.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea, I think it's a bit chicken & egg, since we want it to live with "contributing", which mostly makes sense under dev docs. Not sure the best way to structure this.

@@ -46,13 +66,6 @@ Default: :djangosetting:`RTD_INTERSPHINX_URL`
This is the domain that is used to fetch the intersphinx inventory file.
If not set explicitly this is the ``PRODUCTION_DOMAIN``.

MULTIPLE_APP_SERVERS
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still in the code in some places. We should remove it from there as well.

I think #7044

@@ -1,6 +1,9 @@
Development Setup and Standards
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this is the new "install" doc, we should rename this file and move the standards bits to the bottom. Calling this standards.rst but having it be the install docs feels weird.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine with that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should do it as part of this PR, since we're removing the install doc.

Copy link
Contributor

@astrojuanlu astrojuanlu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't want to pick the "Approve" option but I gave this a read and, apart from the comments I left and from my limited understanding, this looks good 👍🏽

humitos added 2 commits March 23, 2021 10:04
- Remove `/development/install` page and redirect it to `/development/standards`
- Remove `/custom_installs/` folder since we don't support it and those documents are completely broken
- Remove `/development/buildenvironments` due that it's not valid anymore
- Update Front-End page to mention `inv docker.buildassets` instead
- Do not mention "Installation guide" when contributing to documentation
- Put our design documents at the bottom of the list in the index
- Put `/development/standards` at the top of the list in the index
- Remove Elasticsearch manual installation: users shouldn't use this
- Remove `MULTIPLE_APP_SERVERS` setting
- Move explanation for `DOCKER_LIMITS` settings into settings page
We are promoting the usage of Dockr compose as the standard way of
contributing/developing.
@humitos humitos force-pushed the humitos/documentation-cleanup branch from 9731da6 to 9b1866c Compare March 23, 2021 09:25
@humitos humitos requested a review from a team March 23, 2021 09:28
@humitos
Copy link
Member Author

humitos commented Mar 23, 2021

I updated this PR with the feedback that I received and it's ready to re-review.

@humitos humitos enabled auto-merge March 23, 2021 10:18
Make sure to apply it to the "Site".


Core team standards
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can simplify or remove this section as everything that is mentioned is done in docker already.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's worth noting this stuff in terms of architecture, but not necessarily in the install doc. I think it's fine tho.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll keep it here for now. However, I'd be 👍 on moving this into the https://docs.readthedocs.io/en/stable/development/architecture.html together with a nicer graph there.

@ericholscher
Copy link
Member

@humitos In the future it would be better to just push new commits here instead of rebasing and force pushing. I can't easily see whats changed since the last review, which makes reviewing the changes much harder.

@humitos
Copy link
Member Author

humitos commented Mar 23, 2021

@humitos In the future it would be better to just push new commits here instead of rebasing and force pushing. I can't easily see whats changed since the last review, which makes reviewing the changes much harder.

@ericholscher yeah, sorry. This was a mistake. I usually use force push only if there is no reviews already. I got fat fingered with all the Emacs hotkeys, you know 🙃

humitos added 2 commits March 24, 2021 15:24
- development/install is now the want that we want people to find easily
- custom_installs/* does not exist anymore
@humitos humitos requested a review from a team March 24, 2021 14:25
@humitos humitos merged commit 1505061 into master Mar 25, 2021
Copy link
Member

@ericholscher ericholscher left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a solid improvement 👍 Let's ship it, but we do need to make redirects prior to merging, at least for the install docs.

@humitos humitos deleted the humitos/documentation-cleanup branch March 25, 2021 15:36
@humitos
Copy link
Member Author

humitos commented Mar 26, 2021

I just created the redirect.

▶ curl -I -s https://docs.readthedocs.io/en/latest/development/standards.html | grep -i Location
location: https://docs.readthedocs.io/en/latest/development/install.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants