« first day (1622 days earlier)      last day (1558 days later) » 

5:02 AM
> Visual Studio is a bit spastic on this one. If I use find all references on a getter, it gives this:

![screenshot from 2018-11-13 22-59-39](https://user-images.githubusercontent.com/8944005/48461197-1b11d980-e798-11e8-85e1-2bf84466805b.png)

Note that it puts "get_CompileOnDemand" in the window caption, but shows results for both the get and set.
 
@Comintern did you say your nuget cache were in the temp dir?
 
@this Yes and no. There's a package store at C:\Users\comintern\.nuget\packages, but there were about 10 hits in various build caches sprinkled around the file system.
 
hmm.
see, i'm going to hack it like this:
<Content Include="$(USERPROFILE)\.nuget\packages\easyHook\2.7.6684\content\net40\**" CopyToPublishDirectory="PreserveNewest" Link="%(Filename)%(Extension)" />
now they say this isn't best for good reasons
but their hacks hasn't worked for me, so....
 
Actually, Excel.Name.[_Default] is read-only, and now you got me very curious about what makes someRange.Name = "some string literal" legal code. — Mathieu Guindon 8 secs ago
oh, it's pointing to Value
 
5:10 AM
implicit default member access strikes again
 
I suppose I could add another line to pick up the temp or even from solution-level packages but.... that feels like a hot mess.
 
I wonder what "older version" didn't behave that way though, per OP's claim
 
Hmmm... This is what I get at idle:
 
curious.
i just checked myself and I do see it
I was looking in a different place earlier
so guess we'll be ok then
 
5:15 AM
OK, re the failing test. is the minor version supposed to be 2 digits?
 
uh, that'd be news to me
 
vbe.SetupGet(s => s.Version).Returns("7.00");
 
hmm. i wonder if it's how it gets formatted
because it should be just 7.0
but IIRC, version can return a double? not sure.
 
Calls for a break point.
Yep, 2 digits.
 
stupid formatting
 
5:21 AM
> @comintern I get why you'd do that, but it looks wrong.... doesn't it?
 
vbe.Version.Substring(0, 3) seems a bit sleazy.
 
> It does look wrong. Find all usages does the same thing. TBH, I don't really have a preference one way or another - just giving a basis for comparison.
 
why not just split as we were originally?
 
Woohoo. Interweps achievement unlocked for notable question.
 
5:23 AM
congrats!
 
3rd so far.
 
@this And use split[1].Substring(0, 1) instead?
What about Convert.ToDouble(vbe.Version) with a format of D1?
 
> Due to how nuget changed how they cache packages and that they are now external to the solution folder, it is possible to have case where the package isn't present within the solution and therefore we would fail to build. This PR now will check in 2 different places.

Note: this is really a hack since the Right Way Of Doing Things isn't supported. Ref: https://github.com/NuGet/Home/issues/4837
 
@Comintern nah, just take the whole substring as-is.
The reason we avoided using double is because of i18n
I made the mistake of parsing it and it broken the Germans' local builds
 
VBE version 7.0999999999999?
 
5:26 AM
close enough.
but all things considered, you only care about 2 digits
 
So how do you loop that try-catch without using reflection to activate the different types?
 
so therefore 7.099999 would end up in 7.0 while 7.1 is well, 7.1.
I was thinking of holding a small array or something
array of Lazy<foo>
TTGTB later!
 
Night.
 
'night!
 
5:30 AM
    foreach (var type in new[] {typeof(VbeNativeApi7), typeof(VbeNativeApi6), typeof(Vb6NativeApi)})
    {
        try
        {
            var runtime = (IVbeNativeApi)Activator.CreateInstance(type);
            runtime.GetTimer();
            return runtime;
        }
        catch
        {
            // we shouldn't be here.... Rubberduck is a VBA add-in, so how the heck could it have loaded without a VBE dll?!?
            throw new InvalidOperationException("Cannot execute DoEvents; the VBE dll could not be located.");
 
> ![image](https://user-images.githubusercontent.com/5751684/48462031-74800580-e7a4-11e8-8ba6-b21283dbb06c.png)

![image](https://user-images.githubusercontent.com/5751684/48462050-882b6c00-e7a4-11e8-8c90-8d4bd0c01c89.png)
 
@Duga I like it better than the VS version.
 
            var accessor = declaration.DeclarationType.HasFlag(DeclarationType.PropertyGet) ? "(get)"
                         : declaration.DeclarationType.HasFlag(DeclarationType.PropertyLet) ? "(let)"
                         : declaration.DeclarationType.HasFlag(DeclarationType.PropertySet) ? "(set)"
                         : string.Empty;

            var tabCaption = $"{declaration.IdentifierName} {accessor}".Trim();
 
> Appends ` (get)`, ` (let)`, or ` (set)` to the identifier name when the target declaration is a property.

![image](https://user-images.githubusercontent.com/5751684/48462031-74800580-e7a4-11e8-8ba6-b21283dbb06c.png)

![image](https://user-images.githubusercontent.com/5751684/48462050-882b6c00-e7a4-11e8-8c90-8d4bd0c01c89.png)
 
#polish
 
Same. 'night
 
Night mug.
 
[rubberduck-vba/Rubberduck] build for commit 7f10696e on unknown branch: AppVeyor build succeeded
 
@ThunderFrame Hope you're feeling well. Sorry I missed you earlier. Just remember to add in On Error Resume Next and things'll work out.
 
5:58 AM
[rubberduck-vba/Rubberduck] build for commit 685204af on unknown branch: AppVeyor build succeeded
 
6:14 AM
[rubberduck-vba/Rubberduck] build for commit adae41ae on unknown branch: AppVeyor build succeeded
 
6:25 AM
If October was hackofest would RD have a November Fixember? Seems a new trend trend for DevOps to get involved along side with programmers/hackers. sdtimes.com/devops/fixvember-aims-to-boost-devops-skills
Would in theory VBA be used for DevOps solutions?
I guess not at the moment because we don’t know use cases yet
Night all
 
 
2 hours later…
8:18 AM
 
@this Using double is not much of a problem; you just have to remember to use InvariantCulture when parsing and using ToString.
 
 
2 hours later…
 
1 hour later…
12:10 PM
@all I'm pretty sure we want to prioritize getting the PredeclaredClassModuleCommand PR merged. github.com/rubberduck-vba/Rubberduck/pull/4225
 
@Vogel612 yes, absolutely - Thunder said he was fully expecting his pending PRs to be closed/declined, I was totally planning to pull that one and have it merged for 2.3 =) ...whoever picks it, please assign yourself to the PR so we know who's on it!
 
12:51 PM
Safe to bin. I scrubbed it from my branch, but don't think I synced. I went about it the wrong way.
 
oh hai! =)
 
1:05 PM
@MathieuGuindon if I get a chance, I'm going to write up an email explaining how to read a VBProject.
You need to be able to open an OpenXML document, find the project file, or for legacy formats, open the binary using an IRootStorage (iirc, I posted that on CR), then once you have the project binary,
you need to use another IRootStorage reader to get the various VBProject files (as documented in iirc, MS-OVBA), then you can read the stream names and offset positions of the compressed plain-text source,
and finally I can provide a VBA implementation of the decompression algorithm. Hey presto, read VBA from a closed project, even if it is another host's document.
 
I never got around to implementing, partly because I couldn't decide on the best architecture for implementing. I wanted to make it a method on the current project, but I think it is better as a static helper, as a helper would better at handling some of the legacy formats and the hard-coded way in which they store their binaries.
 
It could be made to work with access too (something the VBA python tools can't do), as the project streams are kept in a large BLOB, that just happens to be an IRootStorage, or in some versions, the VBA streams and storages are just a nested hierarchy of binary fields (i.e. a module's content is embedded in a table field. The right interface should make reading Access projects as easy as reading IStorages and IStreams.
@IvenBach thanks for the callout. It's difficult to swing by here without being spotted.
 
1:18 PM
@ThunderFrame hi - I hope you are comfortable and pain-free. Just a quick q - would the above include how to decode .frx files? Very interested in that.
 
@mansellan. Slightly different principles. I made some headway on it, but got bogged down in the number of controls to stub, and ITypeLib gave us the control information we needed.
The Office FRX file is, at the top level, undocumented. The FRM file usually just gives you an offset of 0x0000 and then in the FRX, IIRC, it's 20 or maybe 24 bytes of header, which is a version number (Long), possibly a stream length (Long) followed by 4 longs that, IIRC, reflect Top, Left, Height and Width in some DPI unit (I'm unsure why this is, as the form metrics are recorded in the relevant streams, presum
 
@ThunderFrame awesome, many thanks :-)
 
@mansellan reasonably pain free. Lots of opioid for me. It's good. Seems to target the pain without making me drowsy, but it took a while to find the right variation and dose. I have been taking more lately.
3
 
[rubberduck-vba/Rubberduck] build for commit 75137960 on unknown branch: AppVeyor build failed
BUILD FAILURE!
 
1:46 PM
@mansellan the keyboard finding that DocFile, something that MS-OFORMS doesn't tell you, so MS-OFORMS is useless until you open the storage.
 
As you can tell, reading Projects and forms (and legacy Office formats, and probably some 3rd party host documents), is hugely dependent upon being able to read Compound Binary Files. .NET doesn't let you do that, unless you use reflection as per my CR question: codereview.stackexchange.com/questions/175264/…
^^ Keyboard finding that DocFike = Key thing is finding that DocFile
Night
Oh, btw, 688 stars, nice.
 
@ThunderFrame Night.
 
@Hosch250 O hi. Whatever happened re that MS role? Did you at least come away with some lessons learnt?
 
Not really.
I never heard back.
It's OK, I'm doing good where I am, and I can't afford to move anyway.
WA is really expensive. A 200k house here would be 500k+ over there.
 
2:05 PM
Good to see you again, @ThunderFrame! Very encouraging to know you're well enough to stop by and the brain dumps are greatly appreciated (even if way over my head)!
 
@Hosch250 IMO, companies do themselves a real disservice when they do that. It's really not hard to blast some rejection emails, or make a few phone-calls, but all they do is alienate candidates that might be perfect for a future role, from ever applying again.
2
 
Yeah, I'm a bit surprised. I heard from other people that I'd get feedback.
Who knows; maybe they never filled the role and are still considering me :P
(Fat chance at this point :P.)
 
@FreeMan thanks. Before I discovered I could use reflection to read the root storage, I was attempting to write a Compound File stream reader. It would have been platform agnostic, and it's really just concatenating byte arrays, but I'm glad I found the reflection approach (it uses Win32 calls underneath, so it is tied to Windows)
 
[rubberduck-vba/Rubberduck] build for commit 32804049 on unknown branch: AppVeyor build succeeded
 
aw, not cool git
 
 
not git's fault, you know?
 
there's a setting to avoid that, isn't there?
 
2:53 PM
> @comintern the app.config settings mean to contain the would-otherwise-be-hard-coded defaults, which should be read-only.
 
I thought we changed that to avoid exactly that.
 
no there's not really a setting for that.
 
~confused~
oh I think i'm conflating that with the line ending setting autoclr something
 
3:04 PM
morning gents
@IvenBach im lazy, i use vs and sourcetree
 
> Resolves #4349. Removes Enums/UDTs rename conflict detection false-positive.
Added a failing repro test for last reported false-positive and some tweaks to the VBA input code for prior #4349 tests.
 
@Duga the sucky thing is that the const names are each in their own file. Half inclined to stuff them in a new static class with all const names together so that the explanatory comment can be provided in one place.
 
@this autocrlf
 
yes. Obviously that has nothing to do with the lettercase sensitivity.
looks like one'd need to do git mv
 
3:21 PM
For the other ducklings like myself that don’t know what DevOps is: en.m.wikipedia.org/wiki/DevOps
 
3:32 PM
[rubberduck-vba/Rubberduck] build for commit 41ef3445 on unknown branch: AppVeyor build succeeded
 
i like this link better, en.wikipedia.org/wiki/DevOps
 
4:19 PM
would save a lot of time if he could remember TSQL's date/time functions
 
sqldatediff
getdate()
getdateutc() (or maybe getutcdate())
 
DATEDIFF, not sqldatediff ;-) and it's GETUTCDATE()
 
That's the problem... I have to go google the list of functions every time 'cause the names haven't yet stuck in my head.
 
no that is not a case to google
this is a case to use docs
 
4:22 PM
I just have the docs link bookmarked.
 
^
 
I think SQLDATEDIFF is the EF version.
 
ah well, that's what the reference books are on the shelf Google's for
 
It would be easier if I didn't always try to use the stupid Excel ones.
 
@Hosch250 I think i see the problem. :-p
 
4:23 PM
1st link on google is for the MS docs. that's the one I use. Doncha worry @this
 
Oh, SQLFunctions.DateDiff.
Whatever.
 
oooh, MVP Global Summit 2019 registrations open today :)
 
not until later in the day, though.
 
1PM Pacific time, so that's.. uh, 4PM Eastern?
 
if you're going by Eastern, yes
(unless you canucks have your own time zones :-p)
 
4:33 PM
lol
 
Has your MVP status begun to feel normal Mug?
Time to go rub shoulders with the other collosi of tech.
 
it's still a way off, though
March-something
 
@IvenBach nope, and fully not expecting renewal in 2019, ...despite top 0.19% this year on SO, VBA/OOP Battleship, more Rubberduck management & contributions, more VBA articles, even if I do get renewed next summer, it still won't "feel normal". #ImpostorSyndromeMuch
 
You'd be surprised.
Hey, look at me.
 
What does it take for renewal?
 
4:43 PM
If you are in, it's probably easy to be renewed.
 
^
 
@IvenBach Probably just not full-out quitting.
 
@IvenBach "just keep doing what you're doing", they said
 
More of the same, but better.
^^
 
Or abuse of the perks.
 
4:44 PM
Hosch, they did say that they will raise the bar the longer you've been
 
also, not streaming NDA summit sessions on YT helps
 
^
 
@this Oh.
 
Someone did that?
 
Well, I guess that makes sense...
 
4:44 PM
That's what they said, though.
 
SMH... Some pineapples.
 
LOL.
 
whether they will enforce it...
TBH the whole thing is a black marbles box thing.
nobody knows how it works, who makes the decision, and how. You just do what you can and if you're good enough, you're in. If not, you're out.
 
@Hosch250 like setting up a home server and claiming dozens of keys just because I can? hm..
 
Shouldn't they expect that from first timers?
Free stuff?!! BINGE TIME!
 
4:46 PM
pretty sure they do
 
I think as long you comply w/ the terms, no problem.
 
@MathieuGuindon And then giving them out free to anyone who asks for it.
 
@IvenBach yup. a handful went from MVP to pineapple by the end-of-summit party
 
Pretty please
@MathieuGuindon LOL. That's to be expected.
 
4:47 PM
Please say you weren't one of those.
 
@Hosch250 think you need a pineapple for that.
 
well, my MVP profile is still up.. wasn't me!
 
My brothers went birding with a group of the best birders in the state.
They had a drinking party.
A couple of them got so drunk they had to be carried to the hotel.
One laid down on a state highway (61 up by Duluth) for 15 minutes.
Fortunately, up there, it was dead (as in, no cars).
Might've been past Duluth by Grand Marais.
 
@Hosch250 if it wasn't, he'd be
 
IKR?
And, TBH, I don't know if I'd care. He was literally asking for it...
I don't really care when people win lethal darwin awards.
It's when they are being reasonable and an "act of God" happens that I feel sorry for them.
Like, going to work on 9/11, or random drunk smashes them and kills them, etc.
Yeah, meeting time!
 
4:55 PM
fun topics again, eh?
 
5:05 PM
I get the feeling that "How's their alcohol consumption" is just another litmus test for how professional they will be in the long run.
 
Why do you need to know where the data is if you're clearing the entire sheet? — Comintern 19 secs ago
 
> Inquiring minds want to know.
 
Take a couple brain cells and rub them together.
 
^ assumes OP has "a couple" of brain cells
 
^
:some slam on Python:
 
5:08 PM
when the log hits 34MB, it might be time to turn the logging level back down a notch or two.
 
Not the RD log I hope...?
 
@visualnotsobasic edit your OP and paste the code in there. As you probably noted, it's not really readable in a comment. — FreeMan 8 secs ago
@Comintern no, no... deep breath! The log I'm generating from my report generation. I've been writing to the same file since Sept 12th, so it's not too surprising. Oh, that's 9/12 2017
 
Oh, 34MB a year is perfectly reasonable.
 
Except it was about 3MB 2 days ago. Then I turned logging up to 11.
 
3MB a year is an order of magnitude better.
 
5:19 PM
Good morning. It is still November, right? So how about a fun read about the amazing new AI capabilities of Power BI about to enter Preview? https://powerbi.microsoft.com/en-us/blog/power-bi-announces-new-ai-capabilities/
 
@TweetingDuck Is that like Crystal Reports meets SSRS on crack? Crystal-meth Reports?
 
@Comintern more or less precisely so!
 
I need to check that out.
 
you'll rot your teeth out!
 
lol
 
5:29 PM
@Comintern Crystal Reports is sub optimal?
I had been tasked with learning about it till that idea got scrapped. I don't want to learn how to use an improper tool when a better one exists.
 
so... ssrs 2008 r2 or some really old version of crystal reports?
cuz i dunno how id even look at power bi
also bi is just greedy
 
FWIW, i'd much rather use PBI over SSRS or Crystal Reports.
 
Same here. Greedy doesn't bother me much.
 
when did power bi enter hte scene?
 
besides it's free if you use desktop, no?
 
5:41 PM
interesting issue...
 
2 or 3 years ago, I think.
what you do have to pay is for the online service
or a onpremise server
 
hmm.. looks like im going to have to make a struct or something
 
(which btw is the future of SSRS, too. They'll be merging good bits of SSRS into PBI)
 
so would power bi work with sql server 2008 r2?
 
should. it's designed to work with any data source.
heck, even a excel database!
 
5:42 PM
shudder
 
That made far more sense than SSRS did.
 
well
i just discovered a situation that requres i change a byval to a byref
because byval truncates a string down to 255 chars
and since its a query... thats a problem
 
@KySoto repro code?
 
Public Function AttachQuery(ByVal argQueryName As String, ByRef argSql As String, Optional ByVal argReplace As Boolean = False) As Boolean
    'got this from connectionstrings.com/questions/6561/…
    'added the resume to errx_exit part, and removed the username password part since we only use trusted connections
    If Not BasicInclude.DebugMode Then On Error GoTo Error_Handler Else On Error GoTo 0
    Dim qry As QueryDef
i had the argSql parameter as byval
 
i doubt it's the sql
 
5:46 PM
but it failed on a query that was longer that 255 chars
 
wait, are you saying that argSql got truncated to 255 character?
 
yes
 
doesn't make sense
 
i changed it to byref
and it worked
 
is the string coming from a worksheet cell?
 
5:46 PM
worksheet?
 
That's not VBA doing that.
 
no access
 
Same question - is it coming from a control or something like that?
 
uhhh the calling function is as follows
Private Sub createQueryDefs()
    Dim s As Variant
    Dim i As Long
    'Made this pretty just for you Philipe
    s = Array( _
        Array("qryGetProgramPath", "PARAMETERS paraID Short; SELECT dbo_Dict_Application_Info.LivePath FROM dbo_Dict_Application_Info WHERE (((dbo_Dict_Application_Info.ApplicationID) = [paraID])) ORDER BY dbo_Dict_Application_Info.ApplicationID;"), _
        Array("qryTemp", "Select 1=1"), _
        Array("qryTrainingStuff", "SELECT dbo_Training_Lookup_TrainingList.* FROM dbo_Training_Lookup_TrainingList;"), _
the longer query failed
also i know the sql is meh, but its auto generated
brb brunch
 
I'd rule this out by adding Debug.Print CStr(s(i)(1)` before calling the AttachQuery
 
5:49 PM
^
then Debug.Print s(i)(1)
 
I'm worried there's something else that's causing the truncation - could be Array or CStr, not sure.
TBH, I don't use Array that frequently and CStr very seldom.
 
same here
 
CStr shouldn't. I hardly ever use Array.
 
not sure that the purpose of Array is here
 
looks like he's using it like a dictionary without actually using a dictionary
 
5:51 PM
yeah
yet if everything is hard-coded anyway...
 
really wish dictionary was built-in.
Really, a better way to handle that would be to use a table
 
Other than for all intents and purposes?
It's not the CStr call.
Or the Array.
Or passing it ByRef.
 
:confused: wtf is going on then?
 
It pretty much has to be something with CreateQueryDef
 

« first day (1622 days earlier)      last day (1558 days later) »