Skip to content

Releases: fosrl/pangolin

1.6.2

02 Jul 04:54
1bcb027
Compare
Choose a tag to compare

What's Changed

  • Fix bug causing SQLite migration script to run in PostgreSQL build in 1.6.0 and 1.6.1
  • Fix bug preventing targets from being added for basic WireGuard sites

Full Changelog: 1.6.1...1.6.2

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

1.6.1

30 Jun 22:55
8c164c4
Compare
Choose a tag to compare

What's Changed

Hotfix:

  • Fix yargs dependency issue preventing pangctl from running

Full Changelog: 1.6.0...1.6.1

How to Update

Warning

For PostgresSQL users coming from version < 1.6.0, please upgrade directly to >=1.6.2, as there is a broken migration script in this version.

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

1.6.0

30 Jun 19:08
66e8a46
Compare
Choose a tag to compare

What's Changed

  • Add i18n support for UI translations (initial languages shown below)
  • Remove the need for setting users.server_admin.password and users.server_admin.email in config
  • Add onboarding UI on new installs for setting the server admin credentials
  • Add pangctl CLI tool for setting/resetting server admin credentials
  • Fix bug preventing integration API users from creating raw TCP resources
  • Forward headers from server component requests to API
  • server.trust_proxy in config file supports setting an integer according to the Express.js docs
  • OIDC usernames are no longer case sensitive

Full Changelog: 1.5.1...1.6.0

How to Update

Warning

For PostgresSQL users coming from version < 1.6.0, please upgrade directly to >=1.6.2, as there is a broken migration script in this version.

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

Translations

Pangolin now has i18n support for internationalization! Huge thank you to everyone who worked on this and @Lokowitz for leading this effort.

Tip

We are looking for people to help us manage and review translations. If you're interested, please email us at [email protected].

Translations can always be improved. If you spot an issue, want to enhance an existing translation, or would like to contribute a new language, we welcome all contributions.

Pasted image 20250621170355

pangctl and Admin Credentials

Up until now, the "server admin" credentials were set in the config file or environment variables. Moving forward, new installations of Pangolin will need to go to https://<pangolin-dashboard-domain>/auth/initial-setup set these credentials when first visiting the dashboard.

For those of you updating, we recommend you now remove the users section from the config.yml and remove the environment variables: USERS_SERVERADMIN_PASSWORD and USERS_SERVERADMIN_EMAIL. The migration script will not do this automatically.

Alongside this change, we're introducing pangctl, an internal CLI tool baked into the Pangolin container, to set the email and password if you ever need to change these credentials. Read more about this in the docs.

We plan to add more helpful scripts to this tool as needed in the future.

1.5.1

09 Jun 22:22
6b4e52a
Compare
Choose a tag to compare

What's Changed

  • Sort data in/out correctly in sites table
  • Auto apply first container port if none is selected in container selector
  • Fix bug causing "Failed to get Docker status" message to appear on some sites

New Contributors

Full Changelog: 1.5.0...1.5.1

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

1.5.0

05 Jun 19:37
33e2798
Compare
Choose a tag to compare

What's Changed

  • Add support for PostgresSQL
    • See the docs for how to use PostgreSQL with Pangolin
  • Import host and port into resource target via Docker socket
    • Requires Newt version 1.1.4 or greater
    • See the docs for how to configure this functionality
  • Pass Remote-User, Remote-Email, and Remote-Name to resource via Badger
    • Requires Badger version 1.2.0 or greater
    • See the docs for how to update Badger
    • Thanks @pyrho for working on this!
  • Add new logo files
  • Add GET roles to integration API
  • Fix bug improperly splitting port from IPv6 address when evaluating rules
  • Bump Traefik version and add log rotation in installer
  • Allow installer to run without sudo

New Contributors

Full Changelog: 1.4.0...1.5.0

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

Docker Socket

This is a community contribution. Huge thanks to @improbableone for working on this!

SCR-20250605-kgcr

1.4.0

13 May 15:43
1f584bf
Compare
Choose a tag to compare

What's Changed

