The easy-to-use and developer-friendly CMS

Overview

django CMS

https://travis-ci.org/django-cms/django-cms.svg?branch=develop Code Climate

Open source enterprise content management system based on the Django framework and backed by the non-profit django CMS Association. Get involved in the dCA!

Attention!

Please use the develop branch as the target for pull requests for on-going development.

Security fixes will be backported to older branches by the core team as appropriate.

Features

  • hierarchical pages
  • extensive built-in support for multilingual websites
  • multi-site support
  • draft/publish workflows
  • version control
  • a sophisticated publishing architecture, that's also usable in your own applications
  • frontend content editing
  • a hierarchical content structure for nested plugins
  • an extensible navigation system that your own applications can hook into
  • SEO-friendly URLs
  • designed to integrate thoroughly into other applications

Developing applications that integrate with and take advantage of django CMS features is easy and well-documented.

More information on our website.

Requirements

See the Python/Django requirements for the current release version in our documentation.

See the installation how-to guide for an overview of some other requirements and dependencies of the current release

Documentation

We maintain documentation for several versions of the project. Key versions are:

  • stable (default), for the current release version
  • latest, representing the latest build of the release-3.4.x branch
  • develop, representing the latest build of the develop branch

For more information about our branch policy, see Branches.

Our documentation is hosted courtesy of Read the Docs.

Tutorial

http://docs.django-cms.org/en/latest/introduction/index.html

Quick Start

You can use the django CMS installer:

$ pip install --upgrade virtualenv
$ virtualenv env
$ source env/bin/activate
(env) $ pip install djangocms-installer
(env) $ mkdir myproject && cd myproject
(env) $ djangocms -f -p . my_demo
(env) $ python manage.py

Demo

Try demo with Divio Cloud

Getting Help

Please head over to our Slack channel or our discourse forum for support.

Commercial support

This project is backed by the django CMS Association. If you need help implementing or hosting django CMS, please contact us: [email protected].

django CMS Association

The django CMS Association is a non-profit organization that was founded in 2020 with the goal to drive the success of django CMS, by increasing customer happiness, market share and open-source contributions. We provide infrastructure and guidance for the django CMS project.

The non-profit django CMS Association is dependent on donations to fulfill its purpose. The best way to donate is to become a member of the association and pay membership fees. The funding will be funneled back into core development and community projects.

Join the django CMS Association.

Credits

