« first day (341 days earlier)      last day (2444 days later) » 
00:00 - 17:0017:00 - 00:00

12:01 AM
RELOAD!
[Cardshifter/Cardshifter] 2 commits. 1 issue comment.
[retailcoder/Rubberduck] 2 commits. 4 opened issues. 21 issue comments.
2
[Zomis/Battleship] 1 opened issue.
[Zomis/Server] 1 commit. 6 opened issues.
 
@RubberDuck we'd gain in testability though ;)
 
In theory, the parser should be reasonably testable now. It's just a matter of passing a known stream, right?
 
Yeah
But there's too many moving parts involved to my taste, doing that is really integration testing
Although that's still better than ginnea pig testing
@Duga looks like we talk about issues more than we close 'em
 
Yeah. I noticed that too. I'm having a really hard time finding time.
 
I've got some good progress on the extract method refactoring though. And that AAH CRAP 1-0 Tampa
cough ..and that interface I made yesterday looks like a promising way of abstracting the VBE
 
12:19 AM
Yeah. I like that too. Editor doesn't seem to be the best name, but I couldn't think of anything better.
 
Meh, there's always Ctrl+R/R ;)
I went with CodePaneEditor because its job is to interact with the code pane / module, and edit the contents
It's a good step towards DI
 
Yeah. Good abstraction.
I really do want to spend some time improving the VBIDE API eventually.
I mean, that's kind of where this all started and I've made zero progress towards that goal.
 
12:35 AM
all right, launching VS
BTW did you see this?
> Rubberduck.1.22.Setup.x64.exe(2.86MB) - Downloaded 77 times.
Last updated on 2015-04-01
Rubberduck.1.22.Setup.x86.exe(3.21MB) - Downloaded 150 times.
Last updated on 2015-03-31
1.22 has 227 downloads!
> Rubberduck.Setup.1.3.0.1.exe(4.05MB) - Downloaded 23 times.
Last updated on 2015-05-05
 
Awesome. Hard to believe. Gtg Mug. Ttyl.
 
later!
oh, and "How to unit test VBA code" on SO earned me a Necromancer badge today
 
@Mat'sMug My project doesn't appeal to me any more, so I'm going to work on RD the best I can.
 
cool!
 
Could you assign a feature you think is a bit above my level so I have to research and learn something to implement it?
I'm not sure where to start - there are so many issues on GitHub...
 
12:47 AM
sure
there's a lot of overwhelming code around the issue, but the issue itself is a very easy fix
 
OK.
 
let me know if you need a hint
(I know exactly where & what to fix)
 
Well, it would probably be faster for you to do it.
Lol, probably all of them would be.
 
lol
 
[retailcoder/Rubberduck] retailcoder pushed commit 37b330b4 to GrammarIsFun: embedded VBIDE interop types in all projects. tentatively closes #460
> The VBIDE dependency wasn't embedding its interop types in all projects (only the SourceControl project was actually) - I'm going to close this issue as fixed, keeping in mind that it might come back and bite us later.
 
12:53 AM
@Mat'sMug Quick question - is there a way to make this generic?
c:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe "c:\users\mathieu\source\repos\rubberduck\retailcoder.vbe\bin\debug\rubberduck.dll" /codebase /tlb
These references to your computer keep crashing my build.
 
it shouldn't be needed.. I reinstated it when I realized switching between debug and release builds, and then debug again, broke the debugger for some reason.
 
OK.
 
try removing it altogether, if F5-debug doesn't let you hit breakpoints then reinstate it (point it to your build)
 
OK.
I wish my window had blinds.
 
but yeah that should be using pre/post-build macros
 
12:56 AM
Worked, thanks.
 
without it?
 
It built, but I still cannot get into it.
 
get into it?
 
It installed fine on my Windows 10 VM with a couple of beta Offices installed, but without VS.
It won't load on my Windows 8.1 installation with Office 2013 installed.
This is where I have VS too.
 
could very well be the interop types for the VBIDE
 
12:58 AM
What interop types?
 
are all references ok?
 
The project built fine.
 
the commit I just pushed to GrammarIsFun
 
OK, I'll try to pull it.
Hmm, I need to re-fork it, as usual.
How can I set it so my fork updates every time you do something?
It says both of our Next branches are the same.
 
1:02 AM
that should help
 
Thank you.
 
please make small commits, and make yourself a dev branch
 
OK.
Darn, why won't it load!
Is there a way I can create builds to install on my VM?
It won't be optimal, but...
 
@Hosch250 try running regasm.exe /codebase /tlb in post-build
 
