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

Git Update for Template Projects #852

Open
Spokeek opened this issue Apr 27, 2024 · 7 comments
Open

Git Update for Template Projects #852

Spokeek opened this issue Apr 27, 2024 · 7 comments
Labels
completely new feature The label for features that is not exists in official VCC and we have to define the behavior enhancement New feature or request vrc-get cli vrc-get cli vrc-get-gui Issues for vrc-get-gui vrc-get-vpm vpm core module

Comments

@Spokeek
Copy link
Contributor

Spokeek commented Apr 27, 2024

Summary / 概要

It's something i though about for a while, when using template projects, it probably being updated or maintained from time to time, but as projects are static folders, you can't "update" them.

My use case was to clone the project in my template folder and run a git pull from time to time.

My idea is to see how we could do some kind of updating from within vrc-cli / ALCOM.
Be able to be suggested to update the template project when creating a new project on this template.

I don't know how technically we should do that, if we should store it in a different way, but i felt that could be an interesting additional feature that VCC doesn't have.

Purpose / 目的

This would allow to keep the template projects up to date when someone is actively working on it, or simply to keep the inner dependency up to date.

Additional context / 補足

The use case i have is my NDMF template project where i update the dependencies on the go.

https://github.com/Spokeek/vrchat-ndmf-template-project

@Spokeek Spokeek added enhancement New feature or request vrc-get cli vrc-get cli labels Apr 27, 2024
@anatawa12 anatawa12 added the completely new feature The label for features that is not exists in official VCC and we have to define the behavior label Apr 27, 2024
@anatawa12
Copy link
Member

It's unlikey to change the template project (except for something like default unity version and corresponding package updates) and it's almost unnecessary I think so I think this feature bring small benefits with big costs.

Could you explain the benefits for updating the project based on the template?

@anatawa12 anatawa12 added vrc-get-gui Issues for vrc-get-gui vrc-get-vpm vpm core module labels Apr 27, 2024
@Spokeek
Copy link
Contributor Author

Spokeek commented Apr 27, 2024

That would be i believe for this reasons:

The project template isn't a feature that is used that much.
And having more convenience for day by day avatar creation is always a plus, so i felt that could have been a direction to go towards to.

From that perspective, i'm mostly thinking of people not being used to avatar or world creation, and if someone creates a template, people may want to have this template evolve, the same way that we have packages that evolve with time.

I may be thinking too much ahead and planning a usage that isn't relevant yet, but that's what i had in mind.

The same way, having a system integrated to the project manager (ALCOM) would avoid the need to manually ensure that your project is up to date as it would notify you when it needs to.

My third point was to maybe add some additional feature that could improve the workflow of people that isn't available in the vcc tool and adds additional value to vrc-get/ALCOM

@JustBuddy
Copy link
Contributor

You can add your template as a project to VCC/ALCOM and directly update it. Templates are nothing more than finished projects that get copied over, really.

Meaning, you can update a template the same way as you would update existing projects.

If there was going to be an implementation for template updates, you would just trigger an "update all" of that template project and that would be it pretty much.

@Spokeek
Copy link
Contributor Author

Spokeek commented Apr 27, 2024

You can add your template as a project to VCC/ALCOM and directly update it. Templates are nothing more than finished projects that get copied over, really.

This is true and that's what i do for updating my template, but i was more thinking on the user perspective side.

They (probably) don't want to have to update their template manually by opening them.

@JustBuddy
Copy link
Contributor

Fair.
If we talk about a user facing feature though, we would also need full template management inside the GUI.
Just automatically updating on creation is not necessarily a good idea, we don't know if they got specific versions of packages in the template for a reason. And adding that to the creation flow sounds like a UI/UX headache to me, but maybe you got a good idea to make that work, without overwhelming people with niche options.

Templates are, even in VCC, treated more as a power user feature at this time.

I do like the Idea of a template manager though, that would be neat to have.

@Spokeek
Copy link
Contributor Author

Spokeek commented Apr 27, 2024

That's mostly why i made this as a discussion start point. There is probably a lot of edge case on how to approach the thing, but wanted to see if that was worth exploring.

@Sayamame-beans
Copy link
Collaborator

I'm also thinking about making the template feature more useful. (in #602 )
The intent of this(602) issue is to make it easier to create user-made templates. For more advanced users, the ability to specify version ranges with Semver is also envisioned.
It would be good to be able to edit the created templates later, so this is exactly the “template manager” we are thinking of (maybe?).
And finally, import/export via zip would make it very easy to share templates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
completely new feature The label for features that is not exists in official VCC and we have to define the behavior enhancement New feature or request vrc-get cli vrc-get cli vrc-get-gui Issues for vrc-get-gui vrc-get-vpm vpm core module
Projects
None yet
Development

No branches or pull requests

4 participants