Summary: This diff changes flipper-pkg to allow using fb-internal code in plugins when they are packaged as standalone packages. It basically transforms fb-stubs/fb folders in plugins in the same way as for Flipper app.
Reviewed By: passy
Differential Revision: D27173406
fbshipit-source-id: 8ba97d5f57b5e276c19d13270a0d810873504add
Summary: This diff adds the `--public-build` option which allows run a devServer emulating the OSS version of flipper. Technical details are explained in the comments.
Reviewed By: passy, nikoant
Differential Revision: D25944966
fbshipit-source-id: 540855808179582752b8aa646f0b8afd4b78396f
Summary:
* Removed Flow compilation step
* Removed all `flow` annotations
* Removed all FlowFixMe's
* Removed flow typings for Flipper
* Left flow transpilation (stripping) in babel, in case there is any external user using Flow in his plugin
* Left `eslint-plugin-flowtype` dependencies, as `eslint-config-fbjs` requires it
Reviewed By: passy
Differential Revision: D24755545
fbshipit-source-id: 9c0a7910657fd1cba88294e041bf2bfdf7b565bf
Summary: Recreation of D22118786, which was so old rebasing died on some lacking meta data. Lands https://github.com/facebook/flipper/pull/1256
Reviewed By: passy
Differential Revision: D24331424
fbshipit-source-id: 65fc5d8bf0242d4266e269716a319d71ce2e2826
Summary:
Enabling Metro cache for dev mode. For release builds we reset the cache.
Cache is used for faster compilation in dev mode for both main and renderer bundles, as well as for plugins.
Currently we have few side effects based on env vars, so cache is invalidated when they are changed. Also the cache is invalidated when transformations are changed (changed code, bumped dependency etc). Also added a script to reset the cache if something is going wrong.
Reviewed By: mweststrate
Differential Revision: D20691464
fbshipit-source-id: 478947d438bd3090f052dbfa6ad5c649523ecacb
Summary:
SORRY FOR BIG DIFF, but it's really hard to split it as all these changes are cross-dependent and should be made at once:
1. Moved transformations to separate package "flipper-babel-transformer" and linked it using yarn workspaces to "static" and "pkg" packages where they are re-used. Removed double copies of transformations we had before int these two packages.
2. Converted transformations to typescript
3. Refactored transformations to avoid relying on file system paths for customisation (FB stubs and Electron stubs for headless build)
4. As babel transformations must be built before other builds - enabled incremental build for them and changed scripts to invoke the transformations build before other build scripts
5. As we need to deploy all the dependencies including the fresh "flipper-babel-transformer" as a part of "static" - implemented script which copies package with all the dependencies taking in account yarn workspaces (hoisting and symlinks)
Reviewed By: passy, mweststrate
Differential Revision: D20690662
fbshipit-source-id: 38a275b60d3c91e01ec21d1dbd72d03c05cfac0b