Thread

  1. pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-20T23:36:53Z

    With RC1 nearing, when should I run pgindent?  This is usually the time
    I do it.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  2. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-21T19:43:22Z

    > With RC1 nearing, when should I run pgindent?  This is usually the time
    > I do it.
    
    Does the silence mean I should pick a date to run this?
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  3. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-21T20:14:33Z

    > Bruce Momjian writes:
    > 
    > > With RC1 nearing, when should I run pgindent?  This is usually the time
    > > I do it.
    > 
    > Are there any severely mis-indented files?
    
    Not sure.  I think there are some.  It doesn't do anything unless there
    is mis-indenting, so it is pretty safe and has always been done in the
    past.  It obviously only affects new changes since the last run.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  4. Re: pgindent run?

    Marc G. Fournier <scrappy@hub.org> — 2001-03-21T20:20:34Z

    On Wed, 21 Mar 2001, Bruce Momjian wrote:
    
    > > With RC1 nearing, when should I run pgindent?  This is usually the time
    > > I do it.
    >
    > Does the silence mean I should pick a date to run this?
    
    Since I'm going to end up re-rolling RC1, do a run tonight on her, so that
    any problems that arise from pgindent this time can be caught with those
    testing RC1 ...
    
    
    
    
  5. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-21T20:21:52Z

    > On Wed, 21 Mar 2001, Bruce Momjian wrote:
    > 
    > > > With RC1 nearing, when should I run pgindent?  This is usually the time
    > > > I do it.
    > >
    > > Does the silence mean I should pick a date to run this?
    > 
    > Since I'm going to end up re-rolling RC1, do a run tonight on her, so that
    > any problems that arise from pgindent this time can be caught with those
    > testing RC1 ...
    
    Good idea.  It is well tested, but you never know.  
    
    Peter, this is the optimial time to do it because no one has any
    outstanding patches at this point.  Seems this is the only good time.
    
    Unless someone says otherwise, I will do the run tonight.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  6. Re: pgindent run?

    Peter Eisentraut <peter_e@gmx.net> — 2001-03-21T20:22:32Z

    Bruce Momjian writes:
    
    > With RC1 nearing, when should I run pgindent?  This is usually the time
    > I do it.
    
    Are there any severely mis-indented files?
    
    -- 
    Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/
    
    
    
  7. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-21T20:48:35Z

    > Bruce Momjian writes:
    > 
    > > Peter, this is the optimial time to do it because no one has any
    > > outstanding patches at this point.  Seems this is the only good time.
    > 
    > Actually, I have quite a few outstanding patches.  I got screwed by this
    > last time around as well.  But I understand that this might be the best
    > time.
    
    That you are holding?  Yes, I have a few to at my new Unapplied
    Patches web page:
    
    	http://candle.pha.pa.us/cgi-bin/pgpatches
    
    The good news is that these will apply fine to 7.2 unless they touch an
    area that needed indenting.  The problem of not doing it is that the
    code starts to look different after a while and takes on a chaotic feel.
    
    This is probably the time when there are the fewest oustanding patches,
    I guess.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  8. Re: pgindent run?

    Peter Eisentraut <peter_e@gmx.net> — 2001-03-21T20:54:01Z

    Bruce Momjian writes:
    
    > Peter, this is the optimial time to do it because no one has any
    > outstanding patches at this point.  Seems this is the only good time.
    
    Actually, I have quite a few outstanding patches.  I got screwed by this
    last time around as well.  But I understand that this might be the best
    time.
    
    -- 
    Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/
    
    
    
  9. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-21T23:12:36Z

    OK, I am going to have dinner and then get started on the pgindent run.
    
    I have also noticed we have some comments like:
    
    	/* ----
             * one word
             * ----
             */
    
    that look funny in a few places.  I propose:
    
    	/* one word */
    
    to be consistent.
    
    
    > With RC1 nearing, when should I run pgindent?  This is usually the time
    > I do it.
    > 
    > -- 
    >   Bruce Momjian                        |  http://candle.pha.pa.us
    >   pgman@candle.pha.pa.us               |  (610) 853-3000
    >   +  If your life is a hard drive,     |  830 Blythe Avenue
    >   +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    > 
    > ---------------------------(end of broadcast)---------------------------
    > TIP 6: Have you searched our list archives?
    > 
    > http://www.postgresql.org/search.mpl
    > 
    
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  10. Re: pgindent run?

    Marc G. Fournier <scrappy@hub.org> — 2001-03-21T23:25:49Z

    On Wed, 21 Mar 2001, Bruce Momjian wrote:
    
    >
    > OK, I am going to have dinner and then get started on the pgindent run.
    >
    > I have also noticed we have some comments like:
    >
    > 	/* ----
    >          * one word
    >          * ----
    >          */
    >
    > that look funny in a few places.  I propose:
    >
    > 	/* one word */
    >
    > to be consistent.
    
    to be consistent with what ... ?  isn't:
    
    /* ----------
     * comment
     * ----------
     */
    
    the standard?
    
    >
    >
    > > With RC1 nearing, when should I run pgindent?  This is usually the time
    > > I do it.
    > >
    > > --
    > >   Bruce Momjian                        |  http://candle.pha.pa.us
    > >   pgman@candle.pha.pa.us               |  (610) 853-3000
    > >   +  If your life is a hard drive,     |  830 Blythe Avenue
    > >   +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    > >
    > > ---------------------------(end of broadcast)---------------------------
    > > TIP 6: Have you searched our list archives?
    > >
    > > http://www.postgresql.org/search.mpl
    > >
    >
    >
    > --
    >   Bruce Momjian                        |  http://candle.pha.pa.us
    >   pgman@candle.pha.pa.us               |  (610) 853-3000
    >   +  If your life is a hard drive,     |  830 Blythe Avenue
    >   +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    >
    > ---------------------------(end of broadcast)---------------------------
    > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
    >
    
    Marc G. Fournier                   ICQ#7615664               IRC Nick: Scrappy
    Systems Administrator @ hub.org
    primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org
    
    
    
  11. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T01:24:19Z

    > On Wed, 21 Mar 2001, Bruce Momjian wrote:
    > 
    > >
    > > OK, I am going to have dinner and then get started on the pgindent run.
    > >
    > > I have also noticed we have some comments like:
    > >
    > > 	/* ----
    > >          * one word
    > >          * ----
    > >          */
    > >
    > > that look funny in a few places.  I propose:
    > >
    > > 	/* one word */
    > >
    > > to be consistent.
    > 
    > to be consistent with what ... ?  isn't:
    > 
    > /* ----------
    >  * comment
    >  * ----------
    >  */
    > 
    > the standard?
    
    Sorry.  It has been a while since I studied this.  The issue is the
    dashes, not the block comments.  /* --- is needed for multi-line comment
    where you want to preserve the layout, but in other cases, it prevents
    comment layout and looks kind of heavy.  I eyeball each change to make
    sure it is clean so:
    
    	/* ---
    	 * test
    	 * ---
    	 */
    
    becomes the cleaner:
    
    	/*
    	 * test
    	 */
    
    This makes the comment easier to read.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  12. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-22T03:58:49Z

    Bruce Momjian <pgman@candle.pha.pa.us> writes:
    >> With RC1 nearing, when should I run pgindent?  This is usually the time
    >> I do it.
    
    > Does the silence mean I should pick a date to run this?
    
    If you're going to do it before the release, I think you should do it
    *before* we wrap RC1.  I've said before and will say again that I think
    it's utter folly to run pgindent at the conclusion of the test cycle.
    I've been around this project for three major release cycles and we have
    seen errors introduced by pgindent in two of them.  I don't trust
    pgindent to be bug-free and I don't believe you should either.
    
    			regards, tom lane
    
    
  13. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T04:00:00Z

    > Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > >> With RC1 nearing, when should I run pgindent?  This is usually the time
    > >> I do it.
    > 
    > > Does the silence mean I should pick a date to run this?
    > 
    > If you're going to do it before the release, I think you should do it
    > *before* we wrap RC1.  I've said before and will say again that I think
    > it's utter folly to run pgindent at the conclusion of the test cycle.
    > I've been around this project for three major release cycles and we have
    > seen errors introduced by pgindent in two of them.  I don't trust
    > pgindent to be bug-free and I don't believe you should either.
    
    OK, running now.  Should I run it at another time or never?
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  14. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-22T04:08:14Z

    >> Are there any severely mis-indented files?
    
    There are some new contrib modules that are nowhere close to our
    indent conventions; also a good deal of foreign-key-related stuff
    in the parser that needs to be cleaned up.  So we should run it.
    
    I've always felt that it'd be smarter to run pgindent at the start
    of a development cycle, not the end, but I've been unable to convince
    Bruce of that ...
    
    			regards, tom lane
    
    
  15. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T04:10:43Z

    > >> Are there any severely mis-indented files?
    > 
    > There are some new contrib modules that are nowhere close to our
    > indent conventions; also a good deal of foreign-key-related stuff
    > in the parser that needs to be cleaned up.  So we should run it.
    > 
    > I've always felt that it'd be smarter to run pgindent at the start
    > of a development cycle, not the end, but I've been unable to convince
    > Bruce of that ...
    
    Hey, I am open to whatever people want to do.  Just remember that we
    accumulate lots of patches/development during the slow time before
    development, and those patches become harder to apply.  Peter E has some
    already.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  16. Re: pgindent run?

    Larry Rosenman <ler@lerctr.org> — 2001-03-22T04:12:26Z

    * Bruce Momjian <pgman@candle.pha.pa.us> [010321 22:11]:
    > > >> Are there any severely mis-indented files?
    > > 
    > > There are some new contrib modules that are nowhere close to our
    > > indent conventions; also a good deal of foreign-key-related stuff
    > > in the parser that needs to be cleaned up.  So we should run it.
    > > 
    > > I've always felt that it'd be smarter to run pgindent at the start
    > > of a development cycle, not the end, but I've been unable to convince
    > > Bruce of that ...
    > 
    > Hey, I am open to whatever people want to do.  Just remember that we
    > accumulate lots of patches/development during the slow time before
    > development, and those patches become harder to apply.  Peter E has some
    > already.
    How about:
    1) just AFTER release
    2) just BEFORE Beta 
    
    LER
    
    > 
    > -- 
    >   Bruce Momjian                        |  http://candle.pha.pa.us
    >   pgman@candle.pha.pa.us               |  (610) 853-3000
    >   +  If your life is a hard drive,     |  830 Blythe Avenue
    >   +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    > 
    > ---------------------------(end of broadcast)---------------------------
    > TIP 3: if posting/reading through Usenet, please send an appropriate
    > subscribe-nomail command to majordomo@postgresql.org so that your
    > message can get through to the mailing list cleanly
    -- 
    Larry Rosenman                     http://www.lerctr.org/~ler
    Phone: +1 972-414-9812                 E-Mail: ler@lerctr.org
    US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
    
    
  17. Re: pgindent run?

    Marc G. Fournier <scrappy@hub.org> — 2001-03-22T04:16:13Z

    On Wed, 21 Mar 2001, Bruce Momjian wrote:
    
    > > Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > > >> With RC1 nearing, when should I run pgindent?  This is usually the time
    > > >> I do it.
    > >
    > > > Does the silence mean I should pick a date to run this?
    > >
    > > If you're going to do it before the release, I think you should do it
    > > *before* we wrap RC1.  I've said before and will say again that I think
    > > it's utter folly to run pgindent at the conclusion of the test cycle.
    > > I've been around this project for three major release cycles and we have
    > > seen errors introduced by pgindent in two of them.  I don't trust
    > > pgindent to be bug-free and I don't believe you should either.
    >
    > OK, running now.  Should I run it at another time or never?
    
    I'll put my vote on Tom's side of things ... run if after the release,
    right at the start of the next development cycle, so that any bugs that
    crop up aren't just as we are trying to release ...
    
    Hell, maybe once then and once *just* as we are going into first beta of a
    release ... Tom?
    
    
    
  18. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-22T04:35:07Z

    Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > Hey, I am open to whatever people want to do.  Just remember that we
    > accumulate lots of patches/development during the slow time before
    > development, and those patches become harder to apply.  Peter E has some
    > already.
    
    Why not start a devel cycle by (a) branching the tree, (b) applying
    all held-over patches, and then (c) running pgindent?
    
    I'd probably wait a week or so between (a) and (c) to let people push
    in whatever they have pending.  But in general it seems a lot safer
    to pgindent at the front end of the cycle not the back end.
    
    			regards, tom lane
    
    
  19. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T04:45:17Z

    > Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > > Hey, I am open to whatever people want to do.  Just remember that we
    > > accumulate lots of patches/development during the slow time before
    > > development, and those patches become harder to apply.  Peter E has some
    > > already.
    > 
    > Why not start a devel cycle by (a) branching the tree, (b) applying
    > all held-over patches, and then (c) running pgindent?
    
    If people can get their patches in all at one time, that would work. 
    The only problem there is that people who supply patches against 7.1
    will not match the 7.2 tree, and we get those patches from people for
    months.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  20. Re: pgindent run?

    Marc G. Fournier <scrappy@hub.org> — 2001-03-22T04:48:09Z

    On Wed, 21 Mar 2001, Bruce Momjian wrote:
    
    > > Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > > > Hey, I am open to whatever people want to do.  Just remember that we
    > > > accumulate lots of patches/development during the slow time before
    > > > development, and those patches become harder to apply.  Peter E has some
    > > > already.
    > >
    > > Why not start a devel cycle by (a) branching the tree, (b) applying
    > > all held-over patches, and then (c) running pgindent?
    >
    > If people can get their patches in all at one time, that would work.
    > The only problem there is that people who supply patches against 7.1
    > will not match the 7.2 tree, and we get those patches from people for
    > months.
    
    and those patches should only be applied to the v7.1 branch ... we are
    suggesting (or, at least, I am) is that you pgindent *HEAD* after we've
    branched off v7.1 ...
    
    ... that way, we go into the new dev cycle "clean", but we doon't mess up
    the *STABLE* tree ...
    
    
    
  21. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T04:50:46Z

    > > If people can get their patches in all at one time, that would work.
    > > The only problem there is that people who supply patches against 7.1
    > > will not match the 7.2 tree, and we get those patches from people for
    > > months.
    > 
    > and those patches should only be applied to the v7.1 branch ... we are
    > suggesting (or, at least, I am) is that you pgindent *HEAD* after we've
    > branched off v7.1 ...
    > 
    > ... that way, we go into the new dev cycle "clean", but we doon't mess up
    > the *STABLE* tree ...
    
    But we get patches from 7.0.X now that get applied to 7.1.  All our
    developers are not working on CVS trees.  Many use their main trees and
    send in the occasional patch.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  22. Re: pgindent run?

    Marc G. Fournier <scrappy@hub.org> — 2001-03-22T04:57:19Z

    On Wed, 21 Mar 2001, Bruce Momjian wrote:
    
    > > > If people can get their patches in all at one time, that would work.
    > > > The only problem there is that people who supply patches against 7.1
    > > > will not match the 7.2 tree, and we get those patches from people for
    > > > months.
    > >
    > > and those patches should only be applied to the v7.1 branch ... we are
    > > suggesting (or, at least, I am) is that you pgindent *HEAD* after we've
    > > branched off v7.1 ...
    > >
    > > ... that way, we go into the new dev cycle "clean", but we doon't mess up
    > > the *STABLE* tree ...
    >
    > But we get patches from 7.0.X now that get applied to 7.1.  All our
    > developers are not working on CVS trees.  Many use their main trees and
    > send in the occasional patch.
    
    and most times, those have to be merged into the source tree due to
    extensive changes anyway ... maybe we should just get rid of the use of
    pgindent altogether?  its not something that I've ever seen required on
    other projects I've worked on ... in general, most projects seem to
    require that a submit'd patch from an older release be at least tested on
    the newest CVS, and with nightly snapshots being created as it is, I
    really don't see why such a requirement is a bad thing ...
    
    
    
    
  23. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T04:59:24Z

    > and most times, those have to be merged into the source tree due to
    > extensive changes anyway ... maybe we should just get rid of the use of
    > pgindent altogether?  its not something that I've ever seen required on
    > other projects I've worked on ... in general, most projects seem to
    > require that a submit'd patch from an older release be at least tested on
    > the newest CVS, and with nightly snapshots being created as it is, I
    > really don't see why such a requirement is a bad thing ...
    
    In an ideal world, people would test on CVS but in reality, the patches
    are usually pretty small and if they fix the problem, we apply them.
    
    Seems like a lot of work just to avoid pgindent.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  24. Re: pgindent run?

    Marc G. Fournier <scrappy@hub.org> — 2001-03-22T05:08:48Z

    On Wed, 21 Mar 2001, Bruce Momjian wrote:
    
    > > and most times, those have to be merged into the source tree due to
    > > extensive changes anyway ... maybe we should just get rid of the use of
    > > pgindent altogether?  its not something that I've ever seen required on
    > > other projects I've worked on ... in general, most projects seem to
    > > require that a submit'd patch from an older release be at least tested on
    > > the newest CVS, and with nightly snapshots being created as it is, I
    > > really don't see why such a requirement is a bad thing ...
    >
    > In an ideal world, people would test on CVS but in reality, the patches
    > are usually pretty small and if they fix the problem, we apply them.
    >
    > Seems like a lot of work just to avoid pgindent.
    
    If they are small, then why is pgindent required?  And if they are large,
    is it too much to ask that the person submitting tests the patch to make
    sure its even applicable in the newest snapshot?
    
    
    
    
  25. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T05:10:06Z

    > > > and most times, those have to be merged into the source tree due to
    > > > extensive changes anyway ... maybe we should just get rid of the use of
    > > > pgindent altogether?  its not something that I've ever seen required on
    > > > other projects I've worked on ... in general, most projects seem to
    > > > require that a submit'd patch from an older release be at least tested on
    > > > the newest CVS, and with nightly snapshots being created as it is, I
    > > > really don't see why such a requirement is a bad thing ...
    > >
    > > In an ideal world, people would test on CVS but in reality, the patches
    > > are usually pretty small and if they fix the problem, we apply them.
    > >
    > > Seems like a lot of work just to avoid pgindent.
    > 
    > If they are small, then why is pgindent required?  And if they are large,
    > is it too much to ask that the person submitting tests the patch to make
    > sure its even applicable in the newest snapshot?
    
    The problem is that the small ones don't apply cleanly if they don't
    match the indenting in the source.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  26. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-22T05:11:36Z

    The Hermit Hacker <scrappy@hub.org> writes:
    > and most times, those have to be merged into the source tree due to
    > extensive changes anyway ... maybe we should just get rid of the use of
    > pgindent altogether?
    
    I think pgindent is a good thing; the style of different parts of the
    code would vary too much without it.  I'm only unhappy about the risk
    issues of running it at this late stage of the release cycle.
    
    			regards, tom lane
    
    
  27. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T05:13:28Z

    > The Hermit Hacker <scrappy@hub.org> writes:
    > > and most times, those have to be merged into the source tree due to
    > > extensive changes anyway ... maybe we should just get rid of the use of
    > > pgindent altogether?
    > 
    > I think pgindent is a good thing; the style of different parts of the
    > code would vary too much without it.  I'm only unhappy about the risk
    > issues of running it at this late stage of the release cycle.
    
    This is the usualdiscussion.  Some like it, some don't like the risk,
    some don't like the timing.  I don't think we ever came up with a better
    time than before RC, though I think we could do it a little earlier in
    beta if people were not holding patches during that period.  It is the
    beta patching folks that we have the most control over.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  28. Re: pgindent run?

    Marc G. Fournier <scrappy@hub.org> — 2001-03-22T05:14:16Z

    On Thu, 22 Mar 2001, Bruce Momjian wrote:
    
    > > > > and most times, those have to be merged into the source tree due to
    > > > > extensive changes anyway ... maybe we should just get rid of the use of
    > > > > pgindent altogether?  its not something that I've ever seen required on
    > > > > other projects I've worked on ... in general, most projects seem to
    > > > > require that a submit'd patch from an older release be at least tested on
    > > > > the newest CVS, and with nightly snapshots being created as it is, I
    > > > > really don't see why such a requirement is a bad thing ...
    > > >
    > > > In an ideal world, people would test on CVS but in reality, the patches
    > > > are usually pretty small and if they fix the problem, we apply them.
    > > >
    > > > Seems like a lot of work just to avoid pgindent.
    > >
    > > If they are small, then why is pgindent required?  And if they are large,
    > > is it too much to ask that the person submitting tests the patch to make
    > > sure its even applicable in the newest snapshot?
    >
    > The problem is that the small ones don't apply cleanly if they don't
    > match the indenting in the source.
    
    but ... if they are small, manually merging isn't that big of a deal ...
    and if anyone else has been working in that code since release, there is a
    chance it won't mergef cleanly ...
    
    Quite frankly, I'm for pgindent after branch and before beta ...
    
    
    
  29. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T05:17:22Z

    > > The problem is that the small ones don't apply cleanly if they don't
    > > match the indenting in the source.
    > 
    > but ... if they are small, manually merging isn't that big of a deal ...
    > and if anyone else has been working in that code since release, there is a
    > chance it won't mergef cleanly ...
    
    Yes, they can be manually merged, but that is much more error-prone than
    pgindent itself, at least with me patching them.  :-)
    
    Yes, I agree there is a risk.  I was quite scared the first time I ran
    it on the tree and did the commit.  At this point, there are very few
    changes to it, so I feel a little better, and the stuff gets caught
    somehow if there is a problem.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  30. Re: pgindent run?

    Alfred Perlstein <bright@wintelcom.net> — 2001-03-22T07:21:03Z

    * Bruce Momjian <pgman@candle.pha.pa.us> [010321 21:14] wrote:
    > > The Hermit Hacker <scrappy@hub.org> writes:
    > > > and most times, those have to be merged into the source tree due to
    > > > extensive changes anyway ... maybe we should just get rid of the use of
    > > > pgindent altogether?
    > > 
    > > I think pgindent is a good thing; the style of different parts of the
    > > code would vary too much without it.  I'm only unhappy about the risk
    > > issues of running it at this late stage of the release cycle.
    > 
    > This is the usual discussion.  Some like it, some don't like the risk,
    > some don't like the timing.  I don't think we ever came up with a better
    > time than before RC, though I think we could do it a little earlier in
    > beta if people were not holding patches during that period.  It is the
    > beta patching folks that we have the most control over.
    
    It seems that you guys are dead set on using this pgindent tool,
    this is cool, we'd probably use some indentation tool on the FreeBSD
    sources if there was one that met our code style(9) guidelines.
    
    With that said, I really scares the crud out of me to see those massive
    pg_indent runs right before you guys do a release.
    
    It would make a lot more sense to force a pgindent run after applying
    each patch.  This way you don't loose the history.
    
    You want to be upset with yourself Bruce?  Go into a directory and type:
    
    cvs annotate <any file that's been pgindented>
    
    cvs annotate is a really, really handy tool, unfortunetly these
    indent runs remove this very useful tool as well as do a major job
    of obfuscating the code changes.
    
    It's not like you guys have a massive devel team with new people each
    week that have a steep committer learning curve ahead of them, making
    pgindent as patches are applied should work.
    
    There's also the argument that a developer's pgindent may force a
    contributor to resolve conflicts, while this is true, it's also
    true that you guys expect diffs to be in context format, comments
    to be in english, function prototypes to be new style, etc, etc..
    
    I think contributors can deal with this.
    
    just my usual 20 cents. :)
    
    -- 
    -Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]
    Daemon News Magazine in your snail-mail! http://magazine.daemonnews.org/
    
    
  31. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T14:49:19Z

    > * Bruce Momjian <pgman@candle.pha.pa.us> [010321 21:14] wrote:
    > > > The Hermit Hacker <scrappy@hub.org> writes:
    > > > > and most times, those have to be merged into the source tree due to
    > > > > extensive changes anyway ... maybe we should just get rid of the use of
    > > > > pgindent altogether?
    > > > 
    > > > I think pgindent is a good thing; the style of different parts of the
    > > > code would vary too much without it.  I'm only unhappy about the risk
    > > > issues of running it at this late stage of the release cycle.
    > > 
    > > This is the usual?discussion.  Some like it, some don't like the risk,
    > > some don't like the timing.  I don't think we ever came up with a better
    > > time than before RC, though I think we could do it a little earlier in
    > > beta if people were not holding patches during that period.  It is the
    > > beta patching folks that we have the most control over.
    > 
    > It seems that you guys are dead set on using this pgindent tool,
    > this is cool, we'd probably use some indentation tool on the FreeBSD
    > sources if there was one that met our code style(9) guidelines.
    
    You don't notice the value of pgindent until you have some code that
    hasn't been run through it.  For example, ODBC was not run through until
    this release, and I had a terrible time trying to understand the code
    because it didn't _look_ like the rest of the code.  Now that pgindent
    is run, it looks more normal, and I am sure that will encourage more
    people to get in and make changes.
    
    It gives more of a "I know where I am" feeling to the code.  It
    certainly doesn't make anything possible that wasn't possible before,
    but it does encourage people, and that is pretty powerful.
    
    I can't tell you how many times I have had to fix someone's contributed
    code that hadn't been through pgindent yet, and the problems I had
    trying to understand it.  I have even copied the file, pgindented it,
    read through the copy, then went back and fixed the original code.  (I
    can't run pgindent during development cycle, only when I have 100%
    control over the code and outstanding patches people may have.)
    
    As far as FreeBSD, I guarantee you will see major benefits to community
    participation by running the script.  You will have to hand-review all
    the changes after the first run to make sure it didn't wack out some
    wierd piece of code, but after that you will be pretty OK.  The only
    issue is that the person who takes this on is a taking a major risk of
    exposure to ridicule if it fails.
    
    I remember doing it the first time, and being really scared I would
    lethally brake the code.  Indenting is one of those efforts that has
    this _big_ risk componient when it is performed, and you get the small,
    steady benefit of doing it for months after.
    
    > With that said, I really scares the crud out of me to see those massive
    > pg_indent runs right before you guys do a release.
    > 
    > It would make a lot more sense to force a pgindent run after applying
    > each patch.  This way you don't loose the history.
    
    
    Yes, we have considered that.  The problem there is that sometimes
    people supply a patch, do some more work on their production source,
    then supply other patches to fix new problems.  If we pgindent for every
    CVS commit, we then are changing the supplied patch, which means any new
    patches that person sends do not match their previous patch, and we get
    into hand edits again.
    
    I know we ask for context diff's, but anytime a patch applies with some
    offset, if the offset is large, I have to make sure there wasn't some
    other identical context of code that may have been found by the patch
    program and applied incorrectly.
    
    A silent patch apply is safe;  if it reports a large offset, I have to
    investigate.
    
    > You want to be upset with yourself Bruce?  Go into a directory and type:
    > 
    > cvs annotate <any file that's been pgindented>
    > 
    > cvs annotate is a really, really handy tool, unfortunetly these
    > indent runs remove this very useful tool as well as do a major job
    > of obfuscating the code changes.
    
    I have never seen that feature.  I don't even see it in my cvs manual
    page.  It is great, and yes, I clearly wack that out for pgindent runs.
    Maybe pgindent for every commit is the way to go.
    
    > It's not like you guys have a massive devel team with new people each
    > week that have a steep committer learning curve ahead of them, making
    > pgindent as patches are applied should work.
    
    I imagine we can get CVS to do that automatically.  The number of patch
    on top of another patch is pretty rare and it would solve the other
    stated problems.
    
    
    > There's also the argument that a developer's pgindent may force a
    > contributor to resolve conflicts, while this is true, it's also
    > true that you guys expect diffs to be in context format, comments
    > to be in english, function prototypes to be new style, etc, etc..
    > 
    > I think contributors can deal with this.
    
    If someone submits a massive patch, and we apply it, all patches after
    that that they give us will not apply cleanly because they still have
    the old format.  The other argument for not doing pgindent on cvs commit
    is that if someone is working in an area of the code, they should be
    able to format that code as they like to see it.  They may be working in
    there for months.  Only during release are is their _style_ removed.
    
    On a side note, the idea of having people submit patches only against
    current CVS seems bad to me.  If people are running production machines
    and they develop a patch and test it there, I want the patch that works
    on their machine and can make sure it applies here.  Having them
    download CVS and do the merge themselves seems really risky, especially
    because they probably can't test the CVS in production.  The CVS may not
    even run properly.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  32. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-22T14:56:06Z

    Alfred Perlstein <bright@wintelcom.net> writes:
    > cvs annotate is a really, really handy tool, unfortunetly these
    > indent runs remove this very useful tool as well as do a major job
    > of obfuscating the code changes.
    
    I think this is a good reason for *not* applying pgindent on an
    incremental basis, but only once per release cycle.  That at least
    lets cvs annotate be useful within a cycle.
    
    			regards, tom lane
    
    
  33. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T15:07:23Z

    > Alfred Perlstein <bright@wintelcom.net> writes:
    > > cvs annotate is a really, really handy tool, unfortunetly these
    > > indent runs remove this very useful tool as well as do a major job
    > > of obfuscating the code changes.
    > 
    > I think this is a good reason for *not* applying pgindent on an
    > incremental basis, but only once per release cycle.  That at least
    > lets cvs annotate be useful within a cycle.
    
    What about having it happen on every CVS commit? 
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  34. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T15:09:38Z

    > It seems that you guys are dead set on using this pgindent tool,
    > this is cool, we'd probably use some indentation tool on the FreeBSD
    > sources if there was one that met our code style(9) guidelines.
    
    I would liken running pgindent to having a nice looking store or
    website.  No one is going to go to a website or a store only because it
    looks nice, but having it look nice does keep people coming back.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  35. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-22T15:36:24Z

    Bruce Momjian <pgman@candle.pha.pa.us> writes:
    >> Alfred Perlstein <bright@wintelcom.net> writes:
    > cvs annotate is a really, really handy tool, unfortunetly these
    > indent runs remove this very useful tool as well as do a major job
    > of obfuscating the code changes.
    >> 
    >> I think this is a good reason for *not* applying pgindent on an
    >> incremental basis, but only once per release cycle.  That at least
    >> lets cvs annotate be useful within a cycle.
    
    > What about having it happen on every CVS commit? 
    
    Try that and you'll get all-out war.  It's tough enough keeping in sync
    with the repository already.
    
    			regards, tom lane
    
    
  36. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T15:37:14Z

    > Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > >> Alfred Perlstein <bright@wintelcom.net> writes:
    > > cvs annotate is a really, really handy tool, unfortunetly these
    > > indent runs remove this very useful tool as well as do a major job
    > > of obfuscating the code changes.
    > >> 
    > >> I think this is a good reason for *not* applying pgindent on an
    > >> incremental basis, but only once per release cycle.  That at least
    > >> lets cvs annotate be useful within a cycle.
    > 
    > > What about having it happen on every CVS commit? 
    > 
    > Try that and you'll get all-out war.  It's tough enough keeping in sync
    > with the repository already.
    
    Oh, well.  I tried.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  37. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T16:12:04Z

    > > Hey, I am open to whatever people want to do.  Just remember that we
    > > accumulate lots of patches/development during the slow time before
    > > development, and those patches become harder to apply.  Peter E has some
    > > already.
    > 
    > This argument seems irrelevant when given the choice of before release or
    > after start of new cycle.  From an analytical point of view (and slightly
    > idealized), these are limits approaching the same points in time, from
    > opposite sides.  Thus, the second choice seems the infinitely better
    > option.
    
    Yes, the bigger problem is people running our most recent stable release
    not matching the current CVS sources.  I think early beta is the time to
    do this next time.  That has the fewest patches crossing over time.  In
    7.1, we had the WAL patches still being worked on until near the end,
    but once Tom put that mega-patch in last week, we could have done it
    then.
    
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  38. Re: pgindent run?

    Peter Eisentraut <peter_e@gmx.net> — 2001-03-22T16:12:59Z

    Bruce Momjian writes:
    
    > > >> Are there any severely mis-indented files?
    > >
    > > There are some new contrib modules that are nowhere close to our
    > > indent conventions; also a good deal of foreign-key-related stuff
    > > in the parser that needs to be cleaned up.  So we should run it.
    > >
    > > I've always felt that it'd be smarter to run pgindent at the start
    > > of a development cycle, not the end, but I've been unable to convince
    > > Bruce of that ...
    >
    > Hey, I am open to whatever people want to do.  Just remember that we
    > accumulate lots of patches/development during the slow time before
    > development, and those patches become harder to apply.  Peter E has some
    > already.
    
    This argument seems irrelevant when given the choice of before release or
    after start of new cycle.  From an analytical point of view (and slightly
    idealized), these are limits approaching the same points in time, from
    opposite sides.  Thus, the second choice seems the infinitely better
    option.
    
    -- 
    Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/
    
    
    
  39. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-22T16:14:23Z

    Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > I think early beta is the time to
    > do this next time.  That has the fewest patches crossing over time.
    
    That would work too, particularly if you give people a few days' notice.
    ("Get your patches in now, or expect to have to reformat...")
    
    			regards, tom lane
    
    
  40. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T16:16:14Z

    > Bruce Momjian <pgman@candle.pha.pa.us> writes:
    > > I think early beta is the time to
    > > do this next time.  That has the fewest patches crossing over time.
    > 
    > That would work too, particularly if you give people a few days' notice.
    > ("Get your patches in now, or expect to have to reformat...")
    
    Yes, I did try that in a previous release and got the, "Oh, I am still
    working on X."  I will be more insistent in the future that we get this
    done earlier.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  41. Re: pgindent run?

    Alfred Perlstein <bright@wintelcom.net> — 2001-03-22T17:23:41Z

    * Bruce Momjian <pgman@candle.pha.pa.us> [010322 06:49] wrote:
    > > * Bruce Momjian <pgman@candle.pha.pa.us> [010321 21:14] wrote:
    > > > > The Hermit Hacker <scrappy@hub.org> writes:
    > > > > > and most times, those have to be merged into the source tree due to
    > > > > > extensive changes anyway ... maybe we should just get rid of the use of
    > > > > > pgindent altogether?
    > > > > 
    > > > > I think pgindent is a good thing; the style of different parts of the
    > > > > code would vary too much without it.  I'm only unhappy about the risk
    > > > > issues of running it at this late stage of the release cycle.
    > > > 
    > > > This is the usual?discussion.  Some like it, some don't like the risk,
    > > > some don't like the timing.  I don't think we ever came up with a better
    > > > time than before RC, though I think we could do it a little earlier in
    > > > beta if people were not holding patches during that period.  It is the
    > > > beta patching folks that we have the most control over.
    > > 
    > > It seems that you guys are dead set on using this pgindent tool,
    > > this is cool, we'd probably use some indentation tool on the FreeBSD
    > > sources if there was one that met our code style(9) guidelines.
    > 
    > You don't notice the value of pgindent until you have some code that
    > hasn't been run through it.  For example, ODBC was not run through until
    > this release, and I had a terrible time trying to understand the code
    > because it didn't _look_ like the rest of the code.  Now that pgindent
    > is run, it looks more normal, and I am sure that will encourage more
    > people to get in and make changes.
    
    In FreeBSD we will simply refuse to apply patches that don't at least
    somewhat adhere to our coding standards.  Word of mouth keeps people
    submitting patches that are correct.
    
    > As far as FreeBSD, I guarantee you will see major benefits to community
    > participation by running the script.  You will have to hand-review all
    > the changes after the first run to make sure it didn't wack out some
    > wierd piece of code, but after that you will be pretty OK.  The only
    > issue is that the person who takes this on is a taking a major risk of
    > exposure to ridicule if it fails.
    
    This scares me to death, has indent done this before to you?
    
    If it has, here's a nifty trick someone started doing on our project,
    whenever he came across some file that was terribly formatted (*) he'd
    compile it as is, then copy the object files somewhere else, reformat
    it and then recompile.  He'd then use the md5(1) command to verify
    that in reality nothing had changed.
    
    > > With that said, I really scares the crud out of me to see those massive
    > > pg_indent runs right before you guys do a release.
    > > 
    > > It would make a lot more sense to force a pgindent run after applying
    > > each patch.  This way you don't loose the history.
    > 
    > Yes, we have considered that.  The problem there is that sometimes
    > people supply a patch, do some more work on their production source,
    > then supply other patches to fix new problems.  If we pgindent for every
    > CVS commit, we then are changing the supplied patch, which means any new
    > patches that person sends do not match their previous patch, and we get
    > into hand edits again.
    > 
    > I know we ask for context diff's, but anytime a patch applies with some
    > offset, if the offset is large, I have to make sure there wasn't some
    > other identical context of code that may have been found by the patch
    > program and applied incorrectly.
    > 
    > A silent patch apply is safe;  if it reports a large offset, I have to
    > investigate.
    
    This really goes without saying.  I think it would be cool to setup
    a site one day that explains the proper way to contribute to each
    project, I still occasionally get smacked upside the head for doing
    something like putting an RCS/CVS tag in the wrong spot in a file.
    :)
    
    > > You want to be upset with yourself Bruce?  Go into a directory and type:
    > > 
    > > cvs annotate <any file that's been pgindented>
    > > 
    > > cvs annotate is a really, really handy tool, unfortunetly these
    > > indent runs remove this very useful tool as well as do a major job
    > > of obfuscating the code changes.
    > 
    > I have never seen that feature.  I don't even see it in my cvs manual
    > page.  It is great, and yes, I clearly wack that out for pgindent runs.
    > Maybe pgindent for every commit is the way to go.
    
    yeah. :(
    
    > > It's not like you guys have a massive devel team with new people each
    > > week that have a steep committer learning curve ahead of them, making
    > > pgindent as patches are applied should work.
    > 
    > I imagine we can get CVS to do that automatically.  The number of patch
    > on top of another patch is pretty rare and it would solve the other
    > stated problems.
    > 
    > 
    > > There's also the argument that a developer's pgindent may force a
    > > contributor to resolve conflicts, while this is true, it's also
    > > true that you guys expect diffs to be in context format, comments
    > > to be in english, function prototypes to be new style, etc, etc..
    > > 
    > > I think contributors can deal with this.
    > 
    > If someone submits a massive patch, and we apply it, all patches after
    > that that they give us will not apply cleanly because they still have
    > the old format.  The other argument for not doing pgindent on cvs commit
    > is that if someone is working in an area of the code, they should be
    > able to format that code as they like to see it.  They may be working in
    > there for months.  Only during release are is their _style_ removed.
    
    And how exactly does that make sense?  You guys have a long beta period,
    this give people that sit in thier own little corner of the code (OBDC
    for instance) stuck with a major conflict resolution after release when
    they go to add patches they held off on during beta.  You also suddenly
    make the code look completely forien to the contributor... what if he
    has a major issue with the style of pgindent?  It would make a lot more
    sense to explain this up front...
      "Say, Alfred, I noticed you use two space indents, that's gross,
       have you run your code through pgindent as explained in the
       contributor's guide at http://www.postgresql.org/faq/cont....?"
    
    > On a side note, the idea of having people submit patches only against
    > current CVS seems bad to me.  If people are running production machines
    > and they develop a patch and test it there, I want the patch that works
    > on their machine and can make sure it applies here.  Having them
    > download CVS and do the merge themselves seems really risky, especially
    > because they probably can't test the CVS in production.  The CVS may not
    > even run properly.
    
    Well that's true, but how confident are you that the patch applied to
    the CVS version has the same effect as the -release version?
    
    -- 
    -Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]
    Daemon News Magazine in your snail-mail! http://magazine.daemonnews.org/
    
    
  42. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T17:33:13Z

    > > You don't notice the value of pgindent until you have some code that
    > > hasn't been run through it.  For example, ODBC was not run through until
    > > this release, and I had a terrible time trying to understand the code
    > > because it didn't _look_ like the rest of the code.  Now that pgindent
    > > is run, it looks more normal, and I am sure that will encourage more
    > > people to get in and make changes.
    > 
    > In FreeBSD we will simply refuse to apply patches that don't at least
    > somewhat adhere to our coding standards.  Word of mouth keeps people
    > submitting patches that are correct.
    
    Yes, but most individuals can't be bothered to do that all the time, and
    automated tools make it much better.
    
    Also, we aren't too big on rejecting patches because they don't meet our
    indentation standards.  After they get involved, they start to follow
    it, but usually it takes a while for that to happen, and if you enforce
    it right away, you risk losing that person.
    
    
    > > As far as FreeBSD, I guarantee you will see major benefits to community
    > > participation by running the script.  You will have to hand-review all
    > > the changes after the first run to make sure it didn't wack out some
    > > wierd piece of code, but after that you will be pretty OK.  The only
    > > issue is that the person who takes this on is a taking a major risk of
    > > exposure to ridicule if it fails.
    > 
    > This scares me to death, has indent done this before to you?
    
    No, not really.  It is more the size of the diff that scares you.
    
    > If it has, here's a nifty trick someone started doing on our project,
    > whenever he came across some file that was terribly formatted (*) he'd
    > compile it as is, then copy the object files somewhere else, reformat
    > it and then recompile.  He'd then use the md5(1) command to verify
    > that in reality nothing had changed.
    
    Yes, I have considered taking the 'postgres' binary and doing a cmp
    against the two versions.  I think I did that the first time I ran
    pgindent.  You need to skip over the object timestamp headers, but other
    than that, it should work.
    
    > > I know we ask for context diff's, but anytime a patch applies with some
    > > offset, if the offset is large, I have to make sure there wasn't some
    > > other identical context of code that may have been found by the patch
    > > program and applied incorrectly.
    > > 
    > > A silent patch apply is safe;  if it reports a large offset, I have to
    > > investigate.
    > 
    > This really goes without saying.  I think it would be cool to setup
    > a site one day that explains the proper way to contribute to each
    > project, I still occasionally get smacked upside the head for doing
    > something like putting an RCS/CVS tag in the wrong spot in a file.
    > :)
    
    We do have the developers FAQ, which goes into some detail about it,
    question #1.
    
    > > I have never seen that feature.  I don't even see it in my cvs manual
    > > page.  It is great, and yes, I clearly wack that out for pgindent runs.
    > > Maybe pgindent for every commit is the way to go.
    > 
    > yeah. :(
    
    
    > > If someone submits a massive patch, and we apply it, all patches after
    > > that that they give us will not apply cleanly because they still have
    > > the old format.  The other argument for not doing pgindent on cvs commit
    > > is that if someone is working in an area of the code, they should be
    > > able to format that code as they like to see it.  They may be working in
    > > there for months.  Only during release are is their _style_ removed.
    > 
    > And how exactly does that make sense?  You guys have a long beta period,
    > this give people that sit in thier own little corner of the code (OBDC
    > for instance) stuck with a major conflict resolution after release when
    > they go to add patches they held off on during beta.  You also suddenly
    > make the code look completely forien to the contributor... what if he
    > has a major issue with the style of pgindent?  It would make a lot more
    > sense to explain this up front...
    >   "Say, Alfred, I noticed you use two space indents, that's gross,
    >    have you run your code through pgindent as explained in the
    >    contributor's guide at http://www.postgresql.org/faq/cont....?"
    
    But we have the FAQ item to explain the format.  I don't think we want
    people personally formatting code to meet their style between releases
    because it discourages others from looking at the code.  We sort of give
    them their own format for the release cycle, then reign it back in just
    before release.  Seems like a good balance to me.
    
    > 
    > > On a side note, the idea of having people submit patches only against
    > > current CVS seems bad to me.  If people are running production machines
    > > and they develop a patch and test it there, I want the patch that works
    > > on their machine and can make sure it applies here.  Having them
    > > download CVS and do the merge themselves seems really risky, especially
    > > because they probably can't test the CVS in production.  The CVS may not
    > > even run properly.
    > 
    > Well that's true, but how confident are you that the patch applied to
    > the CVS version has the same effect as the -release version?
    
    If there is no offset change, that means the lines are still in the
    exact same spot, and no lines were added/removed above, and the code
    around the patch hasn't been changed.  There is a chance that stuff
    could slip in around that, but we have the beta test cycle and
    reviewer's eyes to keep those in check.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  43. Re: pgindent run?

    Alfred Perlstein <bright@wintelcom.net> — 2001-03-22T17:36:17Z

    * Bruce Momjian <pgman@candle.pha.pa.us> [010322 07:12] wrote:
    > > It seems that you guys are dead set on using this pgindent tool,
    > > this is cool, we'd probably use some indentation tool on the FreeBSD
    > > sources if there was one that met our code style(9) guidelines.
    > 
    > I would liken running pgindent to having a nice looking store or
    > website.  No one is going to go to a website or a store only because it
    > looks nice, but having it look nice does keep people coming back.
    
    I'm not saying I don't like pgindent, I'm saying I don't like
    pgindent's effect on the CVS history.
    
    -- 
    -Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]
    Instead of asking why a piece of software is using "1970s technology,"
    start asking why software is ignoring 30 years of accumulated wisdom.
    
    
  44. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-22T17:54:11Z

    > * Bruce Momjian <pgman@candle.pha.pa.us> [010322 07:12] wrote:
    > > > It seems that you guys are dead set on using this pgindent tool,
    > > > this is cool, we'd probably use some indentation tool on the FreeBSD
    > > > sources if there was one that met our code style(9) guidelines.
    > > 
    > > I would liken running pgindent to having a nice looking store or
    > > website.  No one is going to go to a website or a store only because it
    > > looks nice, but having it look nice does keep people coming back.
    > 
    > I'm not saying I don't like pgindent, I'm saying I don't like
    > pgindent's effect on the CVS history.
    
    How do we get around this problem?
    
    Also, I now remember that the problem with CVS auto-pgindenting, as Tom
    mentioned, is that once you cvs commit, you would have to cvs update
    again because your source tree wouldn't match cvs anymore.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  45. Re: pgindent run?

    Hiroshi Inoue <inoue@tpf.co.jp> — 2001-03-23T00:37:39Z

    Bruce Momjian wrote:
    > 
    > You don't notice the value of pgindent until you have some code that
    > hasn't been run through it.  For example, ODBC was not run through until
    > this release, and I had a terrible time trying to understand the code
    > because it didn't _look_ like the rest of the code.  Now that pgindent
    > is run, it looks more normal, and I am sure that will encourage more
    > people to get in and make changes.
    > 
    
    I see now the following comment in interfaces/odbc/statement.c.
    Though it's mine(probably), it's hard for me to read.
    Please tell me how to prevent pgindent from changing
    comments.
    
     /*
      * Basically we don't have to begin a transaction in autocommit mode
      * because Postgres backend runs in autocomit mode. We issue "BEGIN"
      * in the following cases. 1) we use declare/fetch and the statement
      * is SELECT (because declare/fetch must be called in a transaction).
      * 2) we are in autocommit off state and the statement isn't of type
      * OTHER.
      */
    
    regards,
    Hiroshi Inoue
    
    
  46. Re: pgindent run?

    Tom Lane <tgl@sss.pgh.pa.us> — 2001-03-23T00:38:47Z

    Hiroshi Inoue <Inoue@tpf.co.jp> writes:
    > Please tell me how to prevent pgindent from changing
    > comments.
    
    Put dashes at the start and end of the comment block, eg
    
    	/*----------
    	 * comment here
    	 *----------
    	 */
    
    I'm not sure exactly how many dashes are needed --- I usually use ten as
    shown above.
    
    			regards, tom lane
    
    
  47. Re: [HACKERS] pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-23T04:48:47Z

    I have applied the following patch to fix wrapping of comparisons in
    comment text, for Tom Lane.
    
    If others find comments that were mis-wrapped, I would be glad to fix
    them.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
  48. Re: pgindent run?

    Bruce Momjian <pgman@candle.pha.pa.us> — 2001-03-23T04:51:18Z

    > Bruce Momjian wrote:
    > > 
    > > You don't notice the value of pgindent until you have some code that
    > > hasn't been run through it.  For example, ODBC was not run through until
    > > this release, and I had a terrible time trying to understand the code
    > > because it didn't _look_ like the rest of the code.  Now that pgindent
    > > is run, it looks more normal, and I am sure that will encourage more
    > > people to get in and make changes.
    > > 
    > 
    > I see now the following comment in interfaces/odbc/statement.c.
    > Though it's mine(probably), it's hard for me to read.
    > Please tell me how to prevent pgindent from changing
    > comments.
    > 
    >  /*
    >   * Basically we don't have to begin a transaction in autocommit mode
    >   * because Postgres backend runs in autocomit mode. We issue "BEGIN"
    >   * in the following cases. 1) we use declare/fetch and the statement
    >   * is SELECT (because declare/fetch must be called in a transaction).
    >   * 2) we are in autocommit off state and the statement isn't of type
    >   * OTHER.
    >   */
    
    Sorry that happened.  It is mentioned in the developer's FAQ that the
    dashes prevent wrapping.  I know it is hard to remember even if you know
    it, and I would be glad to fix any comments that look bad.
    
    -- 
      Bruce Momjian                        |  http://candle.pha.pa.us
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026