projectdoc Toolbox 5.0 Release Notes

Improvements heading to data center support. Requires rebuild of database tables which may take up to hours to run.

Release Date
 

Today we released version 5.0 of the projectdoc Toolbox. It includes changes from version 5.0.0 to 5.0.10.

Since this is a major release, expect breaking changes!

This major update includes changes to the database tables containing projectdoc documents. The rebuild process will be started automatically by default when updating the app. Dependent on the amount of projectdoc documents on your Confluence server, this process will require quite a long time (half an hour to several hours) to complete. Although the process runs in the background, the results of queries on projectdoc documents are not reliable until the process completes successfully.

Please read this release notes carefully prior to updating the projectdoc Toolbox!

We highly recommend to run this process on your test system to estimate the time for the rebuild of projectdoc documents on your system.

This version 5 includes a couple of changes required for data center support. Data center support is planned to be supported by the major version of the projectdoc Toolbox.

This version is a preparation step to support Confluence Data Center (DC). We are about to start the approval process for DC and once this process is completed, a DC version of the projectdoc Toolbox will be available on the Atlassian Marketplace. Customers with a DC configuration will then need to move to a DC license of the projectdoc Toolbox. More information on Data Center Pricing & Licensing or Collaborate without compromise on DC can be found at Atlassian.

New here? What is the projectdoc Toolbox?

The projectdoc Toolbox is an add-on for Confluence supporting agile software development teams to collaborate on process, project, system, and product documentation. 

Summary

This version provides

  • Preparation for Confluence Data Center
  • Support for Confluence Server version 7.4.16 to 7.17.1.
  • Improvements in the user interface

This release has Breaking Changes. Therefore it is required to update extensions and doctype add-ons (see Related Releases for details).

New and Noteworthy

Very quickly the most relevant changes in this release.

Preparation for Data Center Support

This version add some performance improvements to support Confluence Data Center (DC).

One of the most relevant news for your upgrade is the new database structure the projectdoc Toolbox. Since the projectdoc tables did not store any information that cannot be derived from the Confluence pages, you simply need to rebuild the table data from scratch. Unfortunately this requires – especially for large installations – quite a lot of time. We recommend to check the upgrade process in a test environment on real data to get an estimation about how long this would take on your Confluence instance.

This also includes support for the Confluence Read-Only Mode (a must have for DC).

Editing Experience

A couple of improvements address the user experience when working with projectdoc documents in the Confluence page editor.

All these features are considered experimental and are currently in an early release status with some limitations (for details please follow the links below).

  1. Section Expander: Macros in the page editor can be collapsed or expanded
  2. Section Navigation: The editor can be opened at a specified location
  3. Dynamic Editor Content: Provides dynamic content generated by macros when in the page editor

Reading Experience

A new feature allows readers to collapse or expand sections.

The chevron icon allows to hide the contents of a section and therefore allows the user to focus.

For more information, please visit Section Collapse.

Administration UI

The administration user interface provides new elements.

Features

Features that interact with the user interface may now be configured to be activated or deactivated by user groups.

More information for these features are found on Doctools.

Rebuilder UI

The rebuild processes may be launched via the administration user interface. The REST services, providing more configuration options, are still available, tough.

For more information on the Rebuild Service, please refer to the projectdoc Rebuild Manual.

Database Tables

We updated the database tables to store projectdoc data. This is required to cope with the increased load on Confluence when run in a data center environment.

The old tables (identified by "PD_" in the table name) will stay untouched and the new structures will be stored in new tables (identified by "PD5_"). Even if the old data will still be available we highly recommend to have access to a current backup of your database.

The upgrade process will only affect projectdoc tables in Active Objects (AO). In case the process cannot complete successfully, because an accidental server downtime, please clear (not drop) the new PD5 tables from corrupt content and restart the server. The process can also be started manually via a Representational state transfer service.

For more information on updating information in the projectdoc database tables, please refer to projectdoc Rebuild Manual, especially Upgrade Task.

Breaking Changes

Key Summary T P Description
PDAC-1494 Fix Merge Property Semantics Bug Blocker (migrated)

The service uses by REST services to alter a property value with MERGE needs to be updated. We need to override the specified value and/or property.

Currently the merge is a no-op.

PDAC-1527 Remove Load Strategy Improvement Critical (migrated)

Remove the internal marker to control the loading of projectdoc documents. Since the rendered values are now stored persistently, we do not need to define which properties need to be rendered for a given request.

PDAC-1544 Name List Restriction Redefinition Bug Critical (migrated)

The Name List Macro allows to restrict values. This is enforced by autocomplete.

Currently those values will, although specified, not be rendered. For version 5 this is redefined. In case a user manages to add a restricted value, the value will be rendered (apparently without a link). In case a referenced document is deleted, the value will be rendered (apparently without a link).

PDAC-1480 Make strict HTML Encoding the default Improvement Major

