Skip to content

Commit

Permalink
Merge pull request #108 from rainers/master
Browse files Browse the repository at this point in the history
Visual D 0.49.0
  • Loading branch information
rainers authored Apr 7, 2019
2 parents 616b422 + b6c27ec commit 66c2aef
Show file tree
Hide file tree
Showing 12 changed files with 175 additions and 88 deletions.
6 changes: 3 additions & 3 deletions CHANGES
Original file line number Diff line number Diff line change
Expand Up @@ -1074,17 +1074,16 @@ Version history
unreleased 0.49.0
* installation
- prepare for VS2019: detect installation, build against VS 2019 SDK, Win SDK 10.0.17763.0
- bugzilla 19690: installer fails to register MSBuild extensions for Visual Studio Build Tools
* build system
- now parallel compilation supported by VC projects (thanks to Igor Cesi)
- bugzilla 19558: now saves all files with single file compile (and run/debug/disassemble)
- add support for recently added command line options -mixin
- new "Language" configuration page for -betterC, -dipNN and -transition=/-preview=/-revert= options
- visualdproj: remove support for D1 and ancient/removed options -nofloat and -property
- visualdproj: replaced -noboundscheck option with -boundscheck=...
- bugzilla 19558: save all files with compile and run/debug/disassemble
- fix reading options from vcxproj with compile and run/debug/disassemble
- bugzilla 19726: VC project using LDC now adds C runtime to linker dependencies
- bugzilla 19690: installer fails to register MSBuild extensions for Visual Studio Build Tools
- bugzilla 19726: VC project using LDC now adds C runtime to linker dependencies
* dparser
- catch up with recent language changes:
- contract expressions
Expand All @@ -1093,6 +1092,7 @@ unreleased 0.49.0
- parse __vector and __parameters in IsExpression, evaluate __vector
- fix parsing character literals with surrogate pairs
- fix tooltips showing storage classes as type constructors
- fixed crash with "static foreach"
* debugger
- bugzilla 18889: do not forward tooltip to debugger if hovering compile time identifier (type/enum)
* editor
Expand Down
4 changes: 2 additions & 2 deletions VERSION
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#define VERSION_MAJOR 0
#define VERSION_MINOR 49
#define VERSION_REVISION 0
#define VERSION_BETA -beta
#define VERSION_BUILD 1
#define VERSION_BETA
#define VERSION_BUILD 0
84 changes: 37 additions & 47 deletions doc/Installation.dd
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
Ddoc

$(P Visual D works with all Visual Studio versions from 2008 to 2019. Please make sure to
have the $(B C++ development tools) aswell as a $(B Windows SDK) included in the Visual Studio installation.)

$(P The click-through-installer will guide you through the installation process. The installer lets you select the
Visual Studio Version for which you want Visual D to be installed. It will always install
for all users, not only for a single user.)
Expand All @@ -9,20 +12,44 @@ $(LINK2 https://github.com/D-Programming-GDC/GDC, GDC) or $(LINK2 https://github
installed. Not all functionality
has been thoroughly tested with GDC and LDC, so having DMD available for cross-checking is recommended.)

$(P Visual D does $(B not) work with any of the $(B Express) versions of Visual Studio. Other than the
commercial editions, the Express versions do not support loading third party extensions and add-ins.)
$(H2 Using LDC)

