pfirsich / jprof

Profiling library/tool for löve
MIT License
89 stars 6 forks source link

luarocks package missing #12

Open tarik02 opened 6 years ago

pfirsich commented 6 years ago

This is a löve library/tool and I am not aware of a lot of people that use luarocks with löve. Are you using it for löve? If yes, are the docs somehow unclear on how to use jprof?

tarik02 commented 6 years ago

Because I don't want to include third party to the game's source (e. g. repository).

MikuAuahDark commented 6 years ago

If you don't want to include third party then don't use this library and write one yourself. What you say is contradicting with what you're want to do.

This library is actually just not that big. You just have to put jprof.lua and MessagePack.lua then annotate your code like the readme says.

pfirsich commented 6 years ago

You may also include it as a git submodule, which is what I do for most of my dependencies.

tarik02 commented 6 years ago

@MikuAuahDark I mean I don't want to have in game repo ONLY code written by me and don't include any libraries as JUST code. Size means nothing.

I have all other dependencies with loverocks (luarocks for love), so I don't want to have this one as a white raven.

MikuAuahDark commented 6 years ago

I don't really understand what you want to say. Please use commas in your sentences. If I understand correctly, you only want your game repository to contain your code only? then use .gitignore file to the libraries. Admit it, that's not a good idea. If someone wants to try your game, they'll notice that they can't run it because the missing dependencies.

If you really worried about the files messed up, then make a new folder lib which contains all third-party libraries used in your game, then either just copy jprof.lua and MessagePack.lua to there or use git submodule as the author says.

Also again, what you want to do is contradicting with what you said. You said you only want your game repo to contain your game code only, so people may assume you have less space, but then you said again "Size means nothing". What you want to do sounds like a bad practice for me.

tarik02 commented 6 years ago

Sorry for commas, I amn't native english speaker.

I meant that I don't want to include any library code to game repository whichever size it is. I just want to do like it is in NodeJS world: when you want to get and run an application, you clone repository, run 'npm install' which installs all dependencies and its dependencies (recursively). So your code does not include any third-party. When you need to create something for production (for example single working JS file for website) you build all files into one with some bundler (webpack). I want to do the same: clone repository, run some command to download dependencies and then just put directory into .love file.

pfirsich commented 6 years ago

@MikuAuahDark thanks for trying to help, but I think I can handle this on my own. @Tarik02 I have been asking around and looking into it and I think I can solve this cleanly. I was a little concerned about löve being a dependency. I'll start working on it soon and will finish within a couple days at most.

pfirsich commented 6 years ago

https://github.com/Alloyed/loverocks/issues/20#issuecomment-415634341 It seems the newer versions of luarocks don't work with loverocks. And overall I don't have much use for it myself, so I am not convinced anymore that it's worth the hassle, sorry to have sparked false hope.

But if you were to make a rockspec file yourself and submit it as a pull request I would gladly merge it (assuming it's correct and nothing is weird). If you need help answering questions that are part of sub-problems, I am obviously willing to help too!

When I mentioned that there was a way to solve this cleanly, I meant using the love manifest: https://luarocks.org/m/love jprof requires 0.9.2 and up for the profiling library (jprof.lua) and 11.0 or 11.1 for the viewer.

MikuAuahDark commented 6 years ago

I just want to do like it is in NodeJS world: when you want to get and run an application, you clone repository, run 'npm install' which installs all dependencies and its dependencies (recursively).

Sorry, but this is not NodeJS. Also I believe people will be bothered installing luarocks just to run your game, most notably in Windows (except you don't want to support Windows, but you'll lose most of your playerbase).

tarik02 commented 6 years ago

People don't need to install anything. I just want to download dependencies before building love file.