I am new to Excel VBA and Rubberduck so please tell me what I need to provide to help with this issue. I am on latest Rubberduck 2.0.13.32288
I have several user forms that get exported as .frm files. It is all checked in fine, repo is clean and up to date. When I open existing repository RD removes all the user forms and throws Unknown exception when re-importing them, telling me "Document-type component UserForm does not exist. Cannot import code from repository".
If I try to manually import the file I get Out Of Memory errors. For a while I was able to open a copy of the workbook and drag the forms between projects and it would be ok until I closed Excel but now I cannot do that as I get some Network error.
Rubberduck has become entirely unusable because of the problem with .frm files. Please let me know what other information I can provide as I cannot copy and paste nor can I seem to embed a Google Photo link. Thanks.
Rubberduck has become entirely unusable
To be fair, it's only source control acting up... as stated in the 2.0.13 release notes, under "known issues".
As usual, I suffer for weeks before speaking up then twenty minutes later I figure something out.
.frx binary files were deleted somehow and also in my .gitignore. I update .gitignore, regenerate .frx file by manually exporting all the forms and add to repo. I still get the error but at least I can re-import now. A hassle but not fatal though an annoyance since every time I do this I get an extra newline at the top of every form module making the repo changed. I can manually delete this newline and get back to clean. So Rubberduck is usable again.
I also figured out how to turn on logging.
2017-07-13 17:40:22.1056;INFO-2.0.13.32288;Rubberduck.App;Rubberduck version 2.0.13.32288 loading:
Operating System: Microsoft Windows NT 6.1.7601 Service Pack 1 x64
Host Product: Microsoft Office 2013 x86
Host Version: 15.0.4937.1000
Host Executable: EXCEL.EXE;
2017-07-13 17:40:22.5176;INFO-2.0.13.32288;DynamicInjector57340bcbcc9f4210bf9d7da96d69862a;Executing version check.;
2017-07-13 17:41:35.3586;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.SourceControlViewViewModel;Opening existing repo;
2017-07-13 17:41:35.3786;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.SourceControlViewViewModel;Provider changed;
2017-07-13 17:41:35.4096;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.ChangesViewViewModel;Refreshing view;
2017-07-13 17:41:35.6486;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.BranchesViewViewModel;Provider changed;
2017-07-13 17:41:35.6486;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.BranchesViewViewModel;Refreshing view;
2017-07-13 17:41:35.7216;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.SourceControlViewViewModel;Displaying Error with title 'Unknown exception.' and message 'Document-type component AboutForm does not exist. Cannot import code from repository.
Document-type component RemoveSheetsForm does not exist. Cannot import code from repository.
Document-type component RunMapForm does not exist. Cannot import code from repository.
Document-type component RunMapHelpForm does not exist. Cannot import code from repository.
Document-type component AboutForm does not exist. Cannot import code from repository.
Document-type component RemoveSheetsForm does not exist. Cannot import code from repository.
Document-type component RunMapForm does not exist. Cannot import code from repository.
Document-type component RunMapHelpForm does not exist. Cannot import code from repository.';
2017-07-13 17:41:35.7216;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.UnsyncedCommitsViewViewModel;Provider changed;
2017-07-13 17:41:35.7216;TRACE-2.0.13.32288;Rubberduck.UI.SourceControl.UnsyncedCommitsViewViewModel;Refreshing view;
2017-07-13 17:41:46.1046;DEBUG-2.0.13.32288;Rubberduck.UI.Command.MenuItems.ParentMenus.ParentMenuItemBase;(57408296) Executing click handler for menu item 'S&ettings', hash code 52617682;
The Source Control feature should be disabled until it finds a new owner.
@fastzombies sorry, that came across a bit harsh... what's frustrating is to have released a broken feature... what @rubberduck203 said.
If the Source Control feature is disabled then I guess that means git integration is gone, correct? That is the only feature I use.
Like I said, I am new to VBA and RD. Doing my best to figure this out and be smart about it and not generate noise. I really appreciate RD, it puts me ahead of the other VBAers in my org who don't use source control at all.
All the other functionality will help you working with VBA. Please don't suffer in silence, if there's something that's not working let us know. We're constantly trying to make RD better and the only way we can do that is by others letting us know if something's not working.
I'm so sorry for being short. A little history...
I originally wrote the Git integration as a proof of concept with the intent of flushing out the bugs and kinks within a few releases. Shortly after that I took a new job where a) I had to commute, lessening the amount of free time I had to contribute to this project and b) I no longer used VBA at work. I no longer had a personal need for the feature (or the project really) nor the time to finish the feature. This resulted in my half baked feature never quite working right.
This leads me to be of the opinion that the feature should be disabled until someone is willing and able to "take up my mantle", fix my broken ass code, and take stewardship of the feature. The current maintainer and team already have their hands full with the refactoring tools, I don't think it's fair for them to have to worry about a feature that I introduced and never finished properly.
That said, I think it's a completely awesome feature for the project to have. It should just be disabled in release builds until someone steps up to own it and make it work.
@contributors what do you think of disabling the Git integration? How hard would it be to toggle it off by default? At least until someone can make it work. SC by far causes users and the team the most grief.
I'm still new in this pond, but... I'm going to make an assumption that if SC is still in the state that it currently is in, that means that nobody else has yet found it worth the effort to work on improving it.
I volunteer to take ownership of it. However, I just can't make any promises as to how or when it will be in a stable state. Time and skill are both a precious resource, after all.
I vote for disabling it from the release version but under the following circumstances:
1) only after implementing a stable "Export All" feature
2) leaving it enabled in the next branch.
@rubberduck203 I removed extract method reluctantly, but it was for the Greater Good, and it shall return. I feel lile putting both SC and that refactoring in some "Experimental" tab in the settings dialog, with a clear warning that enabling these features could mess up your code or break down or blow up, or they're clumsy proof-of-concept features... hmm...
@shadowofsilicon I would simply create a setting that enables/disabled it with a default of "off". AND a big red "experimental" next to the button that turns it on.
Actually, implementing that would be a great start to getting familiar with the feature. I'll try to make myself as available as possible. If you email the project's contact email, I'll respond with my email address so you can contact me directly. I don't always check every notification on this repository anymore.
Thank you for volunteering.
Awesome, I could not do any of this. I also have zero time, so much doesn't get done.
I am getting the hang of RD SC and its quirks such that the benefits outweigh the annoyances so I vote for remaining available via an "Experimental" tab.
If I can submit some user feedback: I would be happy with export and import controls which is where I think the value of the SC really is. I am fine running my git operations in the git-bash window and don't necessarily need additional forms for that. Git comes with GUIs if I want GUIs. Github comes with a Desktop if I want Github integration so maybe don't spend time on git. The biggest losses I have experienced is trying to checkout branches. The most common is when the SC decides what and when to export/import for me and the repo and Excel get out of sync, especially if I forgot to save Excel first. Make export and import reliable and easy, especially with .frm files, and leave git to git.
Much appreciation to all the contributors.
I think this might be relevant to the topic of code export: Way before finding out about RD, I started using a tool named vbaDeveloper to export my projects. (As we are using our own SVN server in my company and the code is owned by our customer I can't simply put it on github.)
I adjusted vbaDeveloper a bit to fit my needs better, but for quickly exporting all code from your project it works like a charm.
But, to conclude, I'd certainly use a similar feature in RD, would it happen to get one. :+1:
PR #3129 should have fixed the part about user forms disappearing. Closing this issue as resolved... Let's open a fresh new issue if the other problem still shows up.
Most helpful comment
If the Source Control feature is disabled then I guess that means git integration is gone, correct? That is the only feature I use.
Like I said, I am new to VBA and RD. Doing my best to figure this out and be smart about it and not generate noise. I really appreciate RD, it puts me ahead of the other VBAers in my org who don't use source control at all.