analytics.js-integrations icon indicating copy to clipboard operation
analytics.js-integrations copied to clipboard

Add turbo for lint, test

Open jaredpalmer opened this issue 4 years ago • 2 comments

What does this PR do? Switch from lerna to turbo for employees / CI, as requested by @nettofarah. It cuts test / builds times by only re-executing affected packages.

  • [x] Lint
  • [x] Test
  • [ ] Build
  • [ ] CI/CD caching

Kapture 2021-03-08 at 18 27 17

Are there breaking changes in this PR?

No.

Testing

Any background context you want to provide?

Turborepo is new build system for monorepos. Among other features, turbo provides Bazel-like remote build caching and task running, but in a way that is nearly fully compatible with Lerna.

turbo is installed as an optional dependency since it is not open source and requires an access token to download from the Turborepo registry (npm.turborepo.com). An .npmrc is added to address this. In addition, Lerna commands we left runnable for open source contributors.

Is there parity with the server-side/android/iOS integration components (if applicable)? N/A

Does this require a new integration setting? If so, please explain how the new setting works No

Links to helpful docs and other external resources

https://turborepo.com/docs

jaredpalmer avatar Mar 08 '21 23:03 jaredpalmer

This is looking great so far, @jaredpalmer. Thanks for taking a stab at it.

nettofarah avatar Mar 09 '21 18:03 nettofarah

@nettofarah happy to send segment a token. just need to have someone sign the trial license agreement. Let me know who I should email it to (feel free to reply on on twitter)

jaredpalmer avatar Mar 10 '21 19:03 jaredpalmer