On Tue, Aug 21, 2012 at 10:39 AM, Matthew Knepley <knepley at ci.uchicago.edu>wrote:
> Wolfgang is not wrong here. I was against the name change :) I complained about this in May when it was pushed. > > Matt > > ---------- Forwarded message ---------- > From: Wolfgang Bangerth <bangerth at math.tamu.edu> > Date: Mon, Aug 20, 2012 at 10:30 PM > Subject: Changes in PETSc > To: Matthew Knepley <knepley at ci.uchicago.edu>, "Toby D. Young" < > tyoung at ippt.gov.pl> > > > > Hi Matt, > I ran across something today that I believe perfectly illustrates the kind > of thing that drives everyone completely mad about PETSc's habit of > changing everything in every release. I was staring for a long time at a > patch by one of our contributors labeled "fix catastrophic typo" that reads > like this: > ........................... > - int ierr = KSPSetType (ksp, const_cast<char *>(KSPCHEBYSHEV)); > + // set the type of solver. > + int ierr; > + > +#ifdef DEAL_II_PETSC_VERSION_LT(3,3,**0) > + ierr = KSPSetType (ksp, const_cast<char *>(KSPCHEBYCHEV)); > They can get rid of the const_cast. Also, instead of the magic version nonsense, they can write #ifndef KSPCHEBYSHEV # define KSPCHEBYSHEV KSPCHEBYCHEV #endif and then always use the new version in their code. Also, a package like deal.II would be better off snooping the list of valid parameters using PetscFListGet() so that they would *automatically* support *all* KSPs and PCs in PETSc. > +#else > + ierr = KSPSetType (ksp, const_cast<char *>(KSPCHEBYSHEV)); > +#endif > ........................... > It took me minutes to find the difference: before 3.3, the name was > spelled chebyChev, after that chebyShev. That's really a completely > unnecessary change -- but hugely disruptive because not compatible, > incredible difficult to see, and it also has no real value at all: whether > you want to spell the name the French or the American way really makes no > difference at all. Worst of all, it would have been absolutely trivial to > make the change backward compatible by simply doing > #define KSPCHEBYSHEV KSPCHEBYCHEV > but that didn't happen. > > So why do it? Sorry for venting, but it just doesn't make sense to me... > Best > W. > > -- > ------------------------------**------------------------------** > ------------ > Wolfgang Bangerth email: bangerth at math.tamu.edu > www: > http://www.math.tamu.edu/~**bangerth/<http://www.math.tamu.edu/~bangerth/> > > > > > -- > 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 > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20120821/6eeb7b74/attachment-0001.html>