« first day (2187 days earlier)      last day (993 days later) » 

12:01 AM
RELOAD!
[rubberduck-vba/Rubberduck] 1 opened issue. 1 closed issue. 11 issue comments.
[Minesweeper] Games Played: 154, Bombs Used: 83, Moves Performed: 17959, New Users: 26
 
 
2 hours later…
1:47 AM
Nobody make a move or Excel dies!
 
 
4 hours later…
6:08 AM
> An interface with only one implementation is a red flag.
The exception to that is with out of process dependencies that you can’t control. You use an interface to enable mocking.
That makes sense based on my current knowledge and where I’m at as a developer. I’m asking since I have a brain-tickle about seeing one class interfaces in RD.
Is mocking the sole reason for these single class-interface couples? Since they are both in process dependencies Would other more direct ways of testing the code be preferable?
 
6:56 AM
not necessarily, there's also things like circular dependencies that need to be adressed and general decoupling that can be done with interfaces
also consider different visibilities:
public interface IFoo {
   Bar Bar { get; set; }
}

internal class Foo : IFoo {
   Bar Bar { get; set; }
   public Baz Baz { get; set; }
}
^ in this situation Baz is only visible inside the same assembly
 
 
4 hours later…
10:29 AM
Yet another reason is to segregate the interface of a class serving multiple purposes, like RubberduckParserState, which is basically an in-memory db also reporting about its state and providing access to a cached snapshot, the DeclarationFinder.
Those all reside there because it is the place where the information is stored. The different interfaces like IDeclarationFinderProvider allow consumers to only depend on the corresponding part of the functionality.
 
11:22 AM
@BloggingDuck @MathieuGuindon I read through this just now and it almost made sense, and I haven't even had any coffee yet! I'll have to really chew on it to make sure I understand. I think I've even got a place or two where I can use this without a great stretch.
@IvenBach Back in my day, we called that "programming". Don't go trying to give it a fancy name.
GetOffMahLawn
^ such a valid point!!
 
11:54 AM
@FreeMan good stuff!
finally fixed the merging logic (I think), now grabbing the latest (next) examples, and it looks like this now:
(that's zoomed-out a bit)
 
suitable suitable
 
looks great
 
thanks! I'm just about to deploy it now (well I deployed something like 20 minutes ago, but, minor tweaks and all)
the inspections page now has tab navigation
 
The quick fixes box might get a bit large compared to the reasoning, though, when there are multiple quick fixes available.
 
12:00 PM
got one that comes to mind?
oh, sync attributes would have a few
 
And they all have the IgnoreOnce.
Well, nearly all.
 
actually it's not that bad, the card frame helps balance it out I think
 
nice
I am just refining the move (to) folder dialogs a bit.
I guess it would make sense to not allow empty intermediate folders as well, right?
 
like foo....bar?
 
Yes
 
12:07 PM
lol makes sense to not allow them indeed
 
I think they actually cause problems in the CE.
AFAIR, we have an issue stating that an empty folder makes the component vanish in the CE.
 
hm
hm, routing is borked... because there's a quickfix that has the same name as an inspection...
I need to re-think the routing
 
I really do not like that quick fix name.
 
me neither
 
It does not state what it does.
 
12:13 PM
^
 
We could actually change it since the quick fix names never enter user code.
So, this would not be a breaking change.
 
I'll leave the routing alone, and let's make a note to implement an analyzer that makes inspection, quickfixes (and annotations?) names clash if they're the same
 
Still, you might want to improve the routing nonetheless.
 
oh, ok
yeah
I'm not sure how to though
 
I mean, getting into problems because things out of different categories have the same names seems a bit brittle.
But you could very well say that it is good enough for now.
 
12:18 PM
thinking no quickfix should be named after an inspection anyway
so yeah
 
@MathieuGuindon are you using... IE??? SHAME SHAME SHAME!!!!!!
 
It's OK; the ducky gets to explode the internet.
 
12:40 PM
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=h1) Report
> Merging [#5497](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/3fb577017cc2d4411f856bbb8eb2dfc2d3570df7&el=desc) will **decrease** coverage by `0.11%`.
> The diff coverage is `53.22%`.


```diff
@@ Coverage Diff @@
## next #5497 +/- ##
==============================
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=h1) Report
> Merging [#5497](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/3fb577017cc2d4411f856bbb8eb2dfc2d3570df7&el=desc) will **decrease** coverage by `0.11%`.
> The diff coverage is `53.22%`.


```diff
@@ Coverage Diff @@
## next #5497 +/- ##
==============================
> While waiting for reviews, I took the liberty to add the third of the possible future follow ups to this PR, aligning the error handling in the rename and move (to) folder dialogs.

These now use the `TextBoxErrorStyle`, which means that they look the same but have error tool tips.
In addition, there is now a warning when move folder will merge folders, for the dialog and the drag and drop. The user can still proceed by confirming the dialog.
 
routing fixed :)
/Inspections/OptionExplicit -> /Features/FeatureItem/OptionExplicit?featureName=Inspections
ok, publishing
 
