CHANGELOG.md 15.8 KB
Newer Older
Marco Clemencic's avatar
Marco Clemencic committed
1
2
3
# Changelog
All notable changes to this project will be documented in this file.

4
Project Coordinators: Marco Clemencic, Charles Leggett
Marco Clemencic's avatar
Marco Clemencic committed
5
6
7
8

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).

## [Unreleased][]
Marco Clemencic's avatar
Marco Clemencic committed
9

Marco Clemencic's avatar
Marco Clemencic committed
10
11
12
13

## [v30r4][] - 2018-11-02
Improvements, modernization and fixes.

Marco Clemencic's avatar
Marco Clemencic committed
14
### Changed
15
16
17
18
19
20
21
22
23
- Reorganization of Gaudi::Parsers code ([mr !759][])
- Update LCG to 94 and Gaudi version to v30r4 ([mr !776][])
- Update minimum required CMake version to 3.6 ([mr !789][])
- Remove m_event_context from `Algorithm` ([mr !784][])
- Reimplementation of DataHandle ([mr !462][])
- Improve extension API in `EventContext` ([mr !770][])
- Change return type of interger counters operations, like _mean_, to float ([mr !786][], [issue #50][])
- Clean up `IDataProviderSvc` and `IDataManagerSvc` interfaces ([mr !674][])
- Avoid printing empty counters ([mr !777][])
Marco Clemencic's avatar
Marco Clemencic committed
24
25
26
27
28
29
30
- Use `unique_ptr` for `EventContexts` ([mr !732][], [issue #37][])
- `ConcurrencyFlags`: move setting from `AvalancheScheduler` to `HiveWhiteBoard` ([mr !726][])
- Introduce a generic `IDataStoreAgent` implementation ([mr !661][])
- `MetaDataSvc`: save data for all clients of the `JobOptionsSvc` ([mr !720][])
- Adding actual type of object in data store to error messages ([mr !715][])

### Added
31
32
- Add `Gaudi::Property` constructors which accept an update handler ([mr !769][])
- Optionally capture and print exception backtrace ([mr !653][])
Marco Clemencic's avatar
Marco Clemencic committed
33
- Add build and runtime support for gcc/clang sanitizers ([mr !744][])
34
- Add debug builds to Gitlab-CI and other improvements to CI configuration ([mr !756][])
Marco Clemencic's avatar
Marco Clemencic committed
35
36
37
38
- Introduce `IDataBroker` interface, and `HiveDataBroker` implementation ([mr !685][], [mr !739][])
- Added an accumulate helper function to new counters ([mr !717][])

### Fixed
39
40
41
42
43
44
45
46
47
- `HiveWhiteBoard::freeStore`: check whether slot was already free ([mr !779][], [issue #49][])
- Fix segfault when scheduling `EventViews` ([mr !781][])
- Fixed bug in `BinomialCounter` when using buffer ([mr !764][])
- Clarify scalar `operator()` signature in `MultiScalarTransform` ([mr !755][])
- Fix potential race condition in `TimelineSvc` ([mr !750][])
- Implicitly convert `DataObjectHandleBase` to `str` properties ([mr !773][])
- Filter out install and build files from `make apply-formatting` ([mr !747][], )
- Fixed issues reported by gcc/clang sanitizers ([mr !749][], [mr !757][], [mr !758][], [mr !752][], [mr !751][], [mr !746][], [mr !772][], [mr !753][])
- Make sure a test fails if its reference file is not found ([mr !734][])
Marco Clemencic's avatar
Marco Clemencic committed
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
- Fix Floating Point Exception in `counters.h` ([mr !760][])
- Make the CMake tests more resilient to symlinks ([mr !742][])
- Add support for versioned ROOT libraries ([mr !737][])
- Make event views bookkeeping thread-safe ([mr !729][], [issue #36][])
- Avoid using a (possibly invalid) `EventContext` pointer ([mr !727][])
- Mark dependencies as required when the build requires them ([mr !731][])
- Use std::filesystem only with C++17 ([mr !738][])
- Fixed indentation of new counters to be backward compatible ([mr !717][])
- Fixed error handling of `qmt` parsing errors ([mr !714][])
- Stop profiling on finalize if needed ([mr !713][])
- `THistSvc`: fix memory corruption in `deReg(string)` ([mr !728][])
- Avoid possible memory corruption in `PluginService` ([mr !733][])
- Added correct `vector_of_const_::operator[]` and ::at ([mr !710][])

### Clean up
63
64
65
- Fix some gcc 8 warnings ([mr !782][])
- Remove unused mutex member in `Algorithm` ([mr !767][])
- Replaced invalid `std::forward` with `std::move` in `PluginService` ([mr !745][])
Marco Clemencic's avatar
Marco Clemencic committed
66
- Counters: improve doxygen ([mr !754][])
67
- Minor code clean up ([mr !408][], [mr !740][], [mr !774][])
Marco Clemencic's avatar
Marco Clemencic committed
68
69


Marco Clemencic's avatar
Marco Clemencic committed
70
71
72
## [v30r3][] - 2018-08-01
Improvements, modernization and fixes.

73
### Deprecated
Marco Clemencic's avatar
Marco Clemencic committed
74
- Print warning if begin/endRun are used in serial jobs ([mr !666][])
75
76
77
- Fully deprecate `DeclareFactoryEntries.h` ([mr !648][])

### Changed
Marco Clemencic's avatar
Marco Clemencic committed
78
79
80
81
82
83
84
85
86
87
88
- Implement error detection for Hive scheduler/eventloopmgr ([mr !706][])
- Modernize memory management in `PrecedenceRulesGraph` ([mr !684][])
- Simplify `HLTEventLoopMgr` ([mr !686][])
- Rewrite of `PluginService` in modern C++ ([mr !709][])
- Sort uids map before printing the content at finalize (in DEBUG) ([mr !702][])
- Remove `NTUPLEINFO` ([mr !688][])
- Revert `IRegsitry` modification from [mr !604][] ([mr !704][])
- Move to event-wise stall detection ([mr !690][])
- Avoid superfluous visitor-to-scheduler handovers of in-view DR algorithms ([mr !689][])
- Add set-to-set lookups for faster `AlgsExecutionStates` matching ([mr !687][])
- `FileMgr`: replace integer with bitset ([mr !667][])
Marco Clemencic's avatar
Marco Clemencic committed
89
90
- Enable top-level 3T dumps for event views ([mr !675][])
- Add support for multiple CF parents to 3T ([mr !672][])
Marco Clemencic's avatar
Marco Clemencic committed
91
- Applied new formatting (see [mr !651][], [mr !448][])
Marco Clemencic's avatar
Marco Clemencic committed
92
- Remove `DataHandle::commit()` ([mr !625][])
Marco Clemencic's avatar
Marco Clemencic committed
93
94
- Modernize Registry usage in (Ts)DataSvc ([mr !604][], [issue #5][])
- Improve Gitlab-CI configuration ([mr !651][], [mr !448][])
95
96
- Implemented a new property for IoComponentMgr to hold search patterns for
  direct I/O input file names ([mr !646][])
97
98
99
100
101
102
- Allow retrieval of const services, lost with [mr !526][] ([mr !647][])
- Add renamePFN and deletePFN methods to FileCatalog ([mr !645][])
- Do string conversion in stream operator for `AlgsExecutionStates::State`
  ([mr !643][])
- Use `apply` in `Gaudi::Functional` ([mr !622][])

Marco Clemencic's avatar
Marco Clemencic committed
103
### Fixed
Marco Clemencic's avatar
Marco Clemencic committed
104
105
106
107
- Fixes for clang build ([mr !724][])
- Fix dependency of generated PCM files ([mr !705][])
- Fix tests in special configurations ([mr !701][])
- Fix asynchronous task scheduling ([mr !697][])
Marco Clemencic's avatar
Marco Clemencic committed
108
109
110
111
112
- Make sure we do not use `ninja` from LCG ([mr !695][])
- Increase timeout for event view tests ([mr !696][])
- Fix message service format in `GaudiMP` ([mr !694][])
- `CommonAuditor`: only print `CustomEventType` deprecation warning if the property is used ([mr !691][])
- Fix for crash when events are deleted while view algorithms are still running ([mr !670][])
113
- Fix environment for Gitlab-CI
Marco Clemencic's avatar
Marco Clemencic committed
114
- Unset `GIT_DIR`/`GIT_WORK_TREE` before cloning `xenv` ([mr !669][])
Marco Clemencic's avatar
Marco Clemencic committed
115
- Add test and fix of version propagation in KeyedContainer move ([mr !663][], [issue #27][])
Marco Clemencic's avatar
Marco Clemencic committed
116
- Fixed the list of files used for formatting check in Gitlab-CI ([mr !664][])
Marco Clemencic's avatar
Marco Clemencic committed
117
- Avoid (false positive) clang warning ([mr !656][])
Marco Clemencic's avatar
Marco Clemencic committed
118
119
- Handle incompatible values for DataObjectHandleBase props ([mr !650][])
- Fixed bug in THistSvc introduced with [mr !594][] ([mr !652][])
Marco Clemencic's avatar
Marco Clemencic committed
120

Marco Clemencic's avatar
Marco Clemencic committed
121
### Added
Marco Clemencic's avatar
Marco Clemencic committed
122
123
124
- Add support for `EventContext` as input to `Gaudi::Functional` algorithms ([mr !671][])
- Add `operator()` to `Property` ([mr !679][])
- Add producer for `KeyedContainer` and vector to `GaudiExamples` ([mr !673][])
Marco Clemencic's avatar
Marco Clemencic committed
125
- Implementation of new counters classes ([mr !629][], [mr !676][], [mr !677][])
Marco Clemencic's avatar
Marco Clemencic committed
126
- [Change log](CHANGELOG.md) ([mr !649][])
Marco Clemencic's avatar
Marco Clemencic committed
127

Marco Clemencic's avatar
Marco Clemencic committed
128
129
130
131
132
133
134
135
136
137
138
### Clean up
- Simplify `Property` forwarding functions ([mr !683][])
- Simplify counter implementation ([mr !682][])
- Update C++17 / lib fundamentals v2 implementations ([mr !681][])
- Modernize `GaudiPython` ([mr !680][])
- Modernize `RootCnv` ([mr !660][])
- Modernize `RootHistCnv` ([mr !659][])
- Protect logging and clean up headers in HiveSlimEventLoopMgr ([mr !692][])
- Remove unused variables in Algorithm ([mr !668][])
- Remove unreferenced code ([mr !658][])

Marco Clemencic's avatar
Marco Clemencic committed
139

Marco Clemencic's avatar
Marco Clemencic committed
140
141
142
143
144
145
146
147
148
149
## [v28r2p1][] - 2018-06-15
Bugfix release

### Fixed
- Add test and fix of version propagation in KeyedContainer move ([mr !665][], [issue #27][])

### Added
- Gitlab-CI configuration ([mr !665][], backport from master)


Marco Clemencic's avatar
Marco Clemencic committed
150
151
152
153
154
155
156
157
158
159
160
## [v29r4][] - 2018-04-17
Bugfix release.

### Fixed
- Add test and fix of version propagation in KeyedContainer move ([mr !662][], [issue #27][])
- Handle incompatible values for DataObjectHandleBase props ([mr !654][])

### Changed
- Improve Gitlab-CI configuration ([mr !655][], backport of [mr !651][])


Marco Clemencic's avatar
Marco Clemencic committed
161
162
163
164
165
## Old versions
Details about old versions of the project can be found in the
[ReleaseNotes](ReleaseNotes) folder and in the `release.notes` files in
[GaudiRelease/doc](GaudiRelease/doc).

166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
[mr !789]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/789
[mr !786]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/786
[mr !784]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/784
[mr !782]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/782
[mr !781]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/781
[mr !779]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/779
[mr !777]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/777
[mr !776]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/776
[mr !774]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/774
[mr !773]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/773
[mr !772]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/772
[mr !770]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/770
[mr !769]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/769
[mr !767]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/767
[mr !764]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/764
Marco Clemencic's avatar
Marco Clemencic committed
181
[mr !760]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/760
182
183
184
[mr !759]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/759
[mr !758]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/758
[mr !757]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/757
Marco Clemencic's avatar
Marco Clemencic committed
185
[mr !756]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/756
186
[mr !755]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/755
Marco Clemencic's avatar
Marco Clemencic committed
187
[mr !754]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/754
188
189
190
191
192
193
194
195
[mr !753]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/753
[mr !752]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/752
[mr !751]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/751
[mr !750]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/750
[mr !749]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/749
[mr !747]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/747
[mr !746]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/746
[mr !745]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/745
Marco Clemencic's avatar
Marco Clemencic committed
196
197
[mr !744]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/744
[mr !742]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/742
198
[mr !740]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/740
Marco Clemencic's avatar
Marco Clemencic committed
199
200
201
[mr !739]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/739
[mr !738]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/738
[mr !737]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/737
202
[mr !734]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/734
Marco Clemencic's avatar
Marco Clemencic committed
203
204
205
206
207
208
209
[mr !733]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/733
[mr !732]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/732
[mr !731]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/731
[mr !729]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/729
[mr !728]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/728
[mr !727]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/727
[mr !726]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/726
Marco Clemencic's avatar
Marco Clemencic committed
210
[mr !724]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/724
Marco Clemencic's avatar
Marco Clemencic committed
211
212
213
214
215
216
[mr !720]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/720
[mr !717]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/717
[mr !715]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/715
[mr !714]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/714
[mr !713]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/713
[mr !710]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/710
Marco Clemencic's avatar
Marco Clemencic committed
217
218
219
220
221
222
223
[mr !709]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/709
[mr !706]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/706
[mr !705]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/705
[mr !704]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/704
[mr !702]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/702
[mr !701]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/701
[mr !697]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/697
Marco Clemencic's avatar
Marco Clemencic committed
224
225
226
227
228
[mr !696]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/696
[mr !695]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/695
[mr !694]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/694
[mr !692]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/692
[mr !691]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/691
Marco Clemencic's avatar
Marco Clemencic committed
229
230
231
232
233
[mr !690]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/690
[mr !689]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/689
[mr !688]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/688
[mr !687]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/687
[mr !686]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/686
Marco Clemencic's avatar
Marco Clemencic committed
234
[mr !685]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/685
Marco Clemencic's avatar
Marco Clemencic committed
235
[mr !684]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/684
Marco Clemencic's avatar
Marco Clemencic committed
236
237
238
239
240
[mr !683]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/683
[mr !682]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/682
[mr !681]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/681
[mr !680]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/680
[mr !679]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/679
Marco Clemencic's avatar
Marco Clemencic committed
241
242
[mr !677]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/677
[mr !676]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/676
Marco Clemencic's avatar
Marco Clemencic committed
243
[mr !675]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/675
244
[mr !674]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/674
Marco Clemencic's avatar
Marco Clemencic committed
245
246
247
248
[mr !673]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/673
[mr !672]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/672
[mr !671]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/671
[mr !670]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/670
Marco Clemencic's avatar
Marco Clemencic committed
249
[mr !669]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/669
Marco Clemencic's avatar
Marco Clemencic committed
250
251
252
[mr !668]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/668
[mr !667]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/667
[mr !666]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/666
Marco Clemencic's avatar
Marco Clemencic committed
253
[mr !665]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/665
Marco Clemencic's avatar
Marco Clemencic committed
254
[mr !664]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/664
Marco Clemencic's avatar
Marco Clemencic committed
255
[mr !663]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/663
Marco Clemencic's avatar
Marco Clemencic committed
256
[mr !662]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/662
Marco Clemencic's avatar
Marco Clemencic committed
257
[mr !661]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/661
Marco Clemencic's avatar
Marco Clemencic committed
258
259
[mr !660]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/660
[mr !659]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/659
Marco Clemencic's avatar
Marco Clemencic committed
260
[mr !658]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/658
Marco Clemencic's avatar
Marco Clemencic committed
261
[mr !656]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/656
Marco Clemencic's avatar
Marco Clemencic committed
262
263
[mr !655]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/655
[mr !654]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/654
264
[mr !653]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/653
Marco Clemencic's avatar
Marco Clemencic committed
265
266
[mr !652]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/652
[mr !651]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/651
Marco Clemencic's avatar
Marco Clemencic committed
267
268
[mr !650]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/650
[mr !649]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/649
269
270
[mr !648]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/648
[mr !647]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/647
271
[mr !646]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/646
272
273
[mr !645]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/645
[mr !643]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/643
Marco Clemencic's avatar
Marco Clemencic committed
274
[mr !629]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/629
Marco Clemencic's avatar
Marco Clemencic committed
275
[mr !625]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/625
276
[mr !622]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/622
Marco Clemencic's avatar
Marco Clemencic committed
277
278
[mr !604]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/604
[mr !594]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/594
279
[mr !526]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/526
280
[mr !462]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/462
Marco Clemencic's avatar
Marco Clemencic committed
281
[mr !448]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/448
Marco Clemencic's avatar
Marco Clemencic committed
282
[mr !408]: https://gitlab.cern.ch/gaudi/Gaudi/merge_requests/408
Marco Clemencic's avatar
Marco Clemencic committed
283

284
285
[issue #50]: https://gitlab.cern.ch/gaudi/Gaudi/issues/50
[issue #49]: https://gitlab.cern.ch/gaudi/Gaudi/issues/49
Marco Clemencic's avatar
Marco Clemencic committed
286
287
[issue #37]: https://gitlab.cern.ch/gaudi/Gaudi/issues/37
[issue #36]: https://gitlab.cern.ch/gaudi/Gaudi/issues/36
Marco Clemencic's avatar
Marco Clemencic committed
288
[issue #27]: https://gitlab.cern.ch/gaudi/Gaudi/issues/27
Marco Clemencic's avatar
Marco Clemencic committed
289
[issue #5]: https://gitlab.cern.ch/gaudi/Gaudi/issues/5
Marco Clemencic's avatar
Marco Clemencic committed
290

Marco Clemencic's avatar
Marco Clemencic committed
291
292
[Unreleased]: https://gitlab.cern.ch/gaudi/Gaudi/compare/v30r4...master
[v30r4]: https://gitlab.cern.ch/gaudi/Gaudi/compare/v30r3...v30r4
Marco Clemencic's avatar
Marco Clemencic committed
293
[v30r3]: https://gitlab.cern.ch/gaudi/Gaudi/compare/v30r2...v30r3
Marco Clemencic's avatar
Marco Clemencic committed
294
[v29r4]: https://gitlab.cern.ch/gaudi/Gaudi/compare/v29r3...v29r4
Marco Clemencic's avatar
Marco Clemencic committed
295
[v28r2p1]: https://gitlab.cern.ch/gaudi/Gaudi/compare/v28r2...v28r2p1