I've been cleared to push this back to the community. Why don't I work on a
pull request and I can submit it this weekend? I'll include some perf numbers
comparing before and after both with the code as is, not using the DLR, and
using the DLR. It's not like the current code is any more safe since you have
to know the indices for many tables.
Sent from my Windows Phone
________________________________
From: Heath Stewart<mailto:hea...@outlook.com>
Sent: 9/26/2014 8:23 AM
To: WiX toolset developer mailing list<mailto:wix-devs@lists.sourceforge.net>
Subject: Re: [WiX-devs] ICE Breaker v0.0.1
Only the caller if they use dynamic binding and it's really not so that bad.
I've analyzed the perf. DLR uses a lot of caching and optimizations, as a
couple of its developers confirmed.
Sent from my Windows Phone
________________________________
From: Rob Mensching<mailto:r...@firegiant.com>
Sent: 9/25/2014 7:15 PM
To: WiX toolset developer mailing list<mailto:wix-devs@lists.sourceforge.net>
Subject: Re: [WiX-devs] ICE Breaker v0.0.1
Is there overhead to inheriting from a DynamicObject? I thought it brought in a
whole lot of DLR stuff... or is that only when the caller uses the dynamic
keyword?
_______________________________________________________________
FireGiant | Dedicated support for the WiX toolset |
http://www.firegiant.com/
From: Heath Stewart [mailto:hea...@outlook.com]
Sent: Thursday, September 25, 2014 5:26 PM
To: WiX toolset developer mailing list
Subject: Re: [WiX-devs] ICE Breaker v0.0.1
Last I checked, we don't define classes for all tables, nor could we for ones
we don't know about. But the idea is that you don't need a RowAsDynamic(). You
could implement the Row as dynamic. Unless you actually declare the row
variable as "dynamic", it still functions like today. It's a very easy
adaptation given how a WiX Row already stores it's data.
Heath Stewart
Software Design Engineer
Visual Studio, Microsoft
http://blogs.msdn.com/heaths
________________________________
From: r...@firegiant.com<mailto:r...@firegiant.com>
To: wix-devs@lists.sourceforge.net<mailto:wix-devs@lists.sourceforge.net>
Date: Fri, 26 Sep 2014 00:13:51 +0000
Subject: Re: [WiX-devs] ICE Breaker v0.0.1
I just added the "RowsAs<T>()" to get the rows as a static typed Row. You could
add "RowsAsDynamic()" (or something like that) to get the DyanmicObject
version. I still prefer the core toolset using the static types to strongly
type the *fields*. However, Breakers may hit rows that don't have a static type
so the friendly names be helpful.
_______________________________________________________________
FireGiant | Dedicated support for the WiX toolset |
http://www.firegiant.com/
From: Heath Stewart [mailto:hea...@outlook.com]
Sent: Thursday, September 25, 2014 4:29 PM
To: WiX toolset developer mailing list
Subject: Re: [WiX-devs] ICE Breaker v0.0.1
One idea I would like to submit is something I did internally for writing tests
and other tools, borrowing an idea or two from another project of mine without
the PowerShell dependency.
Both WiX and DTF expose some pretty rich object models, but apart from using
different index bases all fields are exposed as integers. Even after 15 years I
don't always remember what column name is what index in a table! So I created
an abstract Row object that implements DynamicObject and provides field names
as properties, so that you (along with some LINQ goodness) can do stuff like
this:
var results = from dynamic upgrade in tables["Upgrade"].Rows
join dynamic property in tables["Property"].Rows on
upgrade.UpgradeCode equals property.Property
select upgrade;
foreach (dynamic row in results)
{
var detect = 0 != (row.Attributes & 0x2);
}
It's pretty straight forward to implement and, by abstracting the details away
using adapters, you could handle the different in indices and allow Breaker to
work with WiX and MSI output formats.
Heath Stewart
Software Design Engineer
Visual Studio, Microsoft
http://blogs.msdn.com/heaths
> Date: Thu, 25 Sep 2014 11:15:54 -0700
> From: phogl...@rimage.com<mailto:phogl...@rimage.com>
> To: wix-devs@lists.sourceforge.net<mailto:wix-devs@lists.sourceforge.net>
> Subject: Re: [WiX-devs] ICE Breaker v0.0.1
>
> Adding to my off-the-cuff comment in the meeting today....pipe as in a tool
> to produce smoke
>
>
>
> --
> View this message in context:
> http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/ICE-Breaker-v0-0-1-tp7596908p7597002.html
> Sent from the wix-devs mailing list archive at Nabble.com.
>
> ------------------------------------------------------------------------------
> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> _______________________________________________
> WiX-devs mailing list
> WiX-devs@lists.sourceforge.net<mailto:WiX-devs@lists.sourceforge.net>
> https://lists.sourceforge.net/lists/listinfo/wix-devs
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS
3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready
for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0
Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________ WiX-devs mailing list
WiX-devs@lists.sourceforge.net<mailto:WiX-devs@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/wix-devs
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
WiX-devs mailing list
WiX-devs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-devs
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
WiX-devs mailing list
WiX-devs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-devs
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
WiX-devs mailing list
WiX-devs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-devs