Jump to content

Jebretary - Automatic Version Control (backups) for craft and saves [v0.4.0]


Recommended Posts

I've just released version 0.3.1 which add the new feature of tracking subassemblies. Works a bit differently to how craft are tracked, rather than waiting for a launch, subassemblies get a new version each time they are changed. Click on "Subassemblies" between the icon for the VAB and SPH lists and a panel will appear that lists your subassemblies. Click on a subassembly to see its history and revert it to a previous version. I've not implemented part tracking for subs for now, should I?

I've also made it so that launching Jebretary will also open up a new tab in your browser and load the interface.

There are also several changes to make things happen faster and more complete error reporting. Now if there is an error Jebretary will display a message which will ask you if you would be so kind as to submit its error.log file to me (via mediafire) so I can fix the issue. The message explains how to do that.

I've also added more details to the User Manual in the OP.

To update download 0.3.1 from the OP, completely wipe your current installation and re-install.

Edited by katateochi
Link to comment
Share on other sites

I've had a few error logs uploaded to me in the last couple days, thanks!

I've been working on fixes for those errors, most of them where caused by having .cfg files which are either in the root of the GameData folder, or in the saves folders. That should be sorted in this update (0.3.2)

Download 0.3.2 here

There where a couple error logs that I think where caused by not having git installed. If you look in the error log and see "Jebretary/src/app/models/repo.rb" mentioned in the error, in most cases I think that's cos you don't have git installed. I need to do more tests with that and then make a message to inform you that you need to install git.

Link to comment
Share on other sites

I was also encountering that mod crashing in the previous version (0.2.4 I think?) from mod parts, but now I haven't encountered any! (apart from some error messages on start up that doesn't seem to affect function)

I originally downloaded Jebretary for the mod part list and checker, and it is invaluable for finding the common link between a few craft files that wouldn't load when I thought I had all the parts. Not only that, but being able to go back to a previous save or quicksave is a lifesaver! I haven't yet had the need to revert to a previous craft save, but I feel assured knowing I can do that.

Thanks Katateochi!

Edited by Read have Read
Link to comment
Share on other sites

I was also encountering that mod crashing in the previous version (0.2.4 I think?) from mod parts, but now I haven't encountered any! (apart from some error messages on start up that doesn't seem to affect function)

I originally downloaded Jebretary for the mod part list and checker, and it is invaluable for finding the common link between a few craft files that wouldn't load when I thought I had all the parts. Not only that, but being able to go back to a previous save or quicksave is a lifesaver! I haven't yet had the need to revert to a previous craft save, but I feel assured knowing I can do that.

Thanks Katateochi!

you're welcome! glad its working for you now. The part/mod detection bit was trickier than I had expected! but I think most of the kinks have been ironed out now.

I got your error log. Did you delete one of your installs from Jebretary? It seems to be looking for a reference to an install (instance) that's not there any more.

Has that error gone away now or is it still popping up?

