« first day (358 days earlier)      last day (2822 days later) » 
00:00 - 21:0021:00 - 00:00

12:01 AM
quack
 
I have absolutely no idea what happened, but I'm guessing I accidentally activated the French keyboard.
 
RELOAD!
[Cardshifter/Cardshifter] 34 commits. 11 opened issues. 11 closed issues. 27 issue comments.
2
[retailcoder/Rubberduck] 20 commits. 1 opened issue. 2 closed issues. 2 issue comments.
 
you switched between qwerty and azerty
 
[Vogel612/JavaBot] 1 commit.
 
Oh.
 
12:02 AM
[Zomis/Duga] 1 closed issue.
 
How in the world did I do that?
 
[Zomis/Duga] 6 commits.
 
ctrl + shift / shift + ctrl
 
@Hosch250 Alt + Shift ?
 
Oh, yeah, I think I did that.
There; I just did it qgqin:
 
12:03 AM
I use Azerty but windows defaults to Qwerty when it boots
stupid Windows
 
And switched back.
 
If I do that, I either switch to an English keyboard layout, or to ф глкфштшфт лунищфкв дфнщгеюююю
 
:o
 
I use QWERTY because my keyboard says QWERTY.
 
I've never used AVERTY, but I could see if be good for French where W is not used near as often as V. Although, interestingly, Q is used a lot more in French than in English
 
12:09 AM
There are a few Belgian keyboard layouts one of which is "Belgian (Period)" -- the one I use
it's helpful for french because certain accent characters have their own key (à, è, é, etc) and other characters like ç ^ etc
 
I can't type on AZERTY
fr-CA has French right :)
 
[retailcoder/Rubberduck] Hosch250 pushed commit 08e0efd0 to RefactorRefactorings: Removing params from signature works
 
I don't know what is what, so I use QWERTY.
I know the layout of QWERTY, and my keyboard says in case I don't, so...
 
Fr-CA is QWERTY
 
Oh, how do you get the special characters?
 
12:15 AM
Fr-FR is AZERTY
 
Just with about a dozen extra keys for non-English characters
 
My keyboard doesn't have those.
 
lol the only hard thing is typing curly and square braces (that's where the accented characters are)
 
My Windows are French:
 
@Hosch250 lol, mine is en-US; so is my phone...
 
12:28 AM
Mine is now.
I installed the French language pack months ago, and I've never removed it.
Apparently, it follows you across installations.
 
I just can't be bothered to re-learn all the Excel formulas in French
 
@Hosch250: you're French speaking?
 
@JeroenVannevel No.
Unfortunately not.
 
You just like a French UI?
 
I just turned it on to see what it looked like.
I turned it off again.
 
12:39 AM
[retailcoder/Rubberduck] Hosch250 pushed commit 1013b90a to RefactorRefactorings: The UI is fully working (AFAIK)
 
@Mat'sMug Should I push the Remove Params UI to Next?
NVM, one little issue.
Two little issues.
First, I haven't re-enabled the interface prompt.
Second, I haven't set up the line-out for the removed items.
And three, a bug.
Or rather, two of them.
 
lol I guess you rubberducked your answer ;-)
 
12:59 AM
2 down.
 
[retailcoder/Rubberduck] Hosch250 pushed commit cf9ae2e1 to RefactorRefactorings: Patches for a couple of the problems
 
What’s Up Duck? https://christopherjmcclellan.wordpress.com/2015/05/29/whats-up-duck
Always stuck somewhere in my head http://www.commitstrip.com/2015/05/29/always-stuck-somewhere-in-my-head/ http://t.co/2F7CT2qtM5
 
1:28 AM
[retailcoder/Rubberduck] Hosch250 pushed commit 8b9f17ad to RefactorRefactorings: Strikeout removed params
 
@Mat'sMug How about now?
 
when was this commented out?
    //void Refactor(QualifiedSelection selection);
    //void Refactor(Declaration target);
 
Oh, today.
 
....
 
I was sick of throwing new NotImplementedExceptions.
 
1:33 AM
did you refactor ExtractMethodRefactoring to intake the parameters in its constructor?
 
No, it still has them.
I can do that right now, though.
 
please
 
Will that break anything else?
 
nope
but the idea is to work against the IRefactoring interface
 
OK.
 
1:34 AM
I like that you standardized the interface
but then the dependencies need to go into constructors
 