12:55 PM
[rubberduck-vba/Rubberduck] build for commit 9e68b4da on unknown branch: AppVeyor build succeeded
[rubberduck-vba/Rubberduck] build for commit 9e68b4da on unknown branch: 61.08% (target 0.00%)
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=h1) Report
> Merging [#5497](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/3fb577017cc2d4411f856bbb8eb2dfc2d3570df7&el=desc) will **decrease** coverage by `0.07%`.
> The diff coverage is `54.59%`.


```diff
@@ Coverage Diff @@
## next #5497 +/- ##
==============================
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=h1) Report
> Merging [#5497](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/3fb577017cc2d4411f856bbb8eb2dfc2d3570df7&el=desc) will **decrease** coverage by `0.07%`.
> The diff coverage is `54.59%`.


```diff
@@ Coverage Diff @@
## next #5497 +/- ##
==============================
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=h1) Report
> Merging [#5497](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/5497?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/3fb577017cc2d4411f856bbb8eb2dfc2d3570df7&el=desc) will **decrease** coverage by `0.07%`.
> The diff coverage is `54.59%`.


```diff
@@ Coverage Diff @@
## next #5497 +/- ##
==============================
 
1:31 PM
> Each inspection gets a dedicated page on the project's website, where the xmldoc content is being rendered. The website is still undergoing some renovations, but the bulk of it is there and the routing for the inspection pages (and quickfixes, and annotations) is already in place.

`https://rubberduckvba.com/features/inspections/{id}`, where `{id}` is the name of an inspection (minus the "inspection" suffix) routes to the corresponding `/features/featureitem` page.

Let's add a link to the
 
@Duga damn, no, routing isn't working
ugh
I broke the quickfix links on the inspection details pages :(
 
need unit tests on the web routing. ;-)
 
needs unit tests... period!
 
just curious - does it have dependency on System.Web?
 
yes
struggled getting that bit to work for a while
 
1:43 PM
AIUI, it kind of make unit testing hard
(unless they revamped System.Web in ways I am not aware)
 
1:57 PM
tbh I haven't looked at unit testing or even DI in the slightest
1. Make it work =)
So the routing works, it's just that the quickfix-named-after-an-inspection is just never making it into the db... it's an actual 404
 
Hm, if I remember correctly, the problem is actually the inspection name. It is MoveCloserToUsage, right?
 
ApplicationWorksheetFunction
 
OK, then the name of the quickfix should change.
 
MoveCloser isn't causing issues, ...because we don't have xmldocs for refactorings... yet
It's my fault really - I should have made the schema more robust than that
 
2:16 PM
argh.. loaded the annotations, and the details page is off
 
oh what a tangled web that has been weaved!
sorry, not helping
 
2:44 PM
unclosed tags caused by nested <p> because I'm stupid
 
Pretty sure it's the design of HTML that's stupid.
 
gosh, what a pain
ha, not nested <p> tags, just a malformed <table>
now seriously considers supporting markdown on the admin site rather than dealing with ^%#&@&@#% inline HTML
fixed
 
3:02 PM
@Duga I vote for using the "annoying URL"! :):)
 
I'm very, very happy with what the website looks like right now
someone come and shatter my joy with a devastating SEO report or something
fires up LightHouse
 
what makes an inspection "new"?
Use your eyeballs, Luke
Come to think of it, it could be misleading because it implies it's already available and for those on the stable (and doesn't want pre-releases) will go "where is it?"
 
3:19 PM
eh, I don't know how to make that any clearer
> This feature is currently only available in pre-release builds (or the xmldoc asset doesn’t yet exist on master!).
plus the tooltip
 
Coming soon
 
> This feature is available in Prerelease-v2.5.0.5457
 
