databases/py-pymssql: Resurrect, update to 2.4.5, add maintainer The port expired on 2026-09-15 because it depended on the expired lang/cython0. It now builds with Cython 3 (USE_PYTHON=cython) via pep517 from the PyPI sdist and links databases/freetds dynamically. Direct krb5 and OpenSSL linking is disabled. tomli and standard-distutils are pruned from the pyproject build-system requires as they are not needed. Co-authored-by: Michael Osipov <michaelo@FreeBSD.org> PR: 299747c1021d90fd
Port details
databases/py-pymssql 2.4.5
DB-API interface to Microsoft SQL Server for Python
Port info
- Maintainer
- cweimann@gmail.com
- Packages
- latest: 2.4.5
- Upstream
- Higher version available: 2.4.6
- Last update
- to 2.4.5 · c1021d90fd
- Quarterly
- not in the 2026Q4 packages
- Formerly
- databases/py-mssql until 2015-10-28
- WWW
- https://github.com/pymssql/pymssql
- Links
- cgit · VuXML · Report wrong data
Install
- Package
# pkg install py312-pymssqlinstalls 2.4.5 fromlatest- Port
# cd /usr/ports/databases/py-pymssql && make install clean- Size
- 231 KiB download · 847 KiB installed
- License
- LGPL21+
Packages by version and architecture
latest
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 16 | 2.4.5 | ✗ | – |
| FreeBSD 15 | ✗ | ✗ | – |
| FreeBSD 14 | ✗ | ✗ | 2.4.5 |
quarterly (2026Q4)
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 15 | ✗ | ✗ | – |
| FreeBSD 14 | ✗ | ✗ | ✗ |
version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.
Dependencies
Depends on 2
- lang/python312 3.12.15 12 unaddressed
- databases/freetds 1.5.19,1
Run and library dependencies of the package on latest. Build dependencies are not in the package index.
Required by 0
No package on latest depends on it.
Packages on latest that depend on it directly.
Unaddressed and VuXML only (0)
No unaddressed CVE and nothing reported by
pkg audit for the packaged version 2.4.5.Fixed (0)
No VuXML entries for this package.
Problem reports (0) · open in Bugzilla, most recently changed first
None.
Commits (47)
databases/py-pymssql: Remove expired port 2026-09-15 databases/py-pymssql: Depends on expired lang/cython03bbe716eb0
all: schedule for removal on 2026-09-15 for lang/cython088271a10b5
databases/py-pymssql: Change USE_PYTHON from cython to cython0 PR: 291778a1c5ae6df4
python: bump all USE_PYTHON=distutils consumers after RUN_DEPENDS removal Any missed ports, feel free to bump. Any ports that need setuptools at runtime can have the devel/py-setuptools manually added back to RUN_DEPENDS, but understand that this practice is deprecated; see CHANGES for details.06a08e69f3
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++ -DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable -Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi -Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings -Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x -MT _quickfix_la-QuickfixPython.lo -MD -MP -MF .deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o .libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568>3d9a815d9cdatabases/py-pymssql: Update to 2.1.5 Changes since 2.1.4: - Revert deprecation. - Support Python-3.8. Update tests for Python-3.8 compatibility. - Use correct language level for building Cython extension. - Fix FreeTDS version checks. Add check for version 7.4. - Use Github Actions for building wheels for Linux, macOS and Windows. - Drop bundled FreeTDS-0.95 binaries. - Unless some critical bug is discovered, this will be the last release with Python2 support. PR: 270891 Reported by: You-Wei Cheah Approved by: ports@thelanman.net (maintainer timeout, 16 days)809d194919
*/*: rename CHEESESHOP to PYPI in MASTER_SITES PR: 267994 Differential revision: D37518 Approved by: bapt77d68471ad
Remove WWW entries moved into port Makefiles Commit b7f05445c00f has added WWW entries to port Makefiles based on WWW: lines in pkg-descr files. This commit removes the WWW: lines of moved-over URLs from these pkg-descr files. Approved by: portmgr (tcberner)fb16dfecae
Add WWW entries to port Makefiles It has been common practice to have one or more URLs at the end of the ports' pkg-descr files, one per line and prefixed with "WWW:". These URLs should point at a project website or other relevant resources. Access to these URLs required processing of the pkg-descr files, and they have often become stale over time. If more than one such URL was present in a pkg-descr file, only the first one was tarnsfered into the port INDEX, but for many ports only the last line did contain the port specific URL to further information. There have been several proposals to make a project URL available as a macro in the ports' Makefiles, over time. This commit implements such a proposal and moves one of the WWW: entries of each pkg-descr file into the respective port's Makefile. A heuristic attempts to identify the most relevant URL in case there is more than one WWW: entry in some pkg-descr file. URLs that are not moved into the Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr files in order to preserve them. There are 1256 ports that had no WWW: entries in pkg-descr files. These ports will not be touched in this commit. The portlint port has been adjusted to expect a WWW entry in each port Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as deprecated. Approved by: portmgr (tcberner)b7f05445c0
One more small cleanup, forgotten yesterday. Reported by: lwhsucf118ccf87
Remove # $FreeBSD$ from Makefiles.305f148f48
Drop python 2.7 support from a few ports With hat: portmgraa7a6c429e
Relax hardcoded paths to fix build with Python 3.8.7 Since r558913 Python 3.8 incorporates BPO-42604 [1] which changed the shared libs naming scheme. This means "EXT_SUFFIX" is now derived from SOABI and yields with Python 3.8 to ".cpython-38.so" instead of ".so". The affected ports strip the libaries in the "post-install" target via hardcoded path(s) and the build fails at the end because the new extension is not expected at this place. Remedy the issue by adding wildcards to these paths. This should also prepare the ports for future Python releases, which will use the new shared libs naming scheme. [1] https://bugs.python.org/issue42604 PR: 252057 Reported by: John Kennedy Reviewed by: fluffy, koobs Approved by: koobs (python)9cb5898561
databases/py-pymssql: Update to 2.1.4 and unbreak Python 3 build. PR: 236998 Submitted by: Henrik Hudson Approved by: Henrik Hudson (maintainer), ler (mentor, implicit)034a5e43aa
Use PY_FLAVOR for dependencies. FLAVOR is the current port's flavor, it should not be used outside of this scope. Sponsored by: Absolight4376dbbb58
Convert Python ports to FLAVORS.
Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
current python flavor. It can be used in dependency lines when the
port itself is not python flavored. For example, deskutils/calibre.
By default, all the flavors are generated. To only generate flavors
for the versions in PYTHON2_DEFAULT and PYTHON3_DEFAULT, define
BUILD_DEFAULT_PYTHON_FLAVORS in your make.conf.
In all the ports with Python dependencies, the *_DEPENDS entries MUST
end with the flavor so that the framework knows which to build/use.
This is done by appending '@${PY_FLAVOR}' after the origin (or
@${FLAVOR} if in a Python module with Python flavors, as the content
will be the same). For example:
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
PR: 223071
Reviewed by: portmgr, python
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12464551be3c723databases/py-pymssql: Update to 2.1.3 PR: 221358 Submitted by: David Wahlund <david@dafnet.se> Approved by: ports@thelanman.net (maintainer timeout, >3 months)b0c18dc422
${RM} already has -f.
PR: 213570
Submitted by: mat
Exp-run by: antoine
Sponsored by: Absolighteabbfd75e3- Fix build after FreeTDS update by porting upstream commit ec46fea PR: 210363 Reported by: ports@thelanman.net (maintainer), pkg-fallout Approved by: portmgr blanket7f732a0845
Remove ${PORTSDIR}/ from dependencies, categories d, e, f, and g.
With hat: portmgr
Sponsored by: Absolight4e1b79a0a6Remove expired ports databases/py-mssql: Broken with current FreeTDS. Please use databases/py-pymssql net/py-medusa: Abandoned upstream, last release was in 20050092cff443
databases/py-mssql: mark broken and deprecated pymssql 1.0.2 is known by its developers [1] to be broken with FreeTDS 0.91 and later. It should be upgraded to 2.x anyway for Python 3. The bug is that DB queries return no rows, and therefore it's unlikely to work for anyone. [1] http://pymssql.org/en/latest/faq.html#queries-return-no-rows Users should switch to using databases/py-pymssql instead. Expiration date is set to 2015-10-28. PR: 198719 Submitted by: bilbo@hobbiton.orge4e7fe18da
PyMSSQL is a MS-SQL database adapter for the Python programming language. It was written from scratch using FreeTDS library. This is the version 2 release branch. WWW: http://www.pymssql.org/ WWW: https://github.com/pymssql/pymssql PR: 198694 Submitted by: ports@thelanman.net (based on)e12c842c5e
- Clarify LICENSE - Add LICENSE_FILE - Strip library78c6df534e
Modernise databases/freetds port - Retire databases/freetds-msdblib port (no longer needed, recently updated upstream version has necessary compat option which is now enabled in the freetds port) - Fix LIB_DEPENDS in dependent ports - Bump PORTREVISION in freetds and dependent ports PR: 193850 Submitted by: 5u623l20@gmail.com (maintainer)b97f4dcc3a
- Fix build breakage due to recent upgrade of databases/freetds - Add LICENSE - Modernise port Makefile - Bump PORTREVISION65d4c9d80e
Python cleanup: - USE_PYTHON* = 2.X -> USE_PYTHON* = 2 - USE_PYTHON* = 2.X+ -> USE_PYTHON* = yes Reviewed by: python (mva, rm) Approved by: portmgr-lurkers (mat)50f8eaece1
- Convert to PYDISTUTILS_AUTOPLIST - Enable stage support - Limit to the supported python versions - Change to new LIB_DEPENDS where necessary - Switch to new OPTIONS framework where necessary3ca507ce12
Add NO_STAGE all over the place in preparation for the staging support (cat: databases)36117d7097
- Update to 1.0.2022dc8b0c9
- Move over to py25+ or above - While here kick md5 support021fc3a529
Reset perky@FreeBSD.org due to maintainer-timeouts and no response to email. Hat: portmgrcb4c252136
- Switch SourceForge ports to the new File Release System: categories starting with D075acacd24
- Update py-mssql to 1.0.1 PR: ports/131407 Submitted by: Wen Heping <wenheping [at] gmail.com> Approved by: perky (maintainer)549b4ecf56
- Make Python 2.5.1 the default Python version - Add significantly better support in bsd.python.mk for working with Python Eggs and the easy_install system Tested by: pointyhat runs Approved by: pav (portmgr) Most work by: perky Thanks to: pav4942ce5a7d
Update to 0.8.0 PR: 108962 Submitted by: Uwe Laverenz <uwe@laverenz.de>b84d250cbf
Remove USE_REINPLACE from all categories starting with D2406d49a61
SHA256ify Approved by: krion@acd87b4ad8
Update to 0.7.3. Submitted by: Andrzej Kuku?a <akukula@gmail.com> Approved by: perky (mentor, maintainer)7ac08aaf0e
This patch should be removed before 0.7.1 update. Pointy hat goes to: vsevolodc019d23ed4
Update to 0.7.1. Approved by: perky (mentor, maintainer)99780a6533
Fix build for the recent freetds library and unmark BROKEN.c94348debc
BROKEN: Does not compileb44a0503c6
- Chase freetds shlib bump365c91719d
Update to 0.6.0d17e1a309f
Add new port for py-mssql 0.5.1, A simple database interface to MS-SQL for Python.e0427d1526