Re: [petsc-dev] PETSc blame digest (next) 2019-06-20
Yes, I think that's the reason we moved it to private :-) Sometimes I see _Internal. I thought _Private is preferred for static functions visible only within a single object file? Vaclav 20. června 2019 21:50:29 SELČ, "Smith, Barry F." napsal: > >It HAS A hid_t argument! Making it public means making HDF5 includes >public, means all PETSc applications have the HDF5 includes open in >them. Likely it should just get _Private > > Barry > > >On Jun 20, 2019, at 9:01 AM, Hapla Vaclav via petsc-dev > wrote: >> >> On 20 Jun 2019, at 15:56, Vaclav Hapla >wrote: >>> >>> >/home/sandbox/petsc/petsc.next-3/src/mat/impls/dense/seq/densehdf5.c:62: >undefined reference to `PetscViewerHDF5Load' >>> >>> Does it mean I need to change visibility of PetscViewerHDF5Load >in isimpl.h to PETSC_EXTERN? >>> Are you OK with that? >> >> Yes, and when doing that, it needs a Developer level man page. > > OK, thanks. So as a rule of thumb, every PETSC_EXTERN function should be >documented, although in private headers? Then src/vec/is/utils/hdf5io.c should have #include /*I "petsc/private/isimpl.h" I*/ ? Looks a bit weird, doesn't it? I think there are countless cases petsc-wide which break this. >>> >>> dev manual page 15 bullet 15: >>> "private functions may need to be marked PETSC_EXTERN" >>> There is an example of MatHeaderReplace. It hasn't a manpage. >>> >> >> Well, I'm not against making it public (it originally was) and write >a manpage, but then it should be also moved to the public header file. >> >> Sorry for sending a few previous emails only to Jed. >> >> Vaclav >>
Re: [petsc-dev] PETSc blame digest (next) 2019-06-20
It HAS A hid_t argument! Making it public means making HDF5 includes public, means all PETSc applications have the HDF5 includes open in them. Likely it should just get _Private Barry On Jun 20, 2019, at 9:01 AM, Hapla Vaclav via petsc-dev wrote: > > On 20 Jun 2019, at 15:56, Vaclav Hapla wrote: >> >> /home/sandbox/petsc/petsc.next-3/src/mat/impls/dense/seq/densehdf5.c:62: >> undefined reference to `PetscViewerHDF5Load' >> >> Does it mean I need to change visibility of PetscViewerHDF5Load in >> isimpl.h to PETSC_EXTERN? >> Are you OK with that? > > Yes, and when doing that, it needs a Developer level man page. OK, thanks. >>> >>> So as a rule of thumb, every PETSC_EXTERN function should be documented, >>> although in private headers? >>> >>> Then src/vec/is/utils/hdf5io.c should have >>> #include /*I "petsc/private/isimpl.h" I*/ >>> ? >>> Looks a bit weird, doesn't it? >>> >>> I think there are countless cases petsc-wide which break this. >> >> dev manual page 15 bullet 15: >> "private functions may need to be marked PETSC_EXTERN" >> There is an example of MatHeaderReplace. It hasn't a manpage. >> > > Well, I'm not against making it public (it originally was) and write a > manpage, but then it should be also moved to the public header file. > > Sorry for sending a few previous emails only to Jed. > > Vaclav >
Re: [petsc-dev] PETSc blame digest (next) 2019-06-20
"Hapla Vaclav" writes: >> On 20 Jun 2019, at 15:56, Vaclav Hapla wrote: >> >> >> >>> On 20 Jun 2019, at 15:52, Vaclav Hapla wrote: >>> >>> >>> On 20 Jun 2019, at 15:15, Hapla Vaclav wrote: > On 20 Jun 2019, at 15:14, Jed Brown wrote: > > Hapla Vaclav via petsc-dev writes: > >>> On 20 Jun 2019, at 14:28, PETSc checkBuilds >>> wrote: >>> >>> >>> >>> Dear PETSc developer, >>> >>> This email contains listings of contributions attributed to you by >>> `git blame` that caused compiler errors or warnings in PETSc automated >>> testing. Follow the links to see the full log files. Please attempt to >>> fix >>> the issues promptly or let us know at petsc-dev@mcs.anl.gov if you are >>> unable >>> to resolve the issues. >>> >>> Thanks, >>> The PETSc development team >>> >>> >>> >>> warnings attributed to commit >>> https://bitbucket.org/petsc/petsc/commits/eb91f32 >>> MatLoad_Dense_HDF5 impl. >>> >>> src/mat/impls/dense/seq/densehdf5.c:62 >>> [http://ftp.mcs.anl.gov/pub/petsc/nightlylogs//archive/2019/06/20/build_next_arch-linux-pkgs-cxx-mlib_el6.log] >>> >>> /home/sandbox/petsc/petsc.next-3/src/mat/impls/dense/seq/densehdf5.c:62: >>> undefined reference to `PetscViewerHDF5Load' >> >> Does it mean I need to change visibility of PetscViewerHDF5Load in >> isimpl.h to PETSC_EXTERN? >> Are you OK with that? > > Yes, and when doing that, it needs a Developer level man page. OK, thanks. >>> >>> So as a rule of thumb, every PETSC_EXTERN function should be documented, >>> although in private headers? >>> >>> Then src/vec/is/utils/hdf5io.c should have >>> #include /*I "petsc/private/isimpl.h" I*/ >>> ? >>> Looks a bit weird, doesn't it? >>> >>> I think there are countless cases petsc-wide which break this. >> >> dev manual page 15 bullet 15: >> "private functions may need to be marked PETSC_EXTERN" >> There is an example of MatHeaderReplace. It hasn't a manpage. >> > > Well, I'm not against making it public (it originally was) and write a > manpage, but then it should be also moved to the public header file. If it's meant to be private, it needs _Private. If you don't otherwise need private/isimpl.h, then it should probably become public. MatHeaderReplace is public (in petscmat.h) so it should have a man page.
Re: [petsc-dev] PETSc blame digest (next) 2019-06-20
> On 20 Jun 2019, at 15:56, Vaclav Hapla wrote: > > > >> On 20 Jun 2019, at 15:52, Vaclav Hapla wrote: >> >> >> >>> On 20 Jun 2019, at 15:15, Hapla Vaclav wrote: >>> >>> >>> On 20 Jun 2019, at 15:14, Jed Brown wrote: Hapla Vaclav via petsc-dev writes: >> On 20 Jun 2019, at 14:28, PETSc checkBuilds >> wrote: >> >> >> >> Dear PETSc developer, >> >> This email contains listings of contributions attributed to you by >> `git blame` that caused compiler errors or warnings in PETSc automated >> testing. Follow the links to see the full log files. Please attempt to >> fix >> the issues promptly or let us know at petsc-dev@mcs.anl.gov if you are >> unable >> to resolve the issues. >> >> Thanks, >> The PETSc development team >> >> >> >> warnings attributed to commit >> https://bitbucket.org/petsc/petsc/commits/eb91f32 >> MatLoad_Dense_HDF5 impl. >> >> src/mat/impls/dense/seq/densehdf5.c:62 >> [http://ftp.mcs.anl.gov/pub/petsc/nightlylogs//archive/2019/06/20/build_next_arch-linux-pkgs-cxx-mlib_el6.log] >> >> /home/sandbox/petsc/petsc.next-3/src/mat/impls/dense/seq/densehdf5.c:62: >> undefined reference to `PetscViewerHDF5Load' > > Does it mean I need to change visibility of PetscViewerHDF5Load in > isimpl.h to PETSC_EXTERN? > Are you OK with that? Yes, and when doing that, it needs a Developer level man page. >>> >>> OK, thanks. >> >> So as a rule of thumb, every PETSC_EXTERN function should be documented, >> although in private headers? >> >> Then src/vec/is/utils/hdf5io.c should have >> #include /*I "petsc/private/isimpl.h" I*/ >> ? >> Looks a bit weird, doesn't it? >> >> I think there are countless cases petsc-wide which break this. > > dev manual page 15 bullet 15: > "private functions may need to be marked PETSC_EXTERN" > There is an example of MatHeaderReplace. It hasn't a manpage. > Well, I'm not against making it public (it originally was) and write a manpage, but then it should be also moved to the public header file. Sorry for sending a few previous emails only to Jed. Vaclav
Re: [petsc-dev] PETSc blame digest (next) 2019-06-20
Hapla Vaclav via petsc-dev writes: >> On 20 Jun 2019, at 14:28, PETSc checkBuilds >> wrote: >> >> >> >> Dear PETSc developer, >> >> This email contains listings of contributions attributed to you by >> `git blame` that caused compiler errors or warnings in PETSc automated >> testing. Follow the links to see the full log files. Please attempt to fix >> the issues promptly or let us know at petsc-dev@mcs.anl.gov if you are unable >> to resolve the issues. >> >> Thanks, >> The PETSc development team >> >> >> >> warnings attributed to commit >> https://bitbucket.org/petsc/petsc/commits/eb91f32 >> MatLoad_Dense_HDF5 impl. >> >> src/mat/impls/dense/seq/densehdf5.c:62 >> >> [http://ftp.mcs.anl.gov/pub/petsc/nightlylogs//archive/2019/06/20/build_next_arch-linux-pkgs-cxx-mlib_el6.log] >> >> /home/sandbox/petsc/petsc.next-3/src/mat/impls/dense/seq/densehdf5.c:62: >> undefined reference to `PetscViewerHDF5Load' > > Does it mean I need to change visibility of PetscViewerHDF5Load in isimpl.h > to PETSC_EXTERN? > Are you OK with that? Yes, and when doing that, it needs a Developer level man page.
Re: [petsc-dev] PETSc blame digest (next) 2019-06-20
> On 20 Jun 2019, at 14:28, PETSc checkBuilds > wrote: > > > > Dear PETSc developer, > > This email contains listings of contributions attributed to you by > `git blame` that caused compiler errors or warnings in PETSc automated > testing. Follow the links to see the full log files. Please attempt to fix > the issues promptly or let us know at petsc-dev@mcs.anl.gov if you are unable > to resolve the issues. > > Thanks, > The PETSc development team > > > > warnings attributed to commit > https://bitbucket.org/petsc/petsc/commits/eb91f32 > MatLoad_Dense_HDF5 impl. > > src/mat/impls/dense/seq/densehdf5.c:62 > > [http://ftp.mcs.anl.gov/pub/petsc/nightlylogs//archive/2019/06/20/build_next_arch-linux-pkgs-cxx-mlib_el6.log] > /home/sandbox/petsc/petsc.next-3/src/mat/impls/dense/seq/densehdf5.c:62: > undefined reference to `PetscViewerHDF5Load' Does it mean I need to change visibility of PetscViewerHDF5Load in isimpl.h to PETSC_EXTERN? Are you OK with that? Thanks, Vaclav > > > To opt-out from receiving these messages - send a request to > petsc-dev@mcs.anl.gov.