Skip to content

Releases: jocxfin/pwgen

v1.92.5 - Added Docker Hub tag generation

06 Feb 14:45
889e406
Compare
Choose a tag to compare

Added:

  • Tag generation to Docker Hub

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  -e GOOGLE_SITE_VERIFICATION='' \\
  -e DISABLE_URL_CHECK=false \\
  -e BASE_PATH='' \\
  -e PP_LOCAL_WORDLIST=/app/custom_wordlist.txt \\
  -v "A:\german.txt:/app/custom_wordlist.txt" \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.92.0 - Multiple bug fixes and security updates

06 Feb 14:32
405388f
Compare
Choose a tag to compare

Added:

  • Better Environment Variable Handling:
    • All integer and string environment variables now use proper default fallbacks. For example, using:
      PW_LENGTH = int(os.getenv('PW_LENGTH', '12') or '12')
      ensures that if an environment variable is set but empty, a default value is used.
  • Dynamic "Max Word Length" Dropdown in UI:
    • The dropdown in index.html for selecting the maximum word length now dynamically includes the environment-defined value if it isn’t already present in the default options. #90
  • Multi-arch Docker Build Support:
    • Updated Docker workflows (.github/workflows/ci-dev.yml and .github/workflows/docker-publish.yml) to enable multi-architecture builds (amd64 and arm64) by configuring QEMU and Docker Buildx accordingly.
  • Dependabot Configuration Update:
    • Updated the Dependabot configuration (.github/dependabot.yml) to include GitHub Actions and adjust schedule intervals (e.g., changing pip update interval from daily to weekly) for improved dependency management.
  • French Wordlist Support:
    • Added support for a French wordlist by reading from wordlist_fr.txt in config.py.
    • Updated language handling in handlers/request_handler.py and utils/password_utils.py (using match-case syntax) to support fr as a valid language.
    • Modified the language selection dropdown in index.html to include French as an option.
    • #86 Added env variable for local wordlist. This implementation is a temporary one, as it disables default English language when used. Example usage:
docker run -d -p 5069:5069 -e PP_LOCAL_WORDLIST=/app/custom_wordlist.txt -v "A:\german.txt:/app/custom_wordlist.txt" jocxfin/pwgen:latest

Changed:

  • Dependabot and CI/CD Workflow Enhancements:
    • Adjusted schedule intervals and package ecosystems in the Dependabot configuration.
    • Refactored CI/CD workflows to include multi-arch build support, ensuring consistent builds across different architectures.
  • Language Handling in Password Generation:
    • Refactored the language logic in utils/password_utils.py using Python’s match-case syntax to cleanly handle multiple languages (including French) without forcing custom wordlists.

Fixed:

  • Empty Environment Variable Fallbacks:
    • Resolved issues where empty environment variables (e.g., PP_MAX_WORD_LENGTH='') caused ValueError during integer conversion by using fallback defaults.
  • Minor Refactorings and Bug Fixes:
    • Improved handling in request_handler.py with helper functions for safe integer conversion.
    • Adjusted UI elements to always honor environment-defined settings while allowing user overrides.
    • Multiple CVEs.

Thanks to @veerendra2 for the multi-arch Docker build and Dependabot configuration updates, and to @JeromeSpilmont for adding French wordlist support!

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  -e GOOGLE_SITE_VERIFICATION='' \\
  -e DISABLE_URL_CHECK=false \\
  -e BASE_PATH='' \\
  -e PP_LOCAL_WORDLIST=/app/custom_wordlist.txt \\
  -v "A:\german.txt:/app/custom_wordlist.txt" \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.91.0 - Option to add sub path to run the app on

13 Sep 15:58
995a302
Compare
Choose a tag to compare

Added:

  • Option to add subpath for the application to run in: You can now run the application in a sub path, for example example.com/desired_subpath. Do this by setting the env param BASE_PATH to the desired sub path.

Thanks @zsteinmetz for the feature request!

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  -e GOOGLE_SITE_VERIFICATION='' \\
  -e DISABLE_URL_CHECK=false \\
  -e BASE_PATH='' \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.9.0 - Option to Disable Strict URL Rules for Custom Word Lists