$(P LDC is a D compiler using the LLVM backend. It can produce more efficient code than DMD.
The latest releases can be found at $(LINK https://github.com/ldc-developers/ldc/releases/).
You should install the "multilib" version.)

$(P In November 2014 Microsoft released $(B $(LINK2 http://www.visualstudio.com/en-us/news/vs2013-community-vs.aspx,
Visual Studio Community 2013)), a version similar to Visual Studio Professional, but free for most users unless
working in larger companies. Visual D integrates just as well as with the commercial versions.)
$(P Enter the LDC installation path at the global Tools->Options->Projects and Solutions->Visual D Settings->LDC Directories
option page. Then switch the "Compiler" option in the project configuration to "LDC".)

$(P Visual D also works with the professional and community version of Visual Studio 2015 and 2017. Please be
aware that the VC runtime libraries that ship with VS 2015 are not supported by dmd up to 2.068
when compiling 64-bit applications.)
$(H2 Using GDC)

$(P GDC is a D compiler using the GNU compiler suite backend. It can produce more efficient code than DMD.)
You can find a rather dated build at $(LINK http://gdcproject.org/downloads). Please also install the respective
MinGW environment.

$(P Enter the GDC installation path at the global Tools->Options->Projects and Solutions->Visual D Settings->GDC Directories
option page. Then switch the "Compiler" option in the project configuration to "GDC".)

$(P Known issues:)
$(UL
$(LI when building a library you should change the output file name extension to ".a".)
$(LI when building a library object files will be generated into the project directory, not the
intermediate directory, because there seems to be no GDC option to change the output folder for multiple files.)
$(LI as there are no recent GDC releases for Windows, support for it has fallen short. Please don't expect
completeness.)
$(LI GDC is not supported by the VC project integration.)
)

$(H2 Visual Studio 2008 - 2012)

Visual D supports these versions, but is no longer being tested on these.

$(P Visual D does $(B not) work with any of the $(B Express) versions of Visual Studio. Other than the
commercial editions, the Express versions do not support loading third party extensions and add-ins.)

$(H2 Visual Studio Shell)
$(H3 Visual Studio Shell)

$(P A $(B free) alternative are the integrated $(B Visual Studio Shell) distributions, that can be downloaded
$(P A $(B free) alternative to the commercial releases are the integrated $(B Visual Studio Shell) distributions, that can be downloaded
from Microsoft (see below for links). The shells are identical with the Visual Studio IDE, but stripped of any language support. It
still contains the native debugger that can be used to debug D applications.)

Expand All @@ -48,42 +75,5 @@ $(P The $(B Visual Studio Shell 2013) is installed similar to VS Shell 2012, the
$(LINK2 http://www.microsoft.com/en-us/download/details.aspx?id=40764, isolated shell) and the
$(LINK2 http://www.microsoft.com/en-us/download/details.aspx?id=40777, integrated package).)

$(H2 Using GDC)

$(P To use GDC as the compiler to build D files, you will first have to install the MinGW environment and the GDC compiler:)
$(UL
$(LI MinGW64 installer: $(LINK http://tdm-gcc.tdragon.net/))
$(LI GDC binaries: $(LINK http://gdcproject.org/downloads))
)

$(P Add the MinGW64/bin path to your PATH environment variable or the executable path list in the "GDC Directories"
option page. Then switch the "Compiler" option in the project configuration to "GDC".)

$(P To create a 64-bit executable, you will have to add a new platform to the project and solution
in the configuration manager.)

$(P Known issues:)
$(UL
$(LI when building a library you should change the output file name extension to ".a".)
$(LI when building a library object files will be generated into the project directory, not the
intermediate directory, because there seems to be no GDC option to change the output folder for multiple files.)
)

$(H2 Using LDC)

$(P The latest releases can be found at $(LINK https://github.com/ldc-developers/ldc/releases/))

$(H3 Debugging)

$(P For debugging applications, you should also install cv2pdb which is now included in the
Visual D installer. Please make sure, changes to Common7\Packages\Debugger\autoexp.dat do
not mix with previous manual installations of $(LINK2 https://github.com/rainers/cv2pdb, cv2pdb).
Visual D also installs the alternative debug engine mago that does not need cv2pdb.)

$(P cv2pdb has been extended to also convert from DWARF debug information to PDB, so it
is possible to debug applications built with GDC in Visual Studio. Be sure to select
the "Visual Studio" debugger in the debugger project settings. Mago cannot be used
as the debug engine, it currently only supports the DMD CodeView debug format.)

Macros:
TITLE=Installation
24 changes: 9 additions & 15 deletions doc/StartPage.dd
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ $(TABLE_NOBORDER
$(TD $(IMG images/vd_logo.png))
$(TD
$(P Visual D is a Visual Studio package providing both project management and language services.
It works with Visual Studio 2008 - 2017 including Visual Studio Community as well as the free Visual Studio Shells.
It works with Visual Studio 2008 - 2019 including Visual Studio Community as well as the free Visual Studio Shells.
See the $(LINK2 Installation.html, Installation) instructions, especially if not using a commercial or community edition of Visual Studio.)

$(P Visual D aims at providing seamless integration of the D programming language into Visual Studio.)
Expand Down Expand Up @@ -54,6 +54,14 @@ $(H2 News)
$(P $(LINK2 VersionHistory.html, Full version history and complete details...)
)

2019-04-07 Version 0.49.0
$(UL
$(LI support for Visual Studio 2019)
$(LI parallel compilation supported by VC projects (thanks to Igor Cesi))
$(LI catch up with recent language changes)
$(LI new "Language" configuration page for -transition=/-preview=/-revert= options)
)

2018-12-22 Version 0.48.1
$(UL
$(LI goto definition on alias: jump to base definition if caret on alias)
Expand All @@ -69,20 +77,6 @@ $(UL
$(LI mago debugger: show return value, showing closure and capture variables as locals for dmd 2.084)
)

2018-06-24 Version 0.47.0
$(UL
$(LI improved vcxproj integration: better dependencies, automatic libraries, name demangling)
$(LI new $(LINK2 ProjectWizard.html, project wizard))
$(LI mago debugger: show vtable, dynamic type of interfaces, symbolic names of pointer address)
)

2017-12-02 Version 0.46.0
$(UL
$(LI improved integration for VS2017 including update 15.3.1 or later)
$(LI improved LDC support)
$(LI support for new symbol mangling and parsing 'static foreach')
)

$(LINK2 VersionHistory.html, more...)

$(H2 Download)
Expand Down
74 changes: 58 additions & 16 deletions doc/VersionHistory.dd
Original file line number Diff line number Diff line change
@@ -1,5 +1,47 @@
Ddoc

$(H2 2019-04-07 Version 0.49.0)
$(UL
$(LI installation
$(UL
$(LI prepare for VS2019: detect installation, build against VS 2019 SDK, Win SDK 10.0.17763.0)
$(LI bugzilla 19690: installer fails to register MSBuild extensions for Visual Studio Build Tools)
))
$(LI build system
$(UL
$(LI now parallel compilation supported by VC projects (thanks to Igor Cesi))
$(LI add support for recently added command line options -mixin)
$(LI new "Language" configuration page for -betterC, -dipNN and -transition=/-preview=/-revert= options)
$(LI visualdproj: remove support for D1 and ancient/removed options -nofloat and -property)
$(LI visualdproj: replaced -noboundscheck option with -boundscheck=...)
$(LI bugzilla 19558: save all files with compile and run/debug/disassemble)
$(LI fix reading options from vcxproj with compile and run/debug/disassemble)
$(LI bugzilla 19726: VC project using LDC now adds C runtime to linker dependencies)
))
$(LI dparser
$(UL
$(LI catch up with recent language changes:
$(UL
$(LI contract expressions)
$(LI traits can appear everywhere a type can be declared)
$(LI allow @UDA for enumerator values)
))
$(LI parse __vector and __parameters in IsExpression, evaluate __vector)
$(LI fix parsing character literals with surrogate pairs)
$(LI fix tooltips showing storage classes as type constructors)
$(LI fixed crash with "static foreach")
))
$(LI debugger
$(UL
$(LI bugzilla 18889: do not forward tooltip to debugger if hovering compile time identifier (type/enum))
))
$(LI editor
$(UL
$(LI tweaked default colors to better work with dark mode (restart VS and Visual D twice after switch
between light and dark modes))
))
)

$(H2 2018-12-22 Version 0.48.1)
$(UL
$(LI dparser:
Expand Down Expand Up @@ -310,7 +352,7 @@ $(H2 2017-03-12 Version 0.44)
$(UL
$(LI added preliminary support for VS 2017 RC)
$(LI new version scheme removing the gratuitious .3 from the Visual D version)
))
))
$(LI project management
$(UL
$(LI added integration with msbuild and VC++ projects)
Expand All @@ -323,50 +365,50 @@ $(H2 2017-03-12 Version 0.44)
$(LI added x64 configurations to project templates)
$(LI added project template to build with DMD, LDC and GDC for x86 and x64)
$(LI building a library with LDC now always adds "-oq -od=$(DOLLAR)(IntDir)" to the command line)
))
))
$(LI mago:
$(UL
$(LI bring back support to run on Windows XP)
$(LI display const modifier on type, recover string types)
$(LI add and install Concord debug engine plugin for VS 2012-2015)
))
))
$(LI cv2pdb:
$(UL
$(LI fix crashes with very long symbols)
$(LI can now be enabled independently of debug engine)
))
))
$(LI language service
$(UL
$(LI added automatic brace completion)
$(LI dparser: semantic analysis no longer times out after 500ms, but cancels previous requests)
$(LI dparser: improved performance by adding name lookup cache)
$(LI Improvements to completion lists:
$(UL
$(UL
$(LI completion box no longer pops up if caret has been moved elsewhere)
$(LI new option to disable exact start match (searches case insensitive sub string))
$(LI free functions show different icon than member functions)
$(LI aliases show other icon than variables)
$(LI new sorting modes "by type" using classification by the semantic engine,
"by declaration", effectively using scopes as discovered by the semantic engine)
$(LI new option to disable exact start match (searches case insensitive sub string))
$(LI free functions show different icon than member functions)
$(LI aliases show other icon than variables)
$(LI new sorting modes "by type" using classification by the semantic engine,
"by declaration", effectively using scopes as discovered by the semantic engine)
$(LI without any match, still keep the completion box open to update when deleting the last character)
$(LI less flashing when updating the results)
$(LI code snippets now added to possible expansions)
$(LI less flashing when updating the results)
$(LI code snippets now added to possible expansions)
))
))
))
$(LI build
$(UL
$(LI now builds with dmd 2.073)
$(LI added AppVeyor integration builds)
$(LI VS SDK 2013 now needed to build Visual D)
))
))
$(LI miscellaneous
$(UL
$(LI dustmite: error messages written to stderr not grepped)
$(LI menu entries now disabled if they require the focus on a D file, but it is elsewhere)
$(LI reduced idle processing by only updating the active view)
))
))
)

$(H2 2015-11-28 Version 0.3.43)
$(UL
$(LI installation
Expand Down
3 changes: 2 additions & 1 deletion doc/dlang.org.ddoc
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,8 @@ SEARCH_BOX=
<input type="hidden" id="sourceid" name="sourceid" value="google-search">
$(SPANID search-query, <input id="q" name="q" placeholder="Search">)$(SPANID search-dropdown, $(SPANC helper,
<select id="sitesearch" name="sitesearch" size="1">
<option value="dlang.org">Entire Site</option>
<option value="http://rainers.github.io/visuald/visuald">Visual D</option>
<option value="dlang.org">dlang.org</option>
<option $(SEARCHDEFAULT_SPEC) value="dlang.org/spec">Language</option>
<option $(SEARCHDEFAULT_PHOBOS) value="dlang.org/phobos">Library</option>
<option $(SEARCHDEFAULT_FORUM) value="forum.dlang.org">Forums</option>
Expand Down
2 changes: 1 addition & 1 deletion doc/visuald.ddoc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
VERSION = 0.48.1
VERSION = 0.49.0
ROOT_DIR = http://www.dlang.org/
ROOT = http://www.dlang.org
BODYCLASS = visuald
Expand Down
Loading

0 comments on commit 66c2aef

Please sign in to comment.