Minikube requires that VT-x/AMD-v virtualization is enabled in BIOS. To check that this is enabled on OSX / macOS run:
sysctl -a | grep machdep.cpu.features | grep VMX
If there's output, you're good!
$ pwd | |
/tmp/dockertest | |
$ docker run -it -v $HOME/.ivy2/local:/root/.ivy2/local --name sbttest openjdk:9-slim bash | |
apt-get update | |
apt-get install -y rsync | |
apt-get install -y bc | |
apt-get install -y vim | |
apt-get install -y gpg |
Recently, I found myself in need to precisely understand Scala's core typechecking rules. I was particulary interested in understanding rules responsible for typechecking signatures of members defined in classes (and all types derived from them). Scala Language Specification (SLS) contains definition of the rules but lacks any examples. The definition of the rules uses mutual recursion and nested switch-like constructs that make it hard to follow. I've written down examples together with explanation how specific set of rules (grouped thematically) is applied. These notes helped me gain confidence that I fully understand Scala's core typechecking algorithm.
Let's quote the Scala spec for As Seen From (ASF) rules numbered for an easier reference:
This is a set up for projects which want to check in only their source files, but have their gh-pages branch automatically updated with some compiled output every time they push.
A file below this one contains the steps for doing this with Travis CI. However, these days I recommend GitHub Actions, for the following reasons:
Using worker: worker-linux-4-2.bb.travis-ci.org:travis-linux-5 | |
git.1 | |
0.21s$ git clone --depth=50 --branch=withConsolidatedResolution git://github.com/xuwei-k/scalikejdbc.git xuwei-k/scalikejdbc | |
Cloning into 'xuwei-k/scalikejdbc'... | |
remote: Counting objects: 1073, done. | |
remote: Compressing objects: 100% (695/695), done. | |
remote: Total 1073 (delta 330), reused 822 (delta 192) | |
Receiving objects: 100% (1073/1073), 331.55 KiB | 0 bytes/s, done. | |
Resolving deltas: 100% (330/330), done. | |
Checking connectivity... done. |
https://github.com/sbt/sbt 1753 | |
https://github.com/mpeltonen/sbt-idea 724 | |
https://github.com/typesafehub/sbteclipse 361 | |
https://github.com/sbt/sbt-assembly 266 | |
https://github.com/sbt/sbt-native-packager 159 | |
https://github.com/sbt/sbt-onejar 135 | |
https://github.com/orfjackal/idea-sbt-plugin 126 | |
https://github.com/sbt/sbt-release 123 | |
https://github.com/sbt/sbt-start-script 111 | |
https://github.com/xerial/sbt-pack 73 |
scala> class Bippy(xs: List[Int]) extends improving.TypesafeProxy(xs) { def isEmpty = true } | |
defined class Bippy | |
scala> val bippy = new Bippy(1 to 10 toList) | |
bippy: Bippy = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) | |
scala> bippy.slice(3, 7) | |
[proxy] $line4.$read.$iw.$iw.bippy.slice(3, 7) | |
res1: List[Int] = List(4, 5, 6, 7) |
import scala.language.postfixOps | |
import java.io._ | |
import scalaj.http._ | |
import scalaz._, Scalaz._ | |
import scalaz.effect._, Effect._, IO._ | |
import scalaz.concurrent.Promise |
Instructions on how to reproduce sbt global plugin reload bug. Related links:
https://groups.google.com/forum/?hl=en&fromgroups=#!topic/simple-build-tool/x33MRCzNpww sbt/sbt#272
~/SbtHome/ # used as sbt.global.base
plugins/