« first day (3154 days earlier)      last day (26 days later) » 

00:08
REFRESH!
[Minesweeper] 80 Games Played. 46 Bombs Used. 10072 Moves Performed. 15 New Users
[Zomis/FactorioMods] 3 issue comments
[Rubberduck] 1 Synchronizations
 
5 hours later…
05:23
Hm, the updater app could be started by RD just like the LSP server, and then when it pops a notification about a new version available it could send the exit notifications and perform the server updates in the background while sending WorkDoneProgress notifications to the RD add-in client!
with the RPC infra already in place, that would be pretty simple actually
 
5 hours later…
10:56
0
Q: Optimise Inefficient Macro Containing For Loop

RobsmithThe macro below loops through column E in Sheet2 and finds matches in column Z of Sheet1. If a match is found it copies the value on the same row contained in column AA. It works ok but hangs when it runs. There are usually a few thousand values in column E but less than 30 in column Z. I've run ...

 
12 hours later…
22:30
It's nice seeing the compile errors move to the outer layers and into the entry points and add-in client view models... sign that the struggle is coming to an end, there's light at the end of the tunnel!
I'm moving Rubberduck.InternalApi.LSP into the Rubberduck.RPC assembly, where everything is nicely organized into clear namespaces and folders. It belongs there because it makes no sense to have the LSP model split up into "purely LSP" and "LSP but just the bits shared between RPC servers"
22:51
that implies that all assemblies that will be a LSP client will have to depend on the Rubberduck.RPC assembly, right?
correct
other than the servers, that's Rubberduck.Client.LSP and Rubberduck.Client.LocalDb
where Rubberduck.Client.LSP would be the client-side RPC stuff
we have InternalAPI because we wanted to avoid duplicating the code and also to avoid weird dependency graph. Does the RPC need to be still a separate assembly from the InternalAPI?
at first I added .RPC to separate the server-side stuff from the rest of the internal API.. didn't feel right to have any of it there. I think InternalApi is going to end up with a bunch of extension methods, common Model classes (that's where QMNs and Selection lives now)
there's also a WindowsApi namespace in there
IOW it's a junk drawer.
22:56
alright, I see where you're going and like it.
and yet it makes sense to have the model there
@this ♥
yes. they're just "data" and not so much "code"
also, has VBEDitor and its cousins changed?
not much
didn't bring in all of the code at once though
I'm happy that nothing needs to depend on VBEditor anymore
...just for QMNs and Selection types :D
what? we've been depending on it for those?!?
22:59
LOL. A big improvement, yes.
the decoupling is complete this time around
@MathieuGuindon Ok, didn't think so. I asked because i'm at a crossroads. Do I want to finish the tB addin replacement or do I want get the DSCOM working....
not up to me! :D
pros for tb Addin: no more complex registration logic needed and we get complete control over the .NET hosting and therefore disconnection. Bye bye WinForm. Bye bye hacks to make WinForm work in VBE. Con: still a untested technology relative to C# add-in.
pros for dscom registration: registration logic is simplified. probably won't need Deployment.Build but still need Deployment project. Con: still stuck with winform wrapping WPF and using the hacks to handle disconnection.
#WhyNotBoth sounds like it's just a matter of prioritizing then.
well
one defeats/replaces the other, doesn't it?
in theory
23:04
actually if I go w/ tbAdinn, I still need dscom
wait.
dscom would look like a higher priority then
oh yes, i remember now.
we have 2 separate type libraries currently
we.. huh?
rubberduck.tlb for x86/x64?
23:07
yes we do have 32/64 bit version but they're one same library
I was thinking we had a separate type library for the extension and for the unit testing stuff but I was mistaken. They are all in one big type library.
a tB addin would mean that the unit testing stuff would no longer be in that library because they would not be changed. We'd end up with two type libraries; one for the extension which is hosted by the new tB addin, and another to define all unit testing & fakes stuff
IIRC we purposely made it be referenced as Rubberduck from VBA code
probably unrelated to the file name though
yes, I think it was to avoid breaking old code
or is it "description"? I think at one point the RD library said "Rubberduck unit testing something" in the references dialog
anyway it makes sense to have the extension/add-in itself be its own separate thing
the description is Rubberduck Addin, the programmatic name of the library is Rubberduck
ah, yes
lol the reasoning is probably years back in the transcript of this chat
23:14
one thing is that if it's using .NET rather than .NET FX, we'll have Rubberduck.comhost.dll which can be only 32-bit or 64-bit -- we'd need to build both DLLs because .NET core does not support Any CPU for COM host DLL.
I'm fine with whatever it takes to make it work :)
I want less Rube Goldberg. :)
we can build both and install one
yeah, rather ship both and then register the right one.
or, we go forward with the RD updater app, and let the app determine what version of Office is installed on the user's machine and pick the correct RD installer build?
23:17
ooh yeah
ok I'm adding it as a RPC server :)
not going to touch it for a while though
:+1:
oops, Server.LSP still has the WPF stuff
23:53
[rubberduck-vba/Rubberduck] 1707 stars vs. [decalage2/oletools] 2314 stars

« first day (3154 days earlier)      last day (26 days later) »