21:00:02 <ignatenkobrain> #startmeeting Rust SIG (2017-03-08) 21:00:02 <zodbot> Meeting started Wed Mar 8 21:00:02 2017 UTC. The chair is ignatenkobrain. Information about MeetBot at http://wiki.debian.org/MeetBot. 21:00:02 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic. 21:00:02 <zodbot> The meeting name has been set to 'rust_sig_(2017-03-08)' 21:00:07 <ignatenkobrain> #meetingname rust-sig 21:00:07 <zodbot> The meeting name has been set to 'rust-sig' 21:00:11 <ignatenkobrain> #chair ignatenkobrain jistone 21:00:11 <zodbot> Current chairs: ignatenkobrain jistone 21:00:14 <ignatenkobrain> #topic Agenda 21:00:20 <ignatenkobrain> #link https://docs.pagure.org/fedora-rust.sig/meetings/2017-03-08.html 21:00:23 <ignatenkobrain> #info (1) Roll Call 21:00:26 <ignatenkobrain> #info (2) Packaging Guidelines 21:00:28 <ignatenkobrain> #info (3) Open Floor 21:00:31 <ignatenkobrain> #topic Roll Call 21:00:33 <ignatenkobrain> .hello ignatenkobrain 21:00:34 <zodbot> ignatenkobrain: ignatenkobrain 'Igor Gnatenko' <ignatenko@redhat.com> 21:00:35 <jistone> .hello 21:00:37 <zodbot> jistone: (hello <an alias, 1 argument>) -- Alias for "hellomynameis $1". 21:00:40 <jistone> .hello jistone 21:00:41 <zodbot> jistone: jistone 'Josh Stone' <jistone@redhat.com> 21:00:51 <ignatenkobrain> not so much stuff to discuss today 21:00:54 <Pharaoh_Atem> .hello ngompa 21:00:58 <zodbot> Pharaoh_Atem: ngompa 'Neal Gompa' <ngompa13@gmail.com> 21:01:16 <ignatenkobrain> so should be quick ;) 21:01:21 <ignatenkobrain> #topic Packaging Guidelines 21:01:28 <ignatenkobrain> #link https://pagure.io/fedora-rust/sig/pull-request/9 21:02:43 <ignatenkobrain> comments are welcomed 21:05:24 <jistone> (for the meeting logs -- comments are happening on the issue) 21:06:59 <Pharaoh_Atem> ignatenkobrain: threw in a bunch of comments about this 21:07:10 <ignatenkobrain> so seems like naming is main issue 21:07:14 <Pharaoh_Atem> yeah 21:08:19 <Pharaoh_Atem> having rust-* for all source packages ensures we don't have accidental collisions with non-Rust things 21:08:31 <jistone> perhaps the use of rich deps needs to be discussed too 21:08:50 <Pharaoh_Atem> technically, this is a rule for golang, Python, rubygems, and other similar things 21:09:03 <Pharaoh_Atem> however, we *could* allow on a case-by-case basis to not require it being rust-* 21:09:11 <jistone> rich deps are cool, but limiting where we can deploy this 21:09:13 <Pharaoh_Atem> so maybe it should be "strongly preferred" 21:09:46 <Pharaoh_Atem> and the generators should do it always, and if the packager wants to change it... well, they'll have to justify in the package review 21:11:07 <jistone> I'm fine with preferring rust-%{crate} 21:11:53 <ignatenkobrain> so then rust-ripgrep and Provides: ripgrep ? 21:12:03 <jistone> for the srpm that is, then rust-%{crate}-devel and/or %{crate} as appropriate 21:12:06 <Pharaoh_Atem> yep 21:12:15 <Pharaoh_Atem> ignatenkobrain: what jistone said 21:12:30 <jistone> don't have to have a rust-ripgrep.arch.rpm at all 21:12:33 <ignatenkobrain> note that you can't have main package name as %{crate} 21:12:53 <ignatenkobrain> because primary package name should be same as srpm name 21:13:03 <jistone> %package -n %{crate} as a subrpm 21:13:15 <Pharaoh_Atem> if the primary package has no %files section, it doesn't get produced 21:13:27 <Pharaoh_Atem> that's the trick for decoupling 21:13:38 <ignatenkobrain> yeah, we can do that 21:14:39 <ignatenkobrain> #agreed all packages should be prefixed with "rust-", even binary ones 21:15:00 <ignatenkobrain> #undo 21:15:00 <zodbot> Removing item from minutes: AGREED by ignatenkobrain at 21:14:39 : all packages should be prefixed with "rust-", even binary ones 21:15:13 <Pharaoh_Atem> all source packages should be prefixed with "rust-" 21:15:29 <ignatenkobrain> #agreed all source packages should be prefixed with "rust-", even which produce packages with binaries (applications) 21:15:32 <ignatenkobrain> yeah, poor wording 21:15:36 <Pharaoh_Atem> much better 21:15:52 <Pharaoh_Atem> as for rich deps, I'm strongly for leaving them in, but if we want to "bend" it for EPEL or earlier Fedora (assuming Fedora doesn't get rich dep support backported), we *could* 21:16:19 <Pharaoh_Atem> the generator could have a "legacy" mode to resolve them to their actual crate packages with the rich dep version commented out 21:16:41 <ignatenkobrain> for now I would stick to rich deps, but in couple of weeks we will see how it goes with rele g 21:16:43 <ignatenkobrain> releng* 21:16:52 <Pharaoh_Atem> I'm fine with that 21:17:11 <jistone> and that's f27 at the earliest 21:17:18 <jistone> right? 21:17:20 <Pharaoh_Atem> and Mageia 7 21:17:34 <ignatenkobrain> yup 21:18:13 <jistone> so the alternate thing I offered to ignatenkobrain was to encode semver in the Provides 21:18:15 <jistone> Provides: crate(num-0.1) = 0.1.37 21:18:24 <jistone> Requires: crate(num-0.1) > 0.1.20 21:18:51 <ignatenkobrain> yeah, this is the backup 21:18:53 <Pharaoh_Atem> if we want to do that, I would rather that be a *very* short term thing 21:18:57 <jistone> this doesn't allow bigger ranges, >0.1,<0.4 21:19:24 <jistone> Pharaoh_Atem, this would be for a "legacy" mode as you mentioned 21:19:24 <Pharaoh_Atem> it assumes the range is within the same semver block 21:19:31 <Pharaoh_Atem> right 21:19:31 <jistone> yes 21:20:02 <jistone> *very* short term --> until epel7 goes away 21:20:03 <jistone> :P 21:20:12 <ignatenkobrain> jistone: that's not even "short" 21:20:22 <ignatenkobrain> it's basically more than 10years 21:20:24 <ignatenkobrain> :D 21:20:24 <Pharaoh_Atem> that's just making our lives miserable :( 21:20:30 <jistone> (that's the joke) 21:20:46 <Pharaoh_Atem> well, Mageia 6 expires 3 months after Mageia 7 releases 21:20:56 <Pharaoh_Atem> hopefully it won't take a year to get there :/ 21:21:45 <Pharaoh_Atem> jistone: I wonder if it might just be cleaner to not do alternate provides and just do package spec generation time resolution 21:22:05 <Pharaoh_Atem> so it'd look like this: 21:22:09 <ignatenkobrain> Pharaoh_Atem: then you will need to rebuild it every time 21:22:23 <Pharaoh_Atem> ignatenkobrain: that's not really going to matter for EPEL7 21:23:17 <Pharaoh_Atem> EL7 is sufficiently horrible anyway 21:23:37 <jistone> update policy for epel is hard 21:23:50 <ignatenkobrain> at this point I'm very interested what releng will say about richdeps 21:23:54 <ignatenkobrain> but this will take a bit of time 21:24:07 <ignatenkobrain> they've got use-cases for php, rust and ruby 21:24:13 <Pharaoh_Atem> well, dgilmore already told me the earliest he can review the pungi PR is next week 21:24:21 <jistone> link? 21:24:34 <ignatenkobrain> and actually there are more use-cases for SCLs and Modularity 21:24:42 <ignatenkobrain> Pharaoh_Atem: porting pungi is not enough 21:24:42 <Pharaoh_Atem> https://pagure.io/pungi/pull-request/526 21:24:47 <ignatenkobrain> apparently 21:24:58 <Pharaoh_Atem> no, we need koji ported too 21:25:06 <Pharaoh_Atem> and bodhi needs to move to using koji rather than mash 21:25:22 <ignatenkobrain> he said that much more stuff will need to be touched 21:25:24 <Pharaoh_Atem> I stopped my work on mash once koji signed repos was rebased and noted as complete 21:25:27 <mich181189> so... quite a lot then 21:25:41 <Pharaoh_Atem> well, the problem is that not many people are motivated to fix this besides ignatenkobrain and myself 21:25:41 <mich181189> :-P 21:26:07 <ignatenkobrain> Pharaoh_Atem: maxamillion is interested as well 21:26:39 <Pharaoh_Atem> if we can get together for a weekend or something, maybe we can just port Koji :P 21:27:08 <ignatenkobrain> let's decide about this stuff on next meeting 21:27:27 <Pharaoh_Atem> rpm merged the fix upstream today 21:27:42 <Pharaoh_Atem> libdnf and dnf-plugins-core still need their changes merged in 21:27:48 <Pharaoh_Atem> then the whole feature needs to be backported 21:27:53 <ignatenkobrain> it's not enough 21:27:59 <ignatenkobrain> "with" deps are not implemented yet 21:28:08 <ignatenkobrain> libdnf still hangs on me, should do more fixes there 21:28:14 <Pharaoh_Atem> hmm 21:28:16 <ignatenkobrain> dnf-plugins-core... need to fix tests 21:29:18 <ignatenkobrain> for RPM I've merged support for depgens which emit rich deps 21:30:13 <ignatenkobrain> okay, naming discussed. version stuff has been moved for next week... any major thngs to discuss about packaging? 21:30:55 <luke_nukem> Hi all. Bit late due to classes. 21:31:10 <ignatenkobrain> hi luke_nukem 21:31:50 <ignatenkobrain> #topic Open Floor 21:32:23 <ignatenkobrain> I didn't do much last week 21:32:29 <Pharaoh_Atem> luke_nukem: did you have any progress on rust + opensuse? 21:32:35 <ignatenkobrain> although keeping crates up2date 21:32:41 <ignatenkobrain> today updated rustfmt to 0.8.0 21:32:53 <ignatenkobrain> most of patches were merged in upstream 21:32:53 <jistone> I've got rustbuild going in dist-git jistone/beta for 1.16 21:33:06 <ignatenkobrain> jistone: have copr repo? 21:33:21 <jistone> https://copr.fedorainfracloud.org/coprs/jistone/rust-beta/ 21:33:28 <jistone> perhaps I should do those in the sig group 21:33:38 <ignatenkobrain> yeah 21:33:38 <luke_nukem> Pharaoh_Atem: Haven't had much time as of yet. Just in 2nd week of University and getting dates/schedules sorted now. I'll be making time to get things rolling in SUSE this weekend. 21:33:42 <Pharaoh_Atem> ignatenkobrain: oh, did you speak with copr guys about double root mock? 21:33:55 <ignatenkobrain> oh right 21:34:06 <ignatenkobrain> they deployed latest mock for me 21:34:10 <ignatenkobrain> on dev instance 21:34:14 <ignatenkobrain> so we can try stuff there 21:34:23 <Pharaoh_Atem> where's dev copr? 21:34:26 <ignatenkobrain> that was my plan for today, but -ENOTIME 21:34:39 <Pharaoh_Atem> ain't that the truth :) 21:34:50 <luke_nukem> jistone: How is rustbuild for you so far? I didn't have any issues when I tried using it in packaging a few weeks ago. 21:35:12 <ignatenkobrain> copr-fe-dev.cloud.fedoraproject.org 21:35:36 <jistone> luke_nukem, not too bad, just makes the bootstrap srpm even more ridiculously huge 21:35:51 <Pharaoh_Atem> jistone: how big is it now? 21:36:15 <jistone> hmm, I think I said ~700MB or so 21:37:11 <jistone> it goes from ~40MB tarballed binaries per target to ~100MB 21:37:15 <Pharaoh_Atem> wow 21:37:25 <luke_nukem> jistone: How do you do bootstrap currently? I have the openSUSE one split out from the main rust package 21:37:31 <Pharaoh_Atem> it's reaching texlive sizes 21:37:55 <ignatenkobrain> Pharaoh_Atem: cm'on, spec file is how many MiBs? 21:37:56 <ignatenkobrain> ;) 21:37:57 <jistone> luke_nukem, all in one srpm, with a %bootstrap_arches control variable 21:38:18 <ignatenkobrain> 8.4M texlive.spec 21:38:20 <Pharaoh_Atem> ignatenkobrain: okay, that one is a bit extreme 21:38:27 <ignatenkobrain> 16K rust.spec 21:38:30 <ignatenkobrain> not even close :P 21:38:31 <jistone> luke_nukem, we never ship a bootstrapped binary build to users 21:38:35 <Pharaoh_Atem> I can't even open that spec file in most text editors 21:38:54 <jistone> luke_nukem, so I set %bootstrap_arches, do a build, then turn it off and rebuild 21:39:02 <Pharaoh_Atem> luke_nukem: I'm surprised that OBS doesn't have bootstrap control flag support 21:39:03 <luke_nukem> jistone: the bootstrap for openSUSE is only used in OBS ;) 21:39:20 <Pharaoh_Atem> and I'm guessing you disable publishing of the bootstrap package :) 21:39:27 <luke_nukem> Pharaoh_Atem: it does in the form of flags that use a %bcond 21:39:45 <luke_nukem> Pharaoh_Atem: yes disabled. 21:41:19 <jistone> oh, I also rebuilt rust in f25-llvm39 for the upcoming llvm rebase 21:41:33 <Pharaoh_Atem> well, now that Factory is on rpm 4.13, you can probably fork rpm, libsolv, and libzypp to add support for "with" richdep 21:42:23 <luke_nukem> Pharaoh_Atem: I'll have to get on that pretty soon I think. This weekend anyway. 21:42:54 <Pharaoh_Atem> let me know if you need any help :) 21:43:07 <Pharaoh_Atem> I think you might want to talk to adrianS and mls before you start this weekend though 21:43:40 <mich181189> jistone: are you rebootstrapping on each release or something? 21:43:43 <Pharaoh_Atem> (adrianS is Adrian Schroeter, who manages OBS, and mls is Michael Schroeder, who maintains perl-BSSolv, libsolv, rpm, etc.) 21:43:50 <jistone> mich181189, no, but I make sure we *can* 21:44:09 <mich181189> jistone: ah ok makes sense. Good thing to test I guess 21:44:11 <luke_nukem> Pharaoh_Atem: thanks, I'll get in touch with them soon. 21:44:14 <Pharaoh_Atem> luke_nukem: I suggest hanging out in #rpm-ecosystem and #opensuse-buildservice 21:44:42 <luke_nukem> Already in build-service. But I'll pop in to rpm-aecosystem too 21:44:53 <Pharaoh_Atem> emailing them specifically may help, too... adrian@suse.de and mls@suse.de 21:45:00 <Pharaoh_Atem> be sure to CC myself and ignatenkobrain to those emails 21:45:18 <luke_nukem> your emails are? 21:45:23 <Pharaoh_Atem> mine is ngompa13@gmail.com 21:45:44 <Pharaoh_Atem> I dunno which one ignatenkobrain would want you to use 21:45:58 <ignatenkobrain> my @fp.o 21:46:05 <ignatenkobrain> ignatenkobrain@fedoraproject.org 21:46:08 <ignatenkobrain> :P 21:46:24 <luke_nukem> Thanking you! 21:46:56 <luke_nukem> I was considering proposing this all as a Google Summer of Code project... But, not sure of the chances of success. 21:47:18 <Pharaoh_Atem> hey, you can 21:47:39 <Pharaoh_Atem> either under the Fedora org or the openSUSE organization (if openSUSE has one) 21:47:48 <Pharaoh_Atem> I think we're still taking GSoC proposals in Fedora 21:48:06 <Pharaoh_Atem> https://fedoraproject.org/wiki/GSOC_2017 21:48:34 <luke_nukem> I've nearly finished my Gnome proposal, maybe I could try submitting two in-case? I don't think I saw any restriction there.. 21:50:10 <Pharaoh_Atem> SUSE looks a bit more restrictive on their gsoc stuff: http://101.opensuse.org/gsoc/ 21:50:22 <Pharaoh_Atem> errm openSUSE 21:52:08 <Pharaoh_Atem> luke_nukem: if you want to propose a project to do under the Fedora banner, ignatenkobrain might be willing to mentor you 21:52:25 <Pharaoh_Atem> since he works on the DNF team, he intersects with a lot of different, relevant groups 21:53:01 <luke_nukem> Pharaoh_Atem: Yeah not so sure I want to try with openSUSE. I like working with the team I know of so far, but trying to do the rust stuff will be hard as there is really only me working on it for them - no mentors. 21:53:31 <Pharaoh_Atem> ignatenkobrain would be an excellent mentor :) 21:53:53 <luke_nukem> Pharaoh_Atem: Okay, might be worth a try then. I'll see if I can get a proposal done this weekend. 21:54:15 <Pharaoh_Atem> and you can probably squeeze in some libzypp/zypper love too :) 21:54:25 <luke_nukem> Lol! 21:54:44 <Pharaoh_Atem> well, at some point soonish, I'll get zypper into Fedora, so it'll be there and "relevant"-ish 21:54:53 <luke_nukem> So toss up between gnome-polari, and rusting the fedora. 21:55:08 <Pharaoh_Atem> well, corroding fedora sounds more fun, doesn't it? :) 21:56:30 <luke_nukem> it... does... But I've also got a great project lined up for Polari too - Tracker integration for power-searching of chat logs. 21:56:30 <mich181189> that might actually be the first time I've heard "rusting" said in a positive sense! (well, positive to those here anyway!) 21:56:42 <ignatenkobrain> mich181189: :D 21:57:22 <luke_nukem> mich181189: Hey, rat-rodders (hot-rodders) like rust too. It's decorative. ;) 21:58:00 <ignatenkobrain> note that we have only 3 more minutes =) 21:58:12 <luke_nukem> ignatenkobrain: Pharaoh_Atem: What's a quick run down of what still needs to be done for rust in fedora? As I understand it, it's mostly rpm issues? 21:58:32 <ignatenkobrain> luke_nukem: mostly organizational and releng things 21:59:00 <ignatenkobrain> probably I will be able to re-bootstrap cargo using only system deps at some point soon :D 21:59:18 <ignatenkobrain> there are only 4-5 deps are missing 21:59:18 <Pharaoh_Atem> some porting work for koji, adding new richdep support to rpm, libsolv, libdnf, dnf, etc. 21:59:27 <luke_nukem> ignatenkobrain: Actually, could you do a draft of the relevant things with links? I'll need to refresh myself for the work + GSoC proposal. 21:59:40 <ignatenkobrain> luke_nukem: will do 21:59:46 <luke_nukem> Thanks! 22:00:04 <ignatenkobrain> anything else? 22:00:09 <Pharaoh_Atem> I'm good 22:00:19 <luke_nukem> Good here too. 22:00:30 <ignatenkobrain> jistone: mich181189: ^ 22:00:39 <jistone> good 22:00:44 <ignatenkobrain> cool! 22:00:44 <ignatenkobrain> #endmeeting