4079 Commits

Author SHA1 Message Date
Robin Malfait
691ed02f63
Remove AOT (#5340)
* make `jit` mode the default when no mode is specified

* unify JIT and AOT codepaths

* ensure `Object.entries` on undefined doesn't break

It could be that sometimes you don't have values in your config (e.g.: `presets: []`), this in turn will break some plugins where we assume we have a value.

* drop AOT specific tests

These tests are all covered by JIT mode already and were AOT specific.

* simplify tests, and add a few

Some of the tests were written for AOT specifically, some were missing. We also updated the way we write those tests, essentially making Tailwind a blackbox, by testing against the final output.
Now that JIT mode is the default, this is super fast because we only generate what is used, instead of partially testing in a 3MB file or building it all, then purging.

* add some todo's to make sure we warn in a few cases

* make `darkMode: 'media'`, the default

This also includes moving dark mode tests to its own dedicated file.

* remove PostCSS 7 compat mode

* update CLI to be JIT-first

* fix integration tests

This is not a _real_ fix, but it does solve the broken test for now.

* warn when using @responsive or @variants

* remove the JIT preview warning

* remove AOT-only code paths

* remove all `mode: 'jit'` blocks

Also remove `variants: {}` since they are not useful in `JIT` mode
anymore.

* drop unused dependencies

* rename `purge` to `content`

* remove static CDN builds

* mark `--purge` as deprecated in the CLI

This will still work, but a warning will be printed and it won't show up
in the `--help` output.

* cleanup nesting plugin

We don't have to duplicate it anymore since there is no PostCSS 7
version anymore.

* make sure integration tests run in band

* cleanup folder structure

* make sure nesting folder is available

* simplify resolving of purge/content information
2021-09-01 17:13:59 +02:00
Nick
911e755056
fix: fix empty object error (#4903)
Co-authored-by: zhongcheng <zhongcheng@bytedance.com>
2021-09-01 11:01:15 -04:00
Robin Malfait
267f20c47e
2.2.9 v2.2.9 2021-08-30 13:01:08 +02:00
Robin Malfait
97804a8950
Pin clean css version (#5338)
* pin clean-css to version `5.1.4`

* update fixtures
2021-08-30 13:00:50 +02:00
depfu[bot]
442c6d0d27 Update cosmiconfig to version 7.0.1 2021-08-28 23:03:11 +00:00
depfu[bot]
9ccb280b6d Update autoprefixer to version 10.3.3 2021-08-28 18:47:53 +00:00
depfu[bot]
e316dcb184 Update eslint-plugin-prettier to version 3.4.1 2021-08-27 22:18:32 +00:00
Peter Etelej
65617085c1
Fix pathname parsing for tracked files (#5008)
The trackedModified call in the tracking logic has a bug that
incorrectly removes `null` from pathnames

Currently:
```
let pathname = parsed.href.replace(parsed.hash, '').replace(parsed.search, '')
```
Where if `parsed.hash` or `parsed.search` are missing (which is
mostly the case for FS files), the value is null
eg `{ hash: null, search: null}`
  - In which case, we essentially trim `null`
converting `/mypath/nulldir/file.js` -> `/mypath/dir/filejs` and
breaking builds (see #4920 ).

Fix checks if `hash` or `search` are set before replacing them

Fixes #4920
2021-08-27 16:12:06 +02:00
Robin Malfait
8218aa6251
Ensure integration tests are up to date (#5317)
* update (old) incorrect snapshots

The version changed, so it is save to update these.

* add `shadow` so that we can test `@tailwind base`

We were only using `font-bold`, but that doesn't require any base rules.
We try to only inject rules that are required, even for `base` related
rules.
Adding `shadow` will ensure that we can test that `base` rules have been
added.
2021-08-27 16:09:25 +02:00
Adam Wathan
476d445629
Fix missing !important when using @apply (#4854)
* Add failing test for #4823

* Fix important variant `@apply`

Co-authored-by: Brad Cornes <bradlc41@gmail.com>
2021-08-27 16:08:25 +02:00
Robin Malfait
96ef15039b
Ensure purge tests work even for version mismatches (#5316)
We applied the same treatment for the sanity tests, where we ignore the
first line (the tailwind header).

An odd issue I have found is that diffing of big css files is _very_
slow. When te tests pass, then the first test takes `3302 ms`, however,
when it fails it takes `477482 ms` on my machine. That's almost 8
minutes.
2021-08-27 15:47:39 +02:00
Robin Malfait
211f40b175
2.2.8 v2.2.8 2021-08-27 10:37:43 +02:00
Robin Malfait
baa8f6528b
Ensure nested [] is allowed (#5304)
This will allow us to write something like:

`grid-cols-[[linename],1fr,auto]`
2021-08-26 13:50:39 +02:00
depfu[bot]
5f02fe4811 Update clean-css to version 5.1.5 2021-08-26 10:03:09 +00:00
Robin Malfait
fa3d454d06
Ensure arbitrary values only support valid values (#5293)
* ensure arbitrary values only support valid values

* ensure we validate balancing [], () and {}
2021-08-26 05:52:47 -04:00
depfu[bot]
048a29ef34 Update cssnano to version 5.0.8 2021-08-25 10:19:37 +00:00
depfu[bot]
ff71165538 Update arg to version 5.0.1 2021-08-24 02:31:30 +00:00
José Valim
b280378c33
Abort the watcher if stdin is closed to avoid zombie processes (#4997)
* Abort the watcher if stdin is closed to avoid zombie processes

* Apply suggestions from code review
2021-08-23 14:35:28 -04:00
depfu[bot]
4daa86a293 Update @vercel/ncc to version 0.29.2 2021-08-21 22:27:25 +00:00
depfu[bot]
d8b89003a9
Update @vercel/ncc to version 0.29.0 (#5068)
Co-authored-by: depfu[bot] <23717796+depfu[bot]@users.noreply.github.com>
2021-08-20 22:43:40 -04:00
depfu[bot]
b54d3fc6dd
Update color to version 4.0.1 (#5205)
Co-authored-by: depfu[bot] <23717796+depfu[bot]@users.noreply.github.com>
2021-08-20 22:43:08 -04:00
Brad Cornes
5d0abea336
Fix object-position arbitrary values (#5245) 2021-08-20 22:40:11 -04:00
Brad Cornes
b56b4c0b14
[JIT] Support animation lists (#5252)
* Support animation lists

* Update tests
2021-08-20 22:39:06 -04:00
Brad Cornes
ca1a167a83
Maintain PostCSS node sources (#5249) 2021-08-20 22:38:17 -04:00
depfu[bot]
d13b0e1085 Update node-emoji to version 1.11.0 2021-08-18 09:18:48 +00:00
Brad Cornes
e1160e38ac
Skip escaped commas when splitting selector (#5239) 2021-08-17 20:06:31 -04:00
depfu[bot]
0bb3e74f82 Update all of babel7 to version 7.15.0 2021-08-17 18:34:04 +00:00
Brad Cornes
4ff383fbbe
Fix malformed keyframes when using class variants (#5223) 2021-08-16 12:25:30 -04:00
depfu[bot]
ca6900dc35 Update eslint to version 7.32.0 2021-08-14 22:18:42 +00:00
Adam Wathan
00761ed73f Update changelog 2021-08-10 08:47:49 -04:00
depfu[bot]
4d758ed624 Update chalk to version 4.1.2 2021-08-06 12:33:00 +00:00
depfu[bot]
66b9259a5d Update clean-css to version 5.1.4 2021-08-05 10:03:02 +00:00
depfu[bot]
2eb7b4e5f1 Update postcss-nested to version 5.0.6 2021-08-04 10:49:11 +00:00
Adam Wathan
723e8d4377
Improve accessibility of default link focus styles in Firefox (#5082) 2021-07-31 07:10:17 -04:00
depfu[bot]
e233288c4d Update glob-parent to version 6.0.1 2021-07-31 10:55:33 +00:00
depfu[bot]
e369dbd8ed Update all of babel7 to version 7.14.8 2021-07-31 10:54:52 +00:00
depfu[bot]
370ea8b3f2 Update postcss to version 8.3.6 2021-07-31 10:54:44 +00:00
depfu[bot]
4f89bbf713 Update cssnano to version 5.0.7 2021-07-30 22:41:14 +00:00
depfu[bot]
9c63e50edd Update eslint to version 7.31.0 2021-07-30 22:32:58 +00:00
Robin Malfait
bfc9fa79d4
Improve tests (#5108)
* change specific selector to universal selector

This is the commit that we could "undo" in the future if we need it
again.

* simplify `relative-purge-paths` test

This test doesn't require the "reset" selector (whether it is super specific or universal)

Simplified it so that it tests the relative purge config and nothing else.

* added css tagged template literal helpers

This allows prettier to format the string as CSS. This improves formatting and will improve future diffs.

* drop tailwind headers in the sanity tests

Every time we bump the Tailwind version, the sanity tests fail, because
the current version is encoded in the fixture files.

This will ensure that all of the contents is still checked and the
header is skipped. The header will be tested against a regex to ensure
that it is still there.

This should be a small but nice QoL improvement, so that we don't have
to think about updating those tests whenever we fix bugs or land new
features.
2021-07-29 07:31:06 -04:00
Adam Wathan
f7e9831436 Update version in fixtures 2021-07-26 09:01:41 -04:00
Adam Wathan
5100270bed 2.2.7 v2.2.7 2021-07-23 07:48:52 -04:00
Adam Wathan
8fabe13edb Update changelog 2021-07-23 07:48:50 -04:00
Adam Wathan
cbf3da0444
Hotfix: Use universal selector again (#5060) 2021-07-23 07:47:11 -04:00
Adam Wathan
90da0b3a7c Rebuild fixtures 2021-07-21 15:47:24 -04:00
Adam Wathan
4d598d59aa 2.2.6 v2.2.6 2021-07-21 15:43:37 -04:00
Adam Wathan
e66245f9df Update changelog 2021-07-21 15:43:33 -04:00
Adam Wathan
a76fb7fb14
Fix issue where base styles not generated for translate transforms in JIT (#5038) 2021-07-21 15:42:38 -04:00
Adam Wathan
81f9e940b4 Update version in fixtures 2021-07-21 10:23:20 -04:00
Adam Wathan
c1c5cf0923 2.2.5 v2.2.5 2021-07-21 09:13:16 -04:00