Skip to content

Codetree 0.3.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 10:58
· 60 commits to main since this release

Explore GitHub and GitLab with a code tree, file search, PR/MR review, full-file diffs and unlimited local bookmarks.

Install

  1. Download codetree-0.3.0.zip and extract it into a folder.
  2. Open chrome://extensions and enable Developer mode.
  3. Click Load unpacked and choose the extracted folder containing manifest.json.
  4. Refresh open GitHub or GitLab repository tabs.

To update, replace the folder contents, click Reload on the extension card and refresh repository tabs.

What's new

  • ADDED: GitLab and self-managed GitLab support, including nested namespaces, branches, folder loading, MR/commit changes, discussions, local Viewed marks and review filters

  • ADDED: View full in native GitHub/GitLab file headers, including collapsed files and unchanged renames; known binary files have a disabled text-preview button

  • ADDED: provider selection and GitLab token guidance in settings

  • ADDED: contribution rules, agent instructions, privacy and feature/verification documentation

  • ADDED: push/PR CI with JavaScript/CSS/workflow checks, manifest/CSP/assets/docs validation, locked dependency audit and verified runtime packaging

  • ADDED: stable-tag GitHub Releases with version/license gates, reproducible ZIP, SHA-256 and verification of downloaded CI artifacts

  • ADDED: manual release runs that tag the verified commit, detailed release notes with installation steps, commits and checksum, and Chrome Web Store API v2 submission when the store is configured

  • ADDED: Chrome Web Store listing text and privacy-practice justifications

  • ADDED: file and folder icons from file-icons/atom (file-icons, Font Awesome 4.7, MFixx and DevOpicons fonts plus Octicons SVGs) with the original path/name matching rules and theme-specific colours; licenses are packaged in THIRD_PARTY_NOTICES.md

  • ADDED: VS Code workspace settings, recommended extensions, tasks and debug configurations, plus a Makefile for checks, builds and tags

  • ADDED: Codetree Source-Available License 1.0 allowing workplace use and free forks while prohibiting monetization of covered derivatives, including fork-related donations and paid services

  • ADDED: configurable toggle/search shortcuts, page scopes, URL exclusions, folder click settings and pinning per browser window

  • ADDED: account/host/revision-scoped persistent tree cache with expiration, size limits and refresh/account invalidation

  • ADDED: original bounded lexical syntax highlighting for full-file review, with independent old/new revision state

  • ADDED: prepared GitHub device-flow and GitLab PKCE sign-in with automatic refresh; activation awaits registered public client IDs

  • ADDED: opt-in browser Sync for preferences and bookmark metadata, with trusted storage, an explicit allowlist, bounded snapshots and visible quota errors

  • CHANGED: sidebar, native controls and Settings styles use SCSS compiled by Sass in the existing build/CI pipeline; GitHub/GitLab light and dark palettes remain live, and CSS validation checks the compiled output

  • CHANGED: collapsed Codetree tab uses a bottom-to-top wordmark, accented initial, rounded corners and a horizontal two-line grip

  • CHANGED: README screenshots refreshed for Codetree 0.3.0 with the current product name and file-icons theme

  • CHANGED: source moved to src/ as ES modules (shared, service worker, content script, Settings) and bundled with esbuild into build/; the release ZIP is packaged from the reproducible bundle

  • CHANGED: product name from GitHub Code Tree to Codetree

  • CHANGED: full-file previous/next navigation includes every changed file independently of sidebar search

  • CHANGED: collapsed edge tab includes the product name, opening chevron and grip

  • CHANGED: icon styles are Color and Monochrome file-icons plus Minimal original icons; a saved Outline style becomes Monochrome

  • CHANGED: original file icons distinguish JSON, Markdown, licenses, ignore files and source documents; folders show their expanded state, and branch/PR controls use circular nodes

  • CHANGED: minimum Chrome version to 116 for OAuth authorization-window lifecycle support

  • CHANGED: web-accessible styles and fonts use per-session dynamic URLs (Chrome 130+), so websites cannot detect the extension by its ID

  • CHANGED: repository pages receive only bookmarks for enabled hosts; synced bookmarks for other hosts stay stored and appear once the host is connected

  • FIXED: full-file code colors use provider-specific syntax and diff palettes, GitHub diff tokens and GitLab selected code-theme backgrounds instead of shared red/green overlays

  • FIXED: GitLab discussions requiring authentication no longer block a public MR/commit diff; unavailable comments are reported separately

  • FIXED: unauthenticated API operations report that an account is required instead of saying a token was rejected

  • FIXED: invalid repository/source identifiers with dot segments are rejected before requesting an API endpoint

  • FIXED: error messages redact every GitLab token prefix and the stored credentials of each account, including custom-server tokens

  • FIXED: a non-string signed-in username in a repository context is rejected instead of failing during account selection

  • FIXED: sidebar and full-file viewer follow the current GitHub/GitLab color tokens instead of a fixed GitHub palette; native preview controls inherit provider border/focus colors

  • FIXED: Viewed marks validate the displayed head revision against fresh PR/MR metadata before writing

  • FIXED: stale lazy-folder replies and overlapping tree loads cannot mutate a refreshed tree or a different file mode

  • FIXED: full-file patch validation normalizes CRLF consistently with source files

  • FIXED: releases complete issues through the labeler's release-completed operation and notify every outcome directly instead of relying on suppressed GITHUB_TOKEN release events

  • FIXED: delayed refresh and branch responses cannot overwrite the active repository after navigation; errors from an old PR/MR filter cannot hide current results

  • FIXED: native View full controls remain visible when API authentication fails and provide account connection/retry guidance

  • FIXED: GitHub commit diff headers without a diff ID receive native View full controls

  • FIXED: settings dropdown chevrons have consistent spacing and theme colors while retaining native keyboard controls

  • FIXED: initial page events wait for saved preferences and the sidebar stylesheet before revealing the panel or applying page padding, preventing a collapsed sidebar from flashing open

  • FIXED: the collapsed handle accounts for GitHub Issues sidebar width, including native collapse/expand and page navigation

  • FIXED: the search shortcut hint keeps its width instead of being squeezed by the search input

  • FIXED: upgraded the development selector parser to 7.1.6 to remove quadratic flat-selector parsing (GHSA-rj75-hqrm-r3gf) without weakening CSS validation

  • FIXED: removed the vulnerable Stylelint glob dependency chain while retaining CSS syntax checks, seven stylesheet rule categories and the strict development dependency audit

  • FIXED: closed sidebar Shadow DOM prevents connected pages from reading or deleting bookmarks across repository hosts; synthetic global shortcuts cannot change preferences

  • FIXED: patch coordinates and row creation are bounded to the exact source revisions before context expansion

  • FIXED: API and OAuth bodies are bounded while streaming, including responses without Content-Length and aggregate REST/GraphQL pagination limits; full-file decoding preserves UTF-8 BOMs

  • FIXED: request-list and bookmark replies cannot replace another sidebar tab; Refresh invalidates pending branch menus

  • FIXED: selected and remembered lazy folder chains load their children; encoded GitLab refs preserve slash-containing names

