Coder Social home page Coder Social logo

mcdelta-python's People

Contributors

williambl avatar valiec avatar waffle-iron avatar dependabot[bot] avatar

Stargazers

 avatar taylor avatar  avatar

Watchers

Andrew Larcombe avatar James Cloos avatar  avatar  avatar taylor avatar

mcdelta-python's Issues

Development

Hey there, I would like to help development. Languages I know are English ( :P ), C#, Lua and Java, but not Python. I could possibly do a remake in one of those languages. Thanks! -LewisTehMinerz

'output' arg in many functions

Many functions have an 'output' argument which, if true, prints the output as well as returning it. I feel like this just clutters the code a bit, and doesn't really fit with the idea that a function should do one thing only.

This issue is for discussion of whether or not they should be removed, and is the first in a few issues I'm going to make regarding the problem of 'code smell'.

sources folder?

All the files are currently just lying in the root of the repository. This makes it a little bit cluttered. Should the .py files be moved into their own folder, such as src?

Request transfer of repo

Hey there. I just made a quick organization for this project. Transfer the repo to me, then I'll transfer it to the CMAN organization.

-LewisTehMinerz

What should we call 1.1?

It needs to fit the pattern of 'Adjective/Verb' 'Noun', both beginning with B.

eg: Big Baboon
Bouncing Ball

PEP8 compliance

My IDE complains quite a bit about PEP8 compliance in the project, mostly about minor things like spacing. In the interest of code readability, should the project be PEP8 compliant? If it's agreed so, I can run the cleanup tool and have it all done.

GUI does not resize properly

When you resize the window, the GUI elements don't resize with the window, but stay the same size while a blank space forms around them.

Modrinth

I forgot about this (lots of stuff in the LOTRMod addon world), but there's a new mod site: Modrinth. It has 5600 mods on it, including such mods as my own DeeperCaves, Origins, Sodium, BuildCraft, JourneyMap, Galacticraft-Legacy (aka 1.12 Galacticraft), CC:Tweaked, OpenComputers, etc.

It has an explicitly open, and documented API, getting around the whole "will CurseForge be alright with us using the API" uncertainty from before I had (which is why I paused and then forgot) (Overwolf CurseForge looks like a bit of a hassle now, they decided they want everyone to get specific approval for that, and idk how hard that is for something like that that would compete with their launcher).

Edit: Might be wrong about CF.

No name==main if-clause

The entry point of a python program is often in an if-clause with the condition if __name__ == "__main__". Should this be done in deltamc.py?

GUI?

Not much progress has been made at all in the past month - maybe a GUI could be added?

CMAN crashes on startup if LocalData dir not present

The issue is basically what the title says. It tries to chdir to LocalData when it isn't present, causing CMAN to crash.

Affects: 2.0.0 (and possibly earlier)

Also, maybe we should have a "critical" tag for things like this (e.g. CMAN won't even start).

Downloading archive fails

The error is urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749). I'm not sure what the problem is with.

Name and icon [Request for comments]

There's a bit of a problem with the name/icon of the program:

Name:

Icon:

  • The orange lambda seems a bit half-life. I think we should replace it with a delta, as delta is often used to signify change or difference - and one of the main things the program does is upgrade mods - changing them.

I'd like to get everyones input on these ideas - I'll add what everyone thinks to this table:

Username Program name Program icon
@LewisTehMinerz mcdelta/deltamc Impossible triangle of minecraft blocks
@randomtestfive deltamc Impossible triangle of minecraft blocks
@Valiec deltamc Grass block with a delta sign
@williambl mpm/mcdelta/deltamc Impossible triangle of minecraft blocks

Add support for exporting .modlist files

And then downloading from them. They should be like this:

{
"Modlist":["MinecraftForge","Endplus","SomethingElse","Anothermod"]
}

Assigning this to myself because I need to contribute more code.

Everything crashes on a clean install.

For some reason, on a clean install (i.e no config.json, no Data/ and no LocalData/) EVERYTHING goes wrong. Many missing variables etc. Fixing the problem now.

Install multiple mods at once

I'm thinking something like this (psuedocode):

if(command == "installm" OR command == "installmany"): #installm is short for installmany
    modslist = get_array_of_mods_given()
    for item in modslist:
        install(item)

Unnecessary mod update notices

When a mod is downloaded but not installed (e.g. because it is incompatible combined with #42), CMAN will print a message to the console saying that the mods have updates available, listing the "current version" and the "latest version" as the same version.

Error handling for downloads

If cman cannot download the mod archive for whatever reason it borks with a horrible message. Is it worth putting some more error handling around it?

Example borkage:
During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "CMAN.py", line 186, in
update_archive()
File "CMAN.py", line 38, in update_archive
with urllib.request.urlopen(url) as response, open(file_name, 'wb') as out_file:
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 162, in urlopen
return opener.open(url, data, timeout)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 471, in open
response = meth(req, response)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 581, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 503, in error
result = self._call_chain(_args)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 443, in _call_chain
result = func(_args)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 686, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 465, in open
response = self._open(req, data)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 483, in _open
'_open', req)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 443, in _call_chain
result = func(*args)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 1283, in https_open
context=self._context, check_hostname=self._check_hostname)
File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/urllib/request.py", line 1242, in do_open
raise URLError(err)
urllib.error.URLError: <urlopen error [Errno 8] nodename nor servname provided, or not known>

Add the ability to export modpacks in the Twitch export format?

For compatibility with Curse modpacks, maybe make it possible to import/export Twitch exports, since there are a lot of mod packs using these already? I don't mean getting modpacks from Curse (at least for now), I just mean that if you have a Twitch export file (either from Curse or from the Twitch launcher, you should be able to import it.

I wouldn't remove the current .modpack file feature though (at least until I'm sure it has no benefits over Twitch exports).

Travis build issue

When looking at pull request #46, I noticed that the Travis build was failing, but the issue doesn't look like it's the code itself, but something about how a rakefile is not found.

Could this be an issue with how the build is configured?

Full log at: https://s3.amazonaws.com/archive.travis-ci.org/jobs/278936762/log.txt?X-Amz-Expires=30&X-Amz-Date=20171002T205228Z&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJRYRXRSVGNKPKO5A/20171002/us-east-1/s3/aws4_request&X-Amz-SignedHeaders=host&X-Amz-Signature=d689fb2fbaf52f8703daf2c442333817adc330f142aee8574cb990d64d8cc50b

Selecting an instance in the menu then trying to install a mod causes glitchy partial instance switching

The issue is that if you have an instance selected (i.e. active) (I'll call it "InstanceA"), and you select another instance (I'll call it "InstanceB") in the menu but not actually select it with the select instance button, then install a mod, the mod list shown changes to match InstanceB, but the compatibility check still seems to use InstanceA.

There are probably other issues regarding this, but I haven't tested it further.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.