Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Russell Keith-Magee
    @freakboy3742
    @everettraven /me looks
    Russell Keith-Magee
    @freakboy3742
    @everettraven All looks good (well… hideously complex, but that’s Microsoft’s fault, not yours :-)
    And merged!
    Thanks for the contribution! If you’re looking for some more DPI related fun… if you can explain beeware/toga#710, that would be most helpful
    Jeff Smith
    @whydoubt
    In case I haven't mentioned it... beeware/voc#961 (iterable unpacking, fixes some of the DEXing problems) and beeware/voc#968 (round() improvements, fixes some test suit failures w/ Python 3.7) should be ready for review.
    Russell Keith-Magee
    @freakboy3742
    @whydoubt Thanks - I’ll put those on my list to look at today
    Russell Keith-Magee
    @freakboy3742
    @whydoubt Reviewed those two; round() is merged, iterable unpacking broadly looks good, but I’ve got a couple of small questions.
    Joetib
    @Joetib
    hello please can anyone share a link to a project they've done with Batavia. I would love to read some such project codes to learn from
    Seth Russell
    @magic-lantern
    @freakboy3742 - When you have a minute, I'd like to get your input on briefcase issue 210 - beeware/briefcase#210 ahter and I have been working on it together and want to finish it up. You had previously commented on the pull request - I believe that we've addressed those. What needs to happen to get the pull request included into briefcase?
    Russell Keith-Magee
    @freakboy3742
    @magic-lantern My sincere apologies - that PR has been on my todo list for weeks, and I keep getting buried by other things. I’ll take a look as soon as I get a chance.
    Seth Russell
    @magic-lantern
    no worries - I figured I had missed some step and wanted guidance
    jtrakk
    @jtrakk
    does briefcase's macOS target need to be run on a macOS system?
    Russell Keith-Magee
    @freakboy3742
    @jtrakk No. macOS’s app format is literally a directory structure convention, so it can be run on any platform, and the resulting application should work when moved to a macOS platform.
    (I put an asterisk on that in that I haven’t literally tested that this is true, and I haven’t confirmed if windows line endings might cause complications in the templating process - but in principle, there’s nothing “platform specific” about the macOS process on Briefcase).
    However, iOS can only be compiled on macOS; Windows can only be compiled on Windows; and Linux will in the very near future require Linux.
    jtrakk
    @jtrakk
    ok
    voltagex @voltagex waves
    Russell Keith-Magee
    @freakboy3742
    @voltagex Hi!
    So - Minecraft plugins
    Adam Baxter
    @voltagex
    Yes!
    Russell Keith-Magee
    @freakboy3742
    The first question: how familiar are you with the two tools that I mentioned on Twitter (VOC and Rubicon-Java)?
    Adam Baxter
    @voltagex
    I don't get the CPython one
    Is VOC a BeeWare thing?
    Russell Keith-Magee
    @freakboy3742
    Yes, on both counts.
    VOC will take Python source code, and compile it into Java bytecode
    So you end up with .class files.
    Adam Baxter
    @voltagex
    Never used it, but that's awesome.
    Russell Keith-Magee
    @freakboy3742
    It also means you can extend Java base classes, implement Java interfaces, and so on
    Adam Baxter
    @voltagex
    I'll need more help with the Minecraft side of it
    Russell Keith-Magee
    @freakboy3742
    That part I can’t help with :-)
    Adam Baxter
    @voltagex
    It's been so long since I used the decompilation stuff
    Russell Keith-Magee
    @freakboy3742
    But if you can find a “hello world” Java Minecraft plugin, I can show you how to convert that to Python.
    Russell Keith-Magee
    @freakboy3742
    The other approach is Rubicon - that takes the embedding route. It makes it easy (or… easier… :-) ) to use JNI to communicate between Python and Java runtimes
    Adam Baxter
    @voltagex
    Okay, will do. Probably starting at some point on Saturday
    I'll take a look at both
    Russell Keith-Magee
    @freakboy3742
    so you end up embedding the CPython interpreter as part of a Java C module, but then the Python bridge means you can access Java objects fairly transparently.
    Adam Baxter
    @voltagex
    Wonder if Flask would run there ;)
    Russell Keith-Magee
    @freakboy3742
    In Rubicon? Sure. In VOC… probably not.
    Rubicon is plain old CPython, in embedded mode.
    So any legal Python is still legal
    VOC would require an implmementation of the native parts of the standard libarry doing networking.
    Adam Baxter
    @voltagex
    So cool to see how far BeeWare has come
    dgelessus
    @dgelessus
    I wonder, does rubicon-java require CPython to be installed already, or is it sufficient to put the CPython native DLLs into the jar along with the rubicon-java classes?
    I'm asking because the usual installation process for Minecraft mods is "put this jar into this folder", possibly along with another jar as a dependency. Having to install a native dependency first would be very unusual.
    In any case, I'd guess that VOC would be the simpler option, because then the final jar would only contain regular class files and no special native dependencies.
    Russell Keith-Magee
    @freakboy3742
    @dgelessus I’m pretty sure they DLLs would need to be external - after all, they need to be picked up by the dynamic linker when the code runs, and the OS won’t have anything that can introspect.
    So yeah - it’s not going to lead to a very nice end-user experience… and I’m not sure it could be optimised all that easily
    The downside with VOC is that all you get is the language - you don’t get much of the standard library (at least, not at present)
    Whether that’s enough… kind of depends on your plugin, I guess :-)
    dgelessus
    @dgelessus
    I know of at least one other mod (https://github.com/mightypirates/opencomputers) that has a Lua interpreter as a native dependency, so it's not impossible to do. If VOC is not an option, it might be worth looking into how they handle their native DLLs.
    Russell Keith-Magee
    @freakboy3742
    @voltagex ^ Might be worth checking that one