Releases: QwikDev/qwik
v0.16.1
v0.16.0
Introduces several deprecations in aim to simplify the lifecycle model and prepare Qwik for the future and stable release.
useTask$()
The deprecations include useMount$()
, useWatch$()
, useServerMount()
and useClientMount$()
, all of them now become useTask$()
!
useMount$()
->useTask$()
useWatch$()
->useTask$()
useServerMount$()
->useTask$()
+isServer
useClientMount$()
->useTask$()
+isBrowser
You might be surprised, how all of them can be replaced with useTask$()
?
Actually, useWatch$()
already behaved like useMount$()
when no track
was used.
Please look at the updated lifecycle docs:
https://qwik.builder.io/docs/components/lifecycle/
Old code:
import { useMount$, useWatch$ } from '@builder.io/qwik';
export function MyComponent() {
const signal = useSignal(0);
useMount$(() => {
console.log('mount');
});
useWatch$(({track}) => {
track(signal)
console.log('watch');
});
useServerMount$(() => {
console.log('server mount');
});
useClientMount$(() => {
console.log('client mount');
});
}
New code:
import { useTask$ } from '@builder.io/qwik';
import { isServer, isBrowser } from '@builder.io/qwik/build';
export function MyComponent() {
const signal = useSignal(0);
useTask$(() => {
console.log('mount');
});
useTask$(({track}) => {
track(signal);
console.log('watch');
});
useTask$(() => {
if (isServer) {
console.log('server mount');
}
});
useTask$(() => {
if (isBrowser) {
console.log('client mount');
}
});
}
Deprecating node-fetch
in favor of undici
Future versions of node will include fetch()
natively. This version is based on undici.
In order to prepare for a future where we dont need a polifyll, we are deprecating node-fetch
in favor of undici
.
Vite 4
We are updating Qwik to Vite 4!! Read about the announcement!
QwikCity!
Soon we will release 0.1.0 of QwikCity features a brand new API that will drastically simplify how you build your apps. It's called Server Functions and it's gonna be awesome!
Coming soon!
What's Changed
- docs: removed unnecessary fragments by @the-r3aper7 in #2361
- docs: Add Guide On Using Map Functions In JSX by @Kesmek in #2373
- docs: remove async from component$ overview by @shairez in #2377
- feat: add config for dev inspector by @zanettin in #2375
- docs(qwik-v-react): fix array key consistency in docs by @jweb89 in #2383
- fix(vite): module side effect by @manucorporat in #2387
- feat: detect invalid HTML by @manucorporat in #2389
- chore: fix link accessibility by @reemardelarosa in #2386
- feat: standardize params/query api by @adamdbradley in #2385
- docs(contributing): Add install note for wasm-pack by @machineloop in #2390
- docs: Add latest 'Qwik City for Resumable, Dynamic Apps' interview with Misko by @machineloop in #2401
- fix: scope vite plugin qwik manifest so that apps can run in parallel by @dario-piotrowicz in #2398
- fix: options like maxWorkers not passed to the generate method by @jwickers in #2400
- feat(adaptors): add adaptor for Azure Static Web Apps by @derkoe in #2384
- feat: add Google Cloud Run integration by @DustinJSilk in #2395
- refactor: merge useMount and useWatch into useTask by @manucorporat in #2379
- docs: add example of using :global() css selector by @DustinJSilk in #2408
- Remove irrelevant netlify notes from node docs by @elyobo in #2420
- docs: fix link useTask by @forresst in #2425
- docs: add builder.io OSS header bar by @mhevery in #2430
- fix: error messages typos by @shairez in #2434
- docs: add builder.io OSS header bar by @mhevery in #2438
- docs: cleanup adapters files (fixes #2421) by @zanettin in #2445
- fix: preview server should use the configured outDir by @dmitry-stepanenko in #2423
- feat: server actions by @manucorporat in #2394
- fix: add eslint serialization classes by @manucorporat in #2453
- Release 0 16 0 by @manucorporat in #2455
- fix: streaming loader by @manucorporat in #2454
- fix: number values for style by @manucorporat in #2456
- chore: add node-fetch by @manucorporat in #2457
New Contributors
- @Kesmek made their first contribution in #2373
- @jweb89 made their first contribution in #2383
- @machineloop made their first contribution in #2390
- @derkoe made their first contribution in #2384
- @DustinJSilk made their first contribution in #2395
- @elyobo made their first contribution in #2420
- @dmitry-stepanenko made their first contribution in #2423
Full Changelog: v0.15.2...v0.16.0
v0.15.2
What's Changed
- docs: improve styling docs by @manucorporat in #2367
- fix: make array hole test more readable by @wmertens in #2369
- chore: 0.15.2 by @manucorporat in #2371
- docs: fix typo by @saikatdas0790 in #2372
Full Changelog: v0.15.1...v0.15.2
v0.15.1
What's Changed
- docs: fix build.preview by @adamdbradley in #2341
- chore: add vite ecosystem scripts by @manucorporat in #2349
- docs: fix typo lifecycle by @forresst in #2346
- feat: add URLSearchParams to serializer by @adamdbradley in #2352
- refactor: use class prop without casting to any by @langbamit in #2348
- feat: add to package.json when present in the ssr dir by @Wimpert in #2354
- showcase: Add Qwind starter template by @prototypa in #2343
- fix: detect and error on array holes by @manucorporat in #2356
- chore: remove className by @manucorporat in #2310
- fix: textarea vdom patching by @manucorporat in #2357
- fix: update features by @manucorporat in #2363
- fix: jsx rule with fragment by @manucorporat in #2364
- [feat] Pre-fetch Link data on anchor focus by @nnelgxorz in #2358
- fix: useClientEffect() in empty components by @manucorporat in #2365
- chore: release 0.15.1 by @manucorporat in #2366
New Contributors
- @Wimpert made their first contribution in #2354
- @prototypa made their first contribution in #2343
Full Changelog: v0.15.0...v0.15.1
v0.15.0
What's Changed
- docs: add one more website to the showcase by @ssmlee04 in #2268
- fix: signal rendering of classes by @manucorporat in #2271
- Fix a typo by @TejasQ in #2279
- Inline causes the clock to not show by @bryanhannes in #2283
- Docs: Tutorial onError should be onRejected by @bryanhannes in #2284
- fix: not silent error during rendering by @manucorporat in #2297
- fix: correctly handle draggable and spellcheck by @manucorporat in #2299
- docs: right menu for Getting Started & Think Qwik by @forresst in #2243
- fix: dev server 302 error by @adamdbradley in #2300
- feat: non-serializable response data dev error by @adamdbradley in #2305
- fix typo by @Mhmdrza in #2302
- docs: include vercel edge in the adaptors overview by @reemardelarosa in #2292
- fix(optimizer): missing args passed to wasm fallback by @manucorporat in #2308
- fix: textarea value rendering in SSR by @manucorporat in #2309
- feat: better error reporting by @manucorporat in #2312
- fix: render toggle + signal by @manucorporat in #2313
- feat: Link prefetch by default, q-data caching by @adamdbradley in #2314
- fix: useContent menu lookup by @adamdbradley in #2315
- docs: updated img-models url in showcase by @shairez in #2320
- fix: rendering of sibling component and mandatory key by @manucorporat in #2321
- feat: serialize jsx dev info by @manucorporat in #2217
- chore: prepare 0.15.0 by @manucorporat in #2330
- fix: client redirect for trailing slash by @adamdbradley in #2333
- fix: forceConsistentCasingInFileNames in starters by @adamdbradley in #2334
- docs: fix typos and improve explanations by @almilo in #2332
- fix: click-to-component by @manucorporat in #2335
- Fix some typos and align explanations by @almilo in #2331
- release: qwik-city 0.0.128 by @adamdbradley in #2337
New Contributors
- @ssmlee04 made their first contribution in #2268
- @TejasQ made their first contribution in #2279
- @bryanhannes made their first contribution in #2283
- @Mhmdrza made their first contribution in #2302
- @almilo made their first contribution in #2332
Full Changelog: v0.14.1...v0.15.0
v0.14.1
What's Changed
- docs: vercel edge by @adamdbradley in #2228
- fix: props enumeration of simbols by @manucorporat in #2229
- test: qwik-city catchall e2e by @adamdbradley in #2231
- fix: non-GET request endpoints by @adamdbradley in #2233
- docs: updated contributing.md by @the-r3aper7 in #2232
- chore: improve bug report template by @manucorporat in #2236
- feat: allow recursive class definitions by @wmertens in #2230
- docs: fix typo by @saikatdas0790 in #2237
- fix: qwikcity vite dev server order by @manucorporat in #2239
- docs: Update Vercel Edge Get Started Link by @tihuan in #2246
- docs: FAQ fix doubled sentences by @forresst in #2244
- docs: fix typo in faq/index.mdx by @eltociear in #2249
- Rephrase a paragraph by @DominusKelvin in #2247
- perf/fix: strong partially guaranties by @manucorporat in #2253
- feat: add query search params to loadClientData (#2250) by @jwickers in #2251
- docs: fix typo in static-site-config/index.mdx by @MRDGH2821 in #2255
- fix: back button w/ SPA link and reload by @adamdbradley in #2263
- fix: onGet stripping by @manucorporat in #2260
- chore: Release 0.14.1 by @manucorporat in #2264
- fix: page, endpoint, q-data GET request by @adamdbradley in #2265
- chore: release qwik-city 0.0.127 by @manucorporat in #2269
New Contributors
- @DominusKelvin made their first contribution in #2247
- @jwickers made their first contribution in #2251
- @MRDGH2821 made their first contribution in #2255
Full Changelog: v0.14.0...v0.14.1
v0.14.0
What's Changed
- feat: allow itemprop in DocumentMeta by @ahashem95 in #2108
- fix: vercel integration directory by @manucorporat in #2111
- docs: dollar explanation by @mhevery in #2115
- chore: update docs 0.13.1 by @manucorporat in #2104
- feat: Improve codespace support by @manucorporat in #2118
- docs: update example to use useSignal by @willkuerlich in #2112
- docs: update serialization boundaries code snippet by @voluntadpear in #2122
- docs(lite-components): lite components limitations by @voluntadpear in #2123
- chore: using pnpm by @manucorporat in #2120
- fix: argument of type 'unknown' is used in useStyles$ by @LiKang6688 in #2126
- docs: updated
useStyleScope()
section by @zanettin in #2125 - chore: update deps by @manucorporat in #2128
- docs: fix typo by @tuurbo in #2127
- docs(resumability): description of non serializable entities by @voluntadpear in #2124
- docs: styling page updates by @zanettin in #2129
- docs: Improve docs from yoav feedback by @manucorporat in #2131
- feat: add playwright support by @manucorporat in #2130
- Corrected "it's" to "its" by @lbensaad in #2137
- docs: Updated CONTRIBUTING.md from yarn to pnpm by @the-r3aper7 in #2136
- chore: update manifest warning msg by @adamdbradley in #2139
- docs: add showcase by @manucorporat in #2150
- docs: Add new videos to the media page by @Vasudevatirupathinaidu in #2151
- feat: fix prettier issues pre-commit hook by @shairez in #2145
- docs: fix typo projection by @forresst in #2152
- docs: fix typo advanced dollar by @forresst in #2146
- docs: showcase by @manucorporat in #2154
- docs: fix typo by @Craiqser in #2153
- docs: add nofollow by @adamdbradley in #2155
- chore: fix qwik city tests by @adamdbradley in #2156
- fix(eslint-plugin-qwik): handle linting tuple types properly for valid-lexical-scope rule by @jessezhang91 in #2157
- chore: move qwikcity test by @manucorporat in #2038
- docs: big overall update by @manucorporat in #2161
- 🎬 by @manucorporat in #2166
- docs: add keyboards by @manucorporat in #2167
- docs: fix lifecycle typo by @reemardelarosa in #2171
- fix(docs): qwikcity/api typo by @ulic75 in #2172
- feat: 404 and catchall handling by @adamdbradley in #2175
- fix: correct css variable rendering by @manucorporat in #2181
- fix: computed prop signals by @manucorporat in #2182
- feat: use deploy instead of serve by @manucorporat in #2184
- fix: add [hidden] to qwik styles by @manucorporat in #2183
- Remove references to Netlify in Cloudflare Pages adapter documentation by @Procee in #2186
- release: qwik-city by @adamdbradley in #2185
- docs: dark mode by @Varixo in #1474
- TUTORIAL: make useClientEffect use track by @jmmon in #1148
- TUTORIAL: Lifecycle Hooks - useWatch task by @jmmon in #1160
- TUTORIAL: useResource now has a task by @jmmon in #1151
- remove inline from clock.css import by @noli44 in #2174
- tutorial: replace useRef with useSignal (fixes #1810) by @zanettin in #2035
- feat: Expose event types by @nnelgxorz in #2027
- fix(qwik city cloudflare pages adapter): added all q-data.json files … by @EamonHeffernan in #2194
- feat: add client mount for symmetry reasons by @manucorporat in #2195
- fix: devcontainer by @manucorporat in #2198
- fix: use pkg manager to run scripts by @manucorporat in #2199
- chore: update deps by @manucorporat in #2201
- docs: add limitations to react docs by @manucorporat in #2219
- docs: maintain heading hierarchy by @saikatdas0790 in #2211
- docs: remove redundant statement by @saikatdas0790 in #2213
- docs: fix "it" -> "that" by @saikatdas0790 in #2210
- docs: fix typo by @saikatdas0790 in #2209
- docs: fix link markdown by @forresst in #2222
- feat: add QwikCityMockProvider by @manucorporat in #2218
- feat: add styled-vanilla-extract by @manucorporat in #2221
- fix: vite preview serve by @adamdbradley in #2224
- fix: dev-server w/ catchall by @adamdbradley in #2225
- fix: index/layout matching by @adamdbradley in #2226
- chore: Prepare release by @manucorporat in #2227
New Contributors
- @willkuerlich made their first contribution in #2112
- @LiKang6688 made their first contribution in #2126
- @tuurbo made their first contribution in #2127
- @lbensaad made their first contribution in #2137
- @Vasudevatirupathinaidu made their first contribution in #2151
- @Procee made their first contribution in #2186
- @noli44 made their first contribution in #2174
- @EamonHeffernan made their first contribution in #2194
Full Changelog: v0.13.3...v0.14.0
v0.13.3
What's Changed
- fix: handle default exports of QRL by @manucorporat in #2105
- 0.13.3 by @manucorporat in #2107
Full Changelog: v0.13.2...v0.13.3
v0.13.2
What's Changed
- docs: random docs work by @manucorporat in #2094
- Fix netlify route regexes by @nnelgxorz in #2102
- fix: multiple cookies serialization by @manucorporat in #2103
Full Changelog: v0.13.1...v0.13.2
v0.13.1
What's Changed
- Release 0 13 1 by @manucorporat in #2096
- fix: rollup plugin by @manucorporat in #2098
Full Changelog: v0.13.0...v0.13.1