EpochModTeam / Epoch

Epoch Survival Game Mode for ARMA 3
http://epochmod.com/
Other
91 stars 82 forks source link

case sensitivity issues with linux #1024

Open tux-box opened 1 year ago

tux-box commented 1 year ago

I've noticed that case seams to be inconsistent, pascal case, camel case, all caps, I've been using a script internally to lowercase everything and that seams to be working but it's an extra unnecessary step. I admit I'm not as familiar with arma3 modding but if it wouldn't cause a complete rework, could the team re-case all files to lowercase?

morgoth0 commented 1 year ago

Unlikely, most mods have this issue for Linux...

tux-box commented 1 year ago

I made a fork of everything as lower case for testing. https://github.com/tux-box/Epoch I'm still learning a lot about git and this kind of development, I come from a different discipline. you can compare the changes and if this doesn't break anything then feel free to pull request/merge what ever.

morgoth0 commented 1 year ago

Why on Earth are you changing all file names that would be in the pbos to lower case?

morgoth0 commented 1 year ago

And now I think of it, all Epoch's PBOs are lowercase anyway, which means they are fine. All that matters is that the case of the mod folder names match what they are named in ARMA's root folder and that the mission file name's case matches what is called in server.cfg

tux-box commented 1 year ago

And now I think of it, all Epoch's PBOs are lowercase anyway, which means they are fine. All that matters is that the case of the mod folder names match what they are named in ARMA's root folder and that the mission file name's case matches what is called in server.cfg

Are you referring to the files listed here: https://github.com/EpochModTeam/Epoch/tree/release/Server_Install_Pack/mpmissions because these file are not lowercase or were you referring to these files https://github.com/EpochModTeam/Epoch/tree/release/Server_Install_Pack/%40epochhive/addons ? Either way a simple change would fix it, I'm happy to do the work.

I'm aware of the case sensitivity issue :) I even made a issue and a fork with the work completed. :) I've not tested the fork yet as I've been dealing with some other higher priority issues but I plan to.

morgoth0 commented 1 year ago

As I said, the only thing that Linux cares about is the mod folder and pbo names. They are all lower case other than the mission files for Epoch (historically Epoch uses the case that the map itself uses).

The contents of the pbos themselves do not require any case changes.

morgoth0 commented 1 year ago

Though yeah, on Linux the ryan spawner is also mixed case... forgot about that one (bad He-Man not following the lower casing of all the epoch pbos ;) )

tux-box commented 1 year ago

As I said, the only thing that Linux cares about is the mod folder and pbo names. They are all lower case other than the mission files for Epoch (historically Epoch uses the case that the map itself uses).

The contents of the pbos themselves do not require any case changes.

I'm not entirely sure, honestly but if the script I used to handle case change also changed the stuff on the inside it might be an issue, otherwise it would have ignored those files. Regardless, it's worth testing and seeing as I've already done the bulk of the work its down to spooling up the thing on both os's to make sure there's no lingering issues I didn't think of(I'm not an app developer). I can do another branch with just the the changes you believe need to be made. Make a list and I"m happy to do the work. :)

morgoth0 commented 1 year ago

I can guarantee that the contents of the PBOs do not require any changes. Linux itself has no idea what's in the PBOs neither does it care.

At the end of the day, up to the devs, but you're suggesting changes simply so that you don't have to lower case two file names, the ryan spawner and the mission file used on the server... and you'd still have to lowercase files if you add other mods

tux-box commented 1 year ago

I can guarantee that the contents of the PBOs do not require any changes. Linux itself has no idea what's in the PBOs neither does it care.

At the end of the day, up to the devs, but you're suggesting changes simply so that you don't have to lower case two file names, the ryan spawner and the mission file used on the server... and you'd still have to lowercase files if you add other mods

I didn't think it would be a big request requiring a lot of work, considering I was able produce the work in an afternoon and I've barely got any app development experience. Seeing as the work has been done on another fork, I'll leave it to the dev's to determine if it's worth a merge. It just needs testing at this time, I hope to get to that today.

As for the contents of the PBO's, I'll step aside on that as I honestly don't know. I've had to fix a few issues inside pbo's(historically) tho and If what I've been seeing so far holds up so far I'll be doing more so I approached it with a "all or nothing" fix(right or wrong), I'll update accordingly.

As for the number of files, while I concede that only 2 files are ever in current use, It would be more of a time saver to hit them all once with a script. This way map changes can be done easily.

As for other mods, you are correct those would have to be renamed as well, but including those mods would be by choice and case issues would be an issue on that mod not epoch.

I'd like to know of any app development/technical reasons against the case change. We've gotten a bit off into the weeds at this point, as I've already done all the renaming on a fork but I've not tested the fork yet. It's on my to do. At this point it's an discussion about preference rather than a technical/app development discussion and has stalled any movement. :)

