Comparer les révisions

..
Auteur SHA1 Message Date
dependabot[bot] c24c0d3ac4 [UPDATE] Update model-bakery requirement
Updates the requirements on [model-bakery](https://github.com/model-bakers/model_bakery) to permit the latest version.
- [Release notes](https://github.com/model-bakers/model_bakery/releases)
- [Changelog](https://github.com/model-bakers/model_bakery/blob/main/CHANGELOG.md)
- [Commits](https://github.com/model-bakers/model_bakery/compare/1.24.1...1.24.2)

---
updated-dependencies:
- dependency-name: model-bakery
  dependency-version: 1.24.2
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-13 00:34:14 +00:00
thomas girod b560c6860b Merge pull request #1510 from ae-utbm/forum-message-403
short-circuit `ForumMessageView` redirection on 403
2026-10-13 00:12:07 +02:00
imperosol 22b510e25b short-circuit ForumMessageView redirection on 403
Quand on accède à cette vue, on est immédiatement redirigé vers le topic correspondant (quitte à se faire 403 une fois arrivé là). Comme la redirection est une opération qui a un cout, on peut gagner du temps en mettant un PermissionDenied directement (d'autant plus que les bots aiment beaucoup rechercher les messages du forum, et qu'ils se font systématiquement 403)
2026-10-09 16:09:54 +02:00
3 fichiers modifiés avec 10 ajouts et 8 suppressions

Aucun fichier ne correspond à votre recherche

+5 -2
Voir le fichier
@@ -346,13 +346,16 @@ class ForumTopicDetailView(CanViewMixin, DetailView):
return kwargs return kwargs
class ForumMessageView(SingleObjectMixin, RedirectView): class ForumMessageView(SingleObjectMixin, UserPassesTestMixin, RedirectView):
model = ForumMessage model = ForumMessage
pk_url_kwarg = "message_id" pk_url_kwarg = "message_id"
permanent = False permanent = False
def get_redirect_url(self, *args, **kwargs): def test_func(self) -> bool:
self.object = self.get_object() self.object = self.get_object()
return self.request.user.can_view(self.object)
def get_redirect_url(self, *args, **kwargs):
return self.object.get_url() return self.object.get_url()
+1 -1
Voir le fichier
@@ -76,7 +76,7 @@ tests = [
"pytest>=9.1.1,<10.0.0", "pytest>=9.1.1,<10.0.0",
"pytest-cov>=7.1.0,<8.0.0", "pytest-cov>=7.1.0,<8.0.0",
"pytest-django>=4.14.0,<5.0.0", "pytest-django>=4.14.0,<5.0.0",
"model-bakery>=1.24.1,<2.0.0", "model-bakery>=1.24.2,<2.0.0",
"beautifulsoup4>=4.15.0,<5", "beautifulsoup4>=4.15.0,<5",
"lxml>=6.1.3,<7", "lxml>=6.1.3,<7",
] ]
Générée
+4 -5
Voir le fichier
@@ -1,5 +1,5 @@
version = 1 version = 1
revision = 5 revision = 3
requires-python = ">=3.14, <4.0" requires-python = ">=3.14, <4.0"
[[package]] [[package]]
@@ -1919,7 +1919,6 @@ wheels = [
name = "sith" name = "sith"
version = "3" version = "3"
source = { editable = "." } source = { editable = "." }
default-groups = ["dev", "docs", "tests"]
dependencies = [ dependencies = [
{ name = "aemark" }, { name = "aemark" },
{ name = "celery", extra = ["redis"] }, { name = "celery", extra = ["redis"] },
@@ -2281,7 +2280,7 @@ wheels = [
[[package]] [[package]]
name = "virtualenv" name = "virtualenv"
version = "21.14.13" version = "21.14.4"
source = { registry = "https://pypi.org/simple" } source = { registry = "https://pypi.org/simple" }
dependencies = [ dependencies = [
{ name = "distlib" }, { name = "distlib" },
@@ -2290,9 +2289,9 @@ dependencies = [
{ name = "platformdirs" }, { name = "platformdirs" },
{ name = "python-discovery" }, { name = "python-discovery" },
] ]
sdist = { url = "https://files.pythonhosted.org/packages/70/aa/bff50daee0488e16d611258a9b6c5a1d0c9e128f8ca424e9f4e1c0444ef2/virtualenv-21.14.13.tar.gz", hash = "sha256:de5307ba4b9a0001d9c8ea02832d38f63ca432880f416c1bface61c4323fd905", size = 5570301, upload-time = "2026-10-22T20:10:16.952Z" } sdist = { url = "https://files.pythonhosted.org/packages/f5/3e/5a73d53ce67e43d3c1dabfbfcda956d2c840f21c2a65dc7256eaffe5ac38/virtualenv-21.14.4.tar.gz", hash = "sha256:d7f167214b3c4f69df5386677dae5091dbc9c400fc46080187ae28064c9d453d", size = 5464960, upload-time = "2026-10-02T13:49:00.365Z" }
wheels = [ wheels = [
{ url = "https://files.pythonhosted.org/packages/bb/a9/c10d8a44a29fb94a18b43fdf11f38caca53ae7c9406f11a72b1cb8f624f1/virtualenv-21.14.13-py3-none-any.whl", hash = "sha256:5fbb04138a4861580b78ba9110d529a26bc48fcc93c8ec36bc0202eeed96a788", size = 5557094, upload-time = "2026-10-22T20:10:15.096Z" }, { url = "https://files.pythonhosted.org/packages/89/69/49381b5dd39d930c4b42819a23b8f9f242dd256bf46fb9dcd7ce713fe5d5/virtualenv-21.14.4-py3-none-any.whl", hash = "sha256:2d1a394ef089220b4606408b184433e49417a6e5590a09c7b8a67fb1e013af56", size = 5487214, upload-time = "2026-10-02T13:48:58.227Z" },
] ]
[[package]] [[package]]