Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TRACKING: master → feature/apollo-pure #1666

Closed
wants to merge 44 commits into from
Closed

Conversation

langpavel
Copy link
Collaborator

@langpavel langpavel commented Sep 4, 2018

Pure Apollo integration based on master.

Features

  • TypeScript implementation of RSK that Apollo primarily supports
  • apollo-client with full server-side rendering - No fetch()
  • Client-side state management with apollo-client@2.5 with networkStatus example
  • apollo-server serves GraphQL API
  • Codegen - TypeScript checking for GraphQL response according to GraphQL Schema
  • GraphQL Scalar type - Timestamp for an example

piglovesyou and others added 2 commits September 4, 2018 18:39
- [x] `apollo-client` with full server-side rendering
- [x] `apollo-link-state` - Client-side state management with `networkStatus` example
- [x] `apollo-server`

Without:

* Flux (Redux) store - replaced by `apollo-link-state`
* Fetch function - No need when you have an `apolloClient`
@piglovesyou
Copy link
Collaborator

I wrote a blog post

piglovesyou and others added 14 commits February 19, 2019 20:30
* Upgrade all dependencies

1. ncu --upgradeAll
4. Leave "graphql" to be "^13.2.0" that apollo packages depend on
2. Apply patch of "npx babel-upgrade" output
3. Leave only necessary babel plugins
4. Pass "yarn fix" by disabling stricter rules

* Pass "req" through GraphQL resolver context

* Through rootValue it cannot be passed from browser GraphQL access
* rm unnecessary code

* Add "Timestamp" scalar type for convinience

* rm unnecessary files

* fix: Timestamp didn't work

* npm graphql requires to be update
vercel/next.js#5238 (comment)

