🚇 The JavaScript bundler for React Native. https://facebook.github.io/metro
Go to file
Kevin Old 5905385997 Properly handle babel ignored files, returning only the contents
Summary:
- [x] Explain the **motivation** for making this change.
- [x] Provide a **test plan** demonstrating that the code is solid.
- [x] Match the **code formatting** of the rest of the codebase.
- [x] Target the `master` branch, NOT a "stable" branch.

I have a need to bundle a pre-optimized external lib with my RN application. Until RN 0.42 I had been using a .babelignore to prevent the packager from trying to optimize this file and choke.

It seems in 0.42 and higher I'm no longer allowed to ignore the file.

This issue has also been reported as #12071

Details on the reasoning for this patch can be found in the issue I originally filed: https://github.com/facebook/react-native/issues/13168

What existing problem does the pull request solve?

This PR restores the functionality with babel ignoring files that existed in 0.41 before this patch:

0849f84df2 (diff-4676ea0b3c55c65c3929aa993144f07f)

Here's a screenshot of this patch properly ignoring the file I referenced in https://github.com/facebook/react-native/issues/13168 to be ignored.

![screen shot 2017-04-27 at 12 48 32 am](https://cloud.githubusercontent.com/assets/21967/25469653/524dbc0c-2ae3-11e7-81a6-faca2f4d21fe.png)

The patch relies on the `ignored` value of the call to `babel.transform` and if true returns the src in a object per instruction from loganfsmyth from BabelJS core team.

To test, add a file to the `ignore` array of a `.babelrc` file in a React Native project with this fork.

I was unable to locate a test file for the transformer.js

Fixes #12071, #13168
Closes https://github.com/facebook/react-native/pull/13681

Differential Revision: D5017565

Pulled By: davidaurelio

fbshipit-source-id: 421f57b5ce192eedd46fae4285d8a741cb5f8e71
2017-05-06 05:00:38 -07:00
.github Initial repository structure. 2017-01-26 12:56:40 +00:00
flow-typed Initial repository structure. 2017-01-26 12:56:40 +00:00
packages Properly handle babel ignored files, returning only the contents 2017-05-06 05:00:38 -07:00
scripts Make most tests work. 2017-04-11 19:19:25 +01:00
.babelrc Fixes. 2017-04-11 18:14:32 +01:00
.eslintignore Initial repository structure. 2017-01-26 12:56:40 +00:00
.eslintrc Repo updates. 2017-02-28 11:45:45 +00:00
.flowconfig Update flow. 2017-04-11 18:22:31 +01:00
.gitignore Use Yarn with lerna. 2017-03-01 11:01:35 +00:00
.npmignore Initial repository structure. 2017-01-26 12:56:40 +00:00
.travis.yml Initial repository structure. 2017-01-26 12:56:40 +00:00
CHANGELOG.md Initial repository structure. 2017-01-26 12:56:40 +00:00
CONTRIBUTING.md Initial repository structure. 2017-01-26 12:56:40 +00:00
LICENSE Initial repository structure. 2017-01-26 12:56:40 +00:00
PATENTS Initial repository structure. 2017-01-26 12:56:40 +00:00
README.md Initial repository structure. 2017-01-26 12:56:40 +00:00
appveyor.yml Initial repository structure. 2017-01-26 12:56:40 +00:00
lerna.json Use Yarn with lerna. 2017-03-01 11:01:35 +00:00
package.json Make most tests work. 2017-04-11 19:19:25 +01:00
yarn.lock Make most tests work. 2017-04-11 19:19:25 +01:00

README.md

metro-bundler Build Status Windows Build Status npm version

The JavaScript bundler for React Native