June 27th, 2023

Colectica Designer


  • Added missing AzureAD file to Designer installer


June 23rd, 2023

Colectica Repository and Portal


  • OpenTelemetry tracing

  • Add health checks for Portal database and elasticsearch backends

  • Multiple selection for categorical search page facets

  • configuration switch for logging ShowPII for debugging

  • Optionally allow searching for text in a specific language

  • Add support for Blazor components in Portal

  • option to use Oauth2 Introspection for JWT token validation

  • option to set an alternate email claim type for JWT tokens

  • allow NameClaimType to be set for introspection tokens

  • Show information about addins and parts on the Portal admin / system status page

  • For CollectionEvents, include name, label, description, and Instruments

  • Multiple language support for more parts of the instrument flowchart

  • Repository enable application defined OpenTelementry spans

  • Repository setting to filter common static files in OpenTelementry reporting

  • Repository OpenTelemetry instrumentation for repository service calls and NEST elasticsearch calls

  • ElasticIndexer add a StateResetBatchSize setting

  • Repository API wrappers for a few Workflow API calls needed by Designer

  • direct repository database import option in repository cli

  • Search result highlighting for results in the questionText field

  • CLI command to list item IDs

  • CLI command to delete an item

  • Elastic allow multiple indexes per Repository

  • Elastic allow include item type lists

  • Elastic track item status in per-index tables

  • Elastic reset item status for reindex by recreating status table

  • Elastic refresh status tables

  • Elastic add int, bool, and single object property types

  • Elastic respect the indexer SupportsItemType return values

  • More class names for Portal home page blocks

  • Include new PhysicalInstance properties in the portal

  • Repository timestamps for mutating operations to use in caching and indexing

  • Support for InformationClassification

  • Allow compare on /search/variables and /search/questions pages

  • Option to use GET or POST for searches


  • Allow user to change UI language

  • Update basket count immediately upon change

  • Support searching by culture

  • allow html class attribute in user text in more locations

  • make table sortable column arrows darker (contrast)

  • Track the active basket in the DB instead of a cookie.

  • Blazor-ify Explore view so it is more maintainable than the legacy knockout Javascript

  • remove per user master templates

  • Show Question text in search page

  • Show Explore page message from admin config

  • Add items to basket from Expore

  • Show item counts from Elastic when present on the Explore page facets

  • Seach page styles of Compare and Add to List checkboxes

  • include disk usage in cached repository statistics

  • ElasticIndexer add a log entry for the indexer addins that have been loaded

  • Repository return number of states updated in a state update operation

  • Class name that includes item type for search result cards

  • Pass more text properties through addin renderers

  • Portal show elastic search results with dc_title as the label

  • Elasticindexer index organization and individual names as labels

  • Repository allow specifying Microsoft.Data.SqlClient as a provider. It was always used before anyway.

  • Incude parts/ directory in the published Repository package

  • improve performance of conflict detection in register items

  • Repository update to latest Microsoft.Data.SqlClient

  • Designer DDI 2 import creates new 3.3 Variable group references from physical instances instead of custom fields

  • upgrade bootstrap-icons, bootstrap-star-rating, jquery, jquery-validate, jquery-validate-unobtrusive

  • Elastic use full language tag in property name instead of just language code

  • Workflow return a not available error if a repository calls for workflow are not enabled

  • Elastic indexer additional primitive types for indexed properties

  • Open Compare view in a new tab

  • Don’t show Add to List when not authenticated

  • Show “Log in to add to list” links, instead of nothing, when a user is not authenticated

  • Reset buttons for Search and Explore pages

  • Paging for item lists in Explore

  • Identifiers to allow CSS hiding of facet dropdowns

  • Repository elasticsearch ignore unmapped type fields in sorting list


  • Fix item type dropdown on home page search box

  • Fix the logic used to determine whether to look for a category label in the ManagedMissingRepresentations

  • Consistent capitalization for “Addins” folder on Linux and Windows

  • Repository fix Baskets under windows authentication

  • Portal admin don’t continue to show added language in textbox after it is added

  • Fix Repository to use proper config setting for OpenIDConnect:UseIntrospection

  • Elastic fix: using language code to set language specific analyzers in index map

  • Fix Elastic search query grammar to properly handle string literals, for phrase search

  • Portal show instrument preview when a grid response codedomain’s codes are missing

  • Populate categories when comparing questions or variables

  • Portal enable xmldoc incorporation for swagger ui again

  • Use correct localization key for “Instruments” on the DataCollection partial

