« first day (2054 days earlier)      last day (28 days later) » 
00:00 - 21:0021:00 - 23:00

12:00 AM
[Minesweeper] Games Played: 66, Bombs Used: 53, Moves Performed: 9232, New Users: 10
@this that's a separate thing - "sheet accessed using string" means to warn about a missed opportunity to use a sheet's CodeName; implicit ActiveSheet refs are flagged by another inspection
[rubberduck-vba/Rubberduck] 7 commits. 320 additions. 39 deletions. 1 issues closed. 17 issue comments
5 hours later…
5:16 AM
3 hours later…
8:10 AM
> `2020-01-20 08:03:27.5339;DEBUG-;Rubberduck.Common.LogLevelHelper;
Rubberduck version loading:
Operating System: Microsoft Windows NT 6.2.9200.0 x64
Host Product: Visual Basic x86
Host Version: 6.00.8176
Host Executable: VB6.EXE;
2020-01-20 08:03:27.6709;INFO-;Rubberduck.UI.Command.VersionCheckCommand;Executing version check...;
2020-01-20 08:04:09.6167;DEBUG-;Rubberduck.UI.Command.MenuItems.ParentMenus.ParentMenuItemBase;(28332581) Executin
8:41 AM
> ```
2020-01-20 08:03:27.5339;DEBUG-;Rubberduck.Common.LogLevelHelper;
Rubberduck version loading:
Operating System: Microsoft Windows NT 6.2.9200.0 x64
Host Product: Visual Basic x86
Host Version: 6.00.8176
Host Executable: VB6.EXE;
2020-01-20 08:03:27.6709;INFO-;Rubberduck.UI.Command.VersionCheckCommand;Executing version check...;
2020-01-20 08:04:09.6167;DEBUG-;Rubberduck.UI.Command.MenuItems.ParentMenus.ParentMenuItemBase;(28332581) Exec
9:23 AM
@Duga FWIW; this seems to have to happened before, a la this closed issue and this old Stack Overflow question.
1 hour later…
10:28 AM
> Thanks for posting the log based on the new prerelease. It seems we are missing an exception handler on the inspector; the exception is thrown when adjusting the caption of the refresh button when running inspections.

@mansellan Do I remember correctly, that VB6 uses the old office object model?

If that is the case, the root cause of this problem might be that the corresponding library is not there for some reason. Office 2010 already uses the new object model.
> Thanks for posting the log based on the new prerelease.

It seems we are missing an exception handler on the inspector; the exception is thrown when adjusting the caption of the refresh button when running inspections.

@mansellan Do I remember correctly, that VB6 uses the old office object model?

