Skip to content

Commit 32bf717

Browse files
authored
Merge pull request #521 from scala-js/merge-1x
Merge branch 'series/1.x' into `master`
2 parents bb7be28 + 0c9089e commit 32bf717

39 files changed

+84
-89
lines changed

.github/workflows/ci.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,16 @@ jobs:
2222
uses: japgolly/[email protected]
2323

2424
- name: Build
25-
run: sbt "++${{ matrix.scalaversion }}" package
25+
run: sbt -DCI=1 "++${{ matrix.scalaversion }}" package
2626

2727
- name: Test generate documentation
28-
run: sbt "++${{ matrix.scalaversion }}" doc
28+
run: sbt -DCI=1 "++${{ matrix.scalaversion }}" doc
2929

3030
- name: Build examples
31-
run: sbt "++${{ matrix.scalaversion }}" example/compile
31+
run: sbt -DCI=1 "++${{ matrix.scalaversion }}" example/compile
3232

3333
- name: Validate formatting
34-
run: sbt "++${{ matrix.scalaversion }}" scalafmtCheck
34+
run: sbt -DCI=1 "++${{ matrix.scalaversion }}" scalafmtCheck
3535

3636
- name: Validate api report
3737
if: matrix.scalaversion != '2.11.12' && matrix.scalaversion != '3.0.1'

.scalafix.conf

+17
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
11
rules = [
2+
OrganizeImports,
3+
RemoveUnused,
24
GenerateApiReport,
35
]
6+
7+
RemoveUnused {
8+
imports = false
9+
privates = true
10+
locals = true
11+
}
12+
13+
OrganizeImports {
14+
expandRelative = true
15+
groupedImports = Merge
16+
groupExplicitlyImportedImplicitsSeparately = false
17+
groups = ["*"]
18+
importSelectorsOrder = Ascii
19+
removeUnused = true
20+
}

build.sbt

+17-3
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,26 @@ lazy val root = project
3434

3535
name := "Scala.js DOM"
3636

37-
ThisBuild / crossScalaVersions := Seq("2.12.10", "2.11.12", "2.13.1", "3.0.1")
38-
ThisBuild / scalaVersion := crossScalaVersions.value.head
37+
ThisBuild / crossScalaVersions := Seq("2.11.12", "2.12.12", "2.13.4", "3.0.1")
38+
ThisBuild / scalaVersion := crossScalaVersions.value.find(_.startsWith("2.13.")).get
39+
40+
val inCI = Option(System.getenv("CI")).exists(_.contains("1"))
3941

4042
val commonSettings = Seq(
4143
organization := "org.scala-js",
42-
scalacOptions ++= Seq("-deprecation", "-feature", "-Xfatal-warnings")
44+
scalacOptions ++= Seq(
45+
"-deprecation",
46+
"-feature",
47+
),
48+
scalacOptions ++= (if (!inCI) Seq.empty else Seq(
49+
"-Xfatal-warnings",
50+
)),
51+
scalacOptions ++= (CrossVersion.partialVersion(scalaVersion.value) match {
52+
case Some((2, 11)) => "-Ywarn-unused-import" :: Nil
53+
case Some((2, 12)) => "-Ywarn-unused:imports,patvars,locals,implicits" :: Nil
54+
case Some((2, 13)) => "-Wunused:imports,patvars,locals,implicits" :: Nil
55+
case _ => Nil
56+
}),
4357
)
4458

