@@ -37,22 +37,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
37
37
ConnectionPool updates information about each server state (RO/RW)
38
38
on initial connect and then asynchronously in separate threads.
39
39
Application retries must be written considering the asynchronous nature
40
- of cluster state refresh. User does not need to use any synchronization
40
+ of cluster state refresh. The user does not need to use any synchronization
41
41
mechanisms in requests, it's all handled with ConnectionPool methods.
42
42
43
- ConnectionPool API is the same as a plain Connection API.
44
- On each request, a connection is chosen to execute this request.
45
- A connection is chosen based on a request mode:
46
- * Mode.ANY chooses any instance.
47
- * Mode.RW chooses an RW instance.
48
- * Mode.RO chooses an RO instance.
49
- * Mode.PREFER_RW chooses an RW instance, if possible, RO instance
43
+ ConnectionPool API is the same as the plain Connection API.
44
+ On each request, a connection is chosen to execute the request.
45
+ A connection is chosen based on the request mode:
46
+ * ` Mode.ANY ` chooses any instance.
47
+ * ` Mode.RW ` chooses an RW instance.
48
+ * ` Mode.RO ` chooses an RO instance.
49
+ * ` Mode.PREFER_RW ` chooses an RW instance, if possible, an RO instance
50
50
otherwise.
51
- * Mode.PREFER_RO chooses an RO instance, if possible, RW instance
51
+ * ` Mode.PREFER_RO ` chooses an RO instance, if possible, an RW instance
52
52
otherwise.
53
- All requests that are guaranteed to write (insert, replace, delete,
54
- upsert, update) use RW mode by default. select uses ANY by default. You
55
- can set the mode explicitly. call, eval, execute and ping requests
53
+ All requests that guarantee to write data (insert, replace, delete,
54
+ upsert, update) use the RW mode by default.
55
+ The select request uses ` ANY ` by default. You
56
+ can set the mode explicitly. The call, eval, execute, and ping requests
56
57
require to set the mode explicitly.
57
58
58
59
Example:
@@ -69,35 +70,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
69
70
```
70
71
71
72
### Changed
72
- - ** Breaking** : drop Python 2 support (PR #207 ).
73
- - ** Breaking** : change binary types encode/decode for Python 3
74
- to support working with varbinary (PR #211 , #105 ).
75
- With Python 2 the behavior of the connector remains the same.
73
+ - ** Breaking change ** : Python 2 support dropped (PR #207 ).
74
+ - ** Breaking change ** : ` encode ` / ` decode ` binary types for Python 3 changed
75
+ to support working with ` varbinary ` (PR #211 , #105 ).
76
+ With Python 2, the behavior of the connector remains the same.
76
77
77
78
Before this patch:
78
79
79
- * encoding="utf-8" (default)
80
+ * ` encoding="utf-8" ` (default)
80
81
81
82
| Python 3 | -> | Tarantool | -> | Python 3 |
82
83
| ----------| ----| --------------------| ----| ----------|
83
84
| str | -> | mp_str (string) | -> | str |
84
85
| bytes | -> | mp_str (string) | -> | str |
85
86
| | | mp_bin (varbinary) | -> | bytes |
86
87
87
- * encoding=None
88
+ * ` encoding=None `
88
89
89
90
| Python 3 | -> | Tarantool | -> | Python 3 |
90
91
| ----------| ----| --------------------| ----| ----------|
91
92
| bytes | -> | mp_str (string) | -> | bytes |
92
93
| str | -> | mp_str (string) | -> | bytes |
93
94
| | | mp_bin (varbinary) | -> | bytes |
94
95
95
- Using bytes as key was not supported by several methods (delete,
96
- update, select) .
96
+ Several method (delete, update, select) did not support
97
+ using ` bytes ` as key .
97
98
98
99
After this patch:
99
100
100
- * encoding="utf-8" (default)
101
+ * ` encoding="utf-8" ` (default)
101
102
102
103
| Python 3 | -> | Tarantool | -> | Python 3 |
103
104
| ----------| ----| --------------------| ----| ----------|
@@ -112,13 +113,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
112
113
| str | -> | mp_str (string) | -> | bytes |
113
114
| | | mp_bin (varbinary) | -> | bytes |
114
115
115
- Using bytes as key are now supported by all methods .
116
+ All methods now support using ` bytes ` as key .
116
117
117
- Thus, encoding="utf-8" connection may be used to work with
118
- utf -8 strings and varbinary and encodine =None connection
119
- may be used to work with non-utf -8 strings.
118
+ Thus, an ` encoding="utf-8" ` connection may be used to work with
119
+ UTF -8 strings and ` varbinary ` , and an ` encoding =None` connection
120
+ may be used to work with non-UTF -8 strings.
120
121
121
- - Clarify license of the project (BSD-2-Clause) (PR #210 , #197 ).
122
+ - Clarify the license of the project (BSD-2-Clause) (PR #210 , #197 ).
122
123
- Migrate CI to GitHub Actions (PR #213 , PR #216 , #182 ).
123
124
- Various improvements and fixes in README (PR #210 , PR #215 ).
124
125
@@ -141,15 +142,15 @@ the dependency on the msgpack library.
141
142
142
143
### Added
143
144
- Support msgpack 1.0.0 (#155 , PR #173 ).
144
- - SQL support (<connection >.execute() method ) (#159 , PR #161 ).
145
- - Allow to receive a Tarantool tuple as a Python tuple, not a list, with
146
- use_list=False connection option (#166 , PR #161 ).
145
+ - SQL support (the method ` <connection>.execute() ` ) (#159 , PR #161 ).
146
+ - Allow receiving a Tarantool tuple as a Python tuple, not a list, with
147
+ the ` use_list=False ` connection option (#166 , PR #161 ).
147
148
- Support the Database API (PEP-0249) (PR #161 ).
148
149
149
150
### Changed
150
151
- Various improvements in README (PR #147 , PR #151 , PR #180 ).
151
152
152
153
### Fixed
153
- - Support encoding=None connections (PR #172 ).
154
+ - Support ` encoding=None ` connections (PR #172 ).
154
155
- Various improvements and fixes in tests (8ff9a3f, bd37703, PR #165 ,
155
156
#178 , PR #179 , PR #181 ).
0 commit comments