Is GToolkit a Platform?

8 views
Skip to first unread message

Sean DeNigris

unread,
Jul 27, 2021, 10:42:52 AM7/27/21
to Metacello
I'm running into a bit of complication with code that is already loaded in GToolkit (but not Pharo) (e.g. XPath, XML-Parser, OSSubprocess) creating conflicts for users.

One option is to include an `#onConflict:` in the readme. However, this seems less than ideal because it doesn't cover being loaded as a dependency.

What I'm doing now is e.g.
```
spec
  for: #( #GToolkit )
  do: [
    spec removeProject: 'OSSubprocess'.
spec 
package: 'Tesseract' overrides: [ 
spec requires: (tesseractBaseDeps copyWithout: 'OSSubprocess') ] ]
```

However, it feels a bit like jumping through hoops. I'd rather add the requirement just on Pharo than remove it on GToolkit. The issue is that GT is a custom platform attribute.

So it occurred to me that one of two things would be helpful:
1. Make GToolkit a full-fledged platform (but not sure if there is a built in extension point for this
2. Say (pseudocode): `spec for: {{not GT}} do: ...`

Thoughts?

Dale Henrichs

unread,
Jul 27, 2021, 1:27:05 PM7/27/21
to meta...@googlegroups.com, Metacello
Sean,

You CAN define custom project attributes (see ConfigurationOf>>customProjectAttributes and [1])  ... implement #customAttributes in your BaselineOf and literally define #notGT based upon spelunking in the image at load time.

Dale

--
You received this message because you are subscribed to the Google Groups "Metacello" group.
To unsubscribe from this group and stop receiving emails from it, send an email to metacello+...@googlegroups.com.

Sean DeNigris

unread,
Jul 27, 2021, 2:07:06 PM7/27/21
to Metacello

You CAN ... implement #customAttributes in your BaselineOf and literally define #notGT 

OMG so obvious! Talk about overcomplicating :) That's perfect. Thanks. 
Reply all
Reply to author
Forward
0 new messages