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 vigdis
Recipients vigdis
Date 2018-09-04.15:16:36
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1536074196.75.0.56676864532.issue34580@psf.upfronthosting.co.za>
In-reply-to
Content
In my experience, the first encounter for beginners with the context manager is with files. The highlighted feature is that you don't need to close the file, 'with' is going to do it for you.

The sqlite3 documentation talks about the context manager in "12.6.8.3. Using the connection as a context manager". The problem in my opinion is that people may believe that the context manager may manage the open/close which is not the case, reading the Modules/_sqlite/connection.c:pysqlite_connection_exit shows that it only does the commit or the rollback.

I'm not sure about the best fix. It can be either (or both) a sentence in the description and/or adding at then end of the code snippet "con.close()" to show that it still needs to be done.

Thanks!
History
Date User Action Args
2018-09-04 15:16:36vigdissetrecipients: + vigdis
2018-09-04 15:16:36vigdissetmessageid: <1536074196.75.0.56676864532.issue34580@psf.upfronthosting.co.za>
2018-09-04 15:16:36vigdislinkissue34580 messages
2018-09-04 15:16:36vigdiscreate