OK.
 
1:14 AM
just don't forget to run regasm.exe /u in pre-build after that, otherwise you'll end up cluttering your registry with dozens of registered builds like I did last month
 
It didn't work one bit :(
I wish I could post an animated dancing frowning smiley.
 
you do have that Rubberduck.Extension registry key under VBA/VBE/6.0/Addins right? (/Addins64 on 64-bit)
 
Yes, it says it can't load.
I don't know what to do.
 
you're running 64-bit Office 2013 on x64 right?
 
I could reinstall Windows tonight, and see if getting the remains of old RD out works...
Yes, I am.
 
1:19 AM
ugh
and the installer works
FML
 
It worked on Windows 10 with Office 2016.
Nothing works on Windows 8.1 with Office 2013.
Both Offices and Windows are x64.
 
I don't know what to tell you
 
I could install VS 2015 preview on my VM, but that would take almost as long as wiping my computer and reinstalling.
 
we're on VS2013 Community
 
1:24 AM
I'm on VS2013 Pro.
 
same
 
Pro isn't Community, but similar.
 
Community is free Pro
 
Anyway, semantics aside, I don't know what to do :(
 
whatever you do, keep the project in VS2013
 
1:25 AM
I just uninstalled RD.
 
historically, opening a .net project in a newer VS version required a conversion of some sort.
 
Hmm.
Anyway, I built it again, it opened Excel, and it didn't work.
 
are you running VS as administrator?
 
Yes, it doesn't build unless I do.
OK, the uninstall removed the key.
 
you'll have to re-add it manually
 
1:28 AM
Yeah, don't know what to add.
Bother, I just know enough to know I don't know, and to waste so much of your time being a tech support guy to waste your time :(
Huh, I just got an out of memory error.
Weird.
I try to open the VBE, and I get OOM errors?
 
that's a new one
 
I think some percussive maintenance is in order :P
 
do you have any other add-ins installed?
 
No, I like my programs plain-vanilla.
 
lol yeah, noticed that ;)
quite the irony eh
 
1:32 AM
I have Addins64/Rubberduck.Extension/
 
> Description: "Rubberduck VBE add-in"
FriendlyName: "Rubberduck"
CommandLineSafe (DWORD): 0
LoadBehavior (DWORD): 3
 
Back to can't be loaded.
 
stick this in your post-build: c:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe $(TargetPath) /codebase /tlb
(of the "Rubberduck" project)
 
Failed.
Should there be any quotation marks?
 
nope
just as is
 
1:37 AM
Huh.
> error MSB3073: The command "c:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe C:\Users\Hosch250\Documents\Visual Studio 2013\Projects\Rubberduck\RetailCoder.VBE\bin\Debug\Rubberduck.dll /codebase /tlb" exited with code 100.
Post build copy/pasted in.
 
any meaningful message?
 
Yeah:
> error RA0000: Unable to locate input assembly 'C:\Users\Hosch250\Documents\Visual' or one of its dependencies.
I use the default "\Visual Studio 2013\ folder.
The space is messing it up.
 
try "$(TargetPath)" then
 
I just did, and it built.
 
(I don't think I have spaces in my paths)
 
1:39 AM
Again, failed to load.
Did you ever write that script to clean the registry, like you said?
 
nope
 
OK.
I think my best bet is to reinstall Windows.
 
20 mins ago, by Mat's Mug
I don't know what to tell you
it should just work at that point
 
Question is, should I reinstall Windows 8.1, install Windows 10 to try it out off a VM?
I think I'll do the later.
Already have the ISO and everything.
See you!
 
whatever works!
 
1:43 AM
Doing a backup.
 
[retailcoder/Rubberduck] retailcoder pushed commit 97cb1720 to GrammarIsFun: undid previous commit - removed embedded VBIDE interop types, and copied to local build folder instead. works without any warnings
 
@Duga not quite true. works, but...
Warning 3 A reference was created to embedded interop assembly 'c:\Windows\assembly\GAC_MSIL\office\14.0.0.0__71e9bce111e9429c\OFFICE.DLL' because of an indirect reference to that assembly created by assembly 'c:\Windows\assembly\GAC_MSIL\Microsoft.Vbe.Interop\14.0.0.0__71e9bce111e9429c\Mi‌​crosoft.Vbe.Interop.dll'. Consider changing the 'Embed Interop Types' property on either assembly. C:\Users\Mathieu\Source\Repos\Rubberduck\Rubberduck.Parsing\CSC Rubber‌​duck.Parsing
 
ISO loading.
 
> Embedding all interop types causes build issues. @mwolfe02 is *not* embedding interop types and turning "copy local" to true an option?

Having `Microsoft.Vbe.Interop.dll` and `Office.dll` in the bin folder doesn't feel right though...
 
1:56 AM
Checking for updates.
 
[retailcoder/Rubberduck] retailcoder pushed commit 1e2b40e0 to GrammarIsFun: set copy local = true. doesn't feel right though
 
2:25 AM
ah-HA!
I just found a NullReferenceException in the ExtractMethodPresenter
when _locals is null no exception gets thrown in the Show method for some reason, but the view doesn't get shown.
 
2:39 AM
ugh. borked:
        // identifiers used inside selection and before selection are candidates for parameters:
        var input = inScopeDeclarations.Where(item =>
            item.References.Any(reference => inSelection.Contains(reference)
            && reference.Selection.StartLine < selection.Selection.StartLine))
            .ToList();
also borked:
        // identifiers used inside selection and after selection are candidates for return values:
        var output = inScopeDeclarations.Where(item =>
            item.References.Any(reference => inSelection.Contains(reference)
            && reference.Selection.StartLine > selection.Selection.StartLine + selection.Selection.LineCount))
            .ToList();
and borked:
        // identifiers used only inside and/or after selection are candidates for locals:
        _locals = inScopeDeclarations.Where(item =>
            item.References.All(reference => inSelection.Contains(reference)
            || reference.Selection.StartLine > selection.Selection.StartLine))
            .ToList();
 
3:08 AM
Dishes done, and installing.
Rebooting...
I guess the play-by-play isn't amusing, so I'll stop.
 
 
1 hour later…
4:26 AM
@Mat'sMug OK, I had only dug into it a short distance. I'll see how far I can go before it becomes infeasible.
 
4:38 AM
[retailcoder/Rubberduck] retailcoder pushed commit ba421d5b to GrammarIsFun: fixed ExtractMethod
 
@Rossco sure, let me know how it goes!
TTGTB
 
5:05 AM
Got Visual Studio installed.
Will try to work on RD tomorrow.
 
5:18 AM
Rubberduck works!
2
Good night!
 
 
6 hours later…
11:16 AM
We got our 50th follower on Twitter last night
 
11:44 AM
Nice!
Man... When did the 2nd Monitor stop being ?
 
12:09 PM
Eh, the other side of the healthily growing site medal I guess
 
12:20 PM
Yeah. I guess so.
 
> @retailcoder we can always just fold the unit testing back into the main project. That should resolve the build issue you saw.
 
12:42 PM
@Duga is there any reason to have it as a separate project?
Other than, it's a feature of its own
 
Yeah. I was tired of having to relink the reference for my unit tests after each RD upgrade.
The idea was to version that assembly separately so it would stop breaking it.
 
1:33 PM
Well.... I'll be damned. This actually works.
    Public Sub LoopOverDateRange()

        Const startDate As Date = #5/13/2015#
        Const endDate As Date = #5/20/2015#

        Dim d As Date
        Dim i As Integer
        i = 1
        For d = startDate To endDate
            Debug.Print "Iteration " & i & ":"; d

            i = i + 1
        Next

    End Sub
Iteration 1:5/13/2015
Iteration 2:5/14/2015
Iteration 3:5/15/2015
Iteration 4:5/16/2015
Iteration 5:5/17/2015
Iteration 6:5/18/2015
Iteration 7:5/19/2015
Iteration 8:5/20/2015
@ticker didn't someone ask that exact question yesterday?
 
morning, all!
Congrats on getting it working, @Hosch250
I'm shocked, I say, shocked! to find out MS is giving away VS2013!??!?!?!??!?
 
There's a community edition of 2015 too.
 
I'm shocked MS is giving anything away. Other than IE8, that is...
 
1:49 PM
@RubberDuck that's kind of a pretty damn good point ;)
 
> Per this conversation, the idea was to make it so that the references required for unit testing would stop breaking on each update, so folding it back into the Rubberduck.dll might not be a great idea. Idk.
 
Needs more votes:
6
A: Is a string an array in VBA that can be iterated through?

NileA string is an array of bytes, and you can iterate through it if you know your way around two-byte unicode representation of a string. When I say is, I mean it: there is no need for a type conversion, and this will work just fine: Public Sub TestByteString() Dim strChars As String Dim ...

@Phrancis did Windows find a solution to the problem? ;)
2
 
2:10 PM
Yeah. End task.
 
Web Page Blocked
Access to the web page you were trying to visit has been blocked in accordance with company policy. Please contact your system administrator if you believe this is in error.
User: xxxxx\yyyy
URL: github.com/
Category: shareware-and-freeware
god damn it
I wanted to look at Mats SQL stuff for VBA
now I can't
 
That sucks balls
Sorry to hear about that
 
@cheezsteak was actually written for VB6 ;)
 
2:31 PM
 
don't tell 'em Stack Exchange is CC-by-SA!
@cheezsteak I've actually found a number of issues lately, involving unicode columns
 
I leave myself the best comments.
' sort ALL the data
' sub is public so that parent form can call it
'   if you don't get the joke, please see this url:
'   treasure.diylol.com/uploads/post/image/624272/…
 
2:46 PM
lol
Once you've figured out what the error is, take that commented-out On Error Resume Next line, and remove it. Then make a quick search on this site about error handling in VBA. The best way to never know what's going on is to use On Error Resume Next. — Mat's Mug 8 secs ago
 
How do I edit a table's depenedencies in Access? I have a table that still depends on a dead table.
 
3:04 PM
2
A: MS Access: How can I find out where Tables, Queries, Macros etc. are used?

FionnualaYou can check the system tables, MSysObjects and MSysQueries for references to tables and queries (you can also check the sql string of querydefs). You can loop through the properties of forms and reports, and their controls, for references to tables, queries and macros. You can search code. Th...

@RubberDuck refactor/rename in Access looks like is going to be problematic
 
Why's that?
 
> We've inherited an MS Access db/application (Office 2002) with great names such as NewTable, Subform or Macro1. Unfortunately, when we change these to more meaningful names, the references (in other Queries, Forms or Actions) are not updated.
at least in Access 2003
 
I've never had such problems in 2007 or 10.
 
cool
 
@RubberDuck So, you actually left yourself a link to a picture of a goofy internet meme in production code. You're one awesome ducky.
 
3:15 PM
@Phrancis it's my code base. Only one other person has touched it besides myself, but yes. Yes I did.
 
@ticker ok... but why VBA?
(look who's talking)
 
Why does this have to be VBA? As much as I love VBA, it seems kind of like using a hammer when what you really need is a screwdriver. — RubberDuck 8 secs ago
 
3:37 PM
Sign that VBA isn't the right tool: you're importing half the Win32 API
 
in TCG Creation, 11 mins ago, by rolfl
stack is crack.
 
Turn off: "I'm trying to write a code..."
 
3:50 PM
> When running _Refactor/Extract Method_, declarations of variables that are only used in the new method should be removed instead of leaving them for a later clean up in _Code Inspections_.

When this code is refactored:

Public Sub test1()
Dim i As Integer
Dim j As Integer

i = 10
For j = 1 To i
MsgBox j
Next

End Sub

it becomes this:

Public Sub test1()
Dim i As Integer
Dim j As Integer

i = 10
Method
 
@Duga though I've got to admit, the never assigned is still a little shaky. I just discovered a couple of variables that Code Inspections claims aren't used, but clearly are.
 
@FreeMan 1.22 or 1.3.0.1?
 
sadly, 1.3.0.1. :(
don't mock my code!
 
if you right-click the declaration and select "find all references", does it find any?
 
build 1.3.5602.38613 (MSIL)
 
3:56 PM
(and if so, are they the correct ones?)
 
yes, and yes. Though it doesn't differentiate between Left and Shp.Left - it finds them both
 
I bet the With block is confusing it
oh
well that's annoying
 
I'm often called that... :/
 
lol
 
This is my first use of it since 1.301 came out. been up to my ears using the code instead of writing it.
Not sure about the point of that. How am I supposed to write the stuff if I'm busy using it?
 
4:00 PM
I'm still working on identifier resolution, that's a known issue. what's weird though is that it should pick up the reference as an assignment.
so yeah, it's a false positive.
 
@FreeMan Eating your own dogfood is the best thing you can do to improve your program IMHO.
 
@Mat'sMug ?? Not sure what it should pick up the reference as an assignment means.
When I did Find all references, it identified the two uses in the lower circles of my image above.
 
Left = ... is a reference to the Left identifier declaration
 
ah, gotcha.
 
4:02 PM
I think it's picking up Shp.Left as the assignment
 
nah
 
when I'm walking the dog tree, I pick up ImplicitLetStmt and isolate the left and right parts of the assignment, and resolve each individually
so the left side of the assignment should be picked up as the assignment target
 
wrong labels
 
I'd have just gone with Enhancement, myself, but whatever makes you happy.
Also, still not getting proper highlighting on all variables when they're flagged as Never Assigned/Used. i.e. too many characters are highlighted or not enough.
 
yeah that hasn't been addressed
 
okay, so long as you know...
 
4:11 PM
good to know that you've narrowed it down to never used/assigned
I knew it was code inspections... but there's 20-some of them
 
that's all I've run across so far - could be others. :)
 
of course there's others
I ran into some myself
like, a valid selection that refused to bring up the extract method dialog
and renaming a userform button breaks some handlers... I need a repro on that one
 
4:26 PM
Excel crashed when I closed it.
 
ended up closed, didn't it? :D
 
@Hosch250 if you fix that one you get a t-shirt ;)
 
