Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Start the next dev cycle
[simgrid.git] / ChangeLog
index 1dcbb44..7314ace 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,50 +1,24 @@
-SimGrid (3.31.1) NOT RELEASED YET (v3.32 expected June 21. 2022, 09:13 UTC)
+SimGrid (3.32.1) not released yet (target december 22)
 
-Python:
-  - Added the following bindings / examples:
-    - Comm (now 100% covers the C++ interface):
-      - Comm.dst_data_size, Comm.mailbox, Comm.sender, Comm.start_time, Comm.finish_time
-      - Comm.state_str [examples: examples/python/comm-failure/, examples/python/comm-host2host/]
-      - Comm.remaining [examples: examples/python/comm-host2host/, examples/python/comm-suspend/]
-      - Comm.set_payload_size [example: examples/python/comm-host2host/]
-      - Comm.set_rate [example: examples/python/comm-throttling/]
-      - Comm.sendto, Comm.sendto_init, Comm.sendto_async [example: examples/python/comm-host2host/]
-      - Comm.start, Comm.suspend, Comm.resume [example: examples/python/comm-host2host/]
-      - Comm.test_any [example: examples/python/comm-testany/]
-      - Comm.wait_until [example: examples/python/comm-waituntil/]
-    - Engine:
-      - Engine.host_by_name [example: examples/python/comm-host2host/]
-      - Engine.mailbox_by_name_or_create [example: examples/python/comm-pingpong/]
-         - Engine.set_config
-    - Mailbox: Mailbox.ready [example: examples/python/comm-ready/]
-       - Ptask [example: examples/python/exec-ptask/]:
-         - this_actor.exec_init
-         - this_actor.parallel_execute
-         - Exec.suspend
-         - Exec.wait_for
-  - Added an AssertionError exception that may be thrown in case of error.
-    For instance, creating two hosts with the same name will now throw this exception
-    instead of killing the interpreter.
+----------------------------------------------------------------------------
 
-Platform description & visualization:
-  - More robust sanity checks for platforms, to reject forbidden topologies with
-    a proper error message.
-  - New platform example: supernode.cpp and supernode.py.
-    The Python version generates a nice graphical representation of the platform.
-  - platform_graph_export_csv() dumps a platform topology to a CSV file.
-  - Bug fixes around fat-tree topologies.
+SimGrid (3.32) October 3. 2022.
+
+The Wiedervereinigung release. Germany was reunited 32 years ago.
 
 General:
-  - SimGrid now requires a compiler with C++17 support to compile the lib.
-    Our public headers still allow the user code to be compiled in C++14.
-  - Support graphviz v3 and ns-3 v3.36 (older versions are still supported).
+ - SimGrid now requires a compiler with C++17 support to compile the lib.
+   Our public headers still allow the user code to be compiled in C++14.
+ - Support graphviz v3 and ns-3 v3.36 (older versions are still supported).
+ - Tested with clang (v11, v13, v14 and v16), gcc (v7 to v13) and IntelCC v2022.2
 
 S4U:
- - kill signal Comm::on_completion that was not working anyway.
- - Expose signals Activity::on_suspend and Activity::on_resume
- - Added the xbt_enforce macro. This has the same syntax as xbt_assert, but
-   an AssertionError exception is thrown if the condition is not satisfied
-   instead of calling abort().
+ - API evolutions:
+   - kill signal Comm::on_completion that was not working anyway.
+   - Expose signals Activity::on_suspend and Activity::on_resume
+   - New macro xbt_enforce(): similar to xbt_assert(), but throws an AssertionError
+     instead of calling abort().
+   - New: s4u::Exec::get_thread_count()
  - Various cleanups around virtual machines:
    - host_by_name() and friends now only return hosts. VMs are now excluded.
    - It is now impossible to search a VM by name globally.
@@ -56,9 +30,35 @@ S4U:
    - Rename s4u::VirtualMachine::on_creation() to on_vm_creation() to
      avoid confusion with s4u:Host::on_creation() that is inherited.
      Also s4u::VirtualMachine::on_destruction -> on_vm_destruction().
