Fixes #568: Add a list of files to not include in the npm package;
This reduces the size of the npm package from 4.0 to 3.3 MB (after compression; without compression it goes from 8.2 to 6.7 MB).
Here's the output of the npm pack
command after the patch:
npm notice
npm notice 📦 kresus@0.14.0
npm notice === Tarball Contents ===
npm notice 4.0kB package.json
npm notice 6.7kB CodeOfConduct.md
npm notice 6.2kB CONTRIBUTING.md
npm notice 1.1kB LICENSE
npm notice 59.7kB npm-shrinkwrap.json
npm notice 1.3kB README.md
npm notice 4.8kB bin/kresus.js
npm notice 477.5kB build/client/0.js
npm notice 7.3kB build/client/1.js
npm notice 453.8kB build/client/4.js
npm notice 28.1kB build/client/5.js
npm notice 8.0kB build/client/6.js
npm notice 165.7kB build/client/674f50d287a8c48dc19ba404d20fe713.eot
npm notice 63.6kB build/client/892667349c5cff6fcf7e40439596b97c.woff
npm notice 444.4kB build/client/912ec66d7572ff821749319396470bde.svg
npm notice 62.8kB build/client/963eb32907744d9a0d6b98127162808f.woff
npm notice 69.9kB build/client/9f2144213fad53d4e0fdb26ecf93865f.woff
npm notice 63.7kB build/client/ac327c4db6284ef64ebe872b6308f5da.woff
npm notice 77.2kB build/client/af7ae505a9eed503f8b8e6982036873e.woff2
npm notice 444.4kB build/client/assets/fonts/fontawesome-webfont-4f575d52331de91a2e32cc3408dd0eaf0cf25b7244d34b226314e3647e85ce284f86e3b7238c6c8b9022dc4e2787bf51620849290cdcd5d4c4bc905f289d2156.svg
npm notice 165.7kB build/client/assets/fonts/fontawesome-webfont-674f50d287a8c48d.eot
npm notice 444.4kB build/client/assets/fonts/fontawesome-webfont-912ec66d7572ff82.svg
npm notice 165.5kB build/client/assets/fonts/fontawesome-webfont-9ffb91e68c975172848b4bba25284678cc2c6eb4fb2d42000aa871c36656c4cebc28bf83c94df9afdfbf2407c01fe6b554c660b9b5c11af27c35acadfe6136ac.ttf
npm notice 77.2kB build/client/assets/fonts/fontawesome-webfont-af7ae505a9eed503.woff2
npm notice 77.2kB build/client/assets/fonts/fontawesome-webfont-af7ae505a9eed503f8b8e6982036873e.woff2
npm notice 165.5kB build/client/assets/fonts/fontawesome-webfont-b06871f281fee6b2.ttf
npm notice 165.7kB build/client/assets/fonts/fontawesome-webfont-c160d3d77e67eff986043461693b2a831e1175f579490d7f0b411005ea81bd4f5850ff534f6721b727c002973f3f9027ea960fac4317d37db1d4cb53ec9d343a.eot
npm notice 98.0kB build/client/assets/fonts/fontawesome-webfont-fee66e712a8a08ee.woff
npm notice 98.0kB build/client/assets/fonts/fontawesome-webfont-fee66e712a8a08eef5805a46892932ad.woff
npm notice 94.4kB build/client/assets/fonts/myriadpro-regular-32ba4abb9c1b0e57493a44abd6c52f19b3aedd4d5350b72c71dfbd83d00fcc8d64ad303c173bf48ed233a890c54449a6dda93a9f8dd79b0587d1d5b038a6ae8c.otf
npm notice 63.6kB build/client/assets/fonts/OpenSans-Bold-892667349c5cff6f.woff
npm notice 63.6kB build/client/assets/fonts/OpenSans-Bold-892667349c5cff6fcf7e40439596b97c.woff
npm notice 62.8kB build/client/assets/fonts/OpenSans-Light-963eb32907744d9a.woff
npm notice 62.8kB build/client/assets/fonts/OpenSans-Light-963eb32907744d9a0d6b98127162808f.woff
npm notice 63.7kB build/client/assets/fonts/OpenSans-Regular-ac327c4db6284ef6.woff
npm notice 63.7kB build/client/assets/fonts/OpenSans-Regular-ac327c4db6284ef64ebe872b6308f5da.woff
npm notice 69.9kB build/client/assets/fonts/OpenSans-Semibold-9f2144213fad53d4.woff
npm notice 69.9kB build/client/assets/fonts/OpenSans-Semibold-9f2144213fad53d4e0fdb26ecf93865f.woff
npm notice 211B build/client/assets/images/6215711718fe3192bc46d65dcd2f8bab47280515199c4234b7648f0d6c293c4927b11b53618ccefde15528ee5753328cf3d77653faa769f5cf72f2ea00c2707e.svg
npm notice 26.6kB build/client/assets/images/6f5d326d3ca877107711c9211bfa1052b7ee27ae20be10cd88bc63e1752dec53b61f5033fb507e3e9dd0c3163fcd485dbf501d0257c9cfd62e736197835c731e.png
npm notice 27.3kB build/client/assets/images/7b34caa19fb150de70f2655a483827786a5c4240aa17103debf2e2238aca59b32d745beaedc116234b5b5fcbd37e452d6c81b8da63be13aeb7d80c90d8c23894.png
npm notice 99B build/client/assets/images/9806d0c23d474751869311ecef35e81377d140cb35ab75791009f769980941840d2f8e51537cd9ad67aadacd2ddb5b8f94ab3723adc84792d53d52de33e18c89.svg
npm notice 24.8kB build/client/assets/images/ab63efbbefafdfac53bd2860085367c18df6a72be3757cfffbb4b766039942a2ba812168ac24bd2a72bb48d204f5d0217b587f91a7d2bf75e3f2b97e6bd2b219.png
npm notice 165.5kB build/client/b06871f281fee6b241d60582ae9369b9.ttf
npm notice 24.9kB build/client/c6a01cf9a631d121e2241c9d8d78c9fc336c6da3ef235013c4597a6d414187382c1fc660122cf2b3abe38f695a4c80c253291f32e8448e1ab6d42fd79f33c5ef.png
npm notice 82B build/client/cbdbb56c3db60bbd9fa97de4fc53074717a6942568a1c0a69c5f9746d987aaac79a627ac8211041eb10dde38e0de0971219a34bc9140c570ec497333b2270e24.svg
npm notice 1.1kB build/client/ce2057e1799091d2462091610263ec01507c31eae8f41387f1b9c72af1fd2acce7c33aec1e984c4127657f4518fa6569f149444fed0fc5607297bb5ff3d354df.png
npm notice 8.8kB build/client/favicon/android-chrome-144x144.png
npm notice 11.7kB build/client/favicon/android-chrome-192x192.png
npm notice 2.1kB build/client/favicon/android-chrome-36x36.png
npm notice 3.2kB build/client/favicon/android-chrome-48x48.png
npm notice 4.4kB build/client/favicon/android-chrome-72x72.png
npm notice 5.9kB build/client/favicon/android-chrome-96x96.png
npm notice 2.3kB build/client/favicon/apple-touch-icon-114x114.png
npm notice 2.4kB build/client/favicon/apple-touch-icon-120x120.png
npm notice 2.8kB build/client/favicon/apple-touch-icon-144x144.png
npm notice 2.9kB build/client/favicon/apple-touch-icon-152x152.png
npm notice 3.3kB build/client/favicon/apple-touch-icon-180x180.png
npm notice 1.6kB build/client/favicon/apple-touch-icon-57x57.png
npm notice 1.7kB build/client/favicon/apple-touch-icon-60x60.png
npm notice 1.9kB build/client/favicon/apple-touch-icon-72x72.png
npm notice 1.7kB build/client/favicon/apple-touch-icon-76x76.png
npm notice 7.4kB build/client/favicon/apple-touch-icon-precomposed.png
npm notice 3.3kB build/client/favicon/apple-touch-icon.png
npm notice 443B build/client/favicon/browserconfig.xml
npm notice 8.8kB build/client/favicon/favicon-144x144.png
npm notice 1.2kB build/client/favicon/favicon-16x16.png
npm notice 11.7kB build/client/favicon/favicon-192x192.png
npm notice 1.9kB build/client/favicon/favicon-32x32.png
npm notice 3.2kB build/client/favicon/favicon-48x48.png
npm notice 5.9kB build/client/favicon/favicon-96x96.png
npm notice 15.1kB build/client/favicon/favicon.ico
npm notice 806B build/client/favicon/manifest.json
npm notice 8.9kB build/client/favicon/mstile-144x144.png
npm notice 8.7kB build/client/favicon/mstile-150x150.png
npm notice 9.4kB build/client/favicon/mstile-310x150.png
npm notice 18.8kB build/client/favicon/mstile-310x310.png
npm notice 6.1kB build/client/favicon/mstile-70x70.png
npm notice 3.8kB build/client/favicon/safari-pinned-tab.svg
npm notice 98.0kB build/client/fee66e712a8a08eef5805a46892932ad.woff
npm notice 2.6kB build/client/index.html
npm notice 91.3kB build/client/main.css
npm notice 1.0MB build/client/main.js
npm notice 118B build/client/robots.txt
npm notice 20.4kB build/client/themes-dark-bundle.css
npm notice 938B build/client/themes-dark-bundle.js
npm notice 15.3kB build/client/themes-default-bundle.css
npm notice 938B build/client/themes-default-bundle.js
npm notice 19.2kB build/client/themes-light-bundle.css
npm notice 938B build/client/themes-light-bundle.js
npm notice 37B build/client/themes.json
npm notice 485B build/client/themes/default.js
npm notice 485B build/client/themes/light.js
npm notice 12.3kB build/server/config.js
npm notice 2.6kB build/server/controllers/manifest.js
npm notice 310B build/server/controllers/routes.js
npm notice 11.7kB build/server/controllers/v1/accesses.js
npm notice 5.6kB build/server/controllers/v1/accounts.js
npm notice 4.1kB build/server/controllers/v1/alerts.js
npm notice 21.0kB build/server/controllers/v1/all.js
npm notice 6.4kB build/server/controllers/v1/budgets.js
npm notice 5.8kB build/server/controllers/v1/categories.js
npm notice 8.3kB build/server/controllers/v1/helpers.js
npm notice 3.0kB build/server/controllers/v1/logs.js
npm notice 6.4kB build/server/controllers/v1/operations.js
npm notice 3.3kB build/server/controllers/v1/routes.js
npm notice 4.4kB build/server/controllers/v1/settings.js
npm notice 9.6kB build/server/helpers.js
npm notice 5.4kB build/server/index.js
npm notice 2.4kB build/server/init.js
npm notice 29.8kB build/server/lib/accounts-manager.js
npm notice 9.0kB build/server/lib/alert-manager.js
npm notice 2.8kB build/server/lib/async-queue.js
npm notice 1.4kB build/server/lib/cron.js
npm notice 2.3kB build/server/lib/diff-accounts.js
npm notice 3.9kB build/server/lib/diff-list.js
npm notice 2.3kB build/server/lib/diff-operations.js
npm notice 4.7kB build/server/lib/emailer.js
npm notice 1.8kB build/server/lib/logger.js
npm notice 504B build/server/lib/notifications.js
npm notice 8.0kB build/server/lib/poller.js
npm notice 13.9kB build/server/lib/report-manager.js
npm notice 2.0kB build/server/lib/sources/manual.js
npm notice 10.9kB build/server/lib/sources/mock.js
npm notice 12.0kB build/server/lib/sources/weboob.js
npm notice 5.6kB build/server/models/accesses.js
npm notice 7.6kB build/server/models/accounts.js
npm notice 1.7kB build/server/models/accounttype.js
npm notice 9.1kB build/server/models/alert.js
npm notice 1.3kB build/server/models/bank.js
npm notice 8.5kB build/server/models/budget.js
npm notice 4.2kB build/server/models/category.js
npm notice 9.0kB build/server/models/config.js
npm notice 2.0kB build/server/models/index.js
npm notice 44.9kB build/server/models/migrations.js
npm notice 12.7kB build/server/models/operation.js
npm notice 2.8kB build/server/models/operationtype.js
npm notice 2.5kB build/server/models/requests.js
npm notice 533B build/server/models/static-data.js
npm notice 1.3kB build/server/models/users.js
npm notice 1.6kB build/server/shared/account-types.json
npm notice 30.8kB build/server/shared/banks.json
npm notice 2.2kB build/server/shared/default-alerts.json
npm notice 1.6kB build/server/shared/default-categories.json
npm notice 1.3kB build/server/shared/default-settings.js
npm notice 565B build/server/shared/errors.json
npm notice 3.8kB build/server/shared/helpers.js
npm notice 30.8kB build/server/shared/locales/en.json
npm notice 34.7kB build/server/shared/locales/fr.json
npm notice 934B build/server/shared/operation-types.json
npm notice 1.1kB build/server/shared/validators.js
npm notice 141B build/server/weboob/fakemodules/fakeweboobbank/__init__.py
npm notice 11.6kB build/server/weboob/fakemodules/fakeweboobbank/module.py
npm notice 28.2kB build/server/weboob/main.py
npm notice 10.5kB client/main.js
npm notice 376B docker-compose/docker-compose.example.env
npm notice 2.5kB docker-compose/docker-compose.example.yml
npm notice 4.8kB docker/config-janitor.ini
npm notice 5.1kB docker/config.example.ini
npm notice 1.8kB docker/Dockerfile-janitor
npm notice 1.6kB docker/Dockerfile-nightly
npm notice 1.2kB docker/Dockerfile-stable
npm notice 1.5kB docker/entrypoint.sh
npm notice 762B docker/janitor.json
npm notice === Tarball Details ===
npm notice name: kresus
npm notice version: 0.14.0
npm notice filename: kresus-0.14.0.tgz
npm notice package size: 3.3 MB
npm notice unpacked size: 6.7 MB
npm notice shasum: de4b95987707ca540163aafe9dfec03a4ff67c6d
npm notice integrity: sha512-GrAGg11MAX2+9[...]TuaCv9Pyio1Xw==
npm notice total files: 164
npm notice
kresus-0.14.0.tgz
As commented in the npmignore file, the client/main.js
is an aberration that looks like a bug in npm itself. Putting client/
wouldn't exclude the client directory at all, and the glob I've used instead doesn't exclude client/main.js
, and entering it by hand doesn't exclude it either. Oh well. One has not so much excess time on Earth.
Every other file would be useful in the package (esp. Dockerfile and example config.ini files).