You see, I had to have the data right away for the Remove and Reorder, or I would be duplicating all the setup in both the presenter and the refactoring, and I didn't want to do that.
I figured they could share the code.
I haven't done rename yet, and I'm not sure how to do that - just a copy/paste like Reorder?
 
you mean cut/paste ;-)
 
Nope, copy/paste/comment/delete.
Also, I don't like this:
 
lol.. as long as the end result is that the logic ends up in the IRefactoring implementation
 
        public void Refactor(QualifiedSelection selection)
        {
            var member = AcquireTarget(selection);
            if (member == null)
            {
                OnInvalidSelection();
                return;
            }

            using (var view = new ExtractMethodDialog())
            {
                var presenter = new ExtractMethodPresenter(_editor, view, member, selection, _declarations);
                presenter.Show();
            }
        }
Now you have the view tied in with the logic.
 
1:37 AM
true
 
The way I did it, the presenter calls the logic.
 
very good point actually
refactor at will :)
 
interface IRemoveParametersView : IDialogView
{
    RemoveParameterRefactoring RemoveParams { get; set; }
    void InitializeParameterGrid();
}
 
@Hosch250 shouldn't that be IRefactoring RemoveParams {get;set;}?
 
That is the interface for the view.
Oh, yeah.
@Mat'sMug But then that hides all the unique public members :(
 
1:45 AM
there shouldn't be any
 
But there are.
Unless I make IRefactoring monstrous and throw not implemented exceptions for half the items.
Wait, I might be able to genericize it without doing that.
Hold on, BBIAS>
 
if you're passing a QualifiedSelection into the constructor (and/or perhaps a Declaration in a constructor overload), then you shouldn't need any public members outside AcquireTarget(QualifiedSelection) and Refactor()
I don't see public members in the parameter refactorings outside the interface members
the extract method has other public members because I hadn't designed it as a fire-and-forget thing.. but I like the way you have it
 
The properties.
public List<Parameter> Parameters { get; set; }
public Declaration Target { get; set; }
public List<Parameter> Parameters = new List<Parameter>();
And, those Parameters aren't the same, either.
I need to rename them.
One has data for reordering, and the other data for removing.
 
that should be an implementation detail...
 
Not sure what you mean.
Oh, different constructors?
 
1:54 AM
I mean, the target should be passed into the constructor, and the parameters are a result of acquiring the target, and the client code doesn't care what the parameters are
basically what we want to accomplish here, is we new-up the refactoring, inject its dependencies (perhaps a factory will be in order), and call Refactor() and be done with it
 
In Remove, it is only public so the View can see it.
 
hmm
 
Same for Reorder - I am using this data to generate the display list.
Hang on, I'm going to refactor Reorder and get it out of the presenter.
 
the refactoring needs to be injected with an abstraction that represents the view, so we can inject it with a mock and run tests without being bothered with the view... no?
that data belongs on the view's interface
 
But if we drag the view into it, then it will be harder to call it as a quick fix.
 
2:01 AM
perhaps include a QuickFix(QualifiedSelection) method on the IRefactoring interface?
 
