« first day (307 days earlier)      last day (2873 days later) » 

12:01 AM
RELOAD!
[retailcoder/Rubberduck] 4 commits. 4 opened issues. 2 closed issues. 15 issue comments.
2
[Vogel612/BloggingPlatform] 1 issue comment.
[Zomis/Duga] 3 commits.
 
 
1 hour later…
1:05 AM
10000 rep Stack Overflow users earn 35% more than average http://stackoverflow.com/research/developer-survey-2015 http://t.co/Rl46ij3qiG
 
1:18 AM
> Merge branch 'next'
 
 
1 hour later…
3:19 AM
> changed wording of inspection results to include DeclarationType.
> implemented quickfix for ObsoleteTypeHintInspection; fixed related bugs involving HasTypeHint() in both Declaration and IdentifierReference classes.
> removed DeclaredIdentifierNode dead code
 
4:16 AM
> closes #353 - also fixes a bug where a ModuleOption could be acquired as a rename target
 
@Duga not kidding - Please specify new name for identifier 'Option Explicit':
 
> Merge branch 'next'
[retailcoder/Rubberduck] retailcoder pushed 20 commits to next
3
> fixed broken test (IdentifierReference constructor signature was modified)
 
> 49 tests passed
 
I don't know how many commits that makes, but I'm calling it a day.
 
5:06 AM
> With the `Declarations` API this is now getting more and more realistic - if a constant, variable, function or member is referenced in the right-hand side of an assignment, then the type to use on the left-hand side is known, even if it's an `Object`, and the scoping issue is already solved.

Literals can be picked up pretty easily.

If we say anything else remains `Variant` (or `Object` if the left-hand side is `Set`), then we're already in a pretty good position to infer the return type.
 
^^ let's not even think of implementing it before 1.4 though...
 
> That's really just a funky edge case, flagging it as "by design" and moving on.
> 1.3 is too early for this. Let's try for 1.4.
> @christophocles you'll be happy to hear that the rename refactoring is now in the [Next] branch - that one's going to be a :bomb:!!
> Renaming a module/class from the Code Explorer works, but the toolwindow needs to be manually refreshed for the changes to be reflected in the tree view; the Code Explorer should automatically refresh after performing a rename refactoring.
> Code Explorer nodes' `Tag` should be the corresponding `Declaration` object instead of just a `QualifiedSelection` - that way there would be enough information in the tree nodes to just grab the selected node's tag, cast it into a `Declaration` object, and pass it to the rename presenter without any further processing.

Right now the rename right-click menu prompts to rename the containing class/module when a method is selected.
 
5:31 AM
alright now, tired. enough. bedtime. for real.
really.
 
> updated change log in grammar file, added implementation stubs and comments (referencing GitHub issues) for picking up literals in IdentifierReferenceListener
> fixed InvalidOperationException in RenamePresenter
 
that doesn't count
 
 
4 hours later…
9:21 AM
People working hard here
 
9:55 AM
Sure it doesn't count...
 
 
2 hours later…
11:50 AM
> 901 commits
16+29 downloads
 
