-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathNEWS
174 lines (121 loc) · 6.89 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
CHANGES IN VERSION 0.10.0
-------------------------
NEW FEATURES
o Add SelfHits class, a subclass of Hits for representing objects where the
left and right nodes are identical.
o Add utilities isSelfHit() and isRedundantHit() to operate on SelfHits
objects.
o Add new Pairs class that couples two parallel vectors.
o head() and tail() now work on a DataTable object and behave like on an
ordinary matrix.
o Add as.matrix.Vector().
o Add "append" methods for Rle/vector (they promote to Rle).
SIGNIFICANT USER-VISIBLE CHANGES
o Many changes to the Hits class:
- Replace the old Hits class (where the hits had to be sorted by query)
with the SortedByQueryHits class.
- A new Hits class where the hits can be in any order is re-introduced as
the parent of the SortedByQueryHits class.
- The Hits() constructor gets the new 'sort.by.query' argument that is
FALSE by default. When 'sort.by.query' is set to TRUE, the constructor
returns a SortedByQueryHits instance instead of a Hits instance.
- Bidirectional coercion is supported between Hits and SortedByQueryHits.
When going from Hits to SortedByQueryHits, the hits are sorted by query.
- Add "c" method for Hits objects.
- Rename Hits slots:
queryHits -> from
subjectHits -> to
queryLength -> nLnode (nb of left nodes)
subjectLength -> nRnode (nb of right nodes)
- Add updateObject() method to update serialized Hits objects from old
(queryHits/subjectHits) to new (from/to) internal representation.
- The "show" method for Hits objects now labels columns with from/to by
default and switches to queryHits/subjectHits labels only when the
object is a SortedByQueryHits object.
- New accessors are provided that match the new slot names: from(), to(),
nLnode(), nRnode(). The old accessors (queryHits(), subjectHits(),
queryLength(), and subjectLength()) are just aliases for the new
accessors. Also countQueryHits() and countSubjectHits() are now aliases
for new countLnodeHits() and countRnodeHits().
o Transposition of Hits objects now propagates the metadata columns.
o Rename elementLengths() -> elementNROWS() (the old name was clearly a
misnomer). For backward compatibility the old name still works but is
deprecated (now it's just an "alias" for elementNROWS()).
o Rename compare() -> pcompare(). For backward compatibility the old name
still works but is just an "alias" for pcompare() and is deprecated.
o Some refactoring of the Rle() generic and methods:
- Remove ellipsis from the argument list of the generic.
- Dispatch on 'values' only.
- The 'values' and 'lengths' arguments now have explicit default values
logical(0) and integer(0) respectively.
- Methods have no more 'check' argument but new low-level (non-exported)
constructor new_Rle() does and is what should now be used by code that
needs this feature.
o Optimize subsetting of an Rle object by an Rle subscript: the subscript
is no longer decoded (i.e. expanded into an ordinary vector). This
reduces memory usage and makes the subsetting much faster e.g. it can be
100x times faster or more if the subscript has many (e.g. thousands) of
long runs.
o Modify "replaceROWS" methods so that the replaced elements in 'x' get
their metadata columns from 'value'. See this thread on bioc-devel:
https://stat.ethz.ch/pipermail/bioc-devel/2015-November/008319.html
o Remove ellipsis from the argument list of the "head" and "tail" methods
for Vector objects.
o pc() (parallel combine) now returns a List object only if one of the
supplied objects is a List object, otherwise it returns an ordinary list.
o The "as.data.frame" method for Vector objects now forwards the
'row.names' argument.
o Export the "parallelSlotNames" methods.
DEPRECATED AND DEFUNCT
o Deprecate elementLengths() in favor of elementNROWS(). New name reflects
TRUE semantic.
o Deprecate compare() in favor of pcompare().
o After being deprecated in BioC 3.2, the "ifelse" methods for Rle objects
are now defunct.
o Remove "aggregate" method for vector objects which was an undocumented
bad idea from the start.
BUG FIXES
o Fix 2 long-standing bugs in "as.data.frame" method for List objects:
- must always return an ordinary data.frame (was returning a DataFrame
when 'use.outer.mcols' was TRUE),
- when 'x' has names and 'group_name.as.factor' is TRUE, the levels of
the returned group_name col must be identical to 'unique(names(x))'
(names of empty list elements in 'x' was not showing up in
'levels(group_name)').
o Fix and improve the elementMetadata/mcols setter method for Vector
objects so that the specific methods for GenomicRanges, GAlignments,
and GAlignmentPairs objects are not needed anymore and were removed.
Note that this change also fixes setting the elementMetadata/mcols of a
SummarizedExperiment object with NULL or an ordinary data frame, which
was broken until now.
o Fix bug in match,ANY,Rle method when supplied 'nomatch' is not NA.
o Fix findMatches() for Rle table.
o Fix show,DataTable-method to display all rows if <= nhead + ntail + 1
CHANGES IN VERSION 0.4.0
------------------------
NEW FEATURES
o Add isSorted() and isStrictlySorted() generics, plus some methods.
o Add low-level wmsg() helper for formatting error/warning messages.
o Add pc() function for parallel c() of list-like objects.
o Add coerce,Vector,DataFrame; just adds any mcols as columns on top of the
coerce,ANY,DataFrame behavior.
o [[ on a List object now accepts a numeric- or character-Rle of length 1.
o Add "droplevels" methods for Rle, List, and DataFrame objects.
o Add table,DataTable and transform,DataTable methods.
o Add prototype of a better all.equals() for S4 objects.
SIGNIFICANT USER-VISIBLE CHANGES
o Move Annotated, DataTable, Vector, Hits, Rle, List, SimpleList, and
DataFrame classes from the IRanges package.
o Move isConstant(), classNameForDisplay(), and low-level argument
checking helpers isSingleNumber(), isSingleString(), etc... from the
IRanges package.
o Add as.data.frame,List method and remove other inconsistent and not
needed anymore "as.data.frame" methods for List subclasses.
o Remove useless and thus probably never used aggregate,DataTable method
that followed the time-series API.
o coerce,ANY,List method now propagates the names.
BUG FIXES
o Fix bug in coercion from list to SimpleList when the list contains
matrices and arrays.
o Fix subset() on a zero column DataFrame.
o Fix rendering of Date/time classes as DataFrame columns.