Skip to content

Chips-n-Salsa, v7.0.0

Latest
Compare
Choose a tag to compare
@cicirello cicirello released this 01 Aug 18:35
· 49 commits to master since this release
aa684c0

[7.0.0] - 2024-08-01

Changed (BREAKING)

  • Replaced public constructors of HeuristicSolutionGenerator with factory methods (BREAKING CHANGE).
  • Replaced public constructors of HeuristicPermutationGenerator with factory methods (BREAKING CHANGE).

Changed (non-breaking)

  • Refactored and improved the following classes to utilize new functionality from the dependencies on core and rho-mu:
    • BinPacking
    • CycleAlphaMutation
    • CycleMutation
    • ScrambleMutation
    • StochasticUniversalSampling
    • TwoPointCrossover (versions for BitVectors, IntegerVectors, and RealVectors)
    • UndoableScrambleMutation
    • UndoableUniformScrambleMutation
    • UniformScrambleMutation
    • WindowLimitedScrambleMutation
    • WindowLimitedUndoableScrambleMutation
  • Refactored null reference checks.

Fixed

  • Fixed double comparison in SolutionCostPair.compareTo(SolutionCostPair).
  • Added missing equals and hashCode methods to SolutionCostPair.
  • Fixed end of line characters when writing weighted static scheduling instances to file.
  • WeightedStaticScheduling: fixed constants that should be static fields.
  • Fixed potential int overflow in average computation in AbstractWeightedSelection.
  • Fixed potential int overflow in average computation in AbstractStochasticSampler.
  • Improved BlockInterchangeIterator.rollback().
  • Performance improvement to LargestCommonSubgraph.
  • Removed unnecessary equals() and hashCode() methods from evolutionary operators.
  • Return a copy from TimedParallelMultistarter.getSearchHistory() rather than reference to field.
  • Fixed potential finalizer vulnerability (exceptions thrown from constructors) in the following classes (detected by SpotBugs):
    • AbstractHillClimber
    • AbstractStochasticSampler
    • BinPacking
    • HeuristicSolutionGenerator
    • IntegerVectorInitializer
    • OnePlusOneEvolutionaryAlgorithm
    • ParallelMetaheuristic
    • PermutationToBitVectorProblem
    • RandomValueChangeMutation
    • TimedParallelMultistarter
    • TSP

Dependencies

  • Bumped org.cicirello:rho-mu from 3.1.1 to 4.1.0
  • Bump org.cicirello:core from 2.5.0 to 2.7.0
  • Bump org.cicirello:jpt from 5.1.0 to 6.0.0

CI/CD

  • Integrated SpotBugs into build process.
  • Integrated Find Security Bugs into build process.
  • Removed support for JitPack builds, include removing JitPack configuration, workflow steps, etc.
  • Discontinued publishing a jar-with-dependencies (only a breaking change for those manually downloading library).