Skip to content

Commit

Permalink
Link to discourse post for update messages (#1009)
Browse files Browse the repository at this point in the history
  • Loading branch information
Datseris authored Mar 15, 2024
1 parent 614d71e commit a8a097e
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 40 deletions.
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "Agents"
uuid = "46ada45e-f475-11e8-01d0-f70cc89e6671"
authors = ["George Datseris", "Tim DuBois", "Aayush Sabharwal", "Ali Vahdati", "Adriano Meligrana"]
version = "6.0.2"
version = "6.0.3"

[deps]
CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
Expand Down
49 changes: 10 additions & 39 deletions src/Agents.jl
Original file line number Diff line number Diff line change
Expand Up @@ -76,45 +76,16 @@ version_number = "6"
update_name = "update_v$(version_number)"
update_message = """
Update message: Agents v$(version_number)
Welcome to this new update of Agents.jl!
- A new `@multiagent` macro allows to run multi-agent simulations much more efficiently. It has
two version: In `:opt_speed` the created agents are optimized such as there is virtually
no performance difference between having 1 agent type at the cost of each agent occupying
more memory that in the `Union` case. In `:opt_memory` each agent is optimized to occupy practically
the same memory as the `Union` case, however this comes at a cost of performance versus having 1 type.
- A new experimental model type `EventQueueABM` has been implemented. It operates in continuous time through
the scheduling of events at arbitrary time points, in contrast with the discrete time nature of a `StandardABM`.
- Both the visualization and the model abstract interface have been refactored to improve the user
experience to conform to the Agents.jl API when creating a new model type and its visualizations.
- The functions `agent_step!` and `model_step!` should now be passed as keyword arguments
when a `StandardABM` is created. Passing those functions to the Agents.jl API functions
which support them as argument is deprecated since now they are already available inside
the model.
- A new `container` keyword can be passed during the model creation to decide the container
type of the agents inside the model. By default it is equal to `Dict`. Passing `Vector` in
a `StandardABM` instead recreates the functionality of an `UnremovableABM`, so this model
type is deprecated.
- The `@agent` macro is now THE way to create agent types for Agents.jl simulations since
now supports declaring default and constant fields. Directly creating structs by hand is
no longer mentioned in the documentation at all. This will allow us in the future to utilize
additional fields that the user does not have to know about, which may bring new features or
performance gains by being part of the agent structures. The macro has been rewritten to make it
possible to declare fields as constants. The old version still works but it's deprecated.
Refer to the documentation of the macro for the new syntax.
- Manually setting or altering the ids of agents is no longer allowed. The agent id is now considered
a read-only field, and is set internally by Agents.jl to enable hidden optimizations in the future.
- `ContinuousAgent{D}` is not a concrete type anymore. The new interface requires two parameters
`ContinuousAgent{D,T}` where `T` is any `AbstractFloat` type. If you want to use a type different
from `Float64`, you will also need to change the type of the `ContinuousSpace` extent accordingly.
Agents in `ContinuousSpace` now require `SVector` for their `pos` and `vel` fields instead of `NTuple`.
Using `NTuple`s in `ContinuousSpace` is now deprecated.
- It is now possible to create a mixed-boundary `GridSpace`s which allows to mix periodic and non-periodic dimensions
in a `GridSpace`.
- `Arrow` backend in `offline_run! is now supported` also for Windows users.
- Some new minor functionalities: `abmtime`, `swap_agents!`, `random_id_in_position`, `random_agent_in_position`.
See the online documentation for more!
This is a new major version of Agents.jl with lots of cool stuff!
However, from this version onwards, we will stop posting update messages
to the REPL console!
If you want to be updated, follow this discourse post:
https://discourse.julialang.org/t/agents-jl-v6-releases-announcement-post/111678
(and see the CHANGELOG.md file online for a list of changes!)
"""

if display_update
Expand Down

0 comments on commit a8a097e

Please sign in to comment.