hg: harfbuzz/jdk9/jdk: whitespace removal

Philip Race philip.race at oracle.com
Wed Nov 18 04:59:30 UTC 2015


jdk has a mercurial hook that disallows check-ins that break various rules.
- tabs are disallowed
- trailing white space is disallowed.
- DOS line endings disallowed,

So this needs to be done.  Perhaps there should be a script already and
I don't know for sure what other people do but I seem to be on the hook
for multiple external libraries that need to be checked for this and I find
it fairly straightforward to fix with sed and expand. I don't see DOS line
endings much in other open source projects but have seen it in javafx
If upstream libraries followed the same rules it would be even easier of
course. Removing trailing white space might be one that people could 
easily agree
is a good rule, but tabs might be a more divisive issue so I have never 
tried
to push either issue onto upstream libraries. And in any case we know
from javafx where we have the same "rules" but no mercurial hook
that these creep in - notably dos line endings.

My expand is literally just calling expand on each file
and trailing whitespace is just sed -e 's/ [ ]*$//'

-phil.

On 11/17/15, 7:01 PM, Behdad Esfahbod wrote:
> On Tue, Nov 17, 2015 at 6:53 PM, Steven R. Loomis <srl at icu-project.org 
> <mailto:srl at icu-project.org>> wrote:
>
>     This is needed for committing upstream…
>
>     Is the whitespace removal done by a script we can check in? Then
>     at least harfbuzz+1 with whitespace removed  can be compared more
>     easily.
>
>     Behdad, also, I will be working (after this goes in) on loading
>     harfbuzz via pkg-config.
>
>
> That will be great!
>
> Thanks,
> b
>
>
>     -s
>
>     > On Nov 17, 2015, at 6:51 PM, Behdad Esfahbod <behdad at google.com
>     <mailto:behdad at google.com>> wrote:
>     >
>     > Phil,
>     >
>     > I'm worried that the way you are pushing this, updating to a new
>     HarfBuzz
>     > version will be A LOT of unnecessary work.  Can't you leave the
>     harfbuzz
>     > copy untouched?
>     >
>     > behdad
>     >
>     > On Tue, Nov 17, 2015 at 12:49 PM, <philip.race at oracle.com
>     <mailto:philip.race at oracle.com>> wrote:
>     >
>     >> Changeset: 1f2c69ff1008
>     >> Author:    prr
>     >> Date:      2015-11-17 12:47 -0800
>     >> URL: http://hg.openjdk.java.net/harfbuzz/jdk9/jdk/rev/1f2c69ff1008
>     >>
>     >> whitespace removal
>     >>
>     >> ! src/java.desktop/share/classes/sun/font/SunLayoutEngine.java
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-atomic-private.hh
>     >> ! src/java.desktop/share/native/libfontmanager/harfbuzz/hb-blob.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer-deserialize-json.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer-deserialize-text.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer-serialize.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-common.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-coretext.cc
>     >> ! src/java.desktop/share/native/libfontmanager/harfbuzz/hb-face.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-fallback-shape.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-font-private.hh
>     >> ! src/java.desktop/share/native/libfontmanager/harfbuzz/hb-font.cc
>     >> ! src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ft.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-mutex-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-object-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-open-file-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-open-type-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-cmap-table.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-font.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-glyf-table.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-head-table.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-hhea-table.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-hmtx-table.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-common-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gdef-table.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gpos-table.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gsub-table.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gsubgpos-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-jstf-table.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-map-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-map.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-maxp-table.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-name-table.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic-fallback.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic-table.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic-win1256.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-hangul.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-hebrew.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic-machine.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic-table.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-myanmar-machine.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-myanmar.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-thai.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use-machine.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use-table.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-fallback-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-fallback.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-normalize-private.hh
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-normalize.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-tag.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-set-private.hh
>     >> ! src/java.desktop/share/native/libfontmanager/harfbuzz/hb-set.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape-plan-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape-plan.cc
>     >> ! src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shaper-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shaper.cc
>     >> ! src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ucdn.cc
>     >> !
>     >>
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-unicode-private.hh
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-unicode.cc
>     >> !
>     src/java.desktop/share/native/libfontmanager/harfbuzz/hb-utf-private.hh
>     >>
>     >>
>
>


More information about the harfbuzz-dev mailing list