From: Soft Works <softworkz@hotmail.com>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH] lavf/matroskadec: stop mapping text/plain attachments to AV_CODEC_ID_TEXT
Date: Wed, 8 Jun 2022 15:38:31 +0000
Message-ID: <DM8P223MB03650A071143B1B0941BEBE7BAA49@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <165469059933.5088.676378891981541783@lain.khirnov.net>
> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of Anton
> Khirnov
> Sent: Wednesday, June 8, 2022 2:17 PM
> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
> Subject: Re: [FFmpeg-devel] [PATCH] lavf/matroskadec: stop mapping text/plain
> attachments to AV_CODEC_ID_TEXT
>
> Quoting Soft Works (2022-06-08 10:34:05)
> > > > I don't think it's absurd, neither hypothetical to ask whether
> somebody,
> > > > would object a certain change --- BEFORE working spending time on it.
> > >
> > > It does makes sense to consider it, but at some point you have to accept
> > > that ANY change you make can possibly break somebody's use case. So
> > > being overly considerate means no useful development gets done.
> >
> > I very much agree to this. But I'm wondering how this can go together
> > with versioning the code by 24 different numbers (8 libs * 3 integers).
> > Even when you make a change that is undoubtedly correct and justified and
> > right - when it changes behavior it breaks compatibility, even when the
> > previous behavior was totally bad and wrong.
> >
> > Once you leave that path and replace it by some "custom" judgement with
> regards
> > to what's compatible and what's breaking and consider a change to be non-
> breaking
> > because it changes only "illegitimate" behavior, it's still a breaking and
> > incompatible change.
> > When it's not possible to rely on a precise and strict compatibility based
> > on these version numbers with major, minor and micro for every single lib,
> > and you say - nevermind, every change will break something, what are all
> > those numbers for? They would be pointless, wouldn't they?
>
> Those numbers are not "code version", they are "API version". They do
> not provide guarantees on specific code behavior, they provide
> guarantees on what APIs are available and their semantics.
>
> > > When we add a new codec ID, what was previously "none" changes to an
> > > actual codec name. Users for whom any change at all is a problem should
> > > simply not update their binaries.
> >
> > How should those users know when the library version numbering doesn't
> > indicate that breaking change?
>
> Tests. Lots of tests.
> If any change in behaviour is a breaking change for you, then git commit
> hash is the library version you should use.
Not any change, but for a change in output, I'd say yes. I mean - isn't that
what FATE is checking? And don't you say "breaks FATE" when the an output
changes?
After all, I'm still having a hard time in assimilating the logic and mindsets
here. I'm obviously coming from a very different background and certain things
just don't make sense to me, so I have to ask many questions, when I can't
believe it, I ask once again, and again and re-assure that it's really that
way that I can hardly believe. When the versions do not guarantee anything
besides API compatibility, then there's almost not practical value in having
them, because things can always go wrong no matter whether those versions
match or not as you always need to test thoroughly. You would be able
to rule out some combinations up-front, but that's it.
Also, given that fact that matching versions do not guarantee anything of
practical value, who would then still want to mix ffmpeg libs from different
Git revisions based on those version numbers? I can't compute this ;-)
But I also don't want to annoy you endlessly, so rather let me say
thank you for your patience and for explaining your view on
these things.
Best wishes,
sw
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2022-06-08 15:38 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-07 11:58 Anton Khirnov
2022-06-08 3:19 ` Soft Works
2022-06-08 3:45 ` Soft Works
2022-06-08 6:17 ` Anton Khirnov
2022-06-08 6:39 ` Soft Works
2022-06-08 7:09 ` Anton Khirnov
2022-06-08 7:43 ` Soft Works
2022-06-08 8:04 ` Anton Khirnov
2022-06-08 8:34 ` Soft Works
2022-06-08 11:29 ` Soft Works
2022-06-08 11:34 ` Soft Works
2022-06-08 12:16 ` Anton Khirnov
2022-06-08 15:38 ` Soft Works [this message]
2022-06-08 17:38 ` Anton Khirnov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DM8P223MB03650A071143B1B0941BEBE7BAA49@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM \
--to=softworkz@hotmail.com \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git