@Mat'sMug OK.
Working on the rename right now.
Where are the files?
The Refactoring folder is empty.
 
@Hosch250 Hold him to it! but be wary of the mail - he didn't make any promises about the kind of t-shirt!
 
@FreeMan Lol.
Hmm, Edge is really buggy.
I think I'd better go back to IE for a while, maybe open a couple issues.
 
4:30 PM
@Hosch250 find the cause of that bug and I'll love you forever.
Nvrmnd. Mug's on it...
3 mins ago, by Mat's Mug
@Hosch250 if you fix that one you get a t-shirt ;)
 
4 A's up, and 1 that has a high potential for an A still pending (the final essay hasn't been graded, but I just need 75% to get an A).
Now, where are the refactoring files?
NVM, found it.
@Mat'sMug Is this a Module, Project, or Declaration? A Module?
Public Sub Foo(ByVal Var3 As Integer, ByVal Var2 As Integer)
 
every declared identifier is a Declaration
every project, module, class, procedure, function, property accessor and parameter is also a Declaration
 
OK.
 
every variable assignment, read, function call, etc. is a Reference of that Declaration
well, in theory.
in practice, identifier resolution has a number of issues
@Hosch250 you're looking for the line of code that performs the actual replacement in the CodeModule
that line has a hard-coded 1 in it, for the number of lines to remove
that's what's breaking multiline signatures
 
@Mat'sMug I have a lot to do, it seems.
I just tried replacing the Var2, and these are the results:
Public Sub Foo(ByVal Var1 As Integer, _
Public Sub Foo(ByVal Var3 As Integer,               ByVal Var3 As Integer)

    Debug.Print Var1
    Debug.Print Var3

End Sub
 
4:45 PM
General VBA design question:
 
it's all because of that 1 - the assumption was that an identifier could only ever span a single line, so the only line to replace would be the line the identifier is on
 
Also found another bug.
 
Is it better to create a class module to hold Global variables, use Global variables, or create them in the Main module, and pass them everywhere they need to go?
 
It lets me rename Var1 to Var2, even though Var2 is already declared.
 
oh good catch
 
4:46 PM
@Hosch250 D'oh!
 
now good luck fixing that one
I mean, you can easily find all Declaration items under the scope of the procedure, but ambiguous identifiers are nastier than that
and you can't force the user to pick a unique identifier either
 
OK.
 
I guess a good-enough compromise would be to forbid renaming to an identifier that's already declared in the same scope
 
I suppose I could want to swap the names of Var1 and Var2, though.
 
but it can't really be idiot-proof ;)
@Hosch250 that's another refactoring - change signature. on the roadmap
 
4:49 PM
OK.
 
@FreeMan It depends.
What kind of globals are we talking about? constants or actual globals?
 
that's going to be a fun one - we'll need to locate all calls to the target procedure, and change the order of the arguments.
@RubberDuck wise duck
 
@RubberDuck Actual globals that are near constant. Things like file path info & file names
 
@FreeMan Excel?
 
Access, Excel & PowerPoint, all rolled into one big, ugly ball
 
4:54 PM
oh
wow
 
Code's all in Access. Opens Excel & PPT, updates charts, copies slides, generates multiple client reports.
 
can you have a table in Access to store the file path info?
 
Not the prettiest, but much better than the by hand method they were using.
@Mat'sMug Could do that... Want to be able to differentiate between DEV & PROD, and was going to use the path to determine which was which...
If it has DEV in the path, that must mean we're running in dev!...
 
..yeah....
 
Guess the config table could have a dev/prod flag, which would be more stable...
 
4:58 PM
Devonshire & Associates will thank you
(made up)
 
wait. what?
 
(has "dev" in the path)
 
00:00 - 17:0017:00 - 00:00

« first day (341 days earlier)      last day (2444 days later) »