12:22 PM
> The `Error` statement is obsolete and should be replaced with a call to `Err.Raise` per [the MSDN documentation](https://msdn.microsoft.com/EN-US/library/office/gg264544.aspx).

Error 11 ' simulate division by zero error

- Severity: Hint
- Quick Fix: Replace Error statement with proper call to `Err.Raise`

Err.Raise 11
 
@ticker... "Procedure too large error"??
I've gotta see this.
 
@RubberDuck You are getting friends? Or competition perhaps...
 
> There can be only one.
0
Q: "Procedure too large" error with Private Subs

Laurentiu ManolacheI have in a Excel 2007 with multiple worksheets a working VBA code without errors that verify Hyperlinks from a range name and execute 2 different formatting. I have a subroutine for erasing formatting and another for reformatting in Module 1, which are called by their name: Erase_format and Doub...

 
12:44 PM
You guys here using SCRUM?
As I see you often talking about sprints or 4-week cycles
 
@Duga Wow I'll have to verify that one is actually in the grammar!
 
@Mat'sMug Yes, you should!
 
@skiwi Not formally, but we have been trying to hit 4 week sprints.
17 hours ago, by RubberDuck
@skiwi release early, release often
 
@RubberDuck Ah okay, how do you balance the features you want to build yourselves and user suggestions?
 
Depends.. suggestion or bug?
Suggestions get prioritized into some future release. Bugs we try to handle for the next release.
 
12:53 PM
Well, assuming you don't want to build bugs, I think suggestions would be a thing ;)
Do you actually plan out future features for different versions or do you prioritize them? And then use that to clear the backlog
 
We usually only go one (maybe 2) releases out.
When one version gets close to release, we take some time to plan the next version.
So, we've typically had a week between one version releasing and work starting on the next.
Which makes for a nice little break.
Gotta keep the sanity
 
^^
Time for a quick poll here, mainly for @RubberDuck and @Mat'sMug ;)
Would you want @Duga notifications to be available elsewhere?
 
@skiwi What do you mean?
 
TBH v1.3 was way too ambitious
 
@skiwi Everywhere! I shall rule everything!
2
 
12:59 PM
@RubberDuck Currently the only output of @Duga is towards SE chat, though there could be more endpoints
I'm personally wanting to support Pushbullet, such that I get notifications on my PC
 
A lot of issues marked 1.3 will end up in 1.4
 
(It's a little popup in the corner, which you have to manually dismiss)
 
@Mat'sMug Yeah... and honestly, it really could be 2.0 if I ever get SCI done.
@skiwi You can do that?
 
@RubberDuck Yeah, I've thought it all out, and it's a possibility!
 
@RubberDuck We're programmers, we can do anything
6
 
1:02 PM
@skiwi I would use that. Then I could focus on code and stay out of chat when I'm working on RD.
 
@RubberDuck I can't support you staying out of chat :(
 
LOL
Then I guess it's a no start.
 
No, but for real, I'm really thinking
I'm planning an overhaul of @Duga soon (tm) to give it a web interface
 
Seriously though, sometimes chat gets to be a distraction. It would be nice to still get Duga notifications if I don't want to log into chat.
 
It will ugly as hell, not my job :D
 
1:04 PM
Okay..... I don't get it.
I thought this was bit shifted at first, but....
vbCritical
16
Critical message
vbQuestion
32
Warning query
vbExclamation
48
Warning message
vbInformation
64
Information message
48 wtf?
LOL.... @Mat'sMug put this in the immediate window...
msgbox "Hello", vbExclamation + vbCritical
You'll be surprised
 
So @RubberDuck if you would like that feature, then you'll need to motivate me some ;) If attention level drops low
It's at least good to know that someone besides myself wants it
I've got two exams tomorrow... After that 9 days of free time!
 
Nice!
 
Need to be careful I don't end up gaming 9/24/7 though
 
Bad @skiwi. Write code.
2
 
@RubberDuck Looks like +16 to me xd
 
1:08 PM
It's doing something like this internally
If value < 16 Then
    NoIcon
ElseIf value >=16 && value <32 Then
   vbCritical
ElseIf....
 
I need to be really really careful to release early, release often
It's difficult
 
It is. I'm a few weeks passed where I wanted to have my current work done.
 
Take @Duga web interface for example, I want users to be able to enable/disable events per endpoint, I better don't do that in initial release though
Has anyone seen RD design documents/diagrams around here? ;)
 
design documents? what are those?
3
 
@skiwi I have..... but they're on pieces of graph paper here in my office.
 
1:25 PM
@RubberDuck Hehe, I'm seriously considering them for @Duga, but trying to figure out where to start
Is there something wrong with Release Early, Release Often, Refactor A Lot?
Should you be building systems of which you know that they can be programmed in a better way?
 
1:41 PM
@skiwi absolutely not. Nothing wrong there.
The latter, idk.
 
I'm thinking together with @SimonAndréForsberg and seems like we need to design more on the @Duga web interface to prevent code duplication, tc.
 
We need to design the code, not the web interface (i.e. GUI stuff)
 
Correct ^^^^ Important point
 
@RubberDuck Take a cell phone picture of them. They'll end up on the web eventually...
 
2:03 PM
I should start documenting the Rubberduck code base... but there's so much to implement, and so little time...
2
 
Word
 
I saw the SO survey results yesterday
I think I spend 20-30 hours a week writing code on-the-side for an open-source project... and 45 hours a week actually working
2
 
@Mat'sMug When do you do other stuff?
 
I'll burn out that way huh
 
Depends on how resistant you are
 
2:12 PM
@Mat'sMug Only if you're made of wax
 
I get home around 7PM, put the kids in bed around 8 - by 9 I'm coding, up to anywhere between 1 or 2AM, sometimes a bit later. then 7AM another day starts
God bless coffee
2
 
I have no schedule
 
I have no life - I mean... I want 48-hour days!!
 
@Mat'sMug why have we never thought about looking at the VisualBasic Namespace sourcecode
It's a re-implementation of VB6 in .Net...
@Mat'sMug You will. I've cut my out side of work coding back to about 8-10 hours a week.
'Only allow legal button combinations to be set, one choice from each group
'These bit constants are defined in System.Windows.Forms.MessageBox
'Low-order 4 bits (0x000f), legal values: 0, 1, 2, 3, 4, 5
'     next 4 bits (0x00f0), legal values: 0, &H10, &H20, &H30, &H40
'     next 4 bits (0x0f00), legal values: 0, &H100, &H200
If ((Buttons And &HFI) > MsgBoxStyle.RetryCancel) OrElse ((Buttons And &HF0I) > MsgBoxStyle.Information) _
    OrElse ((Buttons And &HF00I) > MsgBoxStyle.DefaultButton3) Then
 
I don't know if I should be happy or not, tomorrow 9-12am first exam about Artificial Intelligence (which is difficult as hell, I'm not prepared and I absolutely need to deliver something in order to be allowed to take the resit), and then from 6-9pm I have an easy exam (resit) on Software Engineering
 
2:17 PM
whiskey tango foxtrot man...
 
Pretty much my free time starts after the first exam, though I do need to be there and pass the 2nd exam
 
@RubberDuck it's an abomination. whenever I see using Microsoft.VisualBasic; in .net source code, I die inside.
 
@Mat'sMug Yeah. Me too, but we basically have the VB6 source code at our fingertips.
 
..mkay, but to do what?
 
Why this hasn't dawned on me before..... I just don't know.
@Mat'sMug this
Private Function ConvertMsgBoxStyleToErrorSeverity(ByVal style As VbMsgBoxStyle)
which enables this
Public Sub LogError(moduleName As String, procName As String, Optional severity As ErrorSeverity = Critical, Optional OptionalText As String = vbNullString)
which is going to insert errors into a log table on SQL Server.
 
2:21 PM
...in .net? why bother? there's NLog...
not sure I'm following
 
No. In VBA.
I'm building a logger.
 
oh
 
So, what I'm saying is that if there's ever a question about how something works.. the source code is available.
 
14
Q: Extensible logging

Mat's MugWhenever I need logging functionality in .net, I use a logging framework, such as NLog. Obviously there's no logging framework for vba, at least none that I know of. As much as I love using NLog, the way it works, with targets, rules and loggers, was going to be way too heavy and complex for my ...

 
Well, not the source, but a source.
Yeah.. I know, but I already have all the error handling code wired up to display errors to users.
I'm modifying it to log too.
I want to see how many bugs are going unreported.
 
2:24 PM
you'll wish you could "inject" that into SNAP...
2
 
@RubberDuck I'm doing my best...
 
@FreeMan did you break the "extract method" refactoring yet? ;)
 
@Mat'sMug I did!
lol
 
@Mat'sMug haven't gotten there yet. I have actual work to do, in addition to ---beta --- alpha testing your product...
:D
_/though --- initiated <strike>. stoopid chat...
 
it does, but you can't have a trailing space there ---beta ---
---beta--- => beta
 
2:30 PM
----=>---
Heh, that causes weird behavior with the chat
 
you can't BF the chat, the chat has no brain!
2
 
@Mat'sMug but, but, I wanted the strike through that trailing space!!!
 
> 50 downloads
I think we're averaging over 5 downloads per day
 
@FreeMan is this what you want?
you can't get a strike through a trailing space though
 
