2024-07-04
New/done features:
Bug fixes:
-
Few minor defects for implemented features.
Refactoring/cleanup:
-
No specific tasks.
Other improvements:
-
Remove some unused code.
-
Add support for Python 3.12 on CI.
-
Update dependencies (thx to @dependabot):
approvaltests-minimal
(9.0.0 to 12.2.1),black
(23.9.1 to 24.4.0),hypothesis
(6.84.3 to 6.104.2),idna
(transitive, from 3.6 to 3.7),mypy
(1.5.1 to 1.10.1),pytest-cov
(4.1.0 to 5.0.0),pytest
(7.4.2 to 8.2.2),typing-extentions
(4.7.1 to 4.12.2),urllib3
(transitive, from 2.0.5 to 2.2.2). -
Add development dependency:
pyupgrade
. -
Update blog dependencies (thx to @dependabot)
Compatibility breaks:
-
Migrate from PyQt5 to PySide6.
-
Migrate LICENSE from MIT to GPLv3.
2023-09-17
New/done features:
Bug fixes:
Refactoring/cleanup:
-
Fix few style issues found by ruff linter
-
Add more type annotations for manage.py
-
Refresh code style with pyupgrade --py39-plus
-
Replace old-fashioned mypy annotation with inline ones
Other improvements:
-
Update dependencies (thx to @dependabot):
approvaltests-minimal
(7.3.0 to 9.0.0),black
(22.10.0 to 23.9.1),hypothesis
(6.60.0 to 6.84.3),mypy-extensions
(0.4.3 to 1.0.0),mypy
(0.991 to 1.5.1),pyqt5
(5.15.7 to 5.15.9),pytest-cov
(4.0.0 to 4.1.0),pytest
(7.2.0 to 7.4.2),radon
(5.1.0 to 6.0.1),requests
(transitive, 2.30.0 to 2.31.0),typing-extentions
(4.4.0 to 4.7.1). -
Update blog dependencies
Compatibility breaks:
2022-12-10
New/done features:
-
Add goal attributes #344
-
Minor performance optimizations in rendering
Bug fixes:
Refactoring/cleanup:
Other improvements:
-
Setup CI for Python 3.11
-
Update dependencies (thx to @dependabot):
approvaltests-minimal
(7.1.0 to 7.3.0),certifi
(2022.9.24 to 2022.12.7),dearpygui
(1.7.1 to 1.8.0),hypothesis
(6.56.1 to 6.60.0),mypy
(0.982 to 0.991),pytest
(7.1.3 to 7.2.0).
Compatibility breaks:
-
Do not show fake goals in autolink, filter, zoom (with few exceptions)
2022-10-15
New/done features:
Bug fixes:
-
Split render tests for Python 3.(8,9) and Python 3.10+ (no more flaky tests)
Refactoring/cleanup:
-
Get rid of legacy dict in
Graph.q()
#329 -
Split some large methods into smaller ones
Other improvements:
-
Update dependencies (thx to @dependabot):
approvaltests-minimal
(5.11.0 to 7.1.0),black
(22.3.0 to 22.10.0),dearpygui
(1.6.2 to 1.7.1),hypothesis
(6.46.11 to 6.56.1),mypy
(0.961 to 0.982),py-spy
(0.3.12 to 0.3.14),pyqt5
(5.15.6 to 5.15.7),pytest
(7.1.2 to 7.1.3),pytest-cov
(3.0.0 to 4.0.0) -
Add
radon
dependency to measure cyclomatic complexity over code base -
Increase test coverage (especially on
sieben-manage
) -
Use more type annotations
-
Add a simple Makefile for typical Jekyll tasks
Compatibility breaks:
-
approvaltests
dependency was replaced withapprovaltests-minimal
. -
Autolink: create child relation instead of blocker #181
-
Removed
@with_key
decorator
2022-06-20
New/done features:
-
Auto-link new subgoals to the given goal #181
-
Try alternatives to Qt (work still in progress) #255
-
Flow improvement: switch onto previously selected goal on closing instead of the random one
-
Add sane upper limit on columns size
-
sieben-manage extract
: respect goaltree wrappers -
clieben
: separate children and blockers list -
Verify goaltree on each load
ADR made:
Bug fixes:
-
Fix Jekyll dependencies and ignore work files (blog)
-
Performance: get rid of double q() call in Enumeration
-
sieben-manage
must not fail when called without arguments -
Remove old ignored dependency from dependabot settings
-
An extraction root must always have id 1 after
sieben-manage extract
Refactoring/cleanup:
-
Do not ignore received files in approval tests
-
Extract common goaltree wrappers into a single method
-
Slightly remove code duplication
-
Render: do not use 'col1' attribute anymore
-
Remove unneeded code
Other improvements:
-
Update hotkeys help in a tutorial
-
Improve type annotations in
render.py
-
Update examples/zoom pictures and text
-
Add sample DB to examples
-
Better notification on errors in properties tests
-
Add new target into
Makefile
: CI-like properties tests -
Add new dependency:
dearpygui
(related to #255) -
Update dependencies (thx to @dependabot):
approvaltests
(3.3.2 to 5.2.0),black
(22.12b0 to 22.3.0),hypothesis
(6.34.1 to 6.46.11),mypy
(0.930 to 0.961),py-spy
(0.3.11 to 0.3.12),pytest
(6.2.5 to 7.1.2)
Compatibility breaks:
-
Remove
pytest-approvaltests
dependency (not needed in new versions ofapprovaltests
)
2022-01-09
New/done deatures:
Bug fixes:
-
CLI: do not show links to pseudo-goals
-
Improve rendering speed (thx to py-spy!)
Refactoring/cleanup:
-
Use Python 3.8+ syntax (walrus operator et al)
-
Use Python 3.10 on CI
-
Move rendering geometry logic from
app.py
torender.py
and make it framework-agnostic, and cover it with tests -
Use type aliases in
render.py
(WIP) -
Move some common logic into the base Graph class in order to simplify all its children
-
Introduce
@with_key
decorator in order to simplify logic in all views
Other improvements:
-
Cover CLI with tests
-
Add
py-spy
development dependency (for easier profiling) -
Migrate from Travis CI to Github Actions
-
Update dependencies:
pytest
,pytest-cov
,hypothesis
,approvaltests
,mypy
,pyqt5
,black
(thx to @dependabot) -
Update blog Jekyll dependencies
-
Update copyright @ 2022
Compatibility breaks:
-
Drop support for Python 3.7
-
Get rid of
pylint
(mypy
+black
should be enough)
2021-05-02
New/done features:
Bug fixes:
-
More consistent behavior in zoom+close scenarios
-
Improve rendering performance
Other improvements:
-
Renew Readme/screenshots
-
Move tutorial into separate file
-
Update runtime dependencies:
pyqt5
-
Update dev dependencies:
hypothesis
,pylint
,pytest
,mypy
,black
(thx @dependabot!) -
Add approval tests and
pytest-cov
to ensure better quality -
Upgrade to GitHub-native Dependabot
-
Move from travis-ci.org to travis-ci.com
-
Many small improvements in code
-
Restore old ADR and add new ones
Compatibility breaks:
-
Drop support for Python 3.6
2020-08-11
New features:
-
Open another file in the same window (no Github ticket, LOL)
-
Restore export into
.dot
format #94 (in a newsieben-manage
script)
Bug fixes:
Refactoring:
Compatibility breaks:
-
Do not open
sieben.db
file by default when called without argument -
Use f-strings (no more Python3.5)
Other improvements:
-
Move from
requirements.txt
toPipenv
-
Update dependencies:
PyQt5
,hypothesis
,pytest
,mypy
,pylint
-
Add
black
for formatting -
Fix some Mypy warnings
2020-01-20
Bug fixes:
-
Previous selection may get lost on unzoom #85
Compatibility breaks:
-
Remove support for Python 3.5 #64
Other improvements:
-
Few improvements for Travis builds
-
Extract common interface to the Goals class (WIP) #68
-
Reorganize blog: move from branch to directory
-
Update dependencies:
pytest
,hypothesis
,mypy
,pyqt5
(thx to @dependabot)
2019-11-25
Bug fixes:
-
Fix #3: focus may be lost after unlink in zoomed mode
Other improvements:
-
Update Hypothesis and Pytest dependencies
2019-11-20
New features:
Other improvements:
-
Add support for Python 3.7 & 3.8
-
Update all dependencies (thx to @dependabot)
-
More strict
pylint
checks -
Add a lot of type annotations
-
Start to extract common interfaces (
domain.py
)
Compatibility breaks:
-
Remove unused 'swap goals' feature
-
API change: use 'q' for query method, not 'all'
2017-06-12
New features:
Bug fixes:
-
Fix wrong column types in DB
-
Fix issue with complex delete
-
Fix bad link issue
-
Fix contact email
-
Exit when Graphviz is not found
-
Disallow to re-open goal atop of the closed one
-
Fix: goal deletion may cause failure on the next startup
-
Fix: migrations did not run for existing DB #2
-
Improve selection UX: avoid buffer overflow
Other improvements:
-
Add support for Python 3.6
-
Update
PyQt
version: 5.7→5.8.2 -
Use special Hypothesis profile for CI