30 May 22:51
e39a058
Compare
Choose a tag to compare

Added:

  • Option to Disable Strict URL Rules for Custom Word Lists: You can now disable the strict URL rules for custom word lists by setting the DISABLE_URL_CHECK environment variable.
  • Security Warning: It is recommended not to set DISABLE_URL_CHECK to true if your instance is accessible over the internet, as this could compromise your host machine’s IP.
  • Default Value: The default value of DISABLE_URL_CHECK is false if not set otherwise.
  • Usage: Set DISABLE_URL_CHECK to true to use any word lists available on the internet.

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  -e GOOGLE_SITE_VERIFICATION='' \\
  -e DISABLE_URL_CHECK=false \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.8.10 - Multiple CVE fixes

28 May 23:31
39e6272
Compare
Choose a tag to compare

Fixed:

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  -e GOOGLE_SITE_VERIFICATION='' \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.8.9 - Security fixes

10 May 13:54
22a41ae
Compare
Choose a tag to compare

Fixed:

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  -e GOOGLE_SITE_VERIFICATION='' \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.8.8 - Added Google Site Verfication Env Variable

05 Apr 09:08
5ba4fc0
Compare
Choose a tag to compare

Added:

  • Added Google site verification env variable: if you need to confirm the ownership of your page, you can define the tag content to GOOGLE_SITE_VERIFICATION:
  -e GOOGLE_SITE_VERIFICATION='' \\

Fixed:

  • Fixed robots.txt logic

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  -e GOOGLE_SITE_VERIFICATION='' \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.8.6 - Added `robots.txt` logic

05 Apr 08:11
a0f0083
Compare
Choose a tag to compare

Added:

  • Added robots.txt logic: robots.txt logic will disallow all robots and crawlers from visiting your site by default. If you want to allow them, set ROBOTS_ALLOW to true

Fixed:

  • Fixed custom wordlist link as env variable: corrected configuration for custom wordlist

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  -e ROBOTS_ALLOW=false \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.8.5 - Added `GENERATE_PP` as a its own env option

04 Apr 23:12
bdf3c98
Compare
Choose a tag to compare

Added:

  • Added GENERATE_PP as a its own env option
    • Set this to true to automatically create passphrase instead of password

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  -e GENERATE_PP=true \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.

v1.8.4 - Resolved Passphrase Separator Config

04 Apr 22:36
154c82c
Compare
Choose a tag to compare

Fixed:

  • Passphrase separator config wrong The option "Dash" had value "space" which caused some issues.
  • Added space as a its own separator
    • Please note that if you have used the default config with env variables defined, you need to check the value of PP_SEPARATOR_TYPE!

Fixes #73

Thank you u/edgy_dog from Reddit for reporting this issue!

To use:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 jocxfin/pwgen:latest

Offline mode:

docker pull jocxfin/pwgen:latest
docker run -d -e NO_API_CHECK=true -p 5069:5069 jocxfin/pwgen:latest

With environmental variables defining settings:

docker pull jocxfin/pwgen:latest
docker run -d -p 5069:5069 \\
  -e NO_API_CHECK=false \\
  -e PW_LENGTH=12 \\
  -e PW_INCLUDE_UPPERCASE=false \\
  -e PW_INCLUDE_DIGITS=false \\
  -e PW_INCLUDE_SPECIAL=false \\
  -e PW_EXCLUDE_HOMOGLYPHS=true \\
  -e PP_WORD_COUNT=4 \\
  -e PP_CAPITALIZE=false \\
  -e PP_SEPARATOR_TYPE=dash \\
  -e PP_USER_DEFINED_SEPARATOR='' \\
  -e PP_MAX_WORD_LENGTH=12 \\
  -e PP_INCLUDE_NUMBERS=false \\
  -e PP_INCLUDE_SPECIAL_CHARS=false \\
  -e PP_LANGUAGE=en \\
  -e PP_HIDE_LANG=false \\
  -e PP_LANGUAGE_CUSTOM='' \\
  -e MULTI_GEN=true \\
  jocxfin/pwgen:latest

Quick and straightforward improvements for a better tool.