Version 2.0.0 - The ``QUERY_REQUEST`` and ``QUERY_REPLY`` messages have been respectively renamed ``QUERY`` and ``ANSWER``. This pair of messages is now bidirectional (Batsim can now ask information to the scheduler). Redis interactions with this pair of messages is no longer in the protocol (as it has never been implemented). - When submitting dynamic jobs (``SUBMIT_JOB``), the ``job_id`` and ``id`` fields should now have the same value. Furthermore, jobs id are no longer integers but strings: ``my_wload!hello readers`` is now a valid job identifier. - Removal of the ``job_status`` field from ``JOB_COMPLETED`` messages. - ``JOB_COMPLETED`` messages should now be sent even for killed jobs. In this case, ``JOB_COMPLETED`` should be sent before ``JOB_KILLED``. - Added the ``--simgrid-version`` command-line option to show which SimGrid is used by Batsim. - Added the ``--unittest`` command-line option to run unit tests. Executed by Batsim's continuous integration system. - New ``SET_JOB_METADATA`` protocol message, which allows to set set metadata to jobs. Such metadata is written in the ``_jobs.csv`` output file. - The ``_schedule.csv`` output file now contains a batsim_version field. - The ``energy_query`` test checks that ``QUERY``/``ANSWER`` work as expected for the ``consumed_energy`` request. - Added the ``estimate_waiting_time`` QUERY from Batsim to the scheduler. - The ``SIMULATION_BEGINS`` message now contains information about workloads: a map from workload identifiers to their filenames. - Added the ``job_alloc`` field to ``JOB_COMPLETED`` messages, which mentions which machines have been allocated to the finished job. - The ``_jobs.csv`` output file is now written more cleanly. The order of the columns within it may have changed. Removal of the deprecated ``hacky_job_id`` field. - Numeric sort should now work as expected (this is now tested). - Power stace tracing now works when the number of machines is big. - Output buffers now work even if incoming texts are bigger than the buffer. - The ``QUERY_REQUEST``/``QUERY_REPLY`` messages were not respecting the protocol definition (probably never tested since the JSON protocol update). - Dynamically submitted jobs could not be used right away after being submitted (by the following events, or at least the events of the same timestamp). This should now be possible.