Threaded Conversation in 6M62, a.k.a. Dependency Hell

In the midst of backwards-migrating my v10 WIP to 6M62, I ran into something I don’t get. This minimal file:

"Untitled_v9" by Philip Riley
Include Version 8/220120 of Threaded Conversation by Chris Conley.
Lab is a room. 

causes a compile error:

Problem. In row 5 of 'Table of List Style Assignments', 
the entry 'null' is the name of a kind of value, 
so it can't be the name of a new object.

That’s in version 9 of Complex Listing by Emily Short. Removing Threaded Conversation solves the problem.

It’s surprising to me that this wasn’t mentioned somewhere on IntFiction if it’s indeed the case, so I’m wondering if somehow my versions got scrambled? I see 8/220120 as the latest TC, and v9 as the version of Complex Listing included with both the 2019 release and the latest 2022 release of the IDE. I’d be really grateful if someone could verify/refute this. Thanks in advance!

1 Like

Hmm, not sure if it’s helpful, but the issue doesn’t crop up for me. I’m using I7 6M62 (IDE release from 2021-11-29), and these extension versions:

Threaded Conversation version 8/220120 by Chris Conley (modified from Threaded Conversation by Emily Short and based on Alabaster by Emily Short, et. al.)
Basic Screen Effects version 7/140425 by Emily Short
Complex Listing version 9 by Emily Short
Conversation Framework version 12 by Eric Eve
Epistemology version 9 by Eric Eve

Both a minimal example and the “Blackened Blue” example from TC’s docs compile and seem to work as intended.

Just in case there could be some mix-up where code might differ despite having the same version number, I’ve attached my local copies of the extensions, in order to be compared/diffed, or to be unzipped into the <yourproject>.materials directory to be used as project-specific extensions as per §27.3 in the docs (which would also make sure that Inform is not maybe pulling some other version of an extension from an unexpected place during compilation).

Extensions.zip (63.4 KB)

2 Likes

Thanks for verifying that it should work. It helped me narrow the problem down to the true cause: edits for Figures.i6t and LoadFigures.i6t used by @Dannii’s Data Structures conflict with Complex Listing. It had nothing to do with Threaded Conversation except that TC includes CL.

Now I’m in a tricky position. My IFComp 2022 game uses Data Structures, so I need the edited v9 IDE to update it, but to work on my current WIP (which requires v9.3 unless I want to learn lots of I6) requires a pristine v9 IDE. :man_facepalming:

Thanks again!

1 Like

If I read that correctly, you have Data Structures’ Figures.i6t and LoadFigures.i6t in your “external” (shared across projects) I6T directory. You can create an I6T directory under the .materials directory of your IFComp 2022 game project and move those two files there (and I meant move, not copy: they must no longer be under the external I6T dir), and then both projects will be happy.

3 Likes

Ah, I didn’t realize we could customize I6T per project. Thanks!

Yup, besides Extensions, one can have project-specific Templates or I6T dirs. Not sure about Languages. And I don’t think it does anything useful to have Figures or Sounds under the external dir; I think those are only meaningful under a project’s materials dir.

(I6T is 9.3 only. I’d guess that an Inter dir would work the same way for kits in v10.)