- [#88](https://github.com/linq2db/linq2db.LINQPad/issues/88): add support for LINQPad Password Manager in connection strings. To reference value from password manager use `{pm:password-name}` token syntax
- [#97](https://github.com/linq2db/linq2db.LINQPad/issues/97), [#103](https://github.com/linq2db/linq2db.LINQPad/issues/103): update dependencies to get rid of vulnerable transient dependencies
- [#102](https://github.com/linq2db/linq2db.LINQPad/pull/102): support custom `IDataContext`-based contexts; don't try to load missing connection configuration files. Thanks to [@cal-tlabwest](https://github.com/cal-tlabwest) for fix
- LINQPad 6 support dropped (you can still use 4.x versions of driver with LINQPad 6)
- migrateed dynamic context code-generation to new scaffolding framework
- implemented `Close all connections` functionality for Access, DB2 LUW, DB2 z/OS, Firebird, Informix, MySql, Oracle, PostgreSQL, SAP HANA, SQLite, SAP/Sybase ASE connections (previous versions implemented only SQL Server support)
- implement automatic schema refresh for Access (OLE DB provider only), ClickHouse, DB2 LUW, DB2 z/OS, MySql, MariaDB, SAP HANA, Oracle and SAP/Sybase ASE (previous versions implemented only SQL Server support)
- added `LinqToDB`, `LinqToDB.Data` and `LinqToDB.Mapping` usings to queries also for static context driver
- stored procedures and functions schema load options now allow you to select which routine types to load (e.g. only stored procedures)
- add additional connection string support for Access to mitigate schema issues in ODBC and OLE DB providers
- show packages in schema tree for supporting databases
- add nullability information for columns and parameters for both value and reference types
- add SQL dialog selection for databases for which Linq To DB supports multiple dialects
- [LINQPAD5] rise required framework version from .NET Framework 4.6.1 to 4.8
- [LINQPAD7] raise required framework version from `netcoreapp3.1` to `net6.0-windows`
- [LINQPAD7] add .NET 7 and 8 support
- [LINQPAD5] strong name removed from driver. Because LINQPad 5 use fully-qualified assembly name to store connection settings, your old connections will not be visible in LINQPad 5 with new driver and should be recreated (or you could try to edit assembly name in LINQPad settings file for old connections)
- [LINQPAD5] add support for connection configuration load from json files for static contexts
- [LINQPAD7] add support for connection configuration load from app.config files for static contexts
Issues fixed:
- [#58](https://github.com/linq2db/linq2db.LINQPad/pull/58): fixed raw SQL execution support for all databases
- [#79](https://github.com/linq2db/linq2db.LINQPad/pull/79): added ClickHouse support using MySql, HTTP(s) and binary protocols
- [#57](https://github.com/linq2db/linq2db.LINQPad/pull/57) use stable ordering of custom context properties. Thanks to [@RoyChase](https://github.com/RoyChase) for fix
- [LINQPAD6] support connection configuration using appsettings.json for typed data context ([#38](https://github.com/linq2db/linq2db.LINQPad/issues/38))
- [linqpad] added support for LINQPad 6 including new [nuget package](https://www.nuget.org/packages/linq2db.LINQPad) ([#29](https://github.com/linq2db/linq2db.LINQPad/issues/29))
- [tools] driver updated to use recent linq2db 3.0.1 release
- [tools] switched to [Humanizer.Core](https://www.nuget.org/packages/Humanizer.Core) for model pluralization
- [providers] removed ODP.NET Native Oracle provider (we still support the managed provider, which doesn't require client installation)
- [providers] added support for MS Access ODBC provider
- [providers] replaced MySql.Data provider with [MySqlConnector](https://www.nuget.org/packages/MySqlConnector) provider
- [providers] replaced native SAP/Sybase ASE provider with managed [AdoNetCore.AseClient](https://www.nuget.org/packages/AdoNetCore.AseClient) provider
- [providers] removed IBM DB2 iSeries support temporarily because required [provider](https://github.com/LinqToDB4iSeries/Linq2DB4iSeries) lacks linq2db v3 support
- [providers] added SAP HANA ODBC provider
- [providers] IBM Informix provider switched to use [IBM.Data.DB](https://www.nuget.org/packages/IBM.Data.DB2.Core/) IDS provider (SQLI provider could be added on request)
- [providers] there is no need to pre-install client for IBM Informix anymore
- [providers] there is no need to pre-install client for IBM DB LUW/zOS anymore
- [providers] there is no need to pre-install client for SAP/Sybase ASE anymore ([#33](https://github.com/linq2db/linq2db.LINQPad/issues/33))
- [providers] fixed multiple issues with provider-specific types support
- [providers] added support for array and dictionary types (e.g. PostgreSQL array and hstore types)
- [ui] fixed database tree to not create duplicate/unnecessary schema nodes
- [ui] fixed connection dialog aligment issues
- [ui] tables without columns not shown anymore (e.g. Access system tables without read permissions)
- [ui] added provider path setting for SqlCe and SAP HANA Native providers for LINQPad 6 version
- [ui] fixed non-xml characters rendering in custom formatter
- [ui] always use custom formatters for provider-specific types
- [misc] added license file (MIT) to repository
- [misc] copyrights updated to include major contributors
- [misc] migrated to Azure Pipelines from Appveyor for builds
- [misc] codebase updated to C# 8.0 with nullable reference types