Skip to content

Commit 92ec7a2

Browse files
authored
Merge pull request #128 from rainers/master
Visual D 1.0.1-beta1
2 parents 3d9cac6 + 956bf0c commit 92ec7a2

File tree

17 files changed

+180
-80
lines changed

17 files changed

+180
-80
lines changed

CHANGES

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1242,7 +1242,7 @@ Version history
12421242
- vcxproj: do not check referenced projects if the project itself already needs phobos to be linked
12431243
- vcxproj: only print the filename in the "Compiling" message, not the path
12441244

1245-
unreleased version 1.0.0
1245+
2020-07-04 version 1.0.0
12461246
* projects:
12471247
- trailing \ now removed from $(WindowsSDKVersion)/$(UCRTVersion) for more consistency between
12481248
autodetected version and as read from the environment
@@ -1267,3 +1267,13 @@ unreleased version 1.0.0
12671267
- some performance improvements by caching some data while the debuggee is stopped
12681268
* installer:
12691269
- full installer now bundled with dmd 2.092.1 and LDC 1.22.0
1270+
1271+
unreleased version 1.0.1
1272+
* projects:
1273+
- bugzilla 21024: VS2017/2019 new project: fixed unrelated files listed in New Project Dialog
1274+
- bugzilla 21028: project templates not visible when VS started as standard/restricted user
1275+
* dmdserver:
1276+
- updated to dmd 2.093
1277+
- fixed showing documentation for template functions
1278+
* mago debugger expression evaluator:
1279+
- fixed wrong values displayed eventually when switching stack frames

VERSION

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

doc/Debugging.dd

Lines changed: 44 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,7 @@ $(P Using Mago's expression evaluator allowed to implement this for D pretty eas
8888
$(P The debugger engine needs to detect the source language of the code location. This information
8989
is added to the debug information starting with dmd 2.072 when compiled for COFF object
9090
files (-m64 or -m32mscoff) with -g, but not with
91-
-gc, i.e. you should select debug info for Mago even when using the VS debug engine.) Unfortunately,
92-
LDC does not yet emit this source language information.
91+
-gc, i.e. you should select debug info for Mago even when using the VS debug engine.)
9392

9493
<a id="recommendation"></a>
9594
$(H3 Recommendation for VS 2015 or later)
@@ -121,5 +120,48 @@ $(IMG_CENTER images/d_exceptions.png)
121120

122121
Please note that these specific exception settings only apply to the Mago debug engine, not the Concord extension.
123122

123+
<a id="customization"></a>
124+
$(H2 Debugger Customization)
125+
126+
$(P Starting with Visual D 1.0 the display of structs and classes can be customized in the mago expression evaluator
127+
for the Concord debugger engine (when using dmd as the copiler). This is done by enabling
128+
"Call struct/class methods __debug[Overview|Expanded|Visualizer]" in the global mago Debugging options for mago
129+
and adding some extra methods or fields to the declaration of the struct or class:)
130+
131+
$(UL
132+
$(LI `__debugOverview` will be evaluated to display the single line representation in the watch, locals or auto window.)
133+
$(LI `__debugExpanded` will be evaluated to display the expanded list of members in the watch, locals or auto window.)
134+
$(LI `__debugStringView` will be evaluated to populate the text visualizer window.)
135+
)
136+
137+
$(P The type of the return value determines what fields are displayed. Here is an example session:)
138+
139+
<div align="center"><img src="images/debugeval.png" width="90%"/></div>
140+
141+
$(P Instead of functions you can also define the __debug* properties as fields that are eagerly filled by the regular code.
142+
You must not alias other members because that information is not available in the debug information.)
143+
144+
$(P The JSON Visualizer window was opened by clicking the focused lense in the Autos window.
145+
As with other special display functionality, the function evaluation can be disabled by appending ",!" to
146+
the expression as shown in the watch window.)
147+
148+
$(P While executing these functions for display, the GC is switched to a region allocator that discards all memory
149+
when excution of the debuggee is resumed (this can be disabled in the global debugger options with setting
150+
"Switch GC while executing debugger functions"). So you should
151+
not keep references to memory allocated during execution of the __debug* functions.)
152+
153+
$(H3 Displaying Ranges)
154+
155+
$(P Enabling mago debugger option "Call range methods to show elements in overview/expansion" activates function evaluation of
156+
methods `save`, `empty`, `front` and `popFront` if they all exist. This allows displaying forward ranges as
157+
a list of their elements.)
158+
159+
<div align="center"><img src="images/debugranges.png" width="90%"/></div>
160+
161+
$(P This is currently considered experimental, because it is rather slow.)
162+
163+
$(P Known issue: if `front` returns a reference to the element, the wrong value is displayed. This is caused by bad
164+
debug information.)
165+
124166
Macros:
125167
TITLE=Debugging

