We are now getting really close to the final release! The new release candidate, Scala 2.9.1 RC4, is currently available for testing: you can find it on our Download Page [1]. This is a maintenance release: several bugs have been fixed, and other improvements introduced. The new release is intended to be fully binary compatible with the existing version 2.9.0.1.
Please help us testing this new release candidate, and let us know of any issues you may detect, or of any binary incompatibility issue that you may encounter. A description of the improvements in Scala 2.9.1 is available below.
This Release Candidate is made available for testing purposes only and is not intended for production environments. We will wait 7 days in order to allow developers and testers to send us their feedback, and if no critical faults are reported we will release 2.9.1 final on August 31st.
The 2.9.1 release of Scala includes many bug fixes and improvements, in particular to the interpreter: most of the interpreter changes available in the development mainline have been ported to the 2.9.x release branch.
In addition, the following changes (bug fixes and improvements) have also been ported:
24909 [2], 24919 [3], 24941 [4], 24961 [5], 24963 [6], 24965 [7], 24981 [8], 24984 [9], 24986 [10], 24987 [11], 24992 [12], 24993 [13], 24999 [14], 25000 [15], 25001 [16], 25002 [17], 25003 [18], 25004 [19], 25005 [20], 25006 [21], 25007 [22], 25008 [23], 25009 [24], 25010 [25], 25015 [26], 25028 [27], 25029 [28], 25030 [29], 25031 [30], 25033 [31], 25038 [32], 25039 [33], 25040 [34], 25041 [35], 25044 [36], 25045 [37], 25046 [38], 25048 [39], 25050 [40], 25051 [41], 25052 [42], 25053 [43], 25054 [44], 25055 [45], 25057 [46], 25058 [47], 25059 [48], 25061 [49], 25062 [50], 25063 [51], 25065 [52], 25066 [53], 25069 [54], 25068 [55], 25070 [56], 25071 [57], 25072 [58], 25074 [59], 25075 [60], 25076 [61], 25080 [62], 25081 [63], 25082 [64], 25083 [65], 25085 [66], 25087 [67], 25088 [68], 25090 [69], 25091 [70], 25092 [71], 25093 [72], 25094 [73], 25095 [74], 25096 [75], 25097 [76], 25099 [77], 25100 [78], 25101 [79], 25110 [80], 25111 [81], 25112 [82], 25113 [83], 25114 [84], 25117 [85], 25119 [86], 25122 [87], 25124 [88], 25125 [89], 25126 [90], 25127 [91], 25128 [92], 25130 [93], 25132 [94], 25133 [95], 25134 [96], 25135 [97], 25136 [98], 25137 [99], 25138 [100], 25138 [100], 25139 [101], 25140 [102], 25141 [103], 25142 [104], 25144 [105], 25145 [106], 25146 [107], 25148 [108], 25149 [109], 25152 [110], 25153 [111], 25158 [112], 25160 [113], 25161 [114], 25162 [115], 25164 [116], 25167 [117], 25169 [118], 25170 [119], 25171 [120], 25172 [121], 25202 [122], 25204 [123], 25207 [124], 25208 [125], 25209 [126], 25212 [127], 25252 [128], 25374 [129], 25375 [130], 25377 [131], 25379 [132], 25380 [133], 25381 [134], 25384 [135], 25385 [136], 25390 [137], 25404 [138], 25405 [139], 25462 [140], 25504 [141], 25506 [142], 25509 [143], 25531 [144], 25534 [145], 25544 [146], 25548 [147], 25549 [148].
Among the bug fixed in this release are:
SI-1048 [149], SI-3501 [150], SI-4237 [151], SI-4547 [152], SI-4556 [153], SI-4588 [154], SI-4593 [155], SI-4603 [156], SI-4614 [157], SI-4659 [158], SI-4660 [159], SI-4662 [160], SI-4671 [161], SI-4678 [162], SI-4692 [163], SI-4705 [164], SI-4712 [165], SI-4748 [166], SI-4752 [167], SI-4757 [168], SI-4759 [169], SI-4782 [170], SI-4791 [171], SI-4821 [172].
Links:
[1] http://www.scala-lang.org/downloads
[2] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24909
[3] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24919
[4] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24941
[5] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24961
[6] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24963
[7] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24965
[8] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24981
[9] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24984
[10] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24986
[11] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24987
[12] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24992
[13] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24993
[14] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=24999
[15] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25000
[16] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25001
[17] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25002
[18] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25003
[19] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25004
[20] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25005
[21] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25006
[22] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25007
[23] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25008
[24] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25009
[25] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25010
[26] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25015
[27] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25028
[28] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25029
[29] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25030
[30] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25031
[31] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25033
[32] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25038
[33] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25039
[34] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25040
[35] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25041
[36] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25044
[37] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25045
[38] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25046
[39] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25048
[40] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25050
[41] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25051
[42] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25052
[43] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25053
[44] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25054
[45] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25055
[46] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25057
[47] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25058
[48] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25059
[49] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25061
[50] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25062
[51] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25063
[52] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25065
[53] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25066
[54] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25069
[55] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25068
[56] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25070
[57] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25071
[58] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25072
[59] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25074
[60] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25075
[61] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25076
[62] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25080
[63] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25081
[64] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25082
[65] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25083
[66] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25085
[67] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25087
[68] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25088
[69] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25090
[70] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25091
[71] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25092
[72] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25093
[73] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25094
[74] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25095
[75] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25096
[76] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25097
[77] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25099
[78] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25100
[79] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25101
[80] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25110
[81] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25111
[82] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25112
[83] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25113
[84] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25114
[85] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25117
[86] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25119
[87] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25122
[88] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25124
[89] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25125
[90] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25126
[91] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25127
[92] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25128
[93] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25130
[94] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25132
[95] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25133
[96] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25134
[97] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25135
[98] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25136
[99] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25137
[100] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25138
[101] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25139
[102] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25140
[103] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25141
[104] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25142
[105] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25144
[106] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25145
[107] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25146
[108] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25148
[109] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25149
[110] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25152
[111] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25153
[112] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25158
[113] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25160
[114] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25161
[115] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25162
[116] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25164
[117] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25167
[118] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25169
[119] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25170
[120] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25171
[121] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25172
[122] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25202
[123] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25204
[124] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25207
[125] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25208
[126] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25209
[127] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25212
[128] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25252
[129] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25374
[130] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25375
[131] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25377
[132] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25379
[133] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25380
[134] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25381
[135] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25384
[136] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25385
[137] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25390
[138] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25404
[139] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25405
[140] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25462
[141] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25504
[142] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25506
[143] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25509
[144] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25531
[145] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25534
[146] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25544
[147] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25548
[148] https://codereview.scala-lang.org/fisheye/changelog/scala-svn?cs=25549
[149] https://issues.scala-lang.org/browse/SI-1048
[150] https://issues.scala-lang.org/browse/SI-3501
[151] https://issues.scala-lang.org/browse/SI-4237
[152] https://issues.scala-lang.org/browse/SI-4547
[153] https://issues.scala-lang.org/browse/SI-4556
[154] https://issues.scala-lang.org/browse/SI-4588
[155] https://issues.scala-lang.org/browse/SI-4593
[156] https://issues.scala-lang.org/browse/SI-4603
[157] https://issues.scala-lang.org/browse/SI-4614
[158] https://issues.scala-lang.org/browse/SI-4659
[159] https://issues.scala-lang.org/browse/SI-4660
[160] https://issues.scala-lang.org/browse/SI-4662
[161] https://issues.scala-lang.org/browse/SI-4671
[162] https://issues.scala-lang.org/browse/SI-4678
[163] https://issues.scala-lang.org/browse/SI-4692
[164] https://issues.scala-lang.org/browse/SI-4705
[165] https://issues.scala-lang.org/browse/SI-4712
[166] https://issues.scala-lang.org/browse/SI-4748
[167] https://issues.scala-lang.org/browse/SI-4752
[168] https://issues.scala-lang.org/browse/SI-4757
[169] https://issues.scala-lang.org/browse/SI-4759
[170] https://issues.scala-lang.org/browse/SI-4782
[171] https://issues.scala-lang.org/browse/SI-4791
[172] https://issues.scala-lang.org/browse/SI-4821