- Added the Default column to the sys_procedureparameters table.
- Added Overwrite parameter for the ImportFile stored procedure. If the parameter is set to True the stored procedure will delete every sheet that has the same name as the one which will be uploaded.
- The ValueSource property was added, allowing users to alter which field would be used by the driver to determine the value of the cell. - Auto will use which field is not null. - Value will use the "Value" field. - DisplayValue will use the "DisplayValue" field.
- Added the IsPath column to the sys_procedureparameters table.
- Added streaming output support for DownloadAttachment. Added FileStream as an input.
- Added binary and encoded content output support for CreateSchema. Added FileStream as an input, and FileData as an output.
- Added binary input support for ImportFile. Added FileName and Content (InputStream) as inputs.
- We now support handling the keyword "COLLATE" as standard function name as well.
- Added the Header connection property, which indicates whether or not the first row should be used as a column's name.
- Added the MoveSheet stored procedure, which moves the specified sheet to a new location.
- Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
- The Info_comments table now only requires a SheetId instead of SheetId and DiscussionId. In other words, this table will now return all the comments of a given sheet.
- Added the KeySeq column to the sys_foreignkeys table.
- Added the new sys_primarykeys system table.
- Updated the Literal Function Names for relative date/datetime functions. Previously relative date/datetime functions resolved to a different value when used in the projection vs te predicate. Ie: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly the two LAST_MONTH() methods would resolve to different datetimes. Now they will match.
- As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. Ie: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that previously were calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
- Added the UseFullFilePathsAsTableNames connection property, which sets whether or not to include the full file path in the name of an exposed table or view, corresponding to a sheet or report.
- Added the TCP Logging Module for the logging information happening on the TCP wire protocol. The transport bytes that are incoming and ongoing will be logged at verbosity=5.
- Added support for importing a CSV or XLSX to the top-level "sheets" folder, to a specified folder or to a specified workspace.
- Added support for adding a discussion to a sheet or a row. Added support for adding a comment to a discussion. You can find examples at their respective tables in Data Model.
- Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = Concat(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
- Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
- Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
- Reduced the length to 255 for varchar primary key and foreign key columns.
- Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you would need to generate new metadata caches if you are currently using CacheMetadata.
- Updated index naming convention to avoid duplicates
- Updated and standardized Getting Started connection help.
- Added the Advanced Features section to the help of all drivers.
- Categorized connection property listings in the help for all editions.
- Kerberos authentication is updated to use TCP by default, but will fall back to UDP if a TCP connection cannot be established
- Improved the way we were exposing the Personal Access Token. Now we have a new connection property (PersonalAccessToken) and a new value for the AuthScheme property (again PersonalAccessToken).
- Changed metadata discovery endpoint to [/home](https://smartsheet-platform.github.io/api-docs/#list-contents) endpoint.
- Support for folder/workspace traversal. A query to info_folders, info_sheets and info_reports will return the complete list of the objects, not just of the first directory level.
- Exposing the FolderId and WorkspaceID for each object type in info_folders, info_sheets and info_reports.