<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en" style='--code-editor-font: var(--default-mono-font, "GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;'>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>
GitLab
</title>

<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>

<style>img {
max-width: 100%; height: auto;
}
body {
font-size: .875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px;
}
body {
font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px; font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";'>
<div class="content">

<p style="color: #777777;">
<a href="https://gitlab.rtems.org/amar">Amar Takhar</a>
commented on a
<a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/582#note_126513">discussion</a>:
</p>
<div class="md" style="position: relative; z-index: 1; color: #3a383f; word-wrap: break-word;">
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">It was discussed during several meetings and I was told to submit an MR with the HAL files.  The issue had been around for a while as well.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">The HAL files are currently a mess: Files are renamed, changes are made that aren't even noted in commit messages.  Some pull from multiple repositories.  No instructions for updating <em style="margin-top: 0;">and</em> no reasoning why the version was picked.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">This is a <em style="margin-top: 0;">vast</em> improvement over the current situation.  Looking at the other 3rd party imports:</p>
<ul dir="auto" style="text-align: initial; list-style-type: disc; margin: 0 0 1rem; padding: 0;">
<li style="margin-top: 0; line-height: 1.6em; margin-left: 25px; padding-left: 3px;">Most don't record what version or hash it came from</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">No record of where the sources were pulled.</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">Some are 10+ years out of date which is fine but we don't have any record as to why we have stayed on older versions</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">No instructions on how to update</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">No rules for import: every single import was done differently.  Yes, every single one.</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">None of them with the exception of zlib is a pure import they have changes that were brought in from the original source we have no way of even detecting those changes unless you figure out what the original source was.. which of course, we don't record anywhere not in docs or in the repo as a separate commit.</li>
</ul>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">The maintenance burden with what we have now is incredibly high as they're all done differently.  Space is extremely cheap.  With this the update procedure is:</p>
<ul dir="auto" style="text-align: initial; list-style-type: disc; margin: 0 0 1rem; padding: 0;">
<li style="margin-top: 0; line-height: 1.6em; margin-left: 25px; padding-left: 3px;">`r<code style='font-size: 90%; color: #18171d; word-wrap: break-word; border-radius: .25rem; background-color: #ececef; margin-top: 0; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; white-space: pre-wrap; overflow-wrap: break-word; word-break: keep-all; padding: 0.125rem 0.25rem;'>m -rf *`</code>
</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;"><code style='font-size: 90%; color: #18171d; word-wrap: break-word; border-radius: .25rem; background-color: #ececef; margin-top: 0; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; white-space: pre-wrap; overflow-wrap: break-word; word-break: keep-all; padding: 0.125rem 0.25rem;'>cp -R <path to repo>/* .</code></li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">Commit changes</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">Tag pure import</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">Re-apply changes on top.</li>
</ul>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">FreeBSD has been using this method for 40+ years and it's incredible to look back on the history of changes it's trivial to see:</p>
<ul dir="auto" style="text-align: initial; list-style-type: disc; margin: 0 0 1rem; padding: 0;">
<li style="margin-top: 0; line-height: 1.6em; margin-left: 25px; padding-left: 3px;">What has changed between upstream versions -- pure import tags</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">What changes FreeBSD is maintaining to see maintenance overhead</li>
<li style="line-height: 1.6em; margin-left: 25px; padding-left: 3px;">Upstream as many changes as possible to reduce that overhead or make changes to avoid modifying the code</li>
</ul>
<p dir="auto" style="color: #3a383f; margin: 0;" align="initial">Every single one of our imports was already impossible to review as the RTEMS changes came in with the import so I'm confused as to how you see this MR which has very clear distinctions of the changes is <em style="margin-top: 0;">difficult</em> to review when the original had all the changes hidden.</p>
</div>


</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #626168;">

<br>
<a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/582#note_126513">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://gitlab.rtems.org">gitlab.rtems.org</a>. <a href="https://gitlab.rtems.org/-/sent_notifications/20fdf95199305c2a6165ab42e6354f5e/unsubscribe" target="_blank" rel="noopener noreferrer">Unsubscribe</a> from this thread · <a href="https://gitlab.rtems.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link">Manage all notifications</a> · <a href="https://gitlab.rtems.org/help" target="_blank" rel="noopener noreferrer" class="help-link">Help</a>
<span style="color: transparent; font-size: 0; display: none; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0;">
Notification message regarding https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/582#note_126513 at 1752591358
</span>
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","action":{"@type":"ViewAction","name":"View Merge request","url":"https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/582#note_126513"}}</script>


</p>
</div>
</body>
</html>