You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/customization.md
+49-14Lines changed: 49 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,42 +11,56 @@ Instead of using the super-plugins, for finer-grained control you can always add
11
11
12
12
### sbt-typelevel-kernel
13
13
-`TypelevelKernelPlugin`
14
-
-`tlIsScala3` (setting): true if `scalaVersion` is 3.x
15
-
-`tlReplaceCommandAlias` (method): replace a `addCommandAlias` definition
16
-
-`tlReleaseLocal` (command): alias for `+publishLocal`
14
+
-`tlIsScala3` (setting): `true`, if `scalaVersion` is 3.x.
15
+
-`tlSkipIrrelevantScalas` (setting): `true`, if should `skip` for `scalaVersion` not in `crossScalaVersions`.
16
+
-`tlReplaceCommandAlias` (method): Replace a `addCommandAlias` definition.
17
+
-`tlReleaseLocal` (command): Alias for `+publishLocal`.
17
18
18
19
### sbt-typelevel-versioning
19
-
-`TypelevelVersioningPlugin`: Establishes a git-based, early semantic versioning scheme
20
-
-`tlBaseVersion` (setting): the series your project is in. e.g., 0.2, 3.5
21
-
-`tlUntaggedAreSnapshots` (setting): If true, an untagged commit is given a snapshot version, e.g. `0.4.1-17-00218f9-SNAPSHOT`. If false, it is given a release version, e.g. `0.4.1-17-00218f9`. (default: true)
20
+
-`TypelevelVersioningPlugin`: Establishes a git-based, early semantic versioning scheme.
21
+
-`tlBaseVersion` (setting): The series your project is in, e.g., 0.2, 3.5.
22
+
-`tlUntaggedAreSnapshots` (setting): If true, an untagged commit is given a snapshot version, e.g. `0.4.1-17-00218f9-SNAPSHOT`. If false, it is given a release version, e.g. `0.4.1-17-00218f9` (default: true).
22
23
23
24
### sbt-typelevel-mima
24
25
-`TypelevelMimaPlugin`: Determines previous MiMa artifacts via your `version` setting and git tags.
25
26
-`tlVersionIntroduced` (setting): A map `scalaBinaryVersion -> version` e.g. `Map("2.13" -> "1.5.2", "3" -> "1.7.1")` used to indicate that a particular `crossScalaVersions` value was introduced in a given version (default: empty).
27
+
-`tlMimaPreviousVersions` (setting): A set of previous versions to compare binary-compatibility against.
26
28
27
29
### sbt-typelevel-sonatype
28
30
-`TypelevelSonatypePlugin`: Sets up publishing to Sonatype/Maven.
29
-
-`tlRelease` (command): check binary-compatibility and `+publish` to Sonatype
30
-
-`tlSonatypeUseLegacyHost` (setting): publish to `oss.sonatype.org` instead of `s01.oss.sonatype.org` (default: false)
31
+
-`tlSonatypeUseLegacyHost` (setting): Publish to `oss.sonatype.org` instead of `s01.oss.sonatype.org` (default: false).
32
+
-`tlRelease` (command): Check binary-compatibility and `+publish` to Sonatype.
33
+
-`TypelevelUnidocPlugin`: Sets up publishing a Scaladoc-only artifact to Sonatype/Maven.
31
34
32
35
### sbt-typelevel-settings
33
36
-`TypelevelSettingsPlugin`: Good and/or opinionated defaults for scalac settings etc., inspired by sbt-tpolecat.
34
37
-`tlFatalWarnings` (setting): Convert compiler warnings into errors (default: false).
38
+
-`tlJdkRelease` (setting): JVM target version for the compiled bytecode (default: None).
35
39
36
40
### sbt-typelevel-github
37
41
-`TypelevelGitHubPlugin`: Populates boilerplate settings assuming you are using GitHub.
38
-
-`TypelevelScalaJSGitHubPlugin`: Points your sourcemaps to GitHub permalinks. Only activated for Scala.js projects.
42
+
-`tlGitHubRepo` (setting): The name of this repository on GitHub.
39
43
-`tlGitHubDev(user, fullName)` (method): Helper to create a `Developer` entry from a GitHub username.
44
+
-`TypelevelScalaJSGitHubPlugin`: Points your sourcemaps to GitHub permalinks. Only activated for Scala.js projects.
45
+
-`TypelevelScalaNativeGitHubPlugin`: Points your sourcemaps to GitHub permalinks. Only activated for Scala Native projects.
40
46
41
47
### sbt-typelevel-ci
42
48
-`TypelevelCiPlugin`: Sets up GitHub actions to run tests and check binary-compatibility in CI.
49
+
-`tlCiHeaderCheck` (setting): Whether to do header check in CI (default: `false`).
50
+
-`tlCiScalafmtCheck` (setting): Whether to do scalafmt check in CI (default: `false`).
51
+
-`tlCiScalafixCheck` (setting): Whether to do scalafix check in CI (default: `false`).
52
+
-`tlCiMimaBinaryIssueCheck` (setting): Whether to do MiMa binary issues check in CI (default: `false`).
53
+
-`tlCiDocCheck` (setting): Whether to build API docs in CI (default: `false`).
54
+
-`tlCiDependencyGraphJob` (setting): Whether to add a job to submit dependencies to GH (default: `true`)
55
+
-`tlCiStewardValidateConfig` (setting): The location of the Scala Steward config to validate (default: `.scala-steward.conf`, if exists).
43
56
-`tlCrossRootProject` (method): helper to create a `root` project that can aggregate both `Project`s and `CrossProject`s. Automatically creates separate jobs in the CI matrix for each platform (JVM, JS, etc.).
44
57
45
58
### sbt-typelevel-sonatype-ci-release
46
59
-`TypelevelSonatypeCiReleasePlugin`: Sets up GitHub actions to publish to Sonatype in CI.
47
60
- Requires the `SONATYPE_USERNAME` and `SONATYPE_PASSWORD` secrets
48
-
-`tlCiReleaseTags` (setting): Controls whether or not v-prefixed tags should be released from CI (default true).
49
-
-`tlCiReleaseBranches`: The branches in your repository to release from in CI on every push. Depending on your versioning scheme, they will be either snapshots or (hash) releases. Leave this empty if you only want CI releases for tags. (default: `[]`).
61
+
-`tlCiReleaseTags` (setting): Controls whether or not v-prefixed tags should be released from CI (default `true`).
62
+
-`tlCiReleaseBranches` (setting): The branches in your repository to release from in CI on every push. Depending on your versioning scheme, they will be either snapshots or (hash) releases. Leave this empty if you only want CI releases for tags. (default: `[]`).
63
+
-`tlCiRelease` (command): Performs a `tlRelease` from the CI and reports to GH step summary.
50
64
51
65
### sbt-typelevel-ci-signing
52
66
-`TypelevelCiSigningPlugin`: Sets up GitHub actions to sign your artifacts in CI.
@@ -56,15 +70,36 @@ Instead of using the super-plugins, for finer-grained control you can always add
56
70
### sbt-typelevel-ci-release
57
71
-`TypelevelCiReleasePlugin`: The super-plugin that sets you up with versioning, mima, signing, and sonatype publishing, all in GitHub actions.
58
72
73
+
### sbt-typelevel-scalafix
74
+
-`TypelevelScalafixPlugin`
75
+
-`tlTypelevelScalafixVersion` (setting): The version of typelevel-scalafix to add to the scalafix dependency classpath.
76
+
59
77
### sbt-typelevel
60
78
-`TypelevelPlugin`: The super-super-plugin intended for bootstrapping the typical Typelevel project. Sets up CI release including snapshots, scalac settings, headers, and formatting.
61
79
62
80
### sbt-typelevel-site
63
-
-`TypelevelSitePlugin`: Sets up an [mdoc](https://scalameta.org/mdoc/)/[Laika](https://typelevel.org/Laika/)-generated website, automatically published to GitHub pages in CI.
81
+
-`TypelevelSitePlugin`: Sets up an [mdoc](https://scalameta.org/mdoc/)/[Laika](https://typelevel.org/Laika/)-generated website, automatically published to GitHub pages in CI.
82
+
-`tlSiteHelium` (setting): The Helium theme configuration and extensions.
83
+
-`tlSiteIsTypelevelProject` (setting): Indicates whether the generated site should be pre-populated with UI elements specific to Typelevel Organization or Affiliate projects (default: None).
84
+
-`tlSiteApiUrl` (setting): URL to the API docs (default: `None`).
85
+
-`tlSiteApiModule` (setting): The module that publishes API docs (default: `None`).
86
+
-`tlSiteApiPackage` (setting): The top-level package for your API docs (e.g. org.typlevel.sbt).
87
+
-`tlSiteKeepFiles` (setting): Whether to keep existing files when deploying site (default: `true`).
88
+
-`tlSiteGenerate` (setting): A sequence of workflow steps which generates the site (default: `[Sbt(List("tlSite"))]`).
89
+
-`tlSitePublish` (setting): A sequence of workflow steps which publishes the site (default: `peaceiris/actions-gh-pages`).
64
90
-`tlSitePublishBranch` (setting): The branch to publish the site from on every push. Set this to `None` if you only want to update the site on tag releases. (default: `main`)
65
91
-`tlSitePublishTags` (setting): Defines whether the site should be published on tag releases. Note on setting this to `true` requires the `tlSitePublishBranch` setting to be set to `None`. (default: `false`)
66
-
-`tlSiteApiUrl` (setting): URL to the API docs. (default: `None`)
67
-
-`tlSiteHeliumConfig` (setting): the Laika Helium config. (default: how the sbt-typelevel site looks)
92
+
-`tlSite` (task): Generate the site (default: runs mdoc then laika).
93
+
-`tlSitePreview` (task): Start a live-reload preview server (combines mdoc --watch with laikaPreview).
94
+
95
+
### sbt-typelevel-mergify
96
+
-`MergifyPlugin`: Sets up .mergify.yml file generation
97
+
-`mergifyPrRules` (setting): The mergify pull request rules.
98
+
-`mergifyStewardConfig` (setting): Config for the automerge rule for Scala Steward PRs, set to `None` to disable.
99
+
-`mergifyRequiredJobs` (setting): Ids for jobs that must succeed for merging (default: `[build]`).
100
+
-`mergifySuccessConditions` (setting): Success conditions for merging (default: auto-generated from `mergifyRequiredJobs` setting).
101
+
-`mergifyGenerate` (task): Generates (and overwrites if extant) a .mergify.yml according to configuration.
102
+
-`mergifyCheck` (task): Checks to see if the .mergify.yml files are equivalent to what would be generated and errors if otherwise.
Copy file name to clipboardExpand all lines: docs/site.md
+9-24Lines changed: 9 additions & 24 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,13 +1,9 @@
1
1
# sbt-typelevel-site
2
2
3
-
<<<<<<< HEAD
4
3
**sbt-typelevel-site** is an optional plugin for generating websites with [mdoc](https://scalameta.org/mdoc/)
5
-
and [Laika](https://planet42.github.io/Laika/) and deploying to GitHub Pages from CI.
4
+
and [Laika](https://typelevel.org/Laika/) and deploying to GitHub Pages from CI.
6
5
You can add it to your build alongside either the **sbt-typelevel** or **sbt-typelevel-ci-release** plugin
7
6
or also use it stand-alone.
8
-
=======
9
-
**sbt-typelevel-site** is an optional plugin for generating websites with [mdoc](https://scalameta.org/mdoc/) and [Laika](https://typelevel.org/Laika/) and deploying to GitHub Pages from CI. You can add it to your build alongside either the **sbt-typelevel** or **sbt-typelevel-ci-release** plugin or also use it stand-alone.
10
-
>>>>>>> series/0.4
11
7
12
8
## Quick start
13
9
@@ -29,12 +25,8 @@ lazy val docs = project.in(file("site")).enablePlugins(TypelevelSitePlugin)
29
25
Place your `.md` files in the `docs/` directory of your project. To preview locally, run `docs/tlSitePreview`.
30
26
This will start a preview server at http://localhost:4242.
31
27
32
-
<<<<<<< HEAD
33
-
The site is generated using [mdoc](https://scalameta.org/mdoc/) and [Laika](https://planet42.github.io/Laika/)
28
+
The site is generated using [mdoc](https://scalameta.org/mdoc/) and [Laika](https://typelevel.org/Laika/)
34
29
and published to the `gh-pages` branch on every push to the specified branch.
35
-
=======
36
-
The site is generated using [mdoc](https://scalameta.org/mdoc/) and [Laika](https://typelevel.org/Laika/) and published to the `gh-pages` branch on every push to the specified branch.
37
-
>>>>>>> series/0.4
38
30
39
31
You will also need to configure your repository settings:
40
32
@@ -88,7 +80,7 @@ With the flag above (which defaults to `false`) these additional settings apply:
88
80
### Customization
89
81
90
82
All customization options are based on Laika's configuration APIs for which we refer you to the comprehensive [Laika manual][Laika]
91
-
and specifically the [`laikaTheme` setting](https://planet42.github.io/Laika/0.18/02-running-laika/01-sbt-plugin.html#laikatheme-setting).
83
+
and specifically the [`laikaTheme` setting](https://typelevel.org/Laika/latest/02-running-laika/01-sbt-plugin.html#laikatheme-setting).
92
84
93
85
@:callout(warning)
94
86
For all code examples in the Laika manual you need to replace `Helium.defaults` with `tlSiteHelium.value`
@@ -122,13 +114,13 @@ Some of the customization options which are most likely of interest in the conte
122
114
For a complete list of customization options please see the full [Laika] documentation.
We refer you to the comprehensive [Laika manual](https://typelevel.org/Laika/index.html) and specifically the [`laikaTheme` setting](https://typelevel.org/Laika/0.18/02-running-laika/01-sbt-plugin.html#laikatheme-setting).
0 commit comments