Proposal: Sustainable Version Management for Godot Engine in V-Sekai

The Context

The continuous growth of upstream versions in the Godot Engine presents a challenge for the V-Sekai project. With finite resources and brainpower, keeping up with this “infinite” growth and its associated delays becomes increasingly difficult.

The Problem Statement

How can we manage the version growth of the Godot Engine more sustainably, focusing our limited resources on what matters most for our project?

Describe how your proposal will work with code, pseudo-code, mock-ups, or diagrams

We propose a sustainable approach to handle the version growth of the Godot Engine:

  1. Designing for Finite Funds: Instead of investing heavily in trying to keep up with every new version, focus on key updates that significantly impact or improve our project.
  2. Designing for Finite Performance: Prioritize optimization and performance over trying to incorporate every new feature from the latest versions.
  3. Designing for Finite Data: Be selective about the data we choose to update with each new version, focusing on what’s most relevant to our project.
  4. Design for Finite Brainpower: Invest in knowledge sharing and training to ensure our team can effectively work with the chosen versions of Godot Engine.

The Benefits

This approach will allow us to manage version growth more sustainably. It will also help us avoid unnecessary delays caused by trying to keep up with every new version.

The Downsides

We may miss out on some features or improvements introduced in the versions we choose not to adopt. However, by focusing on significant updates, we aim to mitigate this risk.

The Road Not Taken

Continuing to try and keep up with every new version of the Godot Engine, despite our limited resources.

The Infrequent Use Case

While our focus is on managing the version growth of the Godot Engine sustainably, there may be infrequent cases where we need to adopt a new version immediately. This could occur if a new version introduces a critical security patch or a feature that significantly benefits our project. In such cases, we will prioritize updating to the new version, even if it requires additional resources.

In Core and Done by Us

This proposal involves changes to our core version management practices and will be implemented by our development team.

Status

Status: Proposed

Decision Makers

  • V-Sekai Development Team

Tags

  • Version Management
  • Godot Engine
  • Sustainability

Further Reading

  1. V-Sekai · GitHub - Official GitHub account for the V-Sekai development community focusing on social VR functionality for the Godot Engine.
  2. V-Sekai/v-sekai-game - The GitHub page for the V-Sekai open-source project, which brings social VR/VRSNS/metaverse components to the Godot Engine.
  3. Coding for a Finite World - A blog post discussing the need for sustainable coding practices in a finite world.

This proposal was assisted by AI assistant, Aria.