8000 Move from setuptools to hatch; upgrade protobuf dependency · FirebirdSQL/python3-base@ee04f64 · GitHub
[go: up one dir, main page]

Skip to content

Commit ee04f64

Browse files
committed
Move from setuptools to hatch; upgrade protobuf dependency
1 parent b1c9ae3 commit ee04f64

20 files changed

+508
-40
lines changed

CHANGELOG.md

Lines changed: 233 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,233 @@
1+
# Change Log
2+
All notable changes to this project will be documented in this file.
3+
4+
The format is based on [Keep a Changelog](http://keepachangelog.com/)
5+
and this project adheres to [Semantic Versioning](http://semver.org/).
6+
7+
## [Unreleased] - yyyy-mm-dd
8+
9+
### Changed
10+
11+
- Update dependency to protobuf >=4.24.3
12+
- Build system changed from setuptools to hatch
13+
- Package version is now defined in firebird.base.__about__.py (__version__)
14+
15+
### Added
16+
17+
- .pyi file for config protobuf
18+
- Stub pytest test
19+
20+
## [1.6.1] - 2023-03-03
21+
22+
### Fixed
23+
24+
- Bug with Config.get_config() and `plain` bool argument.
25+
26+
### Changed
27+
28+
- firebird.base.config.StrOption now supports preservation of significant leading whitespace
29+
for multiline values (like PyCodeOption).
30+
31+
## [1.6.0] - 2023-02-15
32+
33+
### Fixed
34+
35+
- Bug in TraceManager.load_config().
36+
37+
### Changed
38+
39+
- Registration of already registered protobuf objects is now ignored instead
40+
raising exception.
41+
- Module firebird.base.config:
42+
43+
- Config.get_config() and Option.get_config() now provides `plain` bool argument to
44+
return configuration text without comments. Deafult is False.
45+
- create_config is now deprecated, will be removed in version 2.0.
46+
47+
## [1.5.0] - 2022-11-14
48+
49+
### Changed
50+
51+
- Move away from setup.cfg to pyproject.toml, new source tree layout.
52+
53+
## [1.4.3] - 2022-10-27
54+
55+
### Added
56+
57+
- Added internal functions firebird.base.types._decompose and firebird.base.types._power_of_two
58+
from stdlib enum module, because they were removed in Python 3.11.
59+
60+
### Changed
61+
62+
- Module firebird.base.protobuf now uses importlib.metadata.entry_points <entry-points>
63+
instead pkg_resources.iter_entry_points.
64+
- Improved documentation.
65+
66+
## [1.4.2] - 2022-10-05
67+
68+
### Fixed
69+
70+
- Signature in firebird.base.config.IntOption.clear().
71+
- Signature in firebird.base.trace.TraceManager.add_trace(). Keyword argument `decorator`
72+
(with default) could not be used with args/kwargs, so it was removed. New
73+
firebird.base.trace.TraceManager.decorator attribute was added to
74+
firebird.base.trace.TraceManager that could be used to change trace decorator used
75+
for intrumentation.
76+
77+
### Changed
78+
79+
- Optimizations.
80+
- Cleanup of pylint warnings.
81+
- Updated documentation.
82+
83+
## [1.4.1] - 2022-09-28
84+
85+
### Added
86+
87+
- Documentation is now also provided as Dash / Zeal docset, downloadable from releases
88+
at github.
89+
90+
### Fixed
91+
92+
- Uregistered bug in trace.TraceConfig - redundant `flags` definition.
93+
94+
## [1.4.0] - 2022-06-13
95+
96+
### Changed
97+
98+
- Upgrade to protobuf 4.21.1. As this upgrade has consequences, please read
99+
https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates
100+
101+
## [1.3.1] - 2022-01-11
102+
103+
### Added
104+
105+
* `~firebird.base.buffer` module:
106+
107+
- Added firebird.base.buffer.MemoryBuffer.write_sized_string() for symetry with read_sized_string().
108+
- Now firebird.base.buffer.MemoryBuffer string functions has also `errors` parameter in
109+
addition to `encoding`.
110+
111+
### Changed
112+
113+
- Direct assignment to firebird.base.config.Config option raises a `ValueError` exception
114+
with message "Cannot assign values to option itself, use `option.value` instead".
115+
116+
## [1.3.0] - 2021-06-03
117+
118+
### Added
119+
120+
- firebird.base.config.Config has new constructor keyword-only argument `description`.
121+
122+
### Fixed
123+
124+
- Uregistered bug in config.ListOption - value and default was the same instance
125+
126+
### Changed
127+
128+
- Layout produced by firebird.base.config.get_config() was changed.
129+
130+
## [1.2.0] - 2021-03-04
131+
132+
### Added
133+
134+
- New function firebird.base.protobuf.get_message_factory.
135+
- Module firebird.base.trace: Added: `apply_to_descendants` boolean configuration option to
136+
apply configuration also to all registered descendant classes. The default value is `True`.
137+
138+
### Fixed
139+
140+
- Bug in firebird.base.signal.eventsocket signature handling.
141+
142+
### Changed
143+
144+
- Build scheme changed to `PEP 517`.
145+
- Various changes to documentation and type hint adjustments.
146+
- firebird.base.config module:
147+
148+
- **BREAKING CHANGE**: ApplicationDirectoryScheme was replaced by
149+
DirectoryScheme class, and get_directory_scheme() has changed signature.
150+
- Directory scheme was reworked and now also supports concept of HOME directory.
151+
- New MacOS directory scheme support. As I don't have access to MacOS, this support
152+
should be considered EXPERIMENTAL. Any feedback about it's correctness is welcome.
153+
- Added: New Config constructor keyword-only `bool` argument `optional` and
154+
associated Config.optional read-only property.
155+
- Added: Config.has_value() function.
156+
- New class: PathOption for Configuration options with `pathlib.Path` value.
157+
158+
## [1.1.0] - 2020-11-30
159+
160+
### Added
161+
162+
- New module: signal - Callback system based on Signals and Slots, and "Delphi events"
163+
- New class: firebird.base.config.ApplicationDirectoryScheme
164+
- Introduced firebird.base.config.PROTO_CONFIG constant with fully qualified name for
165+
ConfigProto protobuf.
166+
- Module firebird.base.protobuf: Added direct support for key well-known data types
167+
`Empty`, `Any`, `Duration`, `Timestamp`, `Struct`, `Value`, `ListValue` and `FieldMask`.
168+
They are automatically registered. New constants 'PROTO_<type>' with fully qualified names.
169+
- firebird.base.protobuf.create_message()` has new optional `serialized` argument with
170+
`bytes` that should be parsed into newly created message instance.
171+
- New functions firebird.base.protobuf.struct2dict() and firebird.base.protobuf.dict2struct()
172+
- Modules firebird.base.trace: Added support for trace configuration based on firebird.base.config,
173+
using new classes BaseTraceConfig, TracedMethodConfig, TracedClassConfig and TraceConfig.
174+
- New methods in firebird.base.trace.TraceManager:
175+
176+
- load_config() to update trace from configuration.
177+
- set_flag() and clear_flag().
178+
- New function firebird.base.types.load().
179+
180+
### Changed
181+
182+
- firebird.base.types.load() function now supports `object_name[.object_name...]`
183+
specifications instead single `object_name`.
184+
- firebird.base.config.Config.load_config(): raises error when section is missing,
185+
better error handling when exception is raised while loading options
186+
- firebird.base.config.PyCallableOption signature argument could be inspect.Signature
187+
or Callable
188+
- Optional argument `to_default` in `~firebird.base.config.Option.clear()` is now keyword-only.
189+
- firebird.base.logging.get_logging_id() uses __qualname__ instead __name__
190+
- firebird.base.trace.TraceFlag value `DISABLED` was renamed to `NONE`.
191+
- firebird.base.types.MIME now handles access to properties more efficiently and faster.
192+
- Changes in documentation.
193+
194+
## [1.0.0] - 2020-10-13
195+
196+
### Added
197+
198+
- Documentation: new examples for trace, logging and hooks
199+
- Documentation: adjustments to css
200+
201+
### Changed
202+
203+
- DataList is now generic class.
204+
- DataList.extract() has new 'copy' argument.
205+
206+
## [0.6.1] - 2020-09-15
207+
208+
- Promoted to stable
209+
- More documentation
210+
211+
## [0.6.0] - 2020-06-30
212+
213+
### Added
214+
215+
- New module: firebird.base.strconv - Data conversion from/to string
216+
- New module: firebird.base.trace - Trace/audit for class instances
217+
218+
### Changed
219+
220+
- Changed module: firebird.base.types, New classes: MIME - MIME type specification,
221+
PyExpr - Source code for Python expression, PyCode - Python source code and PyCallable -
222+
Source code for Python callable. Removed function: str2bool
223+
- Reworked module: firebird.base.config - Classes for configuration definitions
224+
with new classes: ConfigOption - Configuration option with Config value,
225+
ConfigListOption - Configuration option with list of Config values, and
226+
DataclassOption - Configuration option with a dataclass value.
227+
- Changed module: firebird.base.logging - Trace/audit functionality removed (into new
228+
module firebird.base.trace)
229+
230+
## [0.5.0] - 2020-05-28
231+
232+
Initial release.
233+

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/firebird-base.svg)](https://pypi.org/project/firebird-base)
77
[![Hatch project](https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg)](https://github.com/pypa/hatch)
88

9-
The firebird-base package is a set of Python 3 modules commonly used by `Firebird Project`_
9+
The firebird-base package is a set of Python 3 modules commonly used by [Firebird Project](https://github.com/FirebirdSQL)
1010
in various development projects (for example the firebird-driver or Saturnin). However, these
11-
modules have general applicability outside the scope of development for Firebird_.
11+
modules have general applicability outside the scope of development for [Firebird](https://www.firebirdsql.org).
1212

1313
-----
1414

docs/changelog.txt

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

5+
Version 1.7.0 [unreleased]
6+
==========================
7+
8+
* Update dependency to protobuf >=4.24.3
9+
* Build system changed from setuptools to hatch
10+
* Package version is now defined in firebird.base.__about__.py (__version__)
11+
512
Version 1.6.1
613
=============
714

@@ -11,7 +18,6 @@ Version 1.6.1
1118
- `.StrOption` now supports preservation of significant leading whitespace for multiline
1219
values (like `.PyCodeOption`).
1320

14-
1521
Version 1.6.0
1622
=============
1723

@@ -30,7 +36,6 @@ Version 1.6.0
3036

3137
- Fixed bug in `.TraceManager.load_config()`.
3238

33-
3439
Version 1.5.0
3540
=============
3641

docs/conf.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
# sys.path.insert(0, os.path.abspath('.'))
1616

1717
import sphinx_bootstrap_theme
18+
from firebird.base.__about__ import __version__
1819

1920
# -- Project information -----------------------------------------------------
2021

@@ -23,10 +24,10 @@
2324
author = 'Pavel Císař'
2425

2526
# The short X.Y version
26-
version = '1.6.1'
27+
version = __version__
2728

2829
# The full version, including alpha/beta/rc tags
29-
release = '1.6.1'
30+
release = __version__
3031

3132

3233
# -- General configuration ---------------------------------------------------

docs/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
sphinx-bootstrap-theme>=0.8.1
2-
sphinx-autodoc-typehints>=1.19.4
2+
sphinx-autodoc-typehints>=1.24.0
33
sphinx>=5.3
44
.

0 commit comments

Comments
 (0)
0