-
-
Notifications
You must be signed in to change notification settings - Fork 654
sage.features.topcom
#37858
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
sage.features.topcom
#37858
Conversation
Documentation preview for this PR (built with commit 1c6e248; changes) is ready! 🎉 |
This needs to be updated: Line 163 in 15fcf52
(btw, I think this list should be automatically generated and split from spkgs list and moved to a new location.) |
Shall we use a sphinx |
I don't know. Anyway, this is for a new PR. I may work on it later. |
Here's an attempt. The list of features is not autogenerated (we don't do that for any Python modules); but at least it's now in an ordinary editable index file. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks.
LGTM.
Thank you! |
I'm getting
|
Yes, incremental |
Still fails. Try
|
I can't reproduce a failure |
I'm getting
|
Looks like this is a parallel build race, works when building in a single thread. But
Seems like the doc-inventory--reference-spkg target conflicts |
Thanks for the details. I'll try to repro |
@vbraun What is your system? |
sagemathgh-38185: Simplify doc build process by removing empty directories locally <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> and thus hopefully fixes the mysterious issue sagemath#37858 (comment). ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies sagemath#37858 <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#38185 Reported by: Kwankyu Lee Reviewer(s):
<!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> - Part of sagemath#35856 We also change how the SPKG index in the reference manual is generated. `index.rst` is now a static file that uses `.. include` directives to read in generated files `index_standard.rst`, `index_optional.rst`, etc. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [ ] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#37858 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee
Worked for me |
Great! Thanks. |
Actually no, still happens upon further testing |
It is hard to "fix" an invisible issue. So what is your system and reproducing procedure? |
sagemathgh-38185: Simplify doc build process by removing empty directories locally <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> and thus hopefully fixes the mysterious issue sagemath#37858 (comment). ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies sagemath#37858 <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#38185 Reported by: Kwankyu Lee Reviewer(s):
The following steps reproducably cause the failure for me:
Running the docbuild command a second time succeeds, then
|
Don't you get the same failure if you replace There may be some bug hidden in the doc build procedure in general... Strangely, this
fails every other time... |
After more experiments, I now realized there is nothing strange in the above experiments. We are breaking assumptions by The doc build starts initially with the state made by
reliably. Not a bug unless you see it after |
I've seen it after And the issue is that dependencies of docbuild artifacts are apparently insufficient. I think this branch exacerbates the issue because it places /doc/en/reference/spkg/index.rst under version control. So if you frequently change branches its easy to update timestaps which triggers incremental rebuilds, and then if you are unlucky docbuild trips over missing dependencies. |
I just now met the bug. As you say, It seems related with switching branches. |
@@ -173,7 +173,7 @@ distclean: build-clean | |||
bootstrap-clean: | |||
rm -rf config/install-sh config/compile config/config.guess config/config.sub config/missing configure build/make/Makefile-auto.in | |||
rm -f src/doc/en/installation/*.txt | |||
rm -rf src/doc/en/reference/spkg/*.rst | |||
find src/doc/en/reference/spkg -name index.rst -prune -o -name *.rst -exec rm -f {} \+ | |||
for a in environment environment-optional src/environment src/environment-dev src/environment-optional; do rm -f $$a.yml $$a-3.[89].yml $$a-3.1[0-9].yml; done |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line is the source of the "bug" Volker was experiencing.
Unlike previous rm -rf src/doc/en/reference/spkg/*.rst
, where the option -r
is really ineffective, the find
command searches the directory src/doc/en/reference/spkg
and its subdirectories, and removes all *.rst
files. In particular the file src/doc/en/reference/spkg/sage/features.rst
is removed.
The file is in control of the doc builder and to be updated by it if necessary. Suppose that the file is created by the doc builder in other git branch. After switching to this PR branch, ./bootstrap
removes the file, but the doc builder still believes the file is intact, and the removed file is not recreated. Hence the boom.
Incremental doc build mixed with switching git branches is inherently instable. But the changed behavior caused by this PR (the command in line 176) exacerbates the instability, as Volker could see through.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot for this detective work!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. Works well with me (that is, no more the bug for me).
…rectories of src/doc/en/reference/spkg
Thanks! |
Feature
s for optional and experimental SPKGs #35856We also change how the SPKG index in the reference manual is generated.
index.rst
is now a static file that uses.. include
directives to read in generated filesindex_standard.rst
,index_optional.rst
, etc.📝 Checklist
⌛ Dependencies