Skip to content

Instantly share code, notes, and snippets.

// compiling with -Xprint:patmat:
// qsc -optimize reads.scala -Xprint:patmat
// [[syntax trees at end of patmat]] // bla.scala
package <empty> {
abstract trait DefaultVcloudVCloudExtensibleTypeFormat extends scala.AnyRef {
def /*DefaultVcloudVCloudExtensibleTypeFormat*/$init$(): Unit = {
()
};
def reads(seq: scala.xml.NodeSeq): Unit = {
- #2060 Blaisorblade Revert "SI-6422: add missing Fractional and Integral alias in scala package" 2013-02-04T22:53:53Z
- #1426 Blaisorblade SI-6422: add missing Fractional and Integral alias in scala package 2012-10-10T16:07:13Z
- #1866 JamesIry Fixes SI-6521, overrides Range#head to be faster 2013-01-14T19:10:17Z
- #1778 JamesIry P si 6795 2.10.x 2012-12-19T20:18:19Z
- #2026 JamesIry SI-2818 Makes List#foldRight work for large lists 2013-02-01T18:28:06Z
- #1973 JamesIry SI-4602 Make fsc absolutize source file names 2013-01-28T19:58:11Z
- #2046 JamesIry SI-4714 Initialize history while initializing the REPL's reader 2013-02-01T04:13:29Z
- #2001 JamesIry SI-5313 Do not eliminate stores that potentially wipe referenes 2013-02-04T18:53:27Z
- #1904 JamesIry SI
[adriaan@Adriaans-iMac jenkins-config (master=)]$ git diff HEAD^..
diff --git a/config.xml b/config.xml
index c1d31291a7..7a27335d3b 100644
--- a/config.xml
+++ b/config.xml
@@ -982,6 +982,7 @@
         <string>scala-lang.org-scala-dist-archive-sync</string>
         <string>scala-nightly-auxjvm</string>
         <string>scala-nightly-checkinit</string>
#!/usr/bin/env python
import os, sys, re, glob, fnmatch
from subprocess import check_call, check_output
root = check_output(["git", "rev-parse", "--show-toplevel"]).strip()
root = os.path.join(root, "build/locker/classes/reflect/scala/reflect")
classfiles = []
for container, dirnames, filenames in os.walk(root):
for filename in fnmatch.filter(filenames, '*.class'):
classfiles.append(os.path.join(container, filename))
for classfile in classfiles:
tr[adriaan@Adriaans-iMac scala-build ((b98cc58...))]$ testopt 94d3572927
remote: Counting objects: 380, done.
remote: Compressing objects: 100% (143/143), done.
remote: Total 147 (delta 113), reused 0 (delta 0)
Receiving objects: 100% (147/147), 20.97 KiB, done.
Resolving deltas: 100% (113/113), completed with 72 local objects.
From /Users/adriaan/git/scala
b87e9b39d9..9a2455aee4 2.10.1 -> origin/2.10.1
39249d5ba2..234d05d52b 2.10.x -> origin/2.10.x
14048023a1..65a5459b0c master -> origin/master
@adriaanm
adriaanm / neo4
Last active December 14, 2015 12:29
checkout ee412cbbdb, add this to build.xml:
<target name="build-neo4"
description="Builds the optimised Scala compiler and library. Executables are in 'build/pack/bin'.">
<antcall target="build">
<param name="scalac.args.optimise" value="-neo:o4"/>
</antcall>
</target>
<target name="strap-neo4"
@adriaanm
adriaanm / 2.10.1-old-new.md
Last active December 17, 2015 11:29
A diff -- sorted by decreasing relevance -- of the bytecode in the jars we published for 2.10.1, and the jars created by the new release jobs at https://scala-webapps.epfl.ch/jenkins/view/scala-release/

The interesting differences are explained by

  • change in jdk version in combination with a bug where we use the wrong type in invokevirtual
    -##: invokevirtual	###; //Method org/xml/sax/SAXParseException.toString:()Ljava/lang/String;
    +##:	invokevirtual	###; //Method org/xml/sax/SAXException.toString:()Ljava/lang/String;
  • non-determinism ???
   -##:	checkcast	###; //class scala/Serializable
@adriaanm
adriaanm / retrovalidate.scala
Last active December 18, 2015 23:39
How to script https://github.com/typesafehub/ghpullrequest-validator to run a jenkins job for all commits in all open PRs.
// $ git clone https://github.com/typesafehub/ghpullrequest-validator.git
// $ cd ghpullrequest-validator
// $ sbt console
def parseConfig(ghpr: String) = GhApp.getConfigs(com.typesafe.config.ConfigFactory.parseFile(new java.io.File(ghpr))).toMap
// parse config and get the scala project settings
// (ghprs copied from the buildbot: scp ubuntu@buildbot.typesafe.com:~/ghpr2/*.ghpr ~/ghpr2)
val c = parseConfig("/Users/adriaan/ghpr2/scala-percommit.ghpr")("scala")
@adriaanm
adriaanm / pr-scala-integrate-ide-logs.sh
Created August 17, 2013 18:11
grep ide failures in pr-scala-integrate-ide because we had to make it always succeed for now
#!/bin/bash
curl -so - https://scala-webapps.epfl.ch/jenkins/view/pr-validators/job/pr-scala-integrate-ide/api/json | jq ".builds[].url" | perl -pe 's/^"(.*\/)(\d*)\/"$/curl -#o \/tmp\/idepr_$2.log $1$2\/consoleText &\n/' > /tmp/ideprs
echo Hit enter when download madness ends...
source /tmp/ideprs
read
reset