diff --git a/tests/unit/manage/test_views.py b/tests/unit/manage/test_views.py index 8f4a6783f7b4..f6f1e83068a1 100644 --- a/tests/unit/manage/test_views.py +++ b/tests/unit/manage/test_views.py @@ -8443,125 +8443,6 @@ def test_raises_404_with_out_of_range_page(self, db_request): assert views.manage_project_history(project, db_request) -class TestManageProjectJournal: - def test_get(self, db_request): - project = ProjectFactory.create() - older_journal = JournalEntryFactory.create( - name=project.name, - submitted_date=datetime.datetime(2017, 2, 5, 17, 18, 18, 462_634), - ) - newer_journal = JournalEntryFactory.create( - name=project.name, - submitted_date=datetime.datetime(2018, 2, 5, 17, 18, 18, 462_634), - ) - - assert views.manage_project_journal(project, db_request) == { - "project": project, - "journals": [newer_journal, older_journal], - } - - def test_raises_400_with_pagenum_type_str(self, monkeypatch, db_request): - params = MultiDict({"page": "abc"}) - db_request.params = params - - journals_query = pretend.stub() - db_request.journals_query = pretend.stub( - journals_query=lambda *a, **kw: journals_query - ) - - page_obj = pretend.stub(page_count=10, item_count=1000) - page_cls = pretend.call_recorder(lambda *a, **kw: page_obj) - monkeypatch.setattr(views, "SQLAlchemyORMPage", page_cls) - - url_maker = pretend.stub() - url_maker_factory = pretend.call_recorder(lambda request: url_maker) - monkeypatch.setattr(views, "paginate_url_factory", url_maker_factory) - - project = ProjectFactory.create() - with pytest.raises(HTTPBadRequest): - views.manage_project_journal(project, db_request) - - assert page_cls.calls == [] - - def test_first_page(self, db_request): - page_number = 1 - params = MultiDict({"page": page_number}) - db_request.params = params - - project = ProjectFactory.create() - items_per_page = 25 - total_items = items_per_page + 2 - for _ in range(total_items): - JournalEntryFactory.create( - name=project.name, submitted_date=datetime.datetime.now() - ) - journals_query = ( - db_request.db.query(JournalEntry) - .options(joinedload("submitted_by")) - .filter(JournalEntry.name == project.name) - .order_by(JournalEntry.submitted_date.desc(), JournalEntry.id.desc()) - ) - - journals_page = SQLAlchemyORMPage( - journals_query, - page=page_number, - items_per_page=items_per_page, - item_count=total_items, - url_maker=paginate_url_factory(db_request), - ) - assert views.manage_project_journal(project, db_request) == { - "project": project, - "journals": journals_page, - } - - def test_last_page(self, db_request): - page_number = 2 - params = MultiDict({"page": page_number}) - db_request.params = params - - project = ProjectFactory.create() - items_per_page = 25 - total_items = items_per_page + 2 - for _ in range(total_items): - JournalEntryFactory.create( - name=project.name, submitted_date=datetime.datetime.now() - ) - journals_query = ( - db_request.db.query(JournalEntry) - .options(joinedload("submitted_by")) - .filter(JournalEntry.name == project.name) - .order_by(JournalEntry.submitted_date.desc(), JournalEntry.id.desc()) - ) - - journals_page = SQLAlchemyORMPage( - journals_query, - page=page_number, - items_per_page=items_per_page, - item_count=total_items, - url_maker=paginate_url_factory(db_request), - ) - assert views.manage_project_journal(project, db_request) == { - "project": project, - "journals": journals_page, - } - - def test_raises_404_with_out_of_range_page(self, db_request): - page_number = 3 - params = MultiDict({"page": page_number}) - db_request.params = params - - project = ProjectFactory.create() - items_per_page = 25 - total_items = items_per_page + 2 - for _ in range(total_items): - JournalEntryFactory.create( - name=project.name, submitted_date=datetime.datetime.now() - ) - - with pytest.raises(HTTPNotFound): - assert views.manage_project_journal(project, db_request) - - class TestManageOIDCProviderViews: def test_initializes(self): metrics = pretend.stub() diff --git a/tests/unit/test_routes.py b/tests/unit/test_routes.py index 0b59c8c6d02f..47ac79fbd8a7 100644 --- a/tests/unit/test_routes.py +++ b/tests/unit/test_routes.py @@ -438,13 +438,6 @@ def add_policy(name, filename): traverse="/{project_name}", domain=warehouse, ), - pretend.call( - "manage.project.journal", - "/manage/project/{project_name}/journal/", - factory="warehouse.packaging.models:ProjectFactory", - traverse="/{project_name}", - domain=warehouse, - ), pretend.call( "packaging.project", "/project/{name}/", diff --git a/warehouse/locale/messages.pot b/warehouse/locale/messages.pot index 511cf1609a47..ca7dd6d376fc 100644 --- a/warehouse/locale/messages.pot +++ b/warehouse/locale/messages.pot @@ -2432,7 +2432,7 @@ msgid "Teams" msgstr "" #: warehouse/templates/includes/manage/manage-organization-menu.html:37 -#: warehouse/templates/includes/manage/manage-project-menu.html:59 +#: warehouse/templates/includes/manage/manage-project-menu.html:53 #: warehouse/templates/includes/manage/manage-team-menu.html:31 msgid "Settings" msgstr "" @@ -2457,16 +2457,12 @@ msgstr "" msgid "Security history" msgstr "" -#: warehouse/templates/includes/manage/manage-project-menu.html:37 -msgid "Journal" -msgstr "" - -#: warehouse/templates/includes/manage/manage-project-menu.html:44 +#: warehouse/templates/includes/manage/manage-project-menu.html:38 #: warehouse/templates/manage/project/documentation.html:21 msgid "Documentation" msgstr "" -#: warehouse/templates/includes/manage/manage-project-menu.html:52 +#: warehouse/templates/includes/manage/manage-project-menu.html:46 msgid "Publishing" msgstr "" @@ -4114,8 +4110,6 @@ msgstr "" #: warehouse/templates/manage/organization/roles.html:59 #: warehouse/templates/manage/organization/roles.html:190 -#: warehouse/templates/manage/project/journal.html:37 -#: warehouse/templates/manage/project/journal.html:52 #: warehouse/templates/manage/project/roles.html:374 #: warehouse/templates/manage/team/roles.html:43 #: warehouse/templates/manage/team/roles.html:94 @@ -4447,53 +4441,6 @@ msgstr "" msgid "Security history for %(project_name)s" msgstr "" -#: warehouse/templates/manage/project/journal.html:20 -#, python-format -msgid "'%(project_name)s' project journal" -msgstr "" - -#: warehouse/templates/manage/project/journal.html:23 -msgid "Project journal" -msgstr "" - -#: warehouse/templates/manage/project/journal.html:25 -msgid "" -"Each time you or your collaborators update this project, the action is " -"recorded and displayed here." -msgstr "" - -#: warehouse/templates/manage/project/journal.html:28 -#, python-format -msgid "" -"This feature will be deprecated in the future, replaced by the security history page." -msgstr "" - -#: warehouse/templates/manage/project/journal.html:32 -#, python-format -msgid "History for %(project_name)s" -msgstr "" - -#: warehouse/templates/manage/project/journal.html:35 -#: warehouse/templates/manage/project/journal.html:44 -msgid "Action" -msgstr "" - -#: warehouse/templates/manage/project/journal.html:36 -#: warehouse/templates/manage/project/journal.html:48 -msgid "Date" -msgstr "" - -#: warehouse/templates/manage/project/journal.html:45 -#, python-format -msgid "Release %(version)s:" -msgstr "" - -#: warehouse/templates/manage/project/journal.html:54 -#, python-format -msgid "from %(ip_address)s" -msgstr "" - #: warehouse/templates/manage/project/manage_project_base.html:20 #, python-format msgid "Manage '%(project_name)s'" diff --git a/warehouse/manage/views.py b/warehouse/manage/views.py index acfc993e97e7..039467a5e935 100644 --- a/warehouse/manage/views.py +++ b/warehouse/manage/views.py @@ -4502,40 +4502,6 @@ def manage_project_history(project, request): return {"project": project, "events": events} -@view_config( - route_name="manage.project.journal", - context=Project, - renderer="manage/project/journal.html", - uses_session=True, - permission="manage:project", - has_translations=True, -) -def manage_project_journal(project, request): - try: - page_num = int(request.params.get("page", 1)) - except ValueError: - raise HTTPBadRequest("'page' must be an integer.") - - journals_query = ( - request.db.query(JournalEntry) - .options(joinedload("submitted_by")) - .filter(JournalEntry.name == project.name) - .order_by(JournalEntry.submitted_date.desc(), JournalEntry.id.desc()) - ) - - journals = SQLAlchemyORMPage( - journals_query, - page=page_num, - items_per_page=25, - url_maker=paginate_url_factory(request), - ) - - if journals.page_count and page_num > journals.page_count: - raise HTTPNotFound - - return {"project": project, "journals": journals} - - @view_config( route_name="manage.project.documentation", context=Project, diff --git a/warehouse/routes.py b/warehouse/routes.py index 68ef91c05f90..3f4cb31cb712 100644 --- a/warehouse/routes.py +++ b/warehouse/routes.py @@ -422,13 +422,6 @@ def includeme(config): traverse="/{project_name}", domain=warehouse, ) - config.add_route( - "manage.project.journal", - "/manage/project/{project_name}/journal/", - factory="warehouse.packaging.models:ProjectFactory", - traverse="/{project_name}", - domain=warehouse, - ) # Packaging config.add_redirect("/p/{name}/", "/project/{name}/", domain=warehouse) diff --git a/warehouse/templates/includes/manage/manage-project-menu.html b/warehouse/templates/includes/manage/manage-project-menu.html index 5cf19fc4cff2..285ef09281ec 100644 --- a/warehouse/templates/includes/manage/manage-project-menu.html +++ b/warehouse/templates/includes/manage/manage-project-menu.html @@ -31,12 +31,6 @@ {% trans %}Security history{% endtrans %} -
{% trans %}Each time you or your collaborators update this project, the action is recorded and displayed here.{% endtrans %}
- -{% trans href=request.route_path('manage.project.history', project_name=project.normalized_name) %}This feature will be deprecated in the future, replaced by the security history page.{% endtrans %}
-| {% trans %}Action{% endtrans %} | -{% trans %}Date{% endtrans %} | -{% trans %}User{% endtrans %} | -
|---|---|---|
| - {% trans %}Action{% endtrans %} - {% if journal.version %} {% trans version=journal.version %}Release {{ version }}:{% endtrans %} {% endif %}{{ journal.action }} - | -- {% trans %}Date{% endtrans %} - {{ humanize(journal.submitted_date, time="true") }} - | -- {% trans %}User{% endtrans %} - {{ journal.submitted_by.username }} - {% trans ip_address=journal.submitted_from %}from {{ ip_address }}{% endtrans %} - | -