-
Notifications
You must be signed in to change notification settings - Fork 20
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
Procedure to regenerate pycbf? #59
Comments
Dear Nicholas,
Thank you for clarifying the issues with pycbf in cbflib. I apologize,
but there
will have to be a delay until late September before I can rework
that section of
the build myself. I have to deal with some medical issues at the same time
I
need to finish a proposal at the same time that I am moving apartments, so
I
am out of bandwidth for a while. I am copying this to Aaron and Billy to
see if
they might have some time to help you before I am available again.
If one of you younger people has not redone that ancient section of the
build
before then, I hope to start a clean rework from scratch of the python
parts of
cbflib about a month from now, i.e. approximately 19 September. It will
make
a nice background activity to listening in on NOBUGS
Regards,
Herbert
…On Sat, Aug 20, 2022 at 6:29 AM Nicholas Devenish ***@***.***> wrote:
I'm having trouble working out how to regenerate pycbf on the new release.
it looks like the linux.sh file is maybe out of date, and it looks to me
as though the files on release don't cleanly regenerate or even compile in
latex, which is a prerequisite for the nuweb workflow.
Rough list of the most important Issues I've encountered:
- The pycbf/CBFlib.txt file is (six years!) out of date:
$ make $(pwd)/pycbf/CBFlib.txt
make: '/home/cbfbuilder/cbflib/pycbf/CBFlib.txt' is up to date.
$ touch doc/CBFlib.html
$ make $(pwd)/pycbf/CBFlib.txt
links -dump /home/cbfbuilder/cbflib/doc/CBFlib.html > /home/cbfbuilder/cbflib/pycbf/CBFlib.txt
- Latex errors when attempting to regenerate the python bindings. Note
that this *isn't* done in the Makefile on any normal build; not in make
all, and not in make tests (which only builds _pycbf.so). This issue
can be demonstrated by simply asking for pycbf.py (or pycbf.pdf, which
is the actual rule for trying to regenerate the sources):
$ make $(pwd)/pycbf/pycbf.py
(cd /home/cbfbuilder/cbflib/pycbf; \
....
(./pycbf.toc
! Missing $ inserted.
<inserted text>
$
l.16 ...th write logic added}{17}{subsection.10.4}
?
- Generally the Makefile doesn't seem to build nuweb things properly
e.g. the rule for make_pycbf.py is plain incorrect:
$(PY3CBF)/make_pycbf.py: $(NUWEB_DEP) $(NUWEB_DEP2) $(PY3CBF)/make_pycbf.w
(cd $(PY3CBF); $(NUWEB) make_pycbf.w)
This runs nuweb only - the only output from this command is a new
make_pycbf.tex. This latex script also seems to not compile (and is
not checked in), so I am unable to confirm if the checked in code is an
up-to-date regeneration.
Without being able to compile the nuweb sources, I can't regenerate
anything that depends on them e.g. everything. So what am I doing wrong,
how do I actually generate these?
Finally... I notice that you've kept the whole nuweb lifecycle in this
release. I'd urge reconsideration for future releases, since it looks as
though it's not being developed in a literate programming way any more, and
looks as though it barely was - almost the entirety of most .w files
appear to be plain sections with the pasted code, beyond the initial
efforts at documentation in pycbf.w. It would make the build process
*considerably* simpler, make it so that commit changes don't have the
same change in three different files all over the place (.w, .tex, and
the generated output), and eliminate the error of "forgetting to regenerate
after changes" (see e.g. much of the noise on the now out-of-date #19
<#19>, which hadn't been correctly
regenerated in a while).
—
Reply to this email directly, view it on GitHub
<#59>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABB6EAI52N2NV25PKL6HLNLV2CXRBANCNFSM57DAKTMQ>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
No problem, there isn't any urgency, I was just intending to integrate the 0.9.7 changes into https://github.com/dials/pycbf. Obviously that's not possible with the current state of pycbf. Hope everything goes well. Nick |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I'm having trouble working out how to regenerate pycbf on the new release. it looks like the
linux.sh
file is maybe out of date, and it looks to me as though the files on release don't cleanly regenerate or even compile in latex, which is a prerequisite for the nuweb workflow.Rough list of the most important Issues I've encountered:
pycbf/CBFlib.txt
file is (six years!) out of date:make all
, and not inmake tests
(which only builds_pycbf.so
). This issue can be demonstrated by simply asking forpycbf.py
(orpycbf.pdf
, which is the actual rule for trying to regenerate the sources):Makefile
doesn't seem to build nuweb things properly e.g. the rule formake_pycbf.py
is plain incorrect:make_pycbf.tex
. This latex script also seems to not compile (and is not checked in), so I am unable to confirm if the checked in code is an up-to-date regeneration.Without being able to compile the nuweb sources, I can't regenerate anything that depends on them e.g. everything. So what am I doing wrong, how do I actually generate these?
Finally... I notice that you've kept the whole nuweb lifecycle in this release. I'd urge reconsideration for future releases, since it looks as though it's not being developed in a literate programming way any more, and looks as though it barely was - almost the entirety of most
.w
files appear to be plain sections with the pasted code, beyond the initial efforts at documentation inpycbf.w
. It would make the build process considerably simpler, make it so that commit changes don't have the same change in three different files all over the place (.w
,.tex
, and the generated output), and eliminate the error of "forgetting to regenerate after changes" (see e.g. much of the noise on the now out-of-date #19, which hadn't been correctly regenerated in a while).The text was updated successfully, but these errors were encountered: