Commit Graph

227 Commits

Author SHA1 Message Date
Steven Silvester
7ec9c07081
PYTHON-5303 Add missing gridfs synchronous init file (#2279) 2025-04-11 16:20:08 -05:00
Noah Stapp
a3f3ec52bc
PYTHON-4946 - Add GridFSBucket.rename_by_name (#2219) 2025-03-31 14:02:06 -04:00
Noah Stapp
8675a163df
PYTHON-4947 - GridFS spec: Add performant 'delete revisions by filena… (#2218) 2025-03-31 09:07:53 -04:00
Noah Stapp
a0951515f4
PYTHON-5238 - Add async GridFS API docs (#2235) 2025-03-28 11:12:49 -04:00
Shane Harvey
e52965eea4
Remove redundant branch in GridFS (#2064) 2025-02-27 15:07:50 -08:00
Iris
1f7f8a9e0f
PYTHON-5081 Convert test.test_gridfs to async (#2099) 2025-02-11 10:27:43 -08:00
The Light
44d1d40d65
PYTHON-5115 Type validation errors should include the invalid type name (#2085)
Co-authored-by: Iris Ho <iris.ho@mongodb.com>
2025-01-31 12:01:58 -08:00
Noah Stapp
4e74c8274e
PYTHON-4669 - Update Async GridFS APIs for Motor Compatibility (#1821) 2024-09-04 08:58:14 -04:00
Noah Stapp
81ea92b808
PYTHON-4669 - Update More APIs for Motor Compatibility (#1815) 2024-08-27 13:38:42 -04:00
Steven Silvester
adf8817df8
PYTHON-4584 Add length option to Cursor.to_list for motor compat (#1791) 2024-08-14 13:13:56 -05:00
Noah Stapp
a3cd7045df
PYTHON-4549 - Optimize Cursor.to_list (#1749) 2024-07-30 15:45:30 -07:00
Noah Stapp
636603f893
PYTHON-4552 - Make AsyncCollection.find synchronous (#1734) 2024-07-16 11:05:51 -07:00
Noah Stapp
1b3dea3f03
PYTHON-4533 - Convert test/test_transactions.py to async (#1732) 2024-07-15 16:45:59 -07:00
Noah Stapp
ffa6555485
PYTHON-4476 Separate data and IO classes more effectively (#1678) 2024-06-26 10:12:39 -07:00
Noah Stapp
d6bf0e1e78
PYTHON-4264 Async PyMongo Beta (#1629) 2024-06-06 09:01:24 -07:00
Steven Silvester
8f7b86f3f3
PYTHON-4057 Emit DeprecationWarning for deprecated GridFS apis (#1593) 2024-04-16 11:02:05 -05:00
Shane Harvey
2fc4282acd
PYTHON-4146 Improve GridFS upload performance by batch writing chunks with insert_many (#1478) 2024-01-22 10:53:53 -08:00
Jib
60d0761527
PYTHON-2884: Replaced SON usage in all internal classes and commands (#1426) 2023-12-19 15:42:23 -08:00
Steven Silvester
6537415da7
PYTHON-3605 Move type annotations to parameter list in rendered docs (#1441) 2023-11-27 09:24:00 -06:00
Steven Silvester
992d1507e7
PYTHON-4005 Replace flake8 and isort with ruff (#1399) 2023-10-19 11:56:22 -05:00
Noah Stapp
611303ac00
PYTHON-3916 Deprecate Deprecated GridFS Fields, remove in 5.0 (#1379) 2023-09-19 10:41:24 -07:00
Steven Silvester
6f4e617e6d
PYTHON-3905 Use from __future__ import annotations in all files (#1370)
* PYTHON-3905 Use from __future__ import annotations in all files

* cleanup

* cleanup

* cleanup
2023-09-11 10:49:24 -05:00
Soroush Mahdavi
c6a6ea6066
PYTHON-3511 Remove Python 2 references from the docs (#1161)
Co-authored-by: Nicky Lee <40870742+iceypotato@users.noreply.github.com>
Co-authored-by: DanielZavala11 <89770626+DanielZavala11@users.noreply.github.com>
Co-authored-by: Shane Harvey <shane.harvey@mongodb.com>
2023-07-14 15:30:14 -04:00
Iris
c33b9d6b4d
PYTHON-3780 add types to cursor.py (#1290) 2023-07-13 12:40:30 -07:00
Noah Stapp
ec3437849e
PYTHON-3702 Stop using utcnow and utcfromtimestamp (#1229) 2023-06-12 15:43:30 -07:00
Shane Harvey
0092b0af79
PYTHON-2504 Run pyupgrade 3.4.0 and ruff 0.0.265 (#1196)
pyupgrade --py37-plus bson/*.py pymongo/*.py gridfs/*.py test/*.py tools/*.py test/*/*.py
ruff --fix-only --select ALL --fixable ALL --target-version py37 --line-length=100 --unfixable COM812,D400,D415,ERA001,RUF100,SIM108,D211,D212,SIM105,SIM,PT,ANN204,EM bson/*.py pymongo/*.py gridfs/*.py test/*.py test/*/*.py
2023-05-11 15:27:17 -07:00
Jean-Christophe Fillion-Robin
d340710e3d
PYTHON-3703 Fix typos and add codespell pre-commit hook (#1203)
Update pre-commit config adding "codespell" hook
2023-05-03 14:47:24 -07:00
Shane Harvey
da4df79555
PYTHON-3508 Improve the performance of GridOut.readline and GridOut.read (#1109) 2022-11-07 10:37:33 -08:00
Steven Silvester
a00aabfa0d
PYTHON-3502 GridFSBucket.download_to_stream slow (#1108) 2022-11-04 13:47:32 -05:00
Shane Harvey
935f926bd9
PYTHON-3362 Ignore wtimeout when timeoutMS or timeout() is configured (#1013)
Apply client timeoutMS to gridfs operations.
2022-07-19 17:46:09 -07:00
Steven Silvester
b40f13bf7d
PYTHON-3311 Module "pymongo" does not explicitly export attribute "MongoClient"; implicit reexport disabled (#994) 2022-07-06 18:30:00 -05:00
Ben Warner
4ae93c4937
PYTHON-1552 Prevent uploading partial or corrupt GridFS files after an error occurs 2022-06-16 15:26:27 -07:00
Shane Harvey
6e99bf4515 BUMP 4.1.0 2022-04-04 10:57:01 -07:00
Steven Silvester
b3604a81d3
PYTHON-3171 Add usage of NoReturn annotation (#901) 2022-03-16 15:26:10 -05:00
Steven Silvester
a0fe7c03af
PYTHON-3120 Set up flake8 linting (#868) 2022-02-17 06:44:08 -06:00
Steven Silvester
80314255d7
PYTHON-3092 Add Type Discovery Files (#863) 2022-02-11 12:41:29 -06:00
Steven Silvester
5578999a90
PYTHON-1834 Use a code formatter (#852) 2022-02-09 06:44:28 -06:00
Steven Silvester
dd6c140d43
PYTHON-3060 Add typings to pymongo package (#831) 2022-02-02 21:12:36 -06:00
Steven Silvester
52ed5a4135
PYTHON-3052 Add Typings to PyMongo Itself (#829) 2022-01-13 16:09:48 -06:00
Shane Harvey
e27131546c
PYTHON-2998 Remove md5 checksums from gridfs and remove disable_md5 (#776)
Speed up gridfs tests (shaves off about 2 minutes on macOS).
2021-11-04 17:25:11 -07:00
Shane Harvey
fb38fbe35e
PYTHON-2046 Change default JSONMode and dumps output from LEGACY to RELAXED (#711) 2021-09-08 11:33:41 -07:00
henrifroese
fa9531b4bf
PYTHON-2824 Make GridOut implement full io.IOBase spec (#677)
Make GridOut inherit from io.IOBase to be a fully "file-like" object (https://docs.python.org/3/glossary.html#term-file-like-object). Implement missing methods `readlines`, `writelines`,
`writable`, `fileno`, `flush`, `isatty`, `truncate`,
and property `closed`, following the spec
(https://docs.python.org/3/library/io.html#io.IOBase.writable).

Iterating over GridOut previously returned chunks, but IOBase specifies
that lines should be returned. Thus, the `GridOutIterator` returning chunks is removed
and GridOut simply uses the existing IOBase iterator implementation (returning `self`
in `__iter__` and using `readline` in `__next__`).

Additionally, iterating over GridOut previously did not move the "file pointer" along, i.e.
`next(iter(some_grid_out_object))` always gave the same result (the first chunk of the file)
as it would create a new iterator starting at the top of the file. This is now fixed as well, so
a first call to `next(iter(some_grid_out_object))` gives the first line, and subsequent calls return
the subsequent lines.
2021-08-23 11:45:34 -04:00
Shane Harvey
f9bfd11290
PYTHON-2870 Add support for man/text/latex/etc.. docs output (#708)
Regenerate sphinx makefile with sphinx-quickstart 3.5.4.
Remove problematic mongodoc sphinx extension.
2021-08-19 13:31:46 -07:00
Bernie Hackett
521f7b9af4 PYTHON-2133 Fix up docs
And finish deleting python 2 specific code.
2021-01-21 15:49:23 -08:00
Bernie Hackett
88bb1b4608 PYTHON-2133 Remove Py2 compatibility from gridfs 2021-01-19 21:08:27 -08:00
Shane Harvey
5d92b2f552
PYTHON-2243 Raise informative error message when attempting a GridFS operation in a transaction (#454) 2020-07-07 18:55:17 -07:00
Bernie Hackett
6ec594eef1 PYTHON-1738 GridFS length should be an int64 2019-07-15 13:05:16 -07:00
Prashant Mital
749116287a
PYTHON-1783 Decode user-facing documents but not internal driver-server
communications.
2019-04-16 15:01:42 -07:00
Terence D. Honles
481600b7fe PYTHON-1695 GridOut/GridIn more closely implement io.IOBase (#387)
Allows GridOut to be wrapped with zipfile.ZipFile from the stdlib.
2019-03-28 14:25:06 -07:00
Shane Harvey
956fd92e82 PYTHON-1721 Improve GridFS file download performance (#413)
This change uses a cursor to download all the chunks in a GridFS file
instead of using individual find_one operations to read each chunk.
Detect truncated/missing/extra chunks in _GridOutChunkIterator.
Only detect extra chunks after reading the final chunk, not on every
call to read().
Retry once after CursorNotFound for backward compatibility.
2019-03-13 15:44:40 -07:00