Although the NORMA project is now tracked at https://github.com/ormsolutions/NORMA I wanted to reach the loyal listeners on this site.
For Visual Studio 2017 and 2019 NORMA is no longer installed with a traditional setup (.msi) file. Instead, the full NORMA product is available in the Visual Studio Marketplace for installation as a Visual Studio extension. To install:
1. Open the extensions dialog inside Visual Studio. In 2017 this is on the Tools/Extensions and Updates menu item. In 2019, the dialog has moved to Extensions/Manage Extensions .
2. On the left of the dialog, click Online (or the sub item Visual Studio Marketplace)
3. In the Search dialog, type NORMA
4. Look for Natural ORM Architect
5. Download and follow the standard directions for installing an extension.
The extension is published by ORM Solutions, and all official NORMA releases will be digitally signed by ORM Solutions, LLC.
Updates for NORMA will also be visible when you reopen the extensions dialog.
The NORMA extension cannot auto-update because it includes XML schema files, which are limited by Visual Studio to require an 'All Users' installation. Auto-update is not available for an 'All Users' extension.
Issues can be reported at https://github.com/ormsolutions/NORMA/issues
Detailed Explanation of Changes
The NORMA project was forced to go through major revisions due to the side-by-side installation approach introduced in Visual Studio 2017 (and later). VS has generally supported side-by-side installation of different VS versions (I have a build machine with VS 2005/2008/2010/2012/2013/2015/2017/2019 all installed and working correctly), there was no way to run multiple instances of the same Visual Studio version (including different editions, like Community and Enterprise) on the same machine. This support caused a number of issues with the way NORMA builds and installs.
From a build perspective, this means that even the location of the Visual Studio installation being targeted is no longer a trivial registry query because the Visual Studio installation information is no longer in the registry! It also means the target destination for the files is no longer static. For example, NORMA files used to install in the GAC (Global Assembly Cache) and be installed under the C:\Program Files (x86)\ORM Solutions directory. With the new system the GAC is no longer used and the files are no longer distributed to a fixed location. This means simple operations like referencing NORMA assemblies now require additional data to build. Beyond the build scripts, some assumptions about file location had to change in code. For example, NORMA extensions previously added verbalization content by modifying the NORMA verbalization directory. However, the location of this directory is no longer available for additional extensions, so NORMA now has to locate and reconcile multiple verbalization directories.
From an installation perspective there are even more changes. To provide full support to the Visual Studio Marketplace we now use a .VSIX file for installation instead of an .MSI. This means that the Setup project is no longer used for builds above VS2015. Setup has been replaced with a different project to reference the same files as setup and distribute them in a VSIX file. Unfortunately, these changes cannot be applied to VS2015 because NORMA installs XML schema files, which cannot be included in an extension prior to the 2017 release.
So, VS2017 was obviously very late (my apologies), but official VS2019 support has arrived right on time. There were a lot of little details required for this release, include non-coding issues like obtaining digital signing certificates to enable official builds in the marketplace.
The bottom line is that NORMA is now available with the latest Visual Studio releases, is visible to the broader Visual Studio community, and is much easier to install, update, and share with your friends. Enjoy!
Thanks, Matt. I was looking forward to this easier install, since we're still eagerly using your tool. Cheers!