Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrading history package #678

Closed
wants to merge 9 commits into from
Closed
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 20 additions & 11 deletions Makefile
Original file line number Diff line number Diff line change
@@ -92,20 +92,29 @@ migrate: ## apply database migrations
html_coverage: ## generate and view HTML coverage report
coverage html && open htmlcov/index.html

upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade
upgrade: piptools ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in
# Make sure to compile files after any other files they include!
COMMON_CONSTRAINTS_TXT=requirements/common_constraints.txt
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it was not working as expected. Fixed.

.PHONY: $(COMMON_CONSTRAINTS_TXT)
$(COMMON_CONSTRAINTS_TXT):
wget -O "$(@)" https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt || touch "$(@)"
echo "$(COMMON_CONSTRAINTS_TEMP_COMMENT)" | cat - $(@) > temp && mv temp $(@)

export CUSTOM_COMPILE_COMMAND = make upgrade
upgrade: piptools $(COMMON_CONSTRAINTS_TXT) ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in
# This is a temporary solution to override the real common_constraints.txt
# In edx-lint, until the pyjwt constraint in edx-lint has been removed.
sed '/^django-simple-history==/d' requirements/common_constraints.txt > requirements/common_constraints.tmp
mv requirements/common_constraints.tmp requirements/common_constraints.txt
pip-compile --allow-unsafe --rebuild --upgrade -o requirements/pip.txt requirements/pip.in
pip-compile --upgrade -o requirements/pip-tools.txt requirements/pip-tools.in
pip-compile --rebuild --upgrade -o requirements/pip-tools.txt requirements/pip-tools.in
pip install -qr requirements/pip.txt
pip install -qr requirements/pip-tools.txt
pip-compile --upgrade -o requirements/base.txt requirements/base.in
pip-compile --upgrade -o requirements/test.txt requirements/test.in
pip-compile --upgrade -o requirements/doc.txt requirements/doc.in
pip-compile --upgrade -o requirements/quality.txt requirements/quality.in
pip-compile --upgrade -o requirements/validation.txt requirements/validation.in
pip-compile --upgrade -o requirements/dev.txt requirements/dev.in
pip-compile --upgrade -o requirements/production.txt requirements/production.in
pip-compile --rebuild --upgrade -o requirements/base.txt requirements/base.in
pip-compile --rebuild --upgrade -o requirements/test.txt requirements/test.in
pip-compile --rebuild --upgrade -o requirements/doc.txt requirements/doc.in
pip-compile --rebuild --upgrade -o requirements/quality.txt requirements/quality.in
pip-compile --rebuild --upgrade -o requirements/validation.txt requirements/validation.in
pip-compile --rebuild --upgrade -o requirements/dev.txt requirements/dev.in
pip-compile --rebuild --upgrade -o requirements/production.txt requirements/production.in
# Let tox control the Django version for tests
grep -e "^django==" requirements/base.txt > requirements/django.txt
sed '/^[dD]jango==/d' requirements/test.txt > requirements/test.tmp
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Generated by Django 4.2.5 on 2023-09-26 14:55

import collections
from django.db import migrations, models
import jsonfield.encoder
import jsonfield.fields


class Migration(migrations.Migration):

dependencies = [
('catalog', '0036_auto_20230306_1550'),
]

operations = [
migrations.AlterModelOptions(
name='historicalcontentmetadata',
options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Content Metadata', 'verbose_name_plural': 'historical Content Metadata'},
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

its due to history-table.

),
migrations.AlterModelOptions(
name='historicalenterprisecatalog',
options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Enterprise Catalog', 'verbose_name_plural': 'historical Enterprise Catalogs'},
),
migrations.AlterField(
Copy link
Contributor Author

@awais786 awais786 Sep 26, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This migration
model_name='catalogquery', name='content_filter', is part of some old change in this repo.

model_name='catalogquery',
name='content_filter',
field=jsonfield.fields.JSONField(default=dict, dump_kwargs={'cls': jsonfield.encoder.JSONEncoder, 'ensure_ascii': False, 'indent': 4, 'separators': (',', ':')}, help_text="Query parameters which will be used to filter the discovery service's search/all endpoint results, specified as a JSON object.", load_kwargs={'object_pairs_hook': collections.OrderedDict}),
),
migrations.AlterField(
model_name='contentmetadata',
name='associated_content_metadata',
field=models.ManyToManyField(blank=True, to='catalog.contentmetadata'),
),
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Generated by Django 4.2.5 on 2023-09-26 14:55

from django.db import migrations


class Migration(migrations.Migration):

dependencies = [
('curation', '0002_add_can_only_view_highlight_sets'),
]

operations = [
migrations.AlterModelOptions(
name='historicalenterprisecurationconfig',
options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Enterprise curation', 'verbose_name_plural': 'historical Enterprise curations'},
),
migrations.AlterModelOptions(
name='historicalhighlightedcontent',
options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical highlighted content', 'verbose_name_plural': 'historical highlighted contents'},
),
migrations.AlterModelOptions(
name='historicalhighlightset',
options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical highlight set', 'verbose_name_plural': 'historical highlight sets'},
),
]
4 changes: 4 additions & 0 deletions enterprise_catalog/settings/base.py
Original file line number Diff line number Diff line change
@@ -429,3 +429,7 @@
'VERSION': '1.0.0',
'SERVE_INCLUDE_SCHEMA': False,
}