To be secure by default we need to change the default configuration for the system property de.smartics.projectdoc.security.strictHtmlEncoding.

PDAC-1614 Attachment Supplier Macro Patch Bug Major

The Document Properties Supplier Attachment Macro fails to autocomplete attachments.

The service provided by Confluence is no longer working and therefore needs to be replaced with projectdoc's autocomplete script. Then we can abandon the page parameter (which was required by the Confluence script) and will need to change the parameter type of 'name' from attachment to string.

PDAC-1584 Render Template must not allow Tags Bug Major

The parameter Render Template must not allow HTML tags.

 If HTML tags are required, the template must be provided via space property.

PDAC-1622 Check Whitelist for Documentation URL Bug Minor (migrated)

When accessing the JSON documentation configuration only URLs allowed by the whitelist must be allowed.

PDAC-1586 Prevent HTML in Delimiter Bug Minor (migrated)

The parameter Delimiter of the Display List Macro must be encoded and does not allow tags.

Otherwise malicious users may add arbitrary HTML code to a page.

Installation Instructions

Install the new OBR of the projectdoc Toolbox.

Installation Order

In case this is the first time the projectdoc Toolbox is installed, please follow these instructions. In case you upgrade from an older version, please continue with Upgrade Instructions

Please install the projectdoc Toolbox first, then the extensions and finally update the doctype add-ons.

So this is the basic order to upgrade:

  1. Install projectdoc Toolbox
  2. Install extension add-ons (start with Web API Extension)
  3. Install doctype add-ons (start with Core Doctypes)

Please install only those add-ons that you need! The add-ons provide additional features to the projectdoc Toolbox. The projectdoc Toolbox works without any further add-ons.

Upgrade Instructions

Here is a short guide to update to this new version of the projectdoc Toolbox. For detailed information on dependencies, please consult the documentation of the add-ons.

Upgrade Order

projectdoc Toolbox only

In case you are only using the projectdoc Toolbox without any extensions, you may install the projectdoc Toolbox and the automatic upgrade process of the projectdoc tables in your database will start automatically.

Order, when only the projectdoc Toolbox is in use (only one step):

  1. Update projectdoc Toolbox

projectdoc Toolbox with additional projectdoc add-ons

The projectdoc Toolbox will check that the versions of the add-ons are correct. If not, the upgrade process will be postponed. The issue will be logged at error level to the log and on each projectdoc document page online. This is the default process.

Alternatively you get full control over the process by setting the Java System system property de.smartics.projectdoc.upgrade.skip-auto to true. This will prevent the upgrade process to start. Install the projectdoc Toolbox then the extensions, unset the system property and restart the server.

For more information on updating information in the projectdoc database tables, please refer to projectdoc Rebuild Manual, especially Upgrade Task.

Please install only those add-ons that are actually used! In case you do not use any of the projectdoc extensions, there is no need to install it. (smile)

Automatic (recommended)- projectdoc Toolbox with extension and doctype add-ons:

  1. Update projectdoc Toolbox
  2. Check logs or open a projectdoc page to see if add-on updates are required
    1. update extension add-ons (start with Web API Extension)
    2. update doctype add-ons (start with Core Doctypes)

Manual - projectdoc Toolbox with extension and doctype add-ons:

  1. Set the system property when starting the JVM -Dde.smartics.projectdoc.upgrade.skip-auto=true
  2. Update projectdoc Toolbox
  3. Update extension add-ons (start with Web API Extension)
  4. Update doctype add-ons (start with Core Doctypes)
  5. Remove the system property added in step 1 -Dde.smartics.projectdoc.upgrade.skip-auto=true

Rebuild

Due to the following issues a rebuild is required to update properties.

Expect this to be huge. Do not upgrade without a backup plan!

Key Summary T P Description
PDAC-1420 Extend AO Table IDs to UUIDs Improvement Critical (migrated)

We need to allow a wider range for entries in the projectdoc document and projectdoc document properties table than int. Therefore we need to define the identifier as a UUID value.

PDAC-1536 Updates on Name List References Improvement Major

When using deep links in a template with a Name List Macro, changes in the referenced documents should update the value.

PDAC-1456 Whitespace Handling Bug Major

No-break characters need to be treated in addition to whitespace characters. If a no-break character is encountered, it must be substituted with the space character.

PDAC-1563 Artificial Property for Anchor Links Improvement Minor (migrated)

Add an artificial properties named "projectdoc Anchor Links" that lists all links of the document found in its body that points to a named anchor in this or another document.

The artificial property 'projectdoc Anchor Link Documents' allows to quickly lookup linking documents.

With these properties tools may easily search for documents that link to a particular section of a given document.

PDAC-1539 Add Artificial Property for Labels Improvement Minor (migrated)

Add an artificial property "Labels" for Confluence page labels.

PDAC-1626 Space Key Reference is missing Bug Minor (migrated)

In case a reference for a Confluence Link as document property value is added, only the page title (via the Title property) is a taken into account. We need also to add the space key.

