Summarizing the doc per status (where the status is strawpoll status), I come to
Finalized and accept for 3.0
- implicit function types
- dependent function types
- drop auto application
- drop class shadowing
- intersection types
- union types
- drop compound types
- trait parameters
- drop early initializers
- drop existential types
- drop procedure syntax
- drop symbol literals
- drop type projections
- enums (rly? with/without widening apply/nesting?)
- eta expansion
- extension methods (has the bikeshed been fully painted?)
- given instances
- given import
- using clauses
- kind polymorphism
- name based pattern matching
- opaque type aliases
- type lambdas
- harmonization instead of weak conformance
- main functions (with or without some form of parameter parsing)
- toplevel defs (modulo details)
accepted for 3.1
- drop xml syntax
rejected for 3.0 without prejudice
- erased terms (probably 3.1)
- nullability (feature not ready)
- numeric literals (probably 3.1)
- drop auto tupling (scala 2 world not ready)
- named type arguments (unlikely to be re-submitted, as close as rejected with prejudice as it gets)
no consensus or no (closed) public discussion
- @alpha
- creator applications
- drop DelayedInit
- drop do…while
- drop non-local return
- export clauses
- Conversion
- implicit resolution changes (minutes suggest these should be split in all individual cases?)
- indentation syntax
- main functions
- match types
- meta programming
- multiversal equality
- parameter untupling
- pattern bindings
- polymorphic function types
- structural types
- wildcard types with
?
(edits reflect Martins corrections)