Sep 2022 | Introducing Kanban; External User Directory Integration; Document view improvements; Security updates

ImageTraction® TeamPage Releases 6.2.53 - 6.2.57 introduce Kanban for TeamPage. Other highlights include external user directory integration fixes, document view improvements, security updates, and Developer SDK additions. The releases include over 89 bug fixes and improvements, see TeamPage Change Log for a description of each update. Please read on for a summary.

Introducing Kanban for TeamPage

Kanban for TeamPage makes it simple to create a Kanban board as a TeamPage entry, and use colorful Kanban cards to plan activities and share progress by dragging and dropping cards in your browser window. The Kanban board automatically updates for you and for any other person looking at the same Kanban board. Kanban for TeamPage is a free plug-in that is automatically installed starting with the TeamPage 6.2.57 release. Takashi Okutsu of Traction Software's Japanese Business Office led the definition and development of Kanban for TeamPage.

Each task is represented as a card on the board, and you can change the status of the task by dragging and dropping the card to another column or row.

For example, if you move a card from the 'Start' column to the 'Working' column, the task changes to 'Someone has started and is in progress'.

You can also change the order of the cards in the column by dragging and dropping. Arranging them in order of priority or importance makes it clear at a glance where to start.

The card's position and status are updated in real time, allowing team members to see the latest status at any time.

Other browsers looking at the same board are updated in real time, so there is no need to refresh the browser to see updates as others make them.

Kanban for TeamPage works seamlessly with TeamPage Tasks, Projects, and Milestones. Kanban boards make it easy to track TeamPage Task status at a glance using colorful Kanban card linked to a Task.

You can also post Kanban cards linked to other TeamPage entries such as schedules, chats, meeting notes, nonconformance reports, etc.

See Introducing Kanban for TeamPage for more examples and details.

External User Directory Integration

External Identity Service Integration

• Fixed an issue with the way the external principal cache filler determines the initially requested "freshness" that prevented recently retrieved data from being re-used as expected, resulting in more work being performed on startup to retrieve and cache important information required to evaluate effective permissions for TeamPage users.

• Fixed an issue with the group lookup control in the ACLs and Groups editor dialog. For results that represent externally defined groups, TeamPage could make one or more requests to the external identity service to retrieve information that is not presented as part of the result or otherwise required in this context.

• Fixed an issue in the way TeamPage handles data that represents the definition of lists of ACL entries. If any ACL entries referenced a user or group defined in an external identity service, TeamPage might make requests to the external service to fill in information about those users and groups before it was known that the information would required. At best, this resulted in data being collected which may simply never be used; and at worst, this could cause TeamPage to perform a significant amount of unnecessary work, particularly during startup.

Microsoft Active Directory Integration

• Fixed an issue that could cause TeamPage to make redundant LDAP queries when retrieving information required to determine membership relationships among Active Directory users and groups which are, in turn, required to compute permissions for TeamPage user accounts bound to Active Directory principals. TeamPage should now make one and only one LDAP query to retrieve the "memberOf" and/or "member" information per security principal, for a given generation of the security principal cache. This should improve performance during startup and whenever the principal cache is being refreshed (on the schedule configured by an administrator for a particular set of Active Directory integration settings).

• Fixed some issues with the way that the "freshness" for certain data retrieved from Active Directory are determined that could either cause data just refreshed to be considered out of date.

• Fixed an issue with the way that TeamPage handled externally defined principals that may be neither groups nor users.

Documents Views

Extensive changes have been made to improve the performance of TeamPage's Documents views, and other contexts where files are listed.

• The generation of the JSON payloads TeamPage sends to the client in response to a request for the data required to display a file listing has been greatly sped up.

• Reduced the amount of data TeamPage sends to the client in response to a request for the data required to display a file listing.

• Greatly improved the performance of any filters applied to file listings, such as regular expressions or glob matching expressions (e.g., "*.doc").

• Greatly improved the performance of a request that has to be made to TeamPage when a user attempts to upload one or more files to offer the user a chance to confirm whether they wish to overwrite any files with the same names as any of those being uploaded.

• Greatly improved the performance of the folder chooser dialog presented to the user when they choose one or more files and folders and click the "Move" button in a file listing view.

• The Quick File Name Search plug-in (com.traction.extsearch.quickfilenamesearch) has been modified to use a different query which will give more complete results, including matches on partial file names.

Security Updates

The version of the jQuery JavaScript library that TeamPage uses has been updated to version 3.6.0. This resolves potential security vulnerabilities as described in the following NVD entries:

Improvements

Signature Requirements module

• Modified the way that the signature requirements module keeps data up to date when certain kinds of changes happen in TeamPage to be much more efficient. This includes the creation of new TeamPage user accounts bound to externally defined user accounts, and modification of security groups and ACLs. In certain circumstances, signature requirements data may temporarily appear out of date following these kinds of changes, but for no longer than a few minutes.

Telemetry

• TeamPage now has metering (counts and timing) for the creation of objects used to represent proxies for key definition data for group or user principals defined in Active Directory.

• TeamPage also now has metering (counts and timing) for request-local object cache usage.

External Search Engine Indexing

• TeamPage now has a space setting for whether to index metadata only for the contents of space share folders. This could be useful for spaces in which users are adding large numbers of files to the share folder but don't need to be able to get search hits or use filters based on the contents of those files (e.g., only file name, file type, etc.).

• If an administrator starts and then later cancels a "Verify" process, TeamPage will now gradually clear the backlog of documents that were moved to the "Needs Verify" status, if any remain. Previously, the only way to clear such a backlog would be to run another "Verify" operation.

