Skip to content

Commit 3b3e732

Browse files
committed
Release 1.5.2; Dash docset
1 parent 63d8eb1 commit 3b3e732

File tree

130 files changed

+83763
-7
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

130 files changed

+83763
-7
lines changed

docs/_static/fb-favicon.png

486 Bytes
Loading

docs/changelog.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@
22
Changelog
33
#########
44

5+
Version 1.5.2
6+
=============
7+
8+
* Code optionizations.
9+
* New: Documentation is now also provided as Dash_ / Zeal_ docset, downloadable from releases_ at github.
10+
511
Version 1.5.1
612
=============
713

@@ -245,3 +251,6 @@ Version 0.5.0
245251
Initial release.
246252

247253
.. _firebird-lib: https://pypi.org/project/firebird-lib/
254+
.. _releases: https://github.com/FirebirdSQL/python3-driver/releases
255+
.. _Dash: https://kapeli.com/dash
256+
.. _Zeal: https://zealdocs.org/

docs/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@
2323
author = 'Pavel Císař'
2424

2525
# The short X.Y version
26-
version = '1.5.1'
26+
version = '1.5.2'
2727

2828
# The full version, including alpha/beta/rc tags
29-
release = '1.5.1'
29+
release = '1.5.2'
3030

3131

3232
# -- General configuration ---------------------------------------------------
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>CFBundleIdentifier</key>
6+
<string>firebird-driver</string>
7+
<key>CFBundleName</key>
8+
<string>firebird-driver</string>
9+
<key>DashDocSetDeclaredInStyle</key>
10+
<string>originalName</string>
11+
<key>DashDocSetFallbackURL</key>
12+
<string>https://firebird-driver.readthedocs.io/en/latest/</string>
13+
<key>DashDocSetFamily</key>
14+
<string>python</string>
15+
<key>DocSetPlatformFamily</key>
16+
<string>firebird-driver</string>
17+
<key>isDashDocset</key>
18+
<true/>
19+
<key>isJavaScriptEnabled</key>
20+
<false/>
21+
</dict>
22+
</plist>
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Sphinx build info version 1
2+
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
3+
config: 3c3dc2b06609adf777633065a6873ca0
4+
tags: 645f666f9bcd5a90fca523b33c5a78b7
Lines changed: 256 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,256 @@
1+
#########
2+
Changelog
3+
#########
4+
5+
Version 1.5.2
6+
=============
7+
8+
* Code optionizations.
9+
* New: Documentation is now also provided as Dash_ / Zeal_ docset, downloadable from releases_ at github.
10+
11+
Version 1.5.1
12+
=============
13+
14+
* Fix: `.ServerDbServices.set_replica_mode()` now works correctly.
15+
16+
Version 1.5.0
17+
=============
18+
19+
* Fix: `.create_database()` now use server configuration user/password if either is not
20+
specified in database configuration (like `.connect()`)
21+
* Fix: Problem in `.Server` processing incomplete LINE responses.
22+
* New: `verbint` parameter for `.ServerDbServices3.backup()` and `.ServerDbServices3.restore()`
23+
24+
This is undocumented Firebird v3 gbak feature. See https://github.com/FirebirdSQL/firebird/issues/808
25+
for details. It's mutually exclusive with `verbose`, and minimal value is 100.
26+
27+
Potentially breaking changes
28+
----------------------------
29+
30+
* Change in `.ServerDbServices3.restore()`: The `verbose` parameter default value was changed
31+
to `False` to be consistent with `.ServerDbServices3.backup()`
32+
* Change in `.ShutdownMethod`: DENNY_ATTACHMENTS/DENNY_TRANSACTIONS renamed to
33+
DENY_ATTACHMENTS/DENY_TRANSACTIONS.
34+
35+
Version 1.4.3
36+
=============
37+
38+
* Fix: Load driver configuration only when it's successfully read from file(s)
39+
* Fix: Reading service output will fail if line is greater than 64K
40+
* Fix: Avoid division by zero if fetches stats is zero in DatabaseInfoProvider.cache_hit_ratio
41+
* Fix: Rewind buffer with version string after using in EngineVersionProvider
42+
* Fix: Add low-level access to fb_shutdown_callback API function
43+
44+
Version 1.4.2
45+
=============
46+
47+
* New `.ServerConfig` options: `~ServerConfig.encoding` and `~ServerConfig.encoding_errors`.
48+
* New `.connect_server` parameters: `encoding` and `encoding_errors`.
49+
* Requires firebird-base 1.3.1
50+
51+
Version 1.4.1
52+
=============
53+
54+
* Fixed important bug when iAttachment was not properly released.
55+
56+
Version 1.4.0
57+
=============
58+
59+
Improvements:
60+
-------------
61+
62+
* Added `role` parameter to `.connect_server` and `.SPB_ATTACH`.
63+
* Added `encoding` parameter to `.SPB_ATTACH` with default value `ascii` - used to encode
64+
`config`, `user`, `password` and `expected_db` values.
65+
* Added `encoding` parameter to `.TPB` with default value `ascii` - used to encode table names.
66+
* `.DPB` parameter `charset` is now used to determine encoding for `config`, `user`,
67+
`password` and `role` values.
68+
* `.connect_server` has new `encoding` parameter with default value `ascii` that is passed
69+
to new `.Server.encoding` attribute. `.Server.encoding` is used to encode/decode various
70+
string values passed between client and server in parameter buffers (see below), and text
71+
output from services.
72+
* `.ServerInfoProvider` now uses `.Server.encoding` for returned SERVER_VERSION, IMPLEMENTATION,
73+
GET_ENV, GET_ENV_MSG, GET_ENV_LOCK, USER_DBPATH and DBNAME values.
74+
* `.ServerDbServices` now uses `.Server.encoding` for DBNAME, SQL_ROLE_NAME, FILE, SKIP_DATA,
75+
INCLUDE_DATA, INCLUDE_TABLE, EXCLUDE_TABLE, INCLUDE_INDEX, EXCLUDE_INDEX, LINE and
76+
isc_spb_sts_table SPB values.
77+
* `.ServerUserServices` now uses `.Server.encoding` for DBNAME, SQL_ROLE_NAME, USER_NAME,
78+
GROUP_NAME, FIRST_NAME, MIDDLE_NAME, LAST_NAME and PASSWORD (on storage only) SPB values.
79+
* `.ServerTraceServices` now uses `.Server.encoding` for CONFIG SPB value.
80+
* Failed `.Connection.close` should not cause problems on object destruction anymore.
81+
* Failed `.Server.close` should not cause problems on object destruction anymore.
82+
83+
Backward incompatible changes:
84+
------------------------------
85+
86+
* `.tpb` parameter `access` renamed to `access_mode`.
87+
* `.FirebirdWarning` now descends from `UserWarning` instead `Warning`, and is reported
88+
to application via `.warnings.warn` instead raised as exception.
89+
* `.iAttachment_v3` attribute `charset` was renamed to `encoding`.
90+
* `.iXpbBuilder.insert_string` optional parameter `encoding` is now keyword-only.
91+
Parameter also added to `.iXpbBuilder.get_string` method.
92+
93+
Version 1.3.4
94+
=============
95+
96+
* `.FirebirdWarning` is not raised as exception, but reported via `warnings.warn` mechanism.
97+
* User-defined encoding for string parameter and response values exchanged between driver
98+
and Firebird engine. This includes TPB, DPB, SPB and various service values:
99+
100+
- `.TPB`: New `encoding` constructor parameter & attribute. Used for `table names` in table reservation.
101+
- `.DPB`: Encoding based on connection charset for `config`, `user name`, `password` and `role`.
102+
- `.SPB`: New `encoding` constructor parameter & attribute. Used for `config`, `user name`, `password` and `expected database`.
103+
- Connection-related providers: Encoding based on connection charset.
104+
- Server and Service providers: New `.Server.encoding` attribute.
105+
* Fixed bug in `.ServerDbServices3.get_statistics` when `tables` are specified.
106+
107+
108+
Version 1.3.3
109+
=============
110+
111+
* Fix unregistered bug: Newly extended interface breaks the driver (affects usability of
112+
the driver with Firebird development versions).
113+
* New exception type `.FirebirdWarning`. From now on, warnings from engine are raised as
114+
`.FirebirdWarning` instead `Warning`. In some future release, warnings will not be raised,
115+
but reported via `warnings.warn` mechanism.
116+
117+
Version 1.3.2
118+
=============
119+
120+
* Fix unregistered bug: iUtil methods removed after FB 4 Beta 2 broke the Int128/TZ handling.
121+
* New context manager `.temp_database`.
122+
123+
Version 1.3.1
124+
=============
125+
126+
* Fix unregistered bug: wrong handling of Firebird 4 string info parameters.
127+
128+
Version 1.3.0
129+
=============
130+
131+
* Fix (#4): exeption returns non ascii-127 symbols.
132+
The error message decode uses `.fbapi.err_encoding` value that is initialized to
133+
`locale.getpreferredencoding`. Also, the decode is now done with `errors="replace"`.
134+
* Fix unregistered bug: wrong handling of milliseconds in TIME and TEMEPSTAMP datatype.
135+
* Sync _VERSION_ value with package version
136+
* Fix unregistered bug: Do not raise exception if accessed `.Statement.plan` is `None`.
137+
* Fix unregistered bug: `.get_statistics()` does not send `tables` correctly.
138+
* Fix annotations.
139+
* `.ServerTraceServices` methods now have return values.
140+
* User name added to `.TraceSession`.
141+
* Fix unregistered bug: `auth_plugin_list` configuration option is ignored
142+
* All methods of `.ServerDbServices3` except 3 related to limbo transactions have new
143+
optional keyword-only parameter `role` that is passed to called utility.
144+
* Function `.connect_server()` has new optional keyword-only parameter `expected_db`,
145+
to access services with non-default security database.
146+
147+
* Improved Firebird 4 support.
148+
149+
- Version-specific classes introduced. Internal classes `.DatabaseInfoProvider`,
150+
`.TransactionInfoProvider` and `.ServerDbServices` now implement only Firebird 4 features
151+
and descend from Firebird 3 versions. The proper variant is returned according to
152+
connected server.
153+
- New `.DatabaseConfig` options `session_time_zone`, `set_bind`, `decfloat_round` and
154+
`decfloat_traps`.
155+
- New `.DPB` parameters `session_time_zone`, `set_db_replica`, `set_bind`, `decfloat_round`
156+
and `decfloat_traps`.
157+
- New `session_time_zone` keyword parameter for `.connect()`.
158+
- Added explicit support for READ COMMITTED READ CONSISTENCY isolation (when disabled in
159+
Firebird configuration).
160+
- Support for transactions started at specified snapshot number.
161+
New `.TransactionInfoProvider.snapshot_number` property.
162+
The `.TPB` has new `at_snapshot_number` parameter.
163+
- `.backup()` and `.local_backup()` have new optional keyword-only arguments
164+
`include_data`, `keyhoder`, `keyname` and `crypt`, and `ZIP` value was added to `SrvBackupFlag`.
165+
- `.restore()` and `.local_restore()` have new optional keyword-only
166+
arguments `include_data`, `keyhoder`, `keyname`, `crypt` and `replica_mode`.
167+
- `.nbackup()` has new optional keyword-only parameter `guid`.
168+
- Support for new services.
169+
New methods `.ServerDbServices.nfix_database()` and `.set_replica_mode()`.
170+
- Support for `.Statement.timeout`, and `idle_timeout` and `statement_timeout` in `.Connection.info`.
171+
- New types: `.Features`, `.ReplicaMode`, `.CancelType`, `.DecfloatRound`, `.DecfloatTraps`,
172+
`.ConnectionFlag` and `.EncryptionFlag`. Firebird 4-related values added to some other
173+
enum types.
174+
175+
Version 1.2.1
176+
=============
177+
178+
* Fixed dependency to `firebird-base` (v1.3.0)
179+
180+
Version 1.2.0
181+
=============
182+
183+
* Fix unregistered bug: `sql_dialect` is used instead `db_sql_dialect` in `.create_database`.
184+
* Fix (#2): error when handling input parameters with value None
185+
* Added `.Server.mode` attribute to allow fetching service output using LINE or TO_EOF method.
186+
Default mode is TO_EOF.
187+
188+
Version 1.1.0
189+
=============
190+
191+
* Important: Support for Firebird 4 TIMEZONE is broken (for FB4 RC1). It will be fixed in
192+
next driver version.
193+
* Build scheme changed to `PEP 517`.
194+
* Various changes to documentation and type hint adjustments.
195+
* Changed: `.DriverConfig.db_defaults` and `.DriverConfig.server_defaults` are now created
196+
as `optional` (introduced by firebird-base 1.2.0), so configuration file does not require
197+
`firebird.db.defaults` and `firebird.server.defaults` sections (even empty).
198+
* Fix: unregistered bug in `InfoProvider`.
199+
* Fix: unregistered bug in `FirebirdAPI` initialization.
200+
201+
Version 1.0.0
202+
=============
203+
204+
* Added support for schema and monitor modules from `firebird-lib`_ package.
205+
* Documentation: adjustments to css.
206+
207+
Version 0.8.0
208+
=============
209+
210+
The driver is no longer *beta*, and is now considered as **stable** for Firebird 3.0 (support for Firebird 4 is still evolving till final release).
211+
212+
* Documentation, both in code and separate (especially Usage Guide).
213+
* Added support for new FB4 data types in ARRAY fields.
214+
* Refactoring in driver hooks.
215+
* New `.Cursor.call_procedure()` method.
216+
* Refactoring and fixes in Server and its services.
217+
218+
Version 0.7.0
219+
=============
220+
221+
* Added support for new FB4 data types (TIME/TIMESTAMP WITH TIMEZONE, DECFLOAT[16|34] and
222+
extended DECIMAL/NUMERIC via INT128 storage).
223+
224+
Version 0.6.0
225+
=============
226+
227+
* More documentation.
228+
* Initial support for Firebird 4+ (interfaces and other definitions). Includes support for
229+
interface versions.
230+
* `Service` renamed to `Server`. Selected functionality moved to inner objects (relates to
231+
FB4+ support).
232+
* New module: `~firebird.driver.config` - Driver configuration
233+
* New module: `~firebird.driver.interfaces` - Interface wrappers for Firebird new API
234+
* Changed module: `~firebird.driver.types`
235+
236+
- Interface wrapper moved to separate module
237+
- Buffer managers moved to `~firebird.driver.core` module
238+
* Changed module: `~firebird.driver.core`
239+
240+
- `connect()`, `create_database()` and `connect_server()` now use driver configuration.
241+
- Simplified/unified transaction isolation specification.
242+
- Emit warnings when objects with allocated Firebird resources are disposed (by Python
243+
GC) without prior call to `close()`.
244+
- Trace instrumentation removed. Use dynamic trace configuration from firebird-base 0.6.0.
245+
- `Connection` and `Transaction` information moved to inner objects accessible via `info`
246+
properties (relates to FB4+ support).
247+
248+
Version 0.5.0
249+
=============
250+
251+
Initial release.
252+
253+
.. _firebird-lib: https://pypi.org/project/firebird-lib/
254+
.. _releases: https://github.com/FirebirdSQL/python3-driver/releases
255+
.. _Dash: https://kapeli.com/dash
256+
.. _Zeal: https://zealdocs.org/

0 commit comments

Comments
 (0)