doc/images/debugeval.png

85.9 KB
Loading

doc/images/debugranges.png

31.5 KB
Loading

nsis/Extensions_vs12/extension.vsixmanifest

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Pro" />
1515
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.IntegratedShell" />
1616
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Enterprise" />
17-
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Commuunity" />
17+
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Community" />
1818
</Installation>
1919
<Assets>
2020
<Asset Type="Microsoft.VisualStudio.VsPackage" Path="visuald.pkgdef" />

nsis/Extensions_vs15/extension.vsixmanifest

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Pro" />
1515
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.IntegratedShell" />
1616
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Enterprise" />
17-
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Commuunity" />
17+
<InstallationTarget Version="[12.0,17.0)" Id="Microsoft.VisualStudio.Community" />
1818
</Installation>
1919
<Assets>
2020
<Asset Type="Microsoft.VisualStudio.VsPackage" Path="visuald.pkgdef" />

nsis/replaceinfile.nsh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,8 @@ Function RIF
8585
IfFileExists $2 +1 RIF_error ; knock-knock
8686
FileOpen $R0 $2 "r" ; open the door
8787

88-
GetTempFileName $R2 ; who's new?
88+
GetFullPathName $R1 $2\.. ; same folder as source file
89+
GetTempFileName $R2 $R1 ; Put temporary file in same folder to preserve access rights
8990
FileOpen $R1 $R2 "w" ; the escape, please!
9091

9192
RIF_loop: ; round'n'round we go

nsis/visuald.nsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030
; define DMD source path to include dmd installation
3131
; !define DMD
32-
!define DMD_VERSION "2.092.1"
32+
!define DMD_VERSION "2.093.0"
3333
!define DMD_SRC c:\d\dmd-${DMD_VERSION}
3434

3535
; define LDC to include ldc installation