This is detected by the automatic upgrade process. So there is no need to start the rebuild manually if the automatic upgrade has been selected.

For complex navigation structure between projectdoc documents it may be required to run a refresh on the tables.

Please refer to projectdoc Rebuild Manual for details on how to rebuild or refresh the projectdoc tables.

List of Changes

The following changes are part of the latest projectdoc Toolbox for Confluence.

Changes in 5.0.10

Key Summary T P Description
PDAC-1627 Printing Boxes with Scroll PDF Bug Minor (migrated)

When printing PDF with Scroll PDF the projectdoc box icons are misplaced.

PDAC-1626 Space Key Reference is missing Bug Minor (migrated)

In case a reference for a Confluence Link as document property value is added, only the page title (via the Title property) is a taken into account. We need also to add the space key.

Changes in 5.0.9

Key Summary T P Description
PDAC-1625 Support Tables as Property Value Improvement Minor (migrated)

Currently tables are not allowed as property values. While there is litte use of such structures for queries, values can be used as text modules.

PDAC-1624 Support Task Lists as Property Value Improvement Minor (migrated)

Instead of using a list and strike through, we should also support task lists with task bodies (labels).

PDAC-1623 Doctype Documentation for new Documents Bug Minor (migrated)

Information about the doctype is not possible if the document is new.

Therefore we need to derive the space key and doctype.

PDAC-1622 Check Whitelist for Documentation URL Bug Minor (migrated)

When accessing the JSON documentation configuration only URLs allowed by the whitelist must be allowed.

Changes in 5.0.8

Key Summary T P Description
PDAC-1608 Remove Admin Configuration Improvement Major

Currently the configuration screen is not needed since all services with configuration options on that page have been removed.

Only the features screen and the screen for Refresh / Rebuild is used.

PDAC-1614 Attachment Supplier Macro Patch Bug Major

The Document Properties Supplier Attachment Macro fails to autocomplete attachments.

The service provided by Confluence is no longer working and therefore needs to be replaced with projectdoc's autocomplete script. Then we can abandon the page parameter (which was required by the Confluence script) and will need to change the parameter type of 'name' from attachment to string.

PDAC-1620 Allow unnumbered Steps Improvement Minor (migrated)

In case the section inside a Step Macro is marked as unnumbered, the steps should not show a number.

Currently all steps are numbered by default.

PDAC-1617 Prevent to copy Dynamic Content in Editor Improvement Minor (migrated)

The dynamic content that is added to the editor must not be copied when the user uses the clipboard.

PDAC-1610 Merge Issue with Display Property Macros Improvement Minor (migrated)

The Display Property Macro and Display Properties Macro fail to render list values when merging HTML lists and comma-separated text.

The merger needs to detect which target format to use and merge the elements accordingly.

PDAC-1609 Use Propagation for Refresh Process Improvement Minor (migrated)

Instead of rewrite we should use propagate. It is a little more performant and handles delegate use cases properly.

PDAC-1607 Improve Support for Blog Post Pages Improvement Minor (migrated)

When calculating artificial properties some services require a Page where an AbstractPage should suffice.

PDAC-1604 Remove Async Event Code Improvement Minor (migrated)

Remove the Async Event Code that is no longer used in favor for sync processing.

PDAC-1603 Remove NameRef Cache Improvement Minor (migrated)

Remove the cache for Name Reference Updates.

PDAC-1621 Expand / Collapse Chevron Position for Steps Bug Minor (migrated)

If expand/collapse chevrons are rendered for sections within the Steps Macro, then the position is a little odd.

We need to adjust the position to the smaller letters in the CSS.

PDAC-1618 Loosing Section Title Bug Minor (migrated)

When editing section titles, subsection titles may loose their titles.

PDAC-1616 JavaScript Provisioning for Blog Posts Bug Minor (migrated)

Some projectdoc scripts fails to load when a blog post is rendered.

PDAC-1615 Optimistic Locking for Web API Bug Minor (migrated)

The REST services fail with optimistic logging when updating a page and creating a new page.

PDAC-1613 Encoding Issue with Subdocument's Title Bug Minor (migrated)

Subdocument doctypes fail to properly render a title containing HTML entities.

PDAC-1612 Multiple Documents in Macro Editor Bug Minor (migrated)

The Display Document Property Macro and the Display Document Properties Macro allow to specify multiple documents to draw values from.

While the macro editor allows to specify the multiple documents properly, the filling of existing documents fails.

There is no workaround. Currently it is only possible to specify one document value.

PDAC-1611 Delegate Issue with Rewrite Bug Minor (migrated)

When a document with a delegate is rewritten during a refresh then the property values are not derived from the delegate.

PDAC-1606 Creation Tracker Macro runs into NPE Bug Minor (migrated)

The creation tracker macro fails for pages that are not associated with a space.

PDAC-1605 Provide a default Context for Space Console Bug Minor (migrated)

