<h2 dir="auto">Bug Report</h2>

<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I would like to work on a fix!</li>
</ul>

<p dir="auto"><strong>Current Behavior</strong><br>
I have a <code class="notranslate">. browserlistrc</code> file that contains the <code class="notranslate">defaults</code> query. I don't have <code class="notranslate">targets</code> option defined in babel-preset-env options. With that setup, the preset includes 148 core-js imports.</p>
<p dir="auto">If I change this setup and define the <code class="notranslate">targets</code> option to <code class="notranslate">defaults</code> I would expect the output to be the same. It is not. The preset includes 129  core-js imports.</p>
<p dir="auto">Note that this happens only with the <code class="notranslate">defaults</code> query. If I target for instance <code class="notranslate">Chrome 75</code>, both setups work the same.</p>
<p dir="auto"><strong>Input Code</strong><br>
See:<br>
<a href="https://github.com/htulipe/bug-babel-preset-env">https://github.com/htulipe/bug-babel-preset-env</a></p>
<p dir="auto">In <code class="notranslate">lib</code> you'll find a file compiled without the <code class="notranslate">targets</code> option and another with the option defined.</p>
<p dir="auto"><strong>Expected behavior/code</strong></p>
<p dir="auto">I would expect that defining <code class="notranslate">defaults</code> in .browserslistrc or in the preset options to ouput the same result.</p>
<p dir="auto"><strong>Babel Configuration (babel.config.js, .babelrc, package.json#babel, cli command, .eslintrc)</strong></p>
<p dir="auto">See sample repo</p>
<p dir="auto"><strong>Environment</strong></p>

<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="  System:
    OS: macOS 10.15.2
  Binaries:
    Node: 12.13.1 - ~/.nvm/versions/node/v12.13.1/bin/node
    Yarn: 1.21.1 - /usr/local/bin/yarn
    npm: 6.12.1 - ~/.nvm/versions/node/v12.13.1/bin/npm
  npmPackages:
    @babel/cli: ^7.7.7 =&gt; 7.7.7
    @babel/core: ^7.7.7 =&gt; 7.7.7
    @babel/preset-env: ^7.7.7 =&gt; 7.7.7"><pre class="notranslate"><code class="notranslate">  System:
    OS: macOS 10.15.2
  Binaries:
    Node: 12.13.1 - ~/.nvm/versions/node/v12.13.1/bin/node
    Yarn: 1.21.1 - /usr/local/bin/yarn
    npm: 6.12.1 - ~/.nvm/versions/node/v12.13.1/bin/npm
  npmPackages:
    @babel/cli: ^7.7.7 =&gt; 7.7.7
    @babel/core: ^7.7.7 =&gt; 7.7.7
    @babel/preset-env: ^7.7.7 =&gt; 7.7.7
</code></pre></div>
<p dir="auto"><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="371619167" data-permission-text="Title is private" data-url="https://github.com/babel/babel/issues/8897" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/8897/hovercard?comment_id=490659840&amp;comment_type=issue_comment" href="https://github.com/babel/babel/pull/8897#issuecomment-490659840">#8897 (comment)</a></p>
<blockquote>
<p dir="auto">I guess the best solution would be to check ourself if there is a browserlist config in the fs if there are not targets specified. We could do this with <code class="notranslate">browserlist.findConfig(from)</code>. If we find one we do not change defaults. But that would also be a breaking change so I guess we would need to wait for v8. <a href="https://github.com/browserslist/browserslist/blob/master/node.js#L238">https://github.com/browserslist/browserslist/blob/master/node.js#L238</a></p>
</blockquote>