Download Latest Version Projectile 2.9 source code.tar.gz (1.9 MB)
Email in envelope

Get an email when there's a new version of Projectile

Home / v2.9.0
Name Modified Size InfoDownloads / Week
Parent folder
Projectile 2.9 source code.tar.gz 2025-02-12 1.9 MB
Projectile 2.9 source code.zip 2025-02-12 1.9 MB
README.md 2025-02-12 3.8 kB
Totals: 3 Items   3.9 MB 0

New features

  • #1870: Add package command for CMake projects.
  • #1875: Add support for Sapling VCS.
  • #1876: Add support for Jujutsu VCS.
  • #1877: Add custom variable projectile-cmd-hist-ignoredups.
  • Add support for Eask projects.
  • #1892: Add category metadata to completing-read. (it's used by packages like marginalia and embark)
  • #1899: Add support for xmake build utility.
  • #1895: Modify projectile-mode to add a hook to buffer-list-update-hook such that any change in the buffer list will update the selected project.
  • #1918: Add Zig project discovery.
  • Add support for Swift project discovery.
  • Introduce projectile-global-ignore-file-patterns config that allows to ignore files and directories with regexp patterns.
  • Introduce projectile-auto-cleanup-known-projects option that allows you to auto-cleanup missing projects.

Bugs fixed

  • #1881: Fix projectile-recentf when called outside any project.
  • #1910: Reverts #1895 as those changes appear to cause a significant performance regression across a number of use-cases.
  • #1915: Fix dotnet-sln project-type recognition. (check *.sln files instead of src/)
  • #1850: Ensure the presence of a project in projectile-compilation-dir.
  • #1811: Revert a change to projectile-ignored-directories that had converted them into regular expressions.
  • #1893: Fix projectile-discover-projects-in-directory when called interactively.

Changes

  • #1874: Changes compilation-find-file-projectile-find-compilation-buffer to navigate directly to the file if already present on disk to help improve performance in scenarios where there are a large number of project directories.
  • Drop support for Emacs 25.
  • Rework the caching logic. The main changes from before are:

    • Each project has its own cache file
    • Cache files are consulted only when you request the files of some project

    This makes caching both more robust and faster, as before the cache file for all projects was loaded when projectile-mode was enabled. * Make the cache transient by default. (meaning it lives only in memory and is not persisted to a file) * To enable persistent caching you need to set projectile-enable-caching to 'persistent. * Speed-up load time by moving known projects initialization outside of projectile-mode's init. * As a side effect the known projects will be initialized properly even if you're not using projectile-mode. * The projects are read from disk the first time you invoke projectile-switch-project or a similar command. * Introduce a common prefix for project lifecycle command keybindings: * c o -> projectile-configure-project * c c -> projectile-compile-project * c p -> projectile-package-project * c i -> projectile-install-project * c t -> projectile-test-project * c r -> projectile-run-project * The old keybindings will be removed in a future version of Projectile.

Source: README.md, updated 2025-02-12