Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Project updated when subproject modified #3649
I have some questions/doubts that are related to this PR (maybe to be implemented in another -but related):
@agjohnson the PR for the original issue is ready to review --let me know if you want me to squash the commits into one. Although, I would like you to take a look a those questions that I'm raising here.
This was referenced
Mar 6, 2018
There are a lot of bugs in our "keep symlinks up to date" code. We should write a design document that specifies the exact place that we should be doing sync'ing for this, and then do an audit (and tests!) to make sure that we're actually doing it.
I've tried to build a proper abstraction for maintaining the symlinks in code (https://github.com/rtfd/readthedocs.org/blob/master/readthedocs/core/symlink.py), but that never got pushed back into a proper abstraction for updating/removing/editing symlinks with the lifecycle of the model. I think that is what this PR (and your questions) are addressing.
"What is the correct way to handle updating & syncing symlinks when models change?" is the question we need to answer.
The test that you added is a good litmus test for this particular change, but we should add a test that ensures the we're calling the broadcast functions correctly in
- Symlink broadcast is called as expected
- Symlink broadcast is called for superprojects in the case that we have superprojects and don't have superprojects