• Improved the way TeamPage tracks batches of documents that have been dispatched to an external search engine for indexing so that the batches are still displayed in the search index administration dialog even if the settings for the search engine are adjusted. Previously, those batches would continue to be tracked and handled properly, but would no longer be displayed in the search index administration dialog.

Calendaring

TeamPage's FullCalendar plug-in, which uses the FullCalendar JavaScript library, has now been updated to use the latest 5.x version of that library. The appearance has been updated, and some additional capabilities, such as the option to view events from multiple users' calendars at once, have been added.

Sections

• Sections now support an "Events" section type to show all matching event entries. This new type of section supports being sorted chronologically by the start date/time of the event.

• Sections can now be sorted by the date of the most recent visible version of entries.

Mobile Browser Support

• Modified the markup generated for mobile browsers to make the width of the page more in line with "mobile responsive" site behaviors.

• Google Chrome for Android is now properly supported as a mobile browser, including support for correct proportions of the view port and certain other browser-specific behaviors.

Other

• Modified the email articles feature so that the supplied subject is always treated as plain text, and never as HTML markup. Although in the case the "Log message content" option is selected, the subject would become the title of a TeamPage entry, which can contain HTML, email subjects must be plain text.

• Improved the way that invalid date request parameters are handled so that even certain "broken" (i.e., incorrectly formatted) date/time parameter values can be interpreted. For values that cannot be interpreted, TeamPage now returns an HTTP 400 with an error message indicating the nature of the error, instead of an HTTP 500 internal server error.

• improved the display of the "Tags" field in section tables.

For Developers

• TeamPage's built-in legacy JavaScript debug logging API has been updated to use the browser's built-in JavaScript console logging.

• TeamPage's SDK now has first class support for search expressions as applied to file listings using the new com.traction.sdk.file.FileSearchExpression as applied to a com.traction.sdk.FileRequest.

• TeamPage's SDK now has helper methods for efficiently retrieving the date of the last entry and document in a space.

  • com.traction.sdk.Journal now has the method getLastEntryDate(Context, Project). This returns the creation Date of the last visible Entry in the space represented by the given Project, covering all entry types -- i.e., including ordinary content entries but also "system" entries such as tag change records, moderation records, etc.
  • com.traction.sdk.search.SearchEngine now has the method getLastDocumentDate(Context, Project). This returns the last modification date of the most recently modified document. This will not include tag change records and other "system" entries, but it will cover all modifications to entry content and modifications to all indexed files (attachments, entry share files and space share files).

EntryClass configurations now support the normal_list_membership_eligible=true|false property to indicate whether an entry belonging to that class can be added and removed from "normal" lists (such as user worklists and other manually authored lists). The default value of this property is to defer to the EntryClass's isNormalActionTarget() method.

For Administrators

• Created the Invalid Principals Report plug-in (com.traction.report.badprincipals) that allows server administrators to get a list of each of the following types of issues:

  • TeamPage user accounts bound to invalid principals.
  • TeamPage groups with invalid principals as members.
  • TeamPage ACL entries referring to invalid principals.

"Invalid" here means that the principal cannot be resolved. For example, in an environment where TeamPage is connected to an external identity service, an invalid user principal might be one which can't be located, perhaps because it has been deleted.

Bug Fixes

Groups and ACLs Permissions Management

• Fixed a regression introduced in TeamPage 6.2.54 that could prevent the effects of changes to nested group members from immediately taking effect.

Signature Requirements module

• Fixed an issue with the way that the signature requirements module loads information it may require related to groups defined in external identity systems so that it does not unnecessarily reload data that were possibly just refreshed during server startup or external principal cache refreshes.

• Fixed a bug that could cause the summary of signatures collected versus the total signatures required to be displayed as "0/0".

• Fixed a bug that prevented summary information from being displayed for signature requirements that don't have due dates.

Email Ingestion

• Fixed a bug that could cause the subject of an email message to be treated as HTML instead of plain text. (The markup would still be sanitized, but the subject of an email message is always supposed to be treated as text.)

• Fixed a bug that could cause the contents of plain text email messages not to be properly HTML entity-encoded. This encoding is required since the contents of such messages are plain text, but the contents of TeamPage entries must be HTML.

Social Enterprise Web

• Fixed some issues with the layout and style of the Task form in TeamPage's suite of forms for sharing web pages and other external resources.

i18n

• Fixed a minor internationalization problem with the "Principal Metadata Collection Manager" setting label and description under server settings > General > Customizations.

Email Notifications

• Fixed a bug that prevented the "Subject" option for the "Email Notification Reply Target Designation Style" setting from working properly.

Other bug fixes

  • Fixed a bug that prevented the "Subject" option for the "Email Notification Reply Target Designation Style" setting from working properly
  • Fixed a regression that was introduced in TeamPage 6.2.52 that could prevent the effects of modifying the members of security groups defined in TeamPage from taking effect immediately. (fixed in 6.2.53)
  • Fixed a regression that was introduced in TeamPage 6.2.52 that prevented the "Newest First" and "Oldest First" options from working as expected for sections of type "Tag Added" and "Tag Removed". (fixed in 6.2.53)
  • Fixed a bug that prevented tags from being applied as part of new entry creation if the author was using hashtags that appeared at the beginning of a line.

Related

Microsoft Azure AD Cloud support for cloud and on-premises authentication and user management  An example of how TeamPage External User Directory Integration works

Sep 2022 | Introducing Kanban for TeamPage, by Takashi Okutsu

The Work Graph Model: TeamPage style Understand how TeamPage connects people and their work.

A Fabric, not a Platform Making work actionable as well as observable: Objects, context, conversation, connection.

Follow TractionTeam on Twitter for news.

Page Top