Skip to content

Conversation

@hattne
Copy link
Collaborator

@hattne hattne commented Jul 16, 2025

The SWIG-generated interface files are updated rather than removed: in the future they may be used directly, instead of relying on nuweb to (re)generate them; pycbf.tex is kept for the same reason. Also note that pycbf.pdf is not built by default.

hattne added 6 commits July 15, 2025 19:42
…cbf_stx.h from cbf.stx.y

Heed the warning emitted by recent Bison (the api.pure option was
probably introduced in 2.3b from 2008-05-27) and name the previously
anonymous union typedef:ed to YYSTYPE in cbf_lex.h.  The YYSTYPE typedef
is retained in order to preserve the API, even though it may cause
problems for downstream projects that also rely on Bison.  Multiple
targets in a rule appears to be a GNU make extension, but its use was
already implied in Makefile.  Do not include any generated files from
the public headers.
Appears to have been manually added to the Bison-generated output.
Avoids false positive introduced in 79913a7.
Checked-in pycbf.py and pycbf_wrap.c were generated with SWIG 3.0.10 and
interfere with the tests if run from the source directory; _pycbf.pyd is
a 32-bit Windows binary.  Fix Makefile to regenerate the SWIG interface
files from current doc/CBFlib.html (checked-in CBFlib.txt is from 0.9.5,
revised 22 February 2015; regenerating it requires e.g. links) and
rebuild the Python module when necessary.
Remove unused LaTeX output; out-of-sync pycbf.toc may interfere with
LaTeX.  Escape underscores in text mode and do not use minipage for long
listings.  A container must have LaTeX (texlive-latex-recommended in
Ubuntu) in order to build pycbf.pdf.
@hattne hattne marked this pull request as ready for review July 17, 2025 23:16
@yayahjb yayahjb self-requested a review September 4, 2025 20:26
Copy link
Collaborator

@yayahjb yayahjb left a comment

Choose a reason for hiding this comment

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

Reasonable changes

@yayahjb yayahjb merged commit b6eee47 into dials:main Sep 4, 2025
2 checks passed
@phyy-nx
Copy link
Member

phyy-nx commented Sep 9, 2025

Hey folks, this PR broke DIALS and cctbx since pycbf.py is gone. Can we revert this until further discussion?

@yayahjb
Copy link
Collaborator

yayahjb commented Sep 9, 2025 via email

@hattne
Copy link
Collaborator Author

hattne commented Sep 9, 2025

I suspect this may be an issue with the build system. pycbf.py is generated by SWIG as a step towards building the Python module. If I recall correctly, the Python module is not a dependency of all, but it is built as a dependency of py3cbftests (see #59 (comment)).

If this is right, running make tests might quickly work around the problem. I think the proper fix is to make all depend on the Python module. Without knowing where and how DIALS and cctbx failed, I'm not convinced reverting this PR is the way to go.

@yayahjb
Copy link
Collaborator

yayahjb commented Sep 9, 2025

I'll wait quietly, but I do note that when running makefile tests with docker, always rebuilding with nuweb is not a problem.

@hattne
Copy link
Collaborator Author

hattne commented Sep 9, 2025

@phyy-nx does #108 fix the problem?

I don't think nuweb has anything to do with this. But I do think further discussion may be warranted.

@yayahjb
Copy link
Collaborator

yayahjb commented Sep 9, 2025 via email

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.

3 participants