morgoth0 commented 1 year ago

Well you created a fork that lower-cased all the file names in sources rather than just the server install pack. That was my point of contention. Internally ARMA operates in an all lowercase environment except when doing things like string comparisons, which is why changing the names of all the scripts inside the pbos is pointless.

I have no feelings either way about lowercasing the files in the server install pack but would object to renaming everything in sources personally.

tux-box commented 1 year ago

Well you created a fork that lower-cased all the file names in sources rather than just the server install pack. That was my point of contention. Internally ARMA operates in an all lowercase environment except when doing things like string comparisons, which is why changing the names of all the scripts inside the pbos is pointless.

I have no feelings either way about lowercasing the files in the server install pack but would object to renaming everything in sources personally.

Thank you. The fork is a lowercase copy of Epoch:Release. It got everything, i hoped. (that appears to be the wrong train of thought, noted, will correct) I'll make some corrections, I don't necessarily need to mess with the sources. Might just remove a few of the other items just to be on the safe side.

morgoth0 commented 1 year ago

To be helpful here, you don't need to change anything in Server Install Pack cause that's autogenerated when AWOL builds the release. In sources you just need to change the folder name for Epoch_server_RyanZ_Spawner and the folder names in sources/mpmissions for those folders that are mixed case... That's it

tux-box commented 1 year ago

Thank you very much for that, I'll do just that.

morgoth0 commented 1 year ago

Nothing inside those folders needs touching. Also you need to make sure you are editing Experimental branch not Release

tux-box commented 1 year ago

Nothing inside those folders needs touching. Also you need to make sure you are editing Experimental branch not Release

Sure thing. Like I said I'm rather new to app development and working with teams remotely. So lots to learn but I do want to contribute something useful. right now I'm working on this from app as a service point of view using containers, getting that base environment setup now.

tux-box commented 1 year ago

I completed the changes per request. https://github.com/tux-box/Epoch Let me know if this matches more what you were thinking. I'm still trying to get used to and learn git. EDIT: looks like my comment went global, well ignore it as it's obvious that it didn't apply in every case.

morgoth0 commented 1 year ago

Looks fine. Unfortunately, as I mentioned, you need to fork and edit the Experimental branch not Release though...

morgoth0 commented 1 year ago

No changes are made to Release branch only Experimental

tux-box commented 1 year ago

Looks fine. Unfortunately, as I mentioned, you need to fork and edit the Experimental branch not Release though...

Honestly tried to do that, I'm learning git as I go and couldn't for some reason get it to talk to Exp branch. I'll try again at some point, kinda frustrated with git at this time.

tux-box commented 1 year ago

Well here here we go, spent most of the afternoon learning git. Still don't know if i did it correctly. but I got exp branch updated and did a pull request. Figures crossed, I didn't make someone's day worse.

morgoth0 commented 1 year ago

You added new folders, you need to rename the old ones only...

tux-box commented 1 year ago

I'm starting to hate GIT. those "extra files" are not on my local copy. I yield to your git experience, can you offer some feedback?