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

release/0.5.0 #284

Merged
merged 13 commits into from
Apr 24, 2020
Merged

release/0.5.0 #284

merged 13 commits into from
Apr 24, 2020

Conversation

thescientist13
Copy link
Member

@thescientist13 thescientist13 commented Jan 29, 2020

Related Issue

The minimum needed atomic changeset to deliver / release the initial Data Sources work

As this is a release branch, the following branch maintenance should be followed

  • PRs into this branch should be squashed merged
  • Rebase this branch when all work is done
  • Merge (NO squash) into master when ready

Summary of Changes

  1. [RFC] Build Time Data Access - [RFC] Build Time Data Injection #115
  2. Deterministic Queries - query results are not deterministic #271
  3. Configuration as data - expose Greenwood configuration as data #270
  4. <title> from data - <title></title> element is static #128
  5. <meta> from data - improve unit test coverage for the meta plugin (get meta from data) #125
  6. fixed gql-loader not working - gql loader not resolving and breaking the CLI #311
  7. Custom frontmatter as data - support passing front matter from pages to graph (custom content metadata in markdown)  #274
  8. NavigationQuery -> MenuQuery / side nav refactor - refactor navigation and shelf into single query #291
  9. Temporary fix for handling routes with and without / - Bug/issue 128 fix undefined link title setting #308 / routes with and without trailing forward slash causes route "misses" #331
  10. Documentation syntax fix - show correct syntax in custom frontmatter docs #334
  11. Clean up TODOs and console logs - remove TODO comments, console.logs #336

Breaking Changes

  • Remove references to METAIMPORT, METADATA, METAELEMENT from xxx-template.js

TODO

  1. Deterministic Queries - query results are not deterministic #271 (@thescientist13 )
  2. 0.5.0-rc0 (@thescientist13 )
  3. Shelf from Data (e.g. Flltering / sorting) - query data sorting and filtering #288 / refactor navigation and shelf into single query #291 (@hutchgrant )
  4. Configuration as data - expose Greenwood configuration as data #270 (@thescientist13 )
  5. 0.5.0-rc1 Alpha release and regression testing
  6. Data as its own package? - GraphQL (Apollo) data as its own package #278 - can figure this out later. using webpack alias feature, we should be able to do this in a non breaking way
  7. Console logging in www!
  8. Review / clean up TODOs

Nice To Have

  1. articulate vision articulate Greenwood's vision / value through the home page #268 - maybe save for Architectural Digest sprint?
  2. graph resolvers assume a fixed depth for root - resolvers and file writing assumes certain route depth #273 (can be post release)
  3. [RFC] Code Splitting * (nice to have) - [RFC] Route Based Code Splitting #136 (moved to Project 5)

Questions / Thoughts