2:47 PM
> Say you have interface IClass1: Option Explicit Public Sub DoSomething() End Sub And then Class1 implementing IClass1: Option Explicit Implements IClass1 Private Sub IClass1_DoSomething() End Sub You can decide to rename method IClass1_DoSomething to something else if you want, and Rubberduck will let you do it. It shouldn't. Rubberduck knows that this method is an implementation of member DoSomething from interface IClass1 - it shouldn't let you rename IClass1_DoSomething...
and make the code non-compilable. There should be an informative message displayed to the user instead. > Method IClass1_DoSomething cannot be renamed without breaking the code. Or something along these lines.
 
^^ not a bug, just a nice-to-have. #IdiotProofing
 
Sounds like preventing a bug report to me. =;)-
 
@SimonAndréForsberg Just claiming that my ineptitude was a feature, not a bug
 
> Or, if `IClass1_DoSomething` is selected, prompt the user with:

> *Rename interface member?*

And if confirmed, rename the `DoSomething` member of the `IClass1` interface instead of the selected `IClass1_DoSomething`
 
Is it a bad sign if I want to name a constant MagicBitShiftingNumber?
3
 
2:58 PM
You seem to want array semantics. Why not just stick to an array then? — Mat's Mug 37 secs ago
 
@RubberDuck only if that's not what the constant is for
 
.... I'd say it means I don't understand the problem well enough yet.
 
How does this look?
 
I don't like programming via superstition.
 
3:04 PM
Looks like that start of a good design. ;)
Mock it up and run it past the UX folks.
Okay, It's starting to make sense.
011110000 == 240 ==  f0 == constant for pulling out icon
000010000 ==  16 ==  10 == vbCritical
000100000 ==  32 ==  20 == vbQuestion
000110000 ==  48 ==  30 == vbExclamation
001000000 ==  64 ==  40 == vbInformation

000000001 ==   1 ==   1 == vbOkCancel
100000000 == 256 == 100 == vbDefaultButton2
000010000 ==  16 ==  10 == vbCritical

100010001 == 273 == 111 == vbOKCancel + vbCritical + vbDefaultButton2
011110000 == 240 ==  f0 == constant for pulling out icon
------------------------Bit-Wise AND
BINGO!
000010000 ==  16 ==  10 == vbCritical
000100000 ==  32 ==  20 == vbQuestion
000110000 ==  48 ==  30 == vbExclamation
001000000 ==  64 ==  40 == vbInformation
------------------------Bit-Wise OR
011110000 == 240 ==  f0 == constant for pulling out icon
Soooo what do I name the magic constant?
......
 
vbNonsense
3
 
18 mins ago, by RubberDuck
Is it a bad sign if I want to name a constant MagicBitShiftingNumber?
 
@RubberDuck Not trying to design that much yet though :P
Now if this design could also just as easily be made on the web, then I'd be happy
but for some reason they always turn out to be crappy
 
Ya know, when you were talking about design earlier, I thought you meant UML diagrams.
 
3:20 PM
I did
But I decided I needed an interface mockup as well, to clarify the UML diagrams
 
good man
 
Now if I could only draw such UML diagrams by hand without mistakes ;)
It feels good to have a designed GUI, it's something tangible!
A problem we're having is that this mockup is to support Github events... In reality @Duga also has Travis events and perodical tasks
If we can manage to fit those into the design of the initial release (not the implementation) then that would be great, but I'm quite lost there
 
Private Function GetVbIconType(ByVal style As VbMsgBoxStyle) As Integer
    ' There's a lot of bit shifting magic here.
    ' The Icon Type is retrieved by OR-ing the valid values together.

    'Binary       Dec    Hex    Description
    '
    '000010000 ==  16 ==  10 == vbCritical
    '000100000 ==  32 ==  20 == vbQuestion
    '000110000 ==  48 ==  30 == vbExclamation
    '001000000 ==  64 ==  40 == vbInformation
    '------------------------Bit-Wise OR
    '011110000 == 240 ==  f0 == constant for pulling out icon
21 Lines of Comment; 2 Lines of Code
2
in The 2nd Monitor, 12 mins ago, by skiwi
It explains the intents, which are absolutely magic and hackery
 
What ar eyou attempting to even do @RubberDuck?
 
I have a bunch of code through out my code base that displays a semi-standardized message box on error.
The dev can over-ride the default styling a bit though.
 
