silencer - Scala compiler plugin for annotation-based warning suppression

  •        10

Scala has no local warning suppression (see e.g. scala/bug/issues/1781 for discussion). This plugin aims to change the situation. The direct motivation for this plugin is to be able to turn on -Xfatal-warnings option in Scala compiler and enforce zero-warning policy but still be able to consciously silent out warnings which would otherwise be a pointless noise. Silencer currently works with Scala 2.11.4+, 2.12.0+ and 2.13.0-M4+. Also note that since both silencer-plugin and silencer-lib are compile time only dependencies, Silencer can also be used in ScalaJS and Scala Native without having to be cross compiled for it.

https://github.com/ghik/silencer

Tags
Implementation
License
Platform

   




Related Projects

linter - Static Analysis Compiler Plugin for Scala

  •    Scala

Linter is a Scala static analysis compiler plugin which adds compile-time checks for various possible bugs, inefficiencies, and style problems. Please help support the development of Linter.

scala-clippy - Good advice for Scala compiler errors

  •    Scala

Read the detailed documentation. For examples on how to write tests for advice to ensure it does not go out of date see CompileTests.scala. If you want to write your own tests with compilation using mkToolbox, remember to add a -P:clippy:testmode=true compiler option. It ensures that a correct reporter replacement mechanism is used, which needs to be different specifically for tests. See CompileTests.scala for reference.

scalac-scapegoat-plugin - Scala compiler plugin for static code analysis

  •    Scala

