Skip to content
This repository was archived by the owner on Nov 8, 2024. It is now read-only.

Conversation

@kylef
Copy link
Member

@kylef kylef commented Jul 8, 2019

This allows us to prevent accidentally releasing unrelated files into the NPM packages, for example vim swap files, test fixtures etc.

Where possibly (for example, if the package only has a single source file). The single file is referenced in files. If there are multiple files, then I am using a *.js or similiar.

I've shared results of npm pack below after all the changes so you can see.

api-elements

npm notice 📦  api-elements@0.2.2
npm notice === Tarball Contents ===
npm notice 784B   package.json
npm notice 525B   CHANGELOG.md
npm notice 15.9kB README.md
npm notice 2.2kB  lib/api-elements.js
npm notice 505B   lib/define-source-map-value.js
npm notice 6.8kB  lib/define-value-of.js
npm notice 449B   lib/elements/Annotation.js
npm notice 739B   lib/elements/Asset.js
npm notice 708B   lib/elements/AuthScheme.js
npm notice 2.1kB  lib/elements/Category.js
npm notice 857B   lib/elements/Copy.js
npm notice 413B   lib/elements/DataStructure.js
npm notice 874B   lib/elements/Enum.js
npm notice 337B   lib/elements/Extension.js
npm notice 336B   lib/elements/HrefVariables.js
npm notice 1.0kB  lib/elements/HttpHeaders.js
npm notice 1.9kB  lib/elements/HttpMessagePayload.js
npm notice 1.0kB  lib/elements/HttpRequest.js
npm notice 595B   lib/elements/HttpResponse.js
npm notice 912B   lib/elements/HttpTransaction.js
npm notice 1.2kB  lib/elements/ParseResult.js
npm notice 1.2kB  lib/elements/Resource.js
npm notice 564B   lib/elements/SourceMap.js
npm notice 2.2kB  lib/elements/Transition.js

fury

npm notice 📦  fury@3.0.0-beta.12
npm notice === Tarball Contents ===
npm notice 722B  package.json
npm notice 6.4kB CHANGELOG.md
npm notice 6.1kB README.md
npm notice 6.7kB lib/fury.js

fury-adapter-apiary-blueprint-parser

npm notice 📦  fury-adapter-apiary-blueprint-parser@3.0.0-beta.9
npm notice === Tarball Contents ===
npm notice 1.2kB  package.json
npm notice 2.3kB  CHANGELOG.md
npm notice 1.2kB  README.md
npm notice 419B   lib/adapter.js
npm notice 77.6kB lib/apiary-blueprint-parser.js
npm notice 6.8kB  lib/ast.js
npm notice 6.7kB  lib/parser.js

fury-adapter-apib-parser

npm notice 📦  fury-adapter-apib-parser@0.16.0
npm notice === Tarball Contents ===
npm notice 909B  package.json
npm notice 2.6kB CHANGELOG.md
npm notice 951B  README.md
npm notice 803B  lib/adapter.js

fury-adapter-apib-serializer

npm notice 📦  fury-adapter-apib-serializer@0.12.0
npm notice === Tarball Contents ===
npm notice 929B  package.json
npm notice 2.7kB CHANGELOG.md
npm notice 870B  README.md
npm notice 5.3kB template.nunjucks
npm notice 1.2kB lib/adapter.js
npm notice 2.0kB lib/filters.js
npm notice 6.9kB lib/mson.js

fury-adapter-oas3-parser

npm notice 📦  fury-adapter-oas3-parser@0.9.0
npm notice === Tarball Contents ===
npm notice 1.1kB package.json
npm notice 5.5kB CHANGELOG.md
npm notice 2.2kB README.md
npm notice 816B  lib/adapter.js
npm notice 382B  lib/context.js
npm notice 447B  lib/elements.js
npm notice 750B  lib/parser.js
npm notice 2.4kB lib/parser/annotations.js
npm notice 6.8kB lib/parser/oas/parseComponentsObject.js
npm notice 1.3kB lib/parser/oas/parseExampleObject.js
npm notice 1.4kB lib/parser/oas/parseHeaderObject.js
npm notice 2.2kB lib/parser/oas/parseInfoObject.js
npm notice 5.7kB lib/parser/oas/parseMediaTypeObject.js
npm notice 1.9kB lib/parser/oas/parseOauthFlowObject.js
npm notice 2.8kB lib/parser/oas/parseOauthFlowsObject.js
npm notice 4.7kB lib/parser/oas/parseOpenAPIObject.js
npm notice 5.5kB lib/parser/oas/parseOperationObject.js
npm notice 6.3kB lib/parser/oas/parseParameterObject.js
npm notice 1.9kB lib/parser/oas/parseParameterObjects.js
npm notice 6.0kB lib/parser/oas/parsePathItemObject.js
npm notice 1.5kB lib/parser/oas/parsePathsObject.js
npm notice 3.2kB lib/parser/oas/parseReferenceObject.js
npm notice 2.4kB lib/parser/oas/parseRequestBodyObject.js
npm notice 3.1kB lib/parser/oas/parseResponseObject.js
npm notice 3.0kB lib/parser/oas/parseResponsesObject.js
npm notice 8.1kB lib/parser/oas/parseSchemaObject.js
npm notice 1.8kB lib/parser/oas/parseSecurityRequirementObject.js
npm notice 5.3kB lib/parser/oas/parseSecuritySchemeObject.js
npm notice 1.4kB lib/parser/openapi.js
npm notice 3.7kB lib/parser/parseArray.js
npm notice 1.7kB lib/parser/parseBoolean.js
npm notice 941B  lib/parser/parseCopy.js
npm notice 1.6kB lib/parser/parseMap.js
npm notice 6.7kB lib/parser/parseObject.js
npm notice 1.0kB lib/parser/parseReference.js
npm notice 1.7kB lib/parser/parseString.js
npm notice 5.0kB lib/parser/parseYAML.js
npm notice 2.4kB lib/pipeParseResult.js
npm notice 1.9kB lib/predicates.js
npm notice 237B  lib/state.js

fury-adapter-remote

npm notice 📦  fury-adapter-remote@0.3.0
npm notice === Tarball Contents ===
npm notice 874B  package.json
npm notice 362B  CHANGELOG.md
npm notice 2.1kB README.md
npm notice 4.0kB lib/adapter.js

fury-adapter-swagger

npm notice 📦  fury-adapter-swagger@0.27.1
npm notice === Tarball Contents ===
npm notice 1.1kB  package.json
npm notice 22.8kB CHANGELOG.md
npm notice 2.0kB  README.md
npm notice 761B   lib/adapter.js
npm notice 781B   lib/annotations.js
npm notice 2.3kB  lib/ast.js
npm notice 3.7kB  lib/generator.js
npm notice 2.3kB  lib/headers.js
npm notice 10.9kB lib/json-schema.js
npm notice 1.0kB  lib/link.js
npm notice 1.8kB  lib/media-type.js
npm notice 50.8kB lib/parser.js
npm notice 11.1kB lib/schema.js
npm notice 809B   lib/uri-template.js

fury-cli

npm notice 📦  fury-cli@0.9.1
npm notice === Tarball Contents ===
npm notice 1.1kB package.json
npm notice 3.9kB CHANGELOG.md
npm notice 2.2kB README.md
npm notice 7.1kB lib/fury.js

swagger-zoo

