[petsc-dev] Master broken after changes to PetscSection headers
Jed Brown
jed at jedbrown.org
Thu Sep 19 07:09:44 CDT 2019
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.)
More information about the petsc-dev
mailing list