« first day (1686 days earlier)      last day (1494 days later) » 

12:00 AM
Well the next 2 should be shortly.
 
RELOAD!
[rubberduck-vba/Rubberduck] 4 commits. 4 opened issues. 29 closed issues. 36 issue comments. 7515 additions. 2142 deletions.
 
On that note, Issues - Stars = -5
 
AFAIK, to get the duplicate commits out of the history, you have to rebase.
 
OK, it's rebased locally with that version pushed.
 
Otherwise, you still have the commits in your branch separate from next but they do not contribute to the diff.
 
12:03 AM
My favorite part of every brand guidelines is the precious "Logo Misuse" section.
Fun thread
 
After a rebase, you will have to force push since you rewrote history.
 
Sorry that was a bit unexpected that the Tweet would take so much room, I apologize for interrupting your conversation
 
I should open an issue for RD logo misuse.
OK, so after rebase and push --force, my origin\inspections is claiming 5 commits ahead of next, which should be correct.
 
[rubberduck-vba/Rubberduck] build for commit 65546929 on unknown branch: AppVeyor build succeeded
 
Still showing 29 on GH though
 
12:19 AM
Yeah, I'll close and reopen.
If for no other reason than to make it easier to review.
 
Interesting it didnt work for you. I have done that twice and both times I did not have to rebase or reopen.
agreed on ease of review
 
I think GH changed something.
 
it is always changing something
 
> Re-opening of #4713 This is primarily aimed at getting rid of the unnecessary churn in the ObservableCollection(s), and to improve filtering and grouping responsiveness in the results. Note that this is only tagged WIP because it is based from #4661 - that PR should be merged first when all the reviews are completed and addressed to avoid pulling in those commits. I also rolled in some UI tweaks while I was at it. The new toolbar looks like this:...
!51227204-e09ff680-1918-11e9-8cc4-bb3b6588b437 Highlights: - Now binding an ICollectionView directly instead of implicitly creating the view. I suspect this was leaking memory (and it simplifies ...well... everything). - The default grouping was not reachable from the UI after it was changed. This is fixed. - Adds 2 new groupings for inspection name and severity. - Now using...
ToggleButtons instead of drop-down menus to improve visual feedback. - Removed a couple backgrounds to fix rendering glitches. BTW, this also closes #4598, and addresses #4666 (love that number given the issue...). It possibly closes some other open issues, but I haven't finished a comprehensive search yet. Note: There's still some clean-up to be done here, and I'm also still investigating some issues surrounding the responsiveness of the DataGrid control, but if those don't sync in...
by the time this is merged, they're on the agenda.
 
Any ideas on why folder annotations are being removed from files when they're saved?
 
[rubberduck-vba/Rubberduck] build for commit 65546929 on unknown branch: AppVeyor build succeeded
 
Sorry, no.
also, ought 4252 be closed?
 
Not clear. I wasn't sure whether we'd come to a resolution or not.
Do you have a local branch without the CE PR?
 
Ok thought it was addressed in previous merged PR
Yeah i should
 
12:51 AM
Can you try something really quick?
 
Ok
 
Open an empty Excel doc and paste this into Sheet1's code behind:
'@Folder("Class Module.Business Logic.EnoughInventoryStocks")
Top line of the module, followed by a single CR
Parse it, then save the workbook and close it.
Reopen it, and see if it's still there.
 
k
need to switch branches
 
[rubberduck-vba/Rubberduck] retailcoder project card. Enough said.
 
1:07 AM
Stars > Issues
7
 
blargh. VS is being a turd.
> Your project file doesn't list 'win' as a "RuntimeIdentifier". You should add 'win' to the "RuntimeIdentifiers" property in your project file and then re-run NuGet restore.
 
@this try "lose"?
 
lol
don't ask me why but my another branch worked. Whatever.
@Comintern nope it's not.
the original file had Option Explicit
which I had deleted, and put in the line with a single CR as you specified.
parsed, saved, reopened, it's as if I never edited it.
 
