godot-4-importality icon indicating copy to clipboard operation
godot-4-importality copied to clipboard

Add a simple Godot project

Open benblank opened this issue 1 year ago • 4 comments

While developing #37, I found it very helpful to have a Godot project set up for the addon. Not only does this allow the addon to be easily opened in the Godot editor, it also allows external editors (e.g. Visual Studio Code) to use Godot as a language server.

The project file is configured with compatibility with Godot 4.0 (so that Importality's supported versions of Godot don't change) and the .godot cache directory is ignored by Git.

benblank avatar Nov 18 '24 19:11 benblank

Thanks again! I'll check and add your code tomorrow! The main thing is that there are no conflicts with the client project code when installing the plugin.

nklbdev avatar Nov 18 '24 21:11 nklbdev

The main thing is that there are no conflicts with the client project code when installing the plugin.

Oh, right. :facepalm:

I'm not sure how the plugin packaging works, but I already get conflicts when installing the current version from the Asset Library (e.g. README.md and icon.svg) so I didn't really make the connection. But I imagine conflicting with project.godot is potentially much worse! Or maybe just not possible? It definitely warrants testing.

benblank avatar Nov 19 '24 04:11 benblank

When installing a plugin from Godot Asset Library, a user can choose which files to install and avoid conflict. I'll check everything, don't worry!

nklbdev avatar Nov 19 '24 08:11 nklbdev

I've been rolling this around in the back of my head and I think the best option might be to introduce a "packaged" distributable for the addon. That way, the files at the top level of the project could be whatever they need to be, but would be removed (or relocated) during packaging.

Would you be interested in a PR for a GitHub Actions workflow which does that? I figure it could automatically trigger when you tag a new release and would create a zip file containing only the addons directory, but with the LICENSE* and README* files moved into addons/nklbdev.importality. That way, when users install the addon from the Asset Store or by downloading the package and expanding it into their project, they wouldn't have to worry about conflicts at all.

benblank avatar Dec 04 '24 00:12 benblank