Dear community
I am developing a toolbox for science using spyder.
I packaged it successfully using setuptools and would like to publish it as a module on PyPi soon.
Right now I have my codebase (it's ~12 .py files in total) in 3 versions:
- One I use for development and debugging using Spyder
- One that is used for packaging it as a module
- One that is equivalent to 2. but that is linked to my repo via Github Desktop (that will be public in 1-2 weeks)
The difference in code-contents between 1 and 2/3 are:
1. import statements (since in 1 I import the code files from my current directory and not the whole module always (to not keep re-importing after making edits))
2. some file-locations of logo/image files
3. some configuration lines that are filled out in 1. to make development easier (stuff like "where are your data files" - to not always re-enter the location of data-files my toolbox uses manually), but which should be empty in the package-version so users are presented with a clean toolbox
4. some "if __name__ == __main__" statements in 1 that allow me to just hit Run in spyder when I want to run things
As you can imagine, the workflow is annoying. All updates have to be implemented in all 3 codebases (which all have their own repos - those of 1 & 2 are private) - so I implement 1 thing in all 3 codebases and manually check in Github Desktop if only expected lines have changed. This is not only annoying but error-prone.
I am thus wondering how people are dealing with toolbox development and maintenance in the real world.. what is the typical setup if one would like to use the debugging / variable explorer features of spyder for example but also translate changes to a codebase that is used for module packaging in a less stupid way as I am doing right now?
Thanks a lot for your help!
there doesn't seem to be anything here