Inappropriate access to properties
Reports cases when properties are accessed inappropriately:
Read-only properties are set
Write-only properties are read
Non-deletable properties are deleted
Example:
class MyClass:
@property
def read_only(self): return None
def __write_only_setter(self, value): pass
write_only = property(None, __write_only_setter)
a = MyClass()
a.read_only = 10 # property cannot be set
del a.read_only # property cannot be deleted
print(a.write_only) # property cannot be read
Locating this inspection
- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
PyPropertyAccessInspection- Via Settings dialog
Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.
Availability
- By default bundled with
DataSpell 2024.1, IntelliJ IDEA 2024.1, PyCharm 2024.1, Qodana for JVM 2024.1,
- Can be installed with plugin
Python Community Edition, 241.SNAPSHOT
Last modified: 18 June 2024