First release

  • build: compile themed extension styles with Sass (5804c0a)
  • fix: match provider code colors and refresh previews (38b4708)
  • style: refine collapsed Codetree wordmark (f2a6e51)
  • docs: refresh Codetree preview screenshots (2b3d1f4)
  • ci: notify only about issues and PRs from other people (d211157)
  • fix: harden extension against fingerprinting and credential leaks (fd2fe5b)
  • ci: exempt vendored file-icons from the whitespace check (b2aebcc)
  • style: format the code with Prettier (cee5f4d)
  • chore: add Prettier and simplify VS Code file nesting (8d38817)
  • docs: document every module and function (872b8cd)
  • chore: align VS Code workspace with the other ziqq projects (4685349)
  • chore: describe the development package like the other ziqq packages (54bd142)
  • docs: fix the former product name and OAuth configuration path (a5404ea)
  • chore: rename the browser Sync snapshot key to codetreeSyncSnapshot (f6070ec)
  • chore: rename everything to Codetree (0f050a5)
  • chore: nest third-party notices under README in VS Code (f0ce7ed)
  • feat: use file-icons/atom icons and rename the product to Codetree (721b627)
  • chore: set the release version to 0.3.0 (d29db46)
  • chore: add VS Code workspace settings and Makefile (38c2c42)
  • test: load regressions from src modules and the bundled worker (2015f91)
  • refactor: move extension source into src/ modules bundled with esbuild (206197d)
  • chore: prepare release 1.0.0 (1aefb6e)
  • test: cover manual releases and Chrome Web Store submission (2202d7b)
  • ci: add manual releases and Chrome Web Store submission (67fcf8c)
  • fix: stabilize sidebar startup and refresh file icons (c91ba22)
  • docs: record current native GitLab viewer smoke (65fee51)
  • docs: record installed extension settings smoke (dd0f217)
  • docs: record verified security follow-up CI artifact (ca14d54)
  • fix: harden repository responses and add opt-in browser sync (bfb74b4)
  • fix: prevent sidebar flash during repository loading (0dd4f44)
  • fix: align settings dropdown chevrons (c7136e0)
  • fix: add full-file controls to GitHub commit regions (b592983)
  • docs: record navigation and OAuth preparation checks (29a6778)
  • feat: complete navigation settings and prepare OAuth sign-in (3b41a65)
  • docs: record worker lifecycle and Octotree coverage (9d9c2ca)
  • docs: record installed Chrome verification (3ffce41)
  • fix: ignore stale sidebar navigation responses (fe8f277)
  • fix: address release review regressions (11e2480)
  • docs: adopt strict Code Tree source-available license (f83e0d5)
  • ci: add verified tag releases and provider theme colors (acb2188)
  • ci(automation): configure semantic labels and notifications (560ddd0)
  • feat: add Code Tree for GitHub and GitLab (2d0330f)

Details

Version 0.3.0
Minimum Chrome 116
Manifest V3
Archive size 803.0 KiB

Checksum

Verify with sha256sum -c codetree-0.3.0.sha256 next to the download.

3e9943048b4d3977f4e033e8fa74deff302ca385d65c7e2362d5a7d2b3bd9052  codetree-0.3.0.zip