Skip to content

Update sqlite3 and the tests to CPython 3.14.2#6787

Merged
youknowone merged 4 commits into
RustPython:mainfrom
ever0de:update-test-sqlite3-cpython-3.14
Jan 18, 2026
Merged

Update sqlite3 and the tests to CPython 3.14.2#6787
youknowone merged 4 commits into
RustPython:mainfrom
ever0de:update-test-sqlite3-cpython-3.14

Conversation

@ever0de

@ever0de ever0de commented Jan 18, 2026

Copy link
Copy Markdown
Contributor

fixed #6785

@coderabbitai

coderabbitai Bot commented Jan 18, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (17)
  • Lib/sqlite3/__init__.py is excluded by !Lib/**
  • Lib/sqlite3/__main__.py is excluded by !Lib/**
  • Lib/sqlite3/dbapi2.py is excluded by !Lib/**
  • Lib/sqlite3/dump.py is excluded by !Lib/**
  • Lib/test/test_dbm_sqlite3.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/__init__.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_backup.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_cli.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_dbapi.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_dump.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_factory.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_hooks.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_regression.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_transactions.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_types.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/test_userfunctions.py is excluded by !Lib/**
  • Lib/test/test_sqlite3/util.py is excluded by !Lib/**

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@ever0de ever0de force-pushed the update-test-sqlite3-cpython-3.14 branch from f185847 to 5d18754 Compare January 18, 2026 14:36
@ever0de ever0de changed the title Update test/test_sqlite3 to CPython 3.14.0a7 Update test/test_sqlite3 to CPython 3.14.0 Jan 18, 2026
@ever0de ever0de changed the title Update test/test_sqlite3 to CPython 3.14.0 Update test/test_sqlite3 to CPython 3.14 Jan 18, 2026
@youknowone

Copy link
Copy Markdown
Member

Python has 3.14.2 tag now

@ever0de ever0de force-pushed the update-test-sqlite3-cpython-3.14 branch from 5d18754 to a5ecafe Compare January 18, 2026 14:40
@ever0de ever0de changed the title Update test/test_sqlite3 to CPython 3.14 Update test/test_sqlite3 to CPython 3.14.2 Jan 18, 2026
@youknowone

Copy link
Copy Markdown
Member

how about Lib/sqlite3? isn't it changed?

@ever0de

ever0de commented Jan 18, 2026

Copy link
Copy Markdown
Contributor Author

how about Lib/sqlite3? isn't it changed?

Oh, I'm running sqlite tests to identify what needs to be updated. I'm working through Lib/sqlite3 and Lib/test/test_sqlite3/** locally. It looks like the tests are deadlocking, so I'm investigating it.

@ever0de ever0de force-pushed the update-test-sqlite3-cpython-3.14 branch 2 times, most recently from fea9132 to afc44cb Compare January 18, 2026 15:14
Skip tests that fail due to unimplemented features or behavior differences:
- _iterdump not implemented (test_dump.py)
- Unraisable exception handling not implemented (test_hooks.py, test_userfunctions.py)
- Keyword-only arguments not supported for various methods
- Autocommit behavior differences (test_transactions.py)
- TransactionTests skipped due to timeout parameter type issue
- Various error message differences (test_dbapi.py)
- SQLITE_DBCONFIG constants not implemented
- Row and Connection signature inspection issues

All tests now pass with 95 skipped out of 493 total tests.
@ever0de ever0de force-pushed the update-test-sqlite3-cpython-3.14 branch from afc44cb to 494326a Compare January 18, 2026 15:16
@ever0de ever0de marked this pull request as ready for review January 18, 2026 15:16
@youknowone youknowone changed the title Update test/test_sqlite3 to CPython 3.14.2 Update sqlite3 and the tests to CPython 3.14.2 Jan 18, 2026

@youknowone youknowone left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to check if newly added @unittest.skip was not avoidable.

Just in case, we prefer @unittest.expectedFailure over @unittest.skip

Comment thread Lib/test/test_sqlite3/test_dump.py Outdated
[self.assertEqual(expected_sqls[i], actual_sqls[i])
for i in range(len(expected_sqls))]

@unittest.skip("TODO: RUSTPYTHON iterdump filter parameter not implemented")

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the test panic or hang? If it just fail, we prefer to mark it as expectedFailure

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed the few tests that were hanging to @unittest.skip, and marked the rest as expectedFailure. Thank you.

- Convert @unittest.skip decorators to @unittest.expectedFailure for tests that fail without panic/hang
- Keep @unittest.skip only for TransactionTests class (setUp fails with timeout=0 int type)

@youknowone youknowone left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@youknowone youknowone merged commit 00440b1 into RustPython:main Jan 18, 2026
13 checks passed
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.

Update test_sqlite3/** to match CPython 3.14

2 participants