If that is the case, the root cause of this problem might be that the corresponding library is not there for some reason. Office 2010 already uses the new object model.
2 hours later…
12:26 PM
#TIL - Office object library can be added automatically by completing an enum. For long time I thought VBIDE was the only one that did that.
12:41 PM
@MathieuGuindon copy the image, save to desktop/"pictures" directory on local, click "upload" button --> browse to local image. Eliminates accidental issue submission on GH, hosts the image at SE's imgur instead of GH's... wherever GH hosts images.
^ (On posting images to chat)
@Feeds "Your unsubscribe request will be processed in 7-10 days." Very, very bad
@FreeMan not as bad as "Okay, we've subscribed you to 10 of our partner's newsletters that we think you'll really like!"
That way to post images will only work if you have sufficient rep on SE.
@M.Doerner even with explicit write access?
@this fair point
Apparently. Direct upload did not work for our new translator.
Also, there is no upload button on mobile.
ah. I was skimming the last 3 days or so of discussion - I didn't see that he'd tried and failed to do so that way.
That's what you get for posting on mobile! ;)
12:47 PM
You can just request the desktop site, though.
That does also depend on the mobile browser being able to support the desktop's javascript, too, I think.
It is a bit fugly on mobile, but it works OK.
Chrome does.
I think FF can handle it just fine, too.
Still, I have to admit that the restrictions on mobile in this chat are a lot less annoying than those on github.
Among others: no search and labels are broken.
Yeah, I've found GH to be mostly unusable on mobile browser.
It is OK to have a look at issues and PRs. But once you want to do anything else, you have to switch to the desktop version.
3 hours later…
3:35 PM
OMG overnight ETL succeeded all weekend, consistently completing in 3 hours! Success!!!
(Please don't call a piece of code / a sequence of statements a code - that's something else.) — greybeard yesterday
so much this. irks me every single time :)
@MathieuGuindon Congrats! Now you can keep those purple velvet suits flying out quickly as possible!
@BZngr I think my xaml tweaks were a wee bit excessive, I removed a number of Name attributes and only noticed the ElementName bindings later -- I'll have a PR tonight to fix it, including the datagrid for the encapsulated fields. Quite a bit of code will be vanishing though, hope you don't mind: making the ViewableEncapsulatedField inherit ViewModelBase and the interface extend INotifyPropertyChanged was the missing piece... apologies for not spotting that earlier in review :/
@MathieuGuindon be aware that my PR made some changes to the XAML as well. There weren't a lot but enough to conflict the other PR.
hm, how should we do this?
is your PR ready?
I do consider it done, yes - it's up for review.
3:50 PM
ok then let's merge it and I'll deal with the conflicts on my side
I think that'll be easier to find any boneheaded mistake I may have made with the changes, too. Keep in mind that visually, nothing should have had changed; all I intended to do is to consolidate everything into a meaningful style definition.
There were few minor changes, though - the most visible one would be the changing the lone AliceBlue used by "nothing to see" control to use the SoftBackgroundColor which is a shade lighter since I didn't feel like justifying a SoftBackground2Color
4:03 PM
In the next PR I'll need to figure how to make the theme (e.g. LightBlue.xaml) selectable at runtime.
4:16 PM
@this hm, if that's the AliceBlue background in the EncapsulateField control then it shouldn't have made it to Next -- was just me adding a bogus background to see what I was doing in the designer... and forgot to remove it
@this huh wait a sec, are you saying you got theming to work?????
can we hijack the painting of the properties toolwindow and turn white to some shade of gray?
So, the Ubuntu default settings are weird, but it is super flexible :)
I just figured out how to minimize the active app by clicking the dock icon.
@MathieuGuindon read mug, read. this wasn't about the EncapsulateField control background
@MathieuGuindon no, it's only used in only one place -- the "we don't see anything yet" element that's used on the code explorer.
@MathieuGuindon lol saw that too late.
in other news, there's a scheduled power outage tomorrow... which happens to be my work-from-home day. I'll have to shut down my garage server tonight.
@MathieuGuindon in theory, it'll work. I can't say there will be theming for the toolwindows itself but all WPF elements should be theme-able because in the PR, they all now use references.
4:30 PM
to make RD follow Windows theme, we'd just need to create a WindowsTheme.xaml and map all the defined elements to various SystemColors colors
Same principle for making a dark theme.
> @MDoerner yes, it uses the old object model, but IIUC it should redirect correctly when a newer Office is installed. I'll take a look after work.
and then it's pretty much CSS work
We do need to ensure that going forward, all XAML do not use any literals color code (hex or constants).
not quite CSS, but just as fun :)
4:31 PM
It's OK if they use a SystemColors as WPF lets us redefine a SystemColors, AIUI.
but it's not as OK to have White used both as a caption foreground color and as a background in different places... redefining White in that case would be.... confusing.
@Duga wondering if this is down to install order. installing modern office after VB6 might mean the commandbar redirects don't get applied correctly...
actually might be the other way around
very likely
not sure if there's anything we can do about that. sucks if the answer is "resinstall office and vb6" though...
it sucks, but Microsoft explicitly says non-chronological installs is an unsupported scenario and can break things. installing.md should mention something about installation order
gotta do some testing first, try and repro.
4:40 PM
basically the answer is "reinstall Office and VB6 in the correct order - that's VB6 first, Office last"
Yeah, it would take ages for them to test all possible install orders.
related: i wonder if 4192: VB6 RD doesn't launch without Office installed is because VB6 installs office 8 commandbars, but doesn't COM-register them properly...
We can take a page out of VBIDE's book
you know how when you reference a symbol from VBIDE or Office type library and it's not referenced, VBIDE will offer you to add it, right?
We can do something similar -- if the lookup via registry fails, we will perform the COM register (with user's approval)
One more consideration though - if VB6 is running as admin, it might be blind to the per-user COM registration
@Duga @mansellan added under "troubleshooting"
(feel free to edit my babbling :)
@this that would be the installer's job, right?
That is something different.
The registration could get lost at runtime anyway so it wouldn't be an install-time thing
so, "reinstall VB6/Office" remains the answer then
Clarify I was referring to the edge case where the Office 8 library exists but is not registered
A bit hard to see how that could possibly happen for VBA host since VBIDE host itself will take care of that. But with VB6, well, it's not that enthusiastic about housekeeping, it seems.
4:58 PM
I just saw someone specify Dim Lg% then used Lg = ... is "%" being treated like "As Long"?
no, that's &
% is something else.... Google up VBA type declaration character for a list.
% is double I think
I thought that was #; hence why google
RD knows, so I don't have to :)
5:04 PM
When in doubt, ask the ducky
@this that's longlong!
Interesting discussion: lwn.net/Articles/478361
Long story short, someone started a reimplementation/bundle of a bunch of Linux commands (Busybox, for the Linux-familiars here), and licensed it under GPL to try to encourage companies to try to force companies to actively contribute to the Linux ecosystem.
After actively going after companies with lawsuits for violations for several years, he realized all he was doing was pushing people away from Linux entirely instead of getting them to give to the ecosystem.
So now he's stopped managing that project and is implementing a competitor under a more permissive license.
He's said part of the reason for the effort is so companies can use his software and give back as they are able instead of being forced to either give or leave, and he's going to do whatever it takes to stop the lawsuits.
@MathieuGuindon I'm looking forward to seeing the changes and learning a a lot. I expected there would be a lot of changes (or vanishing code) in the view model and ViewableEncapsulatedField.
5:14 PM
was feeling kind of bad about removing so much code!
No worries! Solutions with less code are always a good/preferred thing.
well, as long one isn't paid by lines of code one writes...
Ahh - the consultant design pattern
5:33 PM
"I don't see the need for an error handler here, this is pretty straightforward" - proceeds to create a folder hierarchy. :facepalm:
@MathieuGuindon looks good to me
> This is almost certainly due to the order in which things were installed. Microsoft advises that side-by-side versions of Office must be installed in chronological order, as otherwise the COM redirects don't get applied correctly. The same thing has probably happened here - if VB6 was installed after Office, it won't have the Office 8 commandars redirecte
@Duga :-(
wondering - can one install 2010 after VB6 then do a VB6 repair?
or must they absolutely uninstall everything and start all over chronoogically?
5:36 PM
probably. I'd do a clean install though.
@this I would have thought that a Office 2010 repair would be more likely to work
as its installer should spot the old GUIDs
That's why I do VMs, not SxS.
It's a bit annoying considering that RD won't even work on VB6 installation without Office.
5:38 PM
Hope Windows gets native support for Docker soon :)
You won't need VMs then.
Would it work with old software?
that should be fixable, just need to spy on the registrations and like you say, copy them
I think VB6 would freak out in a Docker environment.
> To confirm though, I run VB6 and Office 2010, so can confirm that the combo works.
> You could possibly try a "Repair Installation" of Office 2010 though, it might find the old GUIDs.
5:39 PM
Probably, but it would help 10 years after the release :)
> You could possibly try a "Repair Installation" of Office 2010 first though, it might find the old GUIDs.
When you need to run a 10yo VS 20xx.
Not sure that'll work for say, VS 2005 or VS 2008 or even 2010. Probably need to be 202x or later. ;-)
That's what I mean.
If a native Docker support comes, you'd be able to use it going forward.
Especially since implementing native support would involve working with the registry.
what exactly does Docker do?
5:46 PM
It's basically like an isolated process that runs without a VM.
well I know that, but what does it actually do?
Make a copy of the environment?
or just redirect various things between the actual and simulated environment?
or what?
Mostly, it prevents it from accessing anything outside of its own environment. Like it can't access the filesystem, etc.
If it needs to, it creates its own temporary filesystem, or you can mount a portion of the filesystem for it to use.
I always imagined it works sort of like the UWP sandbox, with "simulated" access to FS and registry etc
So, if you have a DB, you would mount a portion of the filesystem for it to store things on.
what about the system DLLs?
5:48 PM
That it can access directly, from what I gather.
And you can enable/disable those as needed.
For example, the default Docker config has most of them disabled.
And you can lock it down so it can't even modify its own files.
hmm. sounds like a nightmare if you need to run an application that depends on bajillion numbers of system DLLs
So if you are running a webserver, the only place it could write is the logs, to make it harder for an attacker to do anything.
I guess on a Windows docker, they'd need to virtualize the registry in similar manner. That wouldn't be the hardest problem.
Correct. The commands would need to be the same, but the implementation details would be different.
I think the harder part is the case where you need a specific version of a system DLL that must be in specific location but you need the host OS to have the latest version.
5:51 PM
The Docker container can install the DLL it needs in the container.
At least to a certain extent.
Not sure where the line is drawn here.
6:23 PM
@MathieuGuindon You serve garages?
no, just a couple VMs, in the garage :)
Ah, for hood-top computing. Got it!
or boot-lid, if you're feeling British
hmmm... the garage might not be a bad place to keep the server. Might have to have a think about that....
@FreeMan esp if you live in a cold region. Servers like it colder than room temp.
But if it's going to get hot in garage and there's no AC, that would kill the hardware.
~59-64 F
but yeah summer can be tough
In Mat's case, he has potential to have a superconducting server. :-D
6:29 PM
Our garage would actually be perfect. It's an unheated tuckunder, so it stays about 50 degrees all winter.
That's one of my fun thought experiments -- could you actually construct a superconducting computer, and if you did, how would you connect it to the internet.
My hunch is that it'd have to be by wireless or something similar - running a warm wire into a superconducting computer seems.... messy, but I don't know what the ramifications actually are.
@Phrancis this is fine
(figures - wiki knows everything)
[rubberduck-vba/Rubberduck] retailcoder pushed 24 commits to next (only showing some of them below)
[rubberduck-vba/Rubberduck] bclothier pushed commit 3d79f04c to next: Convert all remaining traces of hex code literals into references.
[rubberduck-vba/Rubberduck] bclothier pushed commit 943dac94 to next: Update the toolbar brushes to use the same naming conventions
[rubberduck-vba/Rubberduck] bclothier pushed commit 69357784 to next: Consolidate the remaining brushes around the mouseover
[rubberduck-vba/Rubberduck] bclothier pushed commit b988333c to next: Make sure that style modification have BasedOn attribute and further consolidated styles that are re-used.
[rubberduck-vba/Rubberduck] bclothier pushed commit d34b879d to next: Fix up the BasedOn styles - apparently WPF doesn't like us re-using the same name as the BasedOn.
[rubberduck-vba/Rubberduck] bclothier pushed commit ffc7511e to next: Replace all dynamic references to static to just static and rearrange style to avoid raising errors due to defining it later in the XAML.
[rubberduck-vba/Rubberduck] bclothier pushed commit 7d09b047 to next: Partially revert the changes where SystemParameters are used; they cause exceptions at startup when statically referenced.
Merge branch 'next' of https://github.com/rubberduck-vba/Rubberduck into WPFReskin

# Conflicts:
# Rubberduck.Core/UI/Refactorings/EncapsulateField/EncapsulateFieldView.xaml

Manual editing was done to the XAML file to ensure that styling reference was preserved.
[rubberduck-vba/Rubberduck] bclothier pushed commit d84a12f1 to next: Revert the StaticResource reference for SystemColors; it causes settings dialog to not open consistently. Also, split all colors & brushes into its own file.
Merge pull request #5361 from bclothier/WPFReskin

Xaml resource cleanup
6:50 PM
@this Yeah... it's a balmy 25°F now, but it gets well into the 90s in the summer. I might have a hard time arguing for a dedicated A/C duct to the garage...
Well, you could always put it in an ice chest.
Cut out a side and fit in a small AC unit in the side. Voila!
@Phrancis That looks cool, but I'm not sure I even understand what's going on, LOL.
I was thinking of just dropping gently setting it in the freezer out there.
@Hosch250 I'm not sure Elliott does either
It looks like it's a function that takes an array of functions and an index and returns the result of the function at the index.
6:56 PM
(NB: I don't)
That'd work, too - not sure whether it can tolerate freezing temps OOB, though. You definitely wouldn't want moisture on it.
Which is a super roundabout way of doing this.
but if it's a fridge that has a icemaker, you probably could wire the wires through the icemaker hole
And then he does some bit-twiddling over an array of numbers.
No more ice making, tho.
6:57 PM
So anything under 21 turns into a 0 and anything over turns into a 1.
And then grabs the item out of his array at the 0 or 1 index.
@this giant zip-lock bag!
You'd definitely still have to seal the hole for the wires to run in/out
[rubberduck-vba/Rubberduck] build for commit 5cc81de7 on next: 0% of diff hit (target 60%)
@Hosch250 Oh. That's what it does. Oh gods. That's horribly funny.
7:00 PM
@Duga huh?
The really clever part is the bit twiddling.
@this I've got a tube of silicone!
The array part isn't too clever.
Honestly, that would be pretty funny. Maybe not practical, but funny.
@FreeMan you'll need to take care to not just run all wires via a big hole; otherwise moisture could seep in through between the wires.
7:03 PM
@Duga thanks codecov, there won't be any coverage here, this is xaml markup
but yes that would be great redneck solution to a cooling problem.
easy enough to ensure the caulk gets between the cabling.
Frankly, I was just gonna set up the server next to a big bowl of ice and put a big fan on the other side blowing towards it. :D
@MathieuGuindon so we need to tweak it to not report failure
looks like it's just the codecov check; AV completed and did generate the tag, so...
yeah but it's kind of confusing to have Duga shourt build failure when it didn't
if she shouted omg, your fat ass is showing!, no problem.
7:10 PM
how do we tell codecov target is 60% unless diff coverage is 0% in which case just let it slide?
@Vogel612 Do you do C# dev on Linux?
hm, or should we make it ignore .xaml diffs?
If so, what do you use? Do you have an IDE, or do you just use (something like) VS Code?
  # as requested by MDoerner, because they aren't really testable
  - Rubberduck.VBEEditor
  - Rubberduck.VBEditor.*
  # it makes no sense to track coverage on unit-tests
  - RubberduckTests
  # xaml files are not checked for coverage
  # AutoGenerated files are not contributing to coverage
  - **/*.Designer.cs
looks close
not sure what the **/ stands for
Path wildcard.
Basically means "any directory".
7:14 PM
why two *s though
so, **/*.xaml should be added?
No, because XAML files are already not checked for coverage, as the comment says.
I wonder if we need to also exclude the RD.VBAEditor.VBA and RD.VBAEditor.VB6, too.
Unless something changed.
@Hosch250 note the comment says it, but not the ignore instructions
The ignore instructions don't need to say it because they already aren't checked for coverage. In fact, I don't think they can be since they are compiled away.
7:16 PM
I'd probably add it for all XML files, not just XAML, TBH.
but I have no idea how codecov calculates the code coverage.
How would you check a XAML file for code coverage? There's nothing to check.
Wait, Hosch has to be right - you have to run unit tests
It can only check executable statements.
Yes I realized that too late.
so if a PR is all-xaml, diff is 0% and codecov fails
that's kind of dumb
7:17 PM
The ? wildcard character matches a single character.
The * wildcard character matches zero or more characters.
The ** wildcard character sequence matches a partial path.
One thing, though - why does codecov even show xaml changes?
The ** tells it to catch / characters too.
if it's blind to xaml, why tell us that xaml file was changed?
.yaml is bloody annoying, I want .ini back
@this That's just a diff tool.
It's an MSBuild thing, not a YAML thing.
7:19 PM
hm, OK. Feels silly considering that GH already has the diff, so I'm looking at codecov to see how coverage improved/didn't improve, not to see the diff.
@Hosch250 don't you love mushing together different "languages" together!
It's not a language, really :)
It's more like arguments to a commandline tool.
FWIW, that's pretty standard wildcard rules too.
Hence the quotes around the word language. I find it very annoying because there are cases where you might find yourself escaping it twice; one for the command itself, and other for the scripting
C'est la vie.
7:45 PM
@this lol
I'm pretty sure that if we ask really nice, she will. :)
@this so, having the inner join dbo.NormalizeSizes(@bucketsIssued) issued on f641.id = issued.SourceRowId isn't helping at all, because the returned table has no index. However... if I first select dbo.NormalizeSizes (the TVF) into a @table with a primary key constraint, ...it all completes within 5 seconds.
Yep, that's about right.
		declare @orderedBuckets table (
			 SourceRowId int not null
			,SizeIndex int not null
			,Units int not null
			,primary key (SourceRowId,SizeIndex) -- where the magic happens (50 minutes vs 5 seconds)
		insert into @orderedBuckets
		select * from dbo.NormalizeSizes(@bucketsOrdered, 6);
TVFs cannot have any statistics so joins will inevitably suck. @variable can have statistics but only for primary keys and unique, IIRC. #variable has the full enchilada.
had to adjust my function a bit, because the buckets are sometimes 4 chars wide in a 80-char column ....and other times 6 chars wide in a 120-char column :)
7:56 PM
But in your case, you just need the PK join, so @table suffiices.
I tend to heavily prefer @variable over #variable for some reason
Next step: call your vendor and tell them to get their db normalized or they'll be denormalized.
@MathieuGuindon I think it's a good default. I fall back to #variable only there's actually a reason to do it.
it's not a db... source is a legacy system maintained by ...my boss
oh, it's internal? I thought it was external.
Which begs the question - why even suffer the denormalized schema?
because the system is huge and won't handle normalization
I'm the only one suffering it actually
everyone else just consumes the queries I made off my normalized data store
7:59 PM
Why not call in Oracle, then? They'll help you a-plenty. :-p
lol, sure
(probably drive you out of business to boot. Mr. Ellison's yacht addiction is real.)
so, this is exciting... I'm finalizing that script now...
Anyway, I'm glad to hear that it's much faster now!
"faster" is like an euphemism.. that just got the overnight package down to 2 hours!
(from 3 ...and that was brought down to 3 ...from 7-8)
8:02 PM
would be even more fun to see if you can get the rest of package down to just seconds.
you could then get them do near-real-time reporting
slowly working my way through that monster ETL
Tangential - I liked Joe Celko's article about not doing procedural coding in SQL. I don't agree with all of his naming convention advices but I do agree with him RE: programming.
@this Good one.
@Hosch250 probably not advisable if it's your boss instead of a jerkass vendor who you have to work with.
That's why you hire a third-party armed with spiked 2x4s.
8:07 PM
In other news, I changed my alarm last Friday, and I forgot to change it back, so I have to work until 4:30 today instead of 3:30 :'(
the most expensive part is now "clustered index insert" ...I suppose that's good news?
into a permanent table, not a staging table, right?
into a @table
I've heard reports but never tried myself --- this requires a #table; insert into it without index then create index after the fact. Some claim it's faster that way but I have my doubts that's true.
Otherwise, I don't think you can get any faster unless you make it a memory-optimized table.
8:15 PM
eh, in any case, I'll take the 2 minutes over 50+ any time
^ You'll probably find more low hanging fruits somewhere else in the ETL
oops, forgot a left join
That'll push it back to 50+ min.
> “Nothing is more permanent than a ‘temporary patch’ in software”
Except a short-term government program
@Hosch250 nah, I have a bunch of left joins where I'd normally want an inner join, so that I can log source rows that break a number of data quality and integrity rules.
source system is a mess
8:18 PM
Just log the ID.
argh, PK violation. #AlmostThere
8:29 PM
MySQL Workbench has an awful UI.
@Hosch250 yes! whenever I need to query our MySQL server I just go through the linked server I set up in SSMS, with openquery
SSMS is the main thing I'm missing right now.
I'm kind of struggling to set up a DB system without it.
I can get into SQL Server through the terminal just fine.
But that's kind of just lacking something.
I also installed Postgre SQL, but I'm struggling to set up a server with that.
@MathieuGuindon really? That sounds worse than using workbench.
I uninstalled MySQL and SQL Server for now.
unless they really made workbench even more worse since I last used it
8:34 PM
@this just firing up workbench is a pita
if all I need is a select * from some table, I'll just go through openquery in SSMS
of course if there's someone still connecting to that server and I need to alter a view I'll fire up workbench
but workbench is really a last-resort thing
Ah I see what you mean. When I was writing the SQL book, I used DBBeaver so I wouldn't have to deal with running everyone's GUI client.
It wasn't that great but avoided the larger PITA of switching between 5 DBMSes' GUI clients.
@Hosch250 not terribly much, actually, but yea, I did some work
Any tips? I have VS Code working, but it just is kind of more overhead for kicking off all my microservices at once.
At least, ATM.
I could probably figure out how to script it.
Yeah, I just need to open the solution folder instead of the project folder.
I've used HeidiSQL at home and connected just fine to a mariaDB instance running in a Docker on my linux server. According to the download page, "Using Wine, it mostly runs fine on Linux and MacOS". :)
gah, query was including rows from 2011 ...cutting off the data at Fiscal 2014 (that's already more than what's actually needed) removes the bad data and fixes the PK violations. must be missing an index though, it's up to 3:30 and still processing
8:48 PM
It's no SSMS, but it's not bad
@Hosch250 ^
00:00 - 21:0021:00 - 23:00

« first day (2054 days earlier)      last day (28 days later) »