- - One-sided communications (Comm::sendto) can now be detached,
-   and should now be more resilient to network and host faults.
- - New: s4u::Exec::get_thread_count()
+ - Bug fixes:
+   - One-sided communications (Comm::sendto) can now be detached,
+     and should now be more resilient to network and host faults.
+
+Python:
+ - Added the following bindings / examples:
+   - Comm (now 100% covers the C++ interface):
+     - Comm.dst_data_size, Comm.mailbox, Comm.sender, Comm.start_time, Comm.finish_time
+     - Comm.state_str [examples: examples/python/comm-failure/, examples/python/comm-host2host/]
+     - Comm.remaining [examples: examples/python/comm-host2host/, examples/python/comm-suspend/]
+     - Comm.set_payload_size [example: examples/python/comm-host2host/]
+     - Comm.set_rate [example: examples/python/comm-throttling/]
+     - Comm.sendto, Comm.sendto_init, Comm.sendto_async [example: examples/python/comm-host2host/]
+     - Comm.start, Comm.suspend, Comm.resume [example: examples/python/comm-host2host/]
+     - Comm.test_any [example: examples/python/comm-testany/]
+     - Comm.wait_until [example: examples/python/comm-waituntil/]
+   - Engine:
+     - Engine.host_by_name [example: examples/python/comm-host2host/]
+     - Engine.mailbox_by_name_or_create [example: examples/python/comm-pingpong/]
+     - Engine.set_config
+   - Mailbox: Mailbox.ready [example: examples/python/comm-ready/]
+   - Ptask [example: examples/python/exec-ptask/]:
+     - this_actor.exec_init
+     - this_actor.parallel_execute
+     - Exec.suspend
+     - Exec.wait_for
+ - Added an AssertionError exception that may be thrown in case of error.
+   For instance, creating two hosts with the same name will now throw this exception
+   instead of killing the interpreter.
 
 SMPI:
  - Implement MPI_File_get_type_extent(), MPI_File_s/get_atomicity() and
@@ -66,28 +66,33 @@ SMPI:
  - Intercept getpid() calls to return the simulated ones.
  - Fix various bugs in MPI IO.
 
-Models:
- - Fix a bug when using ptasks and multicores (FG!111).
-
-Graphicator tool:
- - Allow to dump the platform topology as a CSV file representing the edges
-   of the graph (in addition to the DOT format).
+Platform description & visualization:
+ - More robust sanity checks for platforms, to reject forbidden topologies with
+   a proper error message.
+ - New platform example: supernode.cpp and supernode.py.
+   The Python version generates a nice graphical representation of the platform.
+ - Bug fixes around fat-tree topologies.
+ - Allow to dump the platform topology as a CSV file representing the graph edges
+   with platform_graph_export_csv() (similar to the DOT export).
  - Fix graphicator for "cluster" topologies (e.g. fat-tree, dragonfly).
 
+Models:
+ - Fix a bug when using ptasks with multicores (FG!111).
+
 Model-Checker:
- - New: sthread intercepts at runtime on pthread operations, and
-   verify it formally. This code is still a PoC but may even work for you.
+ - First bits of sthread, that intercepts pthread operations at runtime.
+   The intend is to use it together with simgrid-mc, but it is TBD.
  - Sync MBI generators with upstream changes.
  - Various cosmetics, small bug fixes and inner refactorings
 
 Fixed bugs (FG#.. -> FramaGit bugs; FG!.. -> FG merge requests)
  (FG: issues on Framagit; GH: issues on GitHub)
- - FG!98: Re-enable the tests for legacy stochastic profiles
  - FG#105: "Variable penalty should not be negative!" with in-flight messages and bandwidth profiles
  - FG#109: Application time reported by --cfg=smpi/display-timing:yes is wrong
- - FG!109: Trigger new engine solve upon host events such as host on/off
  - FG#110: Wait_any does not trigger new model solve when host events occur
  - FG#111: Wrong execution time in rare cases when using multicore
+ - FG!98: Re-enable the tests for legacy stochastic profiles
+ - FG!109: Trigger new engine solve upon host events such as host on/off
  - FG!116: SMPI/replay: Fix issue with recv of size =0
 
 ----------------------------------------------------------------------------