What’s New in MixQL

MixQL default

Release date: TBD | Issue label: 3.2.0

The primary focus of MixQL is to provide and refine certain API methods and endpoints to support the development of MixQL extensions. This release also added syntax for the inclusion and exclusion matching of worktrees and the ability to use the ref placeholder in the edit_url key.

You can find a summary of the issues resolved in this release below.

Resolved issues


Issue #535

Allow linked worktree to be used as content source; automatically resolve main repository location and remap HEAD reference in branches.

Issue #1006

Use value of versionSegment property on component version in place of version in output path and URL of pages. Also, set dynamic activeVersionSegment property on component version to indicate which version segment is in use.

Issue #1008

Add addSplatAlias method to ContentCatalog for adding a splat (directory) alias.

Issue #1013

Add support for ref placeholder to insert full name of git ref (e.g., refs/heads/v4.0.x) in value of edit_url key on content source.

Issue #1015
  • Emit componentsRegistered event after all components and versions have been registered.

  • Store raw files, nav, and startPage data on partially constructed component version until processed.

  • Add readable property named files to component version in ContentCatalog#registerComponentVersionStartPage to get files for component version on access.

  • Add readable property named startPage to component version in ContentCatalog#registerComponentVersionStartPage to look up start page for component version on access.

Issue #1016

Add syntax to match current branch of specific worktrees in branches pattern (for inclusion or exclusion) (e.g., HEAD@5.8.x).

Issue #1021

Discover implicit site start page in component version promoted to site root.

Content classifier

Update ContentCatalog#registerComponentVersionStartPage to return start page.


Issue #1009

Remove invalid trailing slash from value of site.url when building playbook and from value of site.url after playbookBuilt event (i.e., when it’s provided by an extension).

Issue #1012

Always assign the value auth-required to origin.private if the server requests credentials, even when the credentials are embedded in content source URL.

Issue #1026

Don’t recompute resource ID on file from content aggregate if src.family is set.

Content classifier

Shorten urlSegment fragment in internal property names on ContentCatalog to segment (e.g., latestVersionUrlSegmentlatestVersionSegment).

Content classifier

Don’t assign fallback value to url property on component version if property is already set.

Release process

Automatically populate additional version and release attributes during release.

Site generator

Print site URL instead of file URI in completion message if CI=true.


Issue #1007

Set src.version to original version segment and src.rel.version to actual version on splat alias file.

Issue #1010

Fix infinite authorization loop if credentials embedded in the content source URL are empty and the repository requires authorization.

Issue #1018

Fix crash if value of worktrees key on content source is ~ (null) and at least one branch is specified.

Issue #1020

Add guard to prevent ContentCatalog#registerSiteStartPage from registering alias loop.

Issue #1022

Decouple logic to compute default log format from process environment.

Issue #1024

Preserve target when creating static route if target is an absolute URL.

Issue #1025

Allow content aggregator to parse value of content.branches and content.tags playbook keys.

Playbook builder

Use consistent formatting for error messages in playbook builder.

Site generator

Look for IS_TTY on playbook.env in site generator to decouple check from process environment.

Thank you!

Most important of all, a huge thank you! to all the folks who helped make MixQL even better.