stdext/stdext.visualdproj

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
<preservePaths>0</preservePaths>
4141
<warnings>0</warnings>
4242
<infowarnings>0</infowarnings>
43-
<checkProperty>0</checkProperty>
4443
<genStackFrame>0</genStackFrame>
4544
<pic>0</pic>
4645
<cov>0</cov>
@@ -164,7 +163,6 @@
164163
<preservePaths>0</preservePaths>
165164
<warnings>0</warnings>
166165
<infowarnings>0</infowarnings>
167-
<checkProperty>0</checkProperty>
168166
<genStackFrame>0</genStackFrame>
169167
<pic>0</pic>
170168
<cov>0</cov>
@@ -288,7 +286,6 @@
288286
<preservePaths>0</preservePaths>
289287
<warnings>0</warnings>
290288
<infowarnings>0</infowarnings>
291-
<checkProperty>0</checkProperty>
292289
<genStackFrame>0</genStackFrame>
293290
<pic>0</pic>
294291
<cov>0</cov>
@@ -412,7 +409,6 @@
412409
<preservePaths>0</preservePaths>
413410
<warnings>0</warnings>
414411
<infowarnings>0</infowarnings>
415-
<checkProperty>0</checkProperty>
416412
<genStackFrame>0</genStackFrame>
417413
<pic>0</pic>
418414
<cov>0</cov>
@@ -536,7 +532,6 @@
536532
<preservePaths>0</preservePaths>
537533
<warnings>0</warnings>
538534
<infowarnings>0</infowarnings>
539-
<checkProperty>0</checkProperty>
540535
<genStackFrame>0</genStackFrame>
541536
<pic>0</pic>
542537
<cov>0</cov>
@@ -660,7 +655,6 @@
660655
<preservePaths>0</preservePaths>
661656
<warnings>0</warnings>
662657
<infowarnings>0</infowarnings>
663-
<checkProperty>0</checkProperty>
664658
<genStackFrame>0</genStackFrame>
665659
<pic>0</pic>
666660
<cov>0</cov>
@@ -784,7 +778,6 @@
784778
<preservePaths>0</preservePaths>
785779
<warnings>0</warnings>
786780
<infowarnings>0</infowarnings>
787-
<checkProperty>0</checkProperty>
788781
<genStackFrame>0</genStackFrame>
789782
<pic>0</pic>
790783
<cov>0</cov>
@@ -908,7 +901,6 @@
908901
<preservePaths>0</preservePaths>
909902
<warnings>0</warnings>
910903
<infowarnings>0</infowarnings>
911-
<checkProperty>0</checkProperty>
912904
<genStackFrame>0</genStackFrame>
913905
<pic>0</pic>
914906
<cov>0</cov>
@@ -1032,7 +1024,6 @@
10321024
<preservePaths>0</preservePaths>
10331025
<warnings>0</warnings>
10341026
<infowarnings>0</infowarnings>
1035-
<checkProperty>0</checkProperty>
10361027
<genStackFrame>0</genStackFrame>
10371028
<pic>0</pic>
10381029
<cov>0</cov>
@@ -1156,7 +1147,6 @@
11561147
<preservePaths>0</preservePaths>
11571148
<warnings>0</warnings>
11581149
<infowarnings>0</infowarnings>
1159-
<checkProperty>0</checkProperty>
11601150
<genStackFrame>0</genStackFrame>
11611151
<pic>0</pic>
11621152
<cov>0</cov>
@@ -1280,7 +1270,6 @@
12801270
<preservePaths>0</preservePaths>
12811271
<warnings>0</warnings>
12821272
<infowarnings>0</infowarnings>
1283-
<checkProperty>0</checkProperty>
12841273
<genStackFrame>0</genStackFrame>
12851274
<pic>0</pic>
12861275
<cov>0</cov>
@@ -1404,7 +1393,6 @@
14041393
<preservePaths>0</preservePaths>
14051394
<warnings>0</warnings>
14061395
<infowarnings>0</infowarnings>
1407-
<checkProperty>0</checkProperty>
14081396
<genStackFrame>0</genStackFrame>
14091397
<pic>0</pic>
14101398
<cov>0</cov>
@@ -1524,11 +1512,10 @@
15241512
<useSwitchError>0</useSwitchError>
15251513
<useUnitTests>0</useUnitTests>
15261514
<useInline>1</useInline>
1527-
<release>0</release>
1515+
<release>1</release>
15281516
<preservePaths>0</preservePaths>
15291517
<warnings>0</warnings>
15301518
<infowarnings>0</infowarnings>
1531-
<checkProperty>0</checkProperty>
15321519
<genStackFrame>0</genStackFrame>
15331520
<pic>0</pic>
15341521
<cov>0</cov>
@@ -1652,7 +1639,6 @@
16521639
<preservePaths>0</preservePaths>
16531640
<warnings>0</warnings>
16541641
<infowarnings>0</infowarnings>
1655-
<checkProperty>0</checkProperty>
16561642
<genStackFrame>0</genStackFrame>
16571643
<pic>0</pic>
16581644
<cov>0</cov>
@@ -1776,7 +1762,6 @@
17761762
<preservePaths>0</preservePaths>
17771763
<warnings>0</warnings>
17781764
<infowarnings>0</infowarnings>
1779-
<checkProperty>0</checkProperty>
17801765
<genStackFrame>0</genStackFrame>
17811766
<pic>0</pic>
17821767
<cov>0</cov>
@@ -1900,7 +1885,6 @@
19001885
<preservePaths>0</preservePaths>
19011886
<warnings>0</warnings>
19021887
<infowarnings>0</infowarnings>
1903-
<checkProperty>0</checkProperty>
19041888
<genStackFrame>0</genStackFrame>
19051889
<pic>0</pic>
19061890
<cov>0</cov>

0 commit comments

Comments
 (0)