respondcreate / django-versatileimagefield

A drop-in replacement for django's ImageField that provides a flexible, intuitive and easily-extensible interface for quickly creating new images from the one assigned to the field.
http://django-versatileimagefield.readthedocs.io/
MIT License
530 stars 90 forks source link

Add Tox and Github Actions CI support #181

Closed luzfcb closed 3 years ago

luzfcb commented 3 years ago

A sample of how the Github Action will look like: Also, the sample of full Github Action test log of this PR can be accessed in https://github.com/luzfcb/django-versatileimagefield/actions/runs/692862505

image

--

Pull-request sponsored by

image

coveralls commented 3 years ago

Coverage Status

Coverage remained the same at 99.777% when pulling ced62bab75aef1f9bbe8ee35408f30a025aa75a8 on luzfcb:github_actions_and_tox into bd6a1c7cd412ea66532310550bfa169492ee198d on respondcreate:master.

respondcreate commented 3 years ago

Hey @luzfcb !

Just taking a look at this now and am having trouble running these tests with tox (everything fails). In your PR, can you please add some docs to the README that explain how to leverage tox in a local development environment (from installation to initiating the test matrix)?

Also, the travis CI test suite is still using to the current test matrix, can you also update .travis.yml to utilize this new tox setup to run tests and send coverage to coveralls?

Thanks so much for your contribution so far, looking forward to getting this ironed-out and merged in.

respondcreate commented 3 years ago

Hey @luzfcb !

I was able to figure out the tox/travis/coveralls stuff. It's currently on the github_actions_and_tox branch of this repo. Still have some cleaning up to do but it's coming along!

luzfcb commented 3 years ago

@respondcreate Sorry I saw this just now, I was offline all day. I made some improvements to the tox configuration that I did initially, also converted the models and related files into a formal django app, and converted the test suite to be compatible with pytest

pickle api had never bitten me before, so it took me quite a while to discover and paying attention to getstate / setstate pickle to fix compatibility.

Another thing I found is that pillow added a few more compile dependencies after 4.2

Anyway, this is what I have now: image