Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Repository maintenance #1222

Open
crosire opened this issue May 13, 2023 · 7 comments
Open

Repository maintenance #1222

crosire opened this issue May 13, 2023 · 7 comments
Assignees

Comments

@crosire
Copy link
Collaborator

crosire commented May 13, 2023

I don't currently have the resources and motivation to actively maintain this repository, and also haven't contributed many changes recently. That award most certainly goes to @kagikn. Plus I generally agree with all those changes, as such it IMHO makes sense to give @kagikn full decision power on pull requests and releases, without having to wait for my approval (I'd just like to reserve participation in changes to the ScriptDomain core). That way this project is less hindered by slow response times from myself. So please feel free to go ahead with changes without me chiming in if you want!

Note, that I think it would also make sense to change the release creation authentication token to this end, so that new releases are credited to the correct user:
https://github.com/crosire/scripthookvdotnet/blob/52ef1866141c6368b68d31ca776e3cbaae9ff879/appveyor.yml#L40

@kagikn
Copy link
Member

kagikn commented May 13, 2023

I appreciate the explicit approval, which enables me to change APIs (most likely new additions) without the explicit approval of @crosire ! For those who don't know who have created releases, they are @crosire between v0.1 and v3.1.0, and @kagikn (me) since v3.2.0.

Maybe I might not be actively adding new features after v4 is released and I would be creating a new variant against .NET 7+ then (I don't like the kind of too short 3 year support even with LTS, but too many great changes to bear). I know of ScriptHookVDotNetCore by @Sardelka9515, but I think a new variant deserves brand new APIs since there's a lot of features only available in .NET 5+ .NET Core, such as Span.
Maybe I would create a new variant for RDR2 because ScriptHookRDR2DotNet by Saltyq (the original variant) and Halen84 (a owner of one of the fork variant) doesn't make much attention and few script developers bother to use it while a lot of script devs (have to) create scripts using the API of ScriptHookRDR2 directly. I think SHRDR2DN deserves the poor attention because its scripting API may be changed without concrete rules like this repo would do breaking changes only in major version updates and new feature addition in API layers in minor version updates (assembly loading APIs in .NET check the major and minor version but not the others so makes sense a lot). Maybe not that powerful API prevents it from getting much attention (reminds me of v2.0 of this repo not having too many features that require direct memory interaction).

Still, I'd like to maintain this repository in bug fixes and new game version support (maybe performance improvement too) even if my primary motivation goes to other projects. I would appreciate bug reports by other people though, especially if some game update break some functionality or compatibility or some changes in this repository breaks something in unintended ways (we would say like "it's intended change" or "excepted changes" if we do change something in intended ways).
If I have to run my own business in real life because I can't find a job, maybe I would end up losing the resources to maintain this repo, but not happening yet at all.

@kagikn
Copy link
Member

kagikn commented May 14, 2023

I'm thinking of using GitHub organizations just like FiveM uses Cfx.re organization, what do you think? So relevant docs (and maybe new support tools?) can be shown as part of this repo.
If would be great if we could receive donation from generous people, but I don't have any ideas for its rewards. Man, I'm jealous of FiveM having more than 10000 patrons on Patreon.

I'm thinking of replacing AppVeyor with GitHub Actions since the build artifacts in public repo are not counted by storage limit (just one of reason I can imagine though), but your opinion is like? @crosire

Also, what about the download page on 5Mods? Without explicit permission, moderators on 5Mods won't allow to transfer ownership of uploads (maybe this is impossible due to how its system works though) or reuploading on another account. I wouldn't use the comment section on the SHVDN upload on 5Mods much if transfer has been done, but we should notify those who have a 5Mods account but won't bother to create GitHub accounts or watch the release page.

@crosire
Copy link
Collaborator Author

crosire commented May 14, 2023

I can look into doing an organization and transfering the repo there. Just a bit worried that existing links to this repository would break.
In my opinion you don't necessarily have to have rewards for Patreon if its made clear that development effort goes into the open source project and as such it's not that feasible to have have something limited to Patreons, instead it would just be a monetary way to say thank you (I do something like that for ReShade).

GitHub Actions makes sense I think. AppVeyor was used initially because GitHub Actions didn't exist back then. But it's now comprehensive enough that AppVeyor ahould no longer be needed. Just that like with the rest it would be effort to change it and so was easier to just leave things how they were for the time being.

The 5Mods download page can't be transferred according to them unfortunately. My account there got compromised a while back because I hadn't properly secured it and while that was all resolved with the mod team using a new one, the old banned one was renamed and archived, but still holds ownership of the SHVDN page and for technical reasons it can't be transferred to the new one apparently. So I can't update that anymore either. And I didn't want to create a new one and lose all history.

@kagikn
Copy link
Member

kagikn commented May 24, 2023

@crosire It would be great if a secret environment for NuGet API was configured for #1225 (probably an api key for GitHub releases should be configured as well) since I can't edit secret variables and I'm not a owner of NuGet packages of APIs or this repo if you don't plan to transfer the ownership to an organization (or me?).
I have an NuGet account with the same email I use to push commits, so you can invite me as a new owner of API packages. If I get an ownership, I would deprecate the package of v2 API to suggest script devs migrate to v3 (I see a lot of new scripts built against v2 even today).

@crosire
Copy link
Collaborator Author

crosire commented May 26, 2023

Invites are sent. Project was also moved to an organization now (old links continue to work).

@kagikn
Copy link
Member

kagikn commented May 27, 2023

I appreciate the invitations for NuGet packages and the new organization, but there are more things I want to ask you for. I should have realized these before asking though.

  • May I have my admin role for this repo? So I can switch the CI to GitHub Actions and publish NuGet packages via GitHub Actions without worrying about exposure of NuGet tokens. Looks like I can publish new releases with my personal token, but I need to grab an admin role before I can configure GitHub Pages (in case I create official pages of SHVDN), Webhooks, more options for GitHub Actions and a NuGet token to store to secrets for workflows (of GitHub Actions). The status check for commits disappeared since the repo was moved to the new organization btw (AppVeyor builds still works though). I can't have issue templates more clear myself (like state you shouldn't write "latest" but should write a concrete version in the version section of Bug Report template), either. Forget the template format issue, I can edit issue templates with my member role.
  • May I have my admin role for scripthookvdotnet-nativegen? Or may I have my maintain (or write) access if it is unacceptable to let me have my admin role? I don't even have the write access for the nativegen repo now. Maybe good time for the project to migrate to new .NET (CoreCLR) variant. I can create a new repo for (a new) native generator within the organization, but that would lead people to confuse.
  • Lastly, may I be one of the organization owners of the organization (not just as a member)? If unacceptable to assign me as a organization owner because you think the admin role is too powerful for me, may I be a organization moderator so I can hide comments? You can do only few more things with your organization moderator role than a member role, so it would be appreciated if I got the permission to have a owner role for the organization.

I appreciate your hard work for SHVDN you have done, really. I feel like I should provide the contribution guide so more people will try to contribute to this project and I should provide another community (like, via Discord) btw. I applied for GitHub Sponsors for potential sponsors and I'm approved, so I can make any of money for my OSS work including SHVDN.

@crosire
Copy link
Collaborator Author

crosire commented Jun 1, 2023

@kagikn Should be fixed now (as in you should have the proper organization role now)!

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

No branches or pull requests

2 participants