[ 
https://issues.apache.org/jira/browse/SPARK-23733?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yogesh Tewari updated SPARK-23733:
----------------------------------
    Description: 
Java source code link in Spark api scaladoc is broken.

The relative path expression "€\{FILE_PATH}.scala" in 
[https://github.com/apache/spark/blob/master/project/SparkBuild.scala] has 
".scala" hardcoded in the end. If I try to access the source link on 
[https://spark.apache.org/docs/1.6.3/api/scala/index.html#org.apache.spark.api.java.function.Function2],
 it tries to take me to 
[/Users/sameera/dev/spark/core/src/main/scala/org/apache/spark/Accumulable.scala"
 class="external-link" 
rel="nofollow">https://github.com/apache/spark/tree/v2.3.0{color:#ff0000}/Users/sameera/dev/spark{color}/core/src/main/scala/org/apache/spark/Accumulable.scala|https://github.com/apache/spark/tree/v2.3.0%3Cfont%20color=]

where "/Users/sameera/dev/spark" portion of the URL is coming from the 
developers macos home folder.

There seems to be no change in the code responsible for generating this path 
during the build in /project/SparkBuild.scala :

Line # 252:
{code:java}
scalacOptions in Compile ++= Seq(
s"-target:jvm-${scalacJVMVersion.value}",
"-sourcepath", (baseDirectory in ThisBuild).value.getAbsolutePath // Required 
for relative source links in scaladoc
),
{code}
Line # 726
{code:java}
// Use GitHub repository for Scaladoc source links
unidocSourceBase := s"https://github.com/apache/spark/tree/v${version.value}";,

scalacOptions in (ScalaUnidoc, unidoc) ++= Seq(
"-groups", // Group similar methods together based on the @group annotation.
"-skip-packages", "org.apache.hadoop"
) ++ (
// Add links to sources when generating Scaladoc for a non-snapshot release
if (!isSnapshot.value) {
Opts.doc.sourceUrl(unidocSourceBase.value + "€{FILE_PATH}.scala")
} else {
Seq()
}
){code}
 

It seems more like a developers dev environment issue.

I was successfully able to reproduce this in my dev environment. Environment 
details attached. 

 

  was:
Scala source code link in Spark api scaladoc is broken.

Turns out instead of the relative path to the scala files the 
"€\{FILE_PATH}.scala" expression in 
[https://github.com/apache/spark/blob/master/project/SparkBuild.scala] is 
generating the absolute path from the developers computer. In this case, if I 
try to access the source link on 
[https://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.Accumulable],
 it tries to take me to 
[/Users/sameera/dev/spark/core/src/main/scala/org/apache/spark/Accumulable.scala"
 class="external-link" 
rel="nofollow">https://github.com/apache/spark/tree/v2.3.0{color:#ff0000}/Users/sameera/dev/spark{color}/core/src/main/scala/org/apache/spark/Accumulable.scala|https://github.com/apache/spark/tree/v2.3.0%3Cfont%20color=]

where "/Users/sameera/dev/spark" portion of the URL is coming from the 
developers macos home folder.

There seems to be no change in the code responsible for generating this path 
during the build in /project/SparkBuild.scala :

Line # 252:
{code:java}
scalacOptions in Compile ++= Seq(
s"-target:jvm-${scalacJVMVersion.value}",
"-sourcepath", (baseDirectory in ThisBuild).value.getAbsolutePath // Required 
for relative source links in scaladoc
),
{code}
Line # 726
{code:java}
// Use GitHub repository for Scaladoc source links
unidocSourceBase := s"https://github.com/apache/spark/tree/v${version.value}";,

scalacOptions in (ScalaUnidoc, unidoc) ++= Seq(
"-groups", // Group similar methods together based on the @group annotation.
"-skip-packages", "org.apache.hadoop"
) ++ (
// Add links to sources when generating Scaladoc for a non-snapshot release
if (!isSnapshot.value) {
Opts.doc.sourceUrl(unidocSourceBase.value + "€{FILE_PATH}.scala")
} else {
Seq()
}
){code}
 

It seems more like a developers dev environment issue.

I was successfully able to reproduce this in my dev environment. Environment 
details attached. 

 


> Broken link to java source code in Spark Scala api Scaladoc
> -----------------------------------------------------------
>
>                 Key: SPARK-23733
>                 URL: https://issues.apache.org/jira/browse/SPARK-23733
>             Project: Spark
>          Issue Type: Bug
>          Components: Build, Documentation, Project Infra
>    Affects Versions: 1.6.3, 2.0.2, 2.1.2, 2.2.0
>         Environment: {code:java}
> ~/spark/docs$ cat /etc/*release*
> DISTRIB_ID=Ubuntu
> DISTRIB_RELEASE=16.04
> DISTRIB_CODENAME=xenial
> DISTRIB_DESCRIPTION="Ubuntu 16.04.4 LTS"
> NAME="Ubuntu"
> VERSION="16.04.4 LTS (Xenial Xerus)"
> ID=ubuntu
> ID_LIKE=debian
> PRETTY_NAME="Ubuntu 16.04.4 LTS"
> VERSION_ID="16.04"
> HOME_URL="http://www.ubuntu.com/";
> SUPPORT_URL="http://help.ubuntu.com/";
> BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/";
> VERSION_CODENAME=xenial
> UBUNTU_CODENAME=xenial
> {code}
> Using spark packaged sbt.
> Other versions:
> {code:java}
> ~/spark/docs$ ruby -v 
> ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu] 
> ~/spark/docs$ gem -v 
> 2.5.2.1 
> ~/spark/docs$ jekyll -v 
> jekyll 3.7.3  
> ~/spark/docs$ java -version 
> java version "1.8.0_112" Java(TM) SE Runtime Environment (build 
> 1.8.0_112-b15) Java HotSpot(TM) 64-Bit Server VM (build 25.112-b15, mixed 
> mode)
> {code}
>            Reporter: Yogesh Tewari
>            Priority: Trivial
>              Labels: build, documentation, scaladocs
>
> Java source code link in Spark api scaladoc is broken.
> The relative path expression "€\{FILE_PATH}.scala" in 
> [https://github.com/apache/spark/blob/master/project/SparkBuild.scala] has 
> ".scala" hardcoded in the end. If I try to access the source link on 
> [https://spark.apache.org/docs/1.6.3/api/scala/index.html#org.apache.spark.api.java.function.Function2],
>  it tries to take me to 
> [/Users/sameera/dev/spark/core/src/main/scala/org/apache/spark/Accumulable.scala"
>  class="external-link" 
> rel="nofollow">https://github.com/apache/spark/tree/v2.3.0{color:#ff0000}/Users/sameera/dev/spark{color}/core/src/main/scala/org/apache/spark/Accumulable.scala|https://github.com/apache/spark/tree/v2.3.0%3Cfont%20color=]
> where "/Users/sameera/dev/spark" portion of the URL is coming from the 
> developers macos home folder.
> There seems to be no change in the code responsible for generating this path 
> during the build in /project/SparkBuild.scala :
> Line # 252:
> {code:java}
> scalacOptions in Compile ++= Seq(
> s"-target:jvm-${scalacJVMVersion.value}",
> "-sourcepath", (baseDirectory in ThisBuild).value.getAbsolutePath // Required 
> for relative source links in scaladoc
> ),
> {code}
> Line # 726
> {code:java}
> // Use GitHub repository for Scaladoc source links
> unidocSourceBase := s"https://github.com/apache/spark/tree/v${version.value}";,
> scalacOptions in (ScalaUnidoc, unidoc) ++= Seq(
> "-groups", // Group similar methods together based on the @group annotation.
> "-skip-packages", "org.apache.hadoop"
> ) ++ (
> // Add links to sources when generating Scaladoc for a non-snapshot release
> if (!isSnapshot.value) {
> Opts.doc.sourceUrl(unidocSourceBase.value + "€{FILE_PATH}.scala")
> } else {
> Seq()
> }
> ){code}
>  
> It seems more like a developers dev environment issue.
> I was successfully able to reproduce this in my dev environment. Environment 
> details attached. 
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to