« first day (1956 days earlier)      last day (58 days later) » 

12:00 AM
[rubberduck-vba/Rubberduck] 57 commits. 2 opened issues. 7 closed issues. 27 issue comments. 9807 additions. 8334 deletions.
[Minesweeper] Games Played: 68, Bombs Used: 41, Moves Performed: 9379, New Users: 15
5 hours later…
4:34 AM
> Give that we've since ruled out this as a candidate, should we revert the revert?
> In the PR #5182 there was a block for `LOAD_USER_COM_PROJECTS` that got deleted but didn't get refactored. As per #5217 this is now the suspect for crashing.

This PR put it back in its own back. Note that `ref` are used to preserve the current semantics now that it's in its own method. Added a comment as well.
1 hour later…
7 hours later…
1:21 PM
@IvenBach Just getting back. So very sorry to hear about your mom. Very happy to hear that everything was good between the two of you - it would be even harder if things weren't. Prayers for all the family as you deal with the loss.
1:38 PM
@Duga Now I'm doubting myself again. Without the localization passed into the ChangeType function, it might actually fail on a non-US install. The string-as-a-date presumes en-US format for simplicity. I think that's why I put in explicit en-US
If anyone has a non-US VBA install, can you do me a favor and test how it handles "04/12/2000", "12/04/2000", "13/04/2000" and "04/13/2000" ?
> May need to bookmark @MDoerner 's explanation - I have a feeling that it's going to be needed a _lot_ as more people start using the duck and hit this. It looks _very_ fully qualified and is going to leave a lot of people very confused.

While `Worksheet.Range(1,1).Value` is (fairly) commonly shown in examples, `Worksheet.Range.Cells(1,1).Value` is probably shown equally as often, so people are going to assume that it's equally valid - after all, it works, doesn't it?

It _may_ be worth in
@Duga Frankly, I think Excel needs its own wiki page on how messed up its object model is.
because _Default has different behavior depending on how you access the Range object.
I've done my best to follow along with all the discussions about default member access here and I'm still a bit lost when looking at the explanation on that issue. Would Worksheet.Range(1,1).Value still trigger the inspection?
[rubberduck-vba/Rubberduck] build for commit a3a642cd on unknown branch: AppVeyor build succeeded
or does that totally skip the [_Default] invocation and therefore is good to go?
1:45 PM
Pretty sure that invokes the [_Default]
but I might be wrong.
Look, I'm just confused as you are. :)
nice to know I'm not the only lost boy
let's just hang off the train bridge instead.
Let's just say, for the sake of argument, that a guy was not yet using OASIS-SVN for export/import of code from his Access DB, and that git was showing that there were differences in form and report exports from what git has stored in binary format. How would he go about determining what those differences were?
isn't it supposed to be text?
oh, of course! that's how git treats them.
1:49 PM
confused. Everything ought to be text. At least not for the binary fields but files in general ought to be text files.
> $ git diff Appointment\ Audit\ Report.rpt
diff --git a/Appointment Audit Report.rpt b/Appointment Audit Report.rpt
index 472ce42..f5213f3 100644
Binary files a/Appointment Audit Report.rpt and b/Appointment Audit Report.rpt differ
because I'm using
Access.Application.SaveAsText acModule, thing.Name, localPath & thing.Name & ToFileExtension(component.Type)
Access.Application.SaveAsText acForm, thing.Name, localPath & thing.Name & ".frm"
using Access' SaveAsText to save them, so it gives me a readable file, but git treats it as binary
probably because:
    NameMap = Begin
        0x0acc0e5500000000fd775e91a2b6ac419d1a43879692141900000000f99d12d8 ,
        0xf39be44000000000000000004100700070006f0069006e0074006d0065006e00 ,
        0x74002000410075006400690074000000000000000bdf083d631d1241ae070c29 ,
of bits like that
Yes, I know the best bet is to use OASIS to export the form as 2 parts that are purely text that git can deal with, but I'm not there yet...
no, that's something with git, not with the export process
you need to update git to not treat those as binary
urg... ok
in the meantime, I s'pose there's this
2:06 PM
> I'd be happy to take a go at this!
> @mai-am happy to hear this. You'll probably want to poke around in the `AssertClass`. If I understood correctly, the relevant code is [Line 350](https://github.com/rubberduck-vba/Rubberduck/blob/f202cad0b6f19a2a25685bb90ba25b3349d27928/Rubberduck.Main/ComClientLibrary/UnitTesting/AssertClass.cs#L350).

You can find the class in the Rubberduck.Main project under `ComClientLibrary/UnitTesting`. It's there to register the class for COM access. There's other COM-visible unit-testing code in the
@IvenBach Deepest sympathies for your loss
> My excuse is it was late on a Sunday evening 🙃. I totally forgot that a call to Cells(i,j) was a call to Items - Should've looked in the Object browser!
> **Rubberduck version information**

OS: Microsoft Windows NT 10.0.18362.0, x64
Host Product: Microsoft Office x86
Host Version: 16.0.11328.20420
Host Executable: EXCEL.EXE