* Feature: Codegen from GraphQL schema and use more Flow types (#2)

* install apllo

* add apollo.config.js

* apollo codegen succeeded

* fix: updateNetworkStatus signature

* rm @flow from files not ready

* add flow-typed files

* done: Using auto-generated types works

* flow-bin@0.89+ has regression. Use ^0.88.0.

* fix: invalid GraphQL primitive types

* Add codegen script

* done: import auto-generated file

* refac: move impl for apollo-link-state to graphql dir as same as server side resolvers

* codegen and ignore eslint these files

* refactor: "networkStatus"

* feat: codegen:standalone

* refac: "OnMemoryState" is what I meant

* Improve codegen (#3)

* delete existing auto-generated types

* change script name

* ignore __generated__ folder

* wip: disallow absolute path resolving under `src` dir

* It causes disregard .js type checking under src

* fix all flow error

* modify: prevent `withStyles` drops component type

* Modify targe Node versions

* Fix build failure: Codegen before lint

* Add Node v10 LTS for build target
* small README.md grammar change (#1675)

* Upgrade all dependencies including Babel 7 (#1673)

* Upgrade all dependencies including Babel 7

1. ncu --upgradeAll
4. Leave "graphql" to be "^13.2.0" that apollo packages depend on
2. Apply patch of "npx babel-upgrade" output
3. Leave only necessary babel plugins
4. Pass "yarn fix" by disabling stricter rules

fixes #1654 #1626 #1607

* Also ignore babel config file from webpack.config.js

* Resolve conflict and follow upstream/master

* small README.md grammar change (#1675)

* Upgrade all dependencies including Babel 7 (#1673)

* Upgrade all dependencies including Babel 7

* update apollo packages

* Use new local state management of Apollo Client 2.5

* Client Schema
* Simplify cache and cache defaults
* User in local state instead of context

* bye apollo-link-state

* mod: better suppressing flow error for .graphql import

* fix: jest error by updating jest

* Upgrade all dependencies

fix 2 breaking changes:
* css-loader no longer accepts 'minimize' option
* isomorphic-style-loader uses new React Context now

* refac: Use functional component for components

* fix: resolve apollo and graphql versions problem

ref. apollographql/apollo-tooling#630 (comment)
* update apollo packages

* bye apollo-link-state

* fix: jest error by updating jest

* mod: Make `yarn codegen` always executable

* mod: Take care non-js import in flowconfig

* suppress 'sequelize deprecated String based operators' error

* suppress 'Please use `require("history").PathUtils' error

* refac: make all components functional

* Flow to Typescript  (#13)

* get available port on codegen (#14)

* improve tyeps (#15)

* refactor typings

* remove unnecessary babel plugin

* Type models

* pass `eslint --ext .ts --ext .tsx`

* mod: clear old type defs before codegen

improve eslint defs

* ignore Node12 build

* Sqlite3 is still working on supporting Node12 TryGhost/node-sqlite3#1151

* Fix Node 12 build failure
- [x] Use `useStyles` of isomorphic-style-loader@5.1.0
- [x] Static TS check on test
- [x] Reduce `tools/*` implementations - We can use `execa` instead of implementing `cp.ts` by ourselves
- [x] Use [GraphQL Code Generator](https://github.com/dotansimha/graphql-code-generator) for codegen - It generates typed data binding functions that Apollo command doesn't
- [x] Make route params (`/posts/:id`) usable in AppContext

----

* rm unnecessary comment

* Use useStyles of isomorphic-style-loader

* Update isomorphic-style-loader

* mod: tsc on test

* mod: Add type defs for deployment config

* mod: Use execa instead of manually implementing child_process action

* refac: use fs.ts more

* tsc --noEmit

* feat: Use auto-generated data binding function by GraphQL Code Generator

* rm unnecessary packages

* Cherry-pick: Introduce PostCSS Preset Env (#1733)

Fixes #1731
# Conflicts:
#	package.json
#	yarn.lock

* Update all dependencies

* ncu -u
* fit `@types/*` versions to impls
* fix all related issues
    * fix all typescript issues
    * Fix new options in css-loader and browser-sync

* fix: lint .ts on commit

* Make route params (/posts/:id) usable in AppContext
* small README.md grammar change (#1675)

* Upgrade all dependencies including Babel 7 (#1673)

* Upgrade all dependencies including Babel 7

1. ncu --upgradeAll
4. Leave "graphql" to be "^13.2.0" that apollo packages depend on
2. Apply patch of "npx babel-upgrade" output
3. Leave only necessary babel plugins
4. Pass "yarn fix" by disabling stricter rules

fixes #1654 #1626 #1607

* Also ignore babel config file from webpack.config.js

* remove mocha form docs (getting started) (#1729)

* fix: support Node 12 (#1730)

* Update sqlite3
* Add Ci builds against the latest active LTS (10)

* Fix styles error in Home.css and deprecation warnings (#1726)

* Fix styles error in Home.css

* Fix deprecation warnings

* Introduce PostCSS Preset Env (#1733)

Fixes #1731

* Change node from 6.5 to 6.9 on README (#1735)

* fix: change node from 6.5 to 6.9

* fix: change node 6.5 -> 6.9 on getting-started

* describe TypeScript integration in readme (#1745)

* fix unintentional merge
# Conflicts:
#	.eslintrc.js
#	README.md
#	babel.config.js
#	docs/getting-started.md
#	package.json
#	src/client.tsx
#	src/components/Html.js
#	src/history.ts
#	src/routes/home/Home.css
#	tools/postcss.config.js
#	tools/webpack.config.ts
#	yarn.lock
* Update all deps by npm-check-updates

* fix some TypeScript problems
* disable some react related eslint rules
* new huskey config in package.json

* Use TypeScript 3.5.* until ESLint supports 3.6
* C++ build env is not necessary

* Support Node v12 and Stable

* Update deps

* Prettier **/*.md

```
find . -path ./node_modules -prune -o -name '*.md' | xargs yarn prettier --write
```
* chore(deps-dev): bump file-loader from 4.2.0 to 5.0.2

Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 4.2.0 to 5.0.2.
- [Release notes](https://github.com/webpack-contrib/file-loader/releases)
- [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/file-loader@v4.2.0...v5.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* file-loader doesn't support Node 8 any more
…1841)

Bumps [@babel/preset-typescript](https://github.com/babel/babel) from 7.6.0 to 7.7.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](babel/babel@v7.6.0...v7.7.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Track master

* Test "yarn start"

* "starts GraphiQL" should fail. Should downgrade express-graphql to 0.8.9.

# Conflicts:
#	.eslintrc.js
#	package.json
#	tools/lib/cp.js
#	tools/start.ts
#	yarn.lock
@piglovesyou piglovesyou self-assigned this Nov 25, 2019
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 3.6.4 to 3.7.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v3.6.4...v3.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Bumps [jest-codemods](https://github.com/skovhus/jest-codemods) from 0.22.0 to 0.22.1.
- [Release notes](https://github.com/skovhus/jest-codemods/releases)
- [Commits](skovhus/jest-codemods@0.22.0...0.22.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
…#1865)

Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) from 2.1.0 to 2.1.1. **This update includes a security fix.**
- [Release notes](https://github.com/yahoo/serialize-javascript/releases)
- [Commits](yahoo/serialize-javascript@v2.1.0...v2.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Bumps [lint-staged](https://github.com/okonet/lint-staged) from 9.4.3 to 9.5.0.
- [Release notes](https://github.com/okonet/lint-staged/releases)
- [Commits](lint-staged/lint-staged@v9.4.3...v9.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 3.7.2 to 3.7.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v3.7.2...v3.7.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Bumps [acorn](https://github.com/acornjs/acorn) from 5.7.3 to 5.7.4. **This update includes a security fix.**
- [Release notes](https://github.com/acornjs/acorn/releases)
- [Commits](acornjs/acorn@5.7.3...5.7.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
…#1899)

Bumps [apollo-server-core](https://github.com/apollographql/apollo-server) from 2.9.12 to 2.14.4. **This update includes a security fix.**
- [Release notes](https://github.com/apollographql/apollo-server/releases)
- [Changelog](https://github.com/apollographql/apollo-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/apollographql/apollo-server/compare/apollo-server-core@2.9.12...apollo-server-core@2.14.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
…#1893)

Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4. **This update includes a security fix.**
- [Release notes](https://github.com/faye/websocket-extensions-node/releases)
- [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md)
- [Commits](faye/websocket-extensions-node@0.1.3...0.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
* chore(deps): [security] bump apollo-server-express from 2.9.12 to 2.14.2

Bumps [apollo-server-express](https://github.com/apollographql/apollo-server) from 2.9.12 to 2.14.2. **This update includes a security fix.**
- [Release notes](https://github.com/apollographql/apollo-server/releases)
- [Changelog](https://github.com/apollographql/apollo-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/apollographql/apollo-server/compare/apollo-server-express@2.9.12...apollo-server-express@2.14.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* chore(deps): [security] bump handlebars from 4.5.3 to 4.7.6

Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.5.3 to 4.7.6. **This update includes a security fix.**
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/handlebars-lang/handlebars.js/blob/master/release-notes.md)
- [Commits](handlebars-lang/handlebars.js@v4.5.3...v4.7.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Bumps [apollo-server](https://github.com/apollographql/apollo-server) from 2.9.12 to 2.14.2. **This update includes a security fix.**
- [Release notes](https://github.com/apollographql/apollo-server/releases)
- [Changelog](https://github.com/apollographql/apollo-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/apollographql/apollo-server/compare/apollo-server@2.9.12...apollo-server@2.14.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.2 to 6.5.3. **This update includes a security fix.**
- [Release notes](https://github.com/indutny/elliptic/releases)
- [Commits](indutny/elliptic@v6.5.2...v6.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
…#1909)

Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) from 2.1.1 to 3.1.0. **This update includes a security fix.**
- [Release notes](https://github.com/yahoo/serialize-javascript/releases)
- [Commits](yahoo/serialize-javascript@v2.1.1...v3.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Bumps [node-fetch](https://github.com/bitinn/node-fetch) from 2.6.0 to 2.6.1. **This update includes a security fix.**
- [Release notes](https://github.com/bitinn/node-fetch/releases)
- [Changelog](https://github.com/node-fetch/node-fetch/blob/master/docs/CHANGELOG.md)
- [Commits](node-fetch/node-fetch@v2.6.0...v2.6.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Bumps [dot-prop](https://github.com/sindresorhus/dot-prop) from 4.2.0 to 4.2.1. **This update includes a security fix.**
- [Release notes](https://github.com/sindresorhus/dot-prop/releases)
- [Commits](sindresorhus/dot-prop@v4.2.0...v4.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7. **This update includes a security fix.**
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](npm/ini@v1.3.5...v1.3.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
@piglovesyou
Copy link
Collaborator

I found @koistya fully rebased the project. @langpavel and I (and a lot more) aren't listed as contributors anymore😇

@koistya
Copy link
Member

koistya commented Jun 20, 2021

@piglovesyou @langpavel the codebase was re-written from scratch on the orphan main (now default) branch, while v1 is still available on the master branch (because it was not updated for a long time). Since GitHub doesn't count contributions from non-default branches let's have you listed in the README file instead.

@koistya
Copy link
Member

koistya commented Jun 20, 2021

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants