gnusocial.rocks/v3/updates-improve-the-attachments-system.html

87 lines
3.8 KiB
HTML

<!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="https://unpkg.com/purecss@2.0.5/build/pure-min.css">
<link rel="stylesheet" href="https://unpkg.com/purecss@2.0.5/build/grids-responsive-min.css">
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css">
<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 &mdash;
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>
<!-- 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>