When a class Get property is marked as the default member annotation ('@DefaultMember), applying any quick-fix results in the `CurrentValue.VB_UserMemId = 0` attribute being added to both the getter and setter. This seems to prevent any additional quick fixes from being applied.
2:50 PM
@Duga nice write-up!
@this [_Default] is actually completely consistent in mapping to Item if an argument is provided. The strange state dependent behaviour comes from Item.
The enumeration behaviour does not only concern For Each loops but also Item.
If the range is a collection of rows or columns, e.g. after using Columns, passing two values to Item will cause a run-time error 1004.
@FreeMan Worksheet.Range has two parameters, which are optional. So wks.Range(1,1) is a simple function call passing two parameters.
There is no default member call involved.
3:19 PM
@M.Doerner IMPOV, it doesn't feel natural. If they wanted a certain behavior with Item, they could have just made it a function with 2 optional parameters, as opposed to being a property that alters the behavior of the [_Default]
> This is a bug in the member attributes recovery. The problem is that it matches attributes to members by name, which does not work for properties since `Get`, `Let` and `Set` have the same name.

The reason why the recovery is in place in the first place is that the VBE erases all member attributes when we copy in the new module code as part of the Quick fix.
@this It has two optional parameters.
You are just not allowed to pass them both for certain types of ranges.
It is actually very consistent after you know that the internal representation as a collection is different.
TBH, Columns and Rows should have returned a Ranges collection.
OB says:
Property Item(RowIndex, [ColumnIndex])
    Member of Excel.Range
doesn't indicate that RowIndex is optional.
with _Default, both are reported as optional.
4:06 PM
@this because no parameters => Range.Value
Gets better:
A: Worksheet.Columns property asks me for a RowIndex?

Mathieu Guindon The Worksheet.Columns property only accepts the index (column) number as far as I can see in the documentation. Nowhere in the documentation does it say the Columns property takes a parameter, and indeed, it would be wrong to mention that, because it doesn't have any: Like Worksheet.Rows,...

Which makes my original point. A wiki just on Excel's intuitive behavior WRT default member access & Range's assorted methods is needed.
It might be consistent but it's not very respective of the principle of least astonishment.
4:27 PM
It might actually be appropriate to add the indexed Cells and Columns calls to the XML-doc of the indexed default member access inspection.
4:47 PM
@M.Doerner thank you. I did read that, and I'd even read Mug's answer before, but it'll still take me a while to fully absorb & understand. Especially since I'm in the middle of a minor non-code-related crisis here at work at the moment...
3 hours later…
7:27 PM
@MathieuGuindon "i am trying to do this in excel-vba; how to do?" provide an answer, but they accept the answer which was downvoted because it was in the wrong language...
that's just following onto the conversation from a week or two ago, where you went through and annotated/commented on each aspect, then they accepted a different answer
8:22 PM
> @SteveLaycock can you confirm this no longer crash?


8:44 PM
> I'm afraid I'm still seeing crashes with 5081. 5061 is running fine. Log for 5081 attached. If you need to see my code I'm happy to provide.
> Wait a minute, @SteveLaycock that's 5081. The link I indicated above is 5082. Can you try that, please?
RD supports VBA and VB6. I don't have VB6 but would like to. How to get VB6? There appear to be free download sites, but I am leery of those. Is there a place to get it and be assured of no malware/bloatware included?
it was never free. You'd need to buy a license
and because Microsoft no longer sells it, you'd need to get it via alternative routes... Ebay or MSDN subscription or something like that.
9:00 PM
@this thanks!
can confirm its still available in an msdn sub. likely not the cheapest route though, thats probably ebay.
> @bclothier Oh I misread your post. I'm happy to confirm that 5082 completes the first and subsequent parses without issue
> Thanks for confirming! I'll merge the hotfix then.
[rubberduck-vba/Rubberduck] bclothier pushed commit c0d947f6 to next: Correct the missed conditional for LOAD_USER_COM_PROJECTS
Merge pull request #5221 from bclothier/ReachableDebugCode

Correct the missed conditional for LOAD_USER_COM_PROJECTS
> Give that we've now positively ruled out this as a candidate, should we revert the revert?
> Thanks for confirming! I'll merge the hotfix (#5221) then and close this.
9:20 PM
Just wondering - do we want to prune pre-releases that are known to crash?
@this There are a huge list of them on Ebay, and many with widely differing descriptions (and prices). Any suggestions on what to specifically look for (or avoid)?
I don't e-Bay.
Maybe someone else has suggestions on screening the e-Bay sellers.
@this Not the seller, the product itself... Fox Pro, C++, J++, Professional, Enterprise, etc.
9:27 PM
hm. I don't know - C++ and J++ seems totally unrelated. I don't know if there was ever was a bundle that included VB6 + FoxPro.
I think there was just Professional and Enterprise.
I also think there was a bundle for Visual Studio 6 that included Visual Basic 6 but I don't know.
@this And there's one seller that has Service Packs 1 - 6 noted. Others don't.
well, sp 6 is the last service pack. That said, you should be able to find service pack downloads, I think.
@this Looks like a cumulative 6 is available from MS.
10:00 PM
steer clear of the learning edition, it won't compile standalone executables.
professional is fine, most of the extras in enterprise either dont work in win10 or are useless these days.
10:18 PM
I don't miss the days when you had to pay to learn how to program.
1 hour later…
11:32 PM
11:49 PM
Merge pull request #5219 from rubberduck-vba/revert-5218-revert-5211-PlugWPFLeak

Revert "Revert "Plug the WPF leak... maybe.""
> I got confused, thought the revert was cancelled :/
@Duga No worries!
That said, I am not sure if we still need this branch, too? I deleted those 2 branches (seems that doing stuff on GH likes making new branch)
In hindsight, I shouldn't have used GH to revert
There's also 2 very old branches, one for EM and other for ANTLR recovery. I haven't deleted those just in case they come out useful.... ?

« first day (1956 days earlier)      last day (58 days later) »