NCAR / ParallelIO

A high-level Parallel I/O Library for structured grid applications
Apache License 2.0
134 stars 52 forks source link

doxygen failure in PR #1930

Open jedwards4b opened 2 years ago

jedwards4b commented 2 years ago

https://github.com/NCAR/ParallelIO/pull/1929

Fails with a doxygen warning. I haven't found the solution.

/home/runner/work/ParallelIO/ParallelIO/src/clib/pio.h:826: warning: Member PIOc_init_async(MPI_Comm world, int num_io_procs, int io_proc_list, int component_count, int num_procs_per_comp, int proc_list, MPI_Comm io_comm, MPI_Comm comp_comm, int rearranger, int iosysidp) (function) of file pio.h is not documented. /home/runner/work/ParallelIO/ParallelIO/src/clib/pio.h:831: warning: Member PIOc_init_async_from_comms(MPI_Comm world, int component_count, MPI_Comm comp_comm, MPI_Comm io_comm, int rearranger, int iosysidp) (function) of file pio.h is not documented. /home/runner/work/ParallelIO/ParallelIO/doc/source/c_api.txt:6: warning: unable to resolve reference to 'PIO_init_async' for \ref command [ ! -s doxywarn.log ] make[1]: [Makefile:671: all] Error 1 make[1]: Leaving directory '/home/runner/work/ParallelIO/ParallelIO/doc' make: *** [Makefile:449: check-recursive] Error 1 Error: Process completed with exit code 2.

edwardhartnett commented 2 years ago

OK, just ignore doxygen warnings and do your release.

You can turn off the WARN_AS_ERROR in Doxyfile.in, or just turn off doxygen builds in the CI.

The backstory is this: in olden times, doxygen did not work well with Fortran. Also PIO fortran code is weird because it is generated from a python (or perl) program. So I hacked together this solution that involved the build system creating f90 files from the F90 files, and getting the documentation from the built f90 files.

Since then, doxygen has moved on. It supports fortran much better and we use it in all the NOAA libraries very easily. So converting PIO to an easier documentation build would be a great thing, but I don't think you should hold the release for it.

jedwards4b commented 2 years ago

Not sure how to merge the PR with a required test failing?

jedwards4b commented 2 years ago

I still get an error:

/home/runner/work/ParallelIO/ParallelIO/src/clib/pio.h:826: warning: Member PIOc_init_async(MPI_Comm world, int num_io_procs, int io_proc_list, int component_count, int num_procs_per_comp, int proc_list, MPI_Comm io_comm, MPI_Comm comp_comm, int rearranger, int iosysidp) (function) of file pio.h is not documented. /home/runner/work/ParallelIO/ParallelIO/src/clib/pio.h:831: warning: Member PIOc_init_async_from_comms(MPI_Comm world, int component_count, MPI_Comm comp_comm, MPI_Comm io_comm, int rearranger, int iosysidp) (function) of file pio.h is not documented. /home/runner/work/ParallelIO/ParallelIO/doc/source/c_api.txt:6: warning: unable to resolve reference to 'PIO_init_async' for \ref command [ ! -s doxywarn.log ] make[1]: [Makefile:671: all] Error 1 make[1]: Leaving directory '/home/runner/work/ParallelIO/ParallelIO/doc' make: *** [Makefile:449: check-recursive] Error 1 Error: Process completed with exit code 2.

It's not failing on a fortran file, this is c code and I have it listed in the doc directory.

edwardhartnett commented 2 years ago

I just put up a PR to turn off documentation check in CI...