# disable indexing on history_date
SIMPLE_HISTORY_DATE_INDEX = False
14 changes: 6 additions & 8 deletions requirements/base.txt
Original file line number Diff line number Diff line change
@@ -65,7 +65,7 @@ defusedxml==0.7.1
# social-auth-core
django==3.2.21
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -c requirements/constraints.txt
# -r requirements/base.in
# django-celery-results
@@ -113,10 +113,8 @@ django-model-utils==4.3.1
# -r requirements/base.in
# edx-celeryutils
# edx-rbac
django-simple-history==3.0.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/base.in
django-simple-history==3.4.0
# via -r requirements/base.in
django-waffle==4.0.0
# via
# edx-django-utils
@@ -135,7 +133,7 @@ djangorestframework-xml==2.0.0
# via -r requirements/base.in
drf-jwt==1.19.2
# via edx-drf-extensions
drf-spectacular==0.26.4
drf-spectacular==0.26.5
# via -r requirements/base.in
edx-auth-backends==4.2.0
# via -r requirements/base.in
@@ -187,7 +185,7 @@ monotonic==1.6
# via analytics-python
mysqlclient==2.2.0
# via -r requirements/base.in
newrelic==9.0.0
newrelic==9.1.0
# via edx-django-utils
oauthlib==3.2.2
# via
@@ -311,7 +309,7 @@ vine==5.0.0
# kombu
wcwidth==0.2.6
# via prompt-toolkit
xlsxwriter==3.1.4
xlsxwriter==3.1.5
# via -r requirements/base.in
zipp==3.17.0
# via
10 changes: 5 additions & 5 deletions requirements/common_constraints.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
# This is a temporary solution to override the real common_constraints.txt
# In edx-lint, until the pyjwt constraint in edx-lint has been removed.
# See BOM-2721 for more details.
# Below is the copied and edited version of common_constraints

# A central location for most common version constraints
# (across edx repos) for pip-installation.
@@ -24,4 +20,8 @@ Django<4.0
# elastic search changelog: https://www.elastic.co/guide/en/enterprise-search/master/release-notes-7.14.0.html
elasticsearch<7.14.0

setuptools<60
# django-simple-history>3.0.0 adds indexing and causes a lot of migrations to be affected

# tox>4.0.0 isn't yet compatible with many tox plugins, causing CI failures in almost all repos.
# Details can be found in this discussion: https://github.com/tox-dev/tox/discussions/1810
tox<4.0.0
7 changes: 4 additions & 3 deletions requirements/constraints.txt
Original file line number Diff line number Diff line change
@@ -8,10 +8,10 @@
# pin when possible. Writing an issue against the offending project and
# linking to it here is good.

Django>=3.2,<4.0

# Common constraints for edx repos
-c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
-c common_constraints.txt

Django>=3.2,<4.0

# As it is not clarified what exact breaking changes will be introduced as per
# the next major release, ensure the installed version is within boundaries.
@@ -33,3 +33,4 @@ redis<4
edx-lint<5.3
pylint<2.15
astroid<2.12

