pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: rust - volunteers sought...



pin <voidpin%protonmail.com@localhost> writes:

> On Thursday, May 16th, 2024 at 12:58 PM, Greg Troxel <gdt%lexort.com@localhost> wrote:
>
>> It's unfortunate that the rust compiler has so many problems.
>> 
>> I wonder if we are arriving at having versioned rust packages, so that
>> 
>> - you can add the new one when it works for amd64
>> 
>> - we can have basically a switch statement based on os/version/cpu
>
> I used to be against the idea of versioning but, I start to think it might not be such a bad suggestion.
>
> The major issue I see with this is that a lot of projects tend to follow Rust upstream to access new features.
> I already have two patches to force packages to use 1.76 instead of 1.77.2

Yes, but this is a bug in the rust world, not a bug in pkgsrc.  It's
basically a consequence of thinking that the combination of a singleton
implementation (effectively) and an unstable language spec is ok.

We merely have to work around what is wrong with rust - as you are
doing.  (Not sure why you said "force": do you mean a package that
builds with 1.76 and not 1.77.2, or a package that expects new and
you've patched it to be ok with older??)

> Another problem, is that soon 'edition = 2024' will be out which, basically will mean that any project using it, will require Rust-1.7x.
> Where 'x' will be the stable version at the time of introduction of 'edition'.

Yes, and I think it's a bug for any rust-using program to depend on that
until it's been out for a year.   And until gcc-rust also supports it :)
But they aren't going to listen to me.

> So, if we are versioning, I think it would be good with a 'list of
> packages' expected to build on a 'list of platforms'.

Agreed.   Basically:

  we define a set of core platforms where we expect rust to work.   That
  might be amd64, i386, earmv7, aarch64.  It might be more, but I'm not sure.

  we keep track of the lowest version in use by any of the above

  when a rust-using program is updated, it should have been built/tested
  with that lowest version, generally

  we might decide for some particular program to throw some platform
  overboard
  


Home | Main Index | Thread Index | Old Index