Ruffle — це емулятор файлів Adobe Flash (SWF). Ruffle має вільну ліцензію та відкрито розробляється на GitHub.

Після того як Adobe Flash Player був застарілим і відключений, деякі вебсайти перейшли на Ruffle, щоб користувачі могли продовжувати переглядати й взаємодіяти зі старим Flash-контентом.

Можливості Ruffle написаний мовою програмування Rust і має десктопний та вебклієнт. Автори вебсайтів можуть завантажувати Ruffle за допомогою JavaScript або користувачі можуть встановити розширення для браузера, яке працює на будь-якому вебсайті.

Вебклієнт покладається на компіляцію Rust у WebAssembly, що дозволяє йому працювати в пісочниці, що є значним покращенням у порівнянні з Flash Player, який мав безліч проблем з безпекою. Сама мова Rust захищає від поширених проблем безпеки пам'яті, від яких страждав Flash Player, таких як використання після вільної пам'яті або переповнення буфера.

Десктопний клієнт використовує інтерфейс командного рядка для відкриття SWF-файлів, а повний графічний інтерфейс планується в майбутньому. Завантаження доступні для Windows, macOS та Linux.

Станом на листопад 2023 року Ruffle в першу чергу підтримує старіший Flash-контент, який використовує ActionScript 1.0 і 2.0, причому реалізовано 95 % мови та 75 % API. Він також частково підтримує ActionScript 3.0 (підтримка становить близько 75 % мови і 68 % API). Bleeping Computer повідомили, що всі SWF-ігри, які вони випробували в лютому 2021 року, «працювали бездоганно».

Історія

Передісторія У 2017 році Adobe оголосила, що припинить підтримку Flash Player з 1 січня 2021 року, заохочуючи замість нього використання HTML5. Того ж року газета The New York Times почала працювати над архівацією старого вебконтенту, щоб читачі могли переглядати вебсторінки в тому вигляді, в якому вони були опубліковані, і тепер використовує Ruffle для старого Flash-контенту.

Компанія Adobe почала блокувати використання Flash Player 12 січня 2021 року за допомогою кілл-ключа. Різні вебсайти, в тому числі урядові та освітні, не були готові до відключення і перестали працювати.

Ruffle Майк Велш, який працював у Newgrounds до 2012 року, раніше працював над проєктом з відкритим вихідним кодом під назвою Swivel для архівування Flash-контенту у відео.

У 2016 році Велш розпочав проєкт під назвою Fluster. Пізніше перейменований на Ruffle, цей проєкт перетворився на емулятор Flash Player, написаний на Rust, з десктопним і вебклієнтом.

Вебсайти, що використовують Ruffle У 2019—2020 роках деякі вебсайти оголосили, що будуть використовувати Ruffle.

Засновник Newgrounds Том Фулп сказав, що вони зрозуміли, що «кінець Flash наближається» у 2010 році, але не знали, коли саме. У 2019 році Newgrounds оголосила, що спонсорує розробку Ruffle і буде використовувати його для всього Flash-контенту, починаючи з анімації та закінчуючи інтерактивними іграми. Цей перехід дозволив Newgrounds вперше запропонувати деякі сенсорні ігри на мобільних пристроях. Фулп розповів The Washington Post: «Ми інтегрували Ruffle з сайтом, і наразі більшість контенту [на Newgrounds], створеного до 2007 року, працює з Ruffle».

У 2020 році Coolmath Games оголосили, що будуть використовувати такі технології, як Ruffle, щоб зробити Flash-контент придатним для відтворення.

У листопаді 2020 року Internet Archive оголосив, що буде використовувати Ruffle для збереження флеш-ігор та анімації. Джейсон Скотт, архівіст Інтернет-архіву, розповів: «Я розглядав можливість додати його до системи Internet Archive, і це зайняло менше ніж півтора дня, тому що він був настільки добре зроблений».

У грудні 2020 року Armor Games оголосили, що Ruffle обрали своїм плеєром для Flash-контенту.

Homestar Runner також оголосив про впровадження Ruffle для своїх мультфільмів та ігор. Хоча певні елементи самого сайту наразі не підтримуються емулятором, більша частина контенту сайту була переведена у вікно Ruffle, як мінімум. Окрім офіційного вебсайту, про цю зміну було оголошено через акаунт Strong Bad у Твіттері.

У липні 2023 року Neopets оголосив, що вивчає можливість використання Ruffle для пришвидшення процесу повернення неробочих флеш-ігор та іншого контенту на сайт. Пізніше того ж місяця Ruffle було впроваджено для деяких підтримуваних флеш-ігор.

Див. також

Haxe

Примітки

Посилання