Comments
  • Can't move pages

    Can't move pages

    Can't move pages in admin. Throws an internal server error (500).

    Traceback:
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
      132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/utils/decorators.py" in _wrapped_view
      110.                     response = view_func(request, *args, **kwargs)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/views/decorators/cache.py" in _wrapped_view_func
      57.         response = view_func(request, *args, **kwargs)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/contrib/admin/sites.py" in inner
      233.             return view(request, *args, **kwargs)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/utils/decorators.py" in _wrapper
      34.             return bound_func(*args, **kwargs)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/views/decorators/http.py" in inner
      45.             return func(request, *args, **kwargs)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/utils/decorators.py" in bound_func
      30.                 return func.__get__(self, type(self))(*args2, **kwargs2)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/django/utils/decorators.py" in inner
      145.                     return func(*args, **kwargs)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/cms/admin/pageadmin.py" in move_page
      857.         page.move_page(target, position)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/cms/models/pagemodel.py" in move_page
      217.         moved_page = self.move(target, pos=position)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/cms/models/pagemodel.py" in move
      1237.         super(Page, self).move(target, pos)
    File "/var/www/blank/www/local/lib/python2.7/site-packages/treebeard/mp_tree.py" in move
      1037.         return MP_MoveHandler(self, target, pos).process()
    File "/var/www/blank/www/local/lib/python2.7/site-packages/treebeard/mp_tree.py" in process
      444.         if self.target.is_descendant_of(self.node):
    
    Exception Type: AttributeError at /admin/cms/page/250/move-page/
    Exception Value: 'NoneType' object has no attribute 'is_descendant_of'
    

    Django Version: 1.8.4 Affected versions: django-cms==3.1.1 and django-cms==3.1.4.dev

    blocker kind: bug status: has patch status: accepted 
    opened by philippeowagner 45
  • WiP Django 1.6 support

    WiP Django 1.6 support

    While Django 1.6 is still unreleased, we can try to see what's going to happen. Still a work in progress and only addresses python-level issues. All dependencies should be 1.6 ready now. ~~Biggest issues at the moment are django-reversion (PR opened for 1.6 support) and django-mptt support. djangocms-text-ckeditor (opened PR for support) and django-hvad looks more easy to fix. 1.6 support fixed in django-hvad.~~ ATM code is django 1.4 compatible. Django 1.6 added to build matrix to track the progress.

    opened by yakky 45
  • menu system does not allow some menu strategies for touch devices

    menu system does not allow some menu strategies for touch devices

    Bootstrap 3 introduced a navigation bar, where on mouse over, the sub/pulldown-menu does not automatically pop up. This brought to some controversial discussions on the Bootstrap mailing list, but considering the importance of touch devices (no mouse over possible), I agree with dropping support for this.

    The menu system in django-cms is built in a way, which in practice requires the mouse over effect. The reason is, that one can not create a CMS "page", whose purpose is to only act as a node in the menu tree, without offering any page content.

    For instance, consider the menu system of a typical site build with Bootstrap 3: https://www.angularjs.org/ . Here the main menu contains items: 'Learn', 'Develop', 'Discuss', which actually do not offer any page content. Now, assume one of the above items shall additionally offer some page content. This can be achieved by adding a copy of an item from the main menu, into its own pulldown menu. Here, the first click onto the main menu's item opens the pulldown menu. Then, a second click on the copy of that item, opens the requested page.

    In django-CMS we could use the flag "in menu", but when this is turned off, then all menu items below that item are unselectable, and that's definitely not want we want.

    My proposal is to add another magic template. Currently django-cms has a built-in magic template "Inherit from Parent". We could add another magic template, say "Empty Page", which then tells the menu system to act as a clickable menu item, but not offering any page content. Then, while building the menu, the template tag menu can distinguish a page acting as pure navigation node from a real cms page.

    If this proposal is accepted, I can implement it.

    EDIT (by ojii): Note, the title of this issue was changed by me.

    kind: enhancement component: menus 
    opened by jrief 43
  • Add feature change

    Add feature change "?edit" variable (and "?edit_off", "?build") to custom

    I add little changes for may changing "?edit" variable (and "?edit_off", "?build") to custom variable (eq. "?admin_on") in project started with Django-CMS. I need it's for hidden login form on sites for "hackers" and make happy our customer (change variable to company name).

    component: frontend 
    opened by itcrab 36
  • Adding support for custom user models

    Adding support for custom user models

    This pull request is related to #1798 and #1916.

    I've updated the documentation, tests, and relevant parts of the code to support custom user models as long as the name of the model is User. In addition to a simple customuserapp.User model which adds a single field, I also included a emailuserapp.User which uses the email field as USERNAME_FIELD.

    Lastly, I updated the test runner in develop.py to support a new command line arguement, --user, which allows for specifying the user model. By default, django.contrib.auth.User is used.

    Tested with Django 1.4, 1.5, and 1.6.

    opened by tanderegg 35
  • Missing migration with Django 1.7 (DjangoCMS 3.0.6, up to 3.0.12)

    Missing migration with Django 1.7 (DjangoCMS 3.0.6, up to 3.0.12)

    Starting a project with Django 1.7 and DjangoCMS 3.0.6 will result in Django's makemigrations creating another migration file for the cms app. You can see the the created migration file here:

    http://paste.awesom.eu/ZnyI

    This gets annoying when creating custom plugins which then automatically depend on the locally created 0004 cms migration: It breaks deployment on a remote machine. My current fix is to manually edit the custom plugins' migration files to depend on the shipped 0003 cms migration.

    I noticed that Django's migration system is more sensitive to changes than South, so could you please run makemigrations on all your cms apps (noticed a similar issue with djangocms_link) before the next release? Thanks!

    status: has patch status: accepted kind: cleanup 
    opened by ghost 33
  • CMSAttachMenu failing to register after 3.0.12

    CMSAttachMenu failing to register after 3.0.12

    I noticed that after upgrading from 3.0.10 to 3.0.12 that a CMSAttachMenu was not registering on a page. It would periodically appear and disappear. In the advanced settings sometimes I would see zero, one, or two options for the same menu. I only have one CMSAttachMenu menu defined in a single app in my project. I attempted to delete and recreate the page to no avail. I noticed in the database, if there was only one option available in advanced settings, the page record showed UserMenu for navigation_extenders. If there were two options, it would be UserMenu:190 or UserMenu:193 depending which option I selected.

    Ultimately I reverted to 3.0.10 and the issue went away.

    My menu class:

    from menus.base import NavigationNode
    from cms.menu_bases import CMSAttachMenu
    from menus.menu_pool import menu_pool
    from django.utils.translation import ugettext_lazy as _
    
    class UserMenu(CMSAttachMenu):
    
        name = _('User Menu')
    
        def get_nodes(self, request):
            nodes = []
    
            menu_id = 1
            root_id = menu_id
    
            # root node
            greeting = 'Hello, {0}'.format(request.user.get_full_name() or request.user) if request.user.is_authenticated() else 'Log in'
            title = '<i class="fa fa-user hidden-xs hidden-md hidden-lg"></i><span class="hidden-sm">{0}</span>'
            n = NavigationNode(title.format(greeting), "/user/", menu_id)
            nodes.append(n)
    
            # anonymous menus
            menu_id += 1
            n = NavigationNode(_('Log in'), "/login/", menu_id, root_id, attr={'visible_for_authenticated':False})
            nodes.append(n)
    
            menu_id += 1
            n = NavigationNode(_('Register'), "/register/", menu_id, root_id, attr={'visible_for_authenticated':False})
            nodes.append(n)
    
            menu_id += 1
            n = NavigationNode(_('Help'), "/help/ticket/new/guest/", menu_id, root_id, attr={'visible_for_authenticated':False})
            nodes.append(n)
    
            # authenticated menus
            menu_id += 1
            dashboard_id = menu_id
            n = NavigationNode(_('Dashboard'), "/user/dashboard/", menu_id, root_id, attr={'visible_for_anonymous':False})
            nodes.append(n)
    
            menu_id += 1
            n = NavigationNode(_('Log out'), "/logout/", menu_id, root_id, attr={'visible_for_anonymous':False})
            nodes.append(n)
    
            # user section dashboard sub-menu
            menu_id += 1
            n = NavigationNode(_('Dashboard'), "/user/dashboard/", menu_id, dashboard_id, attr={'visible_for_anonymous':False})
            nodes.append(n)
    
            menu_id += 1
            n = NavigationNode(_('Projects'), "/user/projects/", menu_id, dashboard_id, attr={'visible_for_anonymous':False})
            nodes.append(n)
    
            menu_id += 1
            n = NavigationNode(_('Help Desk'), "/user/help/", menu_id, dashboard_id, attr={'visible_for_anonymous':False})
            nodes.append(n)
    
            menu_id += 1
            n = NavigationNode(_('Profile'), "/user/profile/", menu_id, dashboard_id, attr={'visible_for_anonymous':False})
            nodes.append(n)
    
            return nodes
    
    menu_pool.register_menu(UserMenu)
    
    blocker kind: bug component: menus status: accepted 
    opened by mrhanlon 32
  • Replace develop.py with manage.py (using django-app-manage/django-better-test)

    Replace develop.py with manage.py (using django-app-manage/django-better-test)

    This Pull Request proposes to remove develop.py (and it's related functions in cms.test_utils) with a file called manage.py that can be used like a manage.py file in a Django project.

    While develop.py works fine, it is a lot of code that has nothing to do with the actual CMS to maintain and it only supports a few commands, new commands need to be added one-by-one. django-app-manage allows to externalize that problem. It's also a project that could be used by 3rd party cms plugins, making testing easier there (this obviously doesn't require this PR to be merged, all this would do is put some weight behind it).

    develop.py also set up the magic --parallel and --isolated flags for the test command, but those flags resulted in odd output. For this, I wrote django-better-test which provides those two flags, but keeps the output nice and tidy.

    django-better-test also is a lot smarter about distributing the load of the tests (by keeping track of how long each test method takes), has a --failed flag to only re-run failed tests, a --retest flag to re-use the last configuration and more exciting things!

    TODO:

    • [x] add manage.py
    • [x] remove develop.py
    • [x] remove old code from cms.test_utils

    References

    https://github.com/ojii/django-app-manage https://github.com/ojii/django-better-test

    status: ready for review kind: enhancement 
    opened by ojii 30
  • Fixes/flexible parent+child classes

    Fixes/flexible parent+child classes

    In django-CMS version 3.4, the method to determine if plugins are allowed as child and/or parent plugins, has changed a lot.

    This is causing major problems in djangocms-cascade, since there I have to determine possible relationships dynamically. This means that depending on where inside the placeholder tree a plugin is located, possible parent and/or child relations can be allowed or denied.

    Therefore I looked for alternatives and one proposal to fix it, would be to optionally pass in the current plugin instance to the classmethods CMSPlugin.get_child_classes(...) and CMSPlugin.get_parent_classes(...). Additionally I have to deactivate the placeholder caching for these plugins, since the list of allowed child- and parent-classes then has to be build dynamically.

    This PR depends on #5799. If we can agree on it, I'll add some documentation and tests.

    status: ready for review kind: enhancement 
    opened by jrief 29
  • Consider to replace Compass against libsass

    Consider to replace Compass against libsass

    This would have many advantages:

    • Faster compilation times, some say up to 11x faster.
    • No need for Ruby gems and that stuff, everything is installable through pip.
    • Files ending in .scss are referenced directly in the templates, rather than having to refer an autogenerated css-file.
    • Only one file has to be revisioned in git: the scss-file. The css file is generated on the fly and kept in the compressors cache.
    • No daemon, watching a subtree of the filesystem, must be started. The library django-compress and libsass will handle everything for us.

    For more information refer to this post: https://groups.google.com/forum/#!topic/django-cms/KO7K1iMIjmo

    component: frontend kind: enhancement status: accepted 
    opened by jrief 29
  • Per-page X-Frame-Options/Clickjacking protection

    Per-page X-Frame-Options/Clickjacking protection

    This provides a Advanced Setting which allows you to specify a specific X-Frame-Option for a page. The options for X-Frame-Options are:

    • Inherit from parent
    • Allow
    • Deny
    • same origin (this website only)

    The default is inherit from parents.

    needs design decision 
    opened by tsyesika 29
  • fix: Build docs always from the current local version

    fix: Build docs always from the current local version

    Description

    The requirements to build the docs are fixed with pip-compile always pinning the installed django-cms version (presumably to the latest version when running pip-compile).

    Issues

    • When building docs the current version might not be published.
    • When building docs for an update on an older version, say 3.10.2, the documentation is pulled from the latest version (which soon may be 4.x)

    Solution

    • Always install the current branch when building docs
    • Since pip-compile always pins a pypi version for django CMS in requirements.txt the make-release command replaces whatever version is used there with the current branch at . (current folder)

    Related resources

    • #...
    • #...

    Checklist

    • [x] I have opened this pull request against develop
    • [x] I have added or modified the tests when changing logic
    • [x] I have followed the conventional commits guidelines to add meaningful information into the changelog
    • [x] I have read the contribution guidelines and I have joined #workgroup-pr-review on Slack to find a “pr review buddy” who is going to review my pull request. Pop
    component: documentation kind: bug 
    opened by fsbraun 0
  • build: bump socket.io-parser and karma

    build: bump socket.io-parser and karma

    Bumps socket.io-parser to 4.2.1 and updates ancestor dependency karma. These dependencies need to be updated together.

    Updates socket.io-parser from 2.3.1 to 4.2.1

    Release notes

    Sourced from socket.io-parser's releases.

    4.2.1

    Bug Fixes

    • check the format of the index of each attachment (b5d0cb7)

    Links

    4.2.0

    Features

    • allow the usage of custom replacer and reviver (#112) (b08bc1a)

    Links

    4.1.2

    Bug Fixes

    • allow objects with a null prototype in binary packets (#114) (7f6b262)

    Links

    4.1.1

    Links

    4.1.0

    Features

    • provide an ESM build with and without debug (388c616)

    Links

    4.0.5

    Bug Fixes

    • check the format of the index of each attachment (b559f05)

    Links

    ... (truncated)

    Changelog

    Sourced from socket.io-parser's changelog.

    4.2.1 (2022-06-27)

    Bug Fixes

    • check the format of the index of each attachment (b5d0cb7)

    4.0.5 (2022-06-27)

    Bug Fixes

    • check the format of the index of each attachment (b559f05)

    4.2.0 (2022-04-17)

    Features

    • allow the usage of custom replacer and reviver (#112) (b08bc1a)

    4.1.2 (2022-02-17)

    Bug Fixes

    • allow objects with a null prototype in binary packets (#114) (7f6b262)

    4.1.1 (2021-10-14)

    4.1.0 (2021-10-11)

    Features

    • provide an ESM build with and without debug (388c616)

    4.0.4 (2021-01-15)

    ... (truncated)

    Commits
    • 5a2ccff chore(release): 4.2.1
    • b5d0cb7 fix: check the format of the index of each attachment
    • c7514b5 chore(release): 4.2.0
    • 931f152 chore: add Node.js 16 in the test matrix
    • 6c9cb27 chore: bump @​socket.io/component-emitter to version 3.1.0
    • b08bc1a feat: allow the usage of custom replacer and reviver (#112)
    • aed252c chore(release): 4.1.2
    • 89209fa chore: bump cached-path-relative from 1.0.2 to 1.1.0 (#113)
    • 0a3b556 chore: bump path-parse from 1.0.6 to 1.0.7 (#108)
    • 7f6b262 fix: allow objects with a null prototype in binary packets (#114)
    • Additional commits viewable in compare view

    Updates karma from 0.13.22 to 6.4.1

    Release notes

    Sourced from karma's releases.

    v6.4.1

    6.4.1 (2022-09-19)

    Bug Fixes

    v6.4.0

    6.4.0 (2022-06-14)

    Features

    • support SRI verification of link tags (dc51a2e)
    • support SRI verification of script tags (6a54b1c)

    v6.3.20

    6.3.20 (2022-05-13)

    Bug Fixes

    • prefer IPv4 addresses when resolving domains (e17698f), closes #3730

    v6.3.19

    6.3.19 (2022-04-19)

    Bug Fixes

    • client: error out when opening a new tab fails (099b85e)

    v6.3.18

    6.3.18 (2022-04-13)

    Bug Fixes

    • deps: upgrade socket.io to v4.4.1 (52a30bb)

    v6.3.17

    6.3.17 (2022-02-28)

    Bug Fixes

    • deps: update colors to maintained version (#3763) (fca1884)

    v6.3.16

    ... (truncated)

    Changelog

    Sourced from karma's changelog.

    6.4.1 (2022-09-19)

    Bug Fixes

    6.4.0 (2022-06-14)

    Features

    • support SRI verification of link tags (dc51a2e)
    • support SRI verification of script tags (6a54b1c)

    6.3.20 (2022-05-13)

    Bug Fixes

    • prefer IPv4 addresses when resolving domains (e17698f), closes #3730

    6.3.19 (2022-04-19)

    Bug Fixes

    • client: error out when opening a new tab fails (099b85e)

    6.3.18 (2022-04-13)

    Bug Fixes

    • deps: upgrade socket.io to v4.4.1 (52a30bb)

    6.3.17 (2022-02-28)

    Bug Fixes

    • deps: update colors to maintained version (#3763) (fca1884)

    6.3.16 (2022-02-10)

    Bug Fixes

    • security: mitigate the "Open Redirect Vulnerability" (ff7edbb)

    ... (truncated)

    Commits
    • 0013121 chore(release): 6.4.1 [skip ci]
    • 63d86be fix: pass integrity value
    • 84f7cc3 chore(release): 6.4.0 [skip ci]
    • f2d0663 docs: add integrity parameter
    • dc51a2e feat: support SRI verification of link tags
    • 6a54b1c feat: support SRI verification of script tags
    • 5e71cf5 chore(release): 6.3.20 [skip ci]
    • e17698f fix: prefer IPv4 addresses when resolving domains
    • 60f4f79 build: add Node 16 and 18 to the CI matrix
    • 6ff5aaf chore(release): 6.3.19 [skip ci]
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • build: bump qs and karma-sauce-launcher

    build: bump qs and karma-sauce-launcher

    Bumps qs to 6.11.0 and updates ancestor dependency karma-sauce-launcher. These dependencies need to be updated together.

    Updates qs from 2.4.2 to 6.11.0

    Changelog

    Sourced from qs's changelog.

    6.11.0

    • [New] [Fix] stringify: revert 0e903c0; add commaRoundTrip option (#442)
    • [readme] fix version badge

    6.10.5

    • [Fix] stringify: with arrayFormat: comma, properly include an explicit [] on a single-item array (#434)

    6.10.4

    • [Fix] stringify: with arrayFormat: comma, include an explicit [] on a single-item array (#441)
    • [meta] use npmignore to autogenerate an npmignore file
    • [Dev Deps] update eslint, @ljharb/eslint-config, aud, has-symbol, object-inspect, tape

    6.10.3

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [actions] reuse common workflows
    • [Dev Deps] update eslint, @ljharb/eslint-config, object-inspect, tape

    6.10.2

    • [Fix] stringify: actually fix cyclic references (#426)
    • [Fix] stringify: avoid encoding arrayformat comma when encodeValuesOnly = true (#424)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] add note and links for coercing primitive values (#408)
    • [actions] update codecov uploader
    • [actions] update workflows
    • [Tests] clean up stringify tests slightly
    • [Dev Deps] update eslint, @ljharb/eslint-config, aud, object-inspect, safe-publish-latest, tape

    6.10.1

    • [Fix] stringify: avoid exception on repeated object values (#402)

    6.10.0

    • [New] stringify: throw on cycles, instead of an infinite loop (#395, #394, #393)
    • [New] parse: add allowSparse option for collapsing arrays with missing indices (#312)
    • [meta] fix README.md (#399)
    • [meta] only run npm run dist in publish, not install
    • [Dev Deps] update eslint, @ljharb/eslint-config, aud, has-symbols, tape
    • [Tests] fix tests on node v0.6
    • [Tests] use ljharb/actions/node/install instead of ljharb/actions/node/run
    • [Tests] Revert "[meta] ignore eclint transitive audit warning"

    6.9.7

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Fix] stringify: avoid encoding arrayformat comma when encodeValuesOnly = true (#424)
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] add note and links for coercing primitive values (#408)
    • [Tests] clean up stringify tests slightly
    • [meta] fix README.md (#399)
    • Revert "[meta] ignore eclint transitive audit warning"

    ... (truncated)

    Commits
    • 56763c1 v6.11.0
    • ddd3e29 [readme] fix version badge
    • c313472 [New] [Fix] stringify: revert 0e903c0; add commaRoundTrip option
    • 95bc018 v6.10.5
    • 0e903c0 [Fix] stringify: with arrayFormat: comma, properly include an explicit `[...
    • ba9703c v6.10.4
    • 4e44019 [Fix] stringify: with arrayFormat: comma, include an explicit [] on a s...
    • 113b990 [Dev Deps] update object-inspect
    • c77f38f [Dev Deps] update eslint, @ljharb/eslint-config, aud, has-symbol, tape
    • 2cf45b2 [meta] use npmignore to autogenerate an npmignore file
    • Additional commits viewable in compare view
    Maintainer changes

    This version was pushed to npm by ljharb, a new releaser for qs since your current version.


    Updates karma-sauce-launcher from 0.3.1 to 4.3.6

    Release notes

    Sourced from karma-sauce-launcher's releases.

    v4.3.6

    4.3.6 (2021-04-09)

    Bug Fixes

    • correctly report test names and status (1aee063)

    v4.3.5

    4.3.5 (2021-01-24)

    Bug Fixes

    • add old logs into Sauce (9cf957f)

    v4.3.4

    4.3.4 (2020-11-30)

    Bug Fixes

    • fix reporter with browsers not launched through launcher (39943d7), closes #232

    v4.3.3

    4.3.3 (2020-10-30)

    Bug Fixes

    • update (dev)dependencies (c86ffe7)
    • update sending custom information to Sauce Labs (6090ea8)

    v4.3.2

    4.3.2 (2020-10-30)

    Bug Fixes

    • Call launcher done callback (6050150)

    v4.3.1

    4.3.1 (2020-10-29)

    Bug Fixes

    • fixes issues with older browsers / caps (97315f3)

    v4.3.0

    ... (truncated)

    Changelog

    Sourced from karma-sauce-launcher's changelog.

    4.3.6 (2021-04-09)

    Bug Fixes

    • correctly report test names and status (1aee063)

    4.3.5 (2021-01-24)

    Bug Fixes

    • add old logs into Sauce (9cf957f)

    4.3.4 (2020-11-30)

    Bug Fixes

    • fix reporter with browsers not launched through launcher (39943d7), closes #232

    4.3.3 (2020-10-30)

    Bug Fixes

    • update (dev)dependencies (c86ffe7)
    • update sending custom information to Sauce Labs (6090ea8)

    4.3.2 (2020-10-30)

    Bug Fixes

    • Call launcher done callback (6050150)

    4.3.1 (2020-10-29)

    Bug Fixes

    • fixes issues with older browsers / caps (97315f3)

    4.3.0 (2020-10-29)

    Bug Fixes

    ... (truncated)

    Commits
    Maintainer changes

    This version was pushed to npm by karmarunnerbot, a new releaser for karma-sauce-launcher since your current version.


    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • Update install.rst

    Update install.rst

    Updated steps for installing and configuring sekizai

    Description

    Related resources

    • #...
    • #...

    Checklist

    • [x] I have opened this pull request against develop
    • [x] I have added or modified the tests when changing logic
    • [x] I have followed the conventional commits guidelines to add meaningful information into the changelog
    • [x] I have read the contribution guidelines and I have joined #workgroup-pr-review on Slack to find a “pr review buddy” who is going to review my pull request.
    opened by bencipher 0
  • fix: Update diffDOM to the latest version

    fix: Update diffDOM to the latest version

    Description

    Work in progress on https://github.com/django-cms/django-cms/issues/7460.

    Upgrading diffDOM seems to resolve the issue, however, is not compatible with UglifyJS.

    Related resources

    The issue seems to be related to variable naming in diffDOM:

    image

    I belive it is due to the variable called node:

    https://github.com/fiduswriter/diffDOM/blob/v4.2.8/src/diffDOM/dom/fromVirtual.js#L2

    Which UglifyJS does not like. I am seeking help with getting this fix across the finish line.

    Checklist

    • [x] I have opened this pull request against develop
    • [x] I have read the contribution guidelines and I have joined #workgroup-pr-review on Slack to find a “pr review buddy” who is going to review my pull request.
    • [ ] I have added or modified the tests when changing logic
    • [ ] I have followed the conventional commits guidelines to add meaningful information into the changelog
    opened by petrklus 0
  • [BUG] `diff-dom` freezing on CMS content refresh

    [BUG] `diff-dom` freezing on CMS content refresh

    Description

    We are experiencing issues with the CMS refresh. For certail plugin configurations and post-plugin modification, the browser tab first freezes, later to crash due to out of memory error. We have confirmed the same on Google Chrome / Mozilla Firefox.

    Steps to reproduce

    1. Trigger content/structure board refresh
    2. Tab crashes

    Expected behaviour

    The page content to update.

    Actual behaviour

    The diff between incoming document and actual document freezes up:

    https://github.com/django-cms/django-cms/blob/develop/cms/static/cms/js/modules/cms.structureboard.js#L1291

    Only tab restart fixes the issue.

    Screenshots

    image

    Additional information (CMS/Python/Django versions)

    Django CMS 3.11.0 or 1, Django 3.2.

    Tested on Mozilla Firefox and Google Chrome

    Do you want to help fix this issue?

    We have looked into this further and the issue seems to be down to DiffDOM version 2.5.1. We have tried upgrading to the latest version 4.2.8, which works in debug mode, however, is not compatible with the current UglifyJS config.

    • [x] Yes, I want to help fix this issue and I will join #workgroup-pr-review on Slack to confirm with the community that a PR is welcome.
    • [ ] No, I only want to report the issue.
    opened by petrklus 0
Releases(4.1.0rc1)
  • 4.1.0rc1(Dec 31, 2022)

    4.1.0rc1

    • Django 4.1 and 4.0 support
    • Python 3.10 support
    • Fix bug that broke page tree if it contained empty page content
    • Fix bug that created new page content not in the displayed language but the browser language
    • feat: graceful plugin exceptions. Exceptions when rendering a plugin are caught and logged
    • Remove outdated Django setting SEND_BROKEN_LINK_EMAILS
    • Introduce dropdown menus in the page tree for status indicators
    • add release scripts for develop-4 branch (#7466) (ddbc99a53)
    Source code(tar.gz)
    Source code(zip)
  • 3.11.1(Dec 13, 2022)

    Features:

    • add Python 3.11 support for Django CMS (#7422) (3fe1449e6) -- Vinit Kumar
    • Support for Django 4.1 (#7404) (777864af3) -- Fabian Braun
    • Add support for tel: and mailto: URIs in Advanced Page Settings redirect field (#7370) (0fd058ed3) -- Mark Walker
    • Improved dutch translations -- Stefan van den Eertwegh

    Bug Fixes:

    • Prefer titles matching request language (#7144) (06c9a85df) -- Micah Denbraver
    • Adds a deprecation warning for SEND_BROKEN_LINK_EMAILS (#7420) (d38f4a1cc) -- Fabian Braun
    • Added deprecation warning to get_current_language() (#7410) (2788f75e6) -- Mark Walker
    • CMS check management command fixed [#7412] (#7413) (dcf394bd5) -- ton77v
    • Changing color scheme resets session settings to defaults (#7407) (fcfe77f63) -- Fabian Braun
    • Clear page permission cache on page create (#6866) (e59c179dd) -- G3RB3N
    • Unlocalize page and node ids when rendering the page tree in the admin (#7188) (9e3c57946) -- Marco Bonetti
    • Allow partially overriding CMS_CACHE_DURATIONS (#7339) (162ff8dd8) -- Qijia Liu
    • CMS check management command fixed [#7386] (cdcf260aa) -- Marco Bonetti
    • default light mode (#7381) (abc6e6c5b) -- viliammihalik
    • Added language to page cache key (#7354) (d5a9f49e6) -- Mark Walker

    Refactoring and Cleanups:

    • Move js API functions to CMS.Helpers to make them available also to the admin site (#7384) (a7f8cd44f) -- Fabian Braun

    Statistics:

    This release was created with the help of the following contributors (in alphabetical order):

    • Fabian Braun
    • G3RB3N
    • Marco Benetti
    • Mark Walker
    • Micah Denbraver
    • Qijia Liu
    • Stefan van den Eertwegh
    • villiammihalik
    • Vinit Kumar

    With the review help of the following contributors:

    • Cage Johnson
    • Christian Clauss
    • Conrad
    • Dapo Adedire
    • Fabian Braun
    • Florian Delizy
    • G3RB3N
    • Hussein Srour
    • Marco Bonetti
    • Mark Walker
    • Micah Denbraver
    • Pankrat
    • Patrick Mazulo
    • Qijia Liu
    • Shivan Sivakumaran
    • Simon Krull
    • Vinit Kumar
    • code-review-doctor
    • dependabot[bot]
    • fsbraun
    • jefe
    • ton77v
    • viliammihalik
    • wesleysima

    Thanks to all contributors for their efforts!

    Source code(tar.gz)
    Source code(zip)
  • 3.11.1rc1(Nov 14, 2022)

    Features:

    • add Python 3.11 support for Django CMS (#7422) (3fe1449e6) -- Vinit Kumar
    • Support for Django 4.1 (#7404) (777864af3) -- Fabian Braun
    • Add support for tel: and mailto: URIs in Advanced Page Settings redirect field (#7370) (0fd058ed3) -- Mark Walker
    • Improved dutch translations -- Stefan van den Eertwegh

    Bug Fixes:

    • Prefer titles matching request language (#7144) (06c9a85df) -- Micah Denbraver
    • Adds a deprecation warning for SEND_BROKEN_LINK_EMAILS (#7420) (d38f4a1cc) -- Fabian Braun
    • Added deprecation warning to get_current_language() (#7410) (2788f75e6) -- Mark Walker
    • CMS check management command fixed [#7412] (#7413) (dcf394bd5) -- ton77v
    • Changing color scheme resets session settings to defaults (#7407) (fcfe77f63) -- Fabian Braun
    • Clear page permission cache on page create (#6866) (e59c179dd) -- G3RB3N
    • Unlocalize page and node ids when rendering the page tree in the admin (#7188) (9e3c57946) -- Marco Bonetti
    • Allow partially overriding CMS_CACHE_DURATIONS (#7339) (162ff8dd8) -- Qijia Liu
    • CMS check management command fixed [#7386] (cdcf260aa) -- Marco Bonetti
    • default light mode (#7381) (abc6e6c5b) -- viliammihalik
    • Added language to page cache key (#7354) (d5a9f49e6) -- Mark Walker

    Refactoring and Cleanups:

    • Move js API functions to CMS.Helpers to make them available also to the admin site (#7384) (a7f8cd44f) -- Fabian Braun
    Source code(tar.gz)
    Source code(zip)
Owner
django CMS Association
The django CMS Association coordinates and funds the long-term development of the django CMS platform. Join us!
django CMS Association
The Plone CMS: root integration package

About Plone Plone is a mature, secure and user-friendly Content Management System (CMS). Plone - and the Open Source community behind it - aggregates

Plone Foundation 200 Jan 08, 2023
A Django-based CMS with a focus on extensibility and concise code

FeinCMS - An extensible Django-based CMS When was the last time, that a pre-built software package you wanted to use got many things right, but in the

FeinCMS 847 Jan 07, 2023
A Django blog app implemented in Wagtail

Puput Puput is a powerful and simple Django app to manage a blog. It uses the awesome Wagtail CMS as content management system. Puput is the catalan n

APSL 535 Jan 08, 2023
Oppia a free, online learning platform to make quality education accessible for all.

Oppia is an online learning tool that enables anyone to easily create and share interactive activities (called 'explorations'). These activities simulate a one-on-one conversation with a tutor, makin

Oppia 4.8k Dec 28, 2022
Website for PyCon

PyCon 2019 Web Site Built by the Python Community atop the Django web framework. Rather than use this as the basis for your conference site directly,

PyCon 155 Nov 05, 2022
Open Source CRM based on Django

Django-CRM Django CRM is opensource CRM developed on django framework. It has all the basic features of CRM to start with. We welcome code contributio

MicroPyramid 1.4k Dec 31, 2022
Simple yet powerful and really extendable application for managing a blog within your Django Web site.

Django Blog Zinnia Simple yet powerful and really extendable application for managing a blog within your Django Web site. Zinnia has been made for pub

Julien Fache 2.1k Dec 24, 2022
A website (webapp) to get food recipes by recipes names & ingredients.

Ramy's tedbira A website (aka: webapp) to get food recipes by recipes names & ingredients that you have in your fridge, using Django-framework and Spo

Rami Berrekia 15 Dec 23, 2022
Journey is a journaling app where users can create their own journal and entries in it!

Journey is a journaling app where users can create their own journal and entries in it!

Hieu Ma 8 Dec 12, 2021
Python scripts to interact with the CakeCMS API.

Python scripts to interact with the CakeCMS API. Installation of the python module Prerequisites The cakecms module has to be installed first. Install

Fabian Thomas 3 Jan 31, 2022
Library Management system designed for managing and operating various aspects of a library

Proposal This proposal is written to clarify the project work of Information Systems, assigned to us as an individual task in order to tackle the case

Prawal 1 Oct 27, 2021
Ticket shop application for conferences, festivals, concerts, tech events, shows, exhibitions, workshops, barcamps, etc.

pretix Reinventing ticket presales, one ticket at a time. Project status & release cycle While there is always a lot to do and improve on, pretix by n

pretix 1.3k Jan 01, 2023
Ella is a CMS based on Python web framework Django with a main focus on high-traffic news websites and Internet magazines.

Ella CMS Ella is opensource CMS based on Django framework, designed for flexibility. It is composed from several modules: Ella core is the main module

295 Oct 16, 2022
Random tarot card generator + rudimentary Django CMS

TAROT JUICER This is a rudimentary Django-based CMS which dynamically presents tarot-related content placed onto unconventional but familiar contexts

Kyle Rafa Lazaro 7 Apr 26, 2022
A full stack e-learning application, this is the backend using django restframework and docker.

DevsPrime API API Service backing client interfaces Technologies Python 3.9 : Base programming language for development Bash Scripting : Create conven

Nnabue Favour Chukwuemeka 1 Oct 21, 2021
Flask-SQLAlchemy implementation of nested/threaded comment replies.

Threaded comments using Common Table Expressions (CTE) for a MySQL Flask blog or CMS Credits to peterspython Also read more about the implementation h

ONDIEK ELIJAH OCHIENG 5 Nov 12, 2022
An open source CMS, in python and integrable in Django

Python CMS based on the Django Framework

Titouan Bénard 0 Sep 10, 2021
CMS for everyone, easy to deploy and scale, robust modular system with many packages.

Django-Leonardo Full featured platform for fast and easy building extensible web applications. Don't waste your time searching stable solution for dai

97 Nov 17, 2022
A Django content management system focused on flexibility and user experience

Wagtail is an open source content management system built on Django, with a strong community and commercial support. It's focused on user experience,

Wagtail 13.8k Jan 02, 2023
LibreLingo🐢 🌎 📚 a community-owned language-learning platform

LibreLingo's mission is to create a modern language-learning platform that is owned by the community of its users. All software is licensed under AGPLv3, which guarantees the freedom to run, study, s

Daniel Kantor 1.4k Jan 09, 2023