npm notice 📦  swagger-zoo@3.1.0
npm notice === Tarball Contents ===
npm notice 671B    package.json
npm notice 1.9kB   index.js
npm notice 1.9kB   README.md
npm notice 1.1MB   fixtures/examples/api-elements/instagram.json
npm notice 1.6MB   fixtures/examples/api-elements/instagram.sourcemap.json
npm notice 51.6kB  fixtures/examples/api-elements/petstore.json
npm notice 91.6kB  fixtures/examples/api-elements/petstore.sourcemap.json
npm notice 24.3kB  fixtures/examples/api-elements/simple-api.json
npm notice 56.6kB  fixtures/examples/api-elements/simple-api.sourcemap.json
npm notice 75.7kB  fixtures/examples/api-elements/uber.json
npm notice 157.6kB fixtures/examples/api-elements/uber.sourcemap.json
npm notice 30.0kB  fixtures/examples/swagger/instagram.yaml
npm notice 4.9kB   fixtures/examples/swagger/petstore.yaml
npm notice 6.1kB   fixtures/examples/swagger/simple-api.yaml
npm notice 9.1kB   fixtures/examples/swagger/uber.yaml
npm notice 9.7kB   fixtures/features/api-elements/action.json
npm notice 42.6kB  fixtures/features/api-elements/action.sourcemap.json
npm notice 3.9kB   fixtures/features/api-elements/auth-basic.json
npm notice 12.5kB  fixtures/features/api-elements/auth-basic.sourcemap.json
npm notice 3.3kB   fixtures/features/api-elements/auth-does-not-exist.json
npm notice 11.0kB  fixtures/features/api-elements/auth-does-not-exist.sourcemap.json
npm notice 4.7kB   fixtures/features/api-elements/auth-double.json
npm notice 16.3kB  fixtures/features/api-elements/auth-double.sourcemap.json
npm notice 526B    fixtures/features/api-elements/auth-empty-security.json
npm notice 1.9kB   fixtures/features/api-elements/auth-empty-security.sourcemap.json
npm notice 9.8kB   fixtures/features/api-elements/auth-global.json
npm notice 31.7kB  fixtures/features/api-elements/auth-global.sourcemap.json
npm notice 7.5kB   fixtures/features/api-elements/auth-oauth2-access-code.json
npm notice 28.5kB  fixtures/features/api-elements/auth-oauth2-access-code.sourcemap.json
npm notice 7.0kB   fixtures/features/api-elements/auth-oauth2-application.json
npm notice 26.0kB  fixtures/features/api-elements/auth-oauth2-application.sourcemap.json
npm notice 7.0kB   fixtures/features/api-elements/auth-oauth2-implicit.json
npm notice 26.0kB  fixtures/features/api-elements/auth-oauth2-implicit.sourcemap.json
npm notice 7.0kB   fixtures/features/api-elements/auth-oauth2-password.json
npm notice 26.1kB  fixtures/features/api-elements/auth-oauth2-password.sourcemap.json
npm notice 7.0kB   fixtures/features/api-elements/auth-oauth2-scope-does-not-exist.json
npm notice 26.0kB  fixtures/features/api-elements/auth-oauth2-scope-does-not-exist.sourcemap.json
npm notice 4.3kB   fixtures/features/api-elements/auth-token-in-header.json
npm notice 13.9kB  fixtures/features/api-elements/auth-token-in-header.sourcemap.json
npm notice 4.3kB   fixtures/features/api-elements/auth-token-in-query.json
npm notice 13.9kB  fixtures/features/api-elements/auth-token-in-query.sourcemap.json
npm notice 4.2kB   fixtures/features/api-elements/auth-with-x-summary.json
npm notice 14.6kB  fixtures/features/api-elements/auth-with-x-summary.sourcemap.json
npm notice 1.9kB   fixtures/features/api-elements/basepath-with-extra-slash.json
npm notice 7.4kB   fixtures/features/api-elements/basepath-with-extra-slash.sourcemap.json
npm notice 3.6kB   fixtures/features/api-elements/body-binary.json
npm notice 9.2kB   fixtures/features/api-elements/body-binary.sourcemap.json
npm notice 12.3kB  fixtures/features/api-elements/body-schema-example.json
npm notice 21.3kB  fixtures/features/api-elements/body-schema-example.sourcemap.json
npm notice 9.1kB   fixtures/features/api-elements/collection-format.json
npm notice 23.1kB  fixtures/features/api-elements/collection-format.sourcemap.json
npm notice 6.5kB   fixtures/features/api-elements/consumes-json-subtype.json
npm notice 13.1kB  fixtures/features/api-elements/consumes-json-subtype.sourcemap.json
npm notice 10.4kB  fixtures/features/api-elements/consumes-multipart-form-with-boundary.json
npm notice 23.7kB  fixtures/features/api-elements/consumes-multipart-form-with-boundary.sourcemap.json
npm notice 6.9kB   fixtures/features/api-elements/consumes-multipart-form.json
npm notice 15.0kB  fixtures/features/api-elements/consumes-multipart-form.sourcemap.json
npm notice 4.7kB   fixtures/features/api-elements/data-structures.json
npm notice 13.0kB  fixtures/features/api-elements/data-structures.sourcemap.json
npm notice 4.1kB   fixtures/features/api-elements/default-response.json
npm notice 9.7kB   fixtures/features/api-elements/default-response.sourcemap.json
npm notice 645B    fixtures/features/api-elements/description.json
npm notice 2.8kB   fixtures/features/api-elements/description.sourcemap.json
npm notice 5.9kB   fixtures/features/api-elements/example-header.json
npm notice 21.3kB  fixtures/features/api-elements/example-header.sourcemap.json
npm notice 9.2kB   fixtures/features/api-elements/extensions.json
npm notice 16.9kB  fixtures/features/api-elements/extensions.sourcemap.json
npm notice 7.3kB   fixtures/features/api-elements/external-docs.json
npm notice 21.7kB  fixtures/features/api-elements/external-docs.sourcemap.json
npm notice 13.1kB  fixtures/features/api-elements/form-data-file.json
npm notice 22.2kB  fixtures/features/api-elements/form-data-file.sourcemap.json
npm notice 12.5kB  fixtures/features/api-elements/form-data.json
npm notice 29.8kB  fixtures/features/api-elements/form-data.sourcemap.json
npm notice 2.8kB   fixtures/features/api-elements/hostname.json
npm notice 10.1kB  fixtures/features/api-elements/hostname.sourcemap.json
npm notice 533B    fixtures/features/api-elements/minimal-json.json
npm notice 2.0kB   fixtures/features/api-elements/minimal-json.sourcemap.json
npm notice 533B    fixtures/features/api-elements/minimal-yaml.json
npm notice 2.0kB   fixtures/features/api-elements/minimal-yaml.sourcemap.json
npm notice 24.4kB  fixtures/features/api-elements/multiple-produces-consumes.json
npm notice 37.5kB  fixtures/features/api-elements/multiple-produces-consumes.sourcemap.json
npm notice 6.5kB   fixtures/features/api-elements/operation-consumes-json-subtype.json
npm notice 13.1kB  fixtures/features/api-elements/operation-consumes-json-subtype.sourcemap.json
npm notice 8.2kB   fixtures/features/api-elements/operation-produces-json-subtype.json
npm notice 14.8kB  fixtures/features/api-elements/operation-produces-json-subtype.sourcemap.json
npm notice 2.3kB   fixtures/features/api-elements/param-no-response.json
npm notice 2.3kB   fixtures/features/api-elements/param-no-response.sourcemap.json
npm notice 6.6kB   fixtures/features/api-elements/param-with-enum-default.json
npm notice 24.5kB  fixtures/features/api-elements/param-with-enum-default.sourcemap.json
npm notice 6.9kB   fixtures/features/api-elements/params.json
npm notice 25.2kB  fixtures/features/api-elements/params.sourcemap.json
npm notice 5.2kB   fixtures/features/api-elements/path-level-params.json
npm notice 19.7kB  fixtures/features/api-elements/path-level-params.sourcemap.json
npm notice 1.6kB   fixtures/features/api-elements/path-reference-typo.json
npm notice 1.6kB   fixtures/features/api-elements/path-reference-typo.sourcemap.json
npm notice 4.5kB   fixtures/features/api-elements/path-reference.json
npm notice 4.5kB   fixtures/features/api-elements/path-reference.sourcemap.json
npm notice 4.9kB   fixtures/features/api-elements/payload-as-string.json
npm notice 14.8kB  fixtures/features/api-elements/payload-as-string.sourcemap.json
npm notice 1.9kB   fixtures/features/api-elements/produces-binary.json
npm notice 7.4kB   fixtures/features/api-elements/produces-binary.sourcemap.json
npm notice 3.0kB   fixtures/features/api-elements/produces-file.json
npm notice 9.6kB   fixtures/features/api-elements/produces-file.sourcemap.json
npm notice 9.2kB   fixtures/features/api-elements/produces-header.json
npm notice 21.5kB  fixtures/features/api-elements/produces-header.sourcemap.json
npm notice 8.2kB   fixtures/features/api-elements/produces-json-subtype.json
npm notice 14.8kB  fixtures/features/api-elements/produces-json-subtype.sourcemap.json
npm notice 10.2kB  fixtures/features/api-elements/recursion.json
npm notice 25.2kB  fixtures/features/api-elements/recursion.sourcemap.json
npm notice 7.2kB   fixtures/features/api-elements/request-headers.json
npm notice 16.5kB  fixtures/features/api-elements/request-headers.sourcemap.json
npm notice 4.0kB   fixtures/features/api-elements/response-example-with-produces.json
npm notice 13.1kB  fixtures/features/api-elements/response-example-with-produces.sourcemap.json
npm notice 12.9kB  fixtures/features/api-elements/schema-multi-reference.json
npm notice 21.9kB  fixtures/features/api-elements/schema-multi-reference.sourcemap.json
npm notice 21.5kB  fixtures/features/api-elements/schema-reference.json
npm notice 35.2kB  fixtures/features/api-elements/schema-reference.sourcemap.json
npm notice 8.5kB   fixtures/features/api-elements/tags.json
npm notice 30.8kB  fixtures/features/api-elements/tags.sourcemap.json
npm notice 10.1kB  fixtures/features/api-elements/warnings.json
npm notice 21.1kB  fixtures/features/api-elements/warnings.sourcemap.json
npm notice 5.3kB   fixtures/features/api-elements/x-example-and-request-body.json
npm notice 11.9kB  fixtures/features/api-elements/x-example-and-request-body.sourcemap.json
npm notice 14.7kB  fixtures/features/api-elements/x-example.json
npm notice 39.7kB  fixtures/features/api-elements/x-example.sourcemap.json
npm notice 2.1kB   fixtures/features/api-elements/x-summary-and-description.json
npm notice 9.3kB   fixtures/features/api-elements/x-summary-and-description.sourcemap.json
npm notice 854B    fixtures/features/swagger/action.yaml
npm notice 301B    fixtures/features/swagger/auth-basic.yaml
npm notice 259B    fixtures/features/swagger/auth-does-not-exist.yaml
npm notice 394B    fixtures/features/swagger/auth-double.yaml
npm notice 88B     fixtures/features/swagger/auth-empty-security.yaml
npm notice 728B    fixtures/features/swagger/auth-global.yaml
npm notice 540B    fixtures/features/swagger/auth-oauth2-access-code.yaml
npm notice 482B    fixtures/features/swagger/auth-oauth2-application.yaml
npm notice 488B    fixtures/features/swagger/auth-oauth2-implicit.yaml
npm notice 476B    fixtures/features/swagger/auth-oauth2-password.yaml
npm notice 527B    fixtures/features/swagger/auth-oauth2-scope-does-not-exist.yaml
npm notice 347B    fixtures/features/swagger/auth-token-in-header.yaml
npm notice 340B    fixtures/features/swagger/auth-token-in-query.yaml
npm notice 377B    fixtures/features/swagger/auth-with-x-summary.yaml
npm notice 188B    fixtures/features/swagger/basepath-with-extra-slash.yaml
npm notice 343B    fixtures/features/swagger/body-binary.yaml
npm notice 501B    fixtures/features/swagger/body-schema-example.yaml
npm notice 588B    fixtures/features/swagger/collection-format.yaml
npm notice 329B    fixtures/features/swagger/consumes-json-subtype.yaml
npm notice 480B    fixtures/features/swagger/consumes-multipart-form-with-boundary.yaml
npm notice 321B    fixtures/features/swagger/consumes-multipart-form.yaml
npm notice 329B    fixtures/features/swagger/data-structures.yaml
npm notice 257B    fixtures/features/swagger/default-response.yaml
npm notice 98B     fixtures/features/swagger/description.yaml
npm notice 534B    fixtures/features/swagger/example-header.yaml
npm notice 484B    fixtures/features/swagger/extensions.yaml
npm notice 636B    fixtures/features/swagger/external-docs.yaml
npm notice 408B    fixtures/features/swagger/form-data-file.yaml
npm notice 612B    fixtures/features/swagger/form-data.yaml
npm notice 232B    fixtures/features/swagger/hostname.yaml
npm notice 101B    fixtures/features/swagger/minimal-json.json
npm notice 71B     fixtures/features/swagger/minimal-yaml.yaml
npm notice 454B    fixtures/features/swagger/multiple-produces-consumes.yaml
npm notice 341B    fixtures/features/swagger/operation-consumes-json-subtype.yaml
npm notice 258B    fixtures/features/swagger/operation-produces-json-subtype.yaml
npm notice 267B    fixtures/features/swagger/param-no-response.yaml
npm notice 511B    fixtures/features/swagger/param-with-enum-default.yaml
npm notice 727B    fixtures/features/swagger/params.yaml
npm notice 575B    fixtures/features/swagger/path-level-params.yaml
npm notice 370B    fixtures/features/swagger/path-reference-typo.yaml
npm notice 369B    fixtures/features/swagger/path-reference.yaml
npm notice 514B    fixtures/features/swagger/payload-as-string.yaml
npm notice 260B    fixtures/features/swagger/produces-binary.yaml
npm notice 229B    fixtures/features/swagger/produces-file.yaml
npm notice 519B    fixtures/features/swagger/produces-header.yaml
npm notice 246B    fixtures/features/swagger/produces-json-subtype.yaml
npm notice 1.0kB   fixtures/features/swagger/recursion.yaml
npm notice 580B    fixtures/features/swagger/request-headers.yaml
npm notice 285B    fixtures/features/swagger/response-example-with-produces.yaml
npm notice 602B    fixtures/features/swagger/schema-multi-reference.yaml
npm notice 887B    fixtures/features/swagger/schema-reference.yaml
npm notice 700B    fixtures/features/swagger/tags.yaml
npm notice 412B    fixtures/features/swagger/warnings.yaml
npm notice 353B    fixtures/features/swagger/x-example-and-request-body.yaml
npm notice 918B    fixtures/features/swagger/x-example.yaml
npm notice 241B    fixtures/features/swagger/x-summary-and-description.yaml

This allows us to prevent accidentally releasing unrelated files into
the NPM packages, for example vim swap files, test fixtures etc.
@kylef kylef requested a review from honzajavorek July 11, 2019 08:15
Copy link
Contributor

@honzajavorek honzajavorek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about LICENSE? :trollface:

@opichals
Copy link
Contributor

@honzajavorek I think npm bundles the LICENSE files without mentioning.

@honzajavorek
Copy link
Contributor

I checked and the license files are not in place, but I think that's because @kylef did the tests with npm pack directly. When the packages get released, that's done using Lerna and Lerna is able to copy-paste the root license inside the packages before publishing, so that should be fine.

@pksunkara pksunkara merged commit e2e5fcf into master Jul 11, 2019
@pksunkara pksunkara deleted the kylef/files branch July 11, 2019 14:30
@kylef
Copy link
Member Author

kylef commented Jul 11, 2019

Thanks right, they should be in final package. npm pack whitelists README.md, LICENSE{.md}, package.json and some other files. LICENSE isn't there yet as we're using lerna which copies over differently in release process.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants