This repo was archived by the Apollo Security team on 2023-05-26
This is a fork of graphql-upload by Jayden Seric which Apollo has created purely for the internal use of Apollo Server.
Apollo Server v2 depends on graphql-upload
to provide an easy-to-use way to integrate graphql-upload
into your servers without having to depend on graphql-upload
yourself. It currently depends on v8 of graphql-upload
.
graphql-upload
made backwards-incompatible changes after v8, such as changing what Node versions are supported and removing the stream
property that was later replaced with createReadStream
. Because of this, we cannot upgrade the version of graphql-upload
used by Apollo Server past v8 without potentially breaking users.
However, the latest release of graphql-upload@8
(8.1.0) declares peer dependencies on graphql
that do not include graphql@15
. We want users of Apollo Server v2 to be able to use graphql v15 without getting peer dependencies warnings (or errors when they are using npm v7), so we have forked graphql-upload
v8 just to extend the peer dependency.
We do not recommend that you directly depend on this fork. Our recommendation is that if you want to use uploads in your GraphQL server, you should consider disabling Apollo Server's built-in graphql-upload
integration by passing uploads: false
to new ApolloServer
and use graphql-upload
directly. That way, you can use the latest and greatest version of graphql-upload
. We currently intend to remove the integration from Apollo Server v3.
This fork also contains the TypeScript typings from DefinitelyTyped, so you don't have to try to combine this fork with @types/graphql-upload
.