2021-08-16 19:22:59 +01:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< link rel = "shortcut icon" href = "/favicon.ico" >
< link rel = "stylesheet" href = "/assets/css/style.css" >
< link rel = "stylesheet" href = "/v3/blog.css" >
< title > Updates: Improve the Attachments system - GNU social V3< / title >
< / head > < body >
< header class = "header" >
< div class = "home-menu pure-menu pure-menu-horizontal pure-menu-fixed" >
< a class = "pure-menu-heading" href = "/" > GNU social< / a >
< ul class = "pure-menu-list" >
< li class = "pure-menu-item pure-menu-selected" > < a href = "index.html" class = "pure-menu-link" > Version 3< / a > < / li >
< li class = "pure-menu-item" > < a href = "https://code.gnusocial.rocks/" class = "pure-menu-link" > Repository< / a > < / li >
< li class = "pure-menu-item" > < a href = "https://coverage.gnusocial.rocks/" class = "pure-menu-link" > Code Coverage< / a > < / li >
< li class = "pure-menu-item" > < a href = "https://docs.gnusocial.rocks/" class = "pure-menu-link" > Documentation< / a > < / li >
< li class = "pure-menu-item" > < a href = "https://agile.gnusocial.rocks/" class = "pure-menu-link" > Wiki< / a > < / li >
< li class = "pure-menu-item" > < a href = "https://kanban.undefinedhackers.net/?controller=BoardViewController&action=readonly&token=d2293e55cabae7cceff9fb496c651328195357d392b9e61a9f229ed6d463" class = "pure-menu-link" > Roadmap< / a > < / li >
< / ul >
< / div >
< / header >
< div class = "content-wrapper" >
< div class = "content" >
< div id = "divbodyholder" >
< div class = "headerholder" > < div class = "header" >
< div id = "title" >
< h1 class = "nomargin" > < a class = "ablack" href = "https://gnusocial.rocks/v3/index.html" > GNU social V3< / a > < / h1 >
< div id = "description" > Development blog where we announce our progress.< / div >
< / div > < / div > < / div >
< div id = "divbody" > < div class = "content" >
<!-- entry begin -->
< h3 > < a class = "ablack" href = "updates-improve-the-attachments-system.html" >
Updates: Improve the Attachments system
< / a > < / h3 >
<!-- bashblog_timestamp: #202108051337.42# -->
< div class = "subtitle" > August 05, 2021 —
GNU social development team
< / div >
<!-- text begin -->
< p > With the milestone "Port Media system from v2" we had ported the existing
attachment system. The fact is that this system wasn't good enough.< / p >
< p > It's always important to start with the original code as that allows us
to review past decisions and understand all the corner cases.< / p >
< p > Sadly, what motivated us to re-design the attachment system was the
non-considered corner cases.< / p >
< p > Key commits:< / p >
< ul >
< li > < a href = "https://code.undefinedhackers.net/GNUsocial/gnu-social/commit/32ad5dbd74ebb369c4b3ed688e1fb78464fabe49" > 32ad5dbd74 - [ENTITY] Split Attachment in various new entities< / a > < / li >
< li > < a href = "https://code.undefinedhackers.net/GNUsocial/gnu-social/commit/c381e58d3307e7dd07abeb9cf5b3998e34f5bd48" > c381e58d33 - [ENTITY] Refactor RemoteURL entities to Link< / a > < / li >
< / ul >
< p > The reasoning leading to these entities and structure is detailed in our
< a href = "http://agile.gnusocial.rocks/doku.php?id=attachment" > wiki< / a > .< / p >
< p > Some relevant observations:< / p >
< ul >
< li > < code > Link< / code > is now part of GNU social Data Representation terms. It represents
any remote URL being shared in a note.< / li >
< li > There's only one fixed directory for GSFiles.< / li >
< / ul >
2021-08-16 23:08:02 +01:00
2021-08-18 13:46:08 +01:00
2021-08-16 19:22:59 +01:00
<!-- text end -->
<!-- entry end -->
< / div >
< / div > < / div >
< / div >
< footer class = "l-box is-center" >
This site's source is < a href = "https://code.undefinedhackers.net/GNUsocial/gnusocial.rocks" > hosted here< / a > .
< / footer >
< / div >
< / body > < / html >