3:34 PM
This is work-related and not RD, right?
 
Now, I need to translate that styling into an error severity level for database logging of the errors.
Yeah. Work.
 
Whatever you are doing... It sounds complicated!
 
@skiwi Only because M$ made it complicated....
I'm supposed to be done with this by now.
 
Most things really do make a lot of sense, but it takes a while to understand them
Like UML diagrams
 
> errorStmt : ERROR WS valueStmt;
it's there
 
3:55 PM
Ahh good.
 
you know what? I'll leave that one for you to implement! :)
 
Sure. Should be simple enough. If it exists, it's a hit.
 
4:12 PM
just override EnterErrorStmt
then you can do something like this: github.com/retailcoder/Rubberduck/blob/…
that's the "too easy" part. the "fun" part is implementing the quickfix :)
 
5:00 PM
of all naming conventions.... alllowercase is the worst IMO
> Sub pullfrommsaccess()
Unrelated, but I'd suggest you drop alllowercase and adopt a camelCase naming convention for your locals, and PascalCase for procedure names. Readability++ — Mat's Mug 55 secs ago
 
 
(hides)
 
5:25 PM
I think the coffee at my work is extra caffeinated. After a week of my Gevalia this feels like I'm having a jittery heart attack.
 
@Mat'sMug wHAT ABOUT sQL cASE?
I have another reason not to ever use With in VB6.
With New ADODB.Command
    Set .ActiveConnection = bimic.Connection
    .CommandType = adCmdText
    .CommandText = sql

    .Parameters.Refresh

    .Parameters(0).value = moduleName
    .Parameters(1).value = procName
    .Parameters(2).value = severity
    .Parameters(3).value = Err.Number
    .Parameters(4).value = Err.Source
    .Parameters(5).value = Err.Description
    .Parameters(6).value = IIf((OptionalText = vbNullString), Null, OptionalText)
    .Parameters(7).value = Environ("UserName")
Can't inspect the command object in the locals window.
And this is how you're supposed to use With.
Anyway... <lunch.
 
Naming issue detected!
I'm looking for a general name of an object in Duga Web Interface having multiple Endpoints and Users that can modify those
Currently it's called a Repository, but we also want to support tasks (like the daily @Duga RELOAD!)
 
@RubberDuck Nice, but not useful if your SP happens to have a return parm or you're returning data.
 
5:46 PM
@FreeMan this is:
10
Q: Creating ADODB Parameters on the fly

Mat's MugI have put together a small wrapper class to simplify creating parameterized ADODB queries with VB6/VBA. At this point I'm keeping things simple, so it's only supporting input parameters and from what I've tested it seems to work exactly as intended. The main reason for writing this, is because ...

 
5:56 PM
@FreeMan it's actually a parameterized text query.
I was just pointing out how stupid With can be. Even when you do it right.
Annndddd a new answer on a year old post.
 
6:50 PM
@RubberDuck nice kick in the shins
 
7:29 PM
@RubberDuck Huh? Comments? Documentation? But why?
 
@Mat'sMug Because you kept repeating that "The client is responsible for this", but someone looking at the code would have to figure that out for themselves.
 
7:56 PM
0
Q: Excel VBA - Get Folder Names

