Skip to content

Commit 49d21c5

Browse files
committed
Merge branch 'hotfix-4.10.17'
2 parents 0f734bf + d9ac290 commit 49d21c5

File tree

11 files changed

+35
-11
lines changed

11 files changed

+35
-11
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
Choco-solver is an open-source Java library for Constraint Programming.
2020

21-
Current stable version is 4.10.16 (12 Sep 2024).
21+
Current stable version is 4.10.17 (23 Sep 2024).
2222

2323
Choco-solver comes with:
2424
- various type of variables (integer, boolean, set, graph and real),
@@ -125,7 +125,7 @@ So you only have to edit your `pom.xml` to declare the following library depende
125125
<dependency>
126126
<groupId>org.choco-solver</groupId>
127127
<artifactId>choco-solver</artifactId>
128-
<version>4.10.16</version>
128+
<version>4.10.17</version>
129129
</dependency>
130130
```
131131

examples/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<parent>
1818
<groupId>org.choco-solver</groupId>
1919
<artifactId>choco</artifactId>
20-
<version>4.10.16</version>
20+
<version>4.10.17</version>
2121
</parent>
2222
<artifactId>examples</artifactId>
2323
<packaging>jar</packaging>

parsers/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<parent>
1818
<groupId>org.choco-solver</groupId>
1919
<artifactId>choco</artifactId>
20-
<version>4.10.16</version>
20+
<version>4.10.17</version>
2121
</parent>
2222
<artifactId>choco-parsers</artifactId>
2323
<packaging>jar</packaging>

parsers/src/main/java/org/chocosolver/parser/flatzinc/Flatzinc.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ public Thread actionOnKill() {
126126
@Override
127127
public void createSolver() {
128128
if (level.isLoggable(Level.COMPET)) {
129-
System.out.println("%% Choco 240912_11:16");
129+
System.out.println("%% Choco 240923_09:34");
130130
}
131131
super.createSolver();
132132
datas = new Datas[nb_cores];

parsers/src/main/java/org/chocosolver/parser/xcsp/XCSP.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public Thread actionOnKill() {
7070
public void createSolver() {
7171
super.createSolver();
7272
if (level.isLoggable(Level.COMPET)) {
73-
System.out.println("c Choco 240912_11:16");
73+
System.out.println("c Choco 240923_09:34");
7474
}
7575
String iname = Paths.get(instance).getFileName().toString();
7676
parsers = new XCSPParser[nb_cores];

parsers/src/main/minizinc/fzn-choco.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import sys
88

99
# THIS IS WHERE YOU NEED TO CHANGE THE PATH TO THE JAR FILE
10-
JAR_FILE='~/.m2/repository/org/choco-solver/choco-parsers/4.10.16/choco-parsers-4.10.16-light.jar'
10+
JAR_FILE='~/.m2/repository/org/choco-solver/choco-parsers/4.10.17/choco-parsers-4.10.17-light.jar'
1111

1212
JVM_ARGS = '-server -Xss64M -Xms2G -Xmx8G -XX:NewSize=512M'
1313
LOG_LEVEL = 'COMPET'

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<modelVersion>4.0.0</modelVersion>
1616
<groupId>org.choco-solver</groupId>
1717
<artifactId>choco</artifactId>
18-
<version>4.10.16</version>
18+
<version>4.10.17</version>
1919
<packaging>pom</packaging>
2020
<name>choco</name>
2121
<url>http://choco-solver.org/</url>

solver/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<parent>
1818
<groupId>org.choco-solver</groupId>
1919
<artifactId>choco</artifactId>
20-
<version>4.10.16</version>
20+
<version>4.10.17</version>
2121
</parent>
2222
<artifactId>choco-solver</artifactId>
2323
<packaging>jar</packaging>

solver/src/main/java/org/chocosolver/solver/constraints/extension/hybrid/ASupport.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,9 @@ void reset() {
8383
@Override
8484
void support(int value) {
8585
value -= offset;
86-
ac.set(value);
86+
if(value > -1) {
87+
ac.set(value);
88+
}
8789
}
8890

8991
@Override

solver/src/main/java/org/chocosolver/solver/trace/IOutputFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public interface IOutputFactory extends ISelf<Solver> {
4040
* Default welcome message
4141
*/
4242
String WELCOME_MESSAGE =
43-
"** Choco 4.10.16 (2024-09) : Constraint Programming Solver, Copyright (c) 2010-2024";
43+
"** Choco 4.10.17 (2024-09) : Constraint Programming Solver, Copyright (c) 2010-2024";
4444

4545
/**
4646
* Print the version message.

solver/src/test/java/org/chocosolver/solver/constraints/nary/TableTest.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
import org.chocosolver.solver.constraints.Constraint;
1919
import org.chocosolver.solver.constraints.extension.Tuples;
2020
import org.chocosolver.solver.constraints.extension.TuplesFactory;
21+
import org.chocosolver.solver.constraints.extension.hybrid.HybridTuples;
22+
import org.chocosolver.solver.constraints.extension.hybrid.ISupportable;
2123
import org.chocosolver.solver.constraints.extension.nary.TuplesLargeTable;
2224
import org.chocosolver.solver.constraints.extension.nary.TuplesTable;
2325
import org.chocosolver.solver.constraints.extension.nary.TuplesVeryLargeTable;
@@ -33,12 +35,14 @@
3335
import org.testng.annotations.Test;
3436

3537
import java.util.ArrayList;
38+
import java.util.Arrays;
3639
import java.util.List;
3740
import java.util.Random;
3841

3942
import static java.lang.System.out;
4043
import static org.chocosolver.solver.constraints.extension.TuplesFactory.generateTuples;
4144
import static org.chocosolver.solver.constraints.extension.TuplesFactory.scalar;
45+
import static org.chocosolver.solver.constraints.extension.hybrid.HybridTuples.*;
4246
import static org.chocosolver.solver.search.strategy.Search.randomSearch;
4347
import static org.testng.Assert.assertEquals;
4448

@@ -942,4 +946,22 @@ public void testForbidden2(String a) {
942946
Assert.assertEquals(model.getSolver().getSolutionCount(), (int) Math.pow(3, 3) - 3);
943947
}
944948

949+
@Test(groups = "1s")
950+
public void testHybrid() {
951+
Model m = new Model();
952+
IntVar[] intVars = m.intVarArray(3, 0, 5);
953+
ISupportable[][] htuples = new ISupportable[][]{
954+
{eq(1), gt(2), le(col(0))},
955+
{eq(2), le(2), ne(col(1))}
956+
957+
};
958+
HybridTuples ht = new HybridTuples();
959+
ht.add(htuples);
960+
m.table(intVars, ht).post();
961+
for (int i = 0; i < 7; i++) {
962+
m.getSolver().solve();
963+
out.println(Arrays.toString(intVars));
964+
}
965+
}
966+
945967
}

0 commit comments

Comments
 (0)