« first day (769 days earlier)      last day (2411 days later) » 
00:00 - 16:0016:00 - 00:00

4:02 PM
@Mat'sMug On what member should I fire the inspection on?
The interface definition, or all the implementations, or both?
 
Avoid dupe results if possible. Actually I think you might want to work on the assigning statements first (Get#, Input#, Line Input#), since if a param is passed byref and used by any of those, right now you'll miss it
 
First time I heard of those.
How do you use them?
 
Line Input #fn, content
Reads a line of content from file #fn
Assigns the content variable
But we're not picking it up as an assignment atm
See #2004
 
I think I can do that in the resolver.
 
Basically they should be overridden in the identifier reference walker, a bit like loop statements treat the loop variable as an assignment
hi @luvirx! I just granted you explicit write access to this chatroom - just hit F5 to refresh
anyway these ones are a bit more complicated, because they can assign multiple variables at once. well at least Get# and Input# can.
so you'll have to iterate the argument list and resolve the declaration for each variable there, and add an assignment reference right there
 
4:13 PM
ResolveDefault(context.variableName().expression(), StatementResolutionContext.Undefined, true);
 
I guess that true is the assignment flag?
 
That should do it. Now, time to write the tests to make sure it does.
Yeah.
 
in The 2nd Monitor, 10 secs ago, by Mat's Mug
Hosch is busy being slave-driven in VBA Rubberducking though
 
Yup, it works.
 
awesome. that just killed two or three birds with one stone
 
4:20 PM
Just for Line Input, anyway.
Working on the others. Should be as simple, but I need to write the tests.
 
the others will have an argslist
 
OK.
I don't really care about that, I just need the syntax.
Input done and working.
@Mat'sMug What about Width, Print, Write, Put, Unlock, Lock, Seek, Close, Open, and Redim?
 
ReDim is a problem of its own - we're not dealing properly with arrays at all. the rest isn't assigning anything.
 
OK.
Dim fileNumber As Integer, recordNumber, variable
Get fileNumber, recordNumber, variable
@Mat'sMug Is only variable there assigned?
 
Get #fileNumber, not Get fileNumber
 
4:34 PM
@Mat'sMug Bug in the test I copy/pastaed from.
 
huh, hold on I don't even remember the last time I used Get#
 
getStmt : GET whiteSpace fileNumber whiteSpace? COMMA whiteSpace? recordNumber? whiteSpace? COMMA whiteSpace? variable;
 
huh apparently that's right
fileNumber has the # optional, right?
 
OK, everything is working then.
@Mat'sMug Not sure.
The tests all pass, though.
fileNumber : markedFileNumber | unmarkedFileNumber;
markedFileNumber : HASH expression;
unmarkedFileNumber : expression;
Yeah.
 
ok cool
@Hosch250 so, yes
 
4:38 PM
[Hosch250/Rubberduck] Hosch250 pushed commit 4c4a4d8a to Issue541: Mark Line Input, Input, and Get references as assignments
 
so it's just Input# that has an argslist then
 
Yeah.
It doesn't matter anyway.
foreach (var inputVariable in context.inputList().inputVariable())
{
    ResolveDefault(inputVariable.expression(), isAssignmentTarget: true);
}
 
[Hosch250/Rubberduck] build for commit 4c4a4d8a on Issue541: AppVeyor build succeeded
 
yep, looks right
 
So, back to 541, fire on the interface declaration?
 
4:41 PM
yep
 
5:13 PM
[Hosch250/Rubberduck] Hosch250 pushed commit 4ee1d441 to Issue541: Fires for interface params where all can by byval
 
That is some very, very nasty code.
I'll get it working for events and update the quick fix after lunch.
 
[Hosch250/Rubberduck] build for commit 4ee1d441 on Issue541: AppVeyor build succeeded
 
5:33 PM
> The code in question _appears_ to be [here](https://raw.githubusercontent.com/peterennis/aegit/a8bd3c4840fd31359cc44d8edcc7081a541f654c/aerc/src/aegit_impClass.bas). If so, I can't replicate this - all of the inspection result seem to be legit in the current build. Here's the relevant bit that was cut off in the screenshot:

```VB
Private Function aeGetReferences(Optional ByVal varDebug As Variant) As Boolean
' Ref: http://vbadud.blogspot.com/2008/04/get-references-of-vba-project.html
'
 
5:51 PM
TIL I'm a regular Shakespeare in my vocabulary, and that "widow" as a synonym of "spank".
 
Huh
 
Don't worry, that last bit wasn't serious.
There is a viral vocab quiz going around FB that my family had me take. "Spank" was one of the options for the synonym of "widow".
I got in the top 0.16%, but I don't know how many I got wrong, or which ones.
 
I'm sure there's a positive correlation between the amount of spanking and whether or not the spouse is alive.
 
Oh, not necessarily.
 
Even without controlling for people who are into that.
 
6:03 PM
I think the best parents are those who don't follow a fixed rule.
Some kids need more than others, and some situations call for it more than others.
Although, the only experience I have is on the receiving end :P
 
I was thinking more along the lines of the widow being spanked.
 
Oh, I was thinking about the widow spanking.
I highly disagree with spouse-spanking.
 
That would be a serious spanking.
 
6:32 PM
[Hosch250/Rubberduck] Hosch250 pushed commit 7079946b to Issue541: Quick fix works for interfaces
[Hosch250/Rubberduck] build for commit 7079946b on Issue541: AppVeyor build succeeded
[Hosch250/Rubberduck] Hosch250 pushed commit 59e940bf to Issue541: Clean up inspection/quick fix
 
Time for the events thing.
 
[Hosch250/Rubberduck] build for commit 59e940bf on Issue541: AppVeyor build succeeded
 
7:06 PM
[Hosch250/Rubberduck] Hosch250 pushed commit b94d23fa to Issue541: Correctly fires on events
[Hosch250/Rubberduck] build for commit b94d23fa on Issue541: AppVeyor build succeeded
[Hosch250/Rubberduck] Hosch250 pushed commit 9b2ddce0 to Issue541: Event quick fix works
[Hosch250/Rubberduck] build for commit 9b2ddce0 on Issue541: AppVeyor build succeeded
> When opening a project containing a reference to RD, Rubberduck always hangs on "Loading references", refresh does not help. When I remove the reference and refresh RD, everything is fine, I can even add Rubberduck again (I have multiple tests with early bound Assert)
Im running 32bit version of Access 2010 on Win7 (64bit).

The only related log entry is this (for every module in the project - changed to XYZ):

`2016-07-14 21:12:52.9201;DEBUG;Rubberduck.Parsing.VBA.RubberduckParserState;M
[Hosch250/Rubberduck] Hosch250 pushed commit 6039b16a to Issue541: Refactor and reduce duplicated code.
> Close #541
Close #2004
[Hosch250/Rubberduck] build for commit 6039b16a on Issue541: AppVeyor build succeeded
 
7:28 PM
@Mat'sMug There you go.
I don't mind if you take a look at some of the naming I use:
https://github.com/rubberduck-vba/Rubberduck/pull/2055/files#diff-c17cf8534ebd9dbc04e1915267f6863dR59
https://github.com/rubberduck-vba/Rubberduck/pull/2055/files#diff-89a5a34d44601f49bbc1eeaebc19df29R59
I couldn't find anything in common between events and interfaces except that code.
 
[rubberduck-vba/Rubberduck] build for commit 6039b16a on unknown branch: AppVeyor build succeeded
> I have some tests with early bound Assert, because of issue #2054 I have removed the Rubberduck reference from the project and tried to run the tests. Obviously I have got an error message, but the test explorer has stayed afterwards frozen in loading mode (circle moving in the center) and is not reacting to any clicks (the buttons are disabled).

Related log entry:

`2016-07-14 21:30:31.4358;DEBUG;Rubberduck.UI.Command.MenuItems.ParentMenus.ParentMenuItemBase;(27824865) Executing click ha
> I'm pretty sure that in order to regain control of it, you need to click the red square stop button. Rubberduck cannot tell that the VBE is hung, and the VBE doesn't return control to Rubberduck until the execution stops.
> I'm pretty sure that in order to regain control of it, you need to click the red square stop button. Rubberduck cannot tell that the VBE is hung, and the VBE doesn't return control to Rubberduck until the execution stops.
> I'm pretty sure that in order to regain control of it, you need to click the blue square reset button. Rubberduck cannot tell that the VBE is hung, and the VBE doesn't return control to Rubberduck until the execution stops.

![reset](http://imgur.com/eXxLXRT.png)
 
7:56 PM
> RD somehow forgot the relation to the already created repository (created in RC1) so I've tried to create a new one for the project, but the Access has crashed.

Log entries:

`2016-07-14 21:50:51.3867;DEBUG;Rubberduck.UI.Command.MenuItems.ParentMenus.ParentMenuItemBase;(33379675) Executing click handler for menu item '&Source Control', hash code 34746634;
2016-07-14 21:50:51.3927;DEBUG;Rubberduck.Common.Hotkeys.Hotkey;Hotkey (Oemtilde) not registered.;
2016-07-14 21:51:07.1876;TRACE;Rub
> I've tried the Reset button (many times), but it's not helping - the explorer is still behaving the same way (circle moving, buttons disabled)

![untitled](https://cloud.githubusercontent.com/assets/1942695/16853813/5d59b742-4a0e-11e6-877f-f078b01313df.png)
> Status stuck at Resolving references.
Ctrl Shift R prompts me to change the current module's name.
> Ugh, this is probably my changes to the cache.
> CTRL-Shift-R is the Rename command, and can be disabled in the settings. What did you expect it to do?
> OK, sounds like a bug.
 
8:13 PM
@Duga ...did you doubt it for a split second?
hotkeys should check the CanExecute state before running the command
@Hosch250 ^^
 
@Mat'sMug Yeah, I thought maybe they hadn't clicked the stop button.
 
[Hosch250/Rubberduck] Hosch250 pushed commit 86220610 to hotkeys: Check CanExecute before running hotkey commands
[Hosch250/Rubberduck] build for commit 86220610 on hotkeys: AppVeyor build succeeded
> If the parser isn't in a `Ready` state, refactorings (and some other functionalities) can't run, at least not reliably.

Ctrl+Shift+R, as @Hosch250 says, is mapped to the refactor/rename command by default - the fact that the hotkeys work while the command is otherwise disabled is a UI bug that we need to fix: hotkeys simply bypass commands' `CanExecute` and run it regardless, which can be quite a problem when parser state isn't `Ready`.

The non-ready parser state *is* the indication why
[rubberduck-vba/Rubberduck] build for commit 86220610 on unknown branch: AppVeyor build succeeded
 
hi @TonyP!
 
Hi @Mat'sMug
I am working through the code you suggested on my question earlier today. I was wondering if you would mind if I asked you a few questions about it?
 
8:29 PM
sure
 
I should preface by stating that I am very inexperienced in VBA. I started attempting to learn to code in January of this year. I am a bit out of my depth in the project I am currently working on.
That being said, I substituted the code you suggested and I am not sure how to test it/fix the errors I am getting.
 
what's up?
 
When I try to F8 the user form code the form pops up and allows me to type in it etc but I can't keep stepping through the code unless I close the form. If I close the form then nothing happens with the code.
 
[rubberduck-vba/Rubberduck] Hosch250 pushed commit 86220610 to next: Check CanExecute before running hotkey commands
Merge pull request #2059 from Hosch250/hotkeys

Check CanExecute before running hotkey commands
[Hosch250/Rubberduck] Hosch250 pushed 1 commit to Issue541
Merge pull request #2059 from Hosch250/hotkeys

Check CanExecute before running hotkey commands
[Hosch250/Rubberduck] web-flow pushed commit bce3a7cd to Issue541: Merge branch 'next' into Issue541
[rubberduck-vba/Rubberduck] build for commit 5b9bfd5a on next: AppVeyor build succeeded
[Hosch250/Rubberduck] build for commit bce3a7cd on Issue541: AppVeyor build succeeded
[rubberduck-vba/Rubberduck] build for commit bce3a7cd on unknown branch: AppVeyor build succeeded
 
8:38 PM
you don't "F8 the user form code"
Public Sub DownloadStuff()
    With New LoginPrompt
        .Show vbModal
        If .IsCancelled Then Exit Sub
        ConnectToWave .UID, .PWD
    End With
End Sub
put a breakpoint (F9) on the ConenctToWave line, and then type "DownloadStuff" in the immediate pane (Ctrl+G)
that With block is holding the form instance, the object reference
the form instance (i.e. the object) does not exist outside of that With block
hi @Diogo!
 
Ok. Thanks for the guidance. It will take me a bit to research to understand so I will keep working through it.
Thanks again.
 
np
 
Revert "Check CanExecute before running hotkey commands"

This reverts commit 86220610a74ea4858b40d231b60a0bb8fdc7bc44.
[Hosch250/Rubberduck] Hosch250 pushed commit 0b128f99 to hotkeys: Redo hotkey CanExecute before Execute
[Hosch250/Rubberduck] Hosch250 pushed 1 commit to hotkeys
[Hosch250/Rubberduck] web-flow pushed commit 89711515 to hotkeys: Merge branch 'next' into hotkeys
[Hosch250/Rubberduck] build for commit 0b128f99 on hotkeys: AppVeyor build succeeded
[rubberduck-vba/Rubberduck] build for commit 0b128f99 on unknown branch: AppVeyor build succeeded
[rubberduck-vba/Rubberduck] build for commit 89711515 on next: AppVeyor build cancelled
BUILD FAILURE!
 
I messed up on the first one and made crash.
 
Revert "Check CanExecute before running hotkey commands"

This reverts commit 86220610a74ea4858b40d231b60a0bb8fdc7bc44.
[rubberduck-vba/Rubberduck] Hosch250 pushed commit 0b128f99 to next: Redo hotkey CanExecute before Execute
[rubberduck-vba/Rubberduck] web-flow pushed commit 89711515 to next: Merge branch 'next' into hotkeys
Merge pull request #2060 from Hosch250/hotkeys

Hotkeys
[Hosch250/Rubberduck] build for commit 89711515 on hotkeys: AppVeyor build succeeded
[Hosch250/Rubberduck] build for commit 89711515 on hotkeys: AppVeyor build succeeded
[rubberduck-vba/Rubberduck] build for commit 897bf65e on next: AppVeyor build succeeded
> The second one appears to work. The first one doesn't, though.
> The second one appears to work. The first one doesn't, though.
 
8:58 PM
@Mat'sMug That's so nasty I don't even know what should resolve to what...
 
@Duga If it's up-for-grabs, I might as well.
I'll look at tackling it again later.
 
9:31 PM
> It looks like it may be because we are exposing an IEnumerable to COM. Is this a possible cause, @retailcoder & @comintern?
> @Hosch250 an IEnumerable? Or a generic IEnumerable<T>? Because generics can't be exposed to COM - and I don't think IEnumerable is much of a problem. Which IEnumerable are you talking about?
> TBH, I have no idea. The only information I can see is that the type is IEnumVARIANT.
 
I'm guessing it is a generic.
[DispId(-4)]
public IEnumerator GetEnumerator()
{
    return _branches.GetEnumerator();
}
[DispId(-4)]
public IEnumerator GetEnumerator()
{
    return entries.GetEnumerator();
}
public class FileStatusEntries : IEnumerable
{
    private IEnumerable<IFileStatusEntry> entries;
    public FileStatusEntries(IEnumerable<IFileStatusEntry> entries)
    {
        this.entries = entries;
    }

    [DispId(-4)]
    public IEnumerator GetEnumerator()
    {
        return entries.GetEnumerator();
    }
}
@Mat'sMug How do I remove Source Control 1.0?
I want to check against the Source Control 2.0 COM stuff.
 
it's not a generic
generics have generic type parameters..
 
It crashes on GetEnumerator.
 
what's the exception?
 
Those are the only two GetEnumerator's in that project...
NRE.
 
9:43 PM
that is the bug
how is _branches null and this class ever iterated
an enumerable should never be null
 
It isn't...
It crashes when we load the COM stuff.
In the COM collector.
 
huh???
how is that related to the COM collector in any way?
 
Merge pull request #2060 from Hosch250/hotkeys

Hotkeys
 
Because we load it when it is in the references?
 
[Hosch250/Rubberduck] Hosch250 pushed commit 8c84ed4a to comCollector: Potential fix for #2054
 
9:46 PM
That commit "fixes" it.
It doesn't crash, anyway.
I wonder why those two never get updated, though, and the rest do.
 
[Hosch250/Rubberduck] build for commit 8c84ed4a on comCollector: AppVeyor build succeeded
> Close #2054
[Hosch250/Rubberduck] Hosch250 pushed commit 5c4f2f97 to comCollector: Make the COM library say "Rubberduck Source Control 2.0"
[rubberduck-vba/Rubberduck] build for commit 8c84ed4a on unknown branch: AppVeyor build succeeded
 
@Duga oh, nice thought there
 
So many bugs, not the easiest to reproduce them all...
I'm in a very inspection-ish mood. Got any more inspection bugs?
 
[rubberduck-vba/Rubberduck] build for commit 5c4f2f97 on unknown branch: AppVeyor build succeeded
[Hosch250/Rubberduck] build for commit 5c4f2f97 on comCollector: AppVeyor build succeeded
 
If I wasn't so trying to get 2.0 out and this wasn't my internship, I'd probably either stop for a couple weeks, or work on some lighter work, inducing scope creep.
But then, I wasn't feeling like this yesterday, so...
@Mat'sMug What do you think about disabling the COM API from the main assembly for 2.0 until we get write and test it better?
Or do you want to hold off on the release and work that out better first?
 
10:01 PM
eh, it's experimental stuff, IMO we're pretty clear about that. why disable it?
 
Because it doesn't even work halfway decent, if you look at some of the latest issues.
Actually, it mostly looks pretty reasonable.
Just the parser stuff needs a bit of work.
 
yet we shipped a SC panel with 1.4.3 ;-)
 
1.4.3 wasn't the big thing 2.0 is, or was it?
 
no, but it's got 3.5K downloads
and 3.5K disappointed people that tried doing something with the broken SC panel
do you foresee any breaking API changes?
 
For when?
 
10:04 PM
stable release
 
I don't know.
 
for me, the COM API is whipped cream - it's far from being a core feature
if it works, all the better. if it's broken, well, we'll do better next time
 
I think I got it updated to have OnStateChanged(ParserState).
GTG, test it and commit later.
 
10:44 PM
[Hosch250/Rubberduck] Hosch250 pushed commit a5d70d3b to ComApi: API tweaks
> Please review, @retailcoder @comintern. I'm not at all sure this works.
[rubberduck-vba/Rubberduck] build for commit a5d70d3b on unknown branch: AppVeyor build succeeded
[Hosch250/Rubberduck] build for commit a5d70d3b on ComApi: AppVeyor build succeeded
 
Evil #VBA TIL: You can use a non-breaking-space anywhere in a declaration.
 
@ThunderFrame O_o
Private Sub Foo&nbspBar()
    Dim Some&nbspVariable As String
    Some&nbspVariable = "WTF?"
    Debug.Print Some&nbspVariable
End Sub
Hmm... seems to be copy and paste resistant in chat.
 
11:24 PM
@Comintern wtf?? and it parses and compiles???
 
Yup.
VBA treats it like any other Unicode character.
Try it with Alt-0160
 
'~'
 
Alt-255
Nbsp is extended-ascii 255, cp1252 0160
 
Ah yes, 0160 is only the En-US code page.
Too bad U+2028 doesn't work or I'd have to start messing with people...
 
OK, now this is evil:
Private Sub Test()
    'Next line is &nbsp;

End Sub

Private Sub  ()
    Debug.Print "WTH did I go?"
End Sub
 
@SlowLearner now that ^^^ is obfuscation! ;-)
 
asc("")
 
That's exactly what I was thinking. :-)
You can do as many as you want:
Private Sub Test()
    'Next line is &nbsp;

    'Next line is 2 &nbsp;'s

End Sub

Private Sub  ()
    Debug.Print "WTH did I go?"
End Sub

Private Sub   ()
    Debug.Print "Et Tu?"
End Sub
 
^mine is trying to be a soft-hyphen
 
11:44 PM
@Mat'sMug lol, hidden definitely!!
 
There are actually a bunch of them. This should fill all of my variable needs.
 
the soft-hyphen doesn't occupy a character position so you can't tell that "" <> vbNullString
 
This is nuts
 
LOL!
 
Sub test()
Const x = ""
MsgBox x = "" 'Returns False!
End Sub
brainfuck has nothing on VBA codepages.
 
11:52 PM
I'm trying really hard to resist posting that on SO with a question like "If statement won't execute. Help!"
 
haha that is awesome...
 
00:00 - 16:0016:00 - 00:00

« first day (769 days earlier)      last day (2411 days later) »