-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathchangelog.in
5660 lines (4968 loc) · 131 KB
/
changelog.in
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
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#
# Main authors:
# Christian Schulte <schulte@gecode.org>
#
# Copyright:
# Christian Schulte, 2005
#
# Last modified:
# $Date: 2011-07-14 10:25:54 +0200 (Thu, 14 Jul 2011) $ by $Author: tack $
# $Revision: 12209 $
#
# This file is part of Gecode, the generic constraint
# development environment:
# http://www.gecode.org
#
# Permission is hereby granted, free of charge, to any person obtaining
# a copy of this software and associated documentation files (the
# "Software"), to deal in the Software without restriction, including
# without limitation the rights to use, copy, modify, merge, publish,
# distribute, sublicense, and/or sell copies of the Software, and to
# permit persons to whom the Software is furnished to do so, subject to
# the following conditions:
#
# The above copyright notice and this permission notice shall be
# included in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
#
# This file contains entries for changelogs
#
# There are two kinds of entries: one marking releases and the others
# being actual entries.
#
# All the lines for describing entries must start at the beginning.
#
# A release is described as follows:
# [RELEASE]
# Version: <version string>
# Date: <when release>
# [DESCRIPTION]
# ... All the text up to the next [ENTRY] is included
# as description
#
# An entry is described as follows:
# [ENTRY]
# Module:
# kernel|search|int|set|cpltset|example|minimodel|iter|support|
# scheduling|driver|test|gist|flatzinc|other
# What: bug|documentation|performance|new|removed|change
# Rank: minor|major
# Bug: <optional, for number from bugzilla>
# Thanks: <optional, who reported etc>
# [DESCRIPTION]
# ... All the text up to the next [ENTRY] or [RELEASE] is included
# as description
# [MORE]
# ... If a more section is included, then it will be displayed as an
# optional section in the html page.
#
[RELEASE]
Version: 3.6.0
Date: 2011-07-15
[DESCRIPTION]
This release adds new constraints (value precedence constraints
for integer and set variables, no-overlap constraints for
rectangles, constraints for Hamiltonian paths), improves and
cleans up a number of existing constraints (scheduling,
channeling, relation, bin-packing, lexicographic relations), and
adds new functionality (support for externalization of choices
for distributed search, support for incremental propagation).
Some models might have to be changed as the graph and scheduling
modules have been incorporated into the integer module (removing
the respective include directives is sufficient).
On top, there are many small fixes, in particular for FlatZinc.
[ENTRY]
Module: int
What: change
Rank: minor
[DESCRIPTION]
The cumulatives constraint now does not post the s+p=e constraints,
harmonizing its semantics with the cumulative and unary constraints.
[ENTRY]
Module: int
What: new
Rank: minor
[DESCRIPTION]
The cumulative constraints now support an IntVar as the capacity
argument.
[ENTRY]
Module: example
What: new
Rank: minor
[DESCRIPTION]
Added Schur's Lemma puzzle.
[ENTRY]
Module: int
What: performance
Rank: minor
[DESCRIPTION]
Optimized channeling propagator between an array of Boolean
variables and an integer variables.
[ENTRY]
Module: int
What: change
Rank: major
[DESCRIPTION]
Changed semantics of rel(home, x, IRT_NQ), enforces that not all
variables in x are equal. See "Modeling and Programming with
Gecode" for details.
[ENTRY]
Module: flatzinc
What: new
Rank: major
[DESCRIPTION]
Added native support for the precedence constraint.
[ENTRY]
Module: set
What: new
Rank: major
Author: Christopher Mears
[DESCRIPTION]
Added value precedence constraint.
[ENTRY]
Module: int
What: new
Rank: major
Author: Christopher Mears
[DESCRIPTION]
Added value precedence constraint.
[ENTRY]
Module: int
What: performance
Rank: minor
[DESCRIPTION]
The disequality constraint between variable arrays has an efficient
propagator now.
[ENTRY]
Module: int
What: performance
Rank: major
[DESCRIPTION]
The ordering constraints rel(home, x, IRT_LE) (also for IRT_LQ,
IRT_GR, IRT_GQ) now have an optimal implementation (single
incremental propagator).
[ENTRY]
Module: driver
What: bug
Rank: minor
Thanks: Jan Kelbel
[DESCRIPTION]
Fixed a small memory leak in the driver (stop objects were not deleted).
[ENTRY]
Module: int
What: performance
Rank: major
[DESCRIPTION]
Increased performance of bin-packing propagator by 40 to 300
percent by using staging.
[ENTRY]
Module: flatzinc
What: new
Rank: major
[DESCRIPTION]
Added native support for the no-overlap constraint (called diffn in
MiniZinc/FlatZinc).
[ENTRY]
Module: int
What: new
Rank: major
[DESCRIPTION]
Added no-overlap constraint that enforces that rectangles do not
overlap (also known as diffn). See "Modeling and Programming with
Gecode" for details.
[ENTRY]
Module: int
What: new
Rank: major
[DESCRIPTION]
Added constraints for Hamiltonian paths (called
path). See "Modeling and Programming with Gecode" for details.
[ENTRY]
Module: flatzinc
What: new
Rank: minor
Thanks: Håkan Kjellerstrand
[DESCRIPTION]
Support indomain_middle and indomain_interval search annotation by
replacing them with indomain_median and indomain_split, respectively.
[ENTRY]
Module: gist
What: change
Rank: minor
[DESCRIPTION]
Zoom-to-fit can now be selected during search.
[ENTRY]
Module: graph
What: change
Rank: major
[DESCRIPTION]
The graph module has been removed and its constraints have been
added to the integer module.
[ENTRY]
Module: scheduling
What: change
Rank: major
[DESCRIPTION]
The scheduling module has been removed and its constraints have been
added to the integer module.
[ENTRY]
Module: int
What: bug
Rank: minor
[DESCRIPTION]
Fixed element and sequence propagators, which were only
correct by accident (incorrect use of GECODE_ME_CHECK instead of
GECODE_ES_CHECK).
[ENTRY]
Module: set
What: bug
Rank: minor
[DESCRIPTION]
Fixed sequence, partition, and union propagators, which were only
correct by accident (incorrect use of GECODE_ME_CHECK instead of
GECODE_ES_CHECK).
[ENTRY]
Module: scheduling
What: bug
Rank: minor
[DESCRIPTION]
Fixed scheduling code for mandatory flexible tasks, which was only
correct by accident (incorrect use of GECODE_ME_CHECK instead of
GECODE_ES_CHECK).
[ENTRY]
Module: flatzinc
What: new
Rank: minor
[DESCRIPTION]
Added native support for link_set_to_booleans,
global_cardinality_low_up_closed, and decreasing_bool.
[ENTRY]
Module: int
What: new
Rank: minor
Thanks: Kish Shen
[DESCRIPTION]
Generalized lexicographic constraint to arrays of different sizes.
[ENTRY]
Module: search
What: bug
Rank: minor
[DESCRIPTION]
Fixed memory leak when passing a failed space to a search engine with cloning
option set to false.
[ENTRY]
Module: kernel
What: new
Rank: minor
[DESCRIPTION]
Moved RangeList class, which is a list of ranges implemented as a FreeList,
from the set module into the kernel. Also added corresponding
Iter::Ranges::RangeList iterator.
[ENTRY]
Module: int
What: new
Rank: major
[DESCRIPTION]
Added a CachedView that can cache the domain between propagator invocations
and provides an efficient test whether a view has changed since the previous
invocation as well as an iterator over the removed domain values. This makes
it easier to implement incremental propagation algorithms that need exact
delta information.
[ENTRY]
Module: set
What: new
Rank: major
[DESCRIPTION]
Added a CachedView that can cache the domain between propagator invocations
and provides an efficient test whether a view has changed since the previous
invocation as well as an iterator over the removed domain values. This makes
it easier to implement incremental propagation algorithms that need exact
delta information.
[ENTRY]
Module: set
What: performance
Rank: minor
[DESCRIPTION]
Use new cached views for a more efficient implementation of the channel constraint between IntVarArgs and SetVarArgs.
[ENTRY]
Module: gist
What: bug
Rank: minor
[DESCRIPTION]
Changed keyboard shortcuts in Gist so that they work on all platforms: "Inspect"
is now Ctrl+number of inspector, for "Inspect before fixpoint" press Alt in
addition (on Mac OS, use the Command key instead of Ctrl).
[ENTRY]
Module: other
What: bug
Rank: minor
Thanks: Martin Mann
[DESCRIPTION]
Fixed Makefile, now installation works when FlatZinc library is disabled.
[ENTRY]
Module: other
What: new
Rank: minor
Thanks: Ruben Zilibowitz
[DESCRIPTION]
Added configure option --enable-small-codesize that results in
slightly less efficient but more compact code being generated for
non-debug builds.
[ENTRY]
Module: set
What: bug
Rank: minor
[DESCRIPTION]
The constructors for set variable arrays and argument arrays threw incorrect
VariableEmptyDomain exceptions.
[ENTRY]
Module: graph
What: new
Rank: minor
[DESCRIPTION]
Added circuit constraints with offsets.
[ENTRY]
Module: int
What: performance
Rank: minor
[DESCRIPTION]
The channel constraints between two integer arrays are now more
memory efficient when offsets are used.
[ENTRY]
Module: kernel
What: change
Rank: major
[DESCRIPTION]
Choices can now be written into an externalized form (called an Archive),
and reconstructed from it. This is necessary for serializing paths in
a distributed search engine.
[ENTRY]
Module: flatzinc
What: change
Rank: minor
[DESCRIPTION]
Adapted the MiniZinc declarations and the command line options for
Gecode/FlatZinc to MiniZinc 1.3. The fz binary now works with the
minizinc driver script.
[ENTRY]
Module: flatzinc
What: bug
Rank: minor
Thanks: Håkan Kjellerstrand
[DESCRIPTION]
Re-enabled the global cardinality constraint in the FlatZinc interpreter.
[ENTRY]
Module: flatzinc
What: bug
Rank: minor
Thanks: Håkan Kjellerstrand
[DESCRIPTION]
Fixed the MiniZinc definition for the circuit constraints to work with
arbitrarily indexed arrays.
[ENTRY]
Module: gist
What: change
Rank: minor
Thanks: Alin Gherman
[DESCRIPTION]
Compiles under MSVC 2005 SP1 again.
[ENTRY]
Module: set
What: new
Rank: minor
Thanks: Marco Correia
[DESCRIPTION]
Added channel aliases for set union of an array of integer variables,
and renamed channel to channelSorted.
[ENTRY]
Module: set
What: documentation
Rank: minor
Thanks: Marco Correia
[DESCRIPTION]
Fixed documentation for set channeling constraint.
[RELEASE]
Version: 3.5.0
Date: 2011-02-01
[DESCRIPTION]
This release fixes serious bugs in parallel search, FlatZinc,
fixes some DLL issues on Windows, adds support for FreeBSD, and
adds STL-style iterators for arrays.
[ENTRY]
Module: search
What: bug
Rank: major
Thanks: Denys Duchier, Chris Mears
[DESCRIPTION]
Fixed a serious bug in parallel search (took over a year to
isolate the bug).
[ENTRY]
Module: other
What: new
Rank: minor
Thanks: Peter Penchev
[DESCRIPTION]
Gecode now compiles on FreeBSD.
[ENTRY]
Module: kernel
What: new
Rank: major
Author: Gregory Crosswhite
[DESCRIPTION]
Added STL compatible iteration support for arrays (variable
arrays, argument arrays, view arrays, and shared arrays).
[ENTRY]
Module: minimodel
What: bug
Rank: minor
Thanks: Alexander Kleff
[DESCRIPTION]
Do not inline construction of linear, Boolean, and set
expressions to avoid cross-DLL allocation/deallocation issues on
Windows.
[ENTRY]
Module: other
What: new
Rank: major
[DESCRIPTION]
Embed resource information into Gecode DLLs and EXEs on Windows.
[ENTRY]
Module: flatzinc
What: bug
Rank: major
Thanks: Roberto Castañeda Lozano
[DESCRIPTION]
Fixed incorrect posting of linear constraints with variable arrays
of size one.
[ENTRY]
Module: other
What: change
Rank: minor
[DESCRIPTION]
Embed manifest into Gecode DLLs on Windows.
[ENTRY]
Module: flatzinc
What: change
Rank: major
[DESCRIPTION]
Fixed the definitions of global_cardinality to work with MiniZinc 1.2 and
newer, and added corresponding definitions of global_cardinality_closed and
global_cardinality_low_up_closed.
[RELEASE]
Version: 3.4.2
Date: 2010-10-09
[DESCRIPTION]
This release removes LDS from Gecode as it is patented in the US.
[ENTRY]
Module: search
What: removed
Rank: minor
[DESCRIPTION]
Removed limited discrepancy search (LDS) as it is patented in the US.
[ENTRY]
Module: flatzinc
What: new
Rank: minor
[DESCRIPTION]
Added support for bin packing constraint.
[RELEASE]
Version: 3.4.1
Date: 2010-10-08
[DESCRIPTION]
This release adds a new global constraint for bin-packing (with
extended example) and filter functions for branchers. The
reference documentation has been cleaned up. In particular,
information on how to obtain, install, and link Gecode has been
expanded and moved to "Modeling and Programming with Gecode"
(Section 2.6). Additionally, the release fixes some bugs and
contains some performance improvements.
[ENTRY]
Module: example
What: new
Rank: major
[DESCRIPTION]
Added a binpacking model using the binpacking constraint and CDBF
(complete decreasing best fit) search.
[ENTRY]
Module: int
What: new
Rank: major
[DESCRIPTION]
Added a binpacking constraint and propagator.
[ENTRY]
Module: driver
What: new
Rank: minor
[DESCRIPTION]
Added a class InstanceOptions that takes one additional string argument.
[ENTRY]
Module: flatzinc
What: new
Rank: minor
[DESCRIPTION]
Added support for global_cardinality_low_up.
[ENTRY]
Module: other
What: documentation
Rank: minor
[DESCRIPTION]
Removed obsolete Glossary in reference documentation.
[ENTRY]
Module: int
What: bug
Rank: minor
Thanks: Gustavo A. Gómez Farhat
[DESCRIPTION]
Do not inline functions with variable arguments.
[ENTRY]
Module: gist
What: change
Rank: minor
[DESCRIPTION]
Only center node on double-click if it was undetermined (otherwise
inspecting several nodes becomes slightly annoying).
[ENTRY]
Module: minimodel
What: change
Rank: minor
[DESCRIPTION]
Added element expression for BoolVarArgs.
[ENTRY]
Module: minimodel
What: bug
Rank: minor
[DESCRIPTION]
Fixed memory allocation for non-linear expressions and made the
LinExpr constructor explicit for non-linear expressions (previously
the automatic cast from integers to LinExpr was sometimes ambiguous).
[ENTRY]
Module: scheduling
What: bug
Rank: major
Thanks: Roberto Castañeda Lozano
[DESCRIPTION]
Fixed initialization for unary and cumulative edge-finding (just
worked accidentally).
[ENTRY]
Module: kernel
What: change
Rank: major
Thanks: Felix Brandt
[DESCRIPTION]
Branching now honors filter functions, where variables are
considered for branching only if the filter functions returns
true (see "Modeling and Programming with Gecode" for details).
[ENTRY]
Module: kernel
What: change
Rank: minor
[DESCRIPTION]
Variable implementation views are now parametric with respect to
variables but not variable implementations (see "Modeling and
Programming with Gecode" for details).
[ENTRY]
Module: kernel
What: change
Rank: minor
[DESCRIPTION]
Renamed the template class for variables defined by a variable
implementation from Var to VarImpVar and re-added a class Var as
base class for any variable type.
[ENTRY]
Module: int
What: bug
Rank: minor
Thanks: Kish Shen
[DESCRIPTION]
The reified dom constraint failed instead of setting the BoolVar to 0 when the
minimum argument given was greater than the maximum.
[ENTRY]
Module: int
What: performance
Rank: minor
Thanks: Kish Shen
[DESCRIPTION]
Fixed sortedness constraint by replacing an algorithm that is linear in the
width of the union of all domains with an algorithm that is quadratic in the
number of variables. The previous algorithm crashed for domains with large
values due to excessive memory use.
[ENTRY]
Module: int
What: performance
Rank: minor
[DESCRIPTION]
Using ICL_DOM for binary linear equations with unit coefficients (such as x =
y+3) is now implemented using the much more efficient binary equality
propagator instead of the linear equation propagator (which has worst case
exponential runtime).
[ENTRY]
Module: gist
What: performance
Rank: minor
[DESCRIPTION]
Saved some memory for each node in Gist (one pointer per node, two integers
per inner node, and some additional memory on 64 bit platforms due to optimizing
alignment), and speeded up deallocation of the tree (e.g. when resetting or
closing Gist).
[ENTRY]
Module: iter
What: performance
Rank: minor
[DESCRIPTION]
Reimplemented n-ary union, minus, and cache iterators for much
better efficiency.
[ENTRY]
Module: flatzinc
What: performance
Rank: minor
[DESCRIPTION]
The FlatZinc parser now uses hash maps instead of STL maps, which
significantly increases parsing performance for larger files.
Furthermore, a single symbol table is used, also increasing
performance and allowing to report duplicate symbol errors,
which were previously ignored.
[RELEASE]
Version: 3.4.0
Date: 2010-07-26
[DESCRIPTION]
This release includes: considerably improved support for posting
expressions and relations (also including set and full arithmetic
expressions); other improvements for modeling (array
initialization and element addition to arrays); state-of-the-art
unary and cumulative scheduling propagators (including optional
and flexible tasks); major cleanups of the variable and view
infrastructure (now also documented in MPG); cleanups of the
examples; several other fixes and performance improvements.
This release is the first to be accompanied by a complete version
of "Modeling and Programming in Gecode" which has been extended
by many new case studies and parts on programming search engines
and variables.
[ENTRY]
Module: flatzinc
What: bug
Rank: minor
[DESCRIPTION]
Boolean relations were incorrect on assigned arguments.
[ENTRY]
Module: kernel
What: bug
Rank: minor
[DESCRIPTION]
Posting a propagator in a failed space could make the space
non-failed again.
[ENTRY]
Module: kernel
What: new
Rank: minor
[DESCRIPTION]
Added LocalObject and LocalHandle classes that can be used for
space-allocated objects that are shared within a space, for
example among several propagators or propagators and branchers.
[ENTRY]
Module: other
What: change
Rank: major
[DESCRIPTION]
Completely cleaned up variables and views, drastically saving code.
[ENTRY]
Module: other
What: removed
Rank: minor
[DESCRIPTION]
Variables do not have init functions any longer as they are not
needed, see MPG for discussion.
[ENTRY]
Module: scheduling
What: new
Rank: major
[DESCRIPTION]
Added scheduling constraints for tasks with flexible duration
(for both unary and cumulative resources), and made all scheduling
propagators deal correctly with zero length tasks.
[ENTRY]
Module: scheduling
What: new
Rank: major
[DESCRIPTION]
Added propagators for cumulative scheduling.
[ENTRY]
Module: minimodel
What: bug
Rank: minor
Thanks: Håkan Kjellerstrand
[DESCRIPTION]
Fixed a bug in minimodel, which could crash when using zero
coefficients.
[ENTRY]
Module: driver
What: change
Rank: minor
[DESCRIPTION]
The driver now catches SIGINT (i.e., pressing Ctrl-C) and stops
the search properly, printing statistics up to the point where
it stopped.
[ENTRY]
Module: gist
What: change
Rank: minor
[DESCRIPTION]
If an inspector throws an exception, an error message is
printed indicating which inspector caused the problem.
Previously, Gist would crash with a Qt error that was difficult
to trace.
[ENTRY]
Module: flatzinc
What: bug
Rank: minor
[DESCRIPTION]
Fixed garbage collection of variables that are not printed. The
bug lead to variables being mixed up in the output.
[ENTRY]
Module: example
What: removed
Rank: minor
[DESCRIPTION]
Removed stress tests, the real examples are much more stressful,
actually!
[ENTRY]
Module: minimodel
What: change
Rank: minor
[DESCRIPTION]
The Matrix class now supports const operations and has an output
operator.
[ENTRY]
Module: minimodel
What: change
Rank: major
[DESCRIPTION]
Linear expressions can now contain non-linear parts, such as
multiplications or divisions, or set expressions such as
cardinality.
[ENTRY]
Module: minimodel
What: change
Rank: major
[DESCRIPTION]
The minimodel post functions have been split into two functions, rel
and expr. While rel posts a constraint, expr returns a new variable
constrained to the given expression. This change makes it possible to
get rid of the reification operator (~) as well as the tt and ff
functions, which were previously needed to distinguish between
relations and expressions. Boolean equivalence and implication can
now be expressed using operators (==,<<,>>).
[ENTRY]
Module: minimodel
What: new
Rank: major
[DESCRIPTION]
The minimodel library now provides convenient post functions
for set constraints.
[ENTRY]
Module: set
What: bug
Rank: minor
[DESCRIPTION]
Fixed the include and exclude tell operations of set variables so
that they work with empty ranges.
[ENTRY]
Module: example
What: change
Rank: minor
[DESCRIPTION]
The Nonogram example now uses AFC as the default branching and
includes some more instances.
[ENTRY]
Module: example
What: new
Rank: minor
[DESCRIPTION]
New custom branching for the BACP example using a custom value selection.
[ENTRY]
Module: other
What: change
Rank: minor
[DESCRIPTION]
The configure script now checks for qmake-qt4 and moc-qt4, which are used on
some Linux systems to distinguish between Qt3 and Qt4.
[ENTRY]
Module: driver
What: change
Rank: minor
[DESCRIPTION]
Running a script in time mode stops all iterations and samples
immediately if a single run reaches a limit (eases benchmarks
with timeouts).
[ENTRY]
Module: int
What: performance
Rank: minor
[DESCRIPTION]
Optimized element propagator, expect a speed up of around 35-50%
in most cases.
[ENTRY]
Module: minimodel
What: performance
Rank: minor
[DESCRIPTION]
Posting linear expressions performs more aggressive optimizations
for assigned variables.
[ENTRY]
Module: minimodel
What: performance
Rank: minor
[DESCRIPTION]
Arithmetic modeling functions now try to avoid creating new
variables and posting propagators for common cases.
[ENTRY]
Module: set
What: change
Rank: minor
[DESCRIPTION]
The argument arrays now have constructors that create new variables.
[ENTRY]
Module: int
What: change
Rank: minor
[DESCRIPTION]
The argument arrays now have constructors that create new variables.
[ENTRY]
Module: int
What: change
Rank: minor
[DESCRIPTION]
IntArgs with simple sequences of values can now be created using the
IntArgs::create static member function.
[ENTRY]
Module: other
What: change
Rank: minor
[DESCRIPTION]
The build system now supports Visual C++ 2010.
[ENTRY]
Module: minimodel
What: change
Rank: minor
[DESCRIPTION]
Array slices can now be empty.
[ENTRY]
Module: kernel
What: change
Rank: major
[DESCRIPTION]
The support for dynamically resizing variable arrays has been
removed (it was buggy and inefficient). Instead, all argument
arrays now support adding elements using operator<<. In addition,
all arrays now support concatenation using operator+ and slicing,
and variable arrays, view arrays, and variable argument arrays
include a test whether all variables are assigned.
[ENTRY]
Module: example
What: change
Rank: minor
[DESCRIPTION]
Take advantage of the better modeling support for the BIBD, Golomb
ruler, Kakuro, Black Hole, and Warehouse examples (nothing but dusting off
examples that have been around for ages).
[ENTRY]
Module: int
What: new
Rank: minor
[DESCRIPTION]
You can now construct IntArgs from an STL vector, an IntSharedArray,
or using simple comprehensions.
[ENTRY]
Module: gist
What: bug