GithubHelp home page GithubHelp logo

Proper packaging about caringcaribou HOT 4 CLOSED

caringcaribou avatar caringcaribou commented on May 30, 2024
Proper packaging

from caringcaribou.

Comments (4)

kasperkarlsson avatar kasperkarlsson commented on May 30, 2024

This might be a useful guide for certain types of scenarios, but simply linking a blog post without any explanation or motivation as a GitHub issue is quite unlikely to lead to major changes.

I have read through the post. Signing up for various third-party services (which I have no idea if they are useful for CAN communication, for example) and adding multiple dependencies (such as flit, black, coverage, flake8, mccabe, mypy, pylint, pytest and tox) seems to add limited value here. If you would like to share your thoughts on how this is applicable and useful for Caring Caribou, please let us know. Otherwise this issue will be closed.

from caringcaribou.

brainstorm avatar brainstorm commented on May 30, 2024

I think it's about having a systems and UX mindset to see the value of implementing what the blogpost proposes.

For instance, I know folks that have had difficulties installing and operating your package. Implementing what's described in the blog will completely eliminate that problem because installing your package becomes as familiar as the C UNIX dance:

tar xvfz package.tgz && ./configure && make && make install

Or having a similar view on automotive context: having the correct connectors between modules in a car facilitates installation and interoperability, right?... or do you just peel and solder cables?

Deviating from the norm, in this case for python packaging, generates all sorts of integration and usability issues.

Just my 2 cents ;)

from caringcaribou.

kasperkarlsson avatar kasperkarlsson commented on May 30, 2024

Getting on pip could be a great thing (and this has indeed been discussed before), but any development requires both time and resources which are not currently available.

However, I am not sure how that could help configure the system for physical/virtual CAN interfaces or in creating the ~/.canrc configuration file (by following https://github.com/CaringCaribou/caringcaribou/blob/master/documentation/howtoinstall.md ). These are the most common problems I know of - do you know any other issues (e.g. related to downloading the code)?

from caringcaribou.

brainstorm avatar brainstorm commented on May 30, 2024

There are many issues with naming and structure that are not considered a standard way to structure a python project.

For instance, caringcaribou should not have a tool subfolder, but caringcaribou again (standard python). Other examples are lib and modules... they shouldn't be there nor named as they do. See the following python project for a good example on structure and CLI design (other than the blogpost).

https://github.com/ewels/MultiQC

But you are probably right, at this point the amount of refactoring needed to comply with normal python project structure might be tedious (but not too long/tricky actually).

from caringcaribou.

Related Issues (20)

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.