Skip to content

Commit

Permalink
Merge branch 'develop' into feat/python3.10-support
Browse files Browse the repository at this point in the history
  • Loading branch information
vinitkumar committed Jan 16, 2022
2 parents 631543b + 272d62c commit c72d772
Show file tree
Hide file tree
Showing 21 changed files with 278 additions and 61 deletions.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/---bug-report.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name: "\U0001F41E Bug report"
about: Something isn't working as expected? Here is the right place to report.
title: "[BUG]"
labels:
labels: ''
assignees: ''

---
Expand Down Expand Up @@ -62,4 +62,4 @@ The django CMS project is managed and kept alive by its open source community an
-->

* [ ] Yes, I want to help fix this issue and I will join #workgroup-pr-review on [Slack](https://www.django-cms.org/slack) to confirm with the community that a PR is welcome.
* [ ] No, I only want to report the issue.
* [ ] No, I only want to report the issue.
43 changes: 43 additions & 0 deletions .github/ISSUE_TEMPLATE/---documentation-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
name: "\U0001F4D8 Documentation report"
about: 'Something isn''t described correctly in the documentation or needs to be updated?
Here is the right place to report. '
title: "[DOC]"
labels: 'component: documentation'
assignees: ''

---

<!--
Please fill in each section below, otherwise, your issue will be closed.
This info allows django CMS maintainers to diagnose (and fix!) your issue
as quickly as possible.
-->

## Description

<!--
If this is a security issue stop immediately and follow the instructions at:
http://docs.django-cms.org/en/latest/contributing/development-policies.html#reporting-security-issues
-->

## Screenshots

<!--If applicable, add screenshots to help explain your problem.
-->

## Additional information (CMS/Python/Django versions)

<!--
Add any other context about the problem such as environment,
CMS/Python/Django versions, logs etc. here.
-->

## Do you want to help fix this documentation issue?

<!--
The django CMS project is managed and kept alive by its open source community and is backed by the [django CMS Association](https://www.django-cms.org/en/about-us/). We therefore welcome any help and are grateful if people contribute to the project. Please use 'x' to check the items below.
-->

* [ ] Yes, I want to help fix this issue and I will join #workgroup-documentation on [Slack](https://www.django-cms.org/slack) to confirm with the team that a PR is welcome.
* [ ] No, I only want to report the issue.
1 change: 1 addition & 0 deletions cms/apps.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
class CMSConfig(AppConfig):
name = 'cms'
verbose_name = _("django CMS")
default_auto_field = 'django.db.models.AutoField'

def ready(self):
from cms.utils.setup import setup
Expand Down
2 changes: 1 addition & 1 deletion cms/static/cms/js/dist/3.9.0/bundle.admin.base.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion cms/static/cms/js/dist/3.9.0/bundle.toolbar.min.js

Large diffs are not rendered by default.

8 changes: 1 addition & 7 deletions cms/static/cms/js/modules/cms.base.js
Original file line number Diff line number Diff line change
Expand Up @@ -340,13 +340,7 @@ export const Helpers = {
newUrl.addSearch(key, value);
});

return newUrl
.toString()
.split('#')
.map((part, i) => {
return i === 0 ? part.replace(/&/g, '&amp;') : part;
})
.join('#');
return newUrl.toString();
},

/**
Expand Down
22 changes: 11 additions & 11 deletions cms/tests/frontend/unit/cms.base.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -769,45 +769,45 @@ describe('cms.base.js', function() {
var url;

url = CMS.API.Helpers.makeURL('test', [['param', '1'], ['another', '2']]);
expect(url).toEqual('test?param=1&amp;another=2');
expect(url).toEqual('test?param=1&another=2');

url = CMS.API.Helpers.makeURL('test?param=1', [['another', '2']]);
expect(url).toEqual('test?param=1&amp;another=2');
expect(url).toEqual('test?param=1&another=2');

url = CMS.API.Helpers.makeURL('test?param=1&another=2', [['different', '3']]);
expect(url).toEqual('test?param=1&amp;another=2&amp;different=3');
expect(url).toEqual('test?param=1&another=2&different=3');

url = CMS.API.Helpers.makeURL('test?param=1&amp;another=2', [['different', '3']]);
expect(url).toEqual('test?param=1&amp;another=2&amp;different=3');
expect(url).toEqual('test?param=1&another=2&different=3');

url = CMS.API.Helpers.makeURL('test?param=1&another=2&amp;again=3', [['different', '3']]);
expect(url).toEqual('test?param=1&amp;another=2&amp;again=3&amp;different=3');
expect(url).toEqual('test?param=1&another=2&again=3&different=3');
});

it('replaces param values with new ones if they match', function() {
var url;

url = CMS.API.Helpers.makeURL('test?param=1&amp;another=2', [['another', '3']]);
expect(url).toEqual('test?param=1&amp;another=3');
expect(url).toEqual('test?param=1&another=3');

url = CMS.API.Helpers.makeURL('test?param=1&amp;another=2', [['another', '3'], ['param', '4']]);
expect(url).toEqual('test?another=3&amp;param=4');
expect(url).toEqual('test?another=3&param=4');
});

it('understands hashes in the url', function() {
var url;

url = CMS.API.Helpers.makeURL('test#hash', [['param', '1'], ['another', '2']]);
expect(url).toEqual('test?param=1&amp;another=2#hash');
expect(url).toEqual('test?param=1&another=2#hash');

url = CMS.API.Helpers.makeURL('test#hash#with#hash', [['param', '1'], ['another', '2']]);
expect(url).toEqual('test?param=1&amp;another=2#hash#with#hash');
expect(url).toEqual('test?param=1&another=2#hash#with#hash');

url = CMS.API.Helpers.makeURL('test#', [['param', '1'], ['another', '2']]);
expect(url).toEqual('test?param=1&amp;another=2');
expect(url).toEqual('test?param=1&another=2');

url = CMS.API.Helpers.makeURL('test#hash&stuff', [['param', '1'], ['another', '2']]);
expect(url).toEqual('test?param=1&amp;another=2#hash&stuff');
expect(url).toEqual('test?param=1&another=2#hash&stuff');

url = CMS.API.Helpers.makeURL('test#hash&stuff', []);
expect(url).toEqual('test#hash&stuff');
Expand Down
2 changes: 1 addition & 1 deletion cms/tests/frontend/unit/cms.structureboard.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -2118,7 +2118,7 @@ describe('CMS.StructureBoard', function() {

expect($.ajax).toHaveBeenCalledWith({
url: jasmine.stringMatching(
/TOOLBAR_URL\?obj_id=100&amp;obj_type=cms.page&amp;cms_path=%2Fcontext.html.*/
/TOOLBAR_URL\?obj_id=100&obj_type=cms.page&cms_path=%2Fcontext.html.*/
)
});
});
Expand Down
70 changes: 70 additions & 0 deletions docs/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
=========================
django CMS Documentation
=========================

Run the documentation locally
-----------------------------

Install the Enchant libary
~~~~~~~~~~~~~~~~~~~~~~~~~~

You will need to install the
`enchant <https://www.abisource.com/projects/enchant/>`__ library that
is used by ``pyenchant`` for spelling.

macOS:
^^^^^^

.. code:: bash
brew install enchant
After that:

Fork & Clone the repository:
^^^^^^^^^^^^^^^^^^^^^

.. code:: bash
git@github.com:your-github-username/django-cms.git
Switch to the django-cms directory:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash
cd django-cms/docs
Install the dependencies:
^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash
make install
This command creates a virtual environment and installs the required
dependencies there.

Start the development server:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash
make run
Open the local docs instance in your browser:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash
open http://0.0.0.0:8001/
The documentation uses livereload. This means, that every time something
is changed, the documentation will automatically reload in your
browser.

Contribute
----------

