01:20:58 Experimental (bcrawl) branch on underhound.eu updated to: 0.23-a0-3001-g9d8a61a446 03:16:28 Unstable branch on crawl.beRotato.org updated to: 0.25-a0-782-g655279c (34) 07:54:32 I'm working on the UI project to Change level annotations from Dungeon Overview (Ctrl-O) 07:54:49 I want to ask about coding conventions which aren't mentioned in coding_conventions.txt 07:57:27 let me describe what I think is the best way to fit with the implicit conventions, just to check 07:58:16 I'll move annotate_level() from dgn-overview.cc to travel.cc 08:00:57 then introduce new flags and output constants for _prompt_travel_branch() so that it can have the behaviour annotate_level() needs 08:06:37 This seems necessary if I want to use the flags which are binary masks (like "(prompt_flags & TPF_ALLOW_WAYPOINTS)") and output options defined in an emun at the top of travel.cc (like ID_DOWN, but I'll have to introduce a new one like ID_PLAYER_POS or something like that). 08:08:11 should _prompt_travel_branch() be renamed if it is given an extra purpose? 08:23:31 hmm that one sounds kinda tough to do with a proper menu 08:24:13 I guess it would be possible to use outermenu for that 08:24:59 I can just use the same code currently used for shift-G, right? 08:25:27 (which is _prompt_travel_branch() ) 08:26:15 that prompt displays in the message area, which won't work for a prompt that is a subwindow of the overview screen (and its a bad idea design-wise anyway) 08:28:50 separately, the proposed modifications is not ideal; it mixes annotation stuff with travel stuff, which makes both more complicated than necessary 08:28:53 I wouldn't see it as a sub-window. I'd see it as "if I press ! in the main dungeon view or in the dungeon overview screen, I go to annotate_level(), 08:28:54 which asks me what level I want to annotate and then lets me annotate it 08:29:17 the travel code is already an absolute nightmare; making it worse is just not an option 08:29:33 I can understand that 08:29:49 does that mean I should copy-paste code? 08:30:15 I'm thinking for local tiles: the overview is in a popup, and the annotation ui would be in a sub popup 08:30:30 at least from that ui implementable description 08:31:09 Pressing ! in the Ctrl-O screen should bring up a small dialogue (only five lines will be used, and all current annotations are still on-screen). That dialogue looks exactly like the Ctrl-G prompt, with the exception that Enter and . are shortcuts for the current level and that you are allowed to enter any level. 08:31:36 this implies to me that the messaging area should be used, rather than a pop-up 08:32:19 I guess both are OK; not sure if all branches will fit on the message window if wizmode is on 08:32:51 in any case, yes, copy-pasting the relevant code to a new annotations.cc file would be besy 08:32:55 best 08:33:32 would I also need to make a annotations.h file? 08:33:32 yes 08:33:37 I don't have much experience with .h files 08:35:15 no worries, it's fairly straightforward 08:37:17 h files have a header comment, a pragma-once, then includes 08:37:55 cc files have a header comment, an apphdr include, then regular includes 08:38:58 you need to list annotations.o in makefile.obj to get it included in the build 09:06:45 !crashlog Blyxx 09:06:46 4. Blyxx, XL16 MuNe, T:33679 (milestone): http://crawl.akrasiac.org/rawdata/Blyxx/crash-Blyxx-20200416-034112.txt 09:07:16 another non-reflect crash 09:59:19 -!- raskol_ is now known as raskol 12:28:33 New branch created: trap-features (2 commits) 13https://github.com/crawl/crawl/tree/trap-features 12:28:33 03Aidan Holm02 07[trap-features] * 0.25-a0-771-g25f1173: Rename trap category -> trap feature 10(15 minutes ago, 6 files, 14+ 15-) 13https://github.com/crawl/crawl/commit/25f1173c2336 12:28:33 03Aidan Holm02 07[trap-features] * 0.25-a0-772-g51f4184: Add individual feature types for mechanical traps 10(7 minutes ago, 8 files, 98+ 4-) 13https://github.com/crawl/crawl/commit/51f4184a7ce2 12:49:00 03Aidan Holm02 07[trap-features] * 0.25-a0-772-g3935be5: Add individual feature types for mechanical traps (#12170) 10(28 minutes ago, 8 files, 98+ 4-) 13https://github.com/crawl/crawl/commit/3935be535a54 12:49:00 03Aidan Holm02 07[trap-features] * 0.25-a0-773-g7734946: Split teleport trap feature in two 10(4 minutes ago, 6 files, 12+ 3-) 13https://github.com/crawl/crawl/commit/77349460fed6 12:55:28 The build has errored. (trap-features - 51f4184 #13040 : Aidan Holm): https://travis-ci.org/crawl/crawl/builds/675829737 13:02:38 03Nikolai Lavsky02 {Aidan Holm} 07* 0.25-a0-783-g0e9e85f: Fix the x-mode description of walls covered in ice and blood 10(2 days ago, 1 file, 2+ 5-) 13https://github.com/crawl/crawl/commit/0e9e85fc210e 13:06:17 does anyone forsee any major problems with splitting traps up like that? I'm not too familiar with that part of the codebase, but it seems to work perfectly afaict 13:07:34 I don't know what save compat for that will look like 13:08:24 or if it somehow breaks any trap triggering or specific trap placement from vaults 13:08:24 saves will continue to use the old enums 13:08:41 i'm not sure what I'd grep for to check for the second issue 13:09:08 well, you could try generating e.g. ossuaries or other vaults that specifically place traps that got split up 13:09:15 er, s/saves/existing saves/, new saves will use new enums (and presumably newly generated levels will use new enums too) 13:10:25 works fine there 13:11:24 I guess I'd specifically test a transfered level that places all affected trap types 13:11:29 see if the traps still trigger properly? 13:12:11 but I can't really think of general issues beyond save compat working 13:13:49 hm, well going from new save to old crawl will crash 13:14:35 yeah, no, specifically meaning generating a level with relevant traps in current crawl, transfering that save to crawl with your trap changes 13:14:51 right, sure, that works 13:14:52 and seeing how that transferred level works; do its traps still work properly etc 13:15:45 one small thing is checking that objstat can handle the feature counting of traps properly 13:16:05 as I recall it had to do something to count those originally, since they got grouped oddly 13:16:19 actually, I might just be remembering undiscovered vs discovered trap counting 13:16:24 which is no longer a thing even now 13:16:44 Unstable branch on crawl.akrasiac.org updated to: 0.25-a0-783-g0e9e85f (34) 13:16:50 so probably objstat can count your split up traps just fine 13:17:17 sometimes changes like this will break objstat and we won't fix it for a while, namely near release when I notice it's broken 13:17:53 I don't even know if our make test covers traps at all 13:18:11 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-783-g0e9e85fc21 (34) 13:25:17 hm, ok, transferring actually crashes if i'm in the ossuary 13:28:23 a new save loaded in an older version crashing is relatively common 13:28:33 so that would be ignorable 13:30:07 it's preventable by a minor tag increment but usually those are only used for cases where *upgrades* are version specific 13:31:15 where upgrades are version specific? 13:31:47 where the details of a save upgrade are conditioned on version somehow 13:32:14 i.e. not usually used for downgrades 13:32:29 oh, I see 13:33:37 I guess in a situation where a version happened to have no minor tag increments at all we might want to increment so that people don't try to accidentally downgrade their saves between stable releases 13:33:45 but that never happens 13:35:39 makes sense 13:41:06 Hello guys. I've recommended to come here for showing my sprite suggestion for curse skull. 13:41:51 man, all this marshalling code is horrendous 13:42:37 i mean, it gets the job done, but if you have to deal with desyncs, it's pretty rough; seems there's very few markers for desync detection 13:43:32 * aidanh wouldn't mind switching to something like protobufs for crawl saves 13:45:29 if by desync you mean the kind of error that's detected by the CANARY stuff AFAIK that hasn't happened in practice in a live game during the time I've been a dev 13:45:39 kormed yes feel free to post an imgur here :-) 13:46:42 though normally for anything other than immediate feedback you might consider putting up a github issue with the sprite as I mentioned in ##crawl 13:50:31 the (un-)marshalling code is not generally fun, and not always easy to modify, but I would say it is fairly solidly at a local maxima in terms of reliability when left to its own devices 13:51:51 there was actually some discussion of protobufs ~ 5 years ago or so 13:52:27 huh, I should look that up 13:53:39 well, one thing I don't like about it is that there aren't any tests for it, but that goes for most of crawl 13:53:55 <|amethyst> My impression was that protobufs don't really solve anything regarding save compat, since missing attributes would still be a thing, though possibly they would make parts of the code simpler 13:54:29 i think the thing it would improve is that currently marshalling and save-compat code is tangled together 13:55:34 we can solve that by incrementing the major version :D 13:55:58 <|amethyst> Incrementing the major version? In this day and age? Heresy! 13:57:17 heh, well, switching to protos would also require a major version bump 13:57:17 The build failed. (trap-features - 7734946 #13041 : Aidan Holm): https://travis-ci.org/crawl/crawl/builds/675837962 13:57:17 so just bumping is probably easiest 13:57:17 <|amethyst> it requires more than that 13:57:34 installing protoc on every server... ok forget it :) 13:59:55 hm; so i'm hitting a desync while deserializing the ossuary with new trap feat enums 14:00:14 !source tags.cc:5973 14:00:15 https://github.com/crawl/crawl/blob/master/crawl-ref/source/tags.cc#L5973 14:00:57 it's happening somewhere in unmarshallMapCell(), and of course there's no canary inside this nested for loop, and it's impossible to add one without breaking save-compat 14:09:54 A guess: feat_is_trap returns false now on DNGN_TRAP_MECHANICAL because you removed the relevant line from feature-data.h 14:10:06 this check here: https://github.com/crawl/crawl/blob/master/crawl-ref/source/tags.cc#L5301 14:10:14 conditionally reads a byte depending on the result of that call 14:11:07 yeah, good guess 14:11:09 so when upgrading, I suspect it doesn't read the trap type byte for anything stored in a map with DNGN_TRAP_MECHANICAL 14:12:05 seems maybe ok from reading the code to just keep that line in feature-data.h? 14:13:35 that does indeed fix it 14:14:02 or to do explicit save compat and fix up the feature when upgrading a save, but maybe that's overkill (especially if it's fixed up on a save anyways) 14:15:31 there's no on-save fixup at the moment 14:15:52 there's just support for both old and new features, and newly generated levels will use the new features 14:17:54 03Aidan Holm02 07[trap-features] * 0.25-a0-772-ga3a2368: Add individual feature types for mechanical traps (#12170) 10(2 hours ago, 8 files, 98+ 3-) 13https://github.com/crawl/crawl/commit/a3a2368de415 14:17:54 03Aidan Holm02 07[trap-features] * 0.25-a0-773-g5e1aaef: Split teleport trap feature in two (#12170) 10(2 hours ago, 6 files, 12+ 3-) 13https://github.com/crawl/crawl/commit/5e1aaef2cb0e 14:32:25 -!- Raichvent_ is now known as Raichvent 15:03:08 The build is still failing. (trap-features - 5e1aaef #13043 : Aidan Holm): https://travis-ci.org/crawl/crawl/builds/675874599 15:07:38 I think that's just something that was fixed in trunk 15:16:31 oh, if trap stuff is being worked on i'd suggest that it might also be a good time to get rid of mechanical traps entirely? are they used anywhere outside of ossuaries even? 15:20:21 i guess some sprints it looks like, but i don't see them being particularly vital there either 15:20:43 I forget, are pressure plates a mechanical trap subtype 15:20:54 We'd lose the basket of spiders / klown kar! 15:23:28 i guess i mean all the direct damage traps in particular being the thing that should be removed, nets are more reasonable to keep around probably 15:36:39 and yeah it looks like pressure plates are technically mechanical too, i guess i'm a little biased against them because i remember a bunch of vaults that misused them, i think these days they're rarer and used more responsibly though 17:03:36 advil: letting you know I did contart greensnark finally about those Sequell updates, so hopefully we'll hear back from him in a the next few days 17:03:45 in case any more questions about that come your way 17:21:33 03advil02 07* 0.25-a0-784-gde7f6e4: Update credits 10(14 minutes ago, 1 file, 6+ 5-) 13https://github.com/crawl/crawl/commit/de7f6e42b9db 17:23:09 Lutefisk (L19 NaWr) ASSERT(mgrd(mons->pos()) == s) in 'show.cc' at line 275 failed. (Snake:4) 17:25:40 oh, I sort of messed up clan there 17:27:29 03advil02 07* 0.25-a0-785-gb22c70e: Fix a typo 10(45 seconds ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/b22c70e85985 17:32:37 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-785-gb22c70e859 (34) 18:03:42 -!- jfcaron_ is now known as jfcaron 18:23:13 Unstable branch on underhound.eu updated to: 0.25-a0-785-gb22c70e859 (34) 18:30:36 I agree that we could lose mechanical traps for ossuaries, but we'd want to rework some of those maps 18:30:45 maybe that's not such a large project that I could do it for this release 18:32:01 which, speaking of release, how is everyone feeling about the timing of that? sooner rather than later works for me timing-wise, in terms of running tournament 18:59:23 I'd like to get a big more miscast tuning done. I guess charms and necro could wait because they're still big projects 19:43:14 -!- misha is now known as werekitten 19:44:12 I'd like to do something about the CAO disk space issue before the next tournament, I'm not sure it'll make it if we don't deal with that 19:44:12 where something is either deleting ttyrecs or offloading them somewhere else 19:44:29 yeah, I ask only because it's been... 19:44:33 %git 0.24.0 19:44:33 07advil02 * 0.24.0: Update debian changelog for release 10(6 months ago, 1 file, 5+ 0-) 13https://github.com/crawl/crawl/commit/a7d21def0a8b 19:44:58 CAO disk space definitely sounds high priority to deal with 19:45:18 miscast tuning could probably be safely done in the usual feature freeze/beta timeframe 19:45:27 especially since that's a merged feature 19:46:25 if for some reason we do have to push it to mid march, if there's a problem for me coordination-wise, I think advil might be ok with running the scripts from e.g. CDO 19:46:31 since we've done that successfully last two times 19:46:44 only major issue with that is git https is still broken 19:47:06 git https? 19:47:15 which we might be able to get Napkin to fix or we could switch to ssh or we could do manual copy like I did last time 19:47:26 git https operations fail due to cert issue specifically with git 19:47:30 ah 19:47:32 also I guess it would be good to have sequell working before a tournament 19:47:50 yes, only sent that email last night; snark usually gets back by/on the weekends 19:48:05 I wonder if we can get alexjurkiewicz's product script in place by the release, which would make the release build process ~magical~ 19:48:55 is our project ready for...dare I ask worthy of....magic 19:49:40 automating more of release builds does sound nice, not that it's all that much work 19:51:02 !kw newmiscasts vlong>=6f2fc6eb8 19:51:03 Defined keyword: newmiscasts => vlong>=6f2fc6eb8 19:51:05 er 19:51:07 %git 6f2fc6eb8 19:51:07 07ebering02 * 0.25-a0-768-g6f2fc6e: Nameless horror tile (CanOfWorms) 10(3 days ago, 3 files, 2+ 1-) 13https://github.com/crawl/crawl/commit/6f2fc6eb8cf2 19:51:16 !kw newmiscasts vlong>=0.25-a0-768-g6f2fc6e 19:51:17 Defined keyword: newmiscasts => vlong>=0.25-a0-768-g6f2fc6e 19:52:28 !lg * newmiscasts ckaux~~miscast s=ckaux 19:52:29 4 games for * (newmiscasts ckaux~~miscast): miscasting Iskenderun's Mystic Blast, miscasting Mephitic Cloud, miscasting Static Discharge, miscasting Summon Ice Beast 19:52:49 did that set ckaux before? 19:53:04 yes 19:53:14 not sure for how long in crawl history it did so, but 19:53:19 !cmd miscaster 19:53:19 Command: !miscaster => .echo $(!lg ${1:-.} kaux~~miscasting s=kaux title:"Miscasts that have killed ${name}" pfmt:"${child}" stub:"${name} has never been killed by a miscast.") 19:53:42 !lg :gammafunk ckaux~~miscast 19:53:43 3. gammafunk the Caller (L6 HESu of Sif Muna), killed by miscasting Summon Ice Beast on D:7 on 2014-12-12 23:51:54, with 322 points after 2897 turns and 0:25:41. 19:53:47 !lg :gammafunk ckaux~~miscast -2 19:53:47 2/3. gammafunk the Magician (L5 HEIE), killed by miscasting Throw Icicle on D:4 on 2013-09-22 18:23:25, with 325 points after 1514 turns and 0:11:17. 19:53:50 !lg :gammafunk ckaux~~miscast -3 19:53:51 1/3. gammafunk the Insei (L6 OpTm), killed by miscasting Ice Form in Sewer (sewer_kobolds) on 2012-12-15 09:50:09, with 418 points after 5186 turns and 0:25:49. 19:53:55 hrm, it's tricky, too 19:54:06 I have a death to an executioner from a miscast 19:54:22 !lg :gammafunk killer~~executioner D 19:54:23 1. gammafunk the Caller (L6 HESu), slain by an Executioner (created by miscasting Summon Ice Beast) on D:7 on 2014-08-08 21:35:46, with 363 points after 3303 turns and 0:21:16. 19:55:03 so I guess you actually should check vmsg 19:55:22 !lg * newmiscasts vmg~~miscasting s=cikiller 19:55:23 Unknown field: vmg 19:55:26 !lg * newmiscasts vmsg~~miscasting s=cikiller 19:55:27 9 games for * (newmiscasts vmsg~~miscasting): 5x miscast, 4x 19:55:40 !lg * newmiscasts vmsg~~miscasting cikiller= 19:55:41 4. tommy14 the Gusty (L4 HuAE), killed by miscasting Static Discharge on D:2 (st_stairs_14) on 2020-04-16 15:54:41, with 63 points after 2689 turns and 0:14:24. 19:55:57 not sure why that is not setting cikiller if the others are 19:56:00 !lg * newmiscasts vmsg~~miscasting cikiller!= 19:56:00 5. dickylongcocking the Magician (L3 SpVM), succumbed to miscasting Ignite Poison's poison on D:2 (uniq_crazy_yiuf_cottage) on 2020-04-16 23:46:30, with 65 points after 2181 turns and 0:02:13. 19:56:07 haha 19:56:23 ebering: good logfiles you're making (assuming you changed this) 19:56:58 maybe it always did that 19:58:19 !lg lewtonia2 tewz d:4 19:58:20 No games for lewtonia2 (tewz d:4). 19:58:30 !lg letownia2 tewz d:4 19:58:31 28. letownia2 the Conjurer (L2 TeWz), blasted by Menkaure (nerve-wracking pain) on D:4 on 2018-03-08 20:34:04, with 20 points after 563 turns and 0:03:48. 19:58:47 !lg letownia2 tewz d:4 xl=3 19:58:48 9. letownia2 the Conjurer (L3 TeWz), slain by a gnoll (a +0 flail) on D:4 on 2018-03-06 07:11:59, with 56 points after 843 turns and 0:04:09. 19:59:10 I do wish the morgues would just print the gid sometimes 19:59:54 !lg * game_key=letownia2:cxc:20180205204213S x=vmsg x=cikiller 19:59:55 1. [cikiller=miscast;vmsg=succumbed to miscasting Mephitic Cloud's residual poison] letownia2 the Conjurer (L3 TeWz), succumbed to miscasting Mephitic Cloud's residual poison on D:4 on 2018-03-05 20:45:30, with 39 points after 536 turns and 0:03:14. 20:00:54 !lg dkfzotmxm devm d:7 x=vmsg,cikiller 20:00:55 1. [vmsg=succumbed to miscasting Venom Bolt's residual poison;cikiller=miscast] dkfzotmxm the Tainter (L8 DEVM of Vehumet), succumbed to miscasting Venom Bolt's residual poison on D:7 on 2019-08-17 05:56:55, with 1706 points after 7400 turns and 0:16:35. 20:00:57 so that's always been a thing 20:01:12 can also find them here: http://crawl.akrasiac.org/scoring/killers.html 20:01:26 just seemed like there's more deaths represented there than your query indicated 20:02:02 well, my query was for the newmiscasts kw 20:02:12 unless you're referring to another query 20:02:47 oh, I thought there was one without it 20:02:59 definitely seems like in the past only poison miscasts had any teeth 20:03:16 yeah, for me specifically, since I wanted to see what my matches were missing 20:03:25 well, summoning an executioner on D:7 is pretty bad! 20:03:38 I'd like to see the stats on all the miscasts though 20:04:14 if you just ctrl-f for miscast on the scoring page you get a pretty quick sense 20:04:31 there's also the miscast deaths from players who don't understand how the mechanic works 20:04:34 !lg Cesar21 d:1 dsfe cikiller=miscast 20:04:35 1. Cesar21 the Firebug (L3 DsFE), incinerated by miscasting Throw Flame on D:1 on 2017-03-30 16:25:43, with 65 points after 1938 turns and 0:15:41. 20:04:47 gammafunk: I didn't change the miscast logfile reporting 20:04:50 !newmiscastdeath 20:04:51 7. tommy14 the Gusty (L4 HuAE), killed by miscasting Static Discharge on D:2 (st_stairs_14) on 2020-04-16 15:54:41, with 63 points after 2689 turns and 0:14:24. 20:04:54 I did write down this command tho 20:04:57 !cmd newmiscastdeath 20:04:58 Command: !newmiscastdeath => !lg * newmiscasts ((ktype="wild magic" || killer="nameless horror")) $* 20:05:11 oh, hrm 20:05:18 that catches everything? 20:05:23 didn't think to look at ktype 20:05:55 yeah, miscasts have their on ktype 20:05:55 it doesn't catch hell effects which are "something" 20:06:27 !lg newmiscasts ktype=wild_magic s=ckaux 20:06:28 No games for newmiscasts (ktype=wild_magic). 20:06:44 !lg newmiscasts ktype="wild magic" s=ckaux 20:06:44 No games for newmiscasts (ktype='wild magic'). 20:06:50 doh 20:06:55 !lg * newmiscasts ktype=wild_magic s=ckaux 20:06:56 4 games for * (newmiscasts ktype=wild_magic): miscasting Iskenderun's Mystic Blast, miscasting Mephitic Cloud, miscasting Static Discharge, miscasting Summon Ice Beast 20:07:28 I'll have to make a little regexp_replace thing to count 20:07:57 there will be some bias due to popularity (since e.g. FE >>> IE/AE in that regards) 20:08:22 but looks like people getting poisoned to death was much more common for as relatively unpopular as VM is/was 20:08:34 !lg * mage won recent s=cls% 20:08:38 4287 games for * (mage won recent): 797x Wizard (18.59%), 648x Fire Elementalist (15.12%), 612x Earth Elementalist (14.28%), 444x Venom Mage (10.36%), 388x Conjurer (9.05%), 375x Ice Elementalist (8.75%), 352x Air Elementalist (8.21%), 347x Necromancer (8.09%), 324x Summoner (7.56%) 20:08:59 I guess wizard is a bit of a boost for poison, but that also definitely boosts fire as well 20:09:21 it's not even all that extreme, really, which is good 20:11:22 the past rank order at least for the more direct effects was spider form (201), meph (136), venom bolt (23), OTR (16), poison weapon (! 12), fireball (11), summon scorpions (11), sticky flame (10), and then it's into single digits 20:13:11 there must be at least some bias in what's getting reported there though 21:24:01 +advil | I wonder if we can get alexjurkiewicz's product script <-- product script? 21:24:17 oh, auto building releases? 21:24:19 yeah 21:25:00 so you'd like builds to be created for stable releases for the following platforms: {macos,win32}-{tiles,console} ? Any linux packages? 21:25:47 (actually, i'm not sure if the builds for windows are 32 or 64-bit. Github Actions installs mingw64... so they're 64-bit? 21:26:16 hm, we could try to drop win32 support again 21:26:45 package-source (at least the nodeps one) 21:27:42 ah yes 21:52:50 I want to say that mingw64 gets you both the 32-bit and 64-bit compilers 21:52:53 maybe that's not true 21:56:16 yeah, mingw-w64/eoan,eoan 6.0.0-3 all Development environment targeting 32- and 64-bit Windows 21:56:30 so if mingw-w64 is the package installed, you should have both 32-bit and 64-bit compilers 21:56:49 alexjurkiewicz: ^ 22:07:58 oh cool, so I could change CROSSHOST=i686-w64-mingw32 to CROSSHOST=i686-w64-mingw64 to build 64-bit? 22:21:48 alexjurkiewicz: yep, see the release docs to confirm, actually I can check 22:22:28 yeah: make CROSSHOST=i686-w64-mingw32 package-windows 22:22:41 is what we use for e.g. windows package 22:22:54 er 22:23:03 what you gave is not 64-bit, no 22:24:24 alexjurkiewicz: for 64-bit: CROSSHOST=x86_64-w64-mingw32 22:24:44 i686 is the way of saying "32-bit on a 64-bit machine" 22:25:02 it's confusing, but both targets use a suffix of mingw32 22:25:29 regardless of whether it's 32-bit or 64-bit; it's GNU/FSF terminology iirc 22:27:05 so to recap, for windows crosscompilation, make CROSSHOST=i686-w64-mingw32 for 32-bit and make CROSSHOST=x86_64-w64-mingw for 64-bit 22:27:44 I'm not sure about the need for 32-bit builds, as advil says; when I tried to switch to 64-bit only, windows people complained, not all of which were just windows XP users 22:27:54 we also build linux for both 32-bit and 64-bit presently 22:28:02 -!- werekitten is now known as misha 22:28:02 in that we make both debs 22:28:38 yeah the naming scheme for mingw-derived anything is seriously wtf 22:29:20 I heard something about Richard Stallman wanting all GNU stuff to refer to windows as "w32" no matter what, but I'm not sure how accurate that is 22:32:31 er 22:32:31 I like how my recap had a typo: it's make CROSSHOST=x86_64-w64-mingw32 22:36:38 hm, so I should not bother making 64-bit builds for windows? 22:36:54 if 32-bit builds work on all versions of windows, but 64-bit doesn't, that seems to be the sensible choice 22:36:59 not if you're doing 32bit 22:37:24 ok, gotcha. For Linux do you want any builds to be made except the tarballs? 22:39:04 the debian package process seems pretty manual, I might skip that. Especially since it doesn't get attached to the github release but uploaded elsewhere. Lots of secrets would be required 22:41:20 yeah, not sure how easy to automate that stuff is 22:41:37 tbh I don't really understand most of what that process even does 22:42:52 if anyone felt like writing a shell script or docker file that did all those instructions, it would be straight forward to integrate into github actions. But I'm not really keen to because I figure the number of people on linux using OS packaged versions must be quite low 22:53:34 well, most linux users would still be using packaged versions 22:55:57 most common support I see provided for linux users is to have maybe an official ppa and/or yum repository and then link to various unofficial repositories for other distributions 22:56:30 which is basically what we do already, we just host our own repo 22:59:51 I can probably look into getting the debian builds integrated into github actions when I have some time, I doubt it's too difficult 23:03:54 it's probably not necessary to use that cowbuilder stuff if we do switch to github for builds; the main reason for doing that, as I understand things, is to have an isolated build environment in a fixed location (the COW directory you create) 23:05:07 I'm guessing we'd switch to just running pbulider directly 23:12:56 someone might have already built an action to do this too 23:12:59 or a docker image 23:13:31 uploading to a PPA would probably be much easier than uploading to CDO too, FWIW 23:13:48 I wonder if the PPA infrastructure can build your package for you......... 23:20:22 where are we planning to upload the other builds made? will the github release system just host those? 23:20:29 maybe that was only an issue for daily builds 23:24:11 yes, those were using "github actions artifact storage", which has 500mb/repo total limit and 90 day TTL for files 23:24:29 releases have a limit of 2gb/file and no file or file age limits 23:24:37 https://help.github.com/en/github/administering-a-repository/about-releases#storage-and-bandwidth-quotas 23:33:03 here we go, automatic builds 😊 https://github.com/alexjurkiewicz/crawl-ref/releases/tag/0.50.10 23:36:12 is that version number just a test value? 23:37:07 yeah, any release where tag = release name = *.*.* will work 23:37:43 for source we've historically done txz files with and without contribs 23:37:50 would appreciate if someone can check the windows zips. The version and double-zip issues should be fixed 23:38:12 oh, and can the windows installer be added as well? 23:38:40 those source files are auto-generated by github. If desired, we can add another job to create versions with contribs 23:39:10 oh ok, so those 23:39:28 I'll add the installer 23:39:29 23:39:46 oops 23:40:34 just tested windows tile zip in wine, worked normally 23:40:42 yeww 23:40:43 had no internal zip file this time 23:40:53 btw if you want to test these yourself, wine is all I use 23:41:11 I guess it's better to test with actual windows, but I don't currently have a working VM 23:47:08 huh, another undocumented package -- nsis package required for makensis 23:47:30 yeah, we might not mention that in the release guide 23:48:34 not even sure where to mention it. The install.md file doesn't actually have a section for cross compilation 23:48:59 # You need to have NSIS installed. 23:49:05 well, we have a release guide 23:49:17 (which, tbf, is not exactly the right place) 23:49:18 frimble (L27 DsFi) ASSERT(!invalid_monster(&mons)) in 'mon-death.cc' at line 1710 failed. (Zig:7) 23:49:37 !souhttps://github.com/crawl/crawl/blob/master/crawl-ref/docs/develop/release/guide.txt 23:49:46 which, this document might become sort of obsolete, I guess 23:50:37 I think cross-compilation in INSTALL.md would probably only want to refer to the zips (or maybe not even that) 23:51:02 I suppose if it's cross-compilation, zips are helpful, but yeah maybe we don't need to talk about cross-compilation in INSTALL 23:51:16 that's more of a release thing than an "install crawl on your system" thing 23:51:43 (that comment I pasted is just from the Makefile if it wasn't clear) 23:52:21 oh, heh, I was wonderin 23:52:23 g 23:56:10 I've made a new sprite for curse skull and here is the link, https://imgur.com/a/3WVpIXf. 23:58:29 kormed: looks like a good start for a revamp; let me show it to our resident tile artist