The log shows that while calculating the space console @self references are rejected.

We need to provide a default context for space consoles.

Changes in 5.0.7

Key Summary T P Description
PDAC-1600 Page Title Replacement on Prerender Improvement Major

The page title placeholders are not replaced when the page wizard dialog opens.

PDAC-1599 Page Title Replacement with Space Properties Improvement Major

Allow to do replacements with space properties when using the Create-from-Template Macro.

PDAC-1589 Enhanced Support for Read-only Mode New Feature Minor (migrated)

Added services to the internal API to be used by the Web API Extension.

PDAC-1601 Remove WARN logging for Delete Tree Improvement Minor (migrated)

When pages are not found on a delete tree process, these should not be logged at WARN level.

PDAC-1597 Space Key Specification Service for Test on empty Result Improvement Minor (migrated)
PDAC-1596 Space Key Specifications with implicit @all Improvement Minor (migrated)

In case a space key specification only contains exclusions, it should be assumed that there is an implicit @all.

Currently this reference of all spaces must be specified explicitly by the user.

PDAC-1594 Update Docs for Rebuilder REST API Improvement Minor (migrated)

Add a link to the Rebuilder Manual.

Remove typos and copy/paste issues.

PDAC-1592 Update Update Page Improvement Minor (migrated)

The information screen presented on update should provide more information about what to do for the upgrade from version 4 to version 5.

PDAC-1602 NPE in HTML Block Detection Bug Minor (migrated)
PDAC-1598 Page Title Replacement Issue Bug Minor (migrated)

Replacement of title placeholder fails for a number of references (e.g. currentMonth).

PDAC-1595 NPE with Tree Sets Bug Minor (migrated)

In Confluence the parameter list of a search query is checked for null values. In case the collection does not allow null values, as is the case for a TreeSet, this test will run into a NPE.

According to the API, we need to provide a Comparator implementation that allows null values even if we do not add null values.

PDAC-1593 Update on Page Move fails Bug Minor (migrated)

When a page is moved we need to handle the update propagation.

Unfortunately Confluence continues to publish events which we will all discard. Nonetheless the move will take a big amount of time. A copy tree does not have these issues.

PDAC-1591 Fix Query Params in Install/Update URLs Bug Minor (migrated)

The API of the Marketplace UI has probably changed. The query param is no longer only "q", but also "query".

PDAC-1590 Handle unknown Install Request gracefully Bug Minor (migrated)

The install parameter for the install servlet is either "new" or "update". Make sure that in case it is neither of them, "new" is assumed.

Changes in 5.0.6

Key Summary T P Description
PDAC-1585 Formatting Controls in Templates Improvement Major

Templates should allow a white list of HTML tags to make it easier to format rendered output of properties.

PDAC-1582 Rendering Tiles Improvement Major

Users may use document properties to have blocks of content accessible by their names. These blocks or tiles can be inserted with the Display Document Property Macro at any location.

Macros are required to be either of type inline or block, The Display Document Property Macro is of type inline and therefore cannot properly render block content. If it does, the browser will sanitize the output of this macro and create additional spacing around the element.

If there is a single root node, then Confluence won't add a span or div element according to the macro type. So the class names on the element will be misguiding (inline), but the rendering would work.

Unfortunately a table cell will render a p within a div. Since p elements do not allow block content, these will be closed, causing additional spacing on top and/or bottom.

A workaround for this may be (dependent on the user's CSS):

div.content-wrapper > p:empty { 
  display: none; 
}
PDAC-1588 Updating Controls fails Bug Major

When documents are saved their controls do not get persisted in every use case.

PDAC-1584 Render Template must not allow Tags Bug Major

The parameter Render Template must not allow HTML tags.

 If HTML tags are required, the template must be provided via space property.

PDAC-1580 Render is-block with Standard CSS Improvement Minor (migrated)

Property values in the Document Properties Marker Macro should render with standard CSS and not in the default compact mode.

PDAC-1587 Preserve Property Order Bug Minor (migrated)

The order of added properties is not preserved. Manually added properties in blocks are being shuffled.

The order of properties in a document must be preserved.

PDAC-1586 Prevent HTML in Delimiter Bug Minor (migrated)

The parameter Delimiter of the Display List Macro must be encoded and does not allow tags.

Otherwise malicious users may add arbitrary HTML code to a page.

PDAC-1583 Scroll Word not successfully detected Bug Minor (migrated)

Exporting a page with Scroll Word Exporter is not successfully detected.

PDAC-1581 Align compact OL Bug Minor (migrated)

In compact mode the value of an ordered list (OL) should be aligned to the left as the bullet list does (UL).

Changes in 5.0.5

Key Summary T P Description
PDAC-1579 Align Edit Control Top Improvement Minor (migrated)

Move the edit control (used to edit the section) higher so that is above the section body.

PDAC-1578 Align Collapse Control Left Improvement Minor (migrated)

Add the chevron without the circle left to the title of the section.

PDAC-1577 Blank Section Body Detection fails Bug Minor (migrated)

In case a section has only sections with content, the section is considered empty although it is not.

Changes in 5.0.4

Key Summary T P Description
PDAC-1575 Collapse / Expand for Sections in View Mode Improvement Minor (migrated)

Provide a control to collapse and expand a section when the page is in view mode.

PDAC-1573 Discard Lines marked as strikethrough Improvement Minor (migrated)

Allow the Table Merger Macro to discard lines that contain at least one element that is has a strikethrough tag.

PDAC-1571 Ignore Elements Parameter Improvement Minor (migrated)

Provide a parameter for the Content Marker Macro named Ignore Elements to consider certain elements as empty.

Currently HTML tables with only text content in header cells are considered empty.

PDAC-1569 Import without Refresh Improvement Minor (migrated)

If the importer requests no reindex then the projectdoc Toolbox should not refresh either.

Deselecting reindexing the user implies that all reindexing/refreshing is done manually at a later time.

PDAC-1576 Shift+Ctrl-Click for Section Expander fails Bug Minor (migrated)

The section expander does not work for Shift+Ctrl-Click. It should collapse all empty macros, but only does collapse the clicked macro.

PDAC-1574 Name Reference Update fails on Ancestor Line Bug Minor (migrated)

Properties in parent documents do not get updated if the name of a child document is altered.

PDAC-1572 Section Edit Button Z-Index Bug Minor (migrated)

The section edit button is hidden behind boxes, therefore the z-index needs to be adjusted.

PDAC-1570 Delete Space Issue Bug Minor (migrated)

When deleting a space the update of deleted pages prevents the successful execution of the process.

We need to check that updates are not conducted on pages that are or are to be deleted.

This includes deleting a space or deleting a tree of pages.

PDAC-1568 Parent Property Name Ref Bug Minor (migrated)

A wrong reference is added to DocumentPropertyRefs containing the name of the property that contains the Parent Document Macro. Instead the references must contain the name of the property whose value is referenced.

Changes in 5.0.0 to 5.0.3

Key Summary T P Description
PDAC-1427 Name List without Search New Feature Blocker (migrated)

We need to enable the Name List Macro to reference documents without running a Lucene Search. This is required for deep links when users cannot rely on a Document Cache big enough.

PDAC-1494 Fix Merge Property Semantics Bug Blocker (migrated)

The service uses by REST services to alter a property value with MERGE needs to be updated. We need to override the specified value and/or property.

Currently the merge is a no-op.

PDAC-1556 Section Expander for Editor New Feature Critical (migrated)

Allow users to collapse Section Macros and Content Marker Macros. This allows to save more space in the editor in case where a template provides more sections than currently required.

PDAC-1426 Support Read-Only Mode New Feature Critical (migrated)

As part of data center support the read-only mode must be considered by the event processing and REST services.

PDAC-1425 Phase-based Rebuild Process New Feature Critical (migrated)

An alternative process to rebuild caches, database, and reindex.

PDAC-1424 Add projectdoc to Reindex Admin View New Feature Critical (migrated)

Allow to start the reindex of projectdoc tables and the reindex of projectdoc spaces from the admin view.

PDAC-1559 Dynamic Content in Page Editor Improvement Critical (migrated)

Allow to render content of a macro with dynamic content in the page editor.

PDAC-1558 Section Navigation to Editor Improvement Critical (migrated)

Provide means to navigate more easily from the view representation of a section to the Section Macro in the page editor.

PDAC-1527 Remove Load Strategy Improvement Critical (migrated)

Remove the internal marker to control the loading of projectdoc documents. Since the rendered values are now stored persistently, we do not need to define which properties need to be rendered for a given request.

PDAC-1420 Extend AO Table IDs to UUIDs Improvement Critical (migrated)

We need to allow a wider range for entries in the projectdoc document and projectdoc document properties table than int. Therefore we need to define the identifier as a UUID value.

PDAC-1544 Name List Restriction Redefinition Bug Critical (migrated)

The Name List Macro allows to restrict values. This is enforced by autocomplete.

Currently those values will, although specified, not be rendered. For version 5 this is redefined. In case a user manages to add a restricted value, the value will be rendered (apparently without a link). In case a referenced document is deleted, the value will be rendered (apparently without a link).

PDAC-1560 Allow to activate Features by Group New Feature Major

For selected features it should be possible to active them for user groups.

PDAC-1547 Prevent Upgrade on outdated Add-ons New Feature Major

In case the upgrade is started on outdated add-ons, the upgrade process requires to fail once started automatically.

There is an error message shown on each page with a projectdoc document.

PDAC-1525 Select Persistence Mode in Admin Screen New Feature Major

Allow to configure the persistence mode with async and sync via the projectdoc add-on admin screen.

PDAC-1492 Rebuild Admin UI New Feature Major

Provide a UI for admins to start a rebuild / refresh / revalidate / reindex process from the admin UI within the projectdoc configuration screens.

PDAC-1423 Allow to control the size of the request cache New Feature Major

For large instances we need to allow to control the upper limit of the in-memory request cache.

This value can only be taken into account if the future cache is not in use.

PDAC-1421 Reindexing on projectdoc Spaces only New Feature Major

Allow to run the reindexer only on projectdoc spaces. The services checks first if there is at least one projectdoc document in the space. If there are no projectdoc documents, the space is skipped.

PDAC-1546 Allow Placeholders in Content Marker and Section Macro Improvement Major

The Content Marker Macro and the Section Macro require a parameter to allow the replacement of placeholders ($

{...}

, $[...], and $<...>).

This is similar to the feature of placeholder replacement already provided by the Code Macro and the Code Block Placeholder Macro and transclusion macros.

PDAC-1536 Updates on Name List References Improvement Major

When using deep links in a template with a Name List Macro, changes in the referenced documents should update the value.

PDAC-1500 Replace Service must not Encode Improvement Major

The replacer service should only do placeholder replacements but not HTML encoding.

PDAC-1480 Make strict HTML Encoding the default Improvement Major

To be secure by default we need to change the default configuration for the system property de.smartics.projectdoc.security.strictHtmlEncoding.

PDAC-1439 Support Row Spans for Table Merger Improvement Major

Support column spans with the Table Merger Macro.

PDAC-1542 Handle historic Versions Bug Major

When processing historic versions of a page the space key is not present. In these cases a default space key needs to be calculated to allow further processing of the page in the context of projectdoc.

PDAC-1541 NameList Restriction fails Bug Major

The Name List Macro fails when restriction to values is activated and the identifying property is neither name, short name, nor identifier.

PDAC-1524 Curly Brackets as Macro Parameter Values Bug Major

Confluence cannot handle macro parameter values with curly brackets consistently. On some versions some arbitrary part of the macro gets rendered in the chrome in later versions the macro is rendered as unknown in the page editor, although it actually works.

The problem is that curly braces seem to distract the parser. Therefore we need to sanitize the parameter value in case curly braces are set. This special treatment is required for the select parameter and the where parameter.

PDAC-1520 Prevent Storing unchached rendered Values Bug Major

For properties with control no-render-cache the rendered values must not be stored in cache and will be recalculated on loading the document.

PDAC-1517 Space Console Handling in Administration Context Bug Major

When calculating the space console in admin context the calculation is broken. Instead of creating the attached context, the noop context is created.

PDAC-1513 Strict Encoding Issue with Render Template Bug Major

When using the render template for the display macros, the template is rendered with double encoding. Instead of rendering text bold, <b>text</b> is rendered.

PDAC-1456 Whitespace Handling Bug Major

No-break characters need to be treated in addition to whitespace characters. If a no-break character is encountered, it must be substituted with the space character.

PDAC-1441 Fix Styles on Table Merger Bug Major

When the table columns are specified with the Table Merger Macro, column styles are not applied.

PDAC-1434 Hide on empty Fieldset Bug Major

An empty fieldset element should be considered empty content in the context of a section or content marker.

Fieldsets are generated by transclusion macros for transclusion boxes.

PDAC-1432 NPE in Name List on empty Tables Bug Major

When starting from scratch the Name List Macros will run into a NPE if the Lucene Index still has matches for the query, but the document cannot be found in the cleared (or otherwise empty) AO tables.

PDAC-1431 Index Page with ID 0 Bug Major

When a document of a given type is stored, its index page is stored in AO with a page identifier of 0 (zero).

PDAC-1428 AuthorsOfQuotes must be a normalized value Bug Major

The artificial property AuthorsOfQuotes must be a normalized string and not an HTML fragment.

The artificial property is generated by the Quote macro.

PDAC-1519 Add AncestorLevel as Artificial Property New Feature Minor (migrated)

The level is the physical height of the page on the space. The homepage and other root pages have the level = 0.

PDAC-1450 Cache Administration Resource New Feature Minor (migrated)

An internal REST service to access the configuration of the projectdoc caches.

PDAC-1564 Links to Feature Documentation Improvement Minor (migrated)

Add links from the Admin Page for features to the documentation on the smartics' server.

PDAC-1563 Artificial Property for Anchor Links Improvement Minor (migrated)

Add an artificial properties named "projectdoc Anchor Links" that lists all links of the document found in its body that points to a named anchor in this or another document.

The artificial property 'projectdoc Anchor Link Documents' allows to quickly lookup linking documents.

With these properties tools may easily search for documents that link to a particular section of a given document.

PDAC-1557 Replace Access to AJS.params Improvement Minor (migrated)

Access to AJS.params is deprecated in AUI 9 and is planned to be removed in AUI 10.

This is a simple replacement with fetching the information from the metadata.

PDAC-1555 Remove Edit Mode UI Improvement Minor (migrated)

This feature allowed some limited selection of property values when in the Macro Editor.

It is obsolete since the projectdoc Toolbox now provides autocompletion.

PDAC-1554 Add Macro Library for internal Use Improvement Minor (migrated)

To make it easier to write userscripts that need to parse macros in the page editor.

PDAC-1553 Update Expression Library Improvement Minor (migrated)

Update the library to its latest version.

PDAC-1549 Render Wikipedia URL with HTTPS Improvement Minor (migrated)

When a quote macro renders a link to Wikipedia, the protocol should be HTTPS.

PDAC-1539 Add Artificial Property for Labels Improvement Minor (migrated)

Add an artificial property "Labels" for Confluence page labels.

PDAC-1538 Alternative Table Style Separator Improvement Minor (migrated)

Some style parameter values for macros may contain column specifications where the elements are separated by comma. This conflict where the style information is provided with autocomplete.

Where column width needs to be specified we need to allow the semicolon as separator in addtion to the comma separator.

For instance: projectdoc-alternating[columns=40px;*;440px]

PDAC-1537 Health Log for unresolved Placeholders Improvement Minor (migrated)

Add a health logger to track placeholders in templates that have not been resolved successfully.

The logger can be activated by setting de.smartics.projectdoc.healthCheck.templatePlaceholders to DEBUG.

PDAC-1534 Remove Delegation with Content Property Improvement Minor (migrated)

Do not use Content Properties to store the delegate document information.

PDAC-1530 Allow to explicitly specify Thread Names for Comala Publishing Improvement Minor (migrated)

Allow to explicitly specify the names of threads for which the projectdoc Toolbox should skip event handling.

Setting these names is useful if the event processing produces redundant work on incomplete documents. In case this property is specified the refresh process is required to be started manually after a successful publishing.

The system property de.smartics.projectdoc.integration.thread.names accepts a comma-separated list of names to match with thread names. This may also help with other tools that process Confluence pages where the processing of events by the projectdoc Toolbox should be postponed due to performance reasons.

PDAC-1526 Add ID for Box Macros Improvement Minor (migrated)

We need to provide a new macro parameter "Identifier" for box macros to be able to reference boxes with the In-Document Link Macro.

PDAC-1523 Add Autocomplete for Space Property Macro Improvement Minor (migrated)

The Display Space Property Macro should provide autocomplete for space properties found in its delegate space closure.

PDAC-1516 Organize Root Spaces by Delegate Spaces Improvement Minor (migrated)

Allow to traverse spaces in the delegate space order.

This includes pages with additional space properties. They are also returned.

PDAC-1429 Control Lucene Caching for projectdoc Improvement Minor (migrated)

Allow to set SINGLE or BATCH mode for Lucene Extractor.

This is typically only a small improvement since the extractor usually accesses the cached values. In case it does not it will now use a Console cache and ensure that the Thread is left cleaned.

PDAC-1422 Add Cache Logging Improvement Minor (migrated)

We need to log the cache population to document the memory performance when reindexing large Confluence sites.

PDAC-1567 Reference Update for Templates Bug Minor (migrated)

Update checks do not support properties specified with templates for Name List Macro, therefore updates on those values do not refresh referencing documents.

PDAC-1566 Provide support for Delegate Spaces Bug Minor (migrated)

Delegate spaces require a strict order and therefore sets of spaces are not allowed to reference. But if we put an order on those sets, it is possible to use sets for delegate spaces. Users are responsible to define sets that make sense.

The order is the alphanumerical order on the space keys.

PDAC-1565 Provide Feature Service in Base Macro Bug Minor (migrated)

Some macros require access to the feature service, but currently have not.

Therefore we need to provide that service with the base macro.

PDAC-1562 Null Values for Ancestor Types Bug Minor (migrated)

Values for Ancestor Types (artificial properties) must not have a string value of "null".

PDAC-1561 Alignment in Space Property Select Bug Minor (migrated)

A space property for a select parameter may specify the alignment for a table rendering. This alignment is not taken into account.

PDAC-1552 Tour Macro fails with Title Template for Definition List Bug Minor (migrated)

When Definition List is selected for the Tour Macro, a Template for the definition term is not used. Always the document reference is rendered. It is expected that the template is use (as it is in table mode).

PDAC-1551 Tour Macro fails with Replace Property for Definition List Bug Minor (migrated)

When there is a replacement defined for the title property, the Tour Macro fails to replace the title when the definition list is selected to render. Instead the name value is rendered.

PDAC-1550 Reference Space Closure Calculation Bug Minor (migrated)

The reference space closure is not calculated correctly. It merges in other closures.

PDAC-1548 Quote Macro fails to render HTML Date Bug Minor (migrated)

The property value of the date, rendered by a quote macro, is rendered encoded. This is correct for the External Quote Macro, but not for the Quote Macro.

The Quote Macro needs to render the rendered property value verbatim while the External Quote macro must encoded the value provided by the macro parameter.

PDAC-1545 Cache Filter applied twice Bug Minor (migrated)

The filter servlet to establish the cache on a request is applied to request and forward actions. Therefore the cache is instantiated twice.

PDAC-1543 Documents Parameter of Display Property Reference Macro Bug Minor (migrated)

The parameter named Documents of the Document Property Reference Macro does not support autocomplete to specify documents.

PDAC-1540 Alignment with Select Placeholder Bug Minor (migrated)

When a select parameter is read as space property, the alignment information is lost.

It is expected that the alignment specified with a space property does work.

PDAC-1535 Delegation Update Bug Minor (migrated)

Updating delegated property values and sections fails in some use cases.

PDAC-1533 NPE Issue on Rendering Links Bug Minor (migrated)

When rendering a transclusion of a page fragment the processing will stop with an NPE in given contexts where the property is not available.

PDAC-1532 Fix Issue with empty Names Bug Minor (migrated)

When passing in an empty name list, the handling runs into Illegal Argument Exception.

PDAC-1531 Attachment Link Handling runs in NPE Bug Minor (migrated)

Fetching links from a fragment runs into an NPE. It should be able to handle null values by returning an empty list..

PDAC-1529 Encoding Issue with a number of Artificial Properties Bug Minor (migrated)

The original value for the artificial properties AncestorNames, AncestorTypeNames, DocumentPropertyRefs, and XxxAncestorTypeNames is not correctly encoded. In case the value is parsed, an exception is thrown.

The value may contain HTML sensitive characters and therefore must be encoded for the original value.

PDAC-1528 Add Document Property Ref for Confluence Links Bug Minor (migrated)

A reference to a document, in form of a Confluence Link, must also provide to the artificial property DocumentPropertyRefs.

PDAC-1522 Return Default for empty Space Property Bug Minor (migrated)

For the Display Space Property Macro in the case of a blank space property value return the default value instead of @all.

PDAC-1521 Refresh Page Action Update Bug Minor (migrated)

Due to the new invalidation process we need to update the Refresh Page Action.

We need to execute the same process as for the Refresh Page Tree Action, but only on the selected page.

In prior versions this action simply kicked the document from the hazelcast cache. Now we need to remove refresh the entry in AO.

PDAC-1518 Confluence Page Link as Property Value Bug Minor (migrated)

If the attribute value is a Confluence link and this link contains characters that need to be encoded as an HTML attribute, this value cannot be parsed.

PDAC-1515 Tag List renders empty Tag Bug Minor (migrated)

When the Tag List Macro renders Confluence Labels as Tags then the empty tag may slip into this list.

Empty Tag Labels need to be excluded by default.

PDAC-1514 Encoding Issue with Name Refs Bug Minor (migrated)

When calculating the Name Ref (name, id, short name) the value is normalized a second time. Therefore values containing start and end tag delimiters (faking an HTML tag) are removed.

PDAC-1512 Resolve multiple Doctypes for Name List Macro Bug Minor (migrated)

If a user specified more than one doctype for the Doctype Parameter of the Name List Macro, this list of values is considered to be the name of one doctype.

Instead the list of doctypes must be split by the comma delimiter.

PDAC-1508 Tour Macro Template Issue Bug Minor (migrated)

If the tour macro contains a template in the column header, the rendered result is encoded, but should not.

PDAC-1497 Encoding Issue with Name List Rendering Bug Minor (migrated)

In case of umlauts the rendered doctype is wrongly encoded.

PDAC-1493 Encoding of Link Title Bug Minor (migrated)

Links rendering a title are rendering HTML code. The need to render plain text encoded as HTML attribute.

PDAC-1458 Prevent Persisting Name Refs twice Bug Minor (migrated)

When updating and replacing a document the name references are stored twice.

PDAC-1457 Rendering Parent Content Bug Minor (migrated)

The parent macros render the content of the parent verbatim but must encode the value.

PDAC-1440 NPE on Draft Page with Heading Number activated Bug Minor (migrated)

The Document Properties Marker Macro throws a NullPointerException on a draft page with activated Heading Numbering.

PDAC-1436 Display All Document Properties Macro Documentation Link Bug Minor (migrated)

The link to the documentation for the Display All Document Properties Macro in the macro browser is a dead link.

It must point to /display/PDAC1/Display+All+Document+Properties+Macro.

PDAC-1433 Reject Document Properties as Space Properties Bug Minor (migrated)

Some document properties do not work as space properties and therefore must be removed from the set of space properties.

References

projectdoc Rebuild Manual
Information for administrators on how to maintain projectdoc documents or to build them from scratch.

Resources

Release Notes for the projectdoc Toolbox
Relevant information on changes to the projectdoc Toolbox for Confluence introduces by new versions of this app.
Glossary
Terms used in and defined for projectdoc.
FAQs
Questions and answers related to the projectdoc Toolbox and Confluence.