N / A

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes
* Rfc/issue 115 build time data access (#269)

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes

* unit test data graph

* linting

* lint fix

* added ordered index tracking when serializing pages

* formatting

* document graph page ordering

* cli data graph unit tests and expand mocha spec globbing

* address missing hash in mock graph

* loosen graph test case asserts

* update graph tests to focus less on implementation details

* add back missing develop task
* Rfc/issue 115 build time data access (#269)

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes

* hello and graph queries working together

* config def and resolvers

* use real config data

* flesh out config schema and query

* remove theme file from config

* delete hello query example

* config unit tests

* rename mock graph

* formatting

* documentation
* Rfc/issue 115 build time data access (#269)

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes

* fix cache.json lookup for deep linking

* clean up from rebase

* clean up from rebase
* Rfc/issue 115 build time data access (#269)

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes

* hello and graph queries working together

* config def and resolvers

* flesh out config schema and query

* remove theme file from config

* delete hello query example

* formatting

* documentation

* app template with config title from data

* page title with project title

* tests for custom page title

* cleanup console log

* docs
* Rfc/issue 115 build time data access (#269)

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes

* hello and graph queries working together

* config def and resolvers

* flesh out config schema and query

* remove theme file from config

* delete hello query example

* formatting

* documentation

* app template with config title from data

* tests for custom page title

* refactoring meta to app-template and data instead of scaffolding and added tests

* update coverage config

* fix spelling mistake
* WIP custom frontmatter data to graphql

* dynamic data resolvers

* dynamic Data def from graph WIP

* dynamic data from graph and default handling

* prune reserved frontmatter variables

* document custom data frontmatter

* add testing for multiple front matter variables

* unit testing
* Rfc/issue 115 build time data access (#269)

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes

* Bug/issue 271 determinism (#292)

* Rfc/issue 115 build time data access (#269)

* graphql server working

* apollo client connect to apollo server

* connected header example using lit apollo

* todo

* todos

* query and client + server refactor

* schema refactoring

* clean up console logging

* alias all @greenwood/cli/data module imports

* avoid paramater destructuring

* graphql example in the header

* multiple schemas

* internal data sources documentation

* shelf refactor and children query integration

* refactor out ApolloQuery

* ability to intercept client.query calls

* basic semi-working implementation

* remove extra config from server context

* have puppeteer wait for graphql requests before returning content

* fix and add test cases for apollo

* merged resolvers not actually working

* multiple queries support

* everything working

* todos

* TODO tracking

* fix fallback apollo client fetch handling

* full test suite

* cache json test cases

* stablize test due to inconsistent data results ordering

* clean up deps

* todo cleanup

* remove forced client call in SSG mode for client

* represent graph through the schema

* updated data docs

* typos and grammer

* typos and community link fixes

* unit test data graph

* linting

* lint fix

* added ordered index tracking when serializing pages

* formatting

* document graph page ordering

* cli data graph unit tests and expand mocha spec globbing

* address missing hash in mock graph

* loosen graph test case asserts

* update graph tests to focus less on implementation details

* add back missing develop task

* task: refactor into single menu query, enable menu filtering with markdown declarations

* fix shelf

* fix: shelf rendering collapse/expand

* test: update al related tests

* fix: remove debug

* task: basic sorting label/index

* fix: index sorting

* fix: remove debug

* fix: current tests

* test: amending tests, removing prev mock

* test: revert previous graphql test case

* test: remove hello query

* fix: remove deprecated .json files

* fix: refactor mock graph func

* test: adding sort/filter menu tests

* task: add documentation for menus

* fix: amend documentation

* fix: amend docs for route var

* fix: typo

* task: add headingLevel and route condition, remove hardcoded vars

* fix: non-pathname menus may want linkheadings children

* task: amend docs for child heading level

* fix: change linkheadings to integer, use for headingLevel

* docs: remove navigation query docs

* test: fix test

* task: revert stub generation code

* fix: update data sources doc

* fix: amend docs for route/linkheadings additions

* fix: update filter to use title instead of label

* fix: test

* task: update docs with linkheadings query result

Co-authored-by: Owen Buckley <owenbuckley13@gmail.com>
Copy link
Member Author

@thescientist13 thescientist13 left a comment

Choose a reason for hiding this comment

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

@thescientist13 thescientist13 added the v0.5.0 Data w/ GraphQL label Apr 22, 2020
@thescientist13 thescientist13 changed the title [WIP] release/0.5.0 release/0.5.0 Apr 22, 2020
* remove TODO comments

* remove extra console logs from website code
Copy link
Member Author

@thescientist13 thescientist13 left a comment

Choose a reason for hiding this comment

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

@thescientist13 thescientist13 added this to the MVP milestone Apr 22, 2020
@thescientist13 thescientist13 added this to IN REVIEW in 4 - Data Sources Apr 22, 2020
"html-webpack-plugin": "^3.2.0",
"lit-element": "^2.0.1",
"lit-redux-router": "^0.9.3",
"local-web-server": "^2.6.1",
"markdown-toc": "^1.2.0",
"node-fetch": "^2.6.0",
Copy link
Member Author

Choose a reason for hiding this comment

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

would be nice if we could remove the dependency on this. will track in Trello

label,
link
},
children {
Copy link
Member Author

Choose a reason for hiding this comment

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

will this need some logic to scale, or if I am reading this right, this only supports one level of nesting, right? Maybe related to #273

Copy link
Member

@hutchgrant hutchgrant Apr 22, 2020

Choose a reason for hiding this comment

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

yes, only one nested level

const { label } = getDeriveMetaFromRoute(route);
const id = page.label;

pages.push({
Copy link
Member Author

Choose a reason for hiding this comment

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

some duplication here, would probably be good to make an issue for this.

@thescientist13
Copy link
Member Author

As report of the week would say, release/0.5.0 going in.

@thescientist13 thescientist13 merged commit 3b52417 into master Apr 24, 2020
@thescientist13 thescientist13 moved this from IN REVIEW to DONE in 4 - Data Sources Apr 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLI Content as Data documentation Greenwood specific docs RFC Proposal and changes to workflows, architecture, APIs, etc v0.5.0 Data w/ GraphQL website Tasks related to the projects website / documentation
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

2 participants