climu / openstudyroom

Website for the Open Study Room online go/baduk/weiqi community.
https://openstudyroom.org
GNU General Public License v3.0
67 stars 33 forks source link

Check python version and create a docker #299

Closed AlessandroMinoccheri closed 5 years ago

AlessandroMinoccheri commented 6 years ago

It could be interesting to understand if the site can work with latest python versions and create a docker to launch it in local to work with it without push online and make manual tests.

climu commented 6 years ago

I have no knowledge about docker at all. I will look into that. Looking such docs.

One should know that we can have the project running localy with test datas easily folowing this tutorial.

As for python verstion, we could indeed test it with newer version.

AlessandroMinoccheri commented 6 years ago

Yes I have seen that page, but dependency could be a problem or version of different package I think. For that I recommend to use docker to have an environment with versions and dependencies equals for all developers and equals to the server that the site uses

climu commented 6 years ago

Ok.

Is there a real need to test newer python versions? Because I see compatibility bug coming. I mean it's work and time so I could fix bugs instead. If there is a real gain, why not.

We could render a docker with current prod version as a start?

AlessandroMinoccheri commented 6 years ago

Isn't necessary, but I advise you to have always new python version installed to have all updates for security for example The docker should be equals to prod version always

climu commented 6 years ago

OK.

We recently made quite an update, so I don't think I am going to update prod again now.

I will pip freeze from production to create the docker file.

climu commented 5 years ago

pip freeze from production with python 3.5.3:

astroid==1.5.3
beautifulsoup4==4.6.0
bs4==0.0.1
certifi==2017.7.27.1
chardet==3.0.4
defusedxml==0.4.1
Django==2.0.9
django-allauth==0.30.0
django-annoying==0.10.3
django-anymail==4.2
django-appconf==1.0.2
django-bootstrap3==9.0.0
django-cogwheels==0.2
django-colorful==1.3
django-common-helpers==0.9.0
django-compressor==2.1.1
django-countries==5.3.2
django-cron==0.5.0
django-debug-toolbar==1.8
django-el-pagination==3.2.4
django-haystack==2.8.1
django-js-asset==1.1.0
django-machina==0.7.1
django-mathfilters==0.4.0
django-modelcluster==4.2
django-mptt==0.9.1
django-postman==3.6.1
django-social-share==1.3.0
django-taggit==0.23.0
django-treebeard==4.3
django-widget-tweaks==1.4.1
djangorestframework==3.8.2
draftjs-exporter==2.0.0
gunicorn==19.6.0
html5lib==0.999999999
idna==2.6
isort==4.2.15
lazy-object-proxy==1.3.1
markdown2==2.3.6
mccabe==0.6.1
mistune==0.8
oauthlib==2.0.1
olefile==0.44
packaging==16.8
Pillow==4.2.1
psycopg2==2.7.5
puput==1.0.2
pybbm==0.18.4
pylint==1.7.4
pylint-django==0.7.2
pylint-plugin-utils==0.2.6
pyparsing==2.1.10
python-dateutil==2.6.1
python3-openid==3.0.10
pytz==2017.2
raven==6.4.0
rcssmin==1.0.6
requests==2.20.0
requests-oauthlib==0.7.0
rjsmin==1.0.12
six==1.11.0
sorl-thumbnail==12.3
sqlparse==0.2.3
Unidecode==0.4.21
urllib3==1.24.1
vobject==0.9.5
wagtail==2.0.2
wagtailmenus==2.11.1
webencodings==0.5.1
Willow==1.1
wrapt==1.10.11
MCSH commented 5 years ago

Thanks for this.

However to keep it consistent I'll be using the requirement.txt file in the repository. I'll update it this time in the upcoming PR, feel free to update it later as you see fit.