Skip to content

Fix PEP 249 compliance#112

Open
Vnajeb wants to merge 5 commits into
mainfrom
feature/issue-91
Open

Fix PEP 249 compliance#112
Vnajeb wants to merge 5 commits into
mainfrom
feature/issue-91

Conversation

@Vnajeb
Copy link
Copy Markdown
Collaborator

@Vnajeb Vnajeb commented May 20, 2026

Fixes #91

Changes proposed in this pull request:

  • Fixed cursor.description to return a sequence of 7-item column tuples (name, type code, display size, precision, scale, nullable) after query execution, mapped from the server's QueryMetaData.columns
  • Fixed fetchone(), fetchall(), and fetchmany() to return row tuples instead of raw response dicts
  • Applied the same fixes to AsyncCursor
  • Fixed rowcount to be consistently set after execute and executemany across both cursors
  • Added new unit tests for cursor PEP 249 compliance that run without a live server using mocked WebSocket responses

Before submitting

  • Change the base branch to dev if it is not already.
  • I've read and followed all steps in the Making a pull request
    section of the CONTRIBUTING docs.
  • I've updated or added any relevant docstrings following the syntax described in the
    Writing docstrings section of the CONTRIBUTING docs.
  • If this PR fixes a bug, I've added a test that will fail without my fix.
  • If this PR adds a new feature, I've added tests that sufficiently cover my new functionality.

Najeb Abdullahi and others added 3 commits May 18, 2026 13:09
cursor.description, fetchone/fetchall/fetchmany now return proper
tuples, rowcount accurate, AsyncCursor parity, 24 unit tests added
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix PEP 249 compliance: cursor.description and result types

1 participant