DAP CLI & Lib 1.3.0 Release: Microsoft SQL Support

sgergely
Instructure
Instructure
0
501

Canvas.png

We are excited to announce the release of DAP CLI & Lib 1.3.0, bringing new features, enhanced functionality, and critical updates based on your feedback. This update reinforces our commitment to improving developer tools and addressing the needs of our community. Here’s what’s new:

Microsoft SQL Server Support

DAP CLI now supports Microsoft SQL Server 2019 (v15) alongside PostgreSQL (16.x) and MySQL (8.0 LTS and 8.4 LTS). This enhancement addresses a long-standing request from the community, just to list a few:

This enhancement ensures that institutions using MSSQL can seamlessly integrate Canvas Data 2 (CD2) into their existing workflows, enabling them to focus more on data analysis rather than pipeline configuration.

Fix for Query API Edge Case

As discussed in my latest blog post, this release resolves an edge case related to query expiration in the DAP Query API. This fix ensures smoother query operations and improves reliability, especially when working with cached queries.

Python Version Update

With this release, we are dropping support for Python 3.10. The DAP CLI now supports Python 3.11 and Python 3.12. Please ensure your environments are updated accordingly.

To install or update, use the following command:

 

 

pip install -U instructure-dap-client

 

 

Or visit the PyPI page for more details.

We are aware of an issue (1, 2) affecting the DAP CLI on native Python installations in Windows environments. The issue is likely related to how the Python standard library interacts with I/O completion ports in WinSock—code that resides outside of our direct control. This interaction can cause errors when handling large datasets, such as the assertion failure:

 

 

assert self._buffer, 'Data should not be empty'.

 

 

While we have observed this issue, it does not occur consistently, making it difficult to reproduce and fix the root cause at this time.

To mitigate this, we are transitioning support for Windows environments to Python running within Windows Subsystem for Linux (WSL). WSL provides a more consistent and reliable environment for the DAP CLI, ensuring better compatibility and stability until a permanent resolution can be implemented.

Improved Documentation Portal

Our new documentation portal is now live at developerdocs.instructure.com/services/dap. It provides an improved developer experience with detailed guides, examples, and API references. We welcome your feedback—leave a comment below and let us know what you think!

Looking Ahead

This release reinforces our dedication to delivering features and improvements driven by your feedback. Stay tuned for more updates as we continue to refine and expand DAP to meet your needs.

Let us know your thoughts in the comments below or through the community forums!