Anurag SinghI need to get folder names with the path for which I need to search the directory in a server with about 6000 folders. I have the following snippet of code to run through the folder and get the folder names with path. It works fine in a local directory but when I run the same code on a server dir...

 
pimping have you seen this answer?
2
A: Should I use static method (C#)

Simon André ForsbergWhat you have here seems to be a version of the Static Factory Pattern. This is a well-known pattern and is perfectly fine to use. You might also be interested in the non-static version of the Factory Pattern. I assume HttpClient is not "your class", in which case you of course can't add a meth...

 
8:14 PM
> I assume HttpClient is not "your class", in which case you of course can't add a method inside the class itself.
@SimonAndréForsberg but this is C# - you can write an extension method for anything!
(not saying it's a good idea to extend a concrete type though)
 
@StackExchange interesting... cross-posted to Code Review. Someone want to flag the CR version for removal, since it really should be on SO?
 
@Mat'sMug good point! totally forgot about that actually. But indeed, probably not a very good idea to do so
 
@StackExchange Off topic.
@FreeMan LOL. I just voted to close.
This gets my downvote here too. There's not enough information to solve the problem. You need to tell us where the code fails and how. What's the error? — RubberDuck 14 secs ago
 
I'm on the fence here. The code works... but fails because I presume the folder names get too long. Do they? It's impossible to tell just by looking at the code, but I suggest you also print the length of the subfolder names you're getting. If it's too deep and folder names get longer than [what I think I remember as being] 240 characters, that's where it blows up. You need to handle runtime errors here. Basically if handling long folder names is part of your spec, this code doesn't work as intended and thus, isn't ready to be peer reviewed on this site. Good luck! — Mat's Mug 9 secs ago
 
@Mat'sMug oddly enough, I offered code review on the SO post, you offered fix it advice on the CR post.
Cross-post chaos ensues!
 
8:22 PM
lol
@RubberDuck we're not alone!!
If you're getting errors on update to 9.1 from within VS, please download full or web installer from https://www.jetbrains.com/resharper/download/ Apologies...
#ShitHappens
@FreeMan @RubberDuck I've retracted my close vote
The code works absolutely fine.. but it hangs when the script is run on a server location where I have around 6000 folders. I am not sure why it takes so much time hence I posted here for optimization — Anurag Singh 9 mins ago
 
8:40 PM
Yes, the confusion between "hangs" and "takes so much time". Hard to know which it is at the moment
 
I'm still on the fence @AnuragSingh, but I'll give it the benefit of the doubt and retract my vote if you edit that (vital) information into your question. — RubberDuck 10 secs ago
@Mat'sMug That seriously makes me feel so much better.
#InstallersAreHard
 
RT'd ;)
 
If you're getting errors on update to 9.1 from within VS, please download full or web installer from https://www.jetbrains.com/resharper/download/ Apologies...
 
@resharper #InstallersAreHard
 
ruh-roh, George!
>See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Runtime.InteropServices.COMException (0x80004005): Error HRESULT E_FAIL has been returned from a call to a COM component.
at Microsoft.Vbe.Interop._VBComponent.get_CodeModule()
at Rubberduck.Inspections.OptionBaseInspection.<GetInspectionResults>d__2.MoveNext() in c:\Users\Christopher\Source\Repos\Rubberduck\RetailCoder.VBE\Inspections\OptionBaseInspection.cs:line 23
>Unhandled exception has occurred in a component in your application. If you click Continue, the application will ignore this error and attempt to continue.
>Error HRESULT E_FAIL has been returned from a call to a COM component.
 
8:50 PM
> Error HRESULT E_FAIL has been returned from a call to a COM component.
 
that's what I said...
 
Why is it pointed at my code base anyway???
Heh...
 
It was fixing an implicit ByRef & refreshing the Inspections window then that popped up.
 
Latest version?
Yeah. 1.22.
 
I was going to ignore it, then I realized, "Hey, I know the devs!"
 
8:52 PM
Damn.
Can you repro on demand?
 
lemme see.
I get a blank Code Inspections window and refreshing doesn't do anything.
Blank as in, there's no grid. I've got the buttons, and the column headers, but solid grey below that.
It says 0 issues
 
@FreeMan I'm gonna go drink a beer or twelve, but if you figure out how to repro it, please leave repro steps and stack trace here github.com/retailcoder/Rubberduck/issues/new
 
enjoy yourself. After restarting Access, no repeat of the error. It had not yet actually fixed the missing ByRef
 
9:26 PM
mONKING!
 
@Duga @RubberDuck @Mat'sMug this one is about the mysterious Cast problem, just one test to show you what I had to do to solve it. I'm sure, Moq can do that, I just don't know how. Thanks!
 
10:47 PM
Okay @PetLahev. I'll try to look later. I haven't had a chance to play with the Moq yet. Unfortunately, all of the code is so VBE reliant, it's hard to say what needs mocked until you dive into the internals of the code under test.
 
11:35 PM
@FreeMan FWIW I saw something like that the other day, where a COMException was thrown in the OptionBaseInspection. It's fixed in next release, the inspection is working against the Declarations API (because ModuleOption is now a DeclarationType)
 

« first day (307 days earlier)      last day (2873 days later) »