If you find anything that could be improved or changed in your opinion,
feel free to create a pull request.
4 changes: 2 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
]
intersphinx_mapping = {
'python': ('https://docs.python.org/3/', None),
'django': ('https://docs.djangoproject.com/en/2.2/', 'https://docs.djangoproject.com/en/2.2/_objects/'),
'django': ('https://docs.djangoproject.com/en/3.2/', 'https://docs.djangoproject.com/en/3.2/_objects/'),
'classytags': ('https://django-classy-tags.readthedocs.io/en/latest/', None),
'sekizai': ('https://django-sekizai.readthedocs.io/en/latest/', None),
'treebeard': ('https://django-treebeard.readthedocs.io/en/latest/', None),
Expand Down Expand Up @@ -86,7 +86,7 @@

# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['build', 'env']
exclude_patterns = ['build', 'env', 'README.rst']

# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
Expand Down
4 changes: 2 additions & 2 deletions docs/contributing/code_of_conduct.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ Raising a concern
*****************

If you have a concern about the behaviour of any member of the django CMS
community, please contact one of the members of the :ref:`core development team
<core_developers>`.
community, please contact us via info@django-cms.org and our Community Manager
will reach out to you.

Your concerns will be taken seriously, treated as confidential and
investigated. You will be informed, in writing and as promptly as possible, of
Expand Down
4 changes: 2 additions & 2 deletions docs/contributing/development-community.rst
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,9 @@ After you have acquainted yourself with django CMS and maybe already created you
you should start looking at contributing to the django CMS codebase.


##################################
******************************************
Contributor Community
##################################
******************************************

But before you start getting your hands dirty, you should make sure to join us online in order
to stay updated with the latest news and to connect with other users across the world.
Expand Down
44 changes: 33 additions & 11 deletions docs/contributing/development-policies.rst
Original file line number Diff line number Diff line change
Expand Up @@ -47,28 +47,50 @@ the author of the pull request.
Proposal and discussion of significant changes
**********************************************

New features and backward-incompatible changes should be proposed using the `Discourse forum <https://discourse.django-cms.org>`_. Discussion should take place there before any pull requests
are made.
New features and backward-incompatible changes should follow the best practice of `DEPS <https://github.com/django/deps>`_ and
should be discussed in the community first. After your proposal has been reviewed by the community,
it needs to be finally approved by the `Tech Committee <https://github.com/django-cms/django-cms-mgmt/blob/master/tech-committee/about.md>`_.
This is in the interests of openness and transparency,
and to give the community a chance to participate in and understand the decisions taken by the project.

This is in the interests of openness and transparency, and to give the community a chance to participate in and
understand the decisions taken by the project.
So before submitting pull requests with significant changes, please make sure that the community agrees and the
Technical Committee approves.


To create a proposal...

1. please use this `DEP template <https://github.com/django/deps/blob/main/template.rst>`_
2. create a discussion in the main `Github repository <https://github.com/django-cms/django-cms/discussions>`_
3. discuss, discuss, discuss
4. join the Tech Committee `Slack Channel <https://www.django-cms.org/slack>`_ (#technical-committee) and make the team aware of your proposal after the proposal has been reviewed by the Technical Committee, it is put to a vote at one of the weekly meetings of the technical committee


****************
Release schedule
****************

.. versionchanged:: 3.7
The `roadmap <https://www.django-cms.org/en/roadmap/>`_ can be found on our website. The release schedule is
managed by the release management workgroup. The plan is to release quarterly and according to a retrospectice approach.

django CMS 3.7 is the new active long term release.
Example of retrospective approach.

The `roadmap <https://www.django-cms.org/en/roadmap/>`_ can be found on our website.
* Q1 2021 -> 3.9 Release
* End of Q1 2021 -> freeze
* Check what’s available
* Merge in anything that’s been approved
* Q2 2021 Release -> 3.10
* ...
* Unscheduled Releases -> e.g. bug fix -> 3.x.x

We are planning releases according to **key principles and aims**. Issues within milestones are
therefore subject to change.
The release management workgroup can be found on `Slack <https://www.django-cms.org/slack>`_ in #release-management channel.
For questions regarding the release process please join the channel and reach out. We're happy to help.

Long-Term Support Release
===========================

.. versionchanged:: 3.7

The `django CMS Discourse forum <https://discourse.django-cms.org>`_ serves as gathering
point for developers. We submit ideas and proposals prior to the roadmap goals.
django CMS 3.7 is the current active long term release.

django CMS 3.4, surpassed by 3.7, was the first "LTS" ("Long-Term Support")
release of the application. *Long-term support* means that this version will
Expand Down
Loading

0 comments on commit c72d772

Please sign in to comment.