Source package over 2G crash the importer
When a source package upload includes a file over 2G, it fails to be added to the repository because the file size is coded on a IntegerField (int32).
To handle bigger files, the size should use BigIntegerField.
Trackback:
Traceback (most recent call last):
File "/var/www/debexpo/debexpo/importer/models.py", line 227, in process_spool
upload = self.process_upload(changes)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/debexpo/debexpo/importer/models.py", line 411, in process_upload
upload = self._accept_upload(changes, source, plugins)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/debexpo/debexpo/importer/models.py", line 424, in _accept_upload
self.repository.install(changes)
File "/usr/lib/python3.11/contextlib.py", line 81, in inner
return func(*args, **kwds)
^^^^^^^^^^^^^^^^^^^
File "/var/www/debexpo/debexpo/repository/models.py", line 300, in install
self._install_new_entries(files_to_install, pool_dir, changes)
File "/var/www/debexpo/debexpo/repository/models.py", line 279, in _install_new_entries
entry.full_clean()
File "/usr/lib/python3/dist-packages/django/db/models/base.py", line 1251, in full_clean
raise ValidationError(errors)
django.core.exceptions.ValidationError: {'size': ['Ensure this value is less than or equal to 2147483647.']}