1:22 AM
Huh. I'm going to try it without RD loaded.
WTF, the VBE is stripping it out.
 
could it be that it's part of VBE's weird clean up
you know how it strips out empty handlers?
maybe it's related?
um, but it's not supposed to do that w/ a comment....
 
Possibly. The one I did didn't have anything to compile - just comment.
I was afraid I broke something...
 
maybe it's it?
no code => no changes to the stream?
they're looking for opcodes to determine if there's something to save
?
 
That's the only thing I can come up with.
 
hmm different test.
put that comment in one module
put code in some other module
do we lose it still?
 
1:30 AM
I'll have to try that after I finish up some unit tests.
 
unrelated - WPF can be made to respect windows theme, right?
 
Kind of. You set it up to use system brushes explicitly.
 
don't we have an ages old issue about that for accessibility reasons?
 
IIR there's an issue for that. It's easy to do, but a ton of work.
 
yes that's actually why I asked
btw WTF - I put in a empty sub in one module and comment in other
I lost both
gawd I'm an idiot.
 
1:40 AM
xlsx?
 
:O
ok so yes, I still lose it even as a .xlsm
 
a comment in one module and a empty procedure in other module got saved correctly
I am sure I remember ThunderFrame saying that the default module, even with Option Explicit isn't actually "saved"
hmm also - interesting that VBE's Save button does not behave the same as Excel's
if you try to save a xlsx with VBA in Excel, you do get warned about the file format.
but from VBE's Save, no warning at all.
huh. Option Base 1 doesn't get saved.
so apparently just more opcodes isn't enough
i guess it has to be a "member" or something?
that's a weird quirk right there
bbs
 
 
2 hours later…
4:20 AM
[rubberduck-vba/Rubberduck] build for commit 9ce9c540 on unknown branch: AppVeyor build succeeded
> This has been cleaned up significantly in previous COM cleanup PRs. At this time, only one event args remains that slings a SCW -- AutoCompleteEventArgs class. Some considerations is needed whether it really should be slinging a SCW and whether there are legit ways to avoid doing so.
 
4:46 AM
> The hotkeys are now configurable so this shouldn't be a problem anymore. At minimum open a new issue for where the default for a particular hotkey isn't that great.
 
5:33 AM
I've been right-clicking for an hour and a half and have only stumbled on #4716 once and had no idea what I did to repro it.
 
hmm, I'd be looking at my changes RE: templates carefully.
since that's the major change taht went into that particular submenu
maybe if the template gets deleted or is in a bad state, we get that blank menu?
 
I don't think it's the templates.
It seems to be reading the AddModuleCommands collection, but the command bindings just break.
 
earlier I wanted the templates to be in that submenu
 
Oh wait - templates is a submenu there, isn't it.
 
5:37 AM
yes
but I got frustrated with XAML being retarded about mixing both static and dynamic content in same menu
so I gave up and made it a submenu fornow
 
You think it could be throwing in the converter?
 
uh, I wasn't expecting it to go through any converter?
I didn't do any work w/ converters, IIRC.
 
The maddening thing is that I don't think we can log binding errors.
 
it was purely the menu layout.
that'd definitely make our lives much easier.
you'd think WPF would have an error event or something like that.
 
I was referring to the TemplateCommandParameterToTuple converter.
 
