buggins / ddbc

DDBC is DB Connector for D language (similar to JDBC)
78 stars 45 forks source link

integration tests no longer work with latest dmd (2.096) #96

Closed SingingBush closed 2 years ago

SingingBush commented 3 years ago

https://github.com/buggins/ddbc/runs/2244088510?check_suite_focus=true

ddbc ~master: building configuration "full"...
../source/ddbc/drivers/odbcddbc.d(75,12): Deprecation: module `etc.c.odbc.sql` is deprecated - Import core.sys.windows.sql instead
../source/ddbc/drivers/odbcddbc.d(76,12): Deprecation: module `etc.c.odbc.sqlext` is deprecated - Import core.sys.windows.sqlext instead
../source/ddbc/drivers/odbcddbc.d(77,12): Deprecation: module `etc.c.odbc.sqltypes` is deprecated - Import core.sys.windows.sqltypes instead
DDBC will log using 'std.experimental.logger'.
../source/ddbc/drivers/odbcddbc.d(127,22): Error: undefined identifier `SQL_HANDLE_ENV`
../source/ddbc/drivers/odbcddbc.d(129,18): Error: undefined identifier `SQLHANDLE`
../source/ddbc/drivers/odbcddbc.d(129,18): Error: undefined identifier `SQLSMALLINT`
../source/ddbc/drivers/odbcddbc.d(157,24): Error: undefined identifier `SQL_BINARY`, did you mean enum member `SQL_C_BINARY`?
../source/ddbc/drivers/odbcddbc.d(158,21): Error: undefined identifier `SQL_BIT`, did you mean enum member `SQL_C_BIT`?
../source/ddbc/drivers/odbcddbc.d(159,26): Error: undefined identifier `SQL_BIGINT`
../source/ddbc/drivers/odbcddbc.d(159,39): Error: undefined identifier `SQL_SIGNED_OFFSET`
../source/ddbc/drivers/odbcddbc.d(160,26): Error: undefined identifier `SQL_BIGINT`
../source/ddbc/drivers/odbcddbc.d(160,39): Error: undefined identifier `SQL_UNSIGNED_OFFSET`
../source/ddbc/drivers/odbcddbc.d(161,25): Error: undefined identifier `SQL_TINYINT`, did you mean enum member `SQL_C_TINYINT`?
../source/ddbc/drivers/odbcddbc.d(162,24): Error: undefined identifier `SQL_C_LONG`, did you mean enum member `SQL_C_SLONG`?
../source/ddbc/drivers/odbcddbc.d(162,37): Error: undefined identifier `SQL_SIGNED_OFFSET`
../source/ddbc/drivers/odbcddbc.d(163,25): Error: undefined identifier `SQL_C_SHORT`, did you mean enum member `SQL_C_SSHORT`?
../source/ddbc/drivers/odbcddbc.d(163,39): Error: undefined identifier `SQL_SIGNED_OFFSET`
../source/ddbc/drivers/odbcddbc.d(164,27): Error: undefined identifier `SQL_TINYINT`, did you mean enum member `SQL_C_TINYINT`?
../source/ddbc/drivers/odbcddbc.d(164,41): Error: undefined identifier `SQL_SIGNED_OFFSET`
../source/ddbc/drivers/odbcddbc.d(165,24): Error: undefined identifier `SQL_C_LONG`, did you mean enum member `SQL_C_SLONG`?
../source/ddbc/drivers/odbcddbc.d(165,37): Error: undefined identifier `SQL_UNSIGNED_OFFSET`
../source/ddbc/drivers/odbcddbc.d(166,25): Error: undefined identifier `SQL_C_SHORT`, did you mean enum member `SQL_C_SSHORT`?
../source/ddbc/drivers/odbcddbc.d(166,39): Error: undefined identifier `SQL_UNSIGNED_OFFSET`
/opt/hostedtoolcache/dc/dmd-2.096.0/x64/dmd2/linux/bin64/dmd failed with exit code 1.
Error: Process completed with exit code 2.
SingingBush commented 3 years ago

while this is an issue those test have been set to use dmd-2.095.1 instead of dmd-latest: https://github.com/buggins/ddbc/commit/67086a736c057bccae8482327265666198f8304f

to replicate the problem cd to the example directory amd run dub build with dmd 2.096

Evgeniy-02 commented 2 years ago

If you need only one driver, you can avoid the error. Just add the configuration to dub.json

"configurations": [
    {
        "name": "default",
        "subConfigurations": {
            "ddbc": "MySQL"
        }
    }
]
SingingBush commented 2 years ago

the project needs to work with all the sub configurations, this issue is to have visibility on the problem until a fix is put in place. My plan was to fix this in the odbc/use_odbc_dub_package branch then merge in.

Note that the reason this work has not been completed is due to a problem in vibe-core which causes numerous build jobs to fail.

SingingBush commented 2 years ago

this is now resolved