diff --git a/BismNormalizer/AlmToolkit/About.Designer.cs b/BismNormalizer/AlmToolkit/About.Designer.cs index fe632e6..2340ee9 100644 --- a/BismNormalizer/AlmToolkit/About.Designer.cs +++ b/BismNormalizer/AlmToolkit/About.Designer.cs @@ -32,7 +32,10 @@ this.logoPictureBox = new System.Windows.Forms.PictureBox(); this.lblProductVersion = new System.Windows.Forms.Label(); this.lblProductName = new System.Windows.Forms.Label(); + this.linkReleaseHistory = new System.Windows.Forms.LinkLabel(); this.linkDocumentation = new System.Windows.Forms.LinkLabel(); + this.linkALMTWebsite = new System.Windows.Forms.LinkLabel(); + this.linkLatestVersion = new System.Windows.Forms.LinkLabel(); ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit(); this.SuspendLayout(); // @@ -40,20 +43,18 @@ // this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this.okButton.Location = new System.Drawing.Point(511, 198); - this.okButton.Margin = new System.Windows.Forms.Padding(7, 7, 7, 7); + this.okButton.Location = new System.Drawing.Point(203, 140); this.okButton.Name = "okButton"; - this.okButton.Size = new System.Drawing.Size(175, 56); + this.okButton.Size = new System.Drawing.Size(75, 25); this.okButton.TabIndex = 24; this.okButton.Text = "&OK"; // // logoPictureBox // this.logoPictureBox.Image = ((System.Drawing.Image)(resources.GetObject("logoPictureBox.Image"))); - this.logoPictureBox.Location = new System.Drawing.Point(28, 20); - this.logoPictureBox.Margin = new System.Windows.Forms.Padding(7, 7, 7, 7); + this.logoPictureBox.Location = new System.Drawing.Point(12, 9); this.logoPictureBox.Name = "logoPictureBox"; - this.logoPictureBox.Size = new System.Drawing.Size(147, 150); + this.logoPictureBox.Size = new System.Drawing.Size(63, 67); this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; this.logoPictureBox.TabIndex = 12; this.logoPictureBox.TabStop = false; @@ -61,57 +62,98 @@ // lblProductVersion // this.lblProductVersion.AutoSize = true; - this.lblProductVersion.Location = new System.Drawing.Point(205, 80); - this.lblProductVersion.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0); + this.lblProductVersion.Location = new System.Drawing.Point(88, 65); + this.lblProductVersion.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); this.lblProductVersion.Name = "lblProductVersion"; - this.lblProductVersion.Size = new System.Drawing.Size(79, 29); + this.lblProductVersion.Size = new System.Drawing.Size(35, 13); this.lblProductVersion.TabIndex = 26; this.lblProductVersion.Text = "label1"; // // lblProductName // this.lblProductName.AutoSize = true; - this.lblProductName.Location = new System.Drawing.Point(205, 20); - this.lblProductName.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0); + this.lblProductName.Font = new System.Drawing.Font("Microsoft Sans Serif", 13F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblProductName.Location = new System.Drawing.Point(88, 10); + this.lblProductName.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); this.lblProductName.Name = "lblProductName"; - this.lblProductName.Size = new System.Drawing.Size(79, 29); + this.lblProductName.Size = new System.Drawing.Size(64, 22); this.lblProductName.TabIndex = 27; this.lblProductName.Text = "label1"; // + // linkReleaseHistory + // + this.linkReleaseHistory.AutoSize = true; + this.linkReleaseHistory.Location = new System.Drawing.Point(88, 113); + this.linkReleaseHistory.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.linkReleaseHistory.Name = "linkReleaseHistory"; + this.linkReleaseHistory.Size = new System.Drawing.Size(79, 13); + this.linkReleaseHistory.TabIndex = 28; + this.linkReleaseHistory.TabStop = true; + this.linkReleaseHistory.Text = "Release history"; + this.linkReleaseHistory.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkReleaseHistory_LinkClicked); + // // linkDocumentation // this.linkDocumentation.AutoSize = true; - this.linkDocumentation.Location = new System.Drawing.Point(205, 141); - this.linkDocumentation.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0); + this.linkDocumentation.Location = new System.Drawing.Point(88, 41); + this.linkDocumentation.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); this.linkDocumentation.Name = "linkDocumentation"; - this.linkDocumentation.Size = new System.Drawing.Size(174, 29); - this.linkDocumentation.TabIndex = 28; + this.linkDocumentation.Size = new System.Drawing.Size(79, 13); + this.linkDocumentation.TabIndex = 30; this.linkDocumentation.TabStop = true; this.linkDocumentation.Text = "Documentation"; this.linkDocumentation.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkDocumentation_LinkClicked); // + // linkALMTWebsite + // + this.linkALMTWebsite.AutoSize = true; + this.linkALMTWebsite.Location = new System.Drawing.Point(137, 10); + this.linkALMTWebsite.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.linkALMTWebsite.Name = "linkALMTWebsite"; + this.linkALMTWebsite.Size = new System.Drawing.Size(64, 13); + this.linkALMTWebsite.TabIndex = 31; + this.linkALMTWebsite.TabStop = true; + this.linkALMTWebsite.Text = "ALM Toolkit"; + this.linkALMTWebsite.Visible = false; + // + // linkLatestVersion + // + this.linkLatestVersion.AutoSize = true; + this.linkLatestVersion.Location = new System.Drawing.Point(88, 88); + this.linkLatestVersion.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.linkLatestVersion.Name = "linkLatestVersion"; + this.linkLatestVersion.Size = new System.Drawing.Size(73, 13); + this.linkLatestVersion.TabIndex = 32; + this.linkLatestVersion.TabStop = true; + this.linkLatestVersion.Text = "Latest version"; + this.linkLatestVersion.Visible = false; + this.linkLatestVersion.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLatestVersion_LinkClicked); + // // About // this.AcceptButton = this.okButton; - this.AutoScaleDimensions = new System.Drawing.SizeF(14F, 29F); + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.CancelButton = this.okButton; - this.ClientSize = new System.Drawing.Size(714, 281); + this.ClientSize = new System.Drawing.Size(290, 177); + this.Controls.Add(this.linkLatestVersion); + this.Controls.Add(this.linkALMTWebsite); this.Controls.Add(this.linkDocumentation); + this.Controls.Add(this.linkReleaseHistory); this.Controls.Add(this.lblProductName); this.Controls.Add(this.lblProductVersion); this.Controls.Add(this.logoPictureBox); this.Controls.Add(this.okButton); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; - this.Margin = new System.Windows.Forms.Padding(7, 7, 7, 7); this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "About"; - this.Padding = new System.Windows.Forms.Padding(21, 20, 21, 20); + this.Padding = new System.Windows.Forms.Padding(9); this.ShowIcon = false; this.ShowInTaskbar = false; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.Text = "About"; + this.Load += new System.EventHandler(this.About_Load); ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); @@ -123,6 +165,9 @@ private System.Windows.Forms.PictureBox logoPictureBox; private System.Windows.Forms.Label lblProductVersion; private System.Windows.Forms.Label lblProductName; + private System.Windows.Forms.LinkLabel linkReleaseHistory; private System.Windows.Forms.LinkLabel linkDocumentation; + private System.Windows.Forms.LinkLabel linkALMTWebsite; + private System.Windows.Forms.LinkLabel linkLatestVersion; } } diff --git a/BismNormalizer/AlmToolkit/About.cs b/BismNormalizer/AlmToolkit/About.cs index 5bb75f7..c4e9891 100644 --- a/BismNormalizer/AlmToolkit/About.cs +++ b/BismNormalizer/AlmToolkit/About.cs @@ -11,62 +11,59 @@ namespace AlmToolkit { partial class About : Form { + private bool _newerVersionAvailable = false; + private string _latestVersion = null; + public About() { InitializeComponent(); + } + + public bool NewerVersionAvailable + { + get { return _newerVersionAvailable; } + set { _newerVersionAvailable = value; } + } + + public string LatestVersion + { + get { return _latestVersion; } + set { _latestVersion = value; } + } + + private void About_Load(object sender, EventArgs e) + { this.Text = Utils.AssemblyProduct; this.lblProductName.Text = this.Text; - this.lblProductVersion.Text = String.Format("Version {0}", AssemblyVersion); - this.linkDocumentation.LinkVisited = false; + + Version installedVersion = new Version(Utils.AssemblyVersion); + string installedVersionMajorMinorBuild = String.Format("{0}.{1}.{2}", installedVersion.Major, installedVersion.Minor, installedVersion.Build); + + this.lblProductVersion.Text = String.Format("Installed version {0}", installedVersionMajorMinorBuild); + if (_newerVersionAvailable) + { + linkLatestVersion.Visible = true; + linkLatestVersion.Text = String.Format("Latest version {0}", _latestVersion); + } + this.linkReleaseHistory.LinkVisited = false; + } + + private void linkLatestVersion_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + this.linkLatestVersion.LinkVisited = true; + System.Diagnostics.Process.Start(Utils.LatestVersionDownloadUrl); + } + + private void linkReleaseHistory_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + this.linkReleaseHistory.LinkVisited = true; + System.Diagnostics.Process.Start(Utils.ReleaseHistoryUrl); } private void linkDocumentation_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { this.linkDocumentation.LinkVisited = true; - System.Diagnostics.Process.Start("https://github.com/microsoft/Analysis-Services/blob/master/BismNormalizer/Model%20Comparison%20and%20Merging%20for%20Analysis%20Services.pdf"); + System.Diagnostics.Process.Start(Utils.DocumentationUrl); } - - #region Assembly Attribute Accessors - - public string AssemblyTitle - { - get - { - object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false); - if (attributes.Length > 0) - { - AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0]; - if (titleAttribute.Title != "") - { - return titleAttribute.Title; - } - } - return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase); - } - } - - public string AssemblyVersion - { - get - { - return Assembly.GetExecutingAssembly().GetName().Version.ToString() + " (BismNormalizer)"; - } - } - - public string AssemblyDescription - { - get - { - object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false); - if (attributes.Length == 0) - { - return ""; - } - return ((AssemblyDescriptionAttribute)attributes[0]).Description; - } - } - - #endregion - } } diff --git a/BismNormalizer/AlmToolkit/AlmToolkit.csproj b/BismNormalizer/AlmToolkit/AlmToolkit.csproj index 5f41dd4..c871de1 100644 --- a/BismNormalizer/AlmToolkit/AlmToolkit.csproj +++ b/BismNormalizer/AlmToolkit/AlmToolkit.csproj @@ -65,6 +65,9 @@ False ..\BismNormalizer\Newtonsoft.Json.dll + + ..\packages\Octokit.0.36.0\lib\net46\Octokit.dll + diff --git a/BismNormalizer/AlmToolkit/ComparisonForm.Designer.cs b/BismNormalizer/AlmToolkit/ComparisonForm.Designer.cs index 02cb244..c932b02 100644 --- a/BismNormalizer/AlmToolkit/ComparisonForm.Designer.cs +++ b/BismNormalizer/AlmToolkit/ComparisonForm.Designer.cs @@ -32,6 +32,7 @@ this.StatusBarComparsion = new System.Windows.Forms.StatusStrip(); this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel(); this.toolStripProgressBar1 = new System.Windows.Forms.ToolStripProgressBar(); + this.NewVersionLink = new System.Windows.Forms.ToolStripStatusLabel(); this.tabHome = new System.Windows.Forms.RibbonTab(); this.panelCompare = new System.Windows.Forms.RibbonPanel(); this.btnCompareTabularModels = new System.Windows.Forms.RibbonButton(); @@ -69,6 +70,7 @@ this.txtSource = new System.Windows.Forms.TextBox(); this.txtTarget = new System.Windows.Forms.TextBox(); this.label2 = new System.Windows.Forms.Label(); + this.toolStripStatusLabel2 = new System.Windows.Forms.ToolStripStatusLabel(); this.StatusBarComparsion.SuspendLayout(); this.pnlRibbon.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.maqSoftwareLogo)).BeginInit(); @@ -85,7 +87,9 @@ this.StatusBarComparsion.ImageScalingSize = new System.Drawing.Size(36, 36); this.StatusBarComparsion.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.toolStripStatusLabel1, - this.toolStripProgressBar1}); + this.toolStripProgressBar1, + this.toolStripStatusLabel2, + this.NewVersionLink}); this.StatusBarComparsion.Location = new System.Drawing.Point(0, 810); this.StatusBarComparsion.Name = "StatusBarComparsion"; this.StatusBarComparsion.Size = new System.Drawing.Size(1176, 22); @@ -103,6 +107,15 @@ this.toolStripProgressBar1.Size = new System.Drawing.Size(100, 16); this.toolStripProgressBar1.Visible = false; // + // NewVersionLink + // + this.NewVersionLink.IsLink = true; + this.NewVersionLink.Name = "NewVersionLink"; + this.NewVersionLink.Size = new System.Drawing.Size(72, 17); + this.NewVersionLink.Text = "New version"; + this.NewVersionLink.Visible = false; + this.NewVersionLink.Click += new System.EventHandler(this.NewVersionLink_Click); + // // tabHome // this.tabHome.Name = "tabHome"; @@ -502,6 +515,12 @@ this.label2.TabIndex = 40; this.label2.Text = "Target"; // + // toolStripStatusLabel2 + // + this.toolStripStatusLabel2.Name = "toolStripStatusLabel2"; + this.toolStripStatusLabel2.Size = new System.Drawing.Size(956, 17); + this.toolStripStatusLabel2.Spring = true; + // // ComparisonForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -575,6 +594,8 @@ private System.Windows.Forms.RibbonOrbMenuItem mnuSave; private System.Windows.Forms.RibbonOrbMenuItem mnuSaveAs; private System.Windows.Forms.RibbonOrbMenuItem mnuExit; + private System.Windows.Forms.ToolStripStatusLabel NewVersionLink; + private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel2; } } diff --git a/BismNormalizer/AlmToolkit/ComparisonForm.cs b/BismNormalizer/AlmToolkit/ComparisonForm.cs index c8023a4..738fa11 100644 --- a/BismNormalizer/AlmToolkit/ComparisonForm.cs +++ b/BismNormalizer/AlmToolkit/ComparisonForm.cs @@ -6,6 +6,7 @@ using System.Drawing; using System.IO; using System.Linq; using System.Text; +using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; using System.Xml.Serialization; @@ -27,8 +28,10 @@ namespace AlmToolkit private ComparisonJSInteraction _comparisonInter; // CEFSharp Interface to connect to Angular Tree Control private ChromiumWebBrowser chromeBrowser; private CompareState _compareState = CompareState.NotCompared; - private string _fileName = ""; + private string _fileName = null; private bool _unsaved = false; + private bool _newerVersionAvailable = false; + private string _latestVersion = null; #endregion @@ -89,6 +92,8 @@ namespace AlmToolkit SetNotComparedState(); } + Task.Run(() => CheckForNewVersion()); + //hdpi Rescale(); } @@ -98,6 +103,37 @@ namespace AlmToolkit this.InitializeAndCompareTabularModels(); } + private async void CheckForNewVersion() + { + try + { + var client = new Octokit.GitHubClient(new Octokit.ProductHeaderValue("Microsoft")); + var releases = await client.Repository.Release.GetAll("Microsoft", "Analysis-Services"); + + //TODO: iterate releases and check for latest.Name starts with "ALM Toolkit" + var latest = releases[0]; + _latestVersion = latest.TagName; + var installedVersion = new Version(Utils.AssemblyVersion); + var latestVersion = new Version(_latestVersion); + var result = latestVersion.CompareTo(installedVersion); + + if (result > 0) + { + //There is a newer release on GitHub + _newerVersionAvailable = true; + NewVersionLink.Text = $"New version available: {_latestVersion}"; + NewVersionLink.Visible = true; + } + } + catch { } + } + + private void NewVersionLink_Click(object sender, EventArgs e) + { + NewVersionLink.LinkVisited = true; + System.Diagnostics.Process.Start(Utils.LatestVersionDownloadUrl); + } + private void SetNotComparedState() { if (_comparison != null) @@ -176,7 +212,6 @@ namespace AlmToolkit _comparison.RefreshSkipSelectionsFromComparisonObjects(); } - ConnectionsAlmt connForm = new ConnectionsAlmt(); connForm.ComparisonInfo = _comparisonInfo; connForm.StartPosition = FormStartPosition.CenterParent; @@ -931,6 +966,8 @@ namespace AlmToolkit private void btnHelp_Click(object sender, EventArgs e) { About aboutForm = new About(); + aboutForm.NewerVersionAvailable = _newerVersionAvailable; + aboutForm.LatestVersion = _latestVersion; aboutForm.ShowDialog(); } @@ -995,6 +1032,5 @@ namespace AlmToolkit } #endregion - } } diff --git a/BismNormalizer/AlmToolkit/Properties/AssemblyInfo.cs b/BismNormalizer/AlmToolkit/Properties/AssemblyInfo.cs index 63d9951..71073f9 100644 --- a/BismNormalizer/AlmToolkit/Properties/AssemblyInfo.cs +++ b/BismNormalizer/AlmToolkit/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("5.0.0.5")] -[assembly: AssemblyFileVersion("5.0.0.5")] +[assembly: AssemblyVersion("4.0.0.5")] +[assembly: AssemblyFileVersion("4.0.0.5")] diff --git a/BismNormalizer/AlmToolkit/Utils.cs b/BismNormalizer/AlmToolkit/Utils.cs index a64a513..84a4b1b 100644 --- a/BismNormalizer/AlmToolkit/Utils.cs +++ b/BismNormalizer/AlmToolkit/Utils.cs @@ -21,5 +21,68 @@ namespace AlmToolkit return ((AssemblyProductAttribute)attributes[0]).Product; } } + + public static string AssemblyTitle + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false); + if (attributes.Length > 0) + { + AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0]; + if (titleAttribute.Title != "") + { + return titleAttribute.Title; + } + } + return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase); + } + } + + public static string AssemblyVersion + { + get + { + return Assembly.GetExecutingAssembly().GetName().Version.ToString(); + } + } + + public static string AssemblyDescription + { + get + { + object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false); + if (attributes.Length == 0) + { + return ""; + } + return ((AssemblyDescriptionAttribute)attributes[0]).Description; + } + } + + public static string LatestVersionDownloadUrl + { + get + { + return "https://github.com/microsoft/Analysis-Services/releases/latest/download/AlmToolkitSetup.msi"; + } + } + + public static string ReleaseHistoryUrl + { + get + { + return "https://github.com/microsoft/Analysis-Services/releases/latest"; + } + } + + public static string DocumentationUrl + { + get + { + return "https://github.com/microsoft/Analysis-Services/blob/master/BismNormalizer/Model%20Comparison%20and%20Merging%20for%20Analysis%20Services.pdf"; + } + } + } } diff --git a/BismNormalizer/AlmToolkit/packages.config b/BismNormalizer/AlmToolkit/packages.config index b919778..b530814 100644 --- a/BismNormalizer/AlmToolkit/packages.config +++ b/BismNormalizer/AlmToolkit/packages.config @@ -5,4 +5,5 @@ + \ No newline at end of file diff --git a/BismNormalizer/AlmToolkitSetup/AlmToolkitSetup.vdproj b/BismNormalizer/AlmToolkitSetup/AlmToolkitSetup.vdproj index 0b12cae..755ea95 100644 --- a/BismNormalizer/AlmToolkitSetup/AlmToolkitSetup.vdproj +++ b/BismNormalizer/AlmToolkitSetup/AlmToolkitSetup.vdproj @@ -21,12 +21,6 @@ } "Entry" { - "MsmKey" = "8:_0020EC0A2900F50F0F5DCC3E7BBE4237" - "OwnerKey" = "8:_7936400E6C154464B76D26251125123A" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { "MsmKey" = "8:_0182F649532C289AB58CA84091A3EF12" "OwnerKey" = "8:_577232D49DA84949B3604BA695B35542" "MsmSig" = "8:_UNDEFINED" @@ -46,6 +40,12 @@ "Entry" { "MsmKey" = "8:_0182F649532C289AB58CA84091A3EF12" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_0182F649532C289AB58CA84091A3EF12" "OwnerKey" = "8:_3BA1BB04BE8689BEF79234210621C61F" "MsmSig" = "8:_UNDEFINED" } @@ -183,6 +183,12 @@ } "Entry" { + "MsmKey" = "8:_0E781A739CF54E018472F5750A518B23" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_0F4F2F8DE9AC4BB98A612AD491FDCDF8" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -303,6 +309,12 @@ } "Entry" { + "MsmKey" = "8:_1B2251DD757994082D5D85D7C9A38F82" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_1BC4692718F94CD799480D14260E2A0D" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -351,6 +363,12 @@ } "Entry" { + "MsmKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "OwnerKey" = "8:_7936400E6C154464B76D26251125123A" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_24119C3E255B44849B7051DE458A42AA" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -526,6 +544,12 @@ "Entry" { "MsmKey" = "8:_4126FF7CFF23C51CF812060FAEF25A8B" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4126FF7CFF23C51CF812060FAEF25A8B" "OwnerKey" = "8:_577232D49DA84949B3604BA695B35542" "MsmSig" = "8:_UNDEFINED" } @@ -970,6 +994,12 @@ "Entry" { "MsmKey" = "8:_7344099411A9D2DBF4A784E3DE9EA77D" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7344099411A9D2DBF4A784E3DE9EA77D" "OwnerKey" = "8:_577232D49DA84949B3604BA695B35542" "MsmSig" = "8:_UNDEFINED" } @@ -1077,6 +1107,12 @@ } "Entry" { + "MsmKey" = "8:_7C49A244BD86813B688A86097B64A4BB" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_7C66897615D04979AA00553FFBE9F869" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -1132,6 +1168,12 @@ "Entry" { "MsmKey" = "8:_7FE319AF420BED1331D231C9E53A5979" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7FE319AF420BED1331D231C9E53A5979" "OwnerKey" = "8:_577232D49DA84949B3604BA695B35542" "MsmSig" = "8:_UNDEFINED" } @@ -1245,6 +1287,12 @@ } "Entry" { + "MsmKey" = "8:_89FB94893A0B45C38A6E610E3EFDC43C" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_8A3B804FCD694D60BD1B7E142EE525F2" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -1282,6 +1330,12 @@ "Entry" { "MsmKey" = "8:_8E074FE5AC5B455E0A4D2F176BA182EC" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_8E074FE5AC5B455E0A4D2F176BA182EC" "OwnerKey" = "8:_577232D49DA84949B3604BA695B35542" "MsmSig" = "8:_UNDEFINED" } @@ -1342,6 +1396,12 @@ "Entry" { "MsmKey" = "8:_90FAC219254FDDE26D273DDEF52262FA" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_90FAC219254FDDE26D273DDEF52262FA" "OwnerKey" = "8:_577232D49DA84949B3604BA695B35542" "MsmSig" = "8:_UNDEFINED" } @@ -1605,6 +1665,12 @@ } "Entry" { + "MsmKey" = "8:_B0991964B9E248C7BAF5DEAF8E8A952F" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_B0F80AC5B1B6460A8A902B2411D8A53D" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -1666,6 +1732,12 @@ "Entry" { "MsmKey" = "8:_BE16C201755759965787B7DDD5BFF7B9" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_BE16C201755759965787B7DDD5BFF7B9" "OwnerKey" = "8:_577232D49DA84949B3604BA695B35542" "MsmSig" = "8:_UNDEFINED" } @@ -1732,6 +1804,12 @@ "Entry" { "MsmKey" = "8:_C097D550A85D95BEFF69F1B452227F75" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C097D550A85D95BEFF69F1B452227F75" "OwnerKey" = "8:_1B2251DD757994082D5D85D7C9A38F82" "MsmSig" = "8:_UNDEFINED" } @@ -2110,6 +2188,12 @@ "Entry" { "MsmKey" = "8:_E6C48E30804B563751F799BDB82D2D5F" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_E6C48E30804B563751F799BDB82D2D5F" "OwnerKey" = "8:_7344099411A9D2DBF4A784E3DE9EA77D" "MsmSig" = "8:_UNDEFINED" } @@ -2193,6 +2277,12 @@ } "Entry" { + "MsmKey" = "8:_EEEF3B4DA37D965DCA452A1E7B283C82" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_EF0C782C601F42DE8C7EF094FA4ED82E" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -2410,6 +2500,12 @@ "Entry" { "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_1F23AE629378259BAD7F2BCAB42727AD" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" "OwnerKey" = "8:_0FD8120FEC5AB531A28085D3548D2C38" "MsmSig" = "8:_UNDEFINED" } @@ -2692,7 +2788,7 @@ { "Name" = "8:.NET Framework" "Message" = "8:[VSDNETMSG]" - "FrameworkVersion" = "8:v4.6.1 " + "FrameworkVersion" = "8:v4.6.1 " "AllowLaterVersions" = "11:FALSE" "InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=671728" } @@ -3082,6 +3178,26 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_0E781A739CF54E018472F5750A518B23" + { + "SourcePath" = "8:..\\AlmToolkit\\bin\\Release\\html-resources\\dist\\assets\\node-type-Calculation-Item.png" + "TargetName" = "8:node-type-Calculation-Item.png" + "Tag" = "8:" + "Folder" = "8:_844C0FBA009C4B72A04E86CDCD4CB87E" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_0F4F2F8DE9AC4BB98A612AD491FDCDF8" { "SourcePath" = "8:..\\AlmToolkit\\bin\\Release\\x86\\locales\\fa.pak" @@ -3617,6 +3733,37 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_1F23AE629378259BAD7F2BCAB42727AD" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:BismNormalizer, Version=5.0.0.0, Culture=neutral, PublicKeyToken=aa6675aad991a644, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_1F23AE629378259BAD7F2BCAB42727AD" + { + "Name" = "8:BismNormalizer.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:..\\BismNormalizer\\bin\\ReleaseObfusc\\BismNormalizer.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_CAD31D6A85364CAA9F9BFC2750F80458" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_24119C3E255B44849B7051DE458A42AA" { "SourcePath" = "8:..\\AlmToolkit\\bin\\Release\\x86\\d3dcompiler_47.dll" @@ -6133,6 +6280,26 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_89FB94893A0B45C38A6E610E3EFDC43C" + { + "SourcePath" = "8:..\\AlmToolkit\\bin\\Release\\html-resources\\dist\\assets\\node-type-Model.png" + "TargetName" = "8:node-type-Model.png" + "Tag" = "8:" + "Folder" = "8:_844C0FBA009C4B72A04E86CDCD4CB87E" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_8A3B804FCD694D60BD1B7E142EE525F2" { "SourcePath" = "8:..\\AlmToolkit\\bin\\Release\\x86\\locales\\ko.pak" @@ -7041,6 +7208,26 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B0991964B9E248C7BAF5DEAF8E8A952F" + { + "SourcePath" = "8:..\\AlmToolkit\\bin\\Release\\html-resources\\dist\\assets\\node-type-Calculation-Group.png" + "TargetName" = "8:node-type-Calculation-Group.png" + "Tag" = "8:" + "Folder" = "8:_844C0FBA009C4B72A04E86CDCD4CB87E" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B0F80AC5B1B6460A8A902B2411D8A53D" { "SourcePath" = "8:..\\AlmToolkit\\bin\\Release\\x64\\locales\\es.pak" @@ -8921,15 +9108,15 @@ { "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:Power BI ALM Toolkit" - "ProductCode" = "8:{75F627AF-BFD0-4C72-9375-3335EE9DD441}" - "PackageCode" = "8:{6DFF38CC-B106-4C2A-982A-D4EA8A44551E}" + "ProductCode" = "8:{EC58BD25-446D-4EF7-8E93-1A33098306AC}" + "PackageCode" = "8:{BF09F612-86C6-4112-A1B2-9B2C5C5BC994}" "UpgradeCode" = "8:{96819CFD-6462-4AD1-ADB4-7903F30ADB92}" "AspNetVersion" = "8:4.0.30319.0" "RestartWWWService" = "11:FALSE" "RemovePreviousVersions" = "11:TRUE" "DetectNewerInstalledVersion" = "11:TRUE" "InstallAllUsers" = "11:TRUE" - "ProductVersion" = "8:5.0.0" + "ProductVersion" = "8:4.0.1" "Manufacturer" = "8:Power BI ALM Toolkit" "ARPHELPTELEPHONE" = "8:" "ARPHELPLINK" = "8:" @@ -9562,7 +9749,7 @@ { "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_577232D49DA84949B3604BA695B35542" { - "SourcePath" = "8:..\\BismNormalizer.CommandLine\\obj\\Release\\BismNormalizer.exe" + "SourcePath" = "8:..\\BismNormalizer.CommandLine\\obj\\Debug\\BismNormalizer.exe" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_CAD31D6A85364CAA9F9BFC2750F80458" @@ -9590,7 +9777,7 @@ } "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_7936400E6C154464B76D26251125123A" { - "SourcePath" = "8:..\\AlmToolkit\\obj\\Release\\AlmToolkit.exe" + "SourcePath" = "8:..\\AlmToolkit\\obj\\Debug\\AlmToolkit.exe" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_CAD31D6A85364CAA9F9BFC2750F80458" diff --git a/BismNormalizer/BismNormalizer/BismNormalizer.IconSetup.exe b/BismNormalizer/BismNormalizer/BismNormalizer.IconSetup.exe index 948f3c4..1843af3 100644 Binary files a/BismNormalizer/BismNormalizer/BismNormalizer.IconSetup.exe and b/BismNormalizer/BismNormalizer/BismNormalizer.IconSetup.exe differ diff --git a/BismNormalizer/BismNormalizer/BismNormalizer.exe b/BismNormalizer/BismNormalizer/BismNormalizer.exe index ac21f9c..c8e2905 100644 Binary files a/BismNormalizer/BismNormalizer/BismNormalizer.exe and b/BismNormalizer/BismNormalizer/BismNormalizer.exe differ diff --git a/BismNormalizer/BismNormalizer/BismNormalizer.targets b/BismNormalizer/BismNormalizer/BismNormalizer.targets index 01bd2c0..00d2b3a 100644 --- a/BismNormalizer/BismNormalizer/BismNormalizer.targets +++ b/BismNormalizer/BismNormalizer/BismNormalizer.targets @@ -25,8 +25,11 @@ - Run following command from BismNormalizer project root: msbuild BismNormalizer.csproj /verbosity:m /target:Rebuild /property:Configuration=Release - - Reload changed files in VS, change configuration to Release, build ALMT setup project - - Change configuration back to Debug + - Reload changed files in VS + Change configuration to Release + Build ALMT setup project + Change configuration back to Debug + - Take VSIX and AlmToolkitSetup.msi from \ReleaseObfusc folder Test installer locally