Sharing Development .blend Files

TL;DR: I suggest having a place to share development .blend files, which developers maintain under good practice principles. This can be useful for other developers and on-boarding.


Developers often have their own testing files for development in specific areas.
For example, Sergey has files for working on the Motion Tracker; Sybren set up some pose library files for us (Campbell and me) to use; …

If somebody else wants to work in these areas, they have to spend time setting things up themselves. That’s not always trivial. E.g. this may be one reason why pose libraries haven’t seen much development in Blender for years: even getting started is a hassle.

Sharing Development Testing Files

It would be great if developers would share their testing files publicly, to help other developers as well as on-boarding new ones.
This needs to be simple to use so developers actually share files there. We could explicitly consider this a good practice, refer to it often and push ourselves to use it well.

A CC-BY-SA license seems appropriate.

Delimitation
Such files differ from the blender.org demo files in that they are can be much less formal and lower quality. It’s a different purpose and a different target audience.
They also differ from the files for regression testing or general quality assurance, which are often set up to allow testing very specific things, often in a check-list manner. However, they may be similar enough to be put in the same place.

Where to put it?
The Blender Libraries SVN repository already contains a bunch of testing files, not all are for automated tests. We could just put more files there.
Or should we better create a new directory in the same repository?

Either way, it may be a good idea to link to this from docs like the developer intro resources. Plus, modules can link to their test files from the developer.blender.org module landing page and such.

Possible Problems

  • If everybody uses the same test files, issues may go unnoticed. Or Blender becomes more optimized for these specific test cases. They are not a replacement for general quality assurance.
  • Compatibility: How well do such files age? Probably depends, but in many cases they should be valid for longer periods. Blender is good at file compatibility.
  • An SVN repository isn’t as easy to use as a simple drag & drop interface. Might be acceptable for now though, but we’ll have to push (no pun intended!) ourselves a bit more to actually use it.
  • There may be redundancy with the blender.org demo files or the other testing files. The repository directories could just contain README files linking to them, to avoid the copies.
  • Testing files may be large and slow to download. That would be true for any kind of testing file sharing. But here the files can be reduced a bit more than typical demo or production files.

AFAIK providing the space to host them isn’t a problem.

8 Likes

I wouldn’t want to mix them in with the unit tests, for cycles there already is such a set of test files here we could easily shuffle that around a little bit and sort them out by subject/module/

Depends on the file, some files do well, some not quite as good, i’ve seen tickets once in a while with people trying to load the splash screen blends in newer versions than they were made with and having some kind of issue (sometimes small, sometimes crashy) then again if these are files that everyone tests with, we can just update them as we go along.

I can only encourage doing this, being a platform guy, i’m pretty good with the build system and profilers and will happily look into any perf issues, but i’ll be honest, i wouldn’t know how to setup a rig, or even know what people commonly do in VSE to even know what to look at. My blender skills are around the “i don’t think i actually finished my donut” level :slight_smile:

1 Like

I like this idea a lot. Quite often I have started off to track down some little thing only to find that there are so many steps to even get to a particular place. So I want them as a shortcut to get to a specific area or problem. I don’t want to have to find a video file to create a new VSE project, or rig a character, or solve a tracking shot just to check on something.

What I mostly want is a centrally-located well-named set of files that can act as shared vocabulary for us. So multiple people can talk about an issue and know they are staring at the exact same thing. “Just load this sample, do this, and you will see that.” In an ideal world it would be nice to not only have access to light and simplified files, but also to versions that might represent a more typical user experience. “This works great in this simple sample, but works badly in this more complex one.”

1 Like

We all hope that your files are CC0. In your files I not find any license or note over this

My post doesn’t ask to share files here, it’s proposing that we set up a place where we can start sharing the files and make good use of that. And it proposes just creating a (or using the existing Blender Libraries) SVN repository.
Once that the idea is approved and we set up the repository, we can put .blend files there.

And it’s supposed to be maintained by developers on good practice principles. That means we consider it good practice to add or update files there every now and then (or regularly even).

If there has been any progress on this topic, the files I shared here(but removed), can be found here: https://blenderartists.org/t/video-sequence-editor-news-add-ons/1188770/186