Skip to content

Commit f1c7fa8

Browse files
authored
Finish translation from rst files to markdown
1 parent 9ef64e7 commit f1c7fa8

File tree

4 files changed

+381
-418
lines changed

4 files changed

+381
-418
lines changed

CHANGELOG.md

Lines changed: 362 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,362 @@
1+
---
2+
title: Change Log
3+
---
4+
5+
All notable changes to this project will be documented in this file.
6+
7+
The format is based on [Keep a Changelog](http://keepachangelog.com/).
8+
====================
9+
10+
# Unreleased
11+
12+
## Added
13+
14+
- Cloud only: new regions: sa-bogota-1, us-dcc-swjordan-1,
15+
us-dcc-swjordan-2
16+
17+
## Changed
18+
19+
- Cloud only: changed domain for OC22/NAP/eu-dcc-rome-1
20+
21+
# 5.4.1 - 2023-08-01
22+
23+
IMPORTANT: This release drops support for Python 2 and supports only
24+
Python 3.5 and higher
25+
26+
## Added
27+
28+
- Cloud only: New regions: mx-monterrey-1, eu-frankfurt-2,
29+
eu-madrid-2, eu-jovanovac-1, eu-dcc-rome-1, eu-dcc-zurich-1,
30+
us-dcc-phoenix-4, us-saltlake-2, sa-valparaiso-1
31+
32+
- Support for new, flexible wire protocol (V4) has been added. The
33+
previous protocol is still supported for communication with servers that
34+
do not yet support V4. The version negotation is internal and automatic;
35+
however, use of V4 features will fail at runtime when attempted with an
36+
older server. Failure may be an empty or undefined result or an
37+
exception if the request cannot be serviced at all. The following new
38+
features or interfaces depend on the new protocol version
39+
40+
- added set/get_durability to QueryRequest for queries that modify data
41+
- added pagination information to TableUsageResult and TableUsageRequest
42+
- added shard percent usage information to TableUsageResult
43+
- added IndexInfo.get_field_types to return the type information on an index on
44+
a JSON field
45+
- added the ability to ask for and receive the schema of a query using
46+
- PrepareRequest.set_get_query_schema
47+
- PreparedStatement.get_query_schema
48+
- Cloud only: added use of ETags, DefinedTags and FreeFormTags in
49+
TableRequest and TableResult
50+
- On-premises only. Added support for default namespace and per-request namespace specification
51+
52+
## Changed
53+
54+
- Dropped support for Python 2.x
55+
56+
# 5.3.7 - 2022-12-12
57+
58+
NOTE: version 5.3.6 was skipped
59+
60+
### Fixed
61+
62+
- Fixed import package collections.abc for Callable.
63+
64+
## Added
65+
66+
- Cloud only: New regions: us-tacoma-1, us-chicago-1, eu-dcc-milan-1,
67+
eu-dcc-milan-2, eu-dcc-dublin-1, eu-dcc-dublin-2, eu-dcc-rating-1,
68+
eu-dcc-rating-2, us-westjordan-1, us-dcc-phoenix-1, us-dcc-phoenix-2
69+
- Added new method borneo.NoSQLHandle.query_iterable(query_request) to
70+
get an iterable that contains all the results of a query.
71+
- Added support for specifying update operations from parent and child
72+
tables when executing write_multiple operations.
73+
74+
# 5.3.5 - 2022-08-09
75+
76+
## Fixed
77+
78+
- Cloud only. Fixed references to the OCI \"auth\" package from iam.py
79+
that could lead to the error, \"name \'auth\' is not defined.\"
80+
81+
# 5.3.4 - 2022-06-13
82+
83+
## Fixed
84+
85+
- Cloud only. Recognize the region parameter in the SignatureProvider
86+
constructor when an explicit provider is passed
87+
88+
## Added
89+
90+
- Added client statistics. Users can enable internal driver statistics
91+
by using `NOSQL_STATS_PROFILE=[none|regular|more|all]` environment
92+
variable or by using the `NoSQLHandleConfig.set_stats_profile()`
93+
api.
94+
- Cloud only: New regions: eu-paris-1, eu-madrid-1 and mx-queretaro-1.
95+
96+
# 5.3.3 - 2022-04-19
97+
98+
## Fixed
99+
100+
- Cloud only: fixed the internal, automatic refresh of the security
101+
token when using Instance Principal authentication so that it is
102+
done well before the token expires
103+
- Use selective module import for OCI SDK modules, and set the
104+
environment variable, OCI_PYTHON_SDK_NO_SERVICE_IMPORTS=1, to
105+
improve import speed by suppressing import of unnecessary modules
106+
from the OCI SDK
107+
- Added dependencies to setup.py so that \"pip install\" automatically
108+
includes them
109+
110+
## Added
111+
112+
- Support for session persistence. If a Set-Cookie HTTP header is
113+
present borneo will now set a Cookie header using the requested
114+
session value
115+
116+
# 5.3.0 - 2022-02-17
117+
118+
## Added
119+
120+
- Cloud only: support for on-demand tables
121+
- Changes to TableLimits to specify on-demand tables
122+
- Existing row modification is made available in Results when the
123+
operation fails and the previous is requested
124+
- On-premise only: support for setting Durability in write operations
125+
- Added Durability class and methods to set Durability
126+
127+
## Changed
128+
129+
- Cloud only: updated OCI regions
130+
- The SDK now detects the version of the server it\'s connected to and
131+
adjusts its capabilities to match. This allows the SDK to
132+
communicate with servers that may only support an earlier protocol
133+
version, with the corresponding feature restrictions
134+
135+
## Fixed
136+
137+
- Fixed handling of request id so that each request now gets a new id
138+
139+
# 5.2.4 - 2021-05-19
140+
141+
NOTE: a couple of versions were skipped because of internal versioning
142+
issues. There are no public releases for 5.2.2 and 5.2.3
143+
144+
## Added
145+
146+
- Added NoSQLHandleConfig.set_max_content_length to allow on-premise
147+
configuration of a maximum request content size. It defaults to
148+
32MB.
149+
- If a delegation token is being used for authorization the HTTP
150+
header, \'opc-obo-token\' will be sent with the contents of the
151+
token.
152+
- Rate Limiting (cloud only):
153+
- New method NoSQLHandleConfig.set_rate_limiting_enabled to enable
154+
automatic internal rate limiting based on table read and write
155+
throughput limits.
156+
- If rate limiting is enabled:
157+
- NoSQLHandleConfig.set_default_rate_limiting_percentage can
158+
control how much of a table\'s full limits this client
159+
handle can consume (default = 100%).
160+
- Result classes now have a Result.get_rate_limit_delayed_ms
161+
method to return the amount of time an operation was delayed
162+
due to internal rate limiting.
163+
- Add rate limiting example and test.
164+
- RetryStats: New object allows the application to see how much time
165+
and for what reasons an operation was internally retried.
166+
- For successful operations, retry stats can be retrieved using
167+
Result.get_retry_stats.
168+
- Otherwise, the original Request may have retry stats available
169+
via Request.get_retry_stats (for example, after an exception was
170+
thrown).
171+
- Cloud only: New regions: ap-chiyoda-1, me-dubai-1, sa-santiago-1 and
172+
uk-cardiff-1.
173+
- Added dependency on dateutil package for flexible timestamp handling
174+
175+
## Changed
176+
177+
- DefaultRetryHandler now uses incremental backoff mechanism (instead
178+
of fixed 1-second delay) and may be extended.
179+
- Updated examples to use NoSQLHandle.do_table_request instead of
180+
NoSQLHandle.table_request followed by
181+
TableResult.wait_for_completion.
182+
- Change PreparedStatement.set_variable method to support both name
183+
and position variables.
184+
- Enhance handling of TIMESTAMP types to better handle a datetime
185+
instance with an explicit timezone. By default fields of type
186+
TIMESTAMP returned by the system are represented by a \"naive\" (not
187+
timezone aware) datetime object in the timezone UTC.
188+
- Timestamp and log level are no longer hard-coded in log messages -
189+
rather the default logger is configured with a formatter that
190+
includes them. An application that provides its own logger may
191+
choose its own format.
192+
- Adjusted several log messages to use more appropriate levels (ERROR
193+
for errors, DEBUG for chatter).
194+
195+
## Fixed
196+
197+
- Fixed a performance issue that causes results to be returned more
198+
slowly as they got larger. The Python List pop() method was
199+
mistakenly being used on large arrays.
200+
- Ensure that TableLimits is always None in TableResult on-premise.
201+
- Fixed synchronization problem in SignatureProvider.
202+
- Fixed a problem where the cloud service might succeed when dropping
203+
a table that does not exist without using \"drop table if exists\"
204+
when it should throw TableNotFoundException
205+
206+
## Removed
207+
208+
- NoSQLHandleConfig.set_sec_info_timeout and
209+
NoSQLHandleConfig.get_sec_info_timeout has been removed.
210+
211+
# 5.2.1 - 2020-08-14
212+
213+
## Added
214+
215+
- Added NoSQLHandleConfig.set_ssl_cipher_suites to allow the user to
216+
configure preferred SSL ciphers, and
217+
NoSQLHandleConfig.get_ssl_cipher_suites to get the ssl cipher
218+
setting.
219+
- Added NoSQLHandleConfig.set_ssl_protocol to allow the user to
220+
configure preferred SSL protocol, and
221+
NoSQLHandleConfig.get_ssl_protocol to get the ssl protocol setting.
222+
- Added NoSQLHandleConfig.set_ssl_ca_certs to allow the user to
223+
configure SSL CA certificates, and
224+
NoSQLHandleConfig.get_ssl_ca_certs to get the SSL CA certificates
225+
setting.
226+
- Cloud only. Added new regions: AP_HYDERABAD_1, AP_MELBOURNE_1,
227+
AP_OSAKA_1, CA_MONTREAL_1, EU_AMSTERDAM_1, ME_JEDDAH_1.
228+
- Cloud only. Added support for authenticating via Resource Principal.
229+
This can be used in Oracle Cloud Functions to access NoSQL cloud
230+
service:
231+
- Added a new method
232+
SignatureProvider.create_with_resource_principal.
233+
- Added a new method
234+
SignatureProvider.get_resource_principal_claim to retrieve
235+
resource principal metadata with ResourcePrincipalClaimKeys such
236+
as compartment and tenancy OCID.
237+
- Added generic group by and SELECT DISTINCT. These features will only
238+
work with servers that also support generic group by.
239+
240+
## Changed
241+
242+
- Cloud only. Added the support in SignatureProvider to configure and
243+
pass region to NoSQLHandleConfig:
244+
- SignatureProvider built with OCI standard config file is now
245+
able to read \'region\' parameter from config file and pass to
246+
NoSQLHandleConfig implicitly.
247+
- Change constructor of SignatureProvider to allow passing Region
248+
programmatically with user profile.
249+
- Change the method
250+
SignatureProvider.create_with_instance_principal to allow
251+
setting Region with instance principal.
252+
- Deprecated QueryRequest.set_continuation_key and
253+
QueryRequest.get_continuation_key, use QueryRequest.is_done instead.
254+
255+
## Fixed
256+
257+
- On-premise only. Don\'t validate request sizes.
258+
- TableUsageRequest: added validation check that end time must be
259+
greater than start time if both of them are specified, throw IAE if
260+
end time is smaller than start time.
261+
- Changed min/max implementation to make them deterministic.
262+
- On-premise only. Fixed a problem where the HTTP Host header was not
263+
being adding in all request cases. This prevented use of an
264+
intermediate proxy such as Nginx, which validates headers.
265+
266+
## Removed
267+
268+
- The requirement of third party package \"cryptography\" has been
269+
removed.
270+
- The TableBusyException has been removed.
271+
272+
# 5.2.0 - 2020-02-20
273+
274+
## Added
275+
276+
- OCI Native support for the cloud service
277+
- Include support for IAM based security in the cloud service.
278+
- When using the cloud service, tables are now created in
279+
compartments. Compartments can be specified for tables in APIs
280+
and query statements. By default the compartment is the root
281+
compartment of the tenancy when authenticated as a specific
282+
user. The compartment name or id can be specified by default in
283+
NoSQLHandleConfig or specified in each Request object. The
284+
compartment name can also be used as a prefix on a table name
285+
where table names are accepted and in queries, e.g.
286+
\"mycompartment:mytable\".
287+
288+
## Removed
289+
290+
- Removed support for IDCS based security in the cloud service.
291+
- TableResult.wait_for_state() has been removed. Use
292+
wait_for_completion().
293+
294+
# 5.1.0 - 2019-08-30
295+
296+
## Added
297+
298+
- Added PutRequest.set_exact_match() to allow the user to control
299+
whether an exact schema match is required on a put. The default
300+
behavior is false.
301+
- Support for complex, multi-shard queries:
302+
- Sorted/ordered multi-shard queries.
303+
- Multi-shard aggregation.
304+
- Geo-spatial queries such as geo_near().
305+
- Support for Identity Columns:
306+
- Added PutRequest.get/set_identity_cache_size() to allow a user
307+
to control the number of cached values are used for identity
308+
columns. The default value is set when the identity column is
309+
defined.
310+
- Added PutResult.get_generated_value() which will return a
311+
non-none value if an identity column value was generated by the
312+
operation. This is only relevant for tables with an identity
313+
column defined.
314+
- Added a new, simpler TableResult.wait_for_completion() method to
315+
wait for the completion of a TableRequest vs waiting for a specific
316+
state.
317+
- Added NoSQLHandle.do_table_request() to encapsulate a TableRequest
318+
and waiting for its completion in a single, synchronous call.
319+
- Added OperationNotSupportedException to handle operations that are
320+
specific to on-premise and cloud service environments.
321+
- Support for both the Oracle NoSQL Database Cloud Service and the
322+
on-premise Oracle NoSQL Database product.
323+
- Added StoreAccessTokenProvider for authentication of access to
324+
an on-premise store
325+
326+
- Added AuthenticationException to encapsulate authentication
327+
problems when accessing an on-premise store.
328+
329+
- Added SystemRequest, SystemStatusRequest, and SystemResult for
330+
administrative operations that are not table-specific.
331+
332+
- Added methods on NoSQLHandle for *system* requests, which are
333+
those that do not involve specific tables:
334+
335+
> - system_request(), system_status(), list_namespaces(),
336+
> list_users(), list_roles()
337+
338+
- Added NoSQLHandle.do_system_request to encapsulate a
339+
SystemRequest and waiting for its completion in a single,
340+
synchronous call.
341+
342+
- Now that the driver can access both the cloud service and an
343+
on-premise store some operations, classes and exceptions are
344+
specific to each environment. These are noted in updated API
345+
documentation.
346+
347+
## Changed
348+
349+
- Parameters to TableResult.wait_for_state() changed. It is no longer
350+
static and acts on *self*, modifying state as required.
351+
352+
## Removed
353+
354+
- TableResult.wait_for_state_res() has been removed. Use
355+
wait_for_state().
356+
357+
# 5.0.0 - 2019-03-31
358+
359+
## Added
360+
361+
- Initial Release
362+
- Support for Oracle NoSQL Database Cloud Service

0 commit comments

Comments
 (0)