Hi Jeff,

I'm kind of in the same boat - although my site is on Django 1.11 and I could probably leave it there, although there's some 2.x features I'd like to use.

To be honest, I'd recommend attempting No. 2) (fork and attempt to upgrade it yourself) - and yes, if your changes aren't going to break too many backwards compatibility things, a pull request when you're done may be useful.

Inspired by your post, I made a quick start on this yesterday, with mezzanine and cartridge, and after about 5 small fixes (and a bit of research), managed to get past the initial "createdb" step of setup. I've not pushed my changes back to my forks yet, but it wasn't too much effort to get this far. I'll summarise the changes below to get you started. There's probably more things to do based on actual operation of Mezzanine, but this should be enough to at least generate a new test site.

Hopefully with a number of people working on this we can support Django 2.2 without also breaking Django 1.11 compatibility... A tricky task, no doubt!

Seeya. Danny.

~~~~
Mezzanine changes:

core/templatetags/mezzanine_tags.py

TOKEN_BLOCK, TOKEN_COMMENT, TOKEN_VAR and TOKEN_TEXT are no longer members of django.template.base. Instead, import TokenType and replace the references with TokenType.BLOCK, TokenType.COMMENT etc.

project_template/project_name/settings.py

django.contrib.messages must be added to INSTALLED_APPS


Cartridge changes:

shop/models.py

Replace @models.permalink decorator on get_absolute_url() with using reverse inside the method, i.e.
    def get_absolute_url(self):
        return reverse("shop_product", args=(self.slug,))

project_template/settings.py

Remove django.contrib.auth.middleware.SessionAuthenticationMiddleware from list of middlewares. It's no longer required from Django 1.10 and has been removed in Django 2.0 (see https://docs.djangoproject.com/en/2.2/releases/2.0/#miscellaneous)

django.contrib.messages must be added to INSTALLED_APPS

shop/views.py

Replace from django.core.urlresolvers import reverse with from django.urls import reverse




On 18/06/2019 2:55 am, Jeff wrote:
I have recently created a related issue on github but didn't receive any response (https://github.com/stephenmcd/mezzanine/issues/1928). Basically Mezzanine compatibility with Django 2 is limited to 2.0 which is no longer supported. Moreover that compatibility is not fully tested.

I need to upgrade a legacy site which is based on Mezzanine 3.4.1 and Django 1.8. Ideally we would like to upgrade to Django 2.2 because it's an LTS version and we could stay on that until April 2022.

There are a few options but I'm lacking information to make a good decision:

 1. wait until Mezzanine officially supports Django 2.2, but I have no
    idea when or if that will happen. It seems to me, that at the
    current pace it won't happen this year. (It's not a negative
    judgement, I'm very grateful for being able to use a free and
    mature CMS for many years on so many site!). Do you have any
    roadmap or even some approximate schedule?
 2. fork Mezzanine and upgrade things myself but with a prioritisation
    based on the need of my site. Hopefully I'd be able to contribute
    back to the main repo. However I have no idea how much work would
    be involved? Is it a 2 day job or a 2 week job? Do you have any
    sense of how much work would is left, which Mezzanine components
    need to be worked on for 2.2 compatibility?
 3. automate the migration of the content to another CMS, that would
    be more sustainable but would also require quite a lot of
    development. This is my least favourite option (because I can't
    think of a better Django-CMS for my particular needs) but at least
    I can accurately assess the development effort and time-frame.

Thanks in advance for any piece of information that could help me and my team better evaluate the situation.

Geoffroy

--
You received this message because you are subscribed to the Google Groups "Mezzanine Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to mezzanine-users+unsubscr...@googlegroups.com <mailto:mezzanine-users+unsubscr...@googlegroups.com>. To view this discussion on the web visit https://groups.google.com/d/msgid/mezzanine-users/72720423-ef8e-4e0e-982e-b39e555d27d4%40googlegroups.com <https://groups.google.com/d/msgid/mezzanine-users/72720423-ef8e-4e0e-982e-b39e555d27d4%40googlegroups.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/mezzanine-users/961bfae8-8340-b139-cca6-5d846316bb12%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to