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

internal: Refactor to nimbus #484

Merged
merged 114 commits into from
Sep 30, 2019
Merged

internal: Refactor to nimbus #484

merged 114 commits into from
Sep 30, 2019

Conversation

williaster
Copy link
Collaborator

@williaster williaster commented Aug 22, 2019

🏠 Internal

This PR is a WIP for moving build configuration to nimbus, which is a soon-to-be open-sourced shareable build config for jest, babel, eslint, prettier, and typescript. This will help

  • eliminate duplicate configs across individual packages
  • move config to the root for consistency and easier upgrades
  • enable easier support for typescript in the future 😉

I will enumerate the changes as the PR evolves below, will try and convert a package at a time, I think the first couple were the hardest.

Changes (dev)

  • Use babel not rollup
  • Use yarn not npm
    • this will enable workspaces so that we can push all config to the root instead of duplicating across every package as is the case now
  • Stricter linting rules (e.g., .jsx required for React files)

Changes (consumers)

  • [breaking] Deprecate build/ and dist/, use lib/ and esm/
  • [breaking] Deprecate umd builds

General TODO

  • point to open-source libs when published
  • update docs
  • verify all package changes functionally with demo

Packages to convert

  • root
  • vx-annotation
  • vx-axis
  • vx-bounds
  • vx-brush
  • vx-curve
  • vx-event
  • vx-gradient
  • vx-heatmap
  • vx-marker
  • vx-pattern
  • vx-scale
  • vx-text
  • vx-voronoi
  • vx-chord
  • vx-demo
  • vx-geo
  • vx-tooltip
  • vx-group
  • vx-boxplot
  • vx-drag
  • vx-clip-path
  • vx-network
  • vx-legend
  • vx-glyph
  • vx-stats
  • vx-responsive
  • vx-threshold
  • vx-shape
  • vx-point
  • vx-mock-data
  • vx-hierarchy
  • vx-grid
  • vx-zoom
  • vx-vx

@hshoff @milesj @schillerk @techniq @kristw

package.json Outdated Show resolved Hide resolved
tsconfig.json
webpack.config.js

# Lock files, libs should not have lock files
Copy link
Contributor

Choose a reason for hiding this comment

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

NPM/Yarn doesn't use them when installing packages. They are meant for developers/contributors or the project though.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

right, Jordan mentioned once that having them can hide bugs/problems in development because developers will be locked into specific versions which consumers might not have on a fresh install.

@williaster
Copy link
Collaborator Author

also upgraded to next@9 because it wasn't transpiling certain react syntax (e.g., <></>) anymore. may have been an invalid .babelrc format for babel@7.

now broke the babel build 🙉

@williaster
Copy link
Collaborator Author

@hshoff @milesj I think this is ready to go if you think the travis.yml and package.json changes look good 🚀 The rest is a lot of linting and file name changes.

We should test out some alpha releases before doing another patch bump. Because of the breaking changes we could also consider a 0.1.0 release 🤔

@williaster
Copy link
Collaborator Author

@hshoff any thoughts on the license compliance fail? it looks like it's flagging next, not sure if that's an issue if it's for the demo package?

package.json Outdated Show resolved Hide resolved
package.json Outdated Show resolved Hide resolved
@milesj
Copy link
Contributor

milesj commented Sep 6, 2019

The demos are failing on Travis, but its not failing the build. Class properties only available when using next or TS.

@williaster
Copy link
Collaborator Author

enabled next and fixed merge conflicts.

@williaster williaster added this to Review in progress in TypeScript Sep 12, 2019
TypeScript automation moved this from Review in progress to Reviewer approved Sep 30, 2019
@hshoff hshoff merged commit e7a495f into master Sep 30, 2019
TypeScript automation moved this from Reviewer approved to Done Sep 30, 2019
@hshoff hshoff added this to the v0.0.192 milestone Oct 1, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
TypeScript
  
Done
Development

Successfully merging this pull request may close these issues.

None yet

4 participants