« first day (756 days earlier)      last day (2424 days later) » 

12:00 AM
I guess I'm done for the day. BBL.
 
You should be able to change the settings by editing the settings file too (or delete it while RD is running). I'd just assumed the lag file was held open.
 
Sure doesn't seem like I got a lot of things done this week, but I learned a lot.
 
RELOAD!
 
And we have logging now, to help catch those elusive bugs. @Mat'sMug Can the default log value be Fatal, or even Error, at least for the beta releases?
 
[Hosch250/Rubberduck] 13 commits. 3795 additions. 2104 deletions.
[rubberduck-vba/Rubberduck] 15 commits. 2 opened issues. 2 closed issues. 9 issue comments. 3372 additions. 1564 deletions.
[skiwi2/ArbitrageClient] 2 commits. 91 additions. 4 deletions.
[rubberduck-vba/Rubberduck] build for commit 7800d153 on unknown branch: AppVeyor build succeeded
 
12:04 AM
@Hosch250 Error for logging exceptions, Fatal for exceptions we don't see coming and cannot handle and make RD unstable or blow everything up. Why would debug/trace output be logged as error or fatal?
> Rubberduck.Setup.2.0.3b.exe (5.32MB) - Downloaded 79 times.
Last updated on 2016-06-24
25, 30 downloads today?
 
12:22 AM
@Mat'sMug No, the default log level.
 
I don't understand..
 
If the default level is none, users won't be able to report any relevant data for crashes that just occur once.
I'd like to set it at least to fatal so all crashes are logged.
@Mat'sMug This is what I feel an interceptor is like:
 
LOL! That looks like the basement of my house when I bought it.
 
@Hosch250 oh! ...nah, logs have to be opt-in
 
Even for the beta release?
BTW, @Mat'sMug, we've hardly got any error reports this week!
Once we get the most critical ones killed, can we stable release?
 
12:29 AM
@Hosch250 ideally we would have a checkbox in the installer to enable it right out of the box
 
I agree.
And if it is in the installer, it can be checked by default.
 
@Hosch250 I guess... let's call it RC1 :-)
Yeah
 
@Mat'sMug Actually, that's this week's.
 
But it's not ;-)
 
I can't reproduce most of the bugs on my machine, anyway.
I'm going to try to get the CE remove bug fixed tomorrow before release.
I have no idea what's causing it... I'll probably have to go through commit-by-commit.
 
12:32 AM
Any ideas why I'm getting an XamlParseException in SourceControlView.xml?
 
@Comintern No, I don't.
 
{"'Set property 'System.Windows.FrameworkElement.Style' threw an exception.' Line number '462' and line position '22'."}
 
That is absolutely crazy.
Well, what's that line?
 
<Menu Style="{DynamicResource MenuStyle1}">
 
AHHH!!! I renamed that to PrettyMenuStyle!
What in the world is happening here?!
I never even committed with it as MenuStyle1, AFAIR.
sigh it is named like that, alright, in both the definition and the reference.
Anyway, I'm going buggy from being on my computer, sorry for all the bugs.
 
12:36 AM
NP. It also has 2 themes: xmlns:themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFrame‌​work.Aero" and xmlns:Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFrame‌​work.Aero2" x:Class="Rubberduck.UI.SourceControl.SourceControlView"
 
12:56 AM
> Pros
>
> If you like bureaucracy, lots of proprietary software development, tons of red tape in getting your job done than this is the place for you! If you have not fully developed your software development skills or like to pretend that you are something you are not, you can likely find your dream job at Bloomberg.
 
1:25 AM
Okay, wife went out - it's just you and me, bloody website!
 
 
1 hour later…
2:37 AM
0
Q: Retrieve value from a formula in cells into different merged cells and retrieved value can be edited

AriunaaI have created this macro and having a small issue. I am very new to this VBA and did this with experts’ guides by googling it. I am creating an excel form for a work purpose at work. The Excel form has 7 sheets and each have named tables with different data. 1st sheet is the editable form, whi...

 
2:57 AM
[retailcoder/Rubberduck] retailcoder pushed 19 commits to next (only showing some of them below)
[retailcoder/Rubberduck] Hosch250 pushed commit 6b984212 to next: Use logger from parent command class.
[retailcoder/Rubberduck] Hosch250 pushed commit 2bfc4f4f to next: Fix some localization
[retailcoder/Rubberduck] Hosch250 pushed commit 3934359a to next: Pull with conflicts
Merge pull request #1945 from Hosch250/logging

