explaingit

xuwei-k/si-8899

Analysis updated 2026-08-07 · repo last pushed 2014-10-12

2ScalaAudience · developerComplexity · 1/5DormantLicenseSetup · easy

TLDR

A minimal test case that reproduces a specific Scala compiler bug (SI-8899) where filtering a custom collection causes a crash. It exists only to help Scala maintainers verify and fix the issue.

Mindmap

mindmap
  root((repo))
    What it does
      Reproduces Scala bug SI-8899
      Triggers AbstractMethodError
      Custom collection filtering
    Tech stack
      Scala
      Java platform
    Use cases
      Verify bug fix
      Debug compiler issue
      Minimal test case
    Audience
      Scala maintainers
      Compiler contributors
    License
      Public domain
      No restrictions

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Reproduce the SI-8899 Scala bug by running the included code

USE CASE 2

Verify whether a Scala compiler fix resolves the custom collection filtering crash

USE CASE 3

Provide a minimal example for Scala maintainers to debug the AbstractMethodError issue

What is it built with?

ScalaJava

How does it compare?

xuwei-k/si-8899dennybritz/samplercakiki/database
Stars21
LanguageScalaScalaScala
Last pushed2014-10-122014-05-052026-03-13
MaintenanceDormantDormantMaintained
Setup difficultyeasymoderateeasy
Complexity1/54/52/5
Audiencedeveloperresearcherresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires a Scala build tool (sbt) to compile and run the reproduction case.

Public domain, no restrictions on using or copying the code.

In plain English

This is a tiny, specialized repo that exists to reproduce a specific bug in the Scala programming language. Scala is a language that runs on the Java platform, and it has its own official issue tracker where developers report problems. This particular project, called "si-8899," is a minimal test case created to demonstrate a bug that was filed as issue SI-8899 in Scala's bug tracker. It's not a tool or application anyone would actually use, it's essentially a broken program that proves the bug exists. The bug itself causes a crash when someone creates a custom collection (a way to group items together, like a list or a map of key-value pairs) and tries to filter it down to a smaller set of items. When the program runs, instead of filtering as expected, it throws an error called AbstractMethodError, which happens when the underlying system gets confused about which piece of code to use for a particular operation. The repo contains just enough code to trigger this exact failure so maintainers can see the problem in action. The audience for this is really just Scala language developers and maintainers who need to verify, debug, and eventually fix the bug. A contributor working on the Scala compiler might pull up this repo, run it against a new version of Scala, and confirm whether the fix they made resolves the crash. It serves as a permanent record of how to reproduce the issue. The project is released into the public domain, meaning there are no restrictions on using or copying the code. Beyond that, the README doesn't go into much detail, it simply links to the original bug report and a past build log showing the error, letting the code speak for itself.

Copy-paste prompts

Prompt 1
Help me understand why filtering a custom Scala collection causes an AbstractMethodError in this si-8899 reproduction repo
Prompt 2
Given this Scala custom collection code that triggers SI-8899, walk me through what happens internally when the filter method is called
Prompt 3
Using this si-8899 bug reproduction, help me write a test that confirms whether a patched Scala version no longer crashes with AbstractMethodError

Frequently asked questions

What is si-8899?

A minimal test case that reproduces a specific Scala compiler bug (SI-8899) where filtering a custom collection causes a crash. It exists only to help Scala maintainers verify and fix the issue.

What language is si-8899 written in?

Mainly Scala. The stack also includes Scala, Java.

Is si-8899 actively maintained?

Dormant — no commits in 2+ years (last push 2014-10-12).

What license does si-8899 use?

Public domain, no restrictions on using or copying the code.

How hard is si-8899 to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is si-8899 for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.