Releases: bartfeenstra/betty
Releases · bartfeenstra/betty
Betty 0.4.0b3
What's Changed
- Use Stylelint to test SCSS by @bartfeenstra in #2195
- Use stylelint-config-standard-scss by @bartfeenstra in #2197
- Fix a bug where Cotton Candy's configured colors would not be applied by @bartfeenstra in #2200
Full Changelog: 0.4.0b2...0.4.0b3
Betty 0.4.0b2
What's Changed
- Fix Ukrainian translation by @Illia-M in #2183
- Allow projects to use locales not necessarily supported by the operating system by @bartfeenstra in #2186
- Fix missing template files for entity list pages by @bartfeenstra in #2188
- Make
ExtensionInstanceConfigurationMapping.enable()
synchronous by @bartfeenstra in #2191 - Support relative file/media paths when loading Gramps family trees by @bartfeenstra in #2194
Full Changelog: 0.4.0b1...0.4.0b2
Betty 0.4.0b1
What's Changed
- Reintroduce
Configuration.update()
by @bartfeenstra in #2147 - Upgrade to Ruff 0.7 by @bartfeenstra in #2148
- Make
Configurable
requireConfiguration
by @bartfeenstra in #2146 - Make
PluginInstanceConfiguration
's"configuration"
key optional by @bartfeenstra in #2151 - Upgrade to Pillow 11 by @bartfeenstra in #2157
- Map more Gramps event types by @bartfeenstra in #2155
- npm dependencies (development)(deps-dev): bump eslint from 8.57.1 to 9.13.0 by @dependabot in #2153
- Remove
ExtensionConfiguration
by @bartfeenstra in #2156 - Show copyright notices and licenses on file pages by @bartfeenstra in #2158
- Use more convential non-binary pronouns in the Dutch translations by @bartfeenstra in #2160
PluginInstanceConfiguration
must not depend on plugin repositories by @bartfeenstra in #2163PluginInstanceConfiguration
should dump to a single string if there is no configuration by @bartfeenstra in #2164- Use
PluginInstanceConfiguration
throughout all configuration by @bartfeenstra in #2165 - Rename project's
copyright
configuration key tocopyright_notice
by @bartfeenstra in #2167 - Improve test coverage of
ProjectConfiguration
's plugin and plugin instance configurations by @bartfeenstra in #2168 - Update pip dependencies by @bartfeenstra in #2169
- Upgrade npm dependencies by @bartfeenstra in #2170
- Fix broken Wikipedia copyright notice URLs by @bartfeenstra in #2159
- Use "mapping" instead of "map" as a noun by @bartfeenstra in #2172
- Rename
GeneratedEntityId
toNonPersistentId
by @bartfeenstra in #2175 - Use persistent IDs when creating derived events by @bartfeenstra in #2176
- Update the Ukrainian translation by @Illia-M in #2180
- Make
ConfigurationCollection.load_item()
private by @bartfeenstra in #2182 - Remove
wait_to_thread()
by @bartfeenstra in #2173
New Contributors
Full Changelog: 0.4.0a14...0.4.0b1
Betty 0.3.15
What's Changed
- Use persistent IDs when creating derived events by @bartfeenstra in #2179
Full Changelog: 0.3.14...0.3.15
Betty 0.4.0a14
What's Changed
- Fix a bug where Gramps' family tree configuration would not properly keep default mappings by @bartfeenstra in #2127
- Upgrade to MarkupSafe 3 by @bartfeenstra in #2129
- Make
Project
factory methods consistent by @bartfeenstra in #2130 - Use locks for asynchronous service factories by @bartfeenstra in #2131
- Be consistent in how we expose plugin repositories by @bartfeenstra in #2132
- Suppress
SIGINT
inProcessPoolExecutor
to prevent unhelpful additionalKeyboardInterrupt
being raised by @bartfeenstra in #2134 - Handle
KeyboardInterrupt
propagated from event loop shutdown by @bartfeenstra in #2135 - Do not produce and check npm requirements multiple times by @bartfeenstra in #2136
- Ensure that the CLI exits with code 2 for bad invocations by @bartfeenstra in #2138
- Derive events for the demonstration site by @bartfeenstra in #2141
- Cache the demo site by @bartfeenstra in #2142
- Remove betty.ico and generate favicon.ico from the project logo by @bartfeenstra in #2143
Full Changelog: 0.4.0a13...0.4.0a14
Betty 0.4.0a13
What's Changed
- Test on Python 3.13 stable by @bartfeenstra in #2077
- Fix an unawaited coroutine by @bartfeenstra in #2087
- Fix a bug that caused Betty to always warn no theme was enabled by @bartfeenstra in #2088
- Add a
@private
decorator for items whose names cannot be prefixed with an underscore by @bartfeenstra in #2090 - Add a
@threadsafe
decorator by @bartfeenstra in #2091 - Make
TemplateTestBase
internal until we've refactored it by @bartfeenstra in #2092 - Deprecate
wait_to_thread()
and make it internal until we can remove it by @bartfeenstra in #2093 - Improve test coverage by @bartfeenstra in #2094
- Improve
betty.ancestry
coverage by @bartfeenstra in #2095 - Improve
betty.jinja2
coverage by @bartfeenstra in #2096 - Improve
betty.render
coverage by @bartfeenstra in #2097 - Improve
betty.date
coverage by @bartfeenstra in #2098 - Simplify
TestCoverage
by @bartfeenstra in #2099 - Simplify
TestCoverage
by @bartfeenstra in #2100 - Improve
betty.app.config
coverage by @bartfeenstra in #2101 - Improve
betty.app.App
coverage by @bartfeenstra in #2102 - Remove
serde.dump.minimize()
by @bartfeenstra in #2105 - Improve
betty.config
coverage by @bartfeenstra in #2103 - Improve
betty.subprocess
coverage by @bartfeenstra in #2107 - Fix a bug where assertion contexts were formatted in reverse by @bartfeenstra in #2108
- Improve
betty.assertion
coverage by @bartfeenstra in #2109 - Improve
betty.jinja2
coverage by @bartfeenstra in #2110 - Refactor
TemplateTestBase
for public consumption by @bartfeenstra in #2111 - Remove the sleep from
RateLimiter
by @bartfeenstra in #2112 - Remove
Configuration.update()
by @bartfeenstra in #2113 - Allow plugins to be ordered with respect to each other by @bartfeenstra in #2114
- Organize the Demo extension by @bartfeenstra in #2115
- Add copyright notices to all images downloaded from Wikipedia by @bartfeenstra in #2116
- Fix a bug where ProxyPluginRepository would attempt to create new instances using the wrong factories by @bartfeenstra in #2117
- Add SPDX licenses by @bartfeenstra in #2078
- Remove
FamilyTreeConfiguration.__eq__()
by @bartfeenstra in #2120 - Improve core component resource management by @bartfeenstra in #2124
- Add images to the demonstration site by @bartfeenstra in #2121
Full Changelog: 0.4.0a12...0.4.0a13
Betty 0.3.14
Betty 0.4.0a12
What's Changed
- Fix a race condition in the caches by @bartfeenstra in #2036
- Rename
enclosed_by
andencloses
by @bartfeenstra in #2038 - Add types for required and optional associations by @bartfeenstra in #2014
- Add
has_generated_entity_id()
by @bartfeenstra in #2039 - Add a top-level Privacy API by @bartfeenstra in #2042
- Simplify the internal type variables used by the Association API by @bartfeenstra in #2044
- Add API methods to manage
Schema
's title and description by @bartfeenstra in #2045 - Automatically dump linked data for entity associations and static translations by @bartfeenstra in #1946
- Simplify static translations by @bartfeenstra in #2043
- Add license plugins by @bartfeenstra in #2046
- Improve plugin test coverage by @bartfeenstra in #2047
- Add copyright notices and licenses to files by @bartfeenstra in #2048
- Make core components emit warnings as well as raise exceptions by @bartfeenstra in #2050
- Refactor Cotton Candy's Search API in preparation for expansions by @bartfeenstra in #2051
- Add sources and notes to the search index by @bartfeenstra in #2053
- Improve the DX of the Generate API's file helpers by @bartfeenstra in #2052
- Remove
wait_to_thread()
usage by @bartfeenstra in #2054 - Remove
wait_to_thread()
usage by @bartfeenstra in #2056 - Remove
wait_to_thread()
usage by @bartfeenstra in #2059 - Test on Python 3.13.0rc3 by @bartfeenstra in #2061
- Remove
wait_to_thread()
usage by @bartfeenstra in #2062 - Remove
wait_to_thread()
usage by @bartfeenstra in #2064 - Be more specific than
BaseException
by @bartfeenstra in #2065 - Add
functools.passthrough()
by @bartfeenstra in #2067 - Add
ensure_await()
by @bartfeenstra in #2066 - Rename
Uniquifier
tounique()
by @bartfeenstra in #2068 - Remove
wait_to_thread()
usage by @bartfeenstra in #2069 - Remove
betty.asyncio.gather()
by @bartfeenstra in #2058 - Revert "Remove
wait_to_thread()
usage" by @bartfeenstra in #2070 - Remove
wait_to_thread()
usage by @bartfeenstra in #2072 - Remove
wait_to_thread()
usage by @bartfeenstra in #2073 - Make URL generators accept
MediaType
instead or raw media type strings by @bartfeenstra in #2076 - Add a lock orchestrator by @bartfeenstra in #2080
- Rename
LockOrchestrator
toLedger
by @bartfeenstra in #2081 - Refactor
betty.wikipedia
'sImage
andSummary
into dataclasses by @bartfeenstra in #2082 - Remove
_LinkedDataObjectSchema
by @bartfeenstra in #2085
Full Changelog: 0.4.0a11...0.4.0a12
Betty 0.4.0a11
What's Changed
- Simplify Gramps configuration by @bartfeenstra in #1955
- Finetune
betty.serde.dump
's typing by @bartfeenstra in #1958 - Improve
GrampsLoader
by @bartfeenstra in #1959 - Fix event type configuration by @bartfeenstra in #1960
- Make presence roles configurable by @bartfeenstra in #1957
- Make project names valid machine names by @bartfeenstra in #1961
- Add place types by @bartfeenstra in #1963
- Add genders by @bartfeenstra in #1964
- Use
ShorthandPluginBase
everywhere by @bartfeenstra in #1965 - Ensure Attrs are properly typed depending on whether they are required or optional by @bartfeenstra in #1966
- Add a Serde Load API by @bartfeenstra in #1968
- Rename
UnknownEventType
toUnknown
by @bartfeenstra in #1969 - Add predefined media types by @bartfeenstra in #1971
- Add the Unknown presence role, and make it the fallback by @bartfeenstra in #1970
- Remove dead code from
betty.job.Context
by @bartfeenstra in #1967 - Add copyright texts by @bartfeenstra in #1973
- Meta event types must not extend
ShorthandPluginBase
by @bartfeenstra in #1976 - Improve docstring alterations by @bartfeenstra in #1977
- Add
IndependentFactory
by @bartfeenstra in #1975 - Move
betty.generate
andbetty.load
underbetty.project
by @bartfeenstra in #1974 - Organize presence roles, and ensure all default Gramps roles can be loaded by @bartfeenstra in #1979
- Organize concrete place type implementations into a submodule by @bartfeenstra in #1982
- Organize concrete media type implementations into a submodule by @bartfeenstra in #1980
- Organize concrete gender implementations into a submodule by @bartfeenstra in #1981
- Organize concrete event type implementations into a submodule by @bartfeenstra in #1983
- Organize privacy into a submodule by @bartfeenstra in #1984
- Move
HasMediaType
to a submodule by @bartfeenstra in #1986 - Move
HasDescription
to a submodule by @bartfeenstra in #1988 - Make the Date API a top-level API by @bartfeenstra in #1989
- Move
HasLocale
to a submodule by @bartfeenstra in #1987 - Move
HasDate
to a submodule by @bartfeenstra in #1991 - Move
Name
to a submodule by @bartfeenstra in #1990 - Organize links into a submodule by @bartfeenstra in #1985
- Move
Note
andHasNotes
to a submodule by @bartfeenstra in #1993 - Move
HasFileReferences
to a submodule by @bartfeenstra in #1994 - Move
HasCitations
to a submodule by @bartfeenstra in #1995 - Move
Place
to a submodule by @bartfeenstra in #1996 - Move
File
to a submodule by @bartfeenstra in #1997 - Move
Person
to a submodule by @bartfeenstra in #1998 - Move
Enclosure
to a submodule by @bartfeenstra in #1999 - Move
Source
to a submodule by @bartfeenstra in #2000 - Move
PersonName
to a submodule by @bartfeenstra in #2001 - Move
FileReference
to a submodule by @bartfeenstra in #2002 - Move
Event
to a submodule by @bartfeenstra in #2003 - Move
Citation
to a submodule by @bartfeenstra in #2004 - Move
Presence
to a submodule by @bartfeenstra in #2006 - Move
HasNotes
to a submodule by @bartfeenstra in #2005 - Merge
betty.extension
intobetty.project.extension
by @bartfeenstra in #2007 - Do not include the file path when computing a file's content hash by @bartfeenstra in #2010
- Remove
ConfigurationCollection
'sto_key()
,to_keys()
,to_index()
, andto_indices()
by @bartfeenstra in #2011 - Remove the Attr API by @bartfeenstra in #2008
- Add a Repr(esentation) API by @bartfeenstra in #2012
- Upgrade to setuptools 75 by @bartfeenstra in #2013
- Lower the lifetime threshold to 123 by @bartfeenstra in #2015
- Add (de)serialization format plugins by @bartfeenstra in #2016
- Rename
Copyright
toCopyrightNotice
by @bartfeenstra in #2018 - Decouple
_Populator
fromProject
by @bartfeenstra in #2021 - Disambiguate the different factory methods by @bartfeenstra in #2023
- Organize the URL API and decouple it from
Project
by @bartfeenstra in #2024 - Fix incorrectly documented plugin repositories by @bartfeenstra in #2026
- Add a copyright notice for works in the public domain by @bartfeenstra in #2027
- Test that plugins are public by @bartfeenstra in #2028
- Allow the default Gramps plugin mappings to be overridden per key by @bartfeenstra in #2030
- Add a copyright notice for Wikipedia contributors by @bartfeenstra in #2029
- Fix a typo in the Dutch translations by @bartfeenstra in #2031
- Make the Assets API asynchronous by @bartfeenstra in #2032
- Make
TestCoverage
less verbose by @bartfeenstra in #2034 - Fix a bug where the Assets API did not return the correct paths for files on disk by @bartfeenstra in #2033
- Fix missing assets from distributions by @bartfeenstra in #2035
Full Changelog: 0.4.0a10...0.4.0a11
Betty 0.4.0a10
What's Changed
- Add data contexts to assertion errors by @bartfeenstra in #1931
- Introduce a Factory API by @bartfeenstra in #1932
- Work around a regression introduced in Ruff 0.6.4 by @bartfeenstra in #1934
- Host Swagger UI locally by @bartfeenstra in #1933
- Unpin the Ruff dependency by @bartfeenstra in #1936
- Add a Factory interface by @bartfeenstra in #1940
- Move project configuration to a submodule by @bartfeenstra in #1944
- Test on Python 3.13rc2 by @bartfeenstra in #1941
- Add commands to create and update translations for extensions by @bartfeenstra in #1937
- Consistently type plugin IDs as machine names by @bartfeenstra in #1945
- Fix two warnings about unclosed asynchronous generators by @bartfeenstra in #1947
- Make
assert_mapping()
andassert_sequence()
return mutable collections by @bartfeenstra in #1948 - Finetune the CI testing schedule by @bartfeenstra in #1951
- Decouple
GrampsLoader
fromProject
by @bartfeenstra in #1950 - Use simple configuration naming for entity references by @bartfeenstra in #1952
- Add project logo configuration by @bartfeenstra in #1953
- Make event types configurable by @bartfeenstra in #1699
Full Changelog: 0.4.0a9...0.4.0a10