Logging
[retailcoder/Rubberduck] Hosch250 pushed commit f9a71652 to next: Pull with conflicts
Merge pull request #1944 from Hosch250/Issue1397

Fix some localization
[retailcoder/Rubberduck] Hosch250 pushed commit 02be91c0 to next: Refix display of type hints
[retailcoder/Rubberduck] web-flow pushed commit ffb564a0 to next: Merge branch 'next' into Issue1397
Merge pull request #1946 from Hosch250/Issue1397

Refix display of type hints
Merge pull request #136 from rubberduck-vba/next

sync with main repo
 
3:34 AM
The resolver doesn't complain about this:
Sub foo(Optional x As String = bar())
  Debug.Print x
End Sub

Function bar() As String
  bar = "bar"
End Function
but the VBE does.
 
then it's not a problem
:)
 
4:28 AM
[rubberduck-vba/RubberduckWeb] retailcoder pushed commit e428a835 to master: moved \libs into RubberduckWeb folder, updated nuget packages and Rubberduck references
 
5:13 AM
isn't this a problem?
bookmark:
11
A: How to programmatically change conditional compilation properties of a VBA project

Peter AlbertInspired by this approach, shown by SiddharthRout, I managed to find the following solution using SendMessage and FindWindow: Option Explicit Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _ (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Decla...

 
5:44 AM
I didn't see that article, but I did tackle this the other day using a CommandButtonControl.Execute call, SendMessageLong, and sendkeys
(which seems to be what they do too)
 
yeah
that would be 2.1 scope
 
I also tried hooking the dialog in the same way as the magic project unlocking code does
but it doesn't return values in the same way as the project password dialog.
 
>
![refresh-after-closing](https://cloud.githubusercontent.com/assets/5751684/16512961/887ac9a6-3f2e-11e6-91e0-3d3e7cc64290.gif)


...but you actually need to kill the process to be able to quit
> The log contains pages and pages of this:

> 2016-07-01 01:52:23.4934;FATAL;Rubberduck.UI.CodeExplorer.Commands.CodeExplorer_PrintCommand; 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.UI.CodeExplorer.Commands.CodeExplorer_PrintCommand.CanExecuteImpl(Object parameter) in c:\Users\Mathieu\Documents\GitHub\Rubberduck\RetailCoder.VBE\UI\
> Part of the problem seems to be that the CE (parser state?) doesn't refresh / clear when a project is closed, which leaves stale data in the dockable toolwindows; in this case a `COMException` is thrown when the stale/ghost `Component` is accessed in `CanExecuteImpl`:

return node.Declaration.QualifiedName.QualifiedModuleName.Component.CodeModule.CountOfLines != 0;
[rubberduck-vba/Rubberduck] Hosch250 pushed commit f29c94bd to next: Commit refactored sinks.
[rubberduck-vba/Rubberduck] Hosch250 pushed commit 7800d153 to next: Mostly reinstate sink handlers--may be some bugs still
Merge pull request #1947 from Hosch250/RefactorSinks

Refactor sinks
[retailcoder/Rubberduck] Hosch250 pushed commit f29c94bd to next: Commit refactored sinks.
[retailcoder/Rubberduck] Hosch250 pushed commit 7800d153 to next: Mostly reinstate sink handlers--may be some bugs still
Merge pull request #1947 from Hosch250/RefactorSinks

Refactor sinks
Merge pull request #137 from rubberduck-vba/next

sync with main repo
[rubberduck-vba/Rubberduck] build for commit 9f626fb1 on next: AppVeyor build succeeded
 
 
7 hours later…
1:02 PM
> @Hosch250 and @retailcoder I have be unable to reproduce this error regarding null with RD 2.0.3.0 build with Win 10 Home. Version 1511 and OS Build 10586.420. Attached are my three tests using ScreentoGif.
1. with Word 2010
![rd 2 0 3 0 word project test](https://cloud.githubusercontent.com/assets/2254567/16522110/f0cefdd2-3fde-11e6-9a0b-d9d9912e25f5.gif)
2. with Visio 2007 version I had
![rd 2 0 3 0 visio 2007 project test](https://cloud.githubusercontent.com/assets/2254567/16522108/f0c
 
1:59 PM
@Mat'sMug The CanExecutes.
Yeah, I caught a few COM exceptions yesterday.
 
> This is the prompt to restart after an exception. If I need to, I'll just swallow that exception in the Print command, but I'd rather figure out why it is happening. (At least we have the logs!)
 
 
2 hours later…
3:47 PM
[ckuhn203/VBEX] a-ivanov starred us
 
 
2 hours later…
5:23 PM
@Mat'sMug I know, the performance in large projects is awful!
 
I'm typing up a reply :-)
 
And tell them that removing/readding components is a known bug that I've been fighting all morning.
 
5:42 PM
@Mat'sMug What kind of interception does CallerMemberName use?
I've been thinking that I could have a CallerLogger attribute and auto-inject the log file.
 
@Hosch250 what's the difference between "Command Prompt Exe Location" and "Command Prompt Executable"?
 
@Vogel612 I would suppose the location is the file path to the executable.
Where is this?
 
i18n
 
Huh?
 
SourceControl_FilePickerCommandPromptHeader and SourceControl_CommandPromptExeLabel
also which command prompt are you asking for? if you're asking for the git-cli installation you should say more explicitly
 
5:48 PM
Nah, I don't care.
I use cmd.exe. Mat uses powershell.
Once Git is installed, either of them can handle it.
Heck, they could set notepad as the exe, and I don't do anything.
However, you are right that it should be more explicit about being the Git command prompt.
 
@Hosch250 that's a misconception
not everybody integrates git with their CLI
you shouldn't assume that
 
If you add it to the Path, it is there.
I use cmd.exe by default because it is going to be there--you can't uninstall it or disable it.
 
which does automatically happen (when you run default install), but you can disable it
it's not automatically on PATH, and if you rely on that it'll blow up
 
The user can, and should, set it to the exe they wish to use.
@Vogel612 No, it just says "command 'git' not known".
Nothing blows up.
 
wait.. that's just for the console thingie you can launch?
 
5:51 PM
Yeah.
 
because if it is, it shouldn't be under SC
 
Why not?
We don't use the console anywhere but under SC.
Those are the strings for the settings pane:
 
doesn't make it an SC thing, IMO
anyways. next question:
What's "Stage Type Changed"?
 
Git status flag.
 
also what's the difference between "Nonexistant" and "Missing"?
 
5:54 PM
I have no idea what it is, I just translated the name of the enum value.
@Vogel612 I have no idea, but apparently Git does.
 
eurgh
stabbing shadows for i18n is
 
What is i18n?
 
Wouldn't "missing" be something that's expected but not present? That would make "non existent" unexpected and not there either..
 
Well, I discovered the root cause of one of the bugs.
@Mat'sMug @Comintern I have a COM question.
When I handle the Removed state, the VBE doesn't remove the component until I finish handling the event.
Makes sense, because we don't want COM exceptions.
However, I'd like the Project Explorer to instantly update like it used to before I started handling the event.
Would it be possible to copy the value to a local item and let the VBE remove it, and pass the local variable around?
Or does the COM object need to be hosted in a COM host to work?
 
@Hosch250 shorthand for internationalization
because 18 letters between i and n
 
6:05 PM
Oh.
 
'nother question... why are there .png resources in RubberduckUI.resx?
 
Bites the dust
That fixed it!!!
It fixed the entire problem!
Just use the same value and fire the sink event asynchronously on the UI thread.
@Vogel612 I guess because we had to put them somewhere. However, there is an issue to get them out of there.
 
then I'll ignore them for now and copy the values over
wtf C#... are you telling me I can't have an internal property of an internal type on a public interface?
 
Right. The interface might be used outside the selection.
Everything in an interface is public--you can't have conflicting accessibilities.
Ugh, something isn't working.
 
6:22 PM
hrngh... that's annoying...
 
@Hosch250 - What value do you need to copy? As long as you hold a reference to a COM object, the COM server won't destroy it. It's a little more involved with Interop (managed v. unmanaged references), but the same basic premise.
 
private void ComponentsSink_ComponentRemoved(object sender, DispatcherEventArgs<VBComponent> e)
{
    if (!IsEnabled) { return; }

    var handler = ComponentRemoved;
    if (handler != null)
    {
        handler(sender, e);
    }
}
OK, so I handle the component removed event.
The VBE will not remove the component until I finish handling the remove.
Unfortunately, that leads to complications somehow--everything works when I don't handle the event.
 
Are you storing a VBComponent in the DispatcherEventArgs?
 
Yeah.
I need the information to remove it from the cache.
 
The Interop assembly won't release its reference count until it gets GC'd
 
6:26 PM
OK, I think this is what I need to do:
Not handle removing a component from the cache with the event.
It removes correctly when I just do a reparse, and there are no exceptions.
 
Can you get the information from the VBComponent that you need to find it in the cache and pass that instead? Or wrap it in a managed version that releases the COM object it's wrapping early?
 
Umm, I think with a bit of refactoring, I just need the name and help file.
I'm going to have lunch now.
 
Is there a way to get the StringFormat from a binding in the code-behind?
(I'm still fighting decimal fields together with UpdateSourceTrigger=PropertyChanged)
var stringFormat = sellingPrice.GetBindingExpression(TextBox.TextProperty).ParentBinding.StringForm‌​at;
Looks like this does the job, haven't tested it though
 
7:03 PM
[rubberduck-vba/Rubberduck] Vogel612 pushed commit 9ec655e5 to next: Adjusted German .resx for RubberduckUI
Merge pull request #1949 from Vogel612/i18n_maintenance

Adjusted German .resx for RubberduckUI
 
wat
 
[rubberduck-vba/Rubberduck] build for commit 91f00b65 on next: AppVeyor build succeeded
 
@Vogel612 wat wut?
 
didn't expect a user named web-flow to commit htis
 
No, that's GitHub's web-action name.
I did that.
 
7:15 PM
yea I figured that out after checking :)
 
Has any of you ever had issues with using decimals in TextBox?
 
> RD does not correctly load all of the projects in the given Excel instance if starting from a "blank" workbook or a normal xlsx file. The projects are correctly resolved if Excel is opened from an `xlsm` file first.

Once Excel/RD are open without the projects resolved, it does not make a difference if an `xlsm` file is then opened. There seems to be no way to get RD to resolve the projects once they are skipped.

I do not get an error message or any other indication of failure when this
> If I save a blank workbook as an `xlsm` file (with no user code or anything on the VBA side) RD does **not** correctly resolve the projects. If I take that same file and add an empty module (with just the `Option Explicit` at the top) RD correctly resolves all the projects when reopening that file.

That is, it is not just saving as `xlsm` that matters but actually having a module in that file.

Note that RD resolves the projects before I hit "Enable Content" in the yellow warning bar.
 
7:38 PM
[rubberduck-vba/Rubberduck] build for commit c3a7a7b4 on unknown branch: AppVeyor was unable to build non-mergeable pull request
BUILD FAILURE!
 
8:00 PM
@skiwi Never done it.
 
8:50 PM
This is irking me.
Without the sinks, things don't update correctly, and there are sometimes COM exceptions from stale components being referenced.
With the sinks, there are COM exceptions...
 
 
1 hour later…
10:16 PM
Merge pull request #1947 from Hosch250/RefactorSinks

Refactor sinks
[Hosch250/Rubberduck] Hosch250 pushed commit b0c4535a to codeExplorerBugs: Handle sink events better to prevent crashes
[Hosch250/Rubberduck] Hosch250 pushed commit 83f73c5e to codeExplorerBugs: Log start-up exceptions
[Hosch250/Rubberduck] Vogel612 pushed commit 9ec655e5 to codeExplorerBugs: Adjusted German .resx for RubberduckUI
Merge pull request #1949 from Vogel612/i18n_maintenance

Adjusted German .resx for RubberduckUI
[Hosch250/Rubberduck] web-flow pushed commit 8407fd5f to codeExplorerBugs: Merge branch 'next' into codeExplorerBugs
[Hosch250/Rubberduck] build for commit b0c4535a on codeExplorerBugs: AppVeyor build failed
BUILD FAILURE!
 
0
Q: VBA for Excel - how to optimize a code that searches values of range X in range Y

PikkI am using the following procedure: Sub Finder() Dim WhereToSearch As Range, WhatToSearch As Range, ValueFound As Range, ValueSearched As Range Set WhereToSearch = ActiveSheet.Range("K4:K6525") Set WhatToSearch = ActiveSheet.Range("J4:J6525") For Each ValueSearched In WhatToSearch Set Value...

 
Yeah, yeah, I know.
 
[rubberduck-vba/Rubberduck] build for commit 83f73c5e on unknown branch: AppVeyor build failed
BUILD FAILURE!
[Hosch250/Rubberduck] build for commit 83f73c5e on codeExplorerBugs: AppVeyor build failed
BUILD FAILURE!
[rubberduck-vba/Rubberduck] build for commit 8407fd5f on unknown branch: AppVeyor build failed
BUILD FAILURE!
[Hosch250/Rubberduck] build for commit 8407fd5f on codeExplorerBugs: AppVeyor build failed
BUILD FAILURE!
 
10:35 PM
lol
 
I changed where it assigned the project ID to the sink.
Wouldn't you guess--it doesn't work for the tests.
Because I can't pass the COM objects around without messing things up, for some reason, I had to change the way the project ID is assigned.
Now, when a project is added, it sets the project ID's for all projects without one, and adds all projects that either don't have one yet to the cache, along with any that are not already in the cache.
Just running the tests now.
Fixed!
 
[Hosch250/Rubberduck] Hosch250 pushed commit 41892a6e to codeExplorerBugs: Fix setting the project ID for the tests
[Hosch250/Rubberduck] Hosch250 pushed commit 726a1ba7 to codeExplorerBugs: Merge branch 'codeExplorerBugs' of github.com/Hosch250/Rubberduck
 
@Mat'sMug I'm sorry, but that took me all day.
On the other hand, I'm pretty sure I just killed several, very extensive, elusive bugs.
And the logs errors should keep me pretty busy next week.
 
[rubberduck-vba/Rubberduck] build for commit 726a1ba7 on unknown branch: AppVeyor build succeeded
[rubberduck-vba/Rubberduck] Hosch250 pushed commit b0c4535a to next: Handle sink events better to prevent crashes
[rubberduck-vba/Rubberduck] Hosch250 pushed commit 83f73c5e to next: Log start-up exceptions
[rubberduck-vba/Rubberduck] web-flow pushed commit 8407fd5f to next: Merge branch 'next' into codeExplorerBugs
[rubberduck-vba/Rubberduck] Hosch250 pushed commit 41892a6e to next: Fix setting the project ID for the tests
[rubberduck-vba/Rubberduck] Hosch250 pushed commit 726a1ba7 to next: Merge branch 'codeExplorerBugs' of github.com/Hosch250/Rubberduck
Merge pull request #1951 from Hosch250/codeExplorerBugs

Code explorer bugs
 
Does it pick up .xlam loaded after the initial parse? (that was a rather surprising issue earlier today)
 
10:46 PM
@Mat'sMug It should.
 
So week's work is release-worthy then :-)
 
@Mat'sMug IIRC, that bug was it wasn't picking up Excel addins in xlam files.
 
at all?
 
TBH, though, I haven't had time to check that.
 
dafuq
 
10:47 PM
When the main project didn't have any modules.
 
weird
 
I'm pretty sure it is the way we early-exit the parse.
 
likely
 
I have a bit of work there for next week.
That debug assert in the references resolver doesn't really matter for the release build because it resolves the references anyway.
However, it does mean we have a bug somewhere in the way we set the status.
 
[rubberduck-vba/Rubberduck] build for commit 4e274ef0 on next: AppVeyor build succeeded
[Hosch250/Rubberduck] build for commit 726a1ba7 on codeExplorerBugs: AppVeyor build succeeded
 
10:52 PM
10 more minutes until I have 40 hours for the week.
Uh, I don't have any release notes.
 
11:12 PM
[rubberduck-vba/Rubberduck] build for commit 4e274ef0 on next: AppVeyor build cancelled
BUILD FAILURE!
Merge pull request #1952 from rubberduck-vba/next

Release 2.0.4
[rubberduck-vba/Rubberduck] build for commit dbfb5cee on master: AppVeyor build succeeded
 
11:37 PM
[rubberduck-vba/Rubberduck] build for commit dbfb5cee on master: AppVeyor build succeeded
 

« first day (756 days earlier)      last day (2424 days later) »