<commit_before># v7.0.0 Migration guide

- [App entries](#app-entries)
- [Linting](#linting)
  - [`.eslintrc`](#eslintrc)
  - [`.eslintignore`](#eslintignore)
- [Rendering Strategy](#rendering-strategy)
  - [Static apps](#static-apps)
    - [Rendering](#rendering)
    - [`locales`](#locales)
    - [`env`](#env)
  - [Server rendered apps](#server-rendered-apps)
    - [`port`](#port)
    - [Server entry](#server-entry)

## App entries

The old entry object, which contained all the code entry points has been flattened for simplicity. Update whichever values your app utilizes.

```diff
module.exports = {
-  entry: {
-    server: './src/server.js',
-    client: './src/client.js',
-    render: './src/render.js',
-  }
+  serverEntry: './src/server.js',
+  clientEntry: './src/client.js',
+  renderEntry: './src/render.js',
};
```

## Linting

### `.eslintrc`

If you have previously added an [`.eslintrc`](https://eslint.org/docs/user-guide/configuring) file to your project, you will need to remove it since it&rsquo;s now generated and managed by sku.

```bash
$ git rm .eslintrc
```

It&rsquo;s also added to your `.gitignore` automatically. This ensures it&rsquo;s always consistent with the `sku lint` command, while supporting editor integrations to give you live ESLint feedback during development.

If your existing `.eslintrc` file contains some customisations, these will now need to be provided via a `dangerouslySetESLintConfig` function in `sku.config.js`.

### `.eslintignore`

ESLint is now run across your entire project, not just the `src` directory (or the directories defined in `srcPaths`). It&rsquo;s possible that this will cause additional ESLint errors. If you need to opt out of any specific patterns, you can do so by adding an [`.eslintignore`](https://eslint.org/docs/user-guide/configuring#eslintignore) file to the root of your project.

## Rendering Strategy

This release changes the way sku handles HTML rendering and asset generation for both server rendered and statically rendered apps.

Please read through our newly added documentation on [static rendering](../static-rendering) before attempting migration.

### Static apps

Build output folder structure has changed in some circumstances. After making the following changes, please check your `target` directory and update any testing and deployment strategies to suit. See our documentation on [static rendering](../static-rendering) for details on the new structure.

#### Rendering

First open up your `sku.config.js`.

Using the new `routes` option, detail all of your application&rsquo;s routes.
<commit_msg>docs: Fix migration guide links (#233)<commit_after># v7.0.0 Migration guide

- [App entries](#app-entries)
- [Linting](#linting)
  - [`.eslintrc`](#eslintrc)
  - [`.eslintignore`](#eslintignore)
- [Rendering Strategy](#rendering-strategy)
  - [Static apps](#static-apps)
    - [Rendering](#rendering)
    - [`locales`](#locales)
    - [`env`](#env)
  - [Server rendered apps](#server-rendered-apps)
    - [`port`](#port)
    - [Server entry](#server-entry)

## App entries

The old entry object, which contained all the code entry points has been flattened for simplicity. Update whichever values your app utilizes.

```diff
module.exports = {
-  entry: {
-    server: './src/server.js',
-    client: './src/client.js',
-    render: './src/render.js',
-  }
+  serverEntry: './src/server.js',
+  clientEntry: './src/client.js',
+  renderEntry: './src/render.js',
};
```

## Linting

### `.eslintrc`

If you have previously added an [`.eslintrc`](https://eslint.org/docs/user-guide/configuring) file to your project, you will need to remove it since it&rsquo;s now generated and managed by sku.

```bash
$ git rm .eslintrc
```

It&rsquo;s also added to your `.gitignore` automatically. This ensures it&rsquo;s always consistent with the `sku lint` command, while supporting editor integrations to give you live ESLint feedback during development.

If your existing `.eslintrc` file contains some customisations, these will now need to be provided via a `dangerouslySetESLintConfig` function in `sku.config.js`.

### `.eslintignore`

ESLint is now run across your entire project, not just the `src` directory (or the directories defined in `srcPaths`). It&rsquo;s possible that this will cause additional ESLint errors. If you need to opt out of any specific patterns, you can do so by adding an [`.eslintignore`](https://eslint.org/docs/user-guide/configuring#eslintignore) file to the root of your project.

## Rendering Strategy

This release changes the way sku handles HTML rendering and asset generation for both server rendered and statically rendered apps.

Please read through our newly added documentation on [static rendering](../static-rendering.md) before attempting migration.

### Static apps

Build output folder structure has changed in some circumstances. After making the following changes, please check your `target` directory and update any testing and deployment strategies to suit. See our documentation on [static rendering](../static-rendering.md) for details on the new structure.

#### Rendering

First open up your `sku.config.js`.

Using the new `routes` option, detail all of your application&rsquo;s routes.

{'fraction_non_alphanumeric': 0.11863436963570474, 'fraction_numerical': 0.0017165744802593935, 'mean_word_length': 4.329268292682927, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2339349', 'n_tokens_mistral': 1580, 'n_tokens_neox': 1481, 'n_words': 585}