Skip to content

Commit 4a19816

Browse files
authored
Merge pull request #71 from rainers/master
Version v0.44
2 parents a09c183 + 9f9d448 commit 4a19816

File tree

7 files changed

+88
-49
lines changed

7 files changed

+88
-49
lines changed

VERSION

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

doc/BuildFromSource.dd

Lines changed: 31 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,55 @@
11
Ddoc
22

3-
$(P The latest sources of Visual D are available from the github repository at
3+
$(P The latest sources of Visual D are available from the github repository at
44
$(LINK2 https://github.com/dlang/visuald, https://github.com/dlang/visuald).)
55

66
$(H2 Prerequisites)
77

88
$(P You need the following tools to build Visual D:)
99
$(UL
10-
$(LI Visual Studio 2008/2010/2012 (other version might also work, but I haven't tried a lot))
11-
$(LI $(LINK2 http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=59ec6ec3-4273-48a3-ba25-dc925a45584d, Visual Studio Integration SDK for VS2008)
12-
or $(LINK2 http://www.microsoft.com/downloads/en/details.aspx?FamilyID=47305cf4-2bea-43c0-91cd-1b853602dcc5, Visual Studio Integration SDK for VS2010))
13-
$(LI Windows SDK 6.0A (included in VS2008) or SDK 7.0A (included in VS2010) or SDK v7.1 (included in the Windows 7 SDK), other versions might also work.)
14-
$(LI DMD 2.059 or newer)
10+
$(LI Visual Studio 2013/2015 (other versions might also work))
11+
$(LI $(LINK2 https://www.microsoft.com/en-us/download/details.aspx?id=40758,
12+
Visual Studio Integration SDK for VS2013) or enable it during $(LINK2
13+
https://msdn.microsoft.com/en-us/library/mt683786.aspx, VS 2015 installation).)
14+
$(LI Windows SDK 6.0A (included in VS2008) or later (tested with most versions
15+
up to 10.0.14393.0))
16+
$(LI DMD 2.066 or newer)
1517
$(LI coffimplib ($(LINK2 ftp://ftp.digitalmars.com/coffimplib.zip, ftp)))
1618
$(LI for installer: $(LINK2 http://nsis.sourceforge.net/Download, NSIS))
1719
$(LI for debugging: $(LINK2 https://github.com/rainers/cv2pdb, cv2pdb))
1820
)
1921

2022
$(H2 Building Visual D)
2123

22-
$(P The Visual D source code is usually updated to work with the latest release version
23-
of DMD (2.059 as of now), so you should use this release of the compiler when using
24+
There is an $(LINK2 https://ci.appveyor.com/project/rainers/visuald, AppVeyor project)
25+
that verifies recent changes to the development
26+
branch of Visual D. This can also be used as a reference for the build process.
27+
28+
$(P The Visual D source code is usually updated to work with the latest release version
29+
of DMD (2.073 as of now), so you should use this release of the compiler when using
2430
the latest svn/git checkout.)
2531

26-
$(P The standard build procedure for the release version is to execute
27-
"nmake" in the trunk directory. $(B Please check the variable settings at the
32+
$(P The standard build procedure for the release version is to execute
33+
"nmake install_vs" in the trunk directory. $(B Please check the variable settings at the
2834
top of the Makefile and adjust them to the installation directories on your system.))
2935

30-
$(P If you want to start developing or debugging, you should execute
31-
"$(B nmake sdk)" at least once to build the necessary D translations from
32-
the Windows and Visual Studio SDK. Afterwards you can use Visual D itself with the
33-
solution visuald_vs9.sln or visuald_vs10.sln, respectively.)
36+
$(P If you want to start developing or debugging, you should load visuald_vs10.sln
37+
in Visual Studio with Visual D installed. Build the "build" project at least once
38+
to build the necessary prerequisites and tools, e.g. D translations from
39+
the Windows and Visual Studio SDK.)
3440

3541
$(H3 Known issues)
3642
$(UL
37-
$(LI building the parser library with stock DMD before 2.066 causes an "Out of memory" error. There are two
38-
options how to fix this:
43+
$(LI building the parser library with stock DMD before 2.066 and after 2.068 might cause
44+
an "Out of memory" error. There are two options how to fix this:
3945
$(UL
40-
$(LI enable the LARGE_ADDRESS_AWARE bit inside dmd.exe with this simple tool:
41-
$(LINK https://github.com/dlang/visuald/blob/master/tools/largeadr.d) (if you are running a
46+
$(LI enable the LARGE_ADDRESS_AWARE bit inside dmd.exe with this simple tool:
47+
$(LINK https://github.com/dlang/visuald/blob/master/tools/largeadr.d) (if you are running a
4248
32-bit OS, you will also need to boot with the /3GB switch))
43-
$(LI build DMD with the Microsoft compiler instead of the Digital Mars compiler
49+
$(LI build DMD with the Microsoft compiler instead of the Digital Mars compiler
4450
(This also has the benefit of an executable that compiles about twice as fast))
4551
)
4652
)
47-
$(LI building '''pkgcmd.cto''' from pkgcmd.ctc needs CTC.exe from the VS2008 VSI SDK.
48-
This program is no longer available in the 2010 VSI SDK. Therefore, a precompiled version of
49-
pkgcmd.cto is committed. If the build rule fails please make sure pkgcmd.cto is newer than
50-
pkgcmd.ctc to skip this build step.)
51-
5253
$(LI A druntime patch is necessary for correct name demangling in the profiler window:
5354
$(UL
5455
$(LI $(LINK2 http://d.puremagic.com/issues/show_bug.cgi?id=4852, Issue 4852): Support to suppress function signature in the profiler window)
@@ -59,7 +60,7 @@ $(UL
5960

6061
$(H2 Deployment)
6162

62-
$(P You should debug the plugin within Visual Studio 2008/2010 using a different
63+
$(P You should debug Visual D within Visual Studio 2013/2015 using a different
6364
branch in the registry, so it does not interfere with your working
6465
environment.)
6566

@@ -77,11 +78,11 @@ $(UL
7778
)
7879
)
7980
)
80-
$(LI VS2010/VS2012: The mechanism has dramatically changed with VS2010, as the non-standard registry settings are rebuilt
81-
on every start of Visual Studio.
81+
$(LI VS2010-VS2015: The mechanism has changed with VS2010, as the non-standard registry settings are rebuilt
82+
on every start of Visual Studio.
8283
$(UL
83-
$(LI Put the files from trunk\nsis\extensions into the folder
84-
$(DOLLAR)(APPDATA)\Local\Microsoft\VisualStudio\10.0D\Extensions\VisualD (replace 10.0D with 11.0D for VS2012))
84+
$(LI Put the files from trunk\nsis\extensions into the folder
85+
$(DOLLAR)(APPDATA)\Local\Microsoft\VisualStudio\12.0D\Extensions\VisualD (replace 12.0D with 14.0D for VS2015))
8586
$(LI in visuald.pkgdef, replace the path "M:\\s\\d\\visuald\\trunk\\bin\\debug\\visuald.dll" with your debug build output path.)
8687
$(LI Start the IDE with the new settings branch via)
8788
$(PRE devenv /RootSuffix D)
@@ -94,4 +95,4 @@ $(P Good luck!)
9495

9596
Macros:
9697
TITLE=Building from Source
97-
98+

doc/Features.dd

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,27 @@ Ddoc
1010
$(LI pre/post custom build steps)
1111
$(LI automatic dependency generation)
1212
$(LI automatic link between dependent projects)
13-
$(LI integrates cv2pdb and mago for seamless debugger integration)
1413
$(LI new project templates)
14+
$(LI msbuild integration with VC projects)
1515
)
1616
)
1717

18+
$(LI Project management
19+
$(UL
20+
$(LI integrates cv2pdb and mago for seamless debugger integration)
21+
$(LI or plugs into the VS debug engine as a language extension)
22+
)
23+
)
1824
$(LI Language Service
1925
$(UL
2026
$(LI syntax highlighting with special version/debug and token string support)
2127
$(LI underlining of syntactical errors)
22-
$(LI word-completion through buffer, JSON compile info or semantic analysis)
28+
$(LI word-completion through semantic analysis, buffer, or JSON compile info)
2329
$(LI import statement completion)
24-
$(LI goto definition (using JSON file from compilation or semantic analysis))
30+
$(LI goto definition (using semantic analysis or JSON file from compilation))
2531
$(LI parameter info tooltips)
2632
$(LI smart indentation)
33+
$(LI automatic brace completion)
2734
$(LI comment/uncomment selection)
2835
$(LI highlight/jump-to matching braces)
2936
$(LI code snippets)
@@ -42,23 +49,24 @@ Ddoc
4249
$(UL
4350
$(LI C++ to D conversion wizard)
4451
$(LI Profiler window)
52+
$(LI Code Coverage display)
53+
$(LI Dustmite integration)
4554
)
4655
)
4756
$(LI Supported Visual Studio versions
4857
$(UL
49-
$(LI VS 2005)
5058
$(LI VS 2008)
5159
$(LI VS 2010)
5260
$(LI VS 2012)
5361
$(LI VS 2013)
5462
$(LI VS 2015)
5563
)
56-
Unfortunately, Express versions of Visual Studio do not support this kind of extensions.
57-
But you can use the (integrated) Visual Studio Shell (download
58-
$(LINK2 http://www.microsoft.com/downloads/details.aspx?FamilyID=40646580-97FA-4698-B65F-620D4B4B1ED7&displaylang=en, VS Shell 2008) or
59-
$(LINK2 http://www.microsoft.com/downloads/details.aspx?FamilyID=8e5aa7b6-8436-43f0-b778-00c3bca733d3&displaylang=en, VS Shell 2010) or
64+
Unfortunately, Express versions of Visual Studio do not support this kind of extensions.
65+
But you can use the (integrated) Visual Studio Shell (download
66+
$(LINK2 http://www.microsoft.com/downloads/details.aspx?FamilyID=40646580-97FA-4698-B65F-620D4B4B1ED7&displaylang=en, VS Shell 2008) or
67+
$(LINK2 http://www.microsoft.com/downloads/details.aspx?FamilyID=8e5aa7b6-8436-43f0-b778-00c3bca733d3&displaylang=en, VS Shell 2010) or
6068
$(LINK2 https://www.microsoft.com/en-us/download/details.aspx?id=30670, VS Shell 2012)), which is the Visual Studio IDE stripped of any
61-
language support.
69+
language support.
6270
)
6371
$(LI sources include tools to
6472
$(UL
@@ -76,7 +84,7 @@ Ddoc
7684
)
7785
)
7886
)
79-
87+
8088

8189
Macros:
8290
TITLE=Major Features

doc/StartPage.dd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ $(H2 News)
5454
$(P $(LINK2 VersionHistory.html, Full version history and complete details...)
5555
)
5656

57-
2017-02-06 Version 0.44
57+
2017-03-12 Version 0.44
5858
$(UL
5959
$(LI $(VDLINK vcxproject, integration) with msbuild and Visual C/C++ projects)
6060
$(LI enhanced $(LINK2 Debugging.html#concord, integration) with the Visual Studio debugger by only adding mago's expression evaluator)

doc/VersionHistory.dd

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Ddoc
22

3-
$(H2 2017-02-08 Version 0.44)
3+
$(H2 2017-03-12 Version 0.44)
44
$(UL
55
$(LI installation
66
$(UL
@@ -29,7 +29,7 @@ $(H2 2017-02-08 Version 0.44)
2929
$(LI cv2pdb:
3030
$(UL
3131
$(LI fix crashes with very long symbols)
32-
$(LI can now be enabled independent of debug engine)
32+
$(LI can now be enabled independently of debug engine)
3333
))
3434
$(LI language service
3535
$(UL
@@ -45,6 +45,8 @@ $(H2 2017-02-08 Version 0.44)
4545
$(LI new sorting modes "by type" using classification by the semantic engine,
4646
"by declaration", effectively using scopes as discovered by the semantic engine)
4747
$(LI without any match, still keep the completion box open to update when deleting the last character)
48+
$(LI less flashing when updating the results)
49+
$(LI code snippets now added to possible expansions)
4850
))
4951
))
5052
$(LI build

nsis/Extensions/extension.vsixmanifest

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<Identifier Id="Visual.D">
77
<Name>Visual D</Name>
88
<Author>Rainer Schuetze</Author>
9-
<Version>0.3</Version>
9+
<Version>0.44</Version>
1010
<Description>Extension to provide support for the D programming language.</Description>
1111
<Locale>1033</Locale>
1212
<MoreInfoUrl>http://rainers.github.io/visuald/visuald/StartPage.html</MoreInfoUrl>
@@ -31,6 +31,27 @@
3131
<Edition>VSTS</Edition>
3232
<Edition>VSTD</Edition>
3333
</VisualStudio>
34+
<VisualStudio Version="12.0">
35+
<Edition>Community</Edition>
36+
<Edition>Pro</Edition>
37+
<Edition>IntegratedShell</Edition>
38+
<Edition>VSTS</Edition>
39+
<Edition>VSTD</Edition>
40+
</VisualStudio>
41+
<VisualStudio Version="14.0">
42+
<Edition>Community</Edition>
43+
<Edition>Pro</Edition>
44+
<Edition>IntegratedShell</Edition>
45+
<Edition>VSTS</Edition>
46+
<Edition>VSTD</Edition>
47+
</VisualStudio>
48+
<VisualStudio Version="15.0">
49+
<Edition>Community</Edition>
50+
<Edition>Pro</Edition>
51+
<Edition>IntegratedShell</Edition>
52+
<Edition>VSTS</Edition>
53+
<Edition>VSTD</Edition>
54+
</VisualStudio>
3455
</SupportedProducts>
3556
<SupportedFrameworkRuntimeEdition MinVersion="4.0" MaxVersion="4.0" />
3657
</Identifier>

visuald/register.d

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -688,9 +688,16 @@ version(none){
688688
scope RegKey keyMarshal2 = new RegKey(HKEY_CLASSES_ROOT, "CLSID\\"w ~ GUID2wstring(iid) ~ "\\InprocHandler32"w);
689689
keyMarshal2.Set(null, dllPath);
690690
}
691-
registerMarshalObject(g_unmarshalEnumOutCLSID);
692-
static if(is(typeof(g_unmarshalTargetInfoCLSID)))
693-
registerMarshalObject(g_unmarshalTargetInfoCLSID);
691+
try
692+
{
693+
registerMarshalObject(g_unmarshalEnumOutCLSID);
694+
static if(is(typeof(g_unmarshalTargetInfoCLSID)))
695+
registerMarshalObject(g_unmarshalTargetInfoCLSID);
696+
}
697+
catch(Exception)
698+
{
699+
// silently ignore errors if not running as admin
700+
}
694701

695702
fixVS2012Shellx64Debugger(keyRoot, registrationRoot);
696703

0 commit comments

Comments
 (0)