We have moved: https://github.com/magnetikonline/linuxmicrosoftievirtualmachines
Due to the popularity of this Gist, and the work in keeping it updated via a Gist, all future updates will take place at the above location. Thanks!
We have moved: https://github.com/magnetikonline/linuxmicrosoftievirtualmachines
Due to the popularity of this Gist, and the work in keeping it updated via a Gist, all future updates will take place at the above location. Thanks!
#!/bin/sh | |
DBUS_NAME="org.freedesktop.login1" | |
DBUS_PATH="/org/freedesktop/login1" | |
DBUS_INTERFACE="org.freedesktop.login1.Manager" | |
DBUS_SIGNAL="PrepareForSleep" | |
INHIBITOR_PIDS= | |
install_background_inhibitor() { |
#!/bin/sh | |
set -x | |
DBUS_NAME="org.freedesktop.login1" | |
DBUS_PATH="/org/freedesktop/login1" | |
DBUS_INTERFACE="org.freedesktop.login1.Manager" | |
DBUS_SIGNAL="PrepareForSleep" | |
INHIBITOR_PID= | |
install_background_inhibitor() { |
val integrationTest = taskKey[Unit]("Executes integration tests.") | |
lazy val root = (project in file(".")).aggregate(simpleGraph, compilerPluginUnitTestLib, compilerPluginn, canveSbtPlugin, sbtPluginTestLib).enablePlugins(CrossPerProjectPlugin).settings( | |
scalaVersion := "2.11.7", | |
crossScalaVersions := Seq("2.10.4", "2.11.7"), | |
publishArtifact := false, // no artifact to publish for the virtual root project | |
integrationTest := (run in Compile in sbtPluginTestLib).value // not working: need to bounty http://stackoverflow.com/questions/33291071/invoking-a-subprojects-main-with-a-custom-task | |
) | |
lazy val simpleGraph = (project in file("simpleGraph")) |
~/software/tinkerpop/tinkerpop3$ bin/gremlin.sh | |
\,,,/ | |
(o o) | |
-----oOOo-(3)-oOOo----- | |
plugin activated: tinkerpop.server | |
plugin activated: tinkerpop.utilities | |
plugin activated: tinkerpop.giraph | |
gremlin> graph = TinkerGraph.open() | |
==>tinkergraph[vertices:0 edges:0] | |
gremlin> graph.io(graphson()).readGraph('data/tinkerpop-modern.json') |
WHITESPACE ODDITY | |
by Paul Phillips, in eternal admiration of David Bowie, RIP | |
Bound Ctrl to Major mode | |
Bound Ctrl to Major mode | |
Read inputrc and set extdebug on | |
Bound Ctrl to Major mode (Ten, Nine, Eight, Seven, Six) | |
Connecting readline, options on (Five, Four, Three) | |
Check the syntax, may terminfo be with you (Two, One, Exec) |
import cats.data.Xor, cats.syntax.xor._, cats.data.XorT | |
//Some type aliases for semantic purposes | |
type IndexedSymbols = Iterable[(FileObject, List[FqnSymbol])] | |
type IndexingError = (String, Throwable) | |
type ProcessResult[A] = XorT[Future, IndexingError, A] |
Miles Sabin recently opened a pull request fixing the infamous SI-2712. First off, this is remarkable and, if merged, will make everyone's life enormously easier. This is a bug that a lot of people hit often without even realizing it, and they just assume that either they did something wrong or the compiler is broken in some weird way. It is especially common for users of scalaz or cats.
But that's not what I wanted to write about. What I want to write about is the exact semantics of Miles's fix, because it does impose some very specific assumptions about the way that type constructors work, and understanding those assumptions is the key to getting the most of it his fix.
For starters, here is the sort of thing that SI-2712 affects:
def foo[F[_], A](fa: F[A]): String = fa.toString