Hi,

After Firefox 57 removed support for legacy extensions, I decided to
(roughly) track how much XPIDL code we have. Here are some measurements:

Fri, Aug 4, 2017: m-i 372493:72873c109b1b
.idl files: 1167
.idl lines: 110240 total
.xpt bytes: 417621 total

Thu, Aug 17, 2017: m-i 375206:7a794cd2aee1
.idl files: 1150
.idl lines: 108854 total
.xpt bytes: 412984 total

Tue, Sep 26, 2017: m-i 382849:42a6a1c9c4cf
.idl files: 1122
.idl lines: 107963 total
.xpt bytes: 411283 total

Tue, Nov 14, 2017: m-i 391533:479f3105ad3b
.idl files: 1087
.idl lines: 106809 total
.xpt bytes: 409510 total

Thu, Feb 01, 2018: m-i 401956:8ebdf597ade8
.idl files: 1027
.idl lines: 103800 total
.xpt bytes: 398695 total

Tue, Jun 26, 2018: m-i 423583:4a20ed6e2fee
.idl files: 905
.idl lines: 97278 total
.xpt bytes: 3717958 total

The trend is clearly down, except for the large increase in .xpt size for
the most recent measurement -- note the extra digit! It appears that .xpt
files used to be binary, and now they are JSON. This might be related to
mccr8's recent XPT overhaul (bug 1438688)?

The script I use for this is below, for those who are interested.

Nick


#! /bin/sh
#
# Measures various XPIDL things in ./ and o64/. (It assumes o64/ is the
# objdir.) I put the results in ~/moz/txt/xpidl.txt.

if [ ! -d o64 ] ; then
    echo "o64/ doesn't exist"
    return 1
fi

# Count number of .idl files, excluding ones in objdirs, testing ones, and
# mortar ones.
echo -n ".idl files: "
find . -name '*.idl' | \
    grep -v "64[a-z]*\/dist" | grep -v "testing\/" | grep -v "mortar\/" | \
    wc --lines

# Count number of lines in those .idl files.
echo -n ".idl lines: "
find . -name '*.idl' | \
    grep -v "64[a-z]*\/dist" | grep -v "testing\/" | grep -v "mortar\/" | \
    xargs wc --lines | tail -1

# Count number of bytes in .xpt files.
cd o64
echo -n ".xpt bytes: "
find . -name '*.xpt' | xargs wc --bytes | tail -1
cd ..
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to