or, just use Pre-Release instead of New for the tab
 
and then the 'New' tab
> These features will be announced as "new" when they are merged into the [master] branch. Until then, they are only available in pre-release builds.
but yeah to be consistent with the other tabs the tab title should be "Pre-Release"
ok, fixing that
I'm keeping "new" for the internal tab name though :)
 
@MathieuGuindon the bad news is: You're no longer able to say "I'm not a web guy"
 
3:27 PM
@mansellan IKR?!
 
but you can say "I pose as a web guy"!
 
btw the indenter page is, uh, ..well, let's call it "down" for now
 
@M.Doerner Thanks for the explanation.
 
3:43 PM
@MathieuGuindon //TODO: Make a language server, replace indenter page with full VBA editor using Monaco :-)
 
lol I'll be happy to make it work with AJAX for now :)
 
lol
 
With great difficulty. — jamheadart 18 mins ago
^ also LOL
 
I personally prefer Comet, though. Lemon scent makes it better.
 
Comet, it makes you vomit. So try some comet, and vomit todaaaaaaaay!
 
3:46 PM
(just in case they don't get the reference: Ajax)
@HackSlash "so I cometed today"
 
Yeah, this might be #JustAmericanThings
 
America: #1 exporter of memes and loanwords in the world. You know who to see if you want your language corrupted.
 
4:04 PM
@this how do you find the navbar links' contrast?
I'm getting docked on accessibility because of bootstrap's css!
 
You're referring to this:
right?
If yes, it seems to work well
 
^ no, this
hm, and pasting it here makes it pretty darn flagrant
 
it's weird doesn't look like that
but one thing is that there's no "selected" indication
on my end, the fonts are solid black. IDK why it's gray on yours.
 
they're black on hover
hm I should be setting the active one on page load
 
they all have the same color
 
4:09 PM
and gray, too - but thicker for some reason
 
FWIW: I'm on Brave.
 
and that's already better
cycles browsers ...aye that was IE
 
see what happen when you explode the internet....
 
 
2 hours later…
6:20 PM
 
6:36 PM
^ 1,085 stars. Not too shabby!
 
 
1 hour later…
8:00 PM
Turns out there's far more info on the internets for hacking VB6 than for VBA :-(
 
pretty sure from the internals pov they're same
 
8:20 PM
If only that were true... the very first in-memory structure (VBHeader) is different. Haven't got any lower yet, perhaps other structures will be more similar. The fact that the typelib API works on both unchanged gives me hope.
I'm hoping that VBA is at least a subset of VB6
 
9:06 PM
@mansellan, it's a subset of VB6 that was then updated to VBA7 .... So it has both less and more!
 
9:20 PM
@HackSlash lol yep!
 
10:06 PM
 
 
@this :cries: I somehow have to figure out how to make people stop using Excel as a DB. So much extra work because of it.
 
10:35 PM
@IvenBach What's to figure out? Break out the clue-by-four.
 
@IvenBach if you find a way to do this without physically harming the user, please let me know. I keep telling them to buy software but it's been 20 years and the Excel file is too advanced. It cannot be stopped. It's taking over the company from the inside. Send help.
 
Hmm... just me, or have MS properly broken the toolbar->customise function. In customise mode, in Office 2019, if you go anywhere near the menu bar, it stops responding.
 
@mansellan I just tried to get the Show VB Credits working in my VBE7.1 and it does not work
 
Yeah I think they borked it. Works in VB6.
And (by the sound of it) older Office installs. I think MS had a bonfire of Easter Eggs, something to do with compliance :-(
 
11:18 PM
LONG LIVE THE CUCUMBER
 
"A computer must not act in unexpected ways. OR ELSE!!!"
I remember the credits in Excel 97, that was pretty damn cool at the time.
 
@HackSlash but do you have Terabytes of excel files you sometimes have to sift through?
 
@IvenBach If you have TB of data in Excel, you're Doing It Wrong.
I mean, 1TB of data is like, 40 blu-rays...
Me to user: "What data do you have that is more interesting than 40 HD movies?"
 
11:54 PM
@IvenBach No. Our whole data set is only 2TB and it's not all Excel files. That said, I do have data that lives in discrete files for each unit. So I did build a scraper that pulls data from years worth of Excel files so we could perform CPCPK analysis on the historical data set.
 

« first day (2187 days earlier)      last day (993 days later) »