Pylint currently reports `E1101: Instance of 'Bucket' has no 'id' member (no-member)` on lines in Pulumi Python programs like: ```python pulumi.export('bucket_name', bucket.id) ``` Here's a description of this message from http://pylint-messages.wikidot.com/messages:e1101: > Used when an object (variable, function, …) is accessed for a non-existent member. > > False positives: This message may report object members that are created dynamically, but exist at the time they are accessed. This appears to be a false positive case: `id` isn't set in the constructor (it's set later in `register_resource`) and Pylint isn't able to figure this out statically. `urn` has the same problem. (Oddly, Pylint doesn't complain when accessing other resource output properties). This change refactors `register_resource` so that `id` and `urn` can be assigned in the resource's constructor, so that Pylint can see it being assigned. The change also does the same with `read_resource`.
1 line
7 B
Text
1 line
7 B
Text
pylint
|