summaryrefslogtreecommitdiff
path: root/django/core/files/uploadedfile.py
AgeCommit message (Collapse)Author
2026-04-14Fixed #27150 -- Made base File objects truthy by default.VIZZARD-X
2025-07-23Refs #36500 -- Rewrapped long docstrings and block comments via a script.django-bot
Rewrapped long docstrings and block comments to 79 characters + newline using script from https://github.com/medmunds/autofix-w505.
2022-02-07Refs #33476 -- Reformatted code with Black.django-bot
2021-05-04Fixed CVE-2021-31542 -- Tightened path & file name sanitation in file uploads.Florian Apolloner
2018-03-12Removed redundant UploadedFile.DEFAULT_CHUNK_SIZE.Sergey Fedoseev
The same value is inherited from File.
2017-11-06Fixed #28776 -- Fixed a/an/and typos in docs and comments.Дилян Палаузов
2017-06-05Fixed #26651 -- Kept original file suffix in TemporaryUploadedFile nameClaude Paroz
Thanks Tim Graham for the review.
2017-04-07Fixed #27777 -- Made File.open() work with the with statement (#8310)Ingo Klöcker
Fixed #27777 -- Made File.open() work with the with statement
2017-02-21Refs #27656 -- Updated django.core docstring verbs according to PEP 257.Anton Samarchyan
2017-01-25Refs #23919 -- Replaced super(ClassName, self) with super().chillaranand
2017-01-25Refs #23919 -- Replaced errno checking with PEP 3151 exceptions.Tim Graham
2017-01-20Refs #23919 -- Removed unneeded force_str callsClaude Paroz
2016-06-11Removed unnecessary check in TemporaryUploadedFile.Jon Dufresne
If settings.FILE_UPLOAD_TEMP_DIR is the default value of None, NamedTemporaryFile will work the same as if nothing was passed.
2016-04-08Fixed E128 flake8 warnings in django/.Tim Graham
2015-02-06Sorted imports with isort; refs #23860.Tim Graham
2014-06-11Fixed #22680 -- I/O operation on closed file.Florian Apolloner
This patch is two-fold; first it ensure that Django does close everything in request.FILES at the end of the request and secondly the storage system should no longer close any files during save, it's up to the caller to handle that -- or let Django close the files at the end of the request.
2014-02-18Made content_type_extra optional for TemporaryUploadedFile and ↵Dmitro
MemoryUploadedFile. This provides better backwards compatibility for those constructing these objects manually. Refs #13721.
2013-11-19Use `classmethod` as a decorator.xuxiang
2013-11-03Fixed all E226 violationsAlex Gaynor
2013-11-02Replaced a hardcoded "2" with the right named constantAlex Gaynor
2013-09-10Fixed #21033 -- Fixed uploaded filenames not always being truncated to 255 ↵homm
characters
2013-07-11Fixed #13721 -- Added UploadedFile.content_type_extra.Benjamin Kagia
Thanks Waldemar Kornewald and mvschaik for work on the patch.
2012-08-30Replaced some smart_xxx by force_xxx equivalentClaude Paroz
smart_str/smart_text should only be used when a potential lazy string should be preserved in the result of the function call.
2012-08-12[py3] Made __repr__ return str with Python 3Claude Paroz
2012-08-07[py3] Ported django.utils.encoding.Aymeric Augustin
* Renamed smart_unicode to smart_text (but kept the old name under Python 2 for backwards compatibility). * Renamed smart_str to smart_bytes. * Re-introduced smart_str as an alias for smart_text under Python 3 and smart_bytes under Python 2 (which is backwards compatible). Thus smart_str always returns a str objects. * Used the new smart_str in a few places where both Python 2 and 3 want a str.
2012-05-19Marked bytestrings with b prefix. Refs #18269Claude Paroz
This is a preparation for unicode literals general usage in Django (Python 3 compatibility).
2012-05-05Replaced cStringIO.StringIO by io.BytesIO.Claude Paroz
Also replaced StringIO.StringIO by BytesIO in some other appropriate places. StringIO is not available in Python 3.
2012-04-29Fixed #18013 -- Use the new 'as' syntax for exceptions.Claude Paroz
Thanks Clueless for the initial patch. Note that unittest has been purposely left out (external package only used by Python 2.6).
2009-05-11Fixed #10404: ImageField height_field and width_field options no longer ↵Jacob Kaplan-Moss
depend on putting the image field after the height/width fields as they did after r9766. This bug actually exposed a related handful of inconsistancies in the underlying file handling and wraping, so a few related changes are in here as well: * Dimensions are also now calculated the moment the image is assigned to the field instead of upon save. * The base `File` object now when possible delegates its closed attribute down to the os-level file it wrapps. * In-memory files' `close()` now is a no-op. Without this certain APIs that should be able to handle in-memory files were failing. * Accessing `FieldFile.closed` used to open the file. That's silly, and it doesn't any more. * Some over-eager error handling was squishing some errors that would normally be raised. One unit test was incorrectly depending on this behavior, so the test was removed. Thanks to Armin Ronacher for much of this work. git-svn-id: http://code.djangoproject.com/svn/django/trunk@10737 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-05-08Fixed #7712, #9404, #10249, #10300: a light refactor and cleanup of file ↵Jacob Kaplan-Moss
storage and the `File` object. Thanks to Armin Ronacher and Alex Gaynor. git-svn-id: http://code.djangoproject.com/svn/django/trunk@10717 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-27FIxed #8156: `UploadedFile.__repr__` now returns a string, a good `__repr__` ↵Jacob Kaplan-Moss
should. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8636 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-27Fixed #7769: Added a couple missing file methods to `TemporaryUploadedFile`. ↵Jacob Kaplan-Moss
Thanks, Mads Sülau Jørgensen. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8634 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-10Fixed #7830 -- Removed all of the remaining, deprecated, non-oldforms features:Gary Wilson Jr
* Support for representing files as strings was removed. Use `django.core.files.base.ContentFile` instead. * Support for representing uploaded files as dictionaries was removed. Use `django.core.files.uploadedfile.SimpleUploadedFile` instead. * The `filename`, `file_name`, `file_size`, and `chuck` properties of `UploadedFile` were removed. Use the `name`, `name`, `size`, and `chunks` properties instead, respectively. * The `get_FIELD_filename`, `get_FIELD_url`, `get_FIELD_size`, and `save_FIELD_file` methods for Models with `FileField` fields were removed. Instead, use the `path`, `url`, and `size` attributes and `save` method on the field itself, respectively. * The `get_FIELD_width` and `get_FIELD_height` methods for Models with `ImageField` fields were removed. Use the `width` and `height` attributes on the field itself instead. * The dispatcher `connect`, `disconnect`, `send`, and `sendExact` functions were removed. Use the signal object's own `connect`, `disconnect`, `send`, and `send` methods instead, respectively. * The `form_for_model` and `form_for_instance` functions were removed. Use a `ModelForm` subclass instead. * Support for importing `django.newforms` was removed. Use `django.forms` instead. * Support for importing `django.utils.images` was removed. Use `django.core.files.images` instead. * Support for the `follow` argument in the `create_object` and `update_object` generic views was removed. Use the `django.forms` package and the new `form_class` argument instead. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8291 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-08File storage refactoring, adding far more flexibility to Django's file ↵Jacob Kaplan-Moss
handling. The new files.txt document has details of the new features. This is a backwards-incompatible change; consult BackwardsIncompatibleChanges for details. Fixes #3567, #3621, #4345, #5361, #5655, #7415. Many thanks to Marty Alchin who did the vast majority of this work. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8244 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-05Fixed #7683: Try not to delete uploaded files before moving them, and don't ↵Jacob Kaplan-Moss
wig out of someone else does. Patch from screeley and spaetz. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8217 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-26Fixed #7658 -- Added some Windows-specific tempfile handling. The standardMalcolm Tredinnick
stuff doesn't work with the way Django's file uploading code wants to operate. Patch from Mike Axiak. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8096 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-12Fixed #7675: corrected TemporaryUploadedFile.temporary_file_path. Thanks, ↵Jacob Kaplan-Moss
Florian Apolloner. git-svn-id: http://code.djangoproject.com/svn/django/trunk@7908 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-07Fixed deprecated UploadedFile.data attribute. Refs #7614.Jacob Kaplan-Moss
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7861 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-07Added a missing deprecated property (UploadedFile.filename) from [7859]. ↵Jacob Kaplan-Moss
Refs #7614. git-svn-id: http://code.djangoproject.com/svn/django/trunk@7860 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-07Fixed #7614: the quickening has come, and there now is only one ↵Jacob Kaplan-Moss
UploadedFile. On top of that, UploadedFile's interface has been improved: * The API now more closely matches a proper file API. This unfortunately means a few backwards-incompatible renamings; see BackwardsIncompatibleChanges. This refs #7593. * While we were at it, renamed chunk() to chunks() to clarify that it's an iterator. * Temporary uploaded files now property use the tempfile library behind the scenes which should ensure better cleanup of tempfiles (refs #7593 again). Thanks to Mike Axiak for the bulk of this patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@7859 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-03Corrected typo in `uploadedfile` module.Gary Wilson Jr
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7829 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-01Oops, missed a changed file in [7817].Jacob Kaplan-Moss
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7818 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-01Fixed #2070: refactored Django's file upload capabilities.Jacob Kaplan-Moss
A description of the new features can be found in the new [http://www.djangoproject.com/documentation/upload_handing/ upload handling documentation]; the executive summary is that Django will now happily handle uploads of large files without issues. This changes the representation of uploaded files from dictionaries to bona fide objects; see BackwardsIncompatibleChanges for details. git-svn-id: http://code.djangoproject.com/svn/django/trunk@7814 bcc190cf-cafb-0310-a4f2-bffc1f526a37