Mailinglist Archive: opensuse-packaging (94 mails)

< Previous Next >
Re: [opensuse-packaging] On how to improve Rust packaging experience for suse


On 11/20/19 6:35 PM, Dany Marcoux wrote:
On 19-11-20 00 h 55, William Brown wrote:


On 20 Nov 2019, at 03:04, Dany Marcoux <dmarcoux@xxxxxxx> wrote:

On 19-11-19 16 h 44, Ludwig Nussel wrote:

William Brown schrieb:
[...]
Due to the fast release cycle, developers aggressively using new
features, and the npm style micro dependency system we have a recipe
for problems - if you are not using the latest stable compiler, it's
extremely likely that your libraries, or their dependents may not
build on your project. Which is exactly the issue I have run into
where rust on fedora 30 and opensuse leap 15.1 are simply too old to
support the features that have been used in the last 6 months by
library developers.
 From what I can tell Rust has two use cases in the stable distros.
The first one is that it's needed by other system components. Regularly
updated, more or less leaf packages Firefox as but unfortunately
also as low as librsvg. For packages like the latter we most likely
do not want Rust to change very six weeks, especially when that kind
of use case spreads. So for that it would be better to upgrade the
system Rust only for service packs ie once per year.

The other use case is developers that want the latest and greatest
for their own purposes. For that it should be possible to create a
parallel installable Rust package and regularly provide newer
versions for it. That works for Leap via regular maintenance updates
as well as SLE via Package Hub. I've been told that Rust is meant to
be pretty good at backwards compatibility so it's probably sufficient
to provide one additional Rust package that follows upstream
releases, instead of a new one for all kinds of versions like eg Go
does.

cu
Ludwig

rustup[0] is what developers should use when developing in Rust. It's
the

official Rust toolchain installer. I packaged it in my home[1] and
submitted

a request[2] in hopes that it would get into Factory, but in the end,
I didn't

get much feedback beside from Neal Gompa. I decided to revoke the
request. As

you can see in the request, I talked about rust and rustup
coexisting, but this

would need a bit more work. I didn't look into this, but I'm willing
to do it.

It definitely seems to be possible as documented[3] upstream.
This does not address the issue - how do we get from development to a
system-buildable and shippable project. This is key here, we need to
think about that full experience from development to deployment - not
just development.


Right now, we have nothing for the development part, unless we want to
stick to

whatever rust version openSUSE provides (which is a bad developer
experience).

This is what my proposal would address.

To a large extent if you can get the developer experience right and
constantly enough updating in tumbleweed it can then be provided in
places like SLE via packagehub without a huge amount of extra effort.

--

Simon Lees (Simotek) http://simotek.net

Emergency Update Team keybase.io/simotek
SUSE Linux Adelaide Australia, UTC+10:30
GPG Fingerprint: 5B87 DB9D 88DC F606 E489 CEC5 0922 C246 02F0 014B

< Previous Next >