Date: Tue, 28 Apr 2026 12:41:39 -0700 From: Chuck Tuffli <chuck@freebsd.org> To: Jessica Clarke <jrtc27@freebsd.org> Cc: Robert Clausecker <fuz@fuz.su>, Cy Schubert <Cy.Schubert@cschubert.com>, src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 68e5b71517e9 - main - Vendor import of smart at 1.0.2 Message-ID: <CAKAYmMKbqRoXyET9fixJw7PxUHzJdGTYtMbHVuf=7kVrHYx7iw@mail.gmail.com> In-Reply-To: <CAA16016-6F67-4396-A1A1-CAEF0676EA28@freebsd.org> References: <69f0ea0c.19f57.339fcc06@gitrepo.freebsd.org> <20260428180947.83C47130@slippy.cwsent.com> <CAKAYmM%2BgVOXQ=jc0wyt3-xkqWi3i9TuCk5rDf7Le5QL5zAGQzQ@mail.gmail.com> <afD9wrh7zwB1wJbz@fuz.su> <CAA16016-6F67-4396-A1A1-CAEF0676EA28@freebsd.org>
index | next in thread | previous in thread | raw e-mail
On Tue, Apr 28, 2026 at 11:40 AM Jessica Clarke <jrtc27@freebsd.org> wrote: > > On 28 Apr 2026, at 19:34, Robert Clausecker <fuz@fuz.su> wrote: > > > Hi Chuck, > > > > Am Tue, Apr 28, 2026 at 11:21:26AM -0700 schrieb Chuck Tuffli: > >> On Tue, Apr 28, 2026 at 11:09 AM Cy Schubert <Cy.Schubert@cschubert.com> wrote: > >>> > >>> In message <69f0ea0c.19f57.339fcc06@gitrepo.freebsd.org>, Chuck Tuffli > >>> writes: > >>>> The branch main has been updated by chuck: > >>>> > >>>> URL: https://cgit.FreeBSD.org/src/commit/?id=68e5b71517e947b4e3f349c970af362b > >>>> 47b45f27 > >>>> > >>>> commit 68e5b71517e947b4e3f349c970af362b47b45f27 > >>>> Author: Chuck Tuffli <chuck@FreeBSD.org> > >>>> AuthorDate: 2026-04-28 16:55:50 +0000 > >>>> Commit: Chuck Tuffli <chuck@FreeBSD.org> > >>>> CommitDate: 2026-04-28 17:08:27 +0000 > >>>> > >>>> Vendor import of smart at 1.0.2 > >>>> > >>>> smart/diskhealth is a command line application to monitor disk health > >>>> from a storage device via SMART. > >>>> > >>>> Reviewed by: fuz, jrm > >>>> Relnotes: yes > >>>> Differential Revision: https://reviews.freebsd.org/D56638 > >>>> --- > >>>> contrib/smart/Changelog | 37 ++ > >>>> contrib/smart/LICENSE | 13 + > >>>> contrib/smart/Makefile | 26 + > >>>> contrib/smart/freebsd_dev.c | 828 +++++++++++++++++++++++++ > >>>> contrib/smart/libsmart.c | 1359 +++++++++++++++++++++++++++++++++++++++ > >>>> ++ > >>>> contrib/smart/libsmart.h | 174 ++++++ > >>>> contrib/smart/libsmart_desc.c | 158 +++++ > >>>> contrib/smart/libsmart_dev.h | 60 ++ > >>>> contrib/smart/libsmart_priv.h | 83 +++ > >>>> contrib/smart/smart.8 | 245 ++++++++ > >>>> contrib/smart/smart.c | 334 ++++++++++ > >>>> packages/Makefile | 1 + > >>>> packages/smart/Makefile | 4 + > >>>> packages/smart/smart.ucl | 30 + > >>>> usr.sbin/Makefile | 1 + > >>>> usr.sbin/smart/Makefile | 8 + > >>>> 16 files changed, 3361 insertions(+) > >>> > >>> Why are we doing vendor imports directly to contrib/? Is this a new > >>> procedure, do we not need to use the vendor branch anymore? > >> > >> Sorry, this is new territory for me, and I may have goofed. My > >> understanding was the upstream code lives in a vendor/* branch (which > >> I forgot to push) and the contents are copied to the contrib/* > >> directory and then committed. If this isn't the right thing to do, let > >> me know how to fix this. > > > > Your understanding is correct, though you are supposed to do a merge > > to tie the vendor branch and the change in the contrib directory > > together, making it clear which state of the vendor branch the contrib > > directory corresponds to. > > > > The best way to fix this is to revert your change and then to retry > > with a merge commit. > > The helpful link seemingly omitted from this thread so far: > > https://docs.freebsd.org/en/articles/committers-guide/index.html#vendor-import-git Apologies for the goof :( Just to make sure I have this all correct, I will 1. Create a branch vendor/smart containing only the pieces from upstream that base needs and commit 2. git tag -a vendor/smart/1.0.2 -m "Tag smart at 1.0.2" 3. git push --follow-tags freebsd vendor/smart 4. git switch main 5. git subtree merge -P contrib/smart vendor/smart Here is where I'm fuzzy on what to do. Am I supposed to push this as-is or am I allowed to make changes? If I can make changes, is that via git commit --amend? Since this is a new import, what commit do the changes to packages/* and usr.sbin/* go? Their own commit or as a part of the merge? --chuckhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAKAYmMKbqRoXyET9fixJw7PxUHzJdGTYtMbHVuf=7kVrHYx7iw>
