« first day (318 days earlier)      last day (2862 days later) » 
00:00 - 11:0013:00 - 00:00

13:14
@RubberDuck I don't understand how you can debug and hit breakpoints without registering the build...
It's an old one that I'm getting. The *.tlb is missing and I don't understand why.
@RubberDuck Only when there's a UserForm in the VBProject that's loaded in the VBE when you load right?
I don't know. I'd have to go back and doublecheck.
@RubberDuck the COM registration creates the .tlb
That's the odd thing. COM registration was turned off in the version I pulled.
When I turn it on, that's when I get the reflection error.
13:16
Also 1.2x I've never got F5-debug to work...
I'm considering building the solution itself from scratch.
The reflection error is hiding an access violation exception
From accessing the codemodule of a userform
IDK why
Bbl
morning, all!
Looks like you had a fun weekend. :)
Ugh. Yeah. If you want to call it that...
For some values of "fun" ;)
2
13:28
in The 2nd Monitor, Apr 2 at 18:54, by RubberDuck
Mar 23 at 15:26, by RubberDuck
I have a sick sense of what is fun.
Seriously though, releasing is never fun.
And there I was thinking it would be a breeze
Did you get the rename fix back in?
I just pulled whatever was in the repo. I saw you made some changes after I went to bed.
Then this
3 hours ago, by RubberDuck
@Mat'sMug I'm out of time here, but if with the "register for com interop" button on the "Build" property page unchecked, it runs for me, but (obviously) doesn't register the newest version of the assembly.
13:45
@RubberDuck unchecked doesn't run on 64-bit Office
Something's borked, and I can't think about it right now.
mind you checked doesn't run on 64-bit Office without the pre & post -build events
..which run regasm.exe to register the build
well that was fun
0
A: On error Scope VBA

Mat's MugYou're this close to figuring it out on your own - answering here for posterity. Paste this code in ThisWorkbook (assuming Excel VBA), and call TestResumeNext from the immediate pane: Public Sub TestResumeNext() On Error Resume Next Boom MsgBox "Stack " & Err.Description End Sub Pr...

@Mat'sMug well played, Mug, well played!
14:01
:)
downloaded 1.3 pre-release onto my work laptop
#FindingBugs
#396 should be a fun one
#397 shows I released too early - we had a discussion specifically about this
14:20
having learned to not yet trust the variable not used/assignedidentification, is it otherwise safe/recommended to give 1.3 a go?
see #396
other than that, it seems to work perfectly well
1.31 (or rather, 1.3.01?) will definitely address that one
I need to upload screenshots for #398
@Mat'sMug That's what I was referring to. Plus previous experience... :)
#398 should be an easy fix
@FreeMan the identifier usage from 1.2x was completely rewritten. from scratch. 1.3 is a completely different thing from a parser perspective.
Ah. Well, based on previous experience, I'd have carefully checked for variable non-uasge before deleting anyway... ;)
always a good idea
remember:
> This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
14:32
ugh, programmers who sound like lawyers!??1?!?!
it's part of the license agreement you're agreeing to when you install RD ;)
wh.. wha... what??? We're supposed to read that stuff????
@FreeMan No. If you read it, then you'd know you were selling us your soul and then you wouldn't do it.
2
14:48
@RubberDuck #FunFacts: we're hitting 1K commits when SourceControl merges into Master
right?
or shortly after
@RubberDuck oh...
Maybe before at this rate.
15:13
1.3 has 14 downloads as of now. Let's fix the navigation, renaming and reference-eating-For-loop before we ship 1.3.01
Well and ideally that access violation too
Although it only seems to occur with the current master build
We've gotta find that Mat. I can't even run 1.3 in dev mode right now.
That ^^
Do you have a book with userforms?
My build doesn't throw until there's a userform in the project
Yeah, but I'm also having trouble in books without them.
I'm curious about how Access behaves
@Mat'sMug I've downloaded, but not yet installed, so count 13.5... ;)
15:19
@RubberDuck oh we will. 24 hours ago my whole VBE was crashing Excel, without RD even being installed.
@Mat'sMug I'm using it in Access, but again, on 1.22. Want me to install 1.3 for testing?
@FreeMan cool. can you confirm 1.3 installer prompts for a manual uninstall of 1.22?
This?
I'd say yes.
BTW - still getting the Symantic nag, but I'm sure you knew that...
15:24
that's the upgrade path #Fail. my bad
yeah
we'll stabilize 1.3.x before resubmitting.
Any way to customize that message at least a bit so it indicates that it's RubberDuck that needs to be uninstalled?
probably
> If you installed the pre-release, you will need to un-install it prior to installing this release. No need if you're upgrading from 1.2x.
hopefully
ooh... c:\Program Files\RubberDuck - the extra layer of RubberDuckiness has been removed! Good so far! :)
yes, that's why I thought a manual removal was warranted.
15:28
@FreeMan but doesn't everyone want an extra layer of rubberduckiness? =)
hrm...
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at Rubberduck.Parsing.Symbols.IdentifierReferenceListener.GetClosestScope(IEnumerable`1 declarations, ParserRuleContext context)
   at Rubberduck.Parsing.Symbols.IdentifierReferenceListener.FindProcedureDeclaration(String procedureName, ParserRuleContext context)
you gotta be shitting me
attempting to run CodeExplorer crashes Access.
hang on, don't get antsy yet...
crap. get antsy...
My machine does some weird stuff with things in the Downloads directory, so I thought it was that...
uninstalled, moved the installer to the desktop, reinstalled, same (looking) error:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at Rubberduck.Parsing.Symbols.IdentifierReferenceListener.GetClosestScope(IEnumerable`1 declarations, ParserRuleContext context)
   at Rubberduck.Parsing.Symbols.IdentifierReferenceListener.FindProcedureDeclaration(String procedureName, ParserRuleContext context)
It did a scan when Access launched, looking for a .TLB file, then all was good until I opened the VBE
Anything you want me to check on, or should I go back to 1.22?
15:36
well, my code is compilable...
I sure hope so! lol I meant, the exception is thrown in that crap code
that was the easiest thing for me to read... :)
References shows RD as missing...
:(
I really fucked up
D'oh!
you need to dereference it and re-add the reference
15:38
doing so fixed the compiler error saying it wasn't referenced. Attempting to run CodeExplorer crashed Access again.
same stack trace huh?
I get a free Compact and Repair out of the deal, though... :D
@Mat'sMug nope, none at all.
interesting
just goes bye-bye
I was about to say I've narrowed it down to this
@FreeMan that sounds awfully like the access violation exception we're getting in dev
15:40
@Mat'sMug You can't. That's what I was trying to tell you this morning.
It's Missing
the tlb is gone??
5 hours ago, by RubberDuck
user image
oh wow
@Mat'sMug sounds like you're getting it in beta, too. :(
I'm pulling the pre-release.
15:41
add -> test module does sweet nothing.
4 mins ago, by Mat's Mug
I really fucked up
11 secs ago, by Mat's Mug
4 mins ago, by Mat's Mug
I really fucked up
@Mat'sMug I have a c:\Program files\RubberDuck\Rubberduck.tlb if that helps...
@RubberDuck pulling as in removing it right?
@FreeMan and you can't add that reference?
the ..\rubberduck\rubberduck\rubberduck.tlb seems to be gone now...
it seems to be looking for \rubberduck\rubberduck\rubberduck\rubberduck.tlb
Yeah. I'm backing up the release notes and installer and deleting the release.
15:44
after the compact & repair, as soon as I clicked back on the Access window, it was scanning looking for something.tlb
Fire up the VBE and get an unhandled exception:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at Rubberduck.Parsing.Symbols.IdentifierReferenceListener.GetClosestScope(IEnumerable`1 declarations, ParserRuleContext context)
   at Rubberduck.Parsing.Symbols.IdentifierReferenceListener.FindProcedureDeclaration(String procedureName, ParserRuleContext context)
adding the .tlb manually from the install folder works
I have the missing reference to RD. I can successfully uncheck it & recheck it.
I got my 1.3 test explorer working
test explorer comes up ok
We're removing the 1.3 pre-release. I pushed "release early, release often" too far this time. Recommend uninstall+rollback to 1.22.. sorry!
anything else you want me to test before I do so?
nah, that build is borked. apologies.
no problem! You ain't the first, won't be the last...
just for giggles, installing 1.22 in \program files\rubberduck leaving out an extra layer of rubberyness... Maybe the 1.3-rerelease will install cleanly without a manual uninstall?
@Mat'sMug You crashed something?
@FreeMan I would like it to.
15:56
13 mins ago, by Mat's Mug
11 secs ago, by Mat's Mug
4 mins ago, by Mat's Mug
I really fucked up
Sounds like there's stuff to do ;)
And your indentation is bleh — Mat's Mug 8 secs ago
We're removing the 1.3 pre-release. I pushed "release early, release often" too far this time. Recommend uninstall+rollback to 1.22.. sorry!
More problems?
yeah. the .tlb goes missing, so 1.3 pre-release actually breaks unit testing.
16:10
I had that yesterday.
I had to rebuild the solution.
I mean missing, from a VBA project that was already referencing it from 1.22 - it's looking for it under \rubberduck\rubberduck\rubberduck\rubberduck.tlb
@RubberDuck you sure we can fix that?
Hmm.
Looks like too much \rubberduck isn't a good thing.
yeah. I figured we ought to fix that, even if it meant breaking an upgrade path. then future releases would go fine
Ahhh. Okay. It shouldn't be looking that deep though.
But this was dev mode too... It should look in the bin for that.
And yes, the installer should be taking care of that.
I read that as "and yes, the installer should be taking care of that."
16:41
mmmm.... love it when the power drops.
and there's no UPS.
lol
that's why I love having a laptop
everybody else just goes "aw CRAP!" while I can cleanly shut down.
yeah, I've got a laptop & desktop at my desk. May have to look at the laptop's performance. If decent, I'll plug the two big monitors into it. If not, save early, save often!
17:02
Yeesh, desktop Win Experience Assement CPU 7.4, RAM 7.5. Laptop: CPU 6.6, RAM 5.5
don't even have to look at the CPU to know that's a noticeable difference...
Our IT guy is getting a quote on a UPS...
17:31
Woah, 1.22 is at 95 downloads
Is anyone using the fiendish Def[Type] statements in #VBA? We have an inspection+QuickFix coming up for that one, just in case.
^^ 97th tweet
@StackExchange having just discovered that bit of nastiness, I'd say burninate from orbit, just to be sure!
3
18:27
RubberDuck has made a change to the feeds posted into this room
Incoming
posted on March 22, 2015

Jinyu, the Abbess Over All Clans And Concerns, was inspecting the doings of her temple when she happened upon one of the new mobile-application developers, toiling away at his desk. She peered over the monk’s shoulder to see what he was working on, but his screen showed only tiny black squares pulsating on a white field. Jinyu rapped the monk’s head lightly with her cane. “Explain,” sai

posted on April 01, 2015

Social media is consuming resources at an alarming rate. Every day, users post roughly 40 million tweets and 3.5 billion Facebook messages alone 1 . . . In addition to which, we have Google Plus, Kinja, Reddit, LiveJournal2, and so on . . . Fortunately, semantic analysis of the traffic reveals a staggering amount of duplication. So to reduce bandwidth consumption, storage space, and work hou

posted on April 07, 2015

One cold Spring morning, the nun Yíwen encountered a certain monk standing in the middle of a bridge, his face stained with tears as he gazed into the abyss below. “What ails you, brother?” asked Yíwen, fearing for the young man’s well-being. “The futility of existence!” sobbed the monk. “What is the point of our labors, when their fruits spoil so quickly? Nothing is forever, least of all

posted on April 12, 2015

Java master Bawan was interviewing an applicant for the Elephant's Footprint Clan. After the usual preliminary questions had been asked (about abstract classes, and how to make numbers fizz or buzz), Bawan drew a simple database schema on the whiteboard and asked the applicant to define some POJOs suitably annotated for Hibernate. “I don’t know what you mean,” said the applicant. “Doma

posted on April 18, 2015

A young monk asked master Kaimu, “Other than technical proficiency, what is one essential quality for a master to have at all times?” Kaimu answered “Kindness.” The monk asked, “When Banzen corrected me with his staff, who was he being kind to? “ Kaimu answered “Your future self.” The monk asked, “When Suku denied me a leadership post, who was she being kind to?” Kaimu answered

what's that feed?
> What's more, he was a Python developer.
awesome!
18:39
> Banzen gave the nun a slight nod, which pleased her. Yet he also held up his index finger. “That the words are hollow does not make them false. Threads are as the fabled Tsurugi of Infinite Sharpness, whose blade can slice an enemy in two while it is still a foot from his body, yet which severs one finger of the wielder every time it is drawn from its scabbard.”

The nun asked: “How will I know when I have learned enough to use threads wisely?”

Banzen replied: “When you no longer wish to use them.”
> Hwídah was banished for two months to the dungeons below the Temple’s deepest archives, where alone she would inspect mouldering printouts of old COBOL scripts for possible defects.
lol!
@rubberduckvba Sharp VBA? What abomination is this?!
@RubberDuck I think "Sharp VBA" was meant for #Rubberduck, not for Def[Type] ....
@Mat'sMug lol. Oh. Well... whatever. Def[Type] fit the description.
> The priestess Suku was reviewing the software of her novices when she found a module whose variable names displeased her immensely. Value Objects were called vo or simply obj, regardless of type. Lists were named list1, list2, etc. The respective Iterators were called i, j, and (for no fathomable reason) x.
> The priestess strode into the temple kitchens where the novices were preparing the evening meal. She unhooked an immense rice paddle from its peg, found the offending developer, and let vent her displeasure on the boy’s backside.

“What have I done?!” yelped the novice as the paddle landed with a meaty smack for the tenth time.
> “Invective!” answered the priestess. “Verb your expletive nouns!”

This scene was repeated each night until the novice was enlightened.
@shog9 @Rubberduck203 We don't claim to be half as awesome as @resharper... but #Rubberduck can help with lots of #VBA on #StackOverflow!
and there. took 98 tweets, but JetBrains ReSharper ended up being mentioned.
18:55
@shog9 @Rubberduck203 We don't claim to be half as awesome as @resharper... but #Rubberduck can help with lots of #VBA on #StackOverflow!
> A novice asked the great master: “What is the Way?”

The master replied, “Writing code is the Way.”

The novice then asked, “What is not the Way?”

The master replied, “Writing code is not the Way.”

The novice said, “Then the writing of code is all things.”

The master replied, “And the not-writing of code also.”

The novice asked, “At the present moment, are we writing code, or not writing code?”

The master replied, “We are the code.”
> headsplode
Writing code is the way.
Writing code is not the way.
Both so very true.
especially with Excel-VBA
The principle of appropriate action at work.
19:06
..."Sharp VBA" could also be interpreted as #VBA
Shog's a programmer, he should know better than to be so ambiguous.
could be interpreted as VBA#
@FreeMan I write VB# all the time!
don't cut yourself
19:07
I have no idea what he meant
19:20
> In a perfect McScrum world you don’t need acceptance test phases since each Scrum team releases a new production-ready version of your system after each sprint.
Famous last words
19:33
in The 2nd Monitor, 18 mins ago, by RubberDuck
> In essence, Mu.
@RubberDuck why don't I get the reference?
@Mat'sMug Mu == Un-ask the question.
It's a zen thing.
Yeah. It's just a way of saying, "You're asking the wrong question."
Kind of
Zen Buddhism is... well, it is what it is and not what its not.
2
20:01
> 96 downloads
@Ticker was going to recommend RD1.3, ...but no.
20:46
@Mat'sMug this one should remind you of something. thecodelesscode.com/case/63
21:01
sounds like a regex-based parser...
@RubberDuck you have 1.22 installed & handy?
@Mat'sMug Yeah. What's up?
I think I've found the stupidest bug
I have a .xlsx workbook opened
(non macro-enabled)
************** Exception Text **************
System.Runtime.InteropServices.COMException (0x80070006): System Error &H80070006 (-2147024890).
   at Microsoft.Vbe.Interop._VBComponent.get_Name()
   at Rubberduck.UI.CodeExplorer.CodeExplorerDockablePresenter.<CreateModuleNodesAsync>d__34.MoveNext() in c:\Users\Mathieu\Source\Repos\Rubberduck\RetailCoder.VBE\UI\CodeExplorer\CodeExplorerDockablePresenter.cs:line 315
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
and boom
does it blow up in 1.22 as well?
(I haven't uninstalled 1.3 from my work laptop)
I just opened an xlsx and parsed it. No boom.
ok
hmm another, blank workbook just works here too
whiskey tango foxtrot
1.3 is just unstable
I so messed it up
Nothing broken that can't be fixed.
21:09
well the good news is that FindAllRefs does match usages in a With block
Public Sub DoSomething()
    Dim obj As New Class1
    With obj
        .Boo = 42
        .Foo = .Boo
    End With
End Sub
^^ in ThisWorkbook
^^ in Class1
I need to test this with an identical Class2 in the project
as I thought
it assigns the usage to whichever it feels like - here the Class2.Foo getter - although it's the Class1.Foo setter that's used.
With blocks are a PITA.
and I need a Declaration ResolveDeclaration(IdentifierReference) method. badly.
@RubberDuck I just responded here: github.com/retailcoder/Rubberduck/issues/384
I narrowed down what's breaking the parser in my StringFormat method:
NumberFormatSpecifiers:
                If precisionString <> vbNullString And Not IsNumeric(precisionString) Then _
                    Err.Raise ERR_FORMAT_EXCEPTION, _
                        ERR_SOURCE, ERR_MSG_INVALID_FORMAT_STRING
this line
actually, the label NumberFormatSpecifiers: is
I'm not shipping 1.3 with the current grammar, I want that fixed.
> @ckuhn203 Could you please point me towards some articles describing why they should be avoided? I haven't heard of such a thing before.
^^ didn't see that one coming eh? (I bet you did)
21:57
58
A: "Register for COM Interop" vs "Make assembly COM visible"

Hans Passant"Make assembly COM visible" is a big hammer to make all public types in the assembly [ComVisible]. Rarely desirable, you will want to select the specific types that you want to be visible, like you did in your snippet. After the assembly is built, it needs to be registered so that it becomes us...

You probably aren't going to use a build server but it can be a pain to register all the public types. Perhaps using the installer to add the reg keys manually is a good option.
Although it really seems that the majority of the registration needs to happen with the unit testing code.
Actually the answer you guys all want is here: stackoverflow.com/a/15700070/2301065
22:21
in other words, let's just put ComVisible(something) atop every single frakkin class in the project, and be done with it
well
I mean assembly-level com-visible craps out the COM API, but then we're sure that all the types that need to be registered are registered.
assembly-level non-visible makes a cleaner COM API, but then it borks because we're probably missing some ComVisible(true) attributes somewhere
by having a ComVisibleAttribute on all types, we solve the problem once and for all - and the assembly-level setting doesn't matter anymore.
right?
@Rossco any thoughts on With blocks?
TTQW
later!
Don't. No. That's a terrible idea. Please don't leave the Assembly ComVisibility turned on. That's not going to solve anything.
@RubberDuck I would fearlessly agree with you if turning it off didn't break the x64 build
But since it does, I'll just agree
We must be missing an attribute ...somewhere
22:47
I know. I know. What we really need to figure out is why it's breaking it and I think you're right. We're missing a ComVisible(true) somewhere.
But why would it only manifest in prod?
23:17
@RubberDuck Because dev machines have the types registered?
Also, I've been struggling with registering my debug build for the last 238 builds
I don't remember F5-debugging successfully since I installed 64-bit office.
23:54
@Mat'sMug @RubberDuck So you can control the default registering of public classes by specifying the assembly-wide comvisibility attribute. IMO I reckon that specifying it to be COM invisible (;-)) by default is a better option and then only specify the classes to be made visible explicitly. It will push all of your problems with registration to the forefront.
You also only need to specify CLSID/GUIDs on those classes. Alternatively, you can probably change a lot of classes to be internal (which I think you should do anyway).
If you completely disagree and would rather do it the inverse way, I understand.
00:00 - 11:0013:00 - 00:00

« first day (318 days earlier)      last day (2862 days later) »