I got them all out except this:
        public void Show()
        {
            if (_view.ReorderParams.Target == null) { return; }

            if (_view.ReorderParams.Parameters.Count < 2)
            {
                var message = string.Format(RubberduckUI.ReorderPresenter_LessThanTwoParametersError, _view.ReorderParams.Target.IdentifierName);
                MessageBox.Show(message, RubberduckUI.ReorderParamsDialog_TitleText, MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            _view.InitializeParameterGrid();
 
....with a QuickFix(Declaration) overload..
 
That would work, once it is initialized.
In fact, that would be better than setting up multiple constructors, like I did for Remove.
But, I don't like that either, because most of them aren't quick fixes.
 
yet. you'd be surprised
 
OK.
 
2:03 AM
extract method will be a quickfix
remove parameter will be a quickfix
 
I don't like setting up methods just to throw not implemented exceptions.
 
rename will be a quickfix
why throw?
 
What else?
Do nothing?
 
.....implement?
 
I guess...
You threw in one of the Refactor methods.
 
2:05 AM
at worse, the implementation can simply call Refactor()
yes but we've already established that this design is flying out the window...
 
Yes.
 
not all quickfixes will bypass the UI - rename for example
actually...
 
[retailcoder/Rubberduck] Hosch250 pushed commit 0bd25d4c to RefactorRefactorings: Refactor Reorder
 
True.
 
why bypass the UI in any of them?
inspection quickfixes should just be able to call Refactor() and be done with it
 
2:07 AM
I have error/confirmation popups in the refactoring.
I don't know...
 
there shouldn't be any error popup if we're passing a parameter Declaration from the inspection results
but the confirmation popup can't hurt
you know, when one little click can affect dozens of procedure calls...
 
No, I throw in the constructor for invalid passes.
 
what I'm saying is that all code inspection results are garanteed to be valid selections
 
I know, and I throw when they aren't.
Probably don't need that, but...
 
doesn't hurt
 
2:11 AM
That's what I thought.
 
(unless client code doesn't catch it...)
 
Probably will be most helpful during debugging.
 
yeah
 
 
1 hour later…
3:34 AM
hey!
@RubberDuck I'm about to post on RD news
 
Hey Mug.
 
and I just had a great idea (I think)
 
Yeah? I've not had one of those in a while. Let me live vicariously.
 
> `RubberduckParser` is already logging parse errors in debug builds (logging is disabled in release builds). What would be nice, is if we would report parse exception details in a docked window that we could bring up and populate as the parser blows up, a bit like Visual Studio compile errors/warnings.

Let's implement a docked toolwindow that lets user navigate exactly where the parse errors are, and that can be exported to a text file, or into the clipboard.

This will be great for gramma
 
^^
 
@Mat'sMug Are you around for a Rubberducking session?
 
sort of
 
I was thinking about IRefactoring as I did the dishes, and I have an idea.
 
great
 
What I could do is move those List<Parameters> to the View and inject them into the refactoring.
 
3:49 AM
ok
 
The only issue there is some of this logic will be duplicated to the quick fix methods, unless we make a more generic method/class for it.
Also, if we do make a generic method/class, some of the refactorings could share that, given it was generic enough.
Sound good?
And if you don't mind, I'll push the Remove UI to next for now.
 
when you say "generic" I hear <T>
ok
 
Well, no, not like that.
More like GetDeclaration(QualifiedSelection, DeclarationType[])
And that kind of stuff.
 
that feels like a method that could belong to Declarations
 
Actually, it should.
I've essentially implemented it in Reorder and Remove.
Remove may be slightly different, but shouldn't be - checking now.
I used to have to be slightly different, but not any more.
Hmm, I have some dead code here - R#'erizing.
 
3:57 AM
[retailcoder/Rubberduck] Hosch250 pushed 11 commits to next
[retailcoder/Rubberduck] Hosch250 pushed commit 2ea272de to next: R#erize
 
4:08 AM
[retailcoder/Rubberduck] Hosch250 pushed commit c3eb9f9b to RefactorRefactorings: Fix problems, R#erize
[retailcoder/Rubberduck] Hosch250 pushed 1 commit to next
[retailcoder/Rubberduck] Hosch250 pushed commit 1c556461 to next: Merge branch 'RefactorRefactorings'
 
That should be good.
Now to get them IRefactorized.
 
2015 is being a PITA. Maybe I should have kept waiting a little longer.
 
@RubberDuck well that's good to know ;-)
 
Let me rephrase. I do not like the new NuGet package manager.
Restore seems to be broken and it's hard to tell what you have installed in which projects.
 
Then leave issues.
 
4:16 AM
And a crash...
 
I don't know about the VS team, but the Windows team has implemented pretty much everything I suggested for the 8.1 preview in 10.
 
> Windows 10? It was my idea
 
The four-window snap is similar to something I suggested, I like to think they got it from me :)
 
I've actually met one guy from the VS team on GitHub. Nice fella.
 
Bath time, BBL.
 
 
1 hour later…
5:24 AM
ugh. I still get the Excel crash
hmm maybe not
 
[retailcoder/Rubberduck] retailcoder pushed commit 17489550 to next: Implemented a quick-and-dirty parse error list, #568
[retailcoder/Rubberduck] retailcoder pushed commit 34934815 to next: ParseError resources
> Exporting to clipboard deferred to 2.0 - this is just a quick-and-dirty window, so that user gets minimum feedback when something is wrong with parsing the source code. errors are double-click navigatable.
 
5:55 AM
What happened to "release early, release often"? https://rubberduckvba.wordpress.com/2015/05/30/what-happened-to-release-early-release-often
 
6:09 AM
posted on May 30, 2015 by rubberduckvba

Since the project started, we’ve been releasing pretty much every 100 commits or so – actually more than that, given 13 releases in 1,003 commits. Our “next” branch stands at 1,375 commits at the time of this writing, and the next release will likely be well beyond the 1,400th commit. What’s up, duck? Quite a lot […]

 
 
4 hours later…
10:05 AM
Quack
@Mat'sMug @RubberDuck Where's the strings for me to translate?
Semper Cogitet?
 
10:30 AM
@SimonAndréForsberg I'm not real sure.
But I'd bet it's in the next branch.
 
I think I'd like a little more information about what to do before I do anything.
Such as if those TODO: markers also should be translated? I assume they shouldn't.
 
10:55 AM
I would say no. They could be, but they're part of the code and most code is in English. If someone wants to use their native language, they can set up their own.
*Part of the user's code.
 
@SimonAndréForsberg precisely! :-)
The file needs to be copied to RubberduckUI.sw.resx
(Assuming sw is the 2 letter code for Swedish)
@RubberDuck if that gets translated then we need localized test module templates... and we don't want that
 
I think sv is Swedish
 
yup, sv is Swedish
 
(Yes, I'm now lurking this room too)
 
I'm glad you are. Have you had any trouble with 2015 restoring Nuget packages?
 
11:04 AM
when is the Belgian translation coming, @JeroenVannevel? Oh wait, Belgian is not a language :)
 
I can't get some of the references in VBDiagnostics.Test to resolve, even thought Nuget says they're installed.
 
I actually did have a problem with NuGet packages a few days ago. For some reason, some program was holding on to a lock of one of the packages folder which stopped NuGet from functioning
Do you get any error messages?
 
No. I click restore, it "does something" and then the restore button comes right back.
 
Yeah, that's the behaviour I had
 
Weird thing is, I got them into the main project somehow.
Do you happen to recall how you fixed it?
 
11:07 AM
Try this: go to D:\Github\VSDiagnostics\VSDiagnostics\packages and remove all folders
Does one of them refuse to remove?
 
Nope. Just blew them all away.
 
and restoring them now doesn't work?
 
Nope.
I'm getting the same behavior.
 
Well the eventual solution for me was to reboot the PC since that removes handles
 
Then I'll be right back. It's about the only thing I haven't tried at this point.
 
11:12 AM
I do notice that the Test project relies on Roslyn RC3 nightly builds, though that doesn't cause a problem here
Uh oh. I smell a memory leak and the diagnostics don't seem to work anymore
 
Oh wait. There are some updates here...
 
11:27 AM
@RubberDuck: do you also automatically have the SDK templates?
 
I had to download the SDK. I just submitted a PR for the readme
 
Yeah, but the SDK and the SDK templates are separate downloads
but I don't know if they might be combined now
Though at second thought: the templates are probably not needed
 
I've gotta get it to build first anyway.
Maybe a fresh clone...
 
Still having issues?
I'll fire up my laptop and re-pull it
see if I have it too
Yeah.. I'm having it too
258 errors, right?
 
11:48 AM
Sounds right.
It's weird. Everything looks right. T
The assemblies are all where the csproj say they should be.
And Nuget says they're installed, because they are.
So, maybe this is a VS issue??
idk mate
 
I'll look into it after this bug and let you know when/if I fixed it
 
found it
but the installed packages are all rc2 something
 
50 mins ago, by Jeroen Vannevel
I do notice that the Test project relies on Roslyn RC3 nightly builds, though that doesn't cause a problem here
That was my thought as well
but it's strange that it works just fine on my desktop
Do I smell a breakthrough?
 
12:11 PM
Is it because I don't have the right package source configured?
 
Build works, Tests fail
Progress
No, the package source is probably correct
 
I think I need to add this to the package manager myget.org/gallery/roslyn-nightly
 
Scroll down the list of error messages
NuGet errors are at the very end
I removed the dependencies from the text files instead of through the UI
after that I tried to reinstall CodeAnalysis package, but it talked about already having a newer version of some dependency
so I uninstalled all dependencies
I then was able to install the RC-2 versions of all dependencies and it builds
Though now I have a TypeLoadException. Let me fix that
 
Sounds like you need yourself some AppVeyor or something. =)
 
what will that do?
 
12:16 PM
It's a Continuous Integration service.
You can use it to set up builds on their server. You can add a link to it from GitHub, so if your build ever fails, it goes red.
Also useful for testing pull requests.
I've been meaning to set us up, but our test coverage is so abysmal I'm not sure it makes sense.
I have a build, but there are still errors and warnings. Ping me when you get it fixed @JeroenVannevel.
 
12:36 PM
Good news: I fixed it
Bad news: I have no clue what fixed it
I removed all dependencies, installed RC2 dependencies, Added the Nightly build feed, Installed RC3-nightly dependencies and.. it works
@RubberDuck: can you test with this PR? github.com/Vannevelj/VSDiagnostics/pull/67
 
 
2 hours later…
2:51 PM
The commits to Cardshifter so far today:
Showing 1 changed file with 0 additions and 2 deletions.
Showing 25 changed files with 23 additions and 1,308 deletions.
Showing 12 changed files with 0 additions and 1,552 deletions.
Showing 2 changed files with 0 additions and 48 deletions.
Showing 9 changed files with 0 additions and 1,290 deletions.
Showing 18 changed files with 0 additions and 851 deletions.
Showing 2 changed files with 8 additions and 15 deletions.
Showing 17 changed files with 12 additions and 1,225 deletions.
 
 
1 hour later…
3:56 PM
Wow. Shrinking the code base! Nice!
 
I IRefactoring'ed Reorder Params.
 
[retailcoder/Rubberduck] Hosch250 pushed commit 682e4c1c to RefactorRefactorings: IRefactoring-ized Reorder Params
 
Darn, another bug from the TSR.
At least, from when I switched to it.
 
[retailcoder/Rubberduck] Hosch250 pushed commit 607e91ee to RefactorRefactorings: R#erize and fix bug
 
Remove Params next.
 
4:32 PM
[retailcoder/Rubberduck] Hosch250 pushed commit e6bc33ec to RefactorRefactorings: Remove non-existent parameter error box
 
5:27 PM
[retailcoder/Rubberduck] Hosch250 pushed commit 740eec5c to RefactorRefactorings: IRefactorize Remove Params
 
There is a really peculiar bug in here.
When you remove all parameters from the method, it removes the first letter of the method too.
I have an idea of where it might be happening, but not positive.
Yup, I was right.
 
[retailcoder/Rubberduck] Hosch250 pushed 5 commits to next
[retailcoder/Rubberduck] Hosch250 pushed commit b83fa4d2 to next: Merge IRefactorized Remove Params to Next
 
5:51 PM
[retailcoder/Rubberduck] Hosch250 pushed commit 3f7d42cd to next: Localize button and tooltip text in Code Inspections Window
> I believe I finished the Code Inspections Window. All the other windows still have to be finished. Remember to localize the tooltip text too.
 
6:13 PM
@Rossco I just read this, and it was really, really cool.
I actually studied this type of stuff last fall in college.
 
6:43 PM
[retailcoder/Rubberduck] Hosch250 pushed commit a8e5a1f7 to next: Localize Code Explorer window
> Code Explorer window done.
 
@Mat'sMug When you are around again, I've localized the code explorer window and code inspections window, just so you know. The strings are in RubberduckUI.resx, so you will have to somehow compare the two .resx's and add the French strings, but they aren't hard coded anymore.
Also, I IRefactorized Reorder Params and Remove Params.
I might not be around too much later - my mom volunteered for my family to help a friend stuff envelopes, and I'm not sure if they are going to impose "mandatory volunteerism" on me.
Taking puppy on a walk, BBL.
 
 
1 hour later…
7:51 PM
[retailcoder/Rubberduck] Hosch250 pushed commit 5ada43e9 to next: Localize Todo Explorer
 
This got rid of the spaceless titles "LineNumber" too, and made it "Line Number"
 
Additionally, @Mat'sMug, you will need to change all the "remove parameter"s to "remove parameters"
 
8:19 PM
Whoops, I need to fix the last three.
I'm almost done with the Test Explorer.
 
8:36 PM
[retailcoder/Rubberduck] Hosch250 pushed commit 23da9d1e to next: Localize Test Explorer
> Test explorer done.
[retailcoder/Rubberduck] Hosch250 pushed commit 45c239bf to next: Fix Code Explorer localizations
[retailcoder/Rubberduck] Hosch250 pushed commit cf17fb48 to next: Fix code inspections window/toolbar
> Just settings dialog and source control left, AFAIK. Will finish later, have a headache.
 
00:00 - 21:0021:00 - 00:00

« first day (358 days earlier)      last day (2822 days later) »