5:40 AM
hmm.
let me look at ath.
(and no, I didn't forget that I wrote that.... I just.... wanders off)
values[1] as CodeExplorerItemViewModel
hmm, that seems to e OK
I'm not accessing any members of that model here.
i'm just slinging it around.
could I get a model that's not CodeExplorerItemViewModel, maybe?
 
@this Yes. The references ones don't inherit from that IIR.
Let me give that a test spin.
 
ITemplateProvider is completely static at this point too, right?
 
not enforced by code, but probably DI'd as a singleton
 
5:53 AM
[rubberduck-vba/Rubberduck] build for commit 2b4b54db on unknown branch: AppVeyor build succeeded
 
I'm going to fix the casts at very least.
Dammit. I don't think a pattern match on a named tuple is supported in the c# version we're on.
null check it is then.
 
[rubberduck-vba/Rubberduck] build for commit e2816a51 on unknown branch: AppVeyor build succeeded
 
6:30 AM
[rubberduck-vba/Rubberduck] build for commit 26247560 on unknown branch: AppVeyor build succeeded
 
6:45 AM
@Phrancis This reminds me of a MUD. Remind me to give it a review tomorrow. (TTGTB).
 
What's a MUD
 
A MUD (; originally Multi-User Dungeon, with later variants Multi-User Dimension and Multi-User Domain) is a multiplayer real-time virtual world, usually text-based. MUDs combine elements of role-playing games, hack and slash, player versus player, interactive fiction, and online chat. Players can read or view descriptions of rooms, objects, other players, non-player characters, and actions performed in the virtual world. Players typically interact with each other and the world by typing commands that resemble a natural language. Traditional MUDs implement a role-playing video game set in a fantasy...
I was a MUD-head way back in the day - in fact I taught myself c# by writing a port of CircleMUD.
 
[rubberduck-vba/Rubberduck] build for commit d0474b39 on unknown branch: AppVeyor build succeeded
 
@Comintern Ah gotcha. It's sort of-ish like that. The next section is turning it into a hide & seek against the computer, haven't started on that yet
 
7:10 AM
[rubberduck-vba/Rubberduck] build for commit 8ab45d8c on unknown branch: AppVeyor build succeeded
 
@Comintern You find yourself in a dark forest with a path leading east. Ahead to the north is a cottage with a kobold standing guard in front. ~~command?
 
 
1 hour later…
8:26 AM
> @bclothier Yes, exactly.

@retailcoder Fair enough :-)
 
 
2 hours later…
10:24 AM
> This is not universal behavior. I'm on 4431 as well and not experiencing this issue.

Version 2.3.1.4431
OS: Microsoft Windows NT 6.1.7601 Service Pack 1, x64
Host Product: Microsoft Office 2010 x86
Host Version: 14.0.7224.5000
Host Executable: EXCEL.EXE
 
10:38 AM
Shouldn't it be possible to use wpf themes to get the correct style according to the windows theme?
I think actual WPF apps respect windows themes by default.
Our problem is that the WPF views are hosted in a Winforms.
 
10:58 AM
> This is a duplicate of #3745.
> Regarding the comment that a reparse is not necessary, this is not the case. Adding a folder annotation will change the position of other code in the module. Accordingly, we have to reparse the module. Moreover, without reparsing the affected module, the annotation remains invisible to RD.
 
 
1 hour later…
12:21 PM
> Seems like this is broken again

Code inspector recommends changing to ByVal for this_items() in

Public Sub Report(ByVal this_formatter As String, ByRef this_items() As Variant)

but changing to byVal gives non compilable code (flagged in red by VBA)

Version 2.3.1.4431
OS: Microsoft Windows NT 10.0.17763.0, x64
Host Product: Microsoft Office x64
Host Version: 16.0.11126.20266
Host Executable: WINWORD.EXE



**Description**
A clear and concise description of what the bug is.
> Not quite sure what you mean by "again". Could you point me to the closed issue where this was allegedly fixed? Thanks!
 
