notepad-plus-plus / notepad-plus-plus/notepad-plus-plus

Feature request: Portable updater that saves settings

Open
#10,546 3 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
29.4k
Forks
5.4k
PR merge metrics
No merged PRs in 30d

Description

Description of the Enhancement

Ability to update a portable app without losing settings.
This features two sub-enhancements:

  1. The updater should use the portable version of the app if the pre-existing version being used is portable.
  2. Installing a portable shouldn't change the settings. This itself can be done in two ways:
    a) Make the updater such that it saves the settings and doesn't replace them (assuming point 1 is followed through on)
    b) (assuming 1 is NOT followed through on,) Do not keep a settings file in the app folder by default. Let it get created the first time the app is run, and subsequently each time a settings file isn't detected (same with the shortcuts xml, and any other files that store user-saved settings). This way, if there is a preexisting file, it won't be replaced when one is extracting the N++ portable folder, and will instead be detected and used by the application. If required, the preexisting settings file can be updated with new options, but shouldn't be replaced by a clean vanilla settings file. (Otherwise, the old settings file is generally displaced by the one in the folder when we extract and replace the files.)
    (This is similar to what music creation application LMMS does. It creates the settings file whenever it's not detected, and reinstalling/updating generally saves your settings because the settings file is detected and therefore not replaced altogether, only edited.)

Related post in the community forums: https://community.notepad-plus-plus.org/topic/21813/enhancement-to-portable-app

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the issue description and its linked community forum post to understand the portable updater and settings requirements. Trace how portable updates handle the existing settings file, shortcuts XML, and other user-saved files. Done means updating a portable app preserves its settings and creates missing settings files without replacing existing ones.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.