diff --git a/_config.yml b/_config.yml
index 034b324714..6b5d64a1b5 100644
--- a/_config.yml
+++ b/_config.yml
@@ -96,6 +96,42 @@ defaults:
type: "tour"
values:
overview-name: "Tour of Scala"
+ -
+ scope:
+ path: "_overviews/macros"
+ values:
+ scala2: true
+ versionSpecific: true
+ -
+ scope:
+ path: "_overviews/reflection"
+ values:
+ scala2: true
+ versionSpecific: true
+ -
+ scope:
+ path: "_overviews/quasiquotes"
+ values:
+ scala2: true
+ versionSpecific: true
+ -
+ scope:
+ path: "_overviews/repl"
+ values:
+ scala2: true
+ versionSpecific: true
+ -
+ scope:
+ path: "_overviews/plugins"
+ values:
+ scala2: true
+ versionSpecific: true
+ -
+ scope:
+ path: "_overviews/compiler-options"
+ values:
+ scala2: true
+ versionSpecific: true
-
scope:
path: "_overviews/scala3-book"
@@ -141,6 +177,7 @@ defaults:
path: "_overviews/scala3-macros"
values:
scala3: true
+ versionSpecific: true
partof: scala3-macros
overview-name: "Macros in Scala 3"
layout: multipage-overview
@@ -150,6 +187,7 @@ defaults:
path: "_overviews/scala3-scaladoc"
values:
scala3: true
+ versionSpecific: true
partof: scala3-scaladoc
overview-name: "Scaladoc"
layout: multipage-overview
diff --git a/_data/doc-nav-header.yml b/_data/doc-nav-header.yml
index 52b66be1da..392012e3b5 100644
--- a/_data/doc-nav-header.yml
+++ b/_data/doc-nav-header.yml
@@ -1,11 +1,24 @@
- title: Getting Started
url: "/getting-started/index.html"
+- title: Scala 3
+ url: "#"
+ submenu:
+ - title: What's New?
+ url: "/scala3/new-in-scala3.html"
+ - title: Migrating From Scala 2
+ url: "/scala3/guides/migration/compatibility-intro.html"
+ - title: New Features for Scaladoc
+ url: "/scala3/scaladoc.html"
+ - title: Videos and Talks
+ url: "/scala3/talks.html"
- title: Learn
url: "#"
submenu:
- title: Tour of Scala
url: "/tour/tour-of-scala.html"
- - title: Scala Book
+ - title: Scala 3 Book
+ url: "/scala3/book/introduction.html"
+ - title: Scala 2 Book
url: "/overviews/scala-book/introduction.html"
- title: Online Courses
url: "/online-courses.html"
@@ -33,10 +46,14 @@
url: "/books.html"
- title: Scala FAQ
url: "/tutorials/FAQ/index.html"
- - title: Language Specification
+ - title: Scala Language Specification
url: http://scala-lang.org/files/archive/spec/2.13/
- - title: Contribution Guide
+ - title: Scala 3 Language Reference
+ url: "https://docs.scala-lang.org/scala3/reference"
+ - title: Scala Contribution Guide
url: "/contribute/"
+ - title: Scala 3 Compiler Contributing Guide
+ url: "/scala3/guides/contribution/contribution-intro.html"
- title: Style Guide
url: "/style/index.html"
- title: Cheatsheet
@@ -44,11 +61,6 @@
- title: Glossary
url: "/glossary/index.html"
- title: API
- url: "#"
- submenu:
- - title: Current
- url: https://www.scala-lang.org/api/current/
- - title: All Versions
- url: "/api/all.html"
+ url: "/api/all.html"
- title: SIPs
url: "/sips/index.html"
diff --git a/_data/overviews.yml b/_data/overviews.yml
index a8bc055f7c..fb6f7a904a 100644
--- a/_data/overviews.yml
+++ b/_data/overviews.yml
@@ -1,4 +1,3 @@
-
- category: Standard Library
description: "Guides and overviews covering the Scala standard library."
overviews:
@@ -60,6 +59,31 @@
- category: Language
description: "Guides and overviews covering features in the Scala language."
overviews:
+ - title: "Migration from Scala 2 to Scala 3"
+ by: Adrien Piquerez
+ icon: suitcase
+ root: "scala3/guides/"
+ url: "migration/compatibility-intro.html"
+ description: "Everything you need to know about compatibility and migration to Scala 3."
+ - title: Scala 3 Macros
+ by: Nicolas Stucki
+ icon: magic
+ root: "scala3/guides/"
+ url: "macros"
+ description: "A detailed tutorial to cover all the features involved in writing macros in Scala 3."
+ label-text: new in Scala 3
+ - title: Value Classes and Universal Traits
+ by: Mark Harrah
+ description: "Value classes are a new mechanism in Scala to avoid allocating runtime objects. This is accomplished through the definition of new AnyVal subclasses."
+ icon: gem
+ url: "core/value-classes.html"
+ - title: An Overview of TASTy
+ by: Alvin Alexander
+ icon: birthday-cake
+ label-text: new in Scala 3
+ root: "scala3/guides/"
+ url: "tasty-overview.html"
+ description: "An overview over the TASTy format aimed at end-users of the Scala language."
- title: String Interpolation
icon: dollar-sign
url: "core/string-interpolation.html"
@@ -72,11 +96,15 @@
by: Josh Suereth
description: "Scala 2.10 introduced a new feature called implicit classes. An implicit class is a class marked with the implicit keyword. This keyword makes the class’ primary constructor available for implicit conversions when the class is in scope."
url: "core/implicit-classes.html"
- - title: Value Classes and Universal Traits
- by: Mark Harrah
- description: "Value classes are a new mechanism in Scala to avoid allocating runtime objects. This is accomplished through the definition of new AnyVal subclasses."
- icon: gem
- url: "core/value-classes.html"
+ - title: The Scala Book
+ by: Alvin Alexander
+ icon: book
+ label-color: "#899295"
+ label-text: archived
+ url: "scala-book/introduction.html"
+ description: >
+ A light introduction to the Scala language, focused on Scala 2.
+ Now updated for Scala 3, we are in the process of merging the two.
- category: Authoring Libraries
description: "Guides for contributing open source libraries to the Scala ecosystem."
@@ -137,13 +165,20 @@
- category: "Tools"
description: "Reference material on core Scala tools like the Scala REPL and Scaladoc generation."
overviews:
- - title: Scala REPL
+ - title: Scala 2 REPL
icon: terminal
url: "repl/overview.html"
description: |
The Scala REPL is a tool (scala
) for evaluating expressions in Scala.
The scala
command will execute a source script by wrapping it in a template and then compiling and executing the resulting program
+ - title: Scaladoc For Scala 3
+ by: Krzysztof Romanowski, Aleksander Boruch-Gruszecki, Andrzej Ratajczak, Kacper Korban, Filip Zybała
+ icon: book
+ root: "scala3/guides/"
+ url: "scaladoc"
+ description: "Updates in Scala 3 to Scala’s API documentation generation tool."
+ label-text: updated
- title: Scaladoc
url: "scaladoc/overview.html"
icon: book
@@ -159,12 +194,18 @@
- category: Compiler
description: "Guides and overviews covering the Scala compiler: compiler plugins, reflection, and metaprogramming tools such as macros."
overviews:
- - title: Reflection
+ - title: "Scala 3 Contributing Guide"
+ by: Jamie Thompson, Anatolii Kmetiuk
+ icon: cogs
+ root: "scala3/guides/"
+ url: "contribution/contribution-intro.html"
+ description: "Guide to the Scala 3 Compiler and fixing an issue"
+ - title: Scala 2 Reflection
by: Heather Miller, Eugene Burmako, and Philipp Haller
icon: binoculars
url: "reflection/overview.html"
description: Scala's runtime/compile-time reflection framework.
- label-text: experimental
+ label-text: removed in Scala 3
subdocs:
- title: Overview
url: "reflection/overview.html"
@@ -180,12 +221,12 @@
url: "reflection/thread-safety.html"
- title: Changes in Scala 2.11
url: "reflection/changelog211.html"
- - title: Macros
+ - title: Scala 2 Macros
by: Eugene Burmako
icon: magic
url: "macros/usecases.html"
description: "Scala's metaprogramming framework."
- label-text: experimental
+ label-text: removed in Scala 3
subdocs:
- title: Use Cases
url: "macros/usecases.html"
@@ -211,12 +252,12 @@
url: "macros/roadmap.html"
- title: Changes in 2.11
url: "macros/changelog211.html"
- - title: Quasiquotes
+ - title: Quasiquotes in Scala 2
by: Denys Shabalin
icon: quote-left
url: "quasiquotes/setup.html"
description: "Quasiquotes are a convenient way to manipulate Scala syntax trees."
- label-text: experimental
+ label-text: removed in Scala 3
subdocs:
- title: Dependencies and setup
url: "quasiquotes/setup.html"
@@ -244,12 +285,12 @@
url: "quasiquotes/terminology.html"
- title: Future prospects
url: "quasiquotes/future.html"
- - title: Compiler Plugins
+ - title: Scala 2 Compiler Plugins
by: Lex Spoon and Seth Tisue
icon: puzzle-piece
url: "plugins/index.html"
description: "Compiler plugins permit customizing and extending the Scala compiler. This tutorial describes the plugin facility and walks you through how to create a simple plugin."
- - title: Compiler Options
+ - title: Scala 2 Compiler Options
by: Community
icon: cog
url: "compiler-options/index.html"
@@ -265,7 +306,6 @@
url: "compiler-options/optimizer.html"
description: "The compiler can perform various optimizations."
-
- category: Legacy
description: "Guides covering features no longer relevant to recent Scala versions (2.12+)."
overviews:
diff --git a/_data/scala3-doc-nav-header.yml b/_data/scala3-doc-nav-header.yml
deleted file mode 100644
index 3493bd4de3..0000000000
--- a/_data/scala3-doc-nav-header.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-- title: Getting Started
- url: "/scala3/getting-started.html"
-- title: Learn
- url: "#"
- submenu:
- - title: New in Scala 3
- url: "/scala3/new-in-scala3.html"
- - title: Scala 3 Book
- url: "/scala3/book/introduction.html"
- - title: Online Courses
- url: "/online-courses.html"
-- title: Migrate
- url: "/scala3/guides/migration/compatibility-intro.html"
-- title: Reference
- url: '#'
- submenu:
- - title: Guides
- url: '/scala3/guides.html'
- - title: Language Specification
- url: "https://docs.scala-lang.org/scala3/reference"
- - title: Scala Library API
- url: "https://scala-lang.org/api/3.x/"
-- title: Contributing Guide
- url: "/scala3/guides/contribution/contribution-intro.html"
diff --git a/_getting-started/index.md b/_getting-started/index.md
index a26af28495..5db17b403c 100644
--- a/_getting-started/index.md
+++ b/_getting-started/index.md
@@ -5,7 +5,9 @@ partof: getting-started
languages: [fr, ja, uk]
includeTOC: true
-redirect_from: "/getting-started.html"
+redirect_from:
+ - /getting-started.html
+ - /scala3/getting-started.html # we deleted the scala 3 version of this page
---
{% include getting-started.md %}
diff --git a/_includes/documentation-sections.html b/_includes/documentation-sections.html
index 4ca75f459d..fd6714fc8b 100644
--- a/_includes/documentation-sections.html
+++ b/_includes/documentation-sections.html
@@ -14,15 +14,5 @@