4559
val noPublishSettings = Seq(

scalafix.sbt

+4
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,7 @@ ThisBuild / scalacOptions ++= {
88
else
99
Nil
1010
}
11+
12+
ThisBuild / scalafixDependencies ++= Seq(
13+
"com.github.liancheng" %% "organize-imports" % "0.5.0"
14+
)

src/main/scala-new-collections/org/scalajs/dom/ext/NamedNodeMapMap.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
package org.scalajs.dom.ext
22

3-
import scala.collection.mutable
4-
53
import org.scalajs.dom._
4+
import scala.collection.mutable
65

76
class NamedNodeMapMap private[ext] (namedNodeMap: NamedNodeMap)
87
extends mutable.Map[String, Attr] {

src/main/scala-old-collections/org/scalajs/dom/ext/NamedNodeMapMap.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
package org.scalajs.dom.ext
22

3-
import scala.collection.mutable
4-
53
import org.scalajs.dom._
4+
import scala.collection.mutable
65

76
class NamedNodeMapMap private[ext] (namedNodeMap: NamedNodeMap)
87
extends mutable.Map[String, Attr] {

src/main/scala/org/scalajs/dom/crypto/package.scala

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
package org.scalajs.dom
22

3+
import scala.language.implicitConversions
34
import scala.scalajs.js
4-
import scala.scalajs.js.typedarray.{ArrayBufferView, ArrayBuffer, Uint8Array}
5+
import scala.scalajs.js.typedarray.{ArrayBuffer, ArrayBufferView, Uint8Array}
56
import scala.scalajs.js.|
67

7-
import scala.language.implicitConversions
8-
98
package object crypto {
109
@inline def crypto = GlobalCrypto.crypto
1110

src/main/scala/org/scalajs/dom/experimental/AbortController.scala

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.scalajs.dom.experimental
22

33
import org.scalajs.dom.raw.EventTarget
4-
54
import scala.scalajs.js
65
import scala.scalajs.js.annotation.JSGlobal
76

src/main/scala/org/scalajs/dom/experimental/Fetch.scala

-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package org.scalajs.dom.experimental
22

33
import org.scalajs.dom.Blob
44
import org.scalajs.dom.raw.FormData
5-
65
import scala.scalajs.js
76
import scala.scalajs.js.annotation._
87
import scala.scalajs.js.typedarray.{ArrayBuffer, Uint8Array}

src/main/scala/org/scalajs/dom/experimental/FileReaderSync.scala

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.scalajs.dom.experimental
22

33
import org.scalajs.dom.raw.Blob
4-
54
import scala.scalajs.js
65
import scala.scalajs.js.annotation._
76
import scala.scalajs.js.typedarray.ArrayBuffer

src/main/scala/org/scalajs/dom/experimental/Fullscreen.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.scalajs.dom.experimental
22

3-
import org.scalajs.dom.raw.{Event, Element, Document}
4-
3+
import org.scalajs.dom.raw.{Document, Element, Event}
54
import scala.language.implicitConversions
65
import scala.scalajs.js
76

src/main/scala/org/scalajs/dom/experimental/Notification.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
package org.scalajs.dom.experimental
22

3+
import org.scalajs.dom.raw.EventTarget
34
import scala.scalajs.js
45
import scala.scalajs.js.annotation._
56

6-
import org.scalajs.dom.raw.EventTarget
7-
87
@js.native
98
trait NotificationOptions extends js.Object {
109

src/main/scala/org/scalajs/dom/experimental/PointerLock.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.scalajs.dom.experimental
22

3-
import org.scalajs.dom.raw.{Event, MouseEvent, Element, Document}
4-
3+
import org.scalajs.dom.raw.{Document, Element, Event, MouseEvent}
54
import scala.language.implicitConversions
65
import scala.scalajs.js
76

src/main/scala/org/scalajs/dom/experimental/Vibration.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package org.scalajs.dom.experimental
22

33
import scala.language.implicitConversions
4-
import scalajs.js
4+
import scala.scalajs.js
55

66
/**
77
* Implicit imports for the vibration api.

src/main/scala/org/scalajs/dom/experimental/beacon/package.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
package org.scalajs.dom.experimental
22

33
import org.scalajs.dom.raw.{Navigator, WorkerNavigator}
4-
5-
import scala.scalajs.js
64
import scala.language.implicitConversions
5+
import scala.scalajs.js
76

87
/**
98
* The Beacon interface is used to schedule an asynchronous and non-blocking

src/main/scala/org/scalajs/dom/experimental/cachestorage/CacheStorage.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package org.scalajs.dom.experimental.cachestorage
22

3+
import org.scalajs.dom.experimental._
34
import scala.scalajs.js
45
import scala.scalajs.js.annotation._
5-
import org.scalajs.dom.experimental._
66

77
/**
88
* See [[https://slightlyoff.github.io/ServiceWorker/spec/service_worker_1/#cache ¶5.4 cache]]

src/main/scala/org/scalajs/dom/experimental/deviceorientation/DeviceOrientation.scala

-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package org.scalajs.dom.experimental.deviceorientation
22

33
import org.scalajs.dom
44
import org.scalajs.dom.raw.EventInit
5-
65
import scala.scalajs.js
76
import scala.scalajs.js.annotation._
87

src/main/scala/org/scalajs/dom/experimental/domparser/DOMParser.scala

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
package org.scalajs.dom.experimental.domparser
22

3+
import org.scalajs.dom.raw.Document
34
import scala.scalajs.js
45
import scala.scalajs.js.annotation._
5-
import scala.scalajs.js.|
6-
7-
import org.scalajs.dom.raw.{Document, HTMLDocument}
86

97
/**
108
* DOMParser can parse XML or HTML source stored in a string into a DOM Document.

src/main/scala/org/scalajs/dom/experimental/gamepad/Gamepad.scala

+2-3
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,10 @@
66

77
package org.scalajs.dom.experimental.gamepad
88

9-
import scala.scalajs.js
10-
import scala.scalajs.js.annotation._
11-
129
import org.scalajs.dom
1310
import org.scalajs.dom.raw.EventInit
11+
import scala.scalajs.js
12+
import scala.scalajs.js.annotation._
1413

1514
@js.native
1615
trait GamepadMappingType extends js.Any

src/main/scala/org/scalajs/dom/experimental/gamepad/package.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
package org.scalajs.dom.experimental
22

3-
import language.implicitConversions
4-
53
import org.scalajs.dom
4+
import scala.language.implicitConversions
65

76
/**
87
* Implements the Gamepad API.

src/main/scala/org/scalajs/dom/experimental/intl/Intl.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
package org.scalajs.dom.experimental.intl
88

99
import scala.scalajs.js
10-
import scala.scalajs.js.|
1110
import scala.scalajs.js.annotation._
11+
import scala.scalajs.js.|
1212

1313
/**
1414
* The Intl.Collator object is a constructor for collators, objects that enable language

src/main/scala/org/scalajs/dom/experimental/mediastream/MediaStream.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
*/
44
package org.scalajs.dom.experimental.mediastream
55

6+
import org.scalajs.dom.raw.{Event, EventInit, EventTarget, TimeRanges}
67
import scala.scalajs.js
7-
import scala.scalajs.js.|
88
import scala.scalajs.js.annotation._
9-
import org.scalajs.dom.raw.{Event, EventInit, EventTarget, TimeRanges}
9+
import scala.scalajs.js.|
1010

1111
/**
1212
* The MediaStream

src/main/scala/org/scalajs/dom/experimental/package.scala

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.scalajs.dom
22

33
import org.scalajs.dom.crypto.BufferSource
4-
54
import scala.scalajs.js
65
import scala.scalajs.js.|
76

src/main/scala/org/scalajs/dom/experimental/permissions/package.scala

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
package org.scalajs.dom.experimental
22

3-
import scala.language.implicitConversions
4-
53
import org.scalajs.dom
6-
4+
import scala.language.implicitConversions
75
import scala.scalajs.js
86

97
/**

src/main/scala/org/scalajs/dom/experimental/push/PushManager.scala

-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package org.scalajs.dom.experimental.push
22

33
import org.scalajs.dom.experimental.serviceworkers.ExtendableEvent
44
import org.scalajs.dom.raw.Blob
5-
65
import scala.scalajs.js
76
import scala.scalajs.js.typedarray.{ArrayBuffer, Uint8Array}
87

src/main/scala/org/scalajs/dom/experimental/push/package.scala

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
package org.scalajs.dom.experimental
22

3-
import scala.language.implicitConversions
4-
53
import org.scalajs.dom.experimental.serviceworkers.{
64
ServiceWorkerGlobalScope, ServiceWorkerRegistration
75
}
8-
6+
import scala.language.implicitConversions
97
import scala.scalajs.js
108

119
/**

src/main/scala/org/scalajs/dom/experimental/serviceworkers/ServiceWorkers.scala

+5-7
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,14 @@
11
package org.scalajs.dom.experimental.serviceworkers
22

3-
import scala.scalajs.js
4-
import scala.scalajs.js.annotation._
5-
import scala.scalajs.js.|
6-
73
import org.scalajs.dom.experimental.{
8-
Notification, NotificationOptions, Request, RequestInfo, Response, Sequence
4+
Notification, NotificationOptions, Request, Response, Sequence
95
}
10-
import org.scalajs.dom.experimental.cachestorage._
11-
import org.scalajs.dom.raw.{ErrorEvent, EventInit, WorkerGlobalScope}
6+
import org.scalajs.dom.raw.{EventInit, WorkerGlobalScope}
127
import org.scalajs.dom.webgl.RenderingContext
138
import org.scalajs.dom.{Event, EventTarget, MessageEvent, MessagePort}
9+
import scala.scalajs.js
10+
import scala.scalajs.js.annotation._
11+
import scala.scalajs.js.|
1412

1513
@js.native
1614
sealed trait FrameType extends js.Any

src/main/scala/org/scalajs/dom/experimental/sharedworkers/SharedWorker.scala

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
package org.scalajs.dom.experimental.sharedworkers
22

3-
import scala.scalajs.js
4-
import scala.scalajs.js.annotation._
5-
63
import org.scalajs.dom.raw.MessagePort
74
import org.scalajs.dom.webworkers
5+
import scala.scalajs.js
6+
import scala.scalajs.js.annotation._
87

98
/**
109
* The SharedWorker interface represents a specific kind of worker that can be

src/main/scala/org/scalajs/dom/experimental/sharedworkers/SharedWorkerGlobalScope.scala

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
package org.scalajs.dom.experimental.sharedworkers
22

33
import org.scalajs.dom.experimental.serviceworkers.ExtendableMessageEvent
4-
import org.scalajs.dom.raw.ApplicationCache
5-
import org.scalajs.dom.raw.WorkerGlobalScope
6-
4+
import org.scalajs.dom.raw.{ApplicationCache, WorkerGlobalScope}
75
import scala.scalajs.js
86
import scala.scalajs.js.annotation._
97

src/main/scala/org/scalajs/dom/experimental/storage/package.scala

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.scalajs.dom.experimental
22

33
import org.scalajs.dom
4-
54
import scala.language.implicitConversions
65
import scala.scalajs.js
76

src/main/scala/org/scalajs/dom/experimental/webgl/extensions/Extensions.scala

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.scalajs.dom.experimental.webgl.extensions
22

33
import org.scalajs.dom.raw.WebGLShader
4-
54
import scala.scalajs.js
65

76
/**

src/main/scala/org/scalajs/dom/experimental/webrtc/WebRTC.scala

+5-6
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,15 @@
33
*/
44
package org.scalajs.dom.experimental.webrtc
55

6-
import scala.scalajs.js
7-
import scala.scalajs.js.annotation._
8-
import scala.scalajs.js.typedarray.{ArrayBufferView, ArrayBuffer}
9-
import scala.scalajs.js.|
10-
116
import org.scalajs.dom.Blob
7+
import org.scalajs.dom.experimental.mediastream._
128
import org.scalajs.dom.raw.{
139
DOMException, Event, EventInit, EventTarget, MessageEvent
1410
}
15-
import org.scalajs.dom.experimental.mediastream._
11+
import scala.scalajs.js
12+
import scala.scalajs.js.annotation._
13+
import scala.scalajs.js.typedarray.{ArrayBuffer, ArrayBufferView}
14+
import scala.scalajs.js.|
1615

1716
@js.native
1817
trait RTCIdentityAssertion extends js.Object {

0 commit comments

Comments
 (0)