Justman10000 Composer lists out all possible versions and the reasons why each one had to be skipped. All the early versions had to be skipped because they were for an older Flarum version. The later extension versions have been skipped because of the conflict declaration. In the end, Composer did not find a single version that did not have either of those issues, so it lays out the list for the user to figure out which of the issues is relevant.
If you use require with ^1.0
instead of *
it should not try all of the older versions and you would not see that part of the output. That's one of the benefits and "downsides" of the *
requirement, it actually makes Composer try to install any of the possible version, so for older extensions with many releases over the years Composer has to compute the dependencies of every single one. I'm pretty sure it starts with the most recent one and if it fits the other computations will be skipped, so in practice I don't think it takes much more processing to run. But you get that longer output if an error occurs.
I hope that makes sense. That's all Composer logic, not specific to Flarum or the concept of extensions.