Colectica Designer


  • Create addin interface for a command that can create change requests

  • on commit options page of the Sync dialog, see if the repository is configured for Workflow and if states are configured. If so, let user choose initial states to request

  • variable editor fields for StartPosition, EndPosition, ArrayPosition, Width

  • Designer command to reset the synchronization status of changed items

  • UI for new DataFileVersion properties

  • Include new PhysicalInstance properties in reports

  • UI for InformationClassification


  • Reporting show grouped/organized variables in codebook when using DDI 3.3

  • Summary Statistics determine text vs numeric based on data file type, not metadata type

  • Summary Statistics Trim string data values

  • Designer request offline access to get Okta refresh tokens

  • When populating variable groups for the PhysicalInstance view’s Organize tab, only grab Variables and VariableGroups. Stop at CodeLists. Big performance improvement.

  • When importing CASES QFILE, add the resource package and InstrumentScheme

  • Remove navigator from item picker. Only select which repository to search.

  • In item picker, clear search results before searching

  • Changed WPF extended toolkits to open source fork

  • XPath validation command: ignore empty lines

  • Concordance import: find data files in Series -> ResourcePackage

  • Designer: set repository timeout from an environmental variable, if present

  • Designer more logging for custom field deserialization

  • Updated SAS parser to improve RLE decompression

  • Updated SAS parser to support reading larger page sizes

  • Designer Blaise import upgraded to Antlr 3.5.1

  • Concordance import now creates/updates concept system first

  • Better label for newly created ConceptSchemes during concordance import


  • Skip circular references when creating CustomSequenceViewModel

  • Summary Statistics fix dictionary exception when two Codes in a CodeList have the same Value

  • DDI 2 to DDI 3: Case insensitive comparison for variable types

  • Designer ensure RaiseItemSelectedFromItemPicker is called when selecting a remote item

  • Populate OtherMaterials so referenced Organizations show correctly

  • Fix Blaise layout parsing

  • Designer file menu: Scrollbar for Manage Local Database

  • Remove extra, read-only copy of the QualityStatementItem ComplianceDescription editor

  • Toolbar buttons for markdown formatting should mark an item as dirty

  • When setting text on a new item that is a type that implements both IDublinCore and IDescribable, set the IDublinCore.Title instead of the IDescribable.Label

  • Watch for single CodeValue property changes correctly, so items are marked dirty after changes

  • When importing a concordance and adding ConceptualVariables with no topic to the top level group, don’t add if it is already there

Colectica Questionnaires


  • For Blaise generation, an option to generate Include files

  • Blaise Questionnaires allow generating types and fields as includes

Colectica Workflow


  • New user interface for Workflow Website

  • Support for defining and assigning state families

  • Browse Repository view

  • Workflow translations for fr-CA

  • Workflow request to change the state of an item

  • Replication request can take an initial state and scheduled time

  • Model for state configuration

  • Allow Repository to Workflow server api calls using windows authentication

  • Add appsettings.json.dist to workflow taskrunner package on windows

  • Track the state family in state change requests

  • Workflow task runner: schedule date/time for replication

  • Workflow assign states during replication

  • Workflow copy states from source to target

  • In the Browse view, show a timeline of requests for the selected item

  • Dialog when requesting a state change, to collect information including schedule date/time

  • Show requests as a list with selectable items and a details view, instead of a table

  • Filter requests list by request type

  • Allow approver to override the requested scheduled date/time

  • Filter processes by their status

  • allow searching by item state (tag)

  • Validation rules for workflow state change requests

  • Sample validation rules for state change requests (only active in debug)

  • Workflow API methods for requesting state changes, getting allowed target states for an item, and getting workflow item details

  • API key validation for all Workflow API methods


  • switch workflow shared key header to X-Colectica-Workflow-Key

  • Move email configuration from Web UI to appsettings.json

  • Move preview settings from DB to appsettings

  • Move WorkflowWebsiteBaseUrl to appsettings

  • Allow reviewer to change the scheduled replication time during approval


  • Workflow Website nav bar corrections for Windows auth

  • don’t link to user profile in windows auth

  • improve openid connect signin signout

Colectica SDK


  • Allow manual JWT configuration in repository connection info

  • Support user attributes, name, label, and description for CollectionEvent in DDI 3.3

  • move UserAttributes from IVersionalbe to IHasCustomFields

  • add QualityStandard as child type for QualityStatementScheme

  • include ExternalAids in QuestionGrid’s GetChildren

  • ensure 3.2 StandardUsed is read and written in a backwards compatible way in 3.3

  • fix multiple audience serialization in DDI 3.1 serializer and deserializer

  • In DDI 3.2, After a userAttribute is processed as a CustomField, do not continue processing it

  • convert variable groups on physical instances in old 3.2 custom field format to new 3.3 reference

  • Update nuget dependencies

  • DDI 2 import: Map StartPosition, EndPosition, Width, ArrayPosition

  • SDK support for DataFileVersion on physical instance (Sikt)

  • 3.3 updates, add InformationClassification

  • use 3.3 Instrument reference in data collection

  • use 3.3 name, label, desc in processing event

  • new versionable for InformationClassification


  • SDK remove support for old WCF/SOAP clients

  • Nested Groups are now of type Group, not SubGroup (as of DDI 3.3)-

  • SDK serialization for Variable StartPosition, EndPosition, ArrayPosition, Width, and StorageFormat extensions

  • use latest nuget runtime packages for System.Net.Http and System.Text.RegularExpressions