1:33 PM
> I tried to replicate this with the following code...
```
Sub foo()
Dim bar() As Variant
Report "foo", bar
End Sub

Public Sub Report(ByVal this_formatter As String, ByRef this_items() As Variant)
Debug.Print this_items(0)
End Sub
```
...and got no result. This is also [literally the first thing](https://github.com/rubberduck-vba/Rubberduck/blob/next/Rubberduck.CodeAnalysis/Inspections/Concrete/ParameterCanBeByValInspection.cs#L56) that is checked in the inspection, so I'
 
Any objections to merging #4718?
 
1:57 PM
> I must have spent an hour and a half right-clicking last night and was only able to replicate this once. It appears that something? is causing the bind on `AddModuleCommands` to either break or recycle in a way that causes the visibility of the commands to toggle off. We did [identify some potential casting issues](https://chat.stackexchange.com/transcript/message/48539377#48539377) in the templates sub-menu that is addressed in #4718, but I can't definitively declare that as the cause.

Wou
 
@Comintern not from me
 
Alright, I'll going merge it.
 
Unrelated - yesterday I'm happy with the changes I made to separate the concerns for the mocking framework. What I'm not so happy is the lack of DI due to inability to use CW. For that, I used a poor man's singleton pattern. But I wonder if it'd have been better to expand the service locator instead of newing it up directly.
 
Design challenge time: We get multiple files from external vendors that contain essentially the same data, but with minor variations. All columns are in different orders, some have different column names for the same data, some have different data. What's the "best" way to import this into a DB so I can output a variety of reports from it?
 
2:03 PM
[rubberduck-vba/Rubberduck] comintern pushed commit b4ea011a to next: Fix name collisions if multiple projects open on startup.
[rubberduck-vba/Rubberduck] comintern pushed commit 2b4b54db to next: Fix subfolder handling. Closes #4715
[rubberduck-vba/Rubberduck] comintern pushed commit d0474b39 to next: Add type check for OnExecute.
[rubberduck-vba/Rubberduck] comintern pushed commit a354a0b2 to next: Clean up types, add null checks, try unsafe casts.
[rubberduck-vba/Rubberduck] comintern pushed commit 8ab45d8c to next: Get rid of explicit call by name arguments.
 
My thought is to put it all in one big master table that contains every possible column from every possible source, but that seems... messy...
 
Merge pull request #4718 from comintern/next

Code Explorer folder hotfix.
 
@FreeMan all the data has keys that can be related?
 
@this I should have another slow day at work, so I'll take a look.
 
@this Not so much. They're insurance eligibility files, so most of them have SSN, First, MI, Last columns (with different names) but some have last-4-SSN only (no complete SSN), some I get the Insured's SSN for each additional covered individual, not the individual's SSN. Basically, it's a mess.
our person who has to deal with this has about 25 incoming XLSX/CSV files each month and some get forwarded as is, some get modified in 2 or 3 different ways before sending on to the people who use them.
Basically, it's a mess...
 
2:05 PM
@FreeMan What about adding a table of vendor import definitions?
 
That's what I'm thinking - a map for Company A: Column "First" -> Column "FirstName", etc?
do it in code rather than SSIS?
 
Possibly, I've never tried using SSIS dynamically like that some I'm a little sketchy on whether it would be feasible or not.
 
I wouldn't use SSIS like that
 
Based on my limited SSIS experience (and some of the not so positive things I've heard here), I would rather go code.
 
In this case, I'd just use SSIS to dump the data into staging tables
basically a 1:1 import
then run stored procedure to go through the staging tables and massage the data together somehow.
 
2:10 PM
One giganticly wide table containing all possible columns or some sort of related column sets?
 
no no
a staging table that's a replica of the source file data's schema
for each file format
 
Basically 99% of the data is the same each month, but people are added and dropped from coverage
@this Yeah, I get that - import to unique staging tables, then import into the master, but what shape the master?
 
A good reason for that design is that once you get data in, it's very easy to test your procedures independently of the import process.
ok - that's a bit harder question to answer.
 
and, that's why I came here!
 
oh, I forgot to ask - will file format change?
e.g. they'll randomly add new columns just becuse?
 
2:12 PM
Import format? Not often...
 
and the data are 1:1, not 1:many, right?
 
these are insurance companies I'm dealing with, they don't change very often
I'll end up with 12 monthly records for "Average Joe" assuming he's covered all year, one for each month he's eligible.
I could have a "covered" table, with additional related tables of info sets. "Address", "Dates", "Misc"... (a lot of the data we don't currently use, but I don't want to lose it in case we need it in the future)
 
Yeah, that'd actually be one reason to have a 1:1 table
the 2nd table would be like the junk drawer.
:D
an alternative to that is one XML column; transform the data into XML document. That way you do not have to keep changing the database schema until you actually have a reason (usually performance) to do so.
 
Similar to what I described, then? I'm still seeing "Average Joe" in the "Covered" table 12 times per year, once for each month we get his name.
 
Ok - that table isn't actually by year or by month, right?
 
2:18 PM
I guess there could be a "covered month" table that includes a 1:M record for "Average Joe":"2019/01/01"
 
sorry you lost me. :(
 
lemme mock up a quick sample of what I'm thinking. I'll post back in a bit.
 
ok.
 
> Change 'ByRef this_items()' to 'ByVal this_items()' as recommended by the Code Inspector. The line will turn red indicating that it is not compilable. The VBA error message is 'Compile error: Array argument must be byRef'
> Right, but I can't replicate the inspection result when it's passed ByRef. The compiler error would be expected if it's ByVal, which is why we filter the results for arrays. Is it showing the correct information in the toolbar when it's declared ByRef?
[rubberduck-vba/Rubberduck] build for commit 64ae145a on next: AppVeyor build succeeded
 
2:35 PM
@Duga I'm having a hard time understanding how that false positive is even possible.
 
> Yes. I was just pointing out that the recommendation is incorrect.
> Yes. I was just pointing out that the recommendation is incorrect.

The inspection report is


Suggestion | RegCMC | LoggerMemberInterface | Parameter 'this_items' can be passed by value. | 12 | 57
> I reverted back to version 2.3.1.4414 after I discovered this. I'll install the latest version and see if this is still there then comment back.
> @SteveLaycock we're still missing the crucial data - what does the toolbar, as Comintern pointed in his screenshot above says about that parameter? We need that to know if there's a discrepancy in how RD sees that parameter because it should not be even suggested in the first place.

![image](https://user-images.githubusercontent.com/8944005/51322107-24ceec00-1a2a-11e9-9354-d2ff76f8d9b4.png)
 
Hmm. I'm reading Mark's blog on why SL is an anti-pattern and it looks like the VbeProvider is nothing like that; it's not dynamically locating anything. So, is it really an anti-pattern?
 
> Everything is good now. I discovered another bug though. Will open another ticket with the log.
 
@this the anti-pattern is when you inject the IoC container as a dependency
we don't do that
 
yeah, definitely not doing that.
In VbeProvider's case, it takes the instances via a static method and then "provides" it.
 
2:48 PM
that's fine
 
There's a big comment about it being an anti-pattern. ;-)
Now it looks silly.
 
@Duga :facepalm:
 
IKR?
 
2:50 PM
@Duga @Comintern were you investigating this? is it worth pursuing?
 
@MathieuGuindon I spent forever trying to replicate it last night.
 
It's year 2019. Replicants are on their way out.
 
It's possible that there's still some freaky combination of the item that is selected and the timing of the evaluate call that would break the binding.
 
FWIW - there's a running gag about that.
 
That's one of my favorite movies of all time.
 
2:56 PM
@this That's funny even though I've never even seen the movie!
 
It's funny to see those old movies and see how badly off they were with how they predicted stuff.
2019 isn't really that much different from 1980s/1990s. No flying cars, no human-like androids, no mass-produced laser weapons, and so on.
We got us a.... iPhone.
oh and Facebook.
 
@this Blinding weapons are illegal.
 

« first day (1686 days earlier)      last day (1494 days later) »