All features will always be available in BOTH the Community and Professional Edition of Pangolin under a typical dual-license model.

  • Enable user auto-provisioning for IdP
  • Enable API integration
  • Fix bug preventing updating an external user's role
  • Sort resources and sites table alphabetically by default

Full Changelog: 1.3.2...1.4.0

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

1.3.2

10 May 16:11
a512148
Compare
Choose a tag to compare

What's Changed

  • Log the OAuth2 claims to the debug logs
  • Fix bug where saving TLS server name would reset the custom host header
  • Fix bug causing duplicate targets to appear
  • Allow root path in rule input
  • Set default config options if not present in yaml

Full Changelog: 1.3.1...1.3.2

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

1.3.1

03 May 17:33
21f1326
Compare
Choose a tag to compare

What's Changed

Some small fixes following our 1.3.0 release:

  • Add clarification language to supporter program
  • Show unprovisioned user username in failed login error message
  • Fix bug preventing users from removing custom host header
  • Decode URL before for displaying breadcrumbs
  • Remove thrown error in IP version check causing rule check failures

Full Changelog: 1.3.0...1.3.1

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

Clarification on Professional Edition Rollout

https://github.com/orgs/fosrl/discussions/650

1.3.0

02 May 15:30
e58d10f
Compare
Choose a tag to compare

What's Changed

  • Refresh UI and layout
  • Add external identity provider support for OAuth2/OIDC providers
    • Auto provision users with "Organization Policies"
  • Add external integration REST API
    • Swagger UI docs
    • Ability to generate fine-grained permission API Keys scoped to an organization or the entire server
  • Add option to set TLS server name
  • Add option to enable sticky sessions for multi-target resources
  • Add option to set custom host header
  • Add view, cancel, and regenerate user invite page
  • Add confetti after entering valid supporter key
  • Add Podman commands for Newt in create site wizard
  • Add "Professional Edition" licensing system for commercial use
  • Obscure PIN input like a password input
  • Update dependencies

Full Changelog: 1.2.0...1.3.0

New Contributors

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

OAuth2/OIDC (External Identity Providers)

We’re excited to share that Pangolin now supports external identity providers. You can integrate any identity provider that supports OAuth2/OIDC. We plan to expand with native support for other platforms over time, as well as continue to bolster and add new authentication and access control tooling. See more in our docs

Adding external identity providers for SSO is NOT a paid feature and is available for free.

Refreshed UI

Alongside that, we’ve also launched a refreshed UI. This new layout is more maintainable, expandable, and aligned with the long-term direction of the project. Importantly, it still maintains a largely consistent user experience. We will continue shipping enhancements on top of this foundation. See screenshots and more here on GitHub.

hero

Professional Edition

The Professional Edition is for businesses and individuals that want to use Pangolin in a commercial environment and require access to dedicated support.

1.2.0

06 Apr 17:32
6f683ca
Compare
Choose a tag to compare

What's Changed

  • Pass share link access token in headers for authenticated access
  • Shorten and prettify share links
    • Old share links will still work (?token= format eventually is deprecated and will eventually be removed in favor of new link format)
  • Add resource visibility toggle on resources table
  • Use global table search for all tables to search across multiple columns
  • Fix updating admin user email creating new user in system

Full Changelog: 1.1.0...1.2.0

How to Update

Important

Always back up your config app-data before updating. This will allow you to easily roll back if the update breaks your configuration. You will not be able to easily downgrade otherwise.

View documentation

5.2k Stars in 90 Days

April 5th (yesterday) marked 90 days from the initial release and announcement of the Pangolin project. In that time the repository has earned more than 5.2k stars! Thank you to everyone for the support and sharing the project!

Access Token in Headers

When you generate a share link, you have the option to pass the underlying access token in headers. If a valid access token is passed in each request from the client, fully authenticated requests are made through the proxy. Similarly, you can pass the access token in a query param on each request.

Note

This feature requires a Badger (Traefik middleware) plugin version of at least v1.1.0. Our auto-migration script will attempt to update this for you.

SCR-20250406-kfzt