15 changes: 7 additions & 8 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
@@ -154,7 +154,7 @@ distlib==0.3.7
# virtualenv
django==3.2.21
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -c requirements/constraints.txt
# -r requirements/quality.txt
# -r requirements/test.txt
@@ -223,9 +223,8 @@ django-model-utils==4.3.1
# -r requirements/test.txt
# edx-celeryutils
# edx-rbac
django-simple-history==3.0.0
django-simple-history==3.4.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/quality.txt
# -r requirements/test.txt
django-waffle==4.0.0
@@ -256,7 +255,7 @@ drf-jwt==1.19.2
# -r requirements/quality.txt
# -r requirements/test.txt
# edx-drf-extensions
drf-spectacular==0.26.4
drf-spectacular==0.26.5
# via
# -r requirements/quality.txt
# -r requirements/test.txt
@@ -418,7 +417,7 @@ mysqlclient==2.2.0
# via
# -r requirements/quality.txt
# -r requirements/test.txt
newrelic==9.0.0
newrelic==9.1.0
# via
# -r requirements/quality.txt
# -r requirements/test.txt
@@ -710,12 +709,12 @@ tomlkit==0.12.1
# pylint
tox==3.28.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -r requirements/test.txt
# tox-battery
tox-battery==0.6.2
# via -r requirements/test.txt
types-pyyaml==6.0.12.11
types-pyyaml==6.0.12.12
# via
# -r requirements/test.txt
# responses
@@ -771,7 +770,7 @@ wrapt==1.15.0
# -r requirements/quality.txt
# -r requirements/test.txt
# astroid
xlsxwriter==3.1.4
xlsxwriter==3.1.5
# via
# -r requirements/quality.txt
# -r requirements/test.txt
18 changes: 8 additions & 10 deletions requirements/doc.txt
Original file line number Diff line number Diff line change
@@ -128,7 +128,7 @@ distlib==0.3.7
# virtualenv
django==3.2.21
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -c requirements/constraints.txt
# -r requirements/test.txt
# django-celery-results
@@ -178,10 +178,8 @@ django-model-utils==4.3.1
# -r requirements/test.txt
# edx-celeryutils
# edx-rbac
django-simple-history==3.0.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/test.txt
django-simple-history==3.4.0
# via -r requirements/test.txt
django-waffle==4.0.0
# via
# -r requirements/test.txt
@@ -212,7 +210,7 @@ drf-jwt==1.19.2
# via
# -r requirements/test.txt
# edx-drf-extensions
drf-spectacular==0.26.4
drf-spectacular==0.26.5
# via -r requirements/test.txt
edx-auth-backends==4.2.0
# via -r requirements/test.txt
@@ -326,7 +324,7 @@ monotonic==1.6
# analytics-python
mysqlclient==2.2.0
# via -r requirements/test.txt
newrelic==9.0.0
newrelic==9.1.0
# via
# -r requirements/test.txt
# edx-django-utils
@@ -585,12 +583,12 @@ tomlkit==0.12.1
# pylint
tox==3.28.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -r requirements/test.txt
# tox-battery
tox-battery==0.6.2
# via -r requirements/test.txt
types-pyyaml==6.0.12.11
types-pyyaml==6.0.12.12
# via
# -r requirements/test.txt
# responses
@@ -636,7 +634,7 @@ wrapt==1.15.0
# via
# -r requirements/test.txt
# astroid
xlsxwriter==3.1.4
xlsxwriter==3.1.5
# via -r requirements/test.txt
zipp==3.17.0
# via
8 changes: 4 additions & 4 deletions requirements/production.txt
Original file line number Diff line number Diff line change
@@ -136,7 +136,7 @@ django-model-utils==4.3.1
# -r requirements/base.txt
# edx-celeryutils
# edx-rbac
django-simple-history==3.0.0
django-simple-history==3.4.0
# via -r requirements/base.txt
django-waffle==4.0.0
# via
@@ -159,7 +159,7 @@ drf-jwt==1.19.2
# via
# -r requirements/base.txt
# edx-drf-extensions
drf-spectacular==0.26.4
drf-spectacular==0.26.5
# via -r requirements/base.txt
edx-auth-backends==4.2.0
# via -r requirements/base.txt
@@ -239,7 +239,7 @@ monotonic==1.6
# analytics-python
mysqlclient==2.2.0
# via -r requirements/base.txt
newrelic==9.0.0
newrelic==9.1.0
# via
# -r requirements/base.txt
# edx-django-utils
@@ -418,7 +418,7 @@ wcwidth==0.2.6
# via
# -r requirements/base.txt
# prompt-toolkit
xlsxwriter==3.1.4
xlsxwriter==3.1.5
# via -r requirements/base.txt
zipp==3.17.0
# via
14 changes: 6 additions & 8 deletions requirements/quality.txt
Original file line number Diff line number Diff line change
@@ -103,7 +103,7 @@ dill==0.3.7
# via pylint
django==3.2.21
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -c requirements/constraints.txt
# -r requirements/base.txt
# django-celery-results
@@ -151,10 +151,8 @@ django-model-utils==4.3.1
# -r requirements/base.txt
# edx-celeryutils
# edx-rbac
django-simple-history==3.0.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/base.txt
django-simple-history==3.4.0
# via -r requirements/base.txt
django-waffle==4.0.0
# via
# -r requirements/base.txt
@@ -176,7 +174,7 @@ drf-jwt==1.19.2
# via
# -r requirements/base.txt
# edx-drf-extensions
drf-spectacular==0.26.4
drf-spectacular==0.26.5
# via -r requirements/base.txt
edx-auth-backends==4.2.0
# via -r requirements/base.txt
@@ -262,7 +260,7 @@ monotonic==1.6
# analytics-python
mysqlclient==2.2.0
# via -r requirements/base.txt
newrelic==9.0.0
newrelic==9.1.0
# via
# -r requirements/base.txt
# edx-django-utils
@@ -469,7 +467,7 @@ wcwidth==0.2.6
# prompt-toolkit
wrapt==1.15.0
# via astroid
xlsxwriter==3.1.4
xlsxwriter==3.1.5
# via -r requirements/base.txt
zipp==3.17.0
# via
18 changes: 8 additions & 10 deletions requirements/test.txt
Original file line number Diff line number Diff line change
@@ -111,7 +111,7 @@ dill==0.3.7
distlib==0.3.7
# via virtualenv
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -c requirements/constraints.txt
# -r requirements/base.txt
# django-celery-results
@@ -161,10 +161,8 @@ django-model-utils==4.3.1
# -r requirements/base.txt
# edx-celeryutils
# edx-rbac
django-simple-history==3.0.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/base.txt
django-simple-history==3.4.0
# via -r requirements/base.txt
django-waffle==4.0.0
# via
# -r requirements/base.txt
@@ -186,7 +184,7 @@ drf-jwt==1.19.2
# via
# -r requirements/base.txt
# edx-drf-extensions
drf-spectacular==0.26.4
drf-spectacular==0.26.5
# via -r requirements/base.txt
edx-auth-backends==4.2.0
# via -r requirements/base.txt
@@ -282,7 +280,7 @@ monotonic==1.6
# analytics-python
mysqlclient==2.2.0
# via -r requirements/base.txt
newrelic==9.0.0
newrelic==9.1.0
# via
# -r requirements/base.txt
# edx-django-utils
@@ -482,12 +480,12 @@ tomlkit==0.12.1
# via pylint
tox==3.28.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -r requirements/test.in
# tox-battery
tox-battery==0.6.2
# via -r requirements/test.in
types-pyyaml==6.0.12.11
types-pyyaml==6.0.12.12
# via responses
typing-extensions==4.8.0
# via
@@ -526,7 +524,7 @@ wcwidth==0.2.6
# prompt-toolkit
wrapt==1.15.0
# via astroid
xlsxwriter==3.1.4
xlsxwriter==3.1.5
# via -r requirements/base.txt
zipp==3.17.0
# via
15 changes: 7 additions & 8 deletions requirements/validation.txt
Original file line number Diff line number Diff line change
@@ -142,7 +142,7 @@ distlib==0.3.7
# virtualenv
django==3.2.21
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -c requirements/constraints.txt
# -r requirements/quality.txt
# -r requirements/test.txt
@@ -207,9 +207,8 @@ django-model-utils==4.3.1
# -r requirements/test.txt
# edx-celeryutils
# edx-rbac
django-simple-history==3.0.0
django-simple-history==3.4.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -r requirements/quality.txt
# -r requirements/test.txt
django-waffle==4.0.0
@@ -240,7 +239,7 @@ drf-jwt==1.19.2
# -r requirements/quality.txt
# -r requirements/test.txt
# edx-drf-extensions
drf-spectacular==0.26.4
drf-spectacular==0.26.5
# via
# -r requirements/quality.txt
# -r requirements/test.txt
@@ -384,7 +383,7 @@ mysqlclient==2.2.0
# via
# -r requirements/quality.txt
# -r requirements/test.txt
newrelic==9.0.0
newrelic==9.1.0
# via
# -r requirements/quality.txt
# -r requirements/test.txt
@@ -649,12 +648,12 @@ tomlkit==0.12.1
# pylint
tox==3.28.0
# via
# -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt
# -c requirements/common_constraints.txt
# -r requirements/test.txt
# tox-battery
tox-battery==0.6.2
# via -r requirements/test.txt
types-pyyaml==6.0.12.11
types-pyyaml==6.0.12.12
# via
# -r requirements/test.txt
# responses
@@ -706,7 +705,7 @@ wrapt==1.15.0
# -r requirements/quality.txt
# -r requirements/test.txt
# astroid
xlsxwriter==3.1.4
xlsxwriter==3.1.5
# via
# -r requirements/quality.txt
# -r requirements/test.txt