Doorstop
3.0 (beta)
BREAKING: Dropped support for Python 3.6 and 3.7.
BREAKING: Removed --no-body-levels
option to doorstop publish
.
Fixed overriding default attributes with doorstop add
. (@tangoalx )
Fixed encoding error with special characters on Windows. (@urbasus )
Added support for publishing to the LaTeX format. (@neerdoc )
Added support for storing items in Markdown with YAML front matter. (@ckolumbus )
2.2 (2022-01-22)
Added support for UTF-8 symbols in references. (@stanislaw )
Added custom attributes to published documents. (@chrta )
Fixed handling of special characters when reordering items. (@asimon-1 )
2.1.4 (2021-01-15)
Updated markdown
to fix AttributeError
in doorstop-server
.
2.1.3 (2021-01-14)
Removed mdx_outline
Markdown extension, which is incompatible with Python 3.9.
2.1.2 (2020-07-06)
Fixed tree builder to skip virtual environments.
2.1.1 (2020-02-16)
Fixed missing six
dependency.
2.1 (2020-02-16)
2.0 (2019-11-30)
BREAKING: Switched to SHA256 for tracking changes to files and reviews of extended attributes. Use doorstop review all
followed by doorstop clear all
to update an existing project. WARNING: This marks all items as reviewed and clears all suspect links.
Dropped support for Python 3.5.
Fixed a bug with items not getting saved after edits.
Added the ability to explicitly name a requirement.
Improved the error message when there are multiple root documents.
1.6 (2019-08-10)
Updated edit
and reorder
commands to use $EDITOR
.
Promoted support for item headers out of beta.
Fixed bug with Doorstop attempting to import formulas from XLSX.
Added support for !include
statements in YAML to share configuration.
Added --default
option to add
to specify a file with defaults values.
1.5 (2018-09-19)
Added preliminary support for item headers. (@rickeywang )
Added major enhancements to the Desktop GUI. (@elarivie )
Converted document outline to a tree view.
Made documents navigable via clicking links.
Added an icon for Linux and Windows.
Fixed duplicate headings when publishing. (@guille-r )
Added Python 3.7 support.
1.4 (2017-10-22)
Fixed issue running doorstop on CI. (@ojohnny )
1.3.1 (2017-08-26)
Fixed templates location for installation issue.
1.3 (2017-07-29)
Updated HTML templates.
Bug fixes.
1.2.1 (2017-02-25)
Fixed issue where could doorstop create
deleting the whole project.
1.2 (2017-02-11)
Disabled excessive text cleanup in items. (@michaelnt )
Running doorstop review all
will be required due to whitespace changes.
Added --no-levels={all,body}
publishing options. (@michaelnt )
Removed unnecessary line breaks (<br>
) in generated HTML. (@michaelnt )
DEPRECATION WARNING: --no-body-levels
will not be supported in a future release.
1.1 (2017-01-09)
Added '--strict-child-check' option to ensure links from every child document.
1.0.2 (2016-06-08)
1.0 (2016-04-17)
Fixed a bug checking levels across inactive items.
Added error message for all IO errors.
Added '--skip' options to disable documents during validation.
Added Mercurial support. (@tjasz )
0.8.4 (2015-03-12)
Restrict openpyxl < 2.2
(there appears to be a breaking change).
0.8.3 (2014-10-10)
Fixed a bug running VCS commands in subdirectories.
Excluded openpyxl == 2.1.0
as a dependency version.
0.8.2 (2014-09-29)
Limit the maximum version of openpyxl
to 2.1.0 due to deprecation bug.
0.8.1 (2014-09-04)
Fixed a bug requesting new item numbers from the server.
0.8 (2014-08-28)
Added doorstop clear ...
to absolve items of their suspect link status.
Added doorstop review ...
to absolve items of their unreviewed status.
Added Item.clear()
to save stamps (hashes) of linked items.
Added Item.review()
to save stamps (hashes) of reviewed items.
Added doorstop reorder ...
to organize a document's structure.
Renamed Item.id
and identifer
arguments to uid
Added '--no-body-levels' to doorstop publish
to hide levels on non-headings.
Added doorstop-server
to launch a REST API for UID reservation.
Added '--server' argument to doorstop add
to specify the server address.
Added '--warn-all' and '--error-all' options promote warnings to errors.
0.7.1 (2014-08-18)
Fixed bug importing items with empty attributes.
0.7 (2014-07-08)
Added doorstop delete ...
to delete document directories.
Added doorstop export ...
to export content for external tools.
Fixed doorstop publish ...
handling of unknown formats.
Added tree structure and traceability to index.html
.
Added clickable links using Item IDs in HTML header tags.
Fixed bug publishing a document to a directory.
Fixed bug publishing a document without an extension or type specified.
Updated doorstop import ...
to import from document export formats.
Updated doorstop edit ...
to support document export/import.
Renamed doorstop new ...
to doorstop create ...
.
Made 'all' a reserved word, which cannot be used as a prefix.
0.6 (2014-05-15)
Refactored Item
levels into a Level
class.
Refactored Item
identifiers into an ID
class.
Refactored Item
text into a Text
class (behaves like str
).
Methods no longer require nor accept 'document' and 'tree' arguments.
Renamed Item.find_rlinks()
to Item.find_child_links()
.
Changed '--no-rlink-check' to '--no-child-check'.
Added Item.find_child_items()
and Item.find_child_documents()
.
Added aliases to Item: parent_links, child_links/items/documents.
Added '--with-child-links' to doorstop publish
to publish child links.
Added doorstop import ...
CLI to import documents and items.
Refactored Document
prefixes in a Prefix
class.
Added '--no-level-check' to disable document level validation.
Added '--reorder' option to doorstop
to enable reordering.
0.5 (2014-04-25)
Converted Item.issues()
to a property and added Item.get_issues()
.
Added '--level' option to doorstop add
to force an item level.
Added warnings for duplicate item levels in a document.
Added warnings for skipped item levels in a document.
Renamed Item
methods: add_link -> link, remove_link -> unlink, valid -> validate.
Renamed Document
methods: add -> add_item, remove -> remove_item, valid -> validate.
Renamed Tree
methods: new -> new_document, add -> add_item, remove -> remove_item, link -> link_items, unlink -> unlink_items, edit -> edit_item, valid -> validate.
Added doorstop.importer
functions to add exiting documents and items.
0.4.3 (2014-03-18)
Fixed storage of 2-part levels ending in a multiple of 10.
0.4.2 (2014-03-17)
Fixed a case where Item.root
was not set.
0.4.1 (2014-03-16)
Fixed auto save/load decorator order.
0.4 (2014-03-16)
Added Tree.delete()
to delete all document directories and item files.
Added doorstop publish all <directory>
to publish trees and index.html
.
0.3 (2014-03-12)
Added find_document and find_item convenience functions.
Added Document.delete()
to delete a document directory and its item files.
0.2 (2014-03-05)
All Item
text attributes are now be split by sentences and line-wrapped.
Added Tree.load()
for cases when lazy loading is too slow.
Added caching to Tree.find_item()
and Tree.find_document()
.
0.1 (2014-02-17)
Top-level items are no longer required to have a level ending in zero.
Added Item/Document.extended
to get a list of extended attribute names.
0.0.21 (2014-02-14)
Documents can now have item files in sub-folders.
0.0.20 (2014-02-13)
Updated doorstop.core.report
to support lists of items.
0.0.19 (2014-02-13)
Updated doorstop.core.report to support items or documents.
Removed the 'iter_' prefix from all generators.
0.0.18 (2014-02-12)
Fixed CSS bullets indent.
0.0.17 (2014-01-31)
Added caching of Item
in the Document
class.
Added Document.remove()
to delete an item by its ID.
Item.find_rlinks()
will now search the entire tree for links.
0.0.16 (2014-01-28)
Added Item.find_rlinks()
to return reverse links and child documents.
Changed the logging format.
Added a '--project' argument to provide a path to the root of the project.
0.0.15 (2014-01-27)
Fixed a mutable default argument bug in Item
creation.
0.0.14 (2014-01-27)
Added Tree/Document/Item.iter_issues()
method to yield all issues.
Tree/Document/Item.check()
now logs all issues rather than failing fast.
Renamed Tree/Document/Item.check()
to valid()
.
0.0.13 (2014-01-25)
Added Document.sep
to separate prefix and item numbers.
0.0.12 (2014-01-24)
Fixed missing package data.
0.0.11 (2014-01-23)
Added Item.active
property to disable certain items.
Added Item.derived
property to disable link checking on certain items.
0.0.10 (2014-01-22)
Switched to embedded CSS in generated HTML.
Shortened default Item
and Document
string formatting.
0.0.9 (2014-01-21)
Added top-down link checking.
Non-normative items with a zero-ended level are now headings.
Added a CSS for generated HTML.
The 'publish' command now accepts an output file path.
0.0.8 (2014-01-16)
Searching for 'ref' will now also find filenames.
Item files can now contain arbitrary fields.
Document prefixes can now contain numbers, dashes, and periods.
Added a 'normative' attribute to the Item class.
0.0.7 (2013-12-09)
Always showing 'ref' in items.
Reloading item attributes after a save.
Inserting lines breaks after sentences in item 'text'.
0.0.6 (2013-12-04)
Added basic report creation via doorstop publish ...
.
0.0.5 (2013-11-20)
Added item link and reference validation.
Added cached of loaded items.
Added preliminary VCS support for Git and Veracity.
0.0.4 (2013-11-04)
Implemented add
, remove
, link
, and unlink
commands.
Added basic tree validation.
0.0.3 (2013-10-17)
Added the initial Document
class.
Items can now be ordered by 'level' in a document.
Initial tutorial created.
0.0.2 (2013-09-25)
Changed doorstop init
to doorstop new
.
Added the initial Item
class.
Added stubs for the Document
class.
0.0.1 (2013-09-11)
Initial release of Doorstop.