Skip to content

Instantly share code, notes, and snippets.

@huydx
Forked from xuwei-k/Scala2.11.md
Created December 1, 2015 04:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save huydx/19d8eda85e49620475f2 to your computer and use it in GitHub Desktop.
Save huydx/19d8eda85e49620475f2 to your computer and use it in GitHub Desktop.
  • xmlとparser-combinatorが別のjarになった http://d.hatena.ne.jp/xuwei/20130726/1374809559
  • case classやメソッドの22制限がなくなった scala/scala#2305
  • 「value classのvalがpublicでないといけない」という制限がなくなった scala/scala#2965 scala/scala#3113
  • Java8のようなSingle Abstract Methodの糖衣構文を(experimantalだが)サポート scala/scala#3037
  • パターンマッチの際に使われるunapplyの戻り値型が、Optionではなく「 isEmpty: Booleanget: A をもっていればどんな型でもよい」と、制限が緩くなった
  • http://d.hatena.ne.jp/xuwei/20131005/1380887673
  • scala/scala#2848
  • scala.util.contrll.TailCalls.TailRecflatMap が追加された scala/scala#2865
  • view boundが非推奨になった scala/scala#2909
  • リフレクションがスレッドセーフになった(またバグが見つかったらしい) scala/scala#3029
  • コレクションであまり使われていない、以下のものが大量に非推奨 https://github.com/scala/scala/commit/3cc99d7b4aa43b1
  • scala.collection.IterableProxyLike
  • scala.collection.MapProxyLike
  • scala.collection.SeqProxy
  • scala.collection.SeqProxyLike
  • scala.collection.SetProxyLike
  • scala.collection.TraversableProxyLike
  • scala.collection.generic.IterableForwarder
  • scala.collection.generic.SeqForwarder
  • scala.collection.generic.TraversableForwarder
  • scala.collection.immutable.MapProxy
  • scala.collection.immutable.SetProxy
  • scala.collection.immutable.Stack
  • scala.collection.mutable.BufferProxy
  • scala.collection.mutable.DoubleLinkedList
  • scala.collection.mutable.DoubleLinkedListLike
  • scala.collection.mutable.ImmutableMapAdaptor
  • scala.collection.mutable.ImmutableSetAdaptor
  • scala.collection.mutable.LinkedList
  • scala.collection.mutable.LinkedListLike
  • scala.collection.mutable.MapProxy
  • scala.collection.mutable.ObservableBuffer
  • scala.collection.mutable.ObservableMap
  • scala.collection.mutable.ObservableSet
  • scala.collection.mutable.PriorityQueueProxy
  • scala.collection.mutable.QueueProxy
  • scala.collection.mutable.SetProxy
  • scala.collection.mutable.StackProxy
  • scala.collection.mutable.SynchronizedBuffer
  • scala.collection.mutable.SynchronizedMap
  • scala.collection.mutable.SynchronizedPriorityQueue
  • scala.collection.mutable.SynchronizedQueue
  • scala.collection.mutable.SynchronizedSet
  • scala.collection.mutable.SynchronizedStack
  • scala.collection.script 以下すべて
  • 以下のものに deprecatedInheritance アノテーション追加(finalにする予定だから継承するな、というアノテーション。継承ができなくなるだけで、class自体が非推奨になるわけではない)
  • scala.collection.immutable.HashMap
  • scala.collection.immutable.HashSet
  • scala.collection.immutable.ListMap
  • scala.collection.immutable.ListSet
  • scala.collection.immutable.PagedSeq
  • scala.collection.immutable.Queue
  • scala.collection.immutable.Range
  • scala.collection.immutable.TreeMap
  • scala.collection.immutable.TreeSet
  • scala.collection.immutable.WrappedString
  • scala.collection.mutable.ArrayBuilder のサブクラス 9つすべて
  • scala.collection.mutable.ArrayOps
  • scala.collection.mutable.PriorityQueue
  • scala.collection.mutable.TreeSet
  • scala.collection.mutable.UnrolledBuffer
  • procedure syntaxと呼ばれる「戻り値がUnitの場合にdef foo: Unit = {def foo{ と書ける機能」が非推奨に scala/scala#3076
  • REPLの機能追加
  • :save
  • :edit
  • :line
  • :settings
  • :kind
  • testingutil.loggingio の一部などの、あまり使われていない以下のものが非推奨に https://github.com/scala/scala/commit/794e826621a57ab785a9f
  • scala.io.BytePickle
  • scala.io.Position
  • scala.io.UTF8Codec
  • scala.testing.Benchmark
  • scala.testing.Show
  • scala.util.logging.ConsoleLogger
  • scala.util.logging.Logged
  • scala.Responder が非推奨 scala/scala#3176
  • パターンマッチのところに case _: Array[scala.Int] と、型引数の部分にfull nameを書けるようになった scala/scala#3162
  • Predef に定義されていた PairTriple という、Tuple2Tuple3 のaliasが非推奨に scala/scala#3131
  • -Ywarn-unused-Ywarn-unused-import のコンパイルオプションつけた場合に、「未使用のimport」や「未使用の変数」、「string interpolationのsを付け忘れていると思われる箇所」、「初期化順の関係で、nullになってしまうval」、「valにすることが可能なvar」などを警告してくれるようになった。例→ https://gist.github.com/xuwei-k/7733744 (ただしバグがあるらしいので、-Yオプション)
  • マクロの改善、機能追加(これは細かいところ追えてません、すいません)
  • scala.text が非推奨 scala/scala#2733
  • value classのメソッドで、tailrecアノテーションのサポート scala/scala#2717
  • scala.util.parsing.json が非推奨 scala/scala#2581
  • 以下のdeprecatedだったものが削除。deprecatedInheritanceアノテーションがついていたものがfinalscala/scala#3152
  • finalになったもの
    • BigDecimal BigInt
  • 削除されたもの
    • scala.runtime.WorksheetSupportscala.util.hashing.MurmurHash3def symmetricHashdef traversableHash
  • Predef に定義されていたコンソール入力関連の以下のメソッドが、scala.io.ReadStdin へ移動。(Predefに定義されていたものはdeprecatedにされただけで、すぐにコンパイルエラーになるわけではない) https://github.com/scala/scala/commit/c26a8db067e4f04ef95
  • readBoolean
  • readByte
  • readChar
  • readDouble
  • readFloat
  • readInt
  • readLine
  • readLong
  • readShort
  • readf
  • readf1
  • readf2
  • readf3
  • scala.Console の以下のメソッドが非推奨 https://github.com/scala/scala/commit/c26a8db067e4f04ef95 代替は withOut などの、"一度setしたものをリセットも行う、ローンパターンぽいもの"のほうを使え、ということらしい
  • setOut
  • setErr
  • setIn
  • 2.9からずっと非推奨だった、Predef.exitがついに本当に削除 https://github.com/scala/scala/commit/c26a8db067e4f04ef95
  • parallel collectionのviewが削除 scala/scala#3191
  • Tupleの継承が非推奨に https://github.com/scala/scala/commit/4af9ff514c531dd
  • ArrayのunzipがArrayを返すように修正 scala/scala#3320
  • AnyRefMapとLongMapという新しいコレクション追加 scala/scala#3119
  • Streamのメモリリークの改善 scala/scala#3450
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment