You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Reynold Xin (JIRA)" <ji...@apache.org> on 2015/12/16 08:50:46 UTC

[jira] [Closed] (SPARK-7695) Investigate use of checkerframework.org annotations processor / static analysis library

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

Reynold Xin closed SPARK-7695.
------------------------------
    Resolution: Later

> Investigate use of checkerframework.org annotations processor / static analysis library
> ---------------------------------------------------------------------------------------
>
>                 Key: SPARK-7695
>                 URL: https://issues.apache.org/jira/browse/SPARK-7695
>             Project: Spark
>          Issue Type: New Feature
>          Components: Build
>            Reporter: Josh Rosen
>
> For Project Tungsten, I'd like to investigate the use of the University of Washington's _Checker Framework_, a set of annotations and a compiler which enrich Java's type system to enable a bunch of cool compile-time static analysis features. For more details, see http://types.cs.washington.edu/checker-framework/
> I'd like to investigate using this in Spark.  It looks like the annotations themselves are published to Maven central (under the org.cherckerframework namespace) and are MIT-licensed.  The annotations processor / compiler is GPL licensed, but that's fine: we'd only use the compiler during development, not for final production builds.  The compiler isn't distributed via Maven and needs to be manually installed, so I don't think we can include this in the build automatically.  Instead, I think that we can set up a new Maven profile which, if enabled, compiles with a Checker compiler that's loaded from a user-specified {{CHECKER_HOME}}.
> I'd really like to play around with this but don't have a bunch of time right now; I'd be happy to collaborate with / support anyone who wants to play around with this, though.  I'd be especially interested in using their unit-checking annotations to implement Tungsten-specific type checking for things like page offsets, relative vs. absolute addresses, word-alignment, etc: http://types.cs.washington.edu/checker-framework/current/checker-framework-manual.html#units-checker
> I'm not sure if this is blocked on upgrading to Java 7; it would be great if someone could research this and report back.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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