Scapegoat is developed as a scala compiler plugin, which can then be used inside your build tool.Latest Release: 1.0.0See: [sbt-scapegoat](https://github.com/sksamuel/sbt-scapegoat) for SBT integration.

reasonable-scala - An experimental Scala compiler focused on compilation speed

  •    

Reasonable Scala compiler (rsc) is an experimental Scala compiler focused on compilation speed. This project is developed by Eugene Burmako and his team at Twitter.rsc is not a fork, but a clean-room reimplementation of a Scala compiler. We believe that a performance-oriented rewrite will provide a unique perspective on compilation costs introduced by various Scala features and idioms - something that is currently very hard to quantify in existing compilers.

rsc - Experimental Scala compiler focused on compilation speed

  •    Scala

Reasonable Scala compiler (also known as Rsc) is an experimental Scala compiler focused on compilation speed. This project is developed by Eugene Burmako and his team at Twitter. Rsc is not a fork, but a reimplementation of the Scala compiler. We believe that a performance-oriented rewrite will provide a unique perspective on compilation costs introduced by various Scala features and idioms - something that is currently very hard to quantify in existing compilers.


scala-js - Scala.js, the Scala to JavaScript compiler

  •    Scala

This is the repository for Scala.js, the Scala to JavaScript compiler. Scala.js is distributed under the Scala License.

ScalaPB - Protocol buffer compiler for Scala.

  •    Scala

ScalaPB is a protocol buffer compiler (protoc) plugin for Scala. It will generate Scala case classes, parsers and serializers for your protocol buffers. Each top-level message and enum is written to a separate Scala file. This results in a significant improvement in incremental compilations.

clazy - Qt oriented code checker based on clang framework. Krazy's little brother.

  •    C++

WARNING: master is the development branch. Please use the v1.3 tag. clazy is a compiler plugin which allows clang to understand Qt semantics. You get more than 50 Qt related compiler warnings, ranging from unneeded memory allocations to misusage of API, including fix-its for automatic refactoring.

splain - better implicit errors for scala

  •    Scala

This plugin removes some of the redundancy of the compiler output and prints additional info for implicit resolution errors. value can either be true or false. If omitted, the default is true for both value and parameter.

webpack-closure-compiler - Google Closure Compiler plugin for Webpack

  •    Javascript

Closure Compiler is the most advanced JavaScript optimization tool. It generates smallest bundle and emits efficient JavaScript code by doing whole program analysis and optimization, removing closures and inlining function calls, as well as tree-shaking for AMD, CommonJS and ES2015 modules. While there's JavaScript version of Closure Compiler, the original compiler is written in Java and thus Java version is more complete and performs better in terms of JavaScript code optimizations and compilation speed. If you want to use Java-based compiler, make sure you have installed Java SDK.

ScalaBuff - the scala protocol buffers (protobuf) compiler

  •    Scala

ScalaBuff is a Scala Protocol Buffers (protobuf) compiler. It takes .proto files and outputs valid Scala classes that can be used by your code to receive or send protobuf messages. Both the ScalaBuff generator and the generated Scala classes depend on Google's Java runtime for Protocol Buffers, which is provided with ScalaBuff.

dotty - Research compiler that will become Scala 3

  •    Scala

To try it in your project see also the Getting Started User Guide. Dotty uses the Scala Code of Conduct for all communication and discussion. This includes both GitHub, Gitter chat and other more direct lines of communication such as email.

policy - a fork of the scala compiler

  •    Scala

a fork of the scala compiler

deadsimple-less-watch-compiler - A nodejs script that allows you to watch a folder for changes and compile the less css files into another folder

  •    Javascript

A command that watches folders(and subfolders) for file changes and automatically compile the less css files into css. This is a file system watcher and compiler. It also keep track of a dependency tree and recompiles the parent if an imported (child) LESS file is changed. Install LESS and make sure the lessc binary is accessible to the script. Installing LESS with the -g(global) flag will make the binary accessible to your system.

cuttle - User Interface for the ClojureScript Compiler

  •    Javascript

Cuttle is a standalone application that aims to be the simplest way to use ClojureScript. It provides a user-friendly interface, allowing you to build projects by clicking a button, and to see meaningful warnings and errors at a glance. In a way, it provides the "builder" parts of an IDE without making you leave your favorite editor. Under the hood, Cuttle is not hiding a lot of magic from you. It uses standard ClojureScript workflow tools to perform its operations. It uses Leiningen with the lein-cljsbuild plugin listed in your project.clj, and the mies template for creating new projects. Thus, it should produce the same expected behavior as these standard tools.

CoffeeScript Compiler for Windows Notepad++ Plugin

  •    

CoffeeScript Compiler for Windows Notepad++ Plugin is a simple plugin to send the current file to the CoffeeScript compiler for windows.

rtags - A c/c++ client/server indexer for c/c++/objc[++] with integration for Emacs based on clang.

  •    C++

RTags is a client/server application that indexes C/C++ code and keeps a persistent file-based database of references, declarations, definitions, symbolnames etc. There’s also limited support for ObjC/ObjC++. It allows you to find symbols by name (including nested class and namespace scope). Most importantly we give you proper follow-symbol and find-references support. We also have neat little things like rename-symbol, integration with clang’s “fixits” (http://clang.llvm.org/diagnostics.html). We also integrate with flymake using clang’s vastly superior errors and warnings. Since RTags constantly will reindex “dirty” files you get live updates of compiler errors and warnings. Since we already know how to compile your sources we have a way to quickly bring up the preprocessed output of the current source file in a buffer. While existing taggers like gnu global, cscope, etags, ctags etc do a decent job for C they often fall a little bit short for C++. With its incredible lexical complexity, parsing C++ is an incredibly hard task and we make no bones about the fact that the only reason we are able to improve on the current tools is because of clang (http://clang.llvm.org/). RTags is named RTags in recognition of Roberto Raggi on whose C++ parser we intended to base this project but he assured us clang was the way to go. The name stuck though.

YRDropdownView - iOS view library for displaying stylish alerts, warnings, & errors

  •    Objective-C

YRDropdownView is a view library for displaying stylish alerts, warnings, and errors. Based on Tweetbot's implementation, MKInfoPanel by Mugunth Kumar, MBProgressHUD by Matej Bukovinski and DSActivityView by David Sinclair, among other influences. Its API has been hashed out to make the code easily implemented and very versatile. compiler flag](http://stackoverflow.com/questions/6646052/how-can-i-disable-arc-for-a-single-file-in-a-project) to all YRDropdownView files in your project.

jtransc - Convert your Java, Kotlin and Scala code into JavaScript, C++, D, C#, PHP, AS3, Dart and Haxe and run it everywhere

  •    Java

You can find documentation at the wiki. JTransc (Java Trans Compiler) is an AOT (ahead of time compiler) that compiles .class and .jar files into a target programming language / executable bundling all the required dependencies in a single file or folder, without requiring a jitter or an external runtime.