This is a read-only archive of the Framer Community on Facebook.

What is Framer? Join the Community
Return to index
Edward Sanchez
Posted Feb 27 - Read on Facebook

Hi, I sometimes don't use Framer for several months and need to open a file I created long ago. Most of the time things don't work at all and it can be hard to debug - sometimes there's no error message anywhere but stuff is very broken.

Could you make backwards compatibility or at least conversion of files more solid so this doesn't happen?

Or at the very least, is there a way to find out what version that file was created in and download that version of Framer so I can play it?

I can send an example file if you contact me - can't share it publicly.



Brian Williams

im curious about the problem, have you tried looking in the console/ inspector?

Edward Sanchez

Oh, didn't know about the console. Thanks! I see that states.switch, states.add, and all are deprecated - that's the issue.

Seems like something that should've been converted automatically though?

Also, would be good if the deprecated errors in the console showed up in the main UI.

My point remains I guess. Would be nice if conversion was more robust or if I could somehow download old versions. Sometimes you don't have the time to go in a fix things, you just need to present an old solution and there's no way to do that now without some effort.

Edward Sanchez

So, even though console was complaining about deprecation, it still ran it. The real culprit was the spring.

I had a spring "spring(500,50,0)" and that doesn't seem to work anymore.

I tried the new syntax like Spring(damping: 500, mass: 50) but had no luck - the result I get is the thing keeps blinking when I switch the state which changes the opacity.

What does the old spring map to in the new springs?

Tarun Chakravorty

This would be a nice thing to have. I too have found myself opening up old framer files from mid to late 2015, only to see things broken.

Jonas Treub

The previous spring which was defined with a string can be mapped to the classic string:

Jonas Treub

The new spring which uses damping is our new preferred way of defining a spring because the time can be set using a property, just like on iOS.

Koen Bok

In theory, our strategy is to keep the original Framer.js file with the project. But some of it is needed by studio and breaks for that reason. We are working to improve that in the future.

Edward Sanchez

Jonas TreubI changed "spring(1500,100,0)" to Spring(tension: 1500, friction: 100) and Spring(tension: 1500, friction: 100, velocity: 0) and I'm still getting a weird infinite bouncy behavior.

If I change the spring to simply Spring the problem doesn't happen, but the curve is obviously not as I designed.

Jonas Treub

Are you sure you are defining it right?

Edward Sanchez
Jonas Treub

If the friction is 0 the spring will never come to a stop. Here I changed the values to the ones you specified earlier:

Edward Sanchez

Ugh! If ever we meet you may actually slap me.

Read the entire post on Facebook