Skip to content

Remove support for reloading extensions - #2568

Open
Headline wants to merge 3 commits into
masterfrom
h/no-reloaad
Open

Headline wants to merge 3 commits into
masterfrom
h/no-reloaad

Conversation

@Headline

@Headline Headline commented Sep 8, 2026

Copy link
Copy Markdown
Member

There are outstanding issues relating to extension loading / reloading. The feature is trivialized by meta reload - which is perfectly fine for iterating in development.

Existing extensions will need to be recompiled. Might be a good time for it considering recent V10 version. We can't simply stub everything out like I thought previously since third party plugins copied from our example would disregard UnloadExtension()'s return value. Leading to CExtension holding a dangling m_pAPI

AI Disclosure: Used an LLM to workshop, help find references in code, as well as update any documentation that needed changing.

@Kenzzer

Kenzzer commented Sep 8, 2026

Copy link
Copy Markdown
Member

Kudos on the AI disclosure. But unless I missed something, MMS doesn't have a meta reload command. There's meta retry but iirc this command is only for plugins that failed an initial load. So at the moment reloading sourcemod would involve

meta unload X
meta load sourcemod

Perhaps adding a command to unload sourcemod would be nice to have instead ? Metamod takes an ID to unload sourcemod, and I can sense this would become annoying during dev cycles.

sm unload
meta load sourcemod

would work out well, instead of having to find the ID of sourcemod through meta list, some sm extensions can bump the plugin ID numbers as well, so there's no reliable well to guess the ID other than checking. So I would introduce that command

@Headline

Headline commented Sep 9, 2026

Copy link
Copy Markdown
Member Author

Heh I saw a meta reload mentioned somewhere, can't say I actually checked! Yeah we'll definitely need to make that thanks for the note

@bottiger1

Copy link
Copy Markdown
Contributor

I am against this. If this gets merged I will maintain my own fork of sourcemod.

Doesn't seem like the author even uses reload given that he doesn't even know meta reload doesn't exist.

@dvander

dvander commented Sep 12, 2026

Copy link
Copy Markdown
Member

diffstat is great. pre-emptive lgtm pending MM:S reload command getting added on the 1.12 branch.

@bottiger1

Copy link
Copy Markdown
Contributor

I don't think any of you ever reload or even tested it.

Meta unload x, meta load sourcemod doesn't work either.

Not to mention how laggy it will be, and now you require every single plugin and extension to be built for reloading, which is way worse than the current situation.

@KyleSanderson

Copy link
Copy Markdown
Member

I don't think any of you ever reload or even tested it.

I did frequently, unloading and reloading is absolutely a valid feature, and one worth retaining.

Meta unload x, meta load sourcemod doesn't work either.

Yes, an ancient pain point. There were a couple PRs to help improve this, but it appears they were closed and hard deleted a couple hours ago by the author - which is a shame.

@bottiger1

Copy link
Copy Markdown
Contributor

reloading is absolutely a valid feature, and one worth retaining

The project owner and another maintainer seem to disagree and seeing how this PR is approved already yet any related to fixing reload had been sidelined, it seems obvious which way this project is heading.

I'm no longer concerning myself with this. I've already hard forked sourcemod so I don't have to worry about these things.

There were a couple PRs to help improve this, but it appears they were closed and hard deleted a couple hours ago by the author - which is a shame.

Not sure if this supposed to be a snarky reference to me, my PRs had nothing to do with meta reload, but they are still available on github, just remade the repo under an org.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants