[petsc-dev] Master broken after changes to PetscSection headers

Matthew Knepley knepley at gmail.com
Thu Sep 19 07:44:05 CDT 2019


On Thu, Sep 19, 2019 at 8:09 AM Jed Brown <jed at jedbrown.org> wrote:

> Václav Hapla via petsc-dev <petsc-dev at mcs.anl.gov> writes:
>
> > 19. září 2019 12:23:43 SELČ, Matthew Knepley <knepley at gmail.com> napsal:
> >>On Thu, Sep 19, 2019 at 6:21 AM Matthew Knepley <knepley at gmail.com>
> >>wrote:
> >>
> >>> On Thu, Sep 19, 2019 at 6:20 AM Stefano Zampini
> >><stefano.zampini at gmail.com>
> >>> wrote:
> >>>
> >>>> So why it is in the vec package?
> >>>>
> >>>
> >>> Its in IS, so if anything it should go in petscis.h. I will move it
> >>there.
> >>>
> >>
> >>Now that we are doing this. I think petscsf.h belongs there too, not
> >>just
> >>the types.
> >
> > The is directory just groups different utility classes dealing with
> integer mappings. Probably just from historical reasons. I don't think they
> should be considered belonging to the IS package. I don't see a point in
> including it all in petscis.h. Why e.g. users of KSP should implicitly
> include all this stuff when they don't need it.
>
> I would rather move toward headers including only *types.h from their
> dependencies.  Reducing such dependencies is a breaking change so we
> need to be judicious and document it, but adding dependencies
> gratuitously is the wrong direction, IMO.  (It slows down incremental
> rebuilds of PETSc and user code.)
>

Having to make delicate changes in several places just to add a header is a
crazy development process. We have to have
an easy rule, and preferably a check that it is done the way we want.

I put in the fix I think you are suggesting.

   Matt
-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20190919/51f56577/attachment.html>


More information about the petsc-dev mailing list