I heard about this yesterday! It seems like we've approached the same idea from very different angles; we've served up the main course with totally different starters and desserts (actually I think we're in completely different restaurants)!

Link to comment
Share on other sites

@Korb Biakustra; If liquid.exe is crashing then that is why your saves are not being tracked. Infact no changes (craft or save) will be being tracked without liquid. liquid.exe does all the tracking and automatic incrementing of versions, oxidizer.exe runs the web server that provides the interface.

Can you watch what happens in liquid for me and tell me what it says. It will say !!monitor error!! and then directly after that it should say an error. When it has had 5 errors in a row it will close.

If you could tell me what the error message after !!monitor error!! is I will track down what the problem is.

I'm guessing that it is to do with reading the parts of your installed mods or when reading the craft files part data. I notice that some of your craft have not had their parts identified as they are not coloured in the list so I'm guessing its hitting a particular part that it can't read and failing. If that's the case there should also be an error.log file in the root of Jebretary. can you upload that error log here, when it asks for a description just put your forum name so I know who its from.

Sorry for my super-extra-late reply Katateochi, I've been away and then forgot about your request.

The problem was actually about git if I remember correctly. The error stated something like "OMG there is no git!", which was not true by the way (Jebretary used to work a few days ago). I updated Jebretary yesterday and it seems to have fixed the issue! Thanks for the automatic tab opening by the way.

Two questions/ideas/requests:

1. Is it possible to minimize the two terminals to system tray to avoid overcrowding the task bar?

2. My most wanted one, though a tad bit off the main Jebretary purpose (but not entirely off-topic either): is it possible to synchronize screenshots? If so, what would be absolutely fantastic would be to (i) upload them with their default unique filename (default KSP behavior) into subfolders (inside the corresponding campaign's section) named based on the last .craft file synchronized (i.e., the currently active ship, which means current mission); (ii) provide a way to browse (and delete) them as thumbnails when clicking on the corresponding subfolder in the Jebretary interface; (iii) provide a way to export the URL for mission reports on forums or Reddit. For (iii), I suppose BBCODE and Markdown export templates could be taken from the several FOSS applications used to automate Imgur (or similar) uploads?

Git quota is about 1 GB if I remember correctly, and individual screenshot size is quite acceptable in KSP. 1 GB should be plenty enough in most cases, but anyway a special key (not F1) could be used for triggering the "cloud screenshot" feature when the player does not want to upload everything.

Point 2 is not about the save files or crafts, but definitely about keeping track of what is done inside each campaign, plus it would provide a way to actually see what a synchronized .craft file is about, which can be very handy when you start to have many crafts!

Do that, and I will not only marry you Katateochi, but I will also bring cookies at our wedding.

Edited by Korb Biakustra
Link to comment
Share on other sites

you're welcome! glad its working for you now. The part/mod detection bit was trickier than I had expected! but I think most of the kinks have been ironed out now.

I got your error log. Did you delete one of your installs from Jebretary? It seems to be looking for a reference to an install (instance) that's not there any more.

Has that error gone away now or is it still popping up?

Ah, I might have initially pointed it at the wrong install, but it has gone away since then.

On another note, I start KSP through a shortcut so I can have fullscreen window in a custom resolution, I don't think Jebetary currently allows for shortcuts or custom parameters on start up, but I was wondering if it was in your plans.

Link to comment
Share on other sites

Oxidizer seems to crash every time I try to start it - even before Liquid displayed "Initializing", and it isn't producing anything in the error file. I already re-installed it with improvement for a few hours only.

Edited by Read have Read
Link to comment
Share on other sites

Sorry for slow reply guys, I've been away a lot recently.

Oxidizer seems to crash every time I try to start it - even before Liquid displayed "Initializing", and it isn't producing anything in the error file. I already re-installed it with improvement for a few hours only.

So after a while oxidizer just crashes but liquid carries on running? And you've done a completely clean install (ie wiped everything that was there before)?

I'm really not sure what would be causing that. Can you see any text in the oxidizer terminal before it crashes?

You could try to wipe the git repo's in your KSP installs (but that will loose your history). go into each campaign that you've tracked, make sure you can see hidden files and delete the hidden .git folder and the .gitignore file.

Ah, I might have initially pointed it at the wrong install, but it has gone away since then.

On another note, I start KSP through a shortcut so I can have fullscreen window in a custom resolution, I don't think Jebetary currently allows for shortcuts or custom parameters on start up, but I was wondering if it was in your plans.

I'd not thought about doing that, but that's a good idea. I will add that.

snip

Two questions/ideas/requests:

1. Is it possible to minimize the two terminals to system tray to avoid overcrowding the task bar?

2. My most wanted one, though a tad bit off the main Jebretary purpose (but not entirely off-topic either): is it possible to synchronize screenshots? ...snip*

Yes I will make the terminals minimize to the win notification area. Just atm it helps with debugging to see them, but I will do that soon.

Re the screen shot idea. What your suggesting is a bit more complex than what I'd been thinking. I'd been toying with the idea of auto associating craft with screen shots, not actually moving the screen shots, just allowing each craft to track which screen shots where its pics. Its tricky to auto associate because you can switch craft. I've got more craft specific features I want to add first, but I've got plans to do something along these lines.

Link to comment
Share on other sites

can this be used to track mods?

It can tell you what mods a particular craft uses, but it doesn't actually put mods into version control. I may do that at a later stage if I can think of a way to do it without wasting a lot of HD space.

Link to comment
Share on other sites

Cool... but my browser says it malware and refuses to download it...

Along the lines: "jebretary_setup_v0.3.2 is harmful and was blocked by Chrome" (a rough translation of my localized error message)

edit: any idea how to recover a already corrupted craft file? Again I have spend several hours to make a craft and I don't want to got it to waste again (though its not the bug I usually run into ... this time parts just have disappeared while loading [still in the file as seems] in vab and on pad.... [launch try] I can see the whole space center ... )

Edited by Bizz Keryear
Link to comment
Share on other sites

Cool... but my browser says it malware and refuses to download it...

Along the lines: "jebretary_setup_v0.3.2 is harmful and was blocked by Chrome" (a rough translation of my localized error message)

edit: any idea how to recover a already corrupted craft file? Again I have spend several hours to make a craft and I don't want to got it to waste again (though its not the bug I usually run into ... this time parts just have disappeared while loading [still in the file as seems] in vab and on pad.... [launch try] I can see the whole space center ... )

I've uploaded a zipped version for you. Just unpack the zip and run the installer (and don't forget you need to install the git version control software too (see OP for DL link and install instructions).

Re your corrupted craft, it depends how badly the craft is broken and also how complex the craft is. tbh editing craft files is quite tricky. That's why I built this cos I'd rather spend time building a preventative solution than try to unpick a broken craft files! (so far my efforts at fixing craft files have not been very successful!) Problems like this are exactly what this tool can protect you from, but you need to have been using it before the problem cropped up.

There is one thing I can suggest, if you're using windows. Right click on the file and goto properties, there should be a tab called previous versions (if that option is enabled). If it is there it should give you some previous versions. From there you should be able to revert the file to how it was the day before. Hope that helps, good luck.

Link to comment
Share on other sites

I've uploaded a zipped version for you. Just unpack the zip and run the installer (and don't forget you need to install the git version control software too (see OP for DL link and install instructions).

Re your corrupted craft, it depends how badly the craft is broken and also how complex the craft is. tbh editing craft files is quite tricky. That's why I built this cos I'd rather spend time building a preventative solution than try to unpick a broken craft files! (so far my efforts at fixing craft files have not been very successful!) Problems like this are exactly what this tool can protect you from, but you need to have been using it before the problem cropped up.

There is one thing I can suggest, if you're using windows. Right click on the file and goto properties, there should be a tab called previous versions (if that option is enabled). If it is there it should give you some previous versions. From there you should be able to revert the file to how it was the day before. Hope that helps, good luck.

Ah! Thanks... well I have github on my system since a long time (not used very often, though. it might help if I learn something else than python) .. since it was working till the very last step I assumed it might be a problem with a mod mixed part (I made myself ... basically the fairing base from KWRocketry got all the features of the latest procedural fairings...) after deleting all traces of the fairings it worked again...(I was able to leave the base in...) then I replaced the base with a working part...

P.S.: It's already on low polar Kerbol orbit ... sidenote: Ion engines still take a hideous long time.

P.P.S.: It's depending on my laziness*, but I basically thought about to write a craft file fixer / modder.

Features I thought of:

Error checking:

  1. Duplicate error checking**
  2. Tree error checking
  3. Plausibility check
  4. Part available check (aka. mod not installed error)

Display the craft in 2D tree structure with icons for the parts. Displaying (fixed?) errors, too.

Modification:

  1. Replacing one part with another (adjusting height if needed***... its just for the case I ran into ... that a part in the craft, for what reason ever, is acting up)
  2. Deleting one part(s) from the craft (adjusting hei... same as above)

That should be doable in a few hundred lines (less than 400 ... Well, I am not so fond of UI programming and tend to avoid it if possible). I might have to fiddle around with the error correction, though...

If I have it that far, I might add in same functionality for crafts in flight (in save files), later ... a missing part / removed part is still better than a missing craft...

edit: you might want add the zip to your initial post, too (I think there are just a few more Chrome users out there)

-----------------------------------------------------------------------------------

*= I have made an empty file till now...One of my motto is "Work smart, not hard...definitely avoid hard work...better avoid all kinds of work"

**= Happens some times if you create a part and use symmetry on it, then reattach it using symmetry ... used it quite often is asparagus back before 0.23 (started to use the reinforce mod then) in which I made a part of the asparagus ready added a lot of space tape ... not only between the part and the main rocket but also between each and every tank ... I often used 3 or 4 times symmetry for that. Then plugged it of and reattached it with 6 or 8 times symmetry ... in 3 of 10 cases I ended up with parts duplicated... in VAB they are in same place visible through a wired texture glitch ... on launchpad they appear in wired place some tilt 90° some floating above the rocket ... and all engines going before the 1 staging ... resulting in a spontaneous rapid disassembling as soon as physics kicks in...

***= height only though I don't want mess with the 3d files ... it basically only reads the nodes positions... might result in floating parts ... better than a hole in the rocket, though

Edited by Bizz Keryear
Link to comment
Share on other sites

  • 2 weeks later...

It took me a few hours to figure out why I couldn't find the various versions of the rockets I'd been making. Turns out it seems to not be working at all. Here's the contents of my Jebretary\error.log:

edited out

I minimised KSP, and noticed that liquid.exe is crashing shortly after starting. It's a shame, this seems like a really cool tool. I was hoping to capture all my craft from the start of my new career.

Edit: OK, I figured out the error log uploading thing you had set up. At first I didn't realise there were two links in the error message that opens in my browser. Perhaps make these links a different colour? I've also been back and taken the spaces out of the path to KSP and Jebretary. No change.

Edit2: I tried uninstalling and installing 0.3.1, but that version is completely broken. I can't even get my campaign open with that version.

Edited by Snoman314
Link to comment
Share on other sites

It took me a few hours to figure out why I couldn't find the various versions of the rockets I'd been making. Turns out it seems to not be working at all. Here's the contents of my Jebretary\error.log:

edited out

I minimised KSP, and noticed that liquid.exe is crashing shortly after starting. It's a shame, this seems like a really cool tool. I was hoping to capture all my craft from the start of my new career.

Edit: OK, I figured out the error log uploading thing you had set up. At first I didn't realise there were two links in the error message that opens in my browser. Perhaps make these links a different colour? I've also been back and taken the spaces out of the path to KSP and Jebretary. No change.

Edit2: I tried uninstalling and installing 0.3.1, but that version is completely broken. I can't even get my campaign open with that version.

Is this mod still being developed, or has it been abandoned?

Snoman314 I'm sorry I've been so slow in replying. Yes this is still being developed and I've been trying to findout what is causing your problem, but I can't think of a solution currently. The only thing that I can suggest is to wipe the git repos and also do a clean install. When you re-install Jebretary it doesn't reset the git repos that are created in the campaigns. Go into each campaign that you've used Jebretary with and make sure you can see hidden files. There will be a .git folder and a .gitignore file, delete them both. You will loose any history but it doesn't sound like you'd got far with Jebretary anyway. Once you've done that then reinstall Jebretary and try again. I hope that works.

Link to comment
Share on other sites

Hi, just want to say I still love this. It`s saved me more times than I can count and now I worry that I rely on it a bit too much, hehe.

One thing I can`t do though is look at the craft. I`m wanting to check the mods on a craft before uploading.

If I click on a craft name (I assume this is the process) nothing happens. oxodiser has lots of what looks like ___ but with spaces like --- (looks like dashes but at the bottom of the character instead of the middle) about 8 1/2 lines of it and has stopped doing anything.

liquid is checking craft files ok (taking about 3 seconds each time)

My browser is just stuck `waiting for localhost`

should I reinstall jebretary or is there a known quick fix for something like this?

EDIT : after waiting for a long time it has shown the craft. I checked my facebook and it had appeared in the background although it took a good few minutes.

and now it works in a timely manner. Does it need to do a bucketload of checking when it first starts up?

Edited by John FX
Link to comment
Share on other sites

Hi, just want to say I still love this. It`s saved me more times than I can count and now I worry that I rely on it a bit too much, hehe.

One thing I can`t do though is look at the craft. I`m wanting to check the mods on a craft before uploading.

If I click on a craft name (I assume this is the process) nothing happens. oxodiser has lots of what looks like ___ but with spaces like --- (looks like dashes but at the bottom of the character instead of the middle) about 8 1/2 lines of it and has stopped doing anything.

liquid is checking craft files ok (taking about 3 seconds each time)

My browser is just stuck `waiting for localhost`

should I reinstall jebretary or is there a known quick fix for something like this?

EDIT : after waiting for a long time it has shown the craft. I checked my facebook and it had appeared in the background although it took a good few minutes.

and now it works in a timely manner. Does it need to do a bucketload of checking when it first starts up?

Thanks man! I'm glad you're still a fan of this and thank you for mentioning it in other places for me! :)

Just fyi this is still very much a live project, I've just not had much time in the last two weeks for work on it. I have some fixes to implement and there are quite a few more new features in the pipe.

re your issue looking at the craft pages. Do you have a lot of mods? I'm guessing so.

The first time you look at a craft for a particular install of KSP after restarting Jebretary it will take longer to load. That is one place that can trigger Jebretary to build its map of your installed parts. If you have a lot of parts it can take a while, but by a while I'm expecting it to be a few seconds, not minutes. In the terminal for oxidizer, does it pause for a while during the ....... and then carry on? It might be sticking on trying to read a particular part.

Once that map is built it persists until you restart Jebretary. I could have made it persist permanently, but then you'd need to remember to tell Jebretary when you change your installed parts. If this is being a problem for you, there is something (kinda hacky) that you could try. Assuming you are not changing your parts, once Jebretary is running and you've looked at a crafts' page, go into your KSP folder and in the root there should be a file called jebretary.partsDB. Take a copy of that. When you next start Jebretary, wait for it to start up but before you do anything with it, paste the copied file back into your KSP folder. Jebretary should then think it has already built and cached the parts map for that session. But I'd rather try and figure out why this is being slow.

can you tell me which mods you have installed and unless its an absolute mammoth list I will try installing them and seeing what happens.

I think I should make it should you can turn of mod detecting, its been more troublesome than expected and some mods may still be causing issues.

Link to comment
Share on other sites

It`s not a problem, I like the auto-rebuild of parts. Maybe an information display of some sort to let the user know the program is live and running? part count or whatever couyld increment in some way?

I ended up with 8 and a half pages of .... (is that a part counter?) maybe because I run many mods and have a few installs all of which I have been `messing about` with...

Now I know it`s just checking mod parts I`ll let it chug away and check back when it`s done. I`ve been quitting and restarting in the hope that whatever caused it to jam up might clear. Totally the wrong thing to do, hehe.

I keep mentioning jebretary because people keep saying these problems they have and a version control system that keeps everything you ever do ever would solve many of their issues... ;)

EDIT : Upon closer examination of the liquid window I see a lot of "fatal: ambiguous argument 'HEAD' unknown revision or path not in the working trace"

then it tells me how to separate paths from revisions by using "--"

I`m getting pages and pages of that then maybe 10 will work fine in a row.

any clues?

The error log is small so I`ll copypasta

Jebretary error log

2014-07-03 20:05:26 +0100

Error on Monitor:

undefined method `each' for nil:NilClass

["D:/Jebretary/src/app/models/system.rb:125:in `block in process'", "D:/Jebretary/src/app/models/system.rb:108:in `each'", "D:/Jebretary/src/app/models/system.rb:108:in `process'", "D:/Jebretary/src/app/models/system.rb:47:in `run_monitor'", "D:/Jebretary/src/app/models/system.rb:29:in `run_monitor'"]

================================================================================

some sites suggest it may be a stack overflow, would that make sense here? (I do have a lot of craft over many installations)

Edited by John FX
Link to comment
Share on other sites

  • 2 weeks later...

Hey Guys, sorry there haven't been any update recently. I am still developing this, just work has been hectic recently.

I have just released a small update that fixes a couple problems and adds support for the new x64 version.

There will be some more fixes coming soon.

@John FX I should have the above error sorted, just need to test it a bit.

@Noether I've got the error logs you've uploaded, I'm still a bit puzzled as to what's causing the problem but I'm looking into it.

Link to comment
Share on other sites

  • 2 weeks later...

I've just released version 0.3.4. While only a minor change in version number this release includes quite a large overhaul of the background monitoring process and should be a) more stable and B) faster. There is also a change to how (or rather when) Jebretary reads in information about your installed parts. When you start Jebretary it will now scan all you installed parts, this does make starting Jebretary slower, but you won't get unexpected hangs when loading craft pages. It also makes it possible to check if you have updated or changed your installed parts. If Jebretary detects you've changed your installed parts it will prompt a rescan of all the effected craft which ensures that all crafts part info reflects what is currently installed.

You don't have to restart Jebretary to get it to check for changed parts, you can manually request that it re-scans the parts in a particular install by clicking the "rescan parts and craft" link that is now at the bottom of the page for each install of KSP.

You can also disable the automatic scanning of part info at the start (if you know that you're not updating parts and want things to run faster at launch). See the settings on the front page to disable/enable that.

Should also have fixed most of the bugs that you guys have been reporting.

I'm now working on the next major feature which will enable you to have certain craft/subassemblies sync'd between campaigns.

Link to comment
Share on other sites

I just installed Jebretary; been looking at it for awhile. It is very slick; I'll let you know how use goes. I did notice one thing: the "launch this installation" button at the top of the interface launches the x64 version. Is there a way to make it default to the x86 version?

EDIT: Another feedback. Jebretary doesn't really work at all with Kerbal Construction Time, maybe because the launch button is not the default KSP launch button. I had two crafts that I built, hit the save button in the VAB and not only did they not show up in Jebretary, they weren't saved at all in my saves directory. I'm not sure if that's Jebretary's issue or an issue with KCT. I'll have to test more to find out.

EDIT2: It's Jebretary that's preventing my ships from saving. Ran KSP without it and they saved fine. I'm sure this is ultimately a conflict with KCT; just thought you should be aware.

Edited by Mr Shifty
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...