Skip to content

Commit ecd928f

Browse files
committed
- dmdserver:
- now built with upcoming dmd 2.112 with improved GC performance - don't stop analyzing when a static assert is hit - add option to display server communication in the output pane - some optimizations to to reduce communication overhead - fixed WindowsApp template to build with recent DMD
1 parent 1dfe56e commit ecd928f

File tree

20 files changed

+581
-99
lines changed

20 files changed

+581
-99
lines changed

CHANGES

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1458,3 +1458,13 @@ Version history
14581458
and provides some assistance in installing them
14591459
* dbuild: add file imported from C to the dependencies for rebuilding
14601460
* dbuild: add option to set C include search path and C #defines
1461+
1462+
2025-09-26 version 1.5.0-beta1
1463+
* installer: added support for VS 2026
1464+
* dmdserver:
1465+
- now built with upcoming dmd 2.112 with improved GC performance
1466+
- don't stop analyzing when a static assert is hit
1467+
- add option to display server communication in the output pane
1468+
- some optimizations to to reduce communication overhead
1469+
* fixed WindowsApp template to build with recent DMD
1470+

VERSION

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#define VERSION_MAJOR 1
2-
#define VERSION_MINOR 4
3-
#define VERSION_REVISION 2
2+
#define VERSION_MINOR 5
3+
#define VERSION_REVISION 0
44
#define VERSION_BETA -beta
5-
#define VERSION_BUILD 2
5+
#define VERSION_BUILD 1

build/build.visualdproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2047,7 +2047,6 @@ $(DMDInstallDir)\windows\bin\dmd -g -map "$(IntDir)\$(InputName).map"
20472047
if exist "$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat" call "$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat"
20482048
if exist "$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat" ( pushd . && call "$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat" && popd )
20492049
if errorlevel 1 goto reportError
2050-
set
20512050
$(LDCInstallDir)\bin\ldmd2 -m32 -g "-of$(OutDir)\$(InputName).exe" $(InputPath) ..\tools\nostacktrace.d user32.lib -L/SUBSYSTEM:CONSOLE,5.01" dependencies="..\tools\nostacktrace.d" outfile="$(OutDir)\$(InputName).exe" path="..\tools\mb2utf16.d" tool="Custom" />
20522051
<File customcmd="echo Compiling $(InputPath)...
20532052
if exist &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot; call &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot;

msbuild/dcompile_defaults.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<DBuildVersion Condition="$(MSBuildVersion_Major) != 16 and $(MSBuildVersion_Major) != 17">$(MSBuildVersion_Major).0</DBuildVersion>
4848
<DBuildVersion Condition="$(MSBuildVersion_Major) == 16 and $(MSBuildVersion_Minor) == 0">16.0</DBuildVersion>
4949
<DBuildVersion Condition="$(MSBuildVersion_Major) == 16 and $(MSBuildVersion_Minor) != 0">16.1</DBuildVersion>
50-
<DBuildVersion Condition="$(MSBuildVersion_Major) == 17 and $(MSBuildVersion_Minor) &lt; 14">17.$(MSBuildVersion_Minor)</DBuildVersion>
50+
<DBuildVersion Condition="$(MSBuildVersion_Major) == 17 and $(MSBuildVersion_Minor) &lt;= 14">17.$(MSBuildVersion_Minor)</DBuildVersion>
5151
<DBuildVersion Condition="$(MSBuildVersion_Major) == 17 and $(MSBuildVersion_Minor) &gt; 14">18.0</DBuildVersion><!-- insider only? -->
5252
</PropertyGroup>
5353

sdk/port/textfind100.d

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
// missing in the SDK of VS 2022 Preview 17.8
2+
module sdk.port.textfind100;
3+
public import sdk.vsi.textfind90;

stdext/container.d

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ struct Queue(T)
3939
return data[idx];
4040
}
4141

42+
void clear()
43+
{
44+
for(size_t i = 0; i < used; i++)
45+
data[i] = T.init;
46+
used = 0;
47+
}
48+
4249
ref Queue!T opOpAssign(string op)(ref T t) if (op == "~")
4350
{
4451
append(t);

stdext/string.d

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,10 +379,19 @@ T[] firstLine(T)(T[] s)
379379
{
380380
for(size_t i = 0; i < s.length; i++)
381381
if(s[i] == '\n' || s[i] == '\r')
382-
return s[0..i];
382+
return i + 2 < s.length ? s[0..i] ~ "..." : s[0..i];
383383
return s;
384384
}
385385
386+
T[] firstLineOf(T)(T[][] arr)
387+
{
388+
if (arr.length > 1)
389+
return firstLine(arr[0]) ~ "...";
390+
else if (arr.length > 0)
391+
return firstLine(arr[0]);
392+
return "";
393+
}
394+
386395
char kInvalidUTF8Replacement = '?';
387396
388397
inout(char)[] toUTF8Safe(inout(char)[] text)

vdc/dmdserver/dmdrmem.d

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ extern (C++) struct Mem
2424
static void* xmalloc(size_t n) nothrow pure
2525
{
2626
if (*pcancel)
27-
throw new Error("cancel malloc"); //*pcancelError;
27+
throw new CancelError("cancel malloc"); //*pcancelError;
2828
return GC.malloc(n);
2929
}
3030
static void* xmalloc_noscan(size_t n) nothrow pure
3131
{
3232
if (*pcancel)
33-
throw new Error("cancel malloc");//*pcancelError;
33+
throw new CancelError("cancel malloc");//*pcancelError;
3434
return GC.malloc(n, GC.BlkAttr.NO_SCAN);
3535
}
3636

@@ -66,13 +66,21 @@ extern (C++) struct Mem
6666
return p;
6767
}
6868

69-
extern(D) __gshared immutable cancelError = new Error("cancel malloc");
69+
extern(D) __gshared immutable cancelError = new CancelError("cancel malloc");
7070
extern(D) __gshared bool cancel;
7171
// fake purity
7272
enum pcancel = cast(immutable) &cancel;
7373
enum pcancelError = cast(immutable) &cancelError;
7474
}
7575

76+
class CancelError : Error
77+
{
78+
this(string s) pure
79+
{
80+
super(s);
81+
}
82+
}
83+
7684
extern (C++) const __gshared Mem mem;
7785

7886
/**

0 commit comments

Comments
 (0)