This repository was archived by the owner on May 6, 2026. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2626from google .cloud .ndb import tasklets
2727
2828
29- class _LocalState ( threading . local ):
30- """Thread local state."""
29+ try : # pragma: NO PY2 COVER
30+ import contextvars
3131
32- def __init__ (self ):
33- self .context = None
34- self .toplevel_context = None
32+ class _LocalState :
33+ """Thread local state."""
34+
35+ def __init__ (self ):
36+ self ._toplevel_context = contextvars .ContextVar (
37+ "_toplevel_context" , default = None
38+ )
39+ self ._context = contextvars .ContextVar ("_context" , default = None )
40+
41+ @property
42+ def context (self ):
43+ return self ._context .get ()
44+
45+ @context .setter
46+ def context (self , value ):
47+ self ._context .set (value )
48+
49+ @property
50+ def toplevel_context (self ):
51+ return self ._toplevel_context .get ()
52+
53+ @toplevel_context .setter
54+ def toplevel_context (self , value ):
55+ self ._toplevel_context .set (value )
56+
57+
58+ except ImportError : # pragma: NO PY3 COVER
59+
60+ class _LocalState (threading .local ):
61+ """Thread local state."""
62+
63+ def __init__ (self ):
64+ self .context = None
65+ self .toplevel_context = None
3566
3667
3768_state = _LocalState ()
Original file line number Diff line number Diff line change 1414
1515import io
1616import os
17+ import sys
1718
1819import setuptools
1920
@@ -28,6 +29,9 @@ def main():
2829 "redis" ,
2930 ]
3031
32+ if sys .version_info .major == 3 and sys .version_info .minor < 7 :
33+ dependencies .append ("contextvars" )
34+
3135 setuptools .setup (
3236 name = "google-cloud-ndb" ,
3337 version = "1.4.2" ,
You can’t perform that action at this time.
0 commit comments