This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author rhettinger
Recipients donkopotamus, fdrake, pitrou, rhettinger, serhiy.storchaka, stutzbach
Date 2018-03-27.03:24:05
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1522121045.77.0.467229070634.issue30100@psf.upfronthosting.co.za>
In-reply-to
Content
> my original motivating case was objects that are hashable but not weakly referenceable.  

It is probably not good design to extend discard() to handle types that aren't handled by the other methods.  To me, it isn't at all surprising that the business of a WeakSet is to handle objects that are both hashable and weak referenceable.  Muddying those waters may do more harm than good.  My recommendation is to decline the feature request.

One other thought.  As the Python world starts to encourage type annotations and static type checking, one benefit we would hope for is code with cleaner matches between the caller and callee signatures.  Accordingly, we shouldn't encourage people to write code with odd signatures:
  
    x : thing_that_cant_possibly_be_in_the_weakset
    some_weakset.discard(x)  # Someday, we might hope this would be flagged
History
Date User Action Args
2018-03-27 03:24:05rhettingersetrecipients: + rhettinger, fdrake, pitrou, stutzbach, serhiy.storchaka, donkopotamus
2018-03-27 03:24:05rhettingersetmessageid: <1522121045.77.0.467229070634.issue30100@psf.upfronthosting.co.za>
2018-03-27 03:24:05rhettingerlinkissue30100 messages
2018-03-27 03:24:05rhettingercreate