agentlib.core.agent (agentlib/core/agent.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/core/agent.py: Fatal error while checking 'agentlib/core/agent.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-54.txt'. |
|
| 6 | 0 | convention | ungrouped-imports |
C0412 | Imports from package threading are not grouped |
|
| 47 | 0 | convention | line-too-long |
C0301 | Line too long (120/100) |
agentlib.core.data_broker (agentlib/core/data_broker.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/core/data_broker.py: Fatal error while checking 'agentlib/core/data_broker.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-54.txt'. |
agentlib.core.datamodels (agentlib/core/datamodels.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/core/datamodels.py: Fatal error while checking 'agentlib/core/datamodels.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-55.txt'. |
|
| 6 | 0 | convention | ungrouped-imports |
C0412 | Imports from package abc are not grouped |
|
| 8 | 0 | convention | ungrouped-imports |
C0412 | Imports from package json are not grouped |
|
| 9 | 0 | convention | ungrouped-imports |
C0412 | Imports from package logging are not grouped |
|
| 12 | 0 | convention | ungrouped-imports |
C0412 | Imports from package copy are not grouped |
agentlib.core.environment (agentlib/core/environment.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/core/environment.py: Fatal error while checking 'agentlib/core/environment.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-55.txt'. |
|
| 28 | 0 | convention | ungrouped-imports |
C0412 | Imports from package json are not grouped |
|
| 31 | 0 | convention | ungrouped-imports |
C0412 | Imports from package pathlib are not grouped |
agentlib.core.logging_ (agentlib/core/logging_.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/core/logging_.py: Fatal error while checking 'agentlib/core/logging_.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-55.txt'. |
|
| 1 | 0 | convention | ungrouped-imports |
C0412 | Imports from package logging are not grouped |
agentlib.core.model (agentlib/core/model.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/core/model.py: Fatal error while checking 'agentlib/core/model.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-56.txt'. |
|
| 3 | 0 | convention | ungrouped-imports |
C0412 | Imports from package abc are not grouped |
|
| 5 | 0 | convention | ungrouped-imports |
C0412 | Imports from package json are not grouped |
|
| 6 | 0 | convention | ungrouped-imports |
C0412 | Imports from package logging are not grouped |
|
| 7 | 0 | convention | ungrouped-imports |
C0412 | Imports from package copy are not grouped |
|
| 8 | 0 | convention | ungrouped-imports |
C0412 | Imports from package itertools are not grouped |
|
| 87 | 0 | convention | line-too-long |
C0301 | Line too long (106/100) |
|
| 254 | 0 | convention | line-too-long |
C0301 | Line too long (118/100) |
agentlib.core.module (agentlib/core/module.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/core/module.py: Fatal error while checking 'agentlib/core/module.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-55.txt'. |
|
| 5 | 0 | convention | ungrouped-imports |
C0412 | Imports from package abc are not grouped |
|
| 6 | 0 | convention | ungrouped-imports |
C0412 | Imports from package json are not grouped |
|
| 7 | 0 | convention | ungrouped-imports |
C0412 | Imports from package logging are not grouped |
|
| 8 | 0 | convention | ungrouped-imports |
C0412 | Imports from package copy are not grouped |
agentlib.models.fmu_model (agentlib/models/fmu_model.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/models/fmu_model.py: Fatal error while checking 'agentlib/models/fmu_model.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-52.txt'. |
|
| 6 | 0 | convention | ungrouped-imports |
C0412 | Imports from package logging are not grouped |
agentlib.models.scipy_model (agentlib/models/scipy_model.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/models/scipy_model.py: Fatal error while checking 'agentlib/models/scipy_model.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-52.txt'. |
|
| 35 | 0 | refactor | useless-option-value |
R0022 | Useless option value for 'disable', 'no-self-use' was moved to an optional extension, see https://pylint.readthedocs.io/en/latest/whatsnew/2/2.14/summary.html#removed-checkers. |
agentlib.modules.__init__ (agentlib/modules/__init__.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/__init__.py: Fatal error while checking 'agentlib/modules/__init__.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-56.txt'. |
agentlib.modules.communicator.clonemap (agentlib/modules/communicator/clonemap.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/communicator/clonemap.py: Fatal error while checking 'agentlib/modules/communicator/clonemap.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-56.txt'. |
agentlib.modules.communicator.communicator (agentlib/modules/communicator/communicator.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/communicator/communicator.py: Fatal error while checking 'agentlib/modules/communicator/communicator.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-48.txt'. |
agentlib.modules.communicator.local (agentlib/modules/communicator/local.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 11 | 0 | convention | missing-class-docstring |
C0115 | LocalSubscriptionCommunicatorConfig | Missing class docstring |
| 33 | 4 | convention | missing-function-docstring |
C0116 | LocalClient.subscriptions | Missing function or method docstring |
agentlib.modules.communicator.local_broadcast (agentlib/modules/communicator/local_broadcast.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
agentlib.modules.communicator.local_multiprocessing (agentlib/modules/communicator/local_multiprocessing.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 5 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 6 | 0 | convention | wrong-import-order |
C0411 | standard import "from ipaddress import IPv4Address" should be placed before "from pydantic import Field" |
|
| 18 | 0 | convention | missing-class-docstring |
C0115 | MultiProcessingBroadcastClientConfig | Missing class docstring |
| 50 | 16 | error | no-member |
E1101 | MultiProcessingBroadcastClient.__init__ | Instance of 'BrokerManager' has no 'connect' member |
| 57 | 23 | error | no-member |
E1101 | MultiProcessingBroadcastClient.__init__ | Instance of 'BrokerManager' has no 'get_queue' member |
| 91 | 12 | warning | logging-fstring-interpolation |
W1203 | MultiProcessingBroadcastClient._message_handler | Use lazy % formatting in logging functions |
agentlib.modules.communicator.mqtt (agentlib/modules/communicator/mqtt.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/communicator/mqtt.py: Fatal error while checking 'agentlib/modules/communicator/mqtt.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-57.txt'. |
agentlib.modules.controller (agentlib/modules/controller/__init__.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
agentlib.modules.controller.bangbang (agentlib/modules/controller/bangbang.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 48 | 4 | refactor | inconsistent-return-statements |
R1710 | BangBang.do_step | Either all return statements in a function should return an expression, or none of them should. |
agentlib.modules.controller.controller (agentlib/modules/controller/controller.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/controller/controller.py: Fatal error while checking 'agentlib/modules/controller/controller.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-57.txt'. |
agentlib.modules.controller.pid (agentlib/modules/controller/pid.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/controller/pid.py: Fatal error while checking 'agentlib/modules/controller/pid.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-57.txt'. |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.bangbang_with_simulator:[53:98]
==examples.controller.pid_with_simulator:[67:112]
}
process_agent_config = {
"id": "Process",
"modules": [
{
"module_id": "sim",
"type": "simulator",
"model": {"type": {"file": __file__, "class_name": "HeatedRoom"}},
"t_sample": 10,
"inputs": [
{"name": "heating_power_in_watt", "value": 0, "alias": "heating_power"}
],
"states": [
{
"name": "temperature_in_celsius",
"value": 21,
"shared": True,
"alias": "room_temp",
}
],
},
{"module_id": "myLogger", "type": "AgentLogger"},
{"module_id": "myComm", "type": "local", "subscriptions": ["PID"]},
],
}
def run_example(with_plots=True, log_level=logging.INFO):
# Set the log-level
logging.basicConfig(level=log_level)
env_config = {"rt": False, "factor": 0.01, "clock": True, "t_sample": 60}
env = ag.Environment(config=env_config)
pid_agent = ag.Agent(config=pid_agent_config, env=env)
process_agent = ag.Agent(config=process_agent_config, env=env)
env.run(until=1000)
results = process_agent.get_results()
res = results["myLogger"]
if with_plots:
import matplotlib.pyplot as plt
fig, ax = plt.subplots(2, 1)
res["room_temp"].plot(ax=ax[0], label="$T_{room}$") |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_3_using_models_concise:[9:57]
==part_3_using_models_with_comments:[27:97]
import logging
from typing import List
import agentlib as ag
class HeatedRoomConfig(ag.ModelConfig):
inputs: List[ag.ModelInput] = [
ag.ModelInput(name="heating_power_in_watt", value=100)
]
states: List[ag.ModelState] = [
ag.ModelState(name="temperature_in_celsius", value=20)
]
parameters: List[ag.ModelParameter] = [
ag.ModelParameter(name="heat_loss_in_watt", value=150),
ag.ModelParameter(name="thermal_capacity_zone", value=100_000),
]
outputs: List[ag.ModelOutput] = []
class HeatedRoom(ag.Model):
config: HeatedRoomConfig
def initialize(self, **kwargs):
pass
def do_step(self, *, t_start, t_sample):
t = self.get("temperature_in_celsius").value # get/set also works in models
power = self.get("heating_power_in_watt").value
loss = self.get("heat_loss_in_watt").value
capacity = self.get("thermal_capacity_zone").value
t = t + ((power - loss) / capacity) * t_sample
self.set("temperature_in_celsius", t)
agent_config = {
"id": "my_agent_id",
"modules": [
{
"module_id": "sim",
"type": "simulator",
"model": {
"type": {"file": __file__, "class_name": "HeatedRoom"},
},
"t_sample": 10,
"save_results": True,
"result_filename": "results_part3.csv",
"result_causalities": ["local"], |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.bangbang_with_simulator:[0:36]
==examples.controller.pid_with_simulator:[11:47]
import logging
from typing import List
import agentlib as ag
class HeatedRoomConfig(ag.ModelConfig):
inputs: List[ag.ModelInput] = [
ag.ModelInput(name="heating_power_in_watt", value=100)
]
states: List[ag.ModelState] = [
ag.ModelState(name="temperature_in_celsius", value=20)
]
parameters: List[ag.ModelParameter] = [
ag.ModelParameter(name="heat_loss_in_watt", value=150),
ag.ModelParameter(name="thermal_capacity_zone", value=100_000),
]
class HeatedRoom(ag.Model):
config: HeatedRoomConfig
def initialize(self, **kwargs):
pass
def do_step(self, *, t_start, t_sample):
t = self.get("temperature_in_celsius").value
power = self.get("heating_power_in_watt").value
loss = self.get("heat_loss_in_watt").value
capacity = self.get("thermal_capacity_zone").value
t = t + ((power - loss) / capacity) * t_sample
self.set("temperature_in_celsius", t)
pid_agent_config = {
"id": "PID", |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_2_agentvariables_concise:[10:45]
==part_2_agentvariables_with_comments:[10:72]
import logging
import agentlib as ag
class MyModuleConfig(ag.BaseModuleConfig):
increment: float = 0.5
my_number: ag.AgentVariable
class MyModule(ag.BaseModule):
config: MyModuleConfig
def process(self):
# the .name attribute of an AgentVariable is also accessible. Here, we define
# a local variable for convenience
name_of_my_number = self.config.my_number.name
while True:
# we can access the AgentVariable by its name with the .get() method,
# defined in the BaseModule and available through inheritance.
# We accessed the AgentVariable - specifically its name attribute - above
# through the config. However that is a static copy. With the get() method,
# we obtain the variable with its current value.
my_number = self.get(name_of_my_number)
# we access the variables value, and add our predefined number to it. It
# is easy to forget you need to access the value, since the get() method
# returns the whole AgentVariable.
new_value = my_number.value + self.config.increment
# Now we log what we did, to confirm it is working.
self.logger.info(
f"I will change the value of '{name_of_my_number}' from {my_number.value} to {new_value}."
)
# The set method will write the new value of our variable. Using the set
# method notifies other modules, that we changed the value of this variable.
# If we were to just assign a value to the variable that we retrieved with
# get(), it would not be remembered for the next time, and cannot be used
# by other modules.
self.set(name_of_my_number, new_value)
yield self.env.timeout(1)
def register_callbacks(self):
pass
agent_config = {
"id": "my_agent_id",
"modules": [
{
"type": {"file": __file__, "class_name": "MyModule"},
# when specifying fields of a module config that represent AgentVariables,
# we have to provide more than just a value. The 'name' key is always
# required. The 'value' key is not required and will default to None.
# However, it often results in TypeErrors within the Module, if the value
# is None, and depends on the specific code where the variable is used.
"my_number": {"name": "greg", "value": 5},
},
# We define a second module in this agent, which will log the value of
# AgentVariables. |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_3_using_models_with_comments:[27:64]
==part_4_communicators_with_comments:[10:48]
import logging
from typing import List
import agentlib as ag
# the model is the same as in example three
class HeatedRoomConfig(ag.ModelConfig):
inputs: List[ag.ModelInput] = [
ag.ModelInput(name="heating_power_in_watt", value=100)
]
states: List[ag.ModelState] = [
ag.ModelState(name="temperature_in_celsius", value=20)
]
parameters: List[ag.ModelParameter] = [
ag.ModelParameter(name="heat_loss_in_watt", value=150),
ag.ModelParameter(name="thermal_capacity_zone", value=100_000),
]
outputs: List[ag.ModelOutput] = []
class HeatedRoom(ag.Model):
config: HeatedRoomConfig
def initialize(self, **kwargs):
pass
def do_step(self, *, t_start, t_sample):
t = self.get("temperature_in_celsius").value # get/set also works in models
power = self.get("heating_power_in_watt").value
loss = self.get("heat_loss_in_watt").value
capacity = self.get("thermal_capacity_zone").value
t = t + ((power - loss) / capacity) * t_sample
self.set("temperature_in_celsius", t)
# here, we have a similar configuration as last time, however, there are differences in
# the variable declarations |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_1_my_first_agent_concise:[25:54]
==part_1_my_first_agent_with_comments:[29:91]
while True:
# we can access the attributes from the config we defined above like this
self.logger.info(f"I am {self.config.name} with age {self.config.age}.")
yield self.env.timeout(1) # timeout is in seconds
def register_callbacks(self):
# we will learn about callbacks later
pass
# the config of an agent can be a python dict or a JSON-file
# the config has two keys: id and modules
agent_config = {
# the id is the public name of the agent. It will become later, when using
# communicators. It is also displayed in log messages.
"id": "my_agent_id",
# second comes a list of modules, which define the function of the agent. Usually,
# an agent has a communicator and a functional module, but in fact, any
# combination of modules is possible.
# In this example, there is no communication with other agents, so we only have one
# module
"modules": [
{
# the type key defines the class of a module and is always required
# There are two ways to specify the type
# 1. Use a module from the core, or a plugin. You only need to write down
# the string-key which maps to it.
# 2. Use a custom module. Under type, write down a dict, pointing to the
# exact python class you want to execute.
# In our example, we use option two, to load the module defined above.
"type": {"file": __file__, "class_name": "MyFirstModule"},
# on the same level as type, the remaining configuration of the module has
# to be done. For our module defined above, we defined a 'name' field which
# we now have to specify
"name": "first_agent",
}
],
}
def main():
# We have to make sure, our log level is set to INFO, otherwise, our process
# defined above will not print anything
logging.basicConfig(level=logging.INFO)
# every agent runs in an environment. The environment has four keys:
# 1. 'rt': If True, the code will run in realtime
# 2. 'factor': Speed up realtime if <1, slow down if >1. Ignored if 'rt' is False
# 3. 'clock': If True, periodically print the current simulation time
# 4. 't_sample': Intervall for the clock. 3 and 4 only affect logs, not results
environment_config = {"rt": False, "factor": 1, "clock": False, "t_sample": 60}
env = ag.Environment(config=environment_config)
# create the agent. Multiple agents can be created with the same environment.
agent = ag.Agent(config=agent_config, env=env)
# runs the environment for 10 seconds, starting the agent
env.run(10)
if __name__ == "__main__":
main() |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_3_using_models_concise:[59:84]
==part_3_using_models_with_comments:[103:139]
},
],
}
def main(with_plots: bool = True):
logging.basicConfig(level=logging.INFO)
environment_config = {"rt": False, "factor": 1, "clock": False}
# we use the LocalMASAgency class to start our agent
# It can be passed a list of agent configs, and an environment config and will run
# all agents in this environment
mas = ag.LocalMASAgency(agent_configs=[agent_config], env=environment_config)
# the run command now is part of the mas
mas.run(1800)
if with_plots:
import matplotlib.pyplot as plt
import pandas as pd
# there is also a results function for the MAS, we can get agents with their id
results = mas.get_results()["my_agent_id"]
# key here is the module_id of the simulator
logger_results: pd.DataFrame = results["sim"]
# key is name of the variable (it's actually the alias, more on this later!)
logger_results["temperature_in_celsius"].plot()
plt.ylabel("Temperature / °C")
plt.xlabel("Time / sec")
plt.show()
if __name__ == "__main__":
main() |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_2_agentvariables_concise:[46:74]
==part_2_agentvariables_with_comments:[85:120]
],
}
def main(with_plots: bool = True):
logging.basicConfig(level=logging.INFO)
environment_config = {"rt": False, "factor": 1, "clock": False}
env = ag.Environment(config=environment_config)
agent = ag.Agent(config=agent_config, env=env)
env.run(10)
if with_plots:
import matplotlib.pyplot as plt
import pandas as pd
results = agent.get_results()
# key here is the module_id of the agentlogger
logger_results: pd.DataFrame = results["my_logger"]
# key is name of the variable (it's actually the alias, more on this later!)
logger_results["greg"].plot()
plt.show()
if __name__ == "__main__":
main() |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.pid_with_simulator:[11:30]
==part_3_using_models_with_comments:[27:45]
import logging
from typing import List
import agentlib as ag
class HeatedRoomConfig(ag.ModelConfig):
inputs: List[ag.ModelInput] = [
ag.ModelInput(name="heating_power_in_watt", value=100)
]
states: List[ag.ModelState] = [
ag.ModelState(name="temperature_in_celsius", value=20)
]
parameters: List[ag.ModelParameter] = [
ag.ModelParameter(name="heat_loss_in_watt", value=150),
ag.ModelParameter(name="thermal_capacity_zone", value=100_000),
]
|
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.bangbang_with_simulator:[0:19]
==part_4_communicators_with_comments:[10:28]
import logging
from typing import List
import agentlib as ag
# the model is the same as in example three
class HeatedRoomConfig(ag.ModelConfig):
inputs: List[ag.ModelInput] = [
ag.ModelInput(name="heating_power_in_watt", value=100)
]
states: List[ag.ModelState] = [
ag.ModelState(name="temperature_in_celsius", value=20)
]
parameters: List[ag.ModelParameter] = [
ag.ModelParameter(name="heat_loss_in_watt", value=150),
ag.ModelParameter(name="thermal_capacity_zone", value=100_000),
] |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_3_using_models_with_comments:[118:139]
==part_4_communicators_with_comments:[141:157]
mas.run(1800)
if with_plots:
import matplotlib.pyplot as plt
import pandas as pd
# there is also a results function for the MAS, we can get agents with their id
results = mas.get_results()["my_agent_id"]
# key here is the module_id of the simulator
logger_results: pd.DataFrame = results["sim"]
# key is name of the variable (it's actually the alias, more on this later!)
logger_results["temperature_in_celsius"].plot()
plt.ylabel("Temperature / °C")
plt.xlabel("Time / sec")
plt.show()
if __name__ == "__main__":
main() |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_3_using_models_with_comments:[66:98]
==part_4_communicators_with_comments:[50:72]
"modules": [
{
"module_id": "sim",
"type": "simulator",
"model": {
"type": {"file": __file__, "class_name": "HeatedRoom"},
},
"t_sample": 10,
"save_results": True,
"result_filename": "results_part3.csv",
"result_causalities": ["local"],
"inputs": [
# notice that we now included an alias in the declaration of the
# heating power. The alias is the public name of a variable, which is
# used for communication. The name is important for the
# internal workings of a module. In this case, the alias has to match
# with the other agent for communication, while the name has to match
# with our model implementation.
# If you do not declare an alias, it will be set to the name. You will
# see many examples, where this is the case. However it is often useful
# to be explicit about the alias, to better understand the
# communication structure of a an agent system |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.pid_with_simulator:[45:56]
==part_4_communicators_with_comments:[95:114]
pid_agent_config = {
"id": "PID", # the ID here matches, what we subscribed to in the process agent
"modules": [
{
"module_id": "myPid",
"type": "pid", # pid is the key, to configure the standard PID module
"setpoint": 21,
"Kp": 1000,
"Ti": 10,
"lb": 0,
"ub": 500,
# the PID takes one input and one output, which in control terms are usually
# u and y. We define the aliases to match the alias in the process agent,
# while leaving the local names as u and y. Note that we also included the
# source key here, which is an additional filter. The input will only be
# updated, if it is sent from an agent with matching source. If the source
# is not specified, the agent will update the input with any variable that
# has a matching alias, from any agent. You will not see the source in many
# examples, however it can be a helpful filter in large mas. |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_3_using_models_concise:[46:57]
==part_4_communicators_with_comments:[50:61]
"modules": [
{
"module_id": "sim",
"type": "simulator",
"model": {
"type": {"file": __file__, "class_name": "HeatedRoom"},
},
"t_sample": 10,
"save_results": True,
"result_filename": "results_part3.csv",
"result_causalities": ["local"], |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.multi-agent-systems.pingpong.pingpong_local_broadcast:[22:32]
==examples.multi-agent-systems.pingpong.pingpong_mqtt:[18:28]
{
"module_id": "Ping",
"type": {"file": pingpong_module.__file__, "class_name": "PingPong"},
"start": True,
},
],
}
agent_config2 = {
"id": "SecondAgent",
"modules": [ |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.pid_with_simulator:[30:45]
==part_3_using_models_with_comments:[48:64]
class HeatedRoom(ag.Model):
config: HeatedRoomConfig # match the config to the model
def initialize(self, **kwargs):
pass
# define a discrete simulation step
def do_step(self, *, t_start, t_sample):
t = self.get("temperature_in_celsius").value # get/set also works in models
power = self.get("heating_power_in_watt").value
loss = self.get("heat_loss_in_watt").value
capacity = self.get("thermal_capacity_zone").value
t = t + ((power - loss) / capacity) * t_sample
self.set("temperature_in_celsius", t)
|
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.bangbang_with_simulator:[19:34]
==part_4_communicators_with_comments:[31:48]
class HeatedRoom(ag.Model):
config: HeatedRoomConfig
def initialize(self, **kwargs):
pass
def do_step(self, *, t_start, t_sample):
t = self.get("temperature_in_celsius").value
power = self.get("heating_power_in_watt").value
loss = self.get("heat_loss_in_watt").value
capacity = self.get("thermal_capacity_zone").value
t = t + ((power - loss) / capacity) * t_sample
self.set("temperature_in_celsius", t)
|
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.multi-agent-systems.pingpong.pingpong_local:[25:37]
==examples.multi-agent-systems.pingpong.pingpong_mqtt:[34:46]
{
"module_id": "Pong",
"type": {"file": pingpong_module.__file__, "class_name": "PingPong"},
},
],
}
if __name__ == "__main__":
# Add configs to LocalMAS Agency
MAS = LocalMASAgency(agent_configs=[agent_config1, agent_config2], env=env_config)
MAS.run(until=None) |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.bangbang_with_simulator:[42:50]
==examples.controller.pid_with_simulator:[56:64]
"input": {"name": "u", "value": 0, "alias": "room_temp"},
"output": {
"name": "y",
"value": 0,
"alias": "heating_power",
"shared": True,
},
}, |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.bangbang_with_simulator:[101:110]
==examples.controller.pid_with_simulator:[113:122]
res["heating_power"].plot(ax=ax[1], label="$\dot{Q}_{heat}$")
ax[0].legend()
ax[1].legend()
plt.show()
return {"PID_1": results}
if __name__ == "__main__":
run_example(log_level="INFO") |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==tests.test_agent:[243:251]
==tests.test_environment:[61:69]
try:
os.remove(self.filepath)
except FileNotFoundError:
pass
if __name__ == "__main__":
unittest.main() |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==tests.test_communicator:[12:18]
==tests.test_module:[27:33]
"allowed_values": [100, 150],
"shared": True,
"unit": "testUnit",
"description": "My Doc",
"clip": True,
"rdf_class": "MyRDFClass", |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.controller.bangbang_with_simulator:[55:61]
==part_4_communicators_with_comments:[48:54]
process_agent_config = {
"id": "Process",
"modules": [
{
"module_id": "sim",
"type": "simulator", |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_1_my_first_agent_concise:[27:37]
==part_2_agentvariables_concise:[32:42]
yield self.env.timeout(1)
def register_callbacks(self):
pass
agent_config = {
"id": "my_agent_id",
"modules": [
{ |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_1_my_first_agent_with_comments:[32:59]
==part_2_agentvariables_with_comments:[52:62]
yield self.env.timeout(1)
def register_callbacks(self):
pass
agent_config = {
"id": "my_agent_id",
"modules": [
{ |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==part_1_my_first_agent_concise:[11:22]
==part_1_my_first_agent_with_comments:[11:23]
import logging
import agentlib as ag
class MyFirstModuleConfig(ag.BaseModuleConfig):
name: str
age: int = 2
class MyFirstModule(ag.BaseModule): |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==examples.multi-agent-systems.pingpong.pingpong_mqtt:[5:12]
==examples.multi-agent-systems.pingpong.pingpong_multiprocessing:[15:23]
logging.basicConfig(level="DEBUG")
logger = logging.getLogger(__name__)
env_config = {"rt": True, "factor": 1}
agent_config1 = {
"id": "FirstAgent",
"modules": [ |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files
==tests.test_agentlogger:[23:31]
==tests.test_simulator:[60:68]
env_config = {"rt": False, "factor": 1}
agent_config = {"id": "TestAgent", "modules": []}
env = Environment(config=env_config)
return Agent(env=env, config=agent_config)
def _get_module_cfg(self, **kwargs):
"""Dynamically build config to avoid duplicate code:"""
return { |
|
| 1 | 0 | refactor | duplicate-code |
R0801 | Similar lines in 2 files ==examples.multi-agent-systems.pingpong.pingpong_local:[0:7] ==examples.multi-agent-systems.pingpong.pingpong_mqtt:[0:8] import logging import pingpong_module from agentlib.utils.multi_agent_system import LocalMASAgency logging.basicConfig(level="DEBUG") logger = logging.getLogger(__name__) |
agentlib.modules.simulation (agentlib/modules/simulation/__init__.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
agentlib.modules.simulation.csv_data_source (agentlib/modules/simulation/csv_data_source.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/simulation/csv_data_source.py: Fatal error while checking 'agentlib/modules/simulation/csv_data_source.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-57.txt'. |
|
| 182 | 0 | convention | line-too-long |
C0301 | Line too long (108/100) |
agentlib.modules.simulation.simulator (agentlib/modules/simulation/simulator.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/simulation/simulator.py: Fatal error while checking 'agentlib/modules/simulation/simulator.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-48.txt'. |
agentlib.modules.utils.agent_logger (agentlib/modules/utils/agent_logger.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/utils/agent_logger.py: Fatal error while checking 'agentlib/modules/utils/agent_logger.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-56.txt'. |
|
| 45 | 0 | convention | line-too-long |
C0301 | Line too long (106/100) |
|
| 50 | 0 | convention | line-too-long |
C0301 | Line too long (111/100) |
|
| 57 | 0 | refactor | useless-option-value |
R0022 | Useless option value for 'disable', 'no-self-use' was moved to an optional extension, see https://pylint.readthedocs.io/en/latest/whatsnew/2/2.14/summary.html#removed-checkers. |
agentlib.modules.utils.try_sensor (agentlib/modules/utils/try_sensor.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/modules/utils/try_sensor.py: Fatal error while checking 'agentlib/modules/utils/try_sensor.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-56.txt'. |
agentlib.utils (agentlib/utils/__init__.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 12 | 0 | convention | ungrouped-imports |
C0412 | Imports from package pathlib are not grouped |
|
| 85 | 8 | warning | raise-missing-from |
W0707 | custom_injection | Consider explicitly re-raising using 'except KeyError as exc' and 'raise ImportError(f"Given module '{custom_module}' does not contain the specified class {class_name}") from exc' |
agentlib.utils.fuzzy_matching (agentlib/utils/fuzzy_matching.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/fuzzy_matching.py: Fatal error while checking 'agentlib/utils/fuzzy_matching.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-53.txt'. |
agentlib.utils.load_config (agentlib/utils/load_config.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/load_config.py: Fatal error while checking 'agentlib/utils/load_config.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-52.txt'. |
agentlib.utils.local_broadcast_broker (agentlib/utils/local_broadcast_broker.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/local_broadcast_broker.py: Fatal error while checking 'agentlib/utils/local_broadcast_broker.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-53.txt'. |
agentlib.utils.local_broker (agentlib/utils/local_broker.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/local_broker.py: Fatal error while checking 'agentlib/utils/local_broker.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-53.txt'. |
agentlib.utils.multi_agent_system (agentlib/utils/multi_agent_system.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/multi_agent_system.py: Fatal error while checking 'agentlib/utils/multi_agent_system.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-53.txt'. |
|
| 219 | 0 | convention | line-too-long |
C0301 | Line too long (107/100) |
agentlib.utils.multi_processing_broker (agentlib/utils/multi_processing_broker.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/multi_processing_broker.py: Fatal error while checking 'agentlib/utils/multi_processing_broker.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-53.txt'. |
|
| 6 | 0 | convention | ungrouped-imports |
C0412 | Imports from package json are not grouped |
agentlib.utils.plotting.simulator_dashboard (agentlib/utils/plotting/simulator_dashboard.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/plotting/simulator_dashboard.py: Fatal error while checking 'agentlib/utils/plotting/simulator_dashboard.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-54.txt'. |
|
| 5 | 0 | convention | ungrouped-imports |
C0412 | Imports from package pathlib are not grouped |
agentlib.utils.plugin_import (agentlib/utils/plugin_import.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 6 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 31 | 0 | warning | unused-argument |
W0613 | SaveUpdateDict.update | Unused argument 'kwargs' |
| 72 | 8 | warning | raise-missing-from |
W0707 | load_plugin | Consider explicitly re-raising using 'except AttributeError as exc' and 'raise ImportError(f"Plugin '{name}' has no dictionary called '{plugin_types_name}' to import plugin types.") from exc' |
agentlib.utils.validators (agentlib/utils/validators.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | agentlib/utils/validators.py: Fatal error while checking 'agentlib/utils/validators.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-53.txt'. |
tools (docs/source/manual_labor/tools.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | error | import-error |
E0401 | Unable to import 'attrs' |
|
| 5 | 0 | convention | missing-function-docstring |
C0116 | make_table_for_agent_variable | Missing function or method docstring |
| 12 | 9 | warning | unspecified-encoding |
W1514 | make_table_for_agent_variable | Using open without explicitly specifying an encoding |
| 12 | 43 | convention | invalid-name |
C0103 | make_table_for_agent_variable | Variable name "f" doesn't conform to snake_case naming style |
mqtt (examples/communicator/mqtt.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 3 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 29 | 4 | convention | missing-function-docstring |
C0116 | callback | Missing function or method docstring |
| 32 | 4 | convention | missing-function-docstring |
C0116 | simulated_output | Missing function or method docstring |
| 33 | 14 | error | no-member |
E1101 | simulated_output | Instance of 'Environment' has no 'timeout' member |
| 38 | 29 | error | no-member |
E1101 | simulated_output | Instance of 'Environment' has no 'now' member |
| 43 | 18 | error | no-member |
E1101 | simulated_output | Instance of 'Environment' has no 'timeout' member |
examples.controller.bangbang_with_simulator (examples/controller/bangbang_with_simulator.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | examples/controller/bangbang_with_simulator.py: Fatal error while checking 'examples/controller/bangbang_with_simulator.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-50.txt'. |
|
| 102 | 52 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\d'. String constant might be missing an r prefix. |
examples.controller.pid_with_simulator (examples/controller/pid_with_simulator.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | examples/controller/pid_with_simulator.py: Fatal error while checking 'examples/controller/pid_with_simulator.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-50.txt'. |
|
| 114 | 52 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\d'. String constant might be missing an r prefix. |
part_1_my_first_agent_concise (examples/getting-started/part_1_my_first_agent_concise.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 17 | 0 | convention | missing-class-docstring |
C0115 | MyFirstModuleConfig | Missing class docstring |
| 22 | 0 | convention | missing-class-docstring |
C0115 | MyFirstModule | Missing class docstring |
| 27 | 12 | warning | logging-fstring-interpolation |
W1203 | MyFirstModule.process | Use lazy % formatting in logging functions |
| 45 | 0 | convention | missing-function-docstring |
C0116 | main | Missing function or method docstring |
| 49 | 4 | warning | unused-variable |
W0612 | main | Unused variable 'agent' |
| 50 | 4 | error | no-member |
E1101 | main | Instance of 'Environment' has no 'run' member |
part_1_my_first_agent_with_comments (examples/getting-started/part_1_my_first_agent_with_comments.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 18 | 0 | convention | missing-class-docstring |
C0115 | MyFirstModuleConfig | Missing class docstring |
| 23 | 0 | convention | missing-class-docstring |
C0115 | MyFirstModule | Missing class docstring |
| 32 | 12 | warning | logging-fstring-interpolation |
W1203 | MyFirstModule.process | Use lazy % formatting in logging functions |
| 70 | 0 | convention | missing-function-docstring |
C0116 | main | Missing function or method docstring |
| 84 | 4 | warning | unused-variable |
W0612 | main | Unused variable 'agent' |
| 87 | 4 | error | no-member |
E1101 | main | Instance of 'Environment' has no 'run' member |
part_2_agentvariables_concise (examples/getting-started/part_2_agentvariables_concise.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 16 | 0 | convention | missing-class-docstring |
C0115 | MyModuleConfig | Missing class docstring |
| 21 | 0 | convention | missing-class-docstring |
C0115 | MyModule | Missing class docstring |
| 29 | 12 | warning | logging-fstring-interpolation |
W1203 | MyModule.process | Use lazy % formatting in logging functions |
| 30 | 0 | convention | line-too-long |
C0301 | Line too long (106/100) |
|
| 51 | 0 | convention | missing-function-docstring |
C0116 | main | Missing function or method docstring |
| 57 | 4 | error | no-member |
E1101 | main | Instance of 'Environment' has no 'run' member |
| 60 | 8 | convention | import-outside-toplevel |
C0415 | main | Import outside toplevel (matplotlib.pyplot) |
| 60 | 8 | error | import-error |
E0401 | main | Unable to import 'matplotlib.pyplot' |
| 61 | 8 | convention | import-outside-toplevel |
C0415 | main | Import outside toplevel (pandas) |
| 61 | 8 | error | import-error |
E0401 | main | Unable to import 'pandas' |
part_2_agentvariables_with_comments (examples/getting-started/part_2_agentvariables_with_comments.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 16 | 0 | convention | missing-class-docstring |
C0115 | MyModuleConfig | Missing class docstring |
| 21 | 0 | convention | missing-class-docstring |
C0115 | MyModule | Missing class docstring |
| 43 | 12 | warning | logging-fstring-interpolation |
W1203 | MyModule.process | Use lazy % formatting in logging functions |
| 44 | 0 | convention | line-too-long |
C0301 | Line too long (106/100) |
|
| 90 | 0 | convention | missing-function-docstring |
C0116 | main | Missing function or method docstring |
| 96 | 4 | error | no-member |
E1101 | main | Instance of 'Environment' has no 'run' member |
| 99 | 8 | convention | import-outside-toplevel |
C0415 | main | Import outside toplevel (matplotlib.pyplot) |
| 99 | 8 | error | import-error |
E0401 | main | Unable to import 'matplotlib.pyplot' |
| 100 | 8 | convention | import-outside-toplevel |
C0415 | main | Import outside toplevel (pandas) |
| 100 | 8 | error | import-error |
E0401 | main | Unable to import 'pandas' |
| 121 | 4 | convention | missing-function-docstring |
C0116 | alternate_process | Missing function or method docstring |
part_3_using_models_concise (examples/getting-started/part_3_using_models_concise.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | examples/getting-started/part_3_using_models_concise.py: Fatal error while checking 'examples/getting-started/part_3_using_models_concise.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-49.txt'. |
part_3_using_models_with_comments (examples/getting-started/part_3_using_models_with_comments.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | examples/getting-started/part_3_using_models_with_comments.py: Fatal error while checking 'examples/getting-started/part_3_using_models_with_comments.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-49.txt'. |
|
| 147 | 0 | convention | line-too-long |
C0301 | Line too long (117/100) |
part_4_communicators_with_comments (examples/getting-started/part_4_communicators_with_comments.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | examples/getting-started/part_4_communicators_with_comments.py: Fatal error while checking 'examples/getting-started/part_4_communicators_with_comments.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-49.txt'. |
scipy_example (examples/models/scipy/scipy_example.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 4 | 0 | convention | line-too-long |
C0301 | Line too long (114/100) |
|
| 9 | 0 | convention | invalid-name |
C0103 | Constant name "C_p" doesn't conform to UPPER_CASE naming style |
|
| 43 | 0 | convention | missing-function-docstring |
C0116 | run_example | Missing function or method docstring |
| 53 | 8 | convention | import-outside-toplevel |
C0415 | run_example | Import outside toplevel (matplotlib.pyplot) |
| 53 | 8 | error | import-error |
E0401 | run_example | Unable to import 'matplotlib.pyplot' |
examples.multi-agent-systems.pingpong.pingpong_clonemap (examples/multi-agent-systems/pingpong/pingpong_clonemap.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 6 | 17 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\e'. String constant might be missing an r prefix. |
|
| 6 | 26 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\m'. String constant might be missing an r prefix. |
|
| 6 | 46 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\p'. String constant might be missing an r prefix. |
|
| 6 | 55 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\D'. String constant might be missing an r prefix. |
|
| 11 | 0 | error | import-error |
E0401 | Unable to import 'requests' |
|
| 12 | 0 | convention | wrong-import-order |
C0411 | standard import "from pathlib import Path" should be placed before "import requests" |
|
| 16 | 4 | refactor | consider-using-from-import |
R0402 | Use 'from clonemapy import ams' instead |
|
| 16 | 4 | error | import-error |
E0401 | Unable to import 'clonemapy.ams' |
|
| 20 | 9 | warning | unspecified-encoding |
W1514 | Using open without explicitly specifying an encoding |
|
| 29 | 0 | convention | line-too-long |
C0301 | Line too long (266/100) |
|
| 37 | 0 | convention | line-too-long |
C0301 | Line too long (234/100) |
examples.multi-agent-systems.pingpong.pingpong_local (examples/multi-agent-systems/pingpong/pingpong_local.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
examples.multi-agent-systems.pingpong.pingpong_module (examples/multi-agent-systems/pingpong/pingpong_module.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 4 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 11 | 0 | convention | missing-class-docstring |
C0115 | PingPongConfig | Missing class docstring |
| 20 | 0 | convention | missing-class-docstring |
C0115 | PingPong | Missing class docstring |
examples.multi-agent-systems.pingpong.pingpong_mqtt (examples/multi-agent-systems/pingpong/pingpong_mqtt.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
room_mas (examples/multi-agent-systems/room_mas/room_mas.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 4 | 0 | error | import-error |
E0401 | Unable to import 'matplotlib.ticker' |
|
| 11 | 0 | convention | line-too-long |
C0301 | Line too long (110/100) |
|
| 11 | 0 | refactor | too-many-locals |
R0914 | run_example | Too many local variables (16/15) |
| 65 | 4 | convention | import-outside-toplevel |
C0415 | run_example | Import outside toplevel (matplotlib.pyplot) |
| 65 | 4 | error | import-error |
E0401 | run_example | Unable to import 'matplotlib.pyplot' |
| 67 | 4 | warning | unused-variable |
W0612 | run_example | Unused variable 'fig' |
| 91 | 28 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\d'. String constant might be missing an r prefix. |
|
| 91 | 41 | warning | anomalous-backslash-in-string |
W1401 | Anomalous backslash in string: '\,'. String constant might be missing an r prefix. |
|
| 98 | 8 | convention | invalid-name |
C0103 | run_example | Variable name "ax" doesn't conform to snake_case naming style |
examples.plugin.main (examples/plugin/main.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 24 | 0 | convention | missing-function-docstring |
C0116 | main | Missing function or method docstring |
examples.plugin.my_plugin.another_new_module (examples/plugin/my_plugin/another_new_module.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 6 | 0 | convention | missing-class-docstring |
C0115 | NewModuleConf2 | Missing class docstring |
| 10 | 0 | convention | missing-class-docstring |
C0115 | NewModule2 | Missing class docstring |
examples.plugin.my_plugin.new_module (examples/plugin/my_plugin/new_module.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 6 | 0 | convention | missing-class-docstring |
C0115 | NewModuleConf | Missing class docstring |
| 10 | 0 | convention | missing-class-docstring |
C0115 | NewModule | Missing class docstring |
csv_data_source (examples/simulation/csv_data_source.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 4 | 0 | error | import-error |
E0401 | Unable to import 'matplotlib.pyplot' |
|
| 5 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 6 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 11 | 0 | convention | missing-function-docstring |
C0116 | create_sample_data | Missing function or method docstring |
| 22 | 0 | convention | missing-function-docstring |
C0116 | run_example | Missing function or method docstring |
| 54 | 4 | error | no-member |
E1101 | run_example | Instance of 'Environment' has no 'run' member |
| 63 | 0 | convention | missing-function-docstring |
C0116 | plot | Missing function or method docstring |
| 69 | 4 | warning | unused-variable |
W0612 | plot | Unused variable 'fig' |
/home/runner/work/AgentLib/AgentLib/pylintrc (pylintrc)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'print-statement' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'parameter-unpacking' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'unpacking-in-except' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'old-raise-syntax' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'backtick' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'import-star-module-level' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'apply-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'basestring-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'buffer-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'cmp-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'coerce-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'execfile-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'file-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'long-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'raw_input-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'reduce-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'standarderror-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'unicode-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'xrange-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'coerce-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'delslice-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'getslice-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'setslice-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'no-absolute-import' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'old-division' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'dict-iter-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'dict-view-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'next-method-called' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'metaclass-assignment' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'indexing-exception' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'raising-string' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'reload-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'oct-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'hex-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'nonzero-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'cmp-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'input-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'round-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'intern-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'unichr-builtin' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'map-builtin-not-iterating' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'zip-builtin-not-iterating' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'range-builtin-not-iterating' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'filter-builtin-not-iterating' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'using-cmp-argument' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'div-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'idiv-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'rdiv-method' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'exception-message-attribute' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'invalid-str-codec' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'sys-max-int' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'bad-python3-import' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'deprecated-string-function' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'deprecated-str-translate-call' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'deprecated-itertools-function' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'deprecated-types-field' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'next-method-defined' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'dict-items-not-iterating' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'dict-keys-not-iterating' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'dict-values-not-iterating' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'deprecated-operator-function' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'deprecated-urllib-function' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'xreadlines-attribute' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'deprecated-sys-function' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'exception-escape' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'comprehension-escape' was removed from pylint, see https://github.com/pylint-dev/pylint/pull/4942. |
|
| 1 | 0 | refactor | useless-option-value |
R0022 | Useless option value for '--disable', 'no-self-use' was moved to an optional extension, see https://pylint.readthedocs.io/en/latest/whatsnew/2/2.14/summary.html#removed-checkers. |
|
| 1 | 0 | warning | unknown-option-value |
W0012 | Unknown option value for '--disable', expected a valid pylint message and got 'long-suffix' |
|
| 1 | 0 | warning | unknown-option-value |
W0012 | Unknown option value for '--disable', expected a valid pylint message and got 'old-ne-operator' |
|
| 1 | 0 | warning | unknown-option-value |
W0012 | Unknown option value for '--disable', expected a valid pylint message and got 'old-octal-literal' |
|
| 1 | 0 | warning | unknown-option-value |
W0012 | Unknown option value for '--disable', expected a valid pylint message and got 'non-ascii-bytes-literal' |
|
| 1 | 0 | warning | unknown-option-value |
W0012 | Unknown option value for '--disable', expected a valid pylint message and got 'eq-without-hash' |
tests.test_agent (tests/test_agent.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 11 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 29 | 0 | convention | missing-class-docstring |
C0115 | UpdateModuleConfigTest | Missing class docstring |
| 33 | 0 | convention | missing-class-docstring |
C0115 | UpdateModuleTest | Missing class docstring |
| 43 | 0 | convention | missing-class-docstring |
C0115 | HealthCheckTest | Missing class docstring |
| 56 | 12 | warning | broad-exception-raised |
W0719 | HealthCheckTest._cb | Raising too general exception: Exception |
| 59 | 0 | refactor | too-many-instance-attributes |
R0902 | TestAgent | Too many instance attributes (8/7) |
| 83 | 13 | warning | unspecified-encoding |
W1514 | TestAgent.test_filepath_module_settings | Using open without explicitly specifying an encoding |
| 104 | 4 | convention | missing-function-docstring |
C0116 | TestAgent.test_getters | Missing function or method docstring |
| 105 | 8 | convention | invalid-name |
C0103 | TestAgent.test_getters | Variable name "ag" doesn't conform to snake_case naming style |
| 116 | 8 | convention | invalid-name |
C0103 | TestAgent.test_set_config | Variable name "ag" doesn't conform to snake_case naming style |
| 134 | 8 | convention | invalid-name |
C0103 | TestAgent.test_config_setter | Variable name "ag" doesn't conform to snake_case naming style |
| 137 | 13 | warning | unspecified-encoding |
W1514 | TestAgent.test_config_setter | Using open without explicitly specifying an encoding |
| 149 | 8 | convention | invalid-name |
C0103 | TestAgent.test_databroker_choice_ | Variable name "ag" doesn't conform to snake_case naming style |
| 152 | 8 | convention | invalid-name |
C0103 | TestAgent.test_databroker_choice_ | Variable name "ag" doesn't conform to snake_case naming style |
| 160 | 8 | convention | invalid-name |
C0103 | TestAgent.test_databroker_choice_ | Variable name "ag" doesn't conform to snake_case naming style |
| 173 | 8 | convention | invalid-name |
C0103 | TestAgent.test_register_modules | Variable name "ag" doesn't conform to snake_case naming style |
| 190 | 8 | convention | invalid-name |
C0103 | TestAgent.test_health_check | Variable name "ag" doesn't conform to snake_case naming style |
| 194 | 8 | convention | invalid-name |
C0103 | TestAgent.test_health_check | Variable name "ag" doesn't conform to snake_case naming style |
| 200 | 8 | warning | attribute-defined-outside-init |
W0201 | TestAgent.test_health_check | Attribute '_stop_test' defined outside __init__ |
| 205 | 8 | convention | invalid-name |
C0103 | TestAgent.test_health_check | Variable name "ag" doesn't conform to snake_case naming style |
| 213 | 12 | warning | attribute-defined-outside-init |
W0201 | TestAgent.test_health_check | Attribute '_still_running' defined outside __init__ |
| 217 | 12 | warning | attribute-defined-outside-init |
W0201 | TestAgent.test_health_check | Attribute '_stop_test' defined outside __init__ |
| 226 | 12 | warning | attribute-defined-outside-init |
W0201 | TestAgent._no_daemon_thread | Attribute '_still_running' defined outside __init__ |
tests.test_agentlogger (tests/test_agentlogger.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 5 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 6 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 13 | 0 | convention | missing-class-docstring |
C0115 | TestAgentLogger | Missing class docstring |
| 60 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_logging_values | Access to a protected member _callback_values of a client class |
| 61 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_logging_values | Access to a protected member _log of a client class |
| 79 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_logging_full | Access to a protected member _callback_full of a client class |
| 80 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_logging_full | Access to a protected member _log of a client class |
| 95 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_file_overwrite | Access to a protected member _callback_values of a client class |
| 96 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_file_overwrite | Access to a protected member _log of a client class |
| 111 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_file_overwrite | Access to a protected member _callback_values of a client class |
| 112 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_file_overwrite | Access to a protected member _log of a client class |
| 129 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_cleanup | Access to a protected member _callback_values of a client class |
| 130 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_cleanup | Access to a protected member _log of a client class |
| 150 | 12 | warning | protected-access |
W0212 | TestAgentLogger.test_load_from_file | Access to a protected member _callback_values of a client class |
| 151 | 8 | warning | protected-access |
W0212 | TestAgentLogger.test_load_from_file | Access to a protected member _log of a client class |
| 173 | 0 | convention | missing-final-newline |
C0304 | Final newline missing |
tests.test_communicator (tests/test_communicator.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | fatal | astroid-error |
F0002 | tests/test_communicator.py: Fatal error while checking 'tests/test_communicator.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-50.txt'. |
|
| 3 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 23 | 0 | convention | missing-class-docstring |
C0115 | TestCommunicator | Missing class docstring |
| 33 | 4 | convention | missing-function-docstring |
C0116 | TestCommunicator.test_roundtrip_variable | Missing function or method docstring |
| 42 | 16 | convention | unnecessary-dunder-call |
C2801 | TestCommunicator.test_roundtrip_variable | Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function. |
| 42 | 50 | convention | unnecessary-dunder-call |
C2801 | TestCommunicator.test_roundtrip_variable | Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function. |
tests.test_data_broker (tests/test_data_broker.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 4 | 0 | convention | ungrouped-imports |
C0412 | Imports from package unittest are not grouped |
|
| 6 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 33 | 4 | convention | missing-function-docstring |
C0116 | TestLocalDataBroker.perform_callbacks | Missing function or method docstring |
| 34 | 23 | warning | protected-access |
W0212 | TestLocalDataBroker.perform_callbacks | Access to a protected member _variable_queue of a client class |
| 35 | 12 | warning | protected-access |
W0212 | TestLocalDataBroker.perform_callbacks | Access to a protected member _execute_callbacks of a client class |
| 42 | 29 | warning | protected-access |
W0212 | TestLocalDataBroker.test_callback | Access to a protected member _unmapped_callbacks of a client class |
| 55 | 29 | warning | protected-access |
W0212 | TestLocalDataBroker.test_callback | Access to a protected member _unmapped_callbacks of a client class |
| 61 | 29 | warning | protected-access |
W0212 | TestLocalDataBroker.test_callback | Access to a protected member _mapped_callbacks of a client class |
| 75 | 19 | warning | protected-access |
W0212 | TestLocalDataBroker.test_callback | Access to a protected member _mapped_callbacks of a client class |
| 75 | 8 | warning | unused-variable |
W0612 | TestLocalDataBroker.test_callback | Unused variable 'key' |
| 78 | 4 | convention | missing-function-docstring |
C0116 | TestLocalDataBroker.dummy_callback | Missing function or method docstring |
| 81 | 4 | convention | missing-function-docstring |
C0116 | TestLocalDataBroker.test_trigger_recursion_error | Missing function or method docstring |
| 84 | 4 | convention | missing-function-docstring |
C0116 | TestLocalDataBroker.run_recursion_error_test | Missing function or method docstring |
| 85 | 8 | warning | attribute-defined-outside-init |
W0201 | TestLocalDataBroker.run_recursion_error_test | Attribute 'never_reached' defined outside __init__ |
| 97 | 4 | convention | missing-function-docstring |
C0116 | TestLocalDataBroker.recursion_callback_1 | Missing function or method docstring |
| 97 | 35 | warning | unused-argument |
W0613 | TestLocalDataBroker.recursion_callback_1 | Unused argument 'variable' |
| 100 | 4 | convention | missing-function-docstring |
C0116 | TestLocalDataBroker.recursion_callback_2 | Missing function or method docstring |
| 100 | 35 | warning | unused-argument |
W0613 | TestLocalDataBroker.recursion_callback_2 | Unused argument 'variable' |
| 102 | 8 | warning | attribute-defined-outside-init |
W0201 | TestLocalDataBroker.recursion_callback_2 | Attribute 'never_reached' defined outside __init__ |
| 114 | 8 | convention | missing-class-docstring |
C0115 | TestLocalDataBroker.test_modules_cannot_overwrite_each_others_callbacks.Module | Missing class docstring |
| 125 | 47 | warning | protected-access |
W0212 | TestLocalDataBroker.test_modules_cannot_overwrite_each_others_callbacks | Access to a protected member _callback_config_vars of a client class |
| 128 | 0 | convention | line-too-long |
C0301 | Line too long (111/100) |
|
| 130 | 47 | warning | protected-access |
W0212 | TestLocalDataBroker.test_modules_cannot_overwrite_each_others_callbacks | Access to a protected member _callback_config_vars of a client class |
| 132 | 29 | warning | protected-access |
W0212 | TestLocalDataBroker.test_modules_cannot_overwrite_each_others_callbacks | Access to a protected member _unmapped_callbacks of a client class |
| 135 | 47 | warning | protected-access |
W0212 | TestLocalDataBroker.test_modules_cannot_overwrite_each_others_callbacks | Access to a protected member _callback_config_vars of a client class |
| 137 | 29 | warning | protected-access |
W0212 | TestLocalDataBroker.test_modules_cannot_overwrite_each_others_callbacks | Access to a protected member _unmapped_callbacks of a client class |
| 162 | 0 | convention | missing-class-docstring |
C0115 | TestRTDataBroker | Missing class docstring |
| 169 | 13 | warning | protected-access |
W0212 | TestRTDataBroker.setUp | Access to a protected member _start_executing_callbacks of a client class |
| 181 | 0 | convention | missing-class-docstring |
C0115 | TestDirectCallbackDataBroker | Missing class docstring |
| 202 | 4 | convention | missing-function-docstring |
C0116 | TestDirectCallbackDataBroker.test_assert_recursion_error | Missing function or method docstring |
tests.test_data_source (tests/test_data_source.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 5 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 6 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 15 | 0 | convention | missing-class-docstring |
C0115 | TestCSVDataSource | Missing class docstring |
| 15 | 0 | refactor | too-many-instance-attributes |
R0902 | TestCSVDataSource | Too many instance attributes (9/7) |
| 35 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.create_test_df | Missing function or method docstring |
| 50 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_datetime_index | Missing function or method docstring |
| 58 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_float_index | Missing function or method docstring |
| 66 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_string_number_index | Missing function or method docstring |
| 74 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_non_convertible_index | Missing function or method docstring |
| 81 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.get_data_source_config | Missing function or method docstring |
| 91 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_data_source_initialization | Missing function or method docstring |
| 98 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_data_loading | Missing function or method docstring |
| 104 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_data_offset | Missing function or method docstring |
| 110 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_interpolation | Missing function or method docstring |
| 117 | 4 | convention | missing-function-docstring |
C0116 | TestCSVDataSource.test_data_exhaustion | Missing function or method docstring |
| 121 | 12 | warning | protected-access |
W0212 | TestCSVDataSource.test_data_exhaustion | Access to a protected member _get_next_data of a client class |
| 122 | 20 | warning | protected-access |
W0212 | TestCSVDataSource.test_data_exhaustion | Access to a protected member _get_next_data of a client class |
tests.test_databroker_limits (tests/test_databroker_limits.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 12 | 0 | convention | missing-class-docstring |
C0115 | DataBrokerExplosionTest | Missing class docstring |
| 31 | 0 | convention | missing-class-docstring |
C0115 | Sender | Missing class docstring |
| 45 | 0 | convention | missing-class-docstring |
C0115 | SlowReceiver | Missing class docstring |
| 61 | 0 | convention | missing-class-docstring |
C0115 | FaultyReceiver | Missing class docstring |
| 71 | 8 | warning | broad-exception-raised |
W0719 | FaultyReceiver._do_some_slow_stuff | Raising too general exception: Exception |
| 74 | 0 | convention | missing-function-docstring |
C0116 | exploding_modules | Missing function or method docstring |
| 95 | 0 | convention | missing-function-docstring |
C0116 | slow_module | Missing function or method docstring |
| 110 | 0 | convention | missing-function-docstring |
C0116 | faulty_module | Missing function or method docstring |
| 124 | 0 | convention | missing-class-docstring |
C0115 | TestDataBrokerLimits | Missing class docstring |
| 125 | 4 | convention | missing-function-docstring |
C0116 | TestDataBrokerLimits.test_slow_module | Missing function or method docstring |
| 130 | 4 | convention | missing-function-docstring |
C0116 | TestDataBrokerLimits.test_exploding_module | Missing function or method docstring |
| 135 | 4 | convention | missing-function-docstring |
C0116 | TestDataBrokerLimits.test_faulty_module | Missing function or method docstring |
tests.test_datamodels (tests/test_datamodels.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 5 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 6 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 23 | 4 | convention | missing-function-docstring |
C0116 | TestVariables.test_base_model_variable | Missing function or method docstring |
| 37 | 12 | refactor | use-dict-literal |
R1735 | TestVariables.test_value_conversion | Consider using '{"name": 'test', "value": 100.0, "type": 'float'}' instead of a call to 'dict'. |
| 51 | 12 | refactor | use-dict-literal |
R1735 | TestVariables.test_series_sending | Consider using '{"name": 'test', "value": srs, "type": 'pd.Series'}' instead of a call to 'dict'. |
| 63 | 16 | refactor | use-dict-literal |
R1735 | TestVariables.test_type | Consider using '{"name": 'test', "type": 'not_supported'}' instead of a call to 'dict'. |
| 66 | 50 | refactor | use-dict-literal |
R1735 | TestVariables.test_type | Consider using '{"name": 'test', "type": float}' instead of a call to 'dict'. |
| 72 | 16 | refactor | use-dict-literal |
R1735 | TestVariables.test_allowed_values | Consider using '{"name": 'test', "type": 'float', "ub": 10, "lb": 0, "clip": True}' instead of a call to 'dict'. |
| 82 | 12 | refactor | use-dict-literal |
R1735 | TestVariables.test_allowed_values | Consider using '{"name": 'test', "type": 'float', "value": 20.0, "allowed_values": ['0', '10', 20, 30.0], ... }' instead of a call to 'dict'. |
| 89 | 12 | convention | invalid-name |
C0103 | TestVariables.test_allowed_values | Variable name "v" doesn't conform to snake_case naming style |
| 101 | 16 | refactor | use-dict-literal |
R1735 | TestVariables.test_pd_series | Consider using '{"name": 'test', "type": 'pd.Series', "value": value, "ub": 10, "lb": 5, ... }' instead of a call to 'dict'. |
| 183 | 50 | refactor | use-dict-literal |
R1735 | TestVariables.test_bounds | Consider using '{"name": 'test', "ub": 100, "lb": 200}' instead of a call to 'dict'. |
| 187 | 12 | refactor | use-dict-literal |
R1735 | TestVariables.test_bounds | Consider using '{"name": 'test', "clip": True, "ub": 100, "lb": 0, "value": 10000}' instead of a call to 'dict'. |
| 191 | 12 | refactor | use-dict-literal |
R1735 | TestVariables.test_bounds | Consider using '{"name": 'test', "clip": True, "ub": 100, "lb": 0, "value": -10000, ... }' instead of a call to 'dict'. |
| 277 | 4 | convention | missing-function-docstring |
C0116 | TestVariables.test_source | Missing function or method docstring |
| 279 | 30 | convention | unnecessary-dunder-call |
C2801 | TestVariables.test_source | Unnecessarily calls dunder method __str__. Use str built-in function. |
tests.test_environment (tests/test_environment.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 7 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 39 | 8 | warning | protected-access |
W0212 | TestEnvironment.test_config_setter | Access to a protected member _config of a client class |
| 40 | 30 | error | no-member |
E1101 | TestEnvironment.test_config_setter | Instance of 'Environment' has no 'config' member; maybe '_config'? |
| 42 | 13 | warning | unspecified-encoding |
W1514 | TestEnvironment.test_config_setter | Using open without explicitly specifying an encoding |
| 44 | 8 | warning | protected-access |
W0212 | TestEnvironment.test_config_setter | Access to a protected member _config of a client class |
| 45 | 30 | error | no-member |
E1101 | TestEnvironment.test_config_setter | Instance of 'Environment' has no 'config' member; maybe '_config'? |
| 52 | 8 | error | no-member |
E1101 | TestEnvironment.test_rt | Instance of 'Environment' has no 'run' member |
| 53 | 32 | error | no-member |
E1101 | TestEnvironment.test_rt | Instance of 'Environment' has no 'time' member |
| 58 | 30 | error | no-member |
E1101 | TestEnvironment.test_no_config | Instance of 'Environment' has no 'config' member; maybe '_config'? |
tests.test_examples (tests/test_examples.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 10 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 42 | 12 | warning | broad-exception-raised |
W0719 | TestExamples._run_example | Raising too general exception: Exception |
| 58 | 8 | convention | import-outside-toplevel |
C0415 | TestExamples.test_room_mas | Import outside toplevel (sys) |
| 73 | 8 | convention | import-outside-toplevel |
C0415 | TestExamples.test_room_mas_direct_callback | Import outside toplevel (sys) |
tests.test_mas (tests/test_mas.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 15 | 4 | convention | missing-function-docstring |
C0116 | TestMAS.test_local_mas | Missing function or method docstring |
| 17 | 4 | convention | missing-function-docstring |
C0116 | TestMAS.test_multiprocessing_mas | Missing function or method docstring |
| 19 | 4 | convention | missing-function-docstring |
C0116 | TestMAS.test_clonemap_mas | Missing function or method docstring |
tests.test_model (tests/test_model.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | tests/test_model.py: Fatal error while checking 'tests/test_model.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-51.txt'. |
|
| 7 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 8 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 15 | 0 | convention | missing-class-docstring |
C0115 | DummyModel | Missing class docstring |
tests.test_module (tests/test_module.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | fatal | astroid-error |
F0002 | tests/test_module.py: Fatal error while checking 'tests/test_module.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/runner/.cache/pylint/pylint-crash-2025-11-07-11-56-51.txt'. |
tests.test_n_pingpong (tests/test_n_pingpong.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 8 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 9 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 60 | 4 | convention | missing-function-docstring |
C0116 | NPingPong.n | Missing function or method docstring |
| 60 | 4 | convention | invalid-name |
C0103 | NPingPong.n | Attribute name "n" doesn't conform to snake_case naming style |
| 93 | 8 | convention | invalid-name |
C0103 | TestNPingPong.setUp | Attribute name "n" doesn't conform to snake_case naming style |
| 98 | 0 | convention | line-too-long |
C0301 | Line too long (118/100) |
|
| 101 | 8 | convention | invalid-name |
C0103 | TestNPingPong.test_local_communicators | Variable name "rt" doesn't conform to snake_case naming style |
| 103 | 34 | convention | invalid-name |
C0103 | TestNPingPong.test_local_communicators | Variable name "rt" doesn't conform to snake_case naming style |
| 117 | 8 | warning | unused-variable |
W0612 | TestNPingPong.test_multiprocessing_broadcast | Unused variable 'broker' |
| 130 | 59 | convention | invalid-name |
C0103 | TestNPingPong._create_2n_pingpong_agents | Argument name "rt" doesn't conform to snake_case naming style |
tests.test_plugins (tests/test_plugins.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 11 | 4 | convention | missing-function-docstring |
C0116 | TestPlugin.test_model_plugin | Missing function or method docstring |
| 13 | 4 | convention | missing-function-docstring |
C0116 | TestPlugin.test_module_plugin | Missing function or method docstring |
| 15 | 4 | convention | missing-function-docstring |
C0116 | TestPlugin.test_module_not_found_error | Missing function or method docstring |
tests.test_simulator (tests/test_simulator.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 1 | 0 | convention | wrong-import-position |
C0413 | Import "import os" should be placed at the top of the module |
|
| 1 | 0 | convention | wrong-import-order |
C0411 | standard import "import os" should be placed before "import pandas as pd" |
|
| 2 | 0 | convention | wrong-import-position |
C0413 | Import "import shutil" should be placed at the top of the module |
|
| 2 | 0 | convention | wrong-import-order |
C0411 | standard import "import shutil" should be placed before "import pandas as pd" |
|
| 3 | 0 | convention | wrong-import-position |
C0413 | Import "import unittest" should be placed at the top of the module |
|
| 3 | 0 | convention | wrong-import-order |
C0411 | standard import "import unittest" should be placed before "import pandas as pd" |
|
| 3 | 0 | convention | ungrouped-imports |
C0412 | Imports from package unittest are not grouped |
|
| 4 | 0 | convention | wrong-import-position |
C0413 | Import "import uuid" should be placed at the top of the module |
|
| 4 | 0 | convention | wrong-import-order |
C0411 | standard import "import uuid" should be placed before "import pandas as pd" |
|
| 6 | 0 | error | import-error |
E0401 | Unable to import 'numpy' |
|
| 6 | 0 | convention | wrong-import-position |
C0413 | Import "import numpy as np" should be placed at the top of the module |
|
| 6 | 0 | convention | wrong-import-order |
C0411 | third party import "import numpy as np" should be placed before "from agentlib import Agent, Environment, AgentVariable" |
|
| 7 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 7 | 0 | convention | wrong-import-position |
C0413 | Import "import pandas as pd" should be placed at the top of the module |
|
| 7 | 0 | convention | wrong-import-order |
C0411 | third party import "import pandas as pd" should be placed before "from agentlib import Agent, Environment, AgentVariable" |
|
| 7 | 0 | convention | ungrouped-imports |
C0412 | Imports from package pandas are not grouped |
|
| 8 | 0 | error | import-error |
E0401 | Unable to import 'pydantic' |
|
| 8 | 0 | convention | wrong-import-position |
C0413 | Import "from pydantic import ValidationError" should be placed at the top of the module |
|
| 8 | 0 | convention | wrong-import-order |
C0411 | third party import "from pydantic import ValidationError" should be placed before "from agentlib import Agent, Environment, AgentVariable" |
|
| 10 | 0 | convention | wrong-import-position |
C0413 | Import "from agentlib.core import Agent, Environment, Model, ModelConfig, ModelOutputs, ModelOutput, ModelInput, ModelInputs, datamodels" should be placed at the top of the module |
|
| 10 | 0 | convention | ungrouped-imports |
C0412 | Imports from package agentlib are not grouped |
|
| 21 | 0 | convention | wrong-import-position |
C0413 | Import "from agentlib.modules.simulation.simulator import Simulator" should be placed at the top of the module |
|
| 60 | 4 | convention | missing-function-docstring |
C0116 | TestSimulator.get_agent | Missing function or method docstring |
| 94 | 4 | convention | missing-function-docstring |
C0116 | TestSimulator.test_simulation | Missing function or method docstring |
| 101 | 4 | convention | missing-function-docstring |
C0116 | TestSimulator.test_inputs_and_pars | Missing function or method docstring |
| 103 | 8 | warning | protected-access |
W0212 | TestSimulator.test_inputs_and_pars | Access to a protected member _callback_update_model_input of a client class |
| 106 | 8 | warning | protected-access |
W0212 | TestSimulator.test_inputs_and_pars | Access to a protected member _callback_update_model_parameter of a client class |
| 114 | 4 | convention | missing-function-docstring |
C0116 | TestSimulator.test_save_results | Missing function or method docstring |
| 141 | 4 | convention | missing-function-docstring |
C0116 | TestSimulator.test_wrong_causality | Missing function or method docstring |
| 148 | 4 | convention | missing-function-docstring |
C0116 | TestSimulator.test_no_files | Missing function or method docstring |
| 174 | 13 | warning | unspecified-encoding |
W1514 | TestSimulator.test_model_injection | Using open without explicitly specifying an encoding |
tests.test_simulator_dashboard (tests/test_simulator_dashboard.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 1 | 0 | convention | missing-module-docstring |
C0114 | Missing module docstring |
|
| 4 | 0 | error | import-error |
E0401 | Unable to import 'pandas' |
|
| 5 | 0 | error | import-error |
E0401 | Unable to import 'dash' |
|
| 15 | 0 | convention | missing-class-docstring |
C0115 | TestSimulatorDashboard | Missing class docstring |
| 17 | 4 | convention | missing-function-docstring |
C0116 | TestSimulatorDashboard.test_load_new_data | Missing function or method docstring |
| 46 | 4 | convention | missing-function-docstring |
C0116 | TestSimulatorDashboard.test_update_data | Missing function or method docstring |
| 74 | 4 | convention | missing-function-docstring |
C0116 | TestSimulatorDashboard.test_format_time_axis | Missing function or method docstring |
| 79 | 4 | convention | missing-function-docstring |
C0116 | TestSimulatorDashboard.test_create_plot | Missing function or method docstring |
tests.test_utils (tests/test_utils.py)| Line | Col. | Type | Symbol | ID | Obj | Message |
|---|---|---|---|---|---|---|
| 58 | 0 | convention | missing-class-docstring |
C0115 | TestLoadConfig | Missing class docstring |
| 81 | 17 | warning | unspecified-encoding |
W1514 | TestLoadConfig.test_load_config | Using open without explicitly specifying an encoding |
| 81 | 45 | convention | invalid-name |
C0103 | TestLoadConfig.test_load_config | Variable name "f" doesn't conform to snake_case naming style |
| 89 | 4 | convention | missing-function-docstring |
C0116 | TestLoadConfig.test_load_config_error | Missing function or method docstring |
| Name | Count |
|---|---|
| refactor | 113 |
| warning | 75 |
| fatal | 35 |
| convention | 214 |
| error | 55 |
| Name | Count |
|---|---|
| useless-option-value | 69 |
| unknown-option-value | 5 |
| astroid-error | 35 |
| line-too-long | 16 |
| missing-module-docstring | 30 |
| invalid-name | 20 |
| missing-function-docstring | 60 |
| import-outside-toplevel | 8 |
| import-error | 40 |
| missing-class-docstring | 33 |
| anomalous-backslash-in-string | 8 |
| consider-using-from-import | 1 |
| unspecified-encoding | 7 |
| wrong-import-order | 9 |
| too-many-locals | 1 |
| unused-variable | 6 |
| logging-fstring-interpolation | 5 |
| no-member | 15 |
| missing-final-newline | 1 |
| protected-access | 30 |
| too-many-instance-attributes | 2 |
| unnecessary-dunder-call | 3 |
| wrong-import-position | 9 |
| ungrouped-imports | 25 |
| unused-argument | 3 |
| attribute-defined-outside-init | 6 |
| broad-exception-raised | 3 |
| use-dict-literal | 10 |
| raise-missing-from | 2 |
| inconsistent-return-statements | 1 |
| duplicate-code | 29 |
| Name | Count |
|---|---|
| /home/runner/work/AgentLib/AgentLib/pylintrc | 72 |
| agentlib.modules.communicator.communicator | 1 |
| agentlib.modules.simulation.simulator | 1 |
| scipy_example | 6 |
| examples.multi-agent-systems.pingpong.pingpong_mqtt | 1 |
| examples.multi-agent-systems.pingpong.pingpong_local | 1 |
| examples.multi-agent-systems.pingpong.pingpong_module | 4 |
| examples.multi-agent-systems.pingpong.pingpong_clonemap | 11 |
| room_mas | 10 |
| part_1_my_first_agent_with_comments | 6 |
| part_1_my_first_agent_concise | 6 |
| part_4_communicators_with_comments | 1 |
| part_3_using_models_with_comments | 2 |
| part_2_agentvariables_with_comments | 11 |
| part_3_using_models_concise | 1 |
| part_2_agentvariables_concise | 10 |
| mqtt | 7 |
| csv_data_source | 9 |
| examples.plugin.main | 1 |
| examples.plugin.my_plugin.new_module | 4 |
| examples.plugin.my_plugin.another_new_module | 4 |
| examples.controller.bangbang_with_simulator | 3 |
| examples.controller.pid_with_simulator | 2 |
| tools | 5 |
| tests.test_n_pingpong | 10 |
| tests.test_agentlogger | 17 |
| tests.test_data_source | 18 |
| tests.test_communicator | 7 |
| tests.test_simulator | 32 |
| tests.test_plugins | 4 |
| tests.test_module | 1 |
| tests.test_data_broker | 30 |
| tests.test_simulator_dashboard | 8 |
| tests.test_mas | 3 |
| tests.test_examples | 4 |
| tests.test_databroker_limits | 12 |
| tests.test_model | 4 |
| tests.test_utils | 4 |
| tests.test_datamodels | 16 |
| tests.test_agent | 23 |
| tests.test_environment | 9 |
| agentlib.models.scipy_model | 2 |
| agentlib.models.fmu_model | 2 |
| agentlib.utils.plugin_import | 3 |
| agentlib.utils.load_config | 2 |
| agentlib.utils.local_broadcast_broker | 1 |
| agentlib.utils.validators | 1 |
| agentlib.utils.local_broker | 1 |
| agentlib.utils.fuzzy_matching | 2 |
| agentlib.utils.multi_processing_broker | 2 |
| agentlib.utils | 2 |
| agentlib.utils.multi_agent_system | 2 |
| agentlib.utils.plotting.simulator_dashboard | 3 |
| agentlib.core.data_broker | 1 |
| agentlib.core.agent | 3 |
| agentlib.core.module | 5 |
| agentlib.core.logging_ | 3 |
| agentlib.core.environment | 3 |
| agentlib.core.datamodels | 5 |
| agentlib.core.model | 8 |
| agentlib.modules.__init__ | 1 |
| agentlib.modules.utils.try_sensor | 1 |
| agentlib.modules.utils.agent_logger | 4 |
| agentlib.modules.communicator.local_broadcast | 1 |
| agentlib.modules.communicator.local | 3 |
| agentlib.modules.communicator.clonemap | 1 |
| agentlib.modules.communicator.local_multiprocessing | 7 |
| agentlib.modules.communicator.mqtt | 2 |
| agentlib.modules.simulation.csv_data_source | 3 |
| agentlib.modules.simulation | 1 |
| agentlib.modules.controller.bangbang | 3 |
| agentlib.modules.controller.controller | 1 |
| agentlib.modules.controller | 1 |
| agentlib.modules.controller.pid | 31 |
| Name | Count |
|---|---|
| pylintrc | 72 |
| agentlib/modules/communicator/communicator.py | 1 |
| agentlib/modules/simulation/simulator.py | 1 |
| examples/models/scipy/scipy_example.py | 6 |
| examples/multi-agent-systems/pingpong/pingpong_mqtt.py | 1 |
| examples/multi-agent-systems/pingpong/pingpong_local.py | 1 |
| examples/multi-agent-systems/pingpong/pingpong_module.py | 4 |
| examples/multi-agent-systems/pingpong/pingpong_clonemap.py | 11 |
| examples/multi-agent-systems/room_mas/room_mas.py | 10 |
| examples/getting-started/part_1_my_first_agent_with_comments.py | 6 |
| examples/getting-started/part_1_my_first_agent_concise.py | 6 |
| examples/getting-started/part_4_communicators_with_comments.py | 1 |
| examples/getting-started/part_3_using_models_with_comments.py | 2 |
| examples/getting-started/part_2_agentvariables_with_comments.py | 11 |
| examples/getting-started/part_3_using_models_concise.py | 1 |
| examples/getting-started/part_2_agentvariables_concise.py | 10 |
| examples/communicator/mqtt.py | 7 |
| examples/simulation/csv_data_source.py | 9 |
| examples/plugin/main.py | 1 |
| examples/plugin/my_plugin/new_module.py | 4 |
| examples/plugin/my_plugin/another_new_module.py | 4 |
| examples/controller/bangbang_with_simulator.py | 3 |
| examples/controller/pid_with_simulator.py | 2 |
| docs/source/manual_labor/tools.py | 5 |
| tests/test_n_pingpong.py | 10 |
| tests/test_agentlogger.py | 17 |
| tests/test_data_source.py | 18 |
| tests/test_communicator.py | 7 |
| tests/test_simulator.py | 32 |
| tests/test_plugins.py | 4 |
| tests/test_module.py | 1 |
| tests/test_data_broker.py | 30 |
| tests/test_simulator_dashboard.py | 8 |
| tests/test_mas.py | 3 |
| tests/test_examples.py | 4 |
| tests/test_databroker_limits.py | 12 |
| tests/test_model.py | 4 |
| tests/test_utils.py | 4 |
| tests/test_datamodels.py | 16 |
| tests/test_agent.py | 23 |
| tests/test_environment.py | 9 |
| agentlib/models/scipy_model.py | 2 |
| agentlib/models/fmu_model.py | 2 |
| agentlib/utils/plugin_import.py | 3 |
| agentlib/utils/load_config.py | 2 |
| agentlib/utils/local_broadcast_broker.py | 1 |
| agentlib/utils/validators.py | 1 |
| agentlib/utils/local_broker.py | 1 |
| agentlib/utils/fuzzy_matching.py | 2 |
| agentlib/utils/multi_processing_broker.py | 2 |
| agentlib/utils/__init__.py | 2 |
| agentlib/utils/multi_agent_system.py | 2 |
| agentlib/utils/plotting/simulator_dashboard.py | 3 |
| agentlib/core/data_broker.py | 1 |
| agentlib/core/agent.py | 3 |
| agentlib/core/module.py | 5 |
| agentlib/core/logging_.py | 3 |
| agentlib/core/environment.py | 3 |
| agentlib/core/datamodels.py | 5 |
| agentlib/core/model.py | 8 |
| agentlib/modules/__init__.py | 1 |
| agentlib/modules/utils/try_sensor.py | 1 |
| agentlib/modules/utils/agent_logger.py | 4 |
| agentlib/modules/communicator/local_broadcast.py | 1 |
| agentlib/modules/communicator/local.py | 3 |
| agentlib/modules/communicator/clonemap.py | 1 |
| agentlib/modules/communicator/local_multiprocessing.py | 7 |
| agentlib/modules/communicator/mqtt.py | 2 |
| agentlib/modules/simulation/csv_data_source.py | 3 |
| agentlib/modules/simulation/__init__.py | 1 |
| agentlib/modules/controller/bangbang.py | 3 |
| agentlib/modules/controller/controller.py | 1 |
| agentlib/modules/controller/__init__.py | 1 |
| agentlib/modules/controller/pid.py | 31 |