Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

URISyntaxException during publishLocal scaladoc phase #11955

Closed
philwalk opened this issue Apr 24, 2020 · 12 comments · Fixed by scala/scala#8922
Closed

URISyntaxException during publishLocal scaladoc phase #11955

philwalk opened this issue Apr 24, 2020 · 12 comments · Fixed by scala/scala#8922

Comments

@philwalk
Copy link

philwalk commented Apr 24, 2020

reproduction steps

sbt:root> localPublish

NOTE: problem depends on jdk-11.0.6 ;
when I run sbt with jdk-8u251, the problem goes away.

sbt version seems not to matter (reproduced problem with 1.3.8 and 1.3.10).
scala build version: 2.13.2


## problem


It seems to be related to Windows builds only, since the bad URI has a "C:" (colon not legal deep within the uri).

I assume the stackdump is sufficient to document the problem.

Here's the section of code that seems to trigger the Exception: https://github.com/scala/scala/blob/v2.13.2/src/scaladoc/scala/tools/nsc/doc/html/HtmlPage.scala#L32

```scala
144    case LinkToExternalTpl(name, baseUrlString, dtpl: TemplateEntity) =>
145      val baseUrl = new URI(Page.makeUrl(baseUrlString, Page.templateToPath(dtpl)))

Here's the full stackdump:

sbt:root> last vastblue/Compile/doc
[info] Main Scala API documentation to C:\opt\ue\vastblue\target\scala-2.13\api...
[debug] Getting org.scala-sbt:compiler-bridge_2.13:1.3.5:compile for Scala 2.13.2
[debug] Calling Scaladoc with arguments:
[debug]         -target:jvm-1.8
[debug]         -encoding
[debug]         UTF-8
[debug]         -Yrangepos
[debug]         -Yresolve-term-conflict:object
[debug]         -feature
[debug]         -unchecked
[debug]         -deprecation
[debug]         -Yrangepos
[debug]         -Yresolve-term-conflict:object
[debug]         -deprecation
[debug]         -feature
[debug]         -d
[debug]         C:\opt\ue\vastblue\target\scala-2.13\api
[debug]         -bootclasspath
[debug]         c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scala-lang\scala-library\2.13.2\scala-library-2.13.2.jar
[debug]         -classpath
[debug]         c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\httpcomponents\httpclient\4.5.12\httpclient-4.5.12.jar;c:\Users\philwalk\AppData\Local\Coursie
r\cache\v1\https\repo1.maven.org\maven2\commons-io\commons-io\2.6\commons-io-2.6.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scala-lang\modules\scala-collect
ion-compat_2.13\2.1.6\scala-collection-compat_2.13-2.1.6.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\jfree\jcommon\1.0.24\jcommon-1.0.24.jar;c:\Users\philwal
k\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\jfree\jfreechart\1.5.0\jfreechart-1.5.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalik
ejdbc\scalikejdbc_2.13\3.4.1\scalikejdbc_2.13-3.4.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalikejdbc\scalikejdbc-core_2.13\3.4.1\scalikejdbc-core_2.13
-3.4.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalikejdbc\scalikejdbc-interpolation_2.13\3.4.1\scalikejdbc-interpolation_2.13-3.4.1.jar;c:\Users\philwal
k\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\github\pathikrit\better-files_2.13\3.8.0\better-files_2.13-3.8.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.ma
ven.org\maven2\org\scalameta\scalameta_2.13\4.3.9\scalameta_2.13-4.3.9.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\lucene\lucene-analyzers-common\8.5.
1\lucene-analyzers-common-8.5.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalanlp\breeze_2.13\1.0\breeze_2.13-1.0.jar;c:\Users\philwalk\AppData\Local\Cour
sier\cache\v1\https\repo1.maven.org\maven2\eu\cdevreeze\yaidom\yaidom_2.13\1.10.3\yaidom_2.13-1.10.3.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\jp\ne\opt\chrono
scala_2.13\0.3.2\chronoscala_2.13-0.3.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\oauth\signpost\signpost-commonshttp4\1.2.1.2\signpost-commonshttp4-1.2.1.2.ja
r;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\oauth\signpost\signpost-jetty6\1.2.1.2\signpost-jetty6-1.2.1.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\ht
tps\repo1.maven.org\maven2\org\apache\commons\commons-text\1.8\commons-text-1.8.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\poi\poi\4.1.2\poi-4.1.2.ja
r;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\poi\poi-ooxml\4.1.2\poi-ooxml-4.1.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.
org\maven2\org\jsoup\jsoup\1.13.1\jsoup-1.13.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\mortbay\jetty\jetty-client\6.1.26\jetty-client-6.1.26.jar;c:\Users
\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\mortbay\jetty\jetty\6.1.26\jetty-6.1.26.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\or
g\mortbay\jetty\jetty-util\6.1.26\jetty-util-6.1.26.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scribe\scribe\1.3.7\scribe-1.3.7.jar;c:\Users\philwalk\AppDat
a\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\simpleflatmapper\sfm-csv\8.2.2\sfm-csv-8.2.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\lihaoyi\u
pickle_2.13\1.1.0\upickle_2.13-1.1.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\seleniumhq\selenium\selenium-firefox-driver\3.141.59\selenium-firefox-driver
-3.141.59.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\net\sourceforge\htmlcleaner\htmlcleaner\2.23\htmlcleaner-2.23.jar;c:\Users\philwalk\AppData\Local\Coursier\
cache\v1\https\repo1.maven.org\maven2\com\univocity\univocity-parsers\2.8.4\univocity-parsers-2.8.4.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\lihaoyi\upick
le-core_2.13\1.1.0\upickle-core_2.13-1.1.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\lihaoyi\upickle-implicits_2.13\1.1.0\upickle-implicits_2.13-1.1.0.jar;
c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\oauth\signpost\signpost-core\1.2.1.2\signpost-core-1.2.1.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\re
po1.maven.org\maven2\org\apache\commons\commons-dbcp2\2.7.0\commons-dbcp2-2.7.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\httpcomponents\httpcore\4.
4.13\httpcore-4.4.13.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scala-lang\modules\scala-xml_2.13\1.3.0\scala-xml_2.13-1.3.0.jar;c:\Users\philwalk\AppData\L
ocal\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalameta\trees_2.13\4.3.9\trees_2.13-4.3.9.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\seleniumhq\se
lenium\selenium-api\3.141.59\selenium-api-3.141.59.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\seleniumhq\selenium\selenium-remote-driver\3.141.59\selenium-r
emote-driver-3.141.59.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;c:\Users\philwalk\AppData\Local\Cou
rsier\cache\v1\https\repo1.maven.org\maven2\commons-codec\commons-codec\1.13\commons-codec-1.13.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\slf4j\slf4j-api\1
.7.30\slf4j-api-1.7.30.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scala-lang\modules\scala-parser-combinators_2.13\1.1.2\scala-parser-combinators_2.13-1.1.2
.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalikejdbc\scalikejdbc-interpolation-macro_2.13\3.4.1\scalikejdbc-interpolation-macro_2.13-3.4.1.jar;c:\Users\p
hilwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalameta\parsers_2.13\4.3.9\parsers_2.13-4.3.9.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\mav
en2\org\scala-lang\scalap\2.13.2\scalap-2.13.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\lucene\lucene-core\8.5.1\lucene-core-8.5.1.jar;c:\Users\phi
lwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalanlp\breeze-macros_2.13\1.0\breeze-macros_2.13-1.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.or
g\maven2\com\github\fommil\netlib\core\1.1.2\core-1.1.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\net\sourceforge\f2j\arpack_combined_all\0.1\arpack_combined_a
ll-0.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\net\sf\opencsv\opencsv\2.3\opencsv-2.3.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven
.org\maven2\com\github\wendykierp\JTransforms\3.1\JTransforms-3.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\commons\commons-math3\3.6.1\commons-math
3-3.6.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\chuusai\shapeless_2.13\2.3.3\shapeless_2.13-2.3.3.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\h
ttps\repo1.maven.org\maven2\org\typelevel\spire_2.13\0.17.0-M1\spire_2.13-0.17.0-M1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\net\sf\saxon\Saxon-HE\9.9.1-5\Sax
on-HE-9.9.1-5.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\github\ben-manes\caffeine\caffeine\2.8.0\caffeine-2.8.0.jar;c:\Users\philwalk\AppData\Local\Coursie
r\cache\v1\https\repo1.maven.org\maven2\com\google\code\findbugs\jsr305\3.0.2\jsr305-3.0.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\commons\commons
-lang3\3.9\commons-lang3-3.9.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\commons\commons-collections4\4.4\commons-collections4-4.4.jar;c:\Users\philwa
lk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\zaxxer\SparseBitSet\1.2\SparseBitSet-1.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apac
he\poi\poi-ooxml-schemas\4.1.2\poi-ooxml-schemas-4.1.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\commons\commons-compress\1.19\commons-compress-1.19
.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\github\virtuald\curvesapi\1.06\curvesapi-1.06.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.
maven.org\maven2\org\mortbay\jetty\jetty-sslengine\6.1.26\jetty-sslengine-6.1.26.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\mortbay\jetty\jetty-util5\6.1.26
\jetty-util5-6.1.26.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\mortbay\jetty\servlet-api\2.5-20081211\servlet-api-2.5-20081211.jar;c:\Users\philwalk\AppData
\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\simpleflatmapper\lightning-csv\8.2.2\lightning-csv-8.2.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\or
g\simpleflatmapper\sfm-map\8.2.2\sfm-map-8.2.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\simpleflatmapper\sfm-tuples\8.2.2\sfm-tuples-8.2.2.jar;c:\Users\ph
ilwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\lihaoyi\ujson_2.13\1.1.0\ujson_2.13-1.1.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com
\lihaoyi\upack_2.13\1.1.0\upack_2.13-1.1.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\net\bytebuddy\byte-buddy\1.8.15\byte-buddy-1.8.15.jar;c:\Users\philwalk\Ap
pData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\commons\commons-exec\1.3\commons-exec-1.3.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\g
oogle\guava\guava\25.0-jre\guava-25.0-jre.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\squareup\okhttp3\okhttp\3.11.0\okhttp-3.11.0.jar;c:\Users\philwalk\AppD
ata\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\squareup\okio\okio\1.14.0\okio-1.14.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\jdom\jdom2\2.0
.5\jdom2-2.0.5.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\lihaoyi\geny_2.13\0.6.0\geny_2.13-0.6.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\http
s\repo1.maven.org\maven2\org\apache\commons\commons-pool2\2.7.0\commons-pool2-2.7.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalameta\common_2.13\4.3.9\c
ommon_2.13-4.3.9.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\thesamet\scalapb\scalapb-runtime_2.13\0.9.7\scalapb-runtime_2.13-0.9.7.jar;c:\Users\philwalk\App
Data\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scalameta\fastparse_2.13\1.0.1\fastparse_2.13-1.0.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org
\scala-lang\scala-reflect\2.13.2\scala-reflect-2.13.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\scala-lang\scala-compiler\2.13.2\scala-compiler-2.13.2.jar;
c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\pl\edu\icm\JLargeArrays\1.5\JLargeArrays-1.5.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\
maven2\org\typelevel\spire-macros_2.13\0.17.0-M1\spire-macros_2.13-0.17.0-M1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\typelevel\spire-platform_2.13\0.17.0
-M1\spire-platform_2.13-0.17.0-M1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\typelevel\spire-util_2.13\0.17.0-M1\spire-util_2.13-0.17.0-M1.jar;c:\Users\phil
walk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\typelevel\machinist_2.13\0.6.8\machinist_2.13-0.6.8.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\ma
ven2\org\typelevel\algebra_2.13\2.0.0-M2\algebra_2.13-2.0.0-M2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\checkerframework\checker-qual\2.10.0\checker-qual-
2.10.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\google\errorprone\error_prone_annotations\2.3.3\error_prone_annotations-2.3.3.jar;c:\Users\philwalk\AppDat
a\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\apache\xmlbeans\xmlbeans\3.1.0\xmlbeans-3.1.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\simplefl
atmapper\ow2-asm\6.2\ow2-asm-6.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\simpleflatmapper\sfm-util\8.2.2\sfm-util-8.2.2.jar;c:\Users\philwalk\AppData\Loc
al\Coursier\cache\v1\https\repo1.maven.org\maven2\org\simpleflatmapper\sfm-reflect\8.2.2\sfm-reflect-8.2.2.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\checke
rframework\checker-compat-qual\2.0.0\checker-compat-qual-2.0.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\google\j2objc\j2objc-annotations\1.1\j2objc-annota
tions-1.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\codehaus\mojo\animal-sniffer-annotations\1.14\animal-sniffer-annotations-1.14.jar;c:\Users\philwalk\App
Data\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\lihaoyi\sourcecode_2.13\0.2.0\sourcecode_2.13-0.2.0.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com
\thesamet\scalapb\lenses_2.13\0.9.7\lenses_2.13-0.9.7.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\google\protobuf\protobuf-java\3.8.0\protobuf-java-3.8.0.jar
;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\com\lihaoyi\fastparse_2.13\2.1.3\fastparse_2.13-2.1.3.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.
maven.org\maven2\org\scalameta\fastparse-utils_2.13\1.0.1\fastparse-utils_2.13-1.0.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\jline\jline\3.14.1\jline-3.1
4.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\net\java\dev\jna\jna\5.3.1\jna-5.3.1.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\
maven2\org\typelevel\cats-kernel_2.13\2.0.0-M4\cats-kernel_2.13-2.0.0-M4.jar;c:\Users\philwalk\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\org\simpleflatmapper\sfm-converter\8.2.2\sfm
-converter-8.2.2.jar
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\CsvAuto.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\Cyg.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\DelimitedFile.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\DynamicMap.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\ExecWin.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\FastCsvParser.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\Graal.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\Imports.scala
[...]
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\util\StringExtras.scala
[debug]         C:\opt\ue\vastblue\src\main\scala\vastblue\util\UnivocityCsv.scala
[debug]         C:\opt\ue\vastblue\target\scala-2.13\src_managed\main\sbt-buildinfo\BuildInfo.scala
[error] java.net.URISyntaxException: Illegal character in path at index 53: https://docs.oracle.com/en/java/javase/11/docs/api/C:\opt\jdk\jmods\java.base/java/io/Serializable.html
[error]         at java.base/java.net.URI$Parser.fail(URI.java:2915)
[error]         at java.base/java.net.URI$Parser.checkChars(URI.java:3086)
[error]         at java.base/java.net.URI$Parser.parseHierarchical(URI.java:3168)
[error]         at java.base/java.net.URI$Parser.parse(URI.java:3116)
[error]         at java.base/java.net.URI.<init>(URI.java:600)
[error]         at scala.tools.nsc.doc.html.HtmlPage.linkToHtml(HtmlPage.scala:145)
[error]         at scala.tools.nsc.doc.html.HtmlPage.toLinksIn$1(HtmlPage.scala:202)
[error]         at scala.tools.nsc.doc.html.HtmlPage.toLinksOut$1(HtmlPage.scala:194)
[error]         at scala.tools.nsc.doc.html.HtmlPage.typeToHtml(HtmlPage.scala:205)
[error]         at scala.tools.nsc.doc.html.HtmlPage.typeToHtml(HtmlPage.scala:182)
[error]         at scala.tools.nsc.doc.html.HtmlPage.typeToHtml(HtmlPage.scala:183)
[error]         at scala.tools.nsc.doc.html.HtmlPage.typeToHtml(HtmlPage.scala:183)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.inside$1(Entity.scala:897)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.signature(Entity.scala:906)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.signature$(Entity.scala:799)
[error]         at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.signature(Entity.scala:1033)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.memberToHtml(Entity.scala:378)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.memberToHtml$(Entity.scala:357)
[error]         at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.memberToHtml(Entity.scala:1033)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.$anonfun$memsDiv$1(Entity.scala:355)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.memsDiv(Entity.scala:355)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.memsDiv$(Entity.scala:353)
[error]         at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.memsDiv(Entity.scala:1033)
[error]         at scala.tools.nsc.doc.html.page.EntityPage.$init$(Entity.scala:309)
[error]         at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.<init>(Entity.scala:1033)
[error]         at scala.tools.nsc.doc.html.HtmlFactory.writeTemplates(HtmlFactory.scala:167)
[error]         at scala.tools.nsc.doc.html.HtmlFactory.generate(HtmlFactory.scala:155)
[error]         at scala.tools.nsc.doc.html.Doclet.generateImpl(Doclet.scala:30)
[error]         at scala.tools.nsc.doc.doclet.Generator.generate(Generator.scala:35)
[error]         at scala.tools.nsc.doc.DocFactory.generate$1(DocFactory.scala:139)
[error]         at scala.tools.nsc.doc.DocFactory.document(DocFactory.scala:142)
[error]         at xsbt.Runner.run(ScaladocInterface.scala:34)
[error]         at xsbt.ScaladocInterface.run(ScaladocInterface.scala:19)
[error]         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[error]         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[error]         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[error]         at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[error]         at sbt.internal.inc.AnalyzingCompiler.call(AnalyzingCompiler.scala:248)
[error]         at sbt.internal.inc.AnalyzingCompiler.doc(AnalyzingCompiler.scala:177)
[error]         at sbt.internal.inc.AnalyzingCompiler.doc(AnalyzingCompiler.scala:158)
[error]         at sbt.Doc$.$anonfun$scaladoc$1(Doc.scala:39)
[error]         at sbt.Doc$.$anonfun$scaladoc$1$adapted(Doc.scala:39)
[error]         at sbt.RawCompileLike$.$anonfun$prepare$1(RawCompileLike.scala:83)
[error]         at sbt.RawCompileLike$.$anonfun$prepare$1$adapted(RawCompileLike.scala:76)
[error]         at sbt.RawCompileLike$.$anonfun$cached$3(RawCompileLike.scala:67)
[error]         at sbt.RawCompileLike$.$anonfun$cached$3$adapted(RawCompileLike.scala:65)
[error]         at sbt.util.Tracked$.$anonfun$inputChanged$1(Tracked.scala:150)
[error]         at sbt.RawCompileLike$.$anonfun$cached$1(RawCompileLike.scala:72)
[error]         at sbt.RawCompileLike$.$anonfun$cached$1$adapted(RawCompileLike.scala:55)
[error]         at sbt.Defaults$.$anonfun$docTaskSettings$3(Defaults.scala:1635)
[error]         at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
[error]         at sbt.std.Transform$$anon$4.work(Transform.scala:67)
[error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:281)
[error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:19)
[error]         at sbt.Execute.work(Execute.scala:290)
[error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:281)
[error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
[error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[error]         at java.base/java.lang.Thread.run(Thread.java:834)
[error] (vastblue / Compile / doc) java.net.URISyntaxException: Illegal character in path at index 53: https://docs.oracle.com/en/java/javase/11/docs/api/C:\opt\jdk\jmods\java.base/java/io/Serializabl
e.html

expectation

@eed3si9n
Copy link
Member

The main exception seems to be:

java.net.URISyntaxException: Illegal character in path at index 53: https://docs.oracle.com/en/java/javase/11/docs/api/C:\opt\jdk\jmods\java.base/java/io/Serializable.html

Do you have Scaladoc that links to java.io.Serializable?

@eed3si9n
Copy link
Member

Maybe this is a variant of #11839

@philwalk
Copy link
Author

philwalk commented Apr 24, 2020

Yes, this seems quite similar to #11839 (although I didn't see a dependency on Windows builds)

Here's my scaladoc, which is not a symlink:

/opt/scala-2.12.11/bin/scaladoc: Bourne-Again shell script, ASCII text executable

I updated the description to clarify that the error depends on jdk-11.

@philwalk
Copy link
Author

philwalk commented Apr 24, 2020

The central issue, AFAIKT, seems to be that the URI is not valid, and it seems likely that the problem would only occur with a Windows build (no colons in the path, otherwise). I'll try to verify that the problem goes away in a linux build.

@philwalk
Copy link
Author

Problem goes away unless build server is running Windows. I had a successful build under WSL (same Windows server, but running Ubuntu).

@eed3si9n
Copy link
Member

Do you have Scaladoc that links to java.io.Serializable?

I meant something like:

/**
 * [[java.io.Serializable]]
 */
class A

I'm guessing that if someone were to reproduce this on their (Windows) machine the above would be needed.

@ashawley
Copy link
Member

There is not a URISyntaxException in #11839. It has to do with JDK11, but it has to do with using apiMappings and the Java modules (JEP 261). Scaladoc just produces a warning such as "Could not find any member to link for "java.io.Serializable" and fails to produce the cross-reference hyperlink.

@ashawley
Copy link
Member

ashawley commented Apr 24, 2020

There is a chance that this was broken with the changes in scala/scala#8663 though. It looks like this still needs to be reproduced, though.

@ashawley
Copy link
Member

ashawley commented Apr 24, 2020

I've reproduced it on Appveyor in this repo:

https://github.com/ashawley/scala-issue-11955

I know there's an Appveyor build for Scala, but maybe there's no build on JDK11 on Windows?

@martijnhoekstra
Copy link

what's the minimal reproduction for this?

@steven-barnes
Copy link

I believe this will fix the problem, but I have no way to test on Windows.

scala/scala#8922

@SethTisue
Copy link
Member

I put some testing instructions on the PR in the hopes someone will volunteer to try it.

pm47 added a commit to ACINQ/eclair that referenced this issue Apr 27, 2020
Latest scala version has a bug [1] that breaks build on windows.

[1] scala/bug#11955
pm47 added a commit to ACINQ/eclair that referenced this issue Apr 27, 2020
Latest scala version has a bug [1] that breaks build on windows.

[1] scala/bug#11955
@SethTisue SethTisue added this to the 2.13.3 milestone Apr 29, 2020
jpsacha added a commit to scalafx/scalafx-extras that referenced this issue May 1, 2020
Keep Scala at 2.13.1 due to scala/bug#11955
pranav-patil referenced this issue in pranav-patil/play-services Jun 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants