Releases: Badgerati/Pode
Releases · Badgerati/Pode
Pode v2.11.1
Enhancements
- #1409: Adds new/missing CSP parameters in security headers
Bugs
- #1407: 'Initialize-PodeOpenApiTable' fails to initialize OpenAPI table when 'DefaultDefinitionTag' param is Null (thanks @mdaneri!)
- #1413: Fixes Test-PodeCacheStorage being called with incorrect -Key parameter (thanks @willgladstone!)
- #1418: Fix for ConvertTo-PodeYaml failing, when passed object contains a Key named "Count" (thanks @mdaneri!)
- #1420: Fix for OpenAPI Component Properties, Server Endpoint, and Path Filtering Issues (thanks @mdaneri!)
- #1423: Fix OpenAPI Route Path Conversion for Placeholder Unescaping and Relocate Function (#1422) (thanks @mdaneri!)
- #1424: Refactor Byte Conversion Functions (thanks @mdaneri!)
- #1424: Remove Duplicate Task Process Definitions (thanks @mdaneri!)
- #1427: Fixes "collection modified" error when cleaning up sessions
- #1430: Add-PodeOAComponentRequestBody now supports hashtable/ordered input (thanks @mdaneri!)
- #1430: Fix OpenAPI Route parameters so they respect the DefinitionTag (thanks @mdaneri!)
- #1430: More appropriately order responses, parameters, and request bodies in OpenAPI (thanks @mdaneri!)
- #1430: Order Routes in OpenAPI specification by creation, and HTTP methods in a more conventional order (thanks @mdaneri!)
- #1434: Fixes the clean-up of old log files (thanks @DoLearnWhileAlive!)
- #1436: Add -AllowNonStandardBody Parameter to Enable Request Bodies for Non-Standard HTTP Methods in OpenAPI (thanks @mdaneri!)
- #1438: Fixes the unnecessary Error Logging on HTTP Request Timeouts (thanks @mdaneri!)
- #1439: Don't setup the Caching Housekeeper Timer in a Serverless context
- #1440: Fixes error message appearing when using self-signed certificates on localhost
Security
- #1428: Migrates Stream functions into the .NET Listener
Packaging
Checksum: 2A7E765BADC0FCF8CD72AE244063703478FDB81ABBF91420FAAE16CA4C5D61F2
Pode v2.11.0
Features
Enhancements
- #1338: Automate Endpoint Assignment for OAViewer in Pode (thanks @mdaneri!)
- #1339: Add 'Rename-PodeOADefinitionTag' Function (thanks @mdaneri!)
- #1340: Add configuration parameter 'Web.OpenApi.UsePodeYamlInternal' (thanks @mdaneri!)
- #1352: Update MIME types to comply with RFC9512 and RFC5323 (thanks @mdaneri!)
- #1356: Dutch language support (thanks @mdaneri!)
- #1373: Dynamically load the Pode DLL relevant to the version of PowerShell (thanks @mdaneri!)
- #1384: Customizing and Managing Runspace Names (thanks @mdaneri!)
- #1388: Support passing Arrays to Functions Using Piping (thanks @mdaneri!)
- #1393: Adds functions for retrieving Schedule and Task Processes
- #1393: Improves Error Handling in Schedules, Timers, Tasks, and Logging
- #1393: Removes Global scope from TimerEvent
- #1399: Replaces occurrences of New-Object with new()
Bugs
- #1319: Fixes the Write-Pode(*)Response functions so the Value parameter appropriately handles when an array is passed using piping (thanks @mdaneri!)
- #1321: Fixes a misspelled variable in Add-PodeOAExternalRoute (thanks @mdaneri!)
- #1347: '-AdditionalProperties' doesn't appear on the OpenAPI document despite using the '-NoAdditionalProperties' parameter. (thanks @mdaneri!)
- #1358: Fixes [ordered] comparisons in PowerShell 5.1 (thanks @mdaneri!)
- #1358: Fixes for various OpenAPI issues (thanks @mdaneri!)
- #1358: Fixes OpenAPI version validation check in PowerShell 5.1 (thanks @mdaneri!)
- #1359: Fixes the login redirect URL logic for OAuth2 flows when using -SuccessUseOrigin
- #1360: Fixes a bug when exporting more than 1 module
- #1369: Accurate Output with -NoDefaultResponses (thanks @mdaneri!)
- #1369: Correct Schema with -NoProperties (thanks @mdaneri!)
- #1369: Fixes for OpenAPI Generation: Exception with oneOf/anyOf/allOf (thanks @mdaneri!)
- #1369: Include Min/Max Properties (thanks @mdaneri!)
- #1369: Prevent Request Body on GET Operations (thanks @mdaneri!)
- #1379: Fixes SSL timeouts when running Pode in PS7.4+
- #1390: Changes "-ContentMediaType" and "-MediaType" parameters to "-ContentType" on most OpenAPI functions (thanks @mdaneri!)
- #1390: Ensures the generated OpenAPI document now maintains element ordering (thanks @mdaneri!)
- #1390: Fixes OpenAPI DefinitionTag being null in some functions (thanks @mdaneri!)
- #1390: Fixes OpenAPI PowerShell 5.1 compatibility issue while testing schemas (thanks @mdaneri!)
- #1397: Fixes retrieving DNS domain name on macOS
- #1400: Fixes session scoped variable when remapping while setting values
- #1400: Fixes User being needlessly splatted when passed to scriptblock for some Authentication methods
Documentation
- #1332: Adds documentation for CORS (thanks @mdaneri!)
- #1332: Adds missing features to the Feature List (thanks @mdaneri!)
- #1332: Splits OpenAPI documentation into multiple pages (thanks @mdaneri!)
- #1332: Updates Known Issues for PowerShell classes with PS7.4's SafeThread support (thanks @mdaneri!)
- #1333: Cleans up the Examples in the repository, and adds them to the Documentation (thanks @mdaneri!)
Packaging
- #1322: Applies a fix for a PS7.5 bug with Remove-Item throwing divide by zero error
- #1323: Fix build error when dotnet tries to restore from offline NuGet cache
- #1328: Make preview builds optional for PR merges
- #1342: Add GitHub Codespace Configuration and Getting Started Guide for Pode (thanks @mdaneri!)
Dependencies
- #1341: Bump actions/add-to-project from 1.0.1 to 1.0.2
Checksum: 87F5790ABBD7807B0189AD000DF4D1CD151E6D59C2B707C47FE34C1064D66062
Pode v2.10.1
Bugs
- #1300: Adds a Test-Path check when loading modules
- #1300: Fixes a stack overflow exception when using: scoped variables are remapped
- #1301: Adds missing Name property to WindowsAd, WindowsLocal, and UserFile authentications
- #1303: Handle SecretStore vaults better with inbuilt defaults
- #1303: Resolve a threading issue with secrets
Documentation
- #1290: Fixes a typo in Tasks.md (thanks @fatherofinvention!)
- #1302: Alter Pode views documentation page to use Get-LocalUser instead of dummy function
- #1303: Write documentation for SecretStore vaults
- #1313: Adds documentation for CIM modules, and needing to import them first
Packaging
- #1304: Bumps InvokeBuild to 5.11.1
- #1304: Ported a more concise and stable version of the PowerShell installer for workflows
- #1305: Only run CI workflows when required
- #1312: Adds auto release notes generator to build file
- #1315: Fixes docker builds on GitHub runners
- #1315: Removes support for PS7.3 GitHub runners, and NET7 now that they are EOL
- #1316: Split the license file up, add missing ones, and add the dependency licenses to be released with Pode
Dependencies
- #1309: Bump the version of mkdocs to 1.6.0
- #1309: Bump the version of mkdocs-material theme to 9.5.23
- #1310: Have Dependabot ensure that GitHub actions are up-to-date
- #1311: Bump actions/add-to-project from 0.3.0 to 1.0.1
- #1314: Bump Dockerfiles to PowerShell 7.4
Checksum: 55456B595D0DDFD92ABB1C34209FCB4F68E2052940ABAA6A5D81C1C870D8811E
Pode v2.10.0
Checksum: 93FCF0ED0EFABF1D848AE37CA63934178901ED76B61F37F955D55669FB7F70B8
Features
- #1197: Adds support for inbuilt caching of values
- #1238: Adds support for creating custom scoped variables
- #1256: Adds support for converting HTTP connections into SSE connections
- #1266: Adds support for a File Browsing page on static routes (thanks @mdaneri!)
Enhancements
- #1136: Adds full support for OpenAPI v3.0.3 and v3.1 (huge thanks to @mdaneri! 🎉)
- #1239: Adds the missing HTTP 425 response status code
- #1242: Adds support for enabling "session per browser Tab"
- #1265: Adds support for customising the default folder paths, such as
/views
(thanks @mdaneri!) - #1267: Adds support for
-DualMode
onAdd-PodeEndpoint
, allowing endpoints to listen on IPv4 and IPv6 - #1276: Adds supported and EOL PowerShell checks during server start (thanks @mdaneri!)
Bugs
- #1246: Fixes static route ordering, and redirecting to default file
- #1258: Fixes a script modification issue when using scriptblocks with
Add-PodePage
(thanks @mdaneri!) - #1279: Fixes a scoping issue when using
Add-PodeRouteGroup
- #1281: Removes an erroneous
break
command when broadcasting messages to websockets - #1138: Fixes the status code for expired JWT, from 400 to 401 (thanks @mdaneri!)
Documentation
- #1232: Updates Sessions page to fix Redis example (thanks @Szeraax!)
- #1234: Updates Tasks page to explain Task concurrency and Argument passing (thanks @Szeraax!)
- #1276: Adds supported PowerShell documentation (thanks @mdaneri!)
- #1277: Fix for missing merged authentication documentation
- #1282: Adds documentation describing how to debug Pode
Packaging
- #1261: Add support to the build script for Linux and Mac (thanks @mdaneri!)
- #1262: Migrates tests to Pester 5.5.0 (thanks @mdaneri!)
- #1269: Adds PSScriptAnalyzerSettings to run during CI pipelines (thanks @mdaneri!)
- #1264, #1273: Adds CI pipelines per supported PowerShell version (thanks @mdaneri!)
- #1276: Adds .NET8 support (thanks @mdaneri!)
- #1284: Adds additional unit tests to verify PowerShell syntax and structure
- #1286: General tidy-up and release prep
Pode v2.9.0
Checksum: 7982A2267E12D9FF8F53C4C1732A4F5A01FA789470EA5DF940A8641D08EDEF35
Features
- #992: Introduces new Authorisation middleware support
Enhancements
- #588: Adds support for merging Authentication methods into a new Authentication method
- #1082, #1107: Adds a new "Running" event type, which will be triggered once all Runspaces have started
- #1101: Adds a new
-SslProtocol
parameter toAdd-PodeEndpoint
, to allow setting SSL Protocols per endpoint - #1106: Adds two new Security functions to control the hiding/showing of the Server header in responses
- #1142: The
Test-PodeJwt
function is now public (thanks @alan-null!) - #1163: Adds a new "Session" authentication method, useful if you need multiple authentication methods and the user can choose one
Bugs
- #1030: Fixes an issue with some Authentication methods when
-AsCredential
was supplied on the scheme - #1081: Don't attempt to parse the query string if there is no query string supplied
- #1083: Fixes a time-zone issue when verifying JWT "exp" and "nbf" properties (thanks @avin3sh!)
- #1087: Fixes an SMTP body parsing issue when multiple headers are in the request
- #1093: Allow greater JSON depths to be used when saving/restoring State (thanks @plk!)
- #1125: Fixes an issue where Verbs weren't being cleared down appropriately on server restart
- #1130: When request logging is enabled, and an authenticated user is available, the username will now be used and not "-"
- #1137: Fixes the loading of AutoImport configuration - it was being ignored!
Documentation
- #1078: Adds release dates to the releases notes page
- #1099: Adds a reference to the "Protected Users" group in the AD Authentication page
- #1115, #1116: Fixes incorrect ports in Example scripts (thanks @ArieHein!)
- #1117, #1118, #1119: Fixes markdown syntax in pages (thanks @ArieHein!)
- #1123: Adds reference link about using the SecretManagement module in automation scenarios
- #1133: Fixes broken links to functions (thanks @Chris--A!)
- #1141: Updates the IIS page to reference the use of Maximum Worker Processes, and Sessions being stored in-memory
Packaging
Pode v2.8.0
Checksum: EE4C873F72FC3C7F846FB0D80624A92438C89A43236421A49CCBEBED1240E3D9
Features
- #980: Adds support for Secret Management, either via the SecretManagement module or using custom logic
- #1063: Adds support for File Watchers, allowing you to run logic on file events
- #1067: Adds support for Mutexes and Semaphores
Enhancements
- #647: Adds a new helper function,
New-PodeCron
, to help with creating cron expressions for schedules - #964: Adds a new
-IfExists
parameter for Routes, letting you now specify if Pode should overwrite a Route if it already exists - #996: Multiple
-Method
values can now be passed for Routes - #1036: Adds functions to reset and retrieve the current session's expiry
- #1071: Adds support for the
CONNECT
HTTP method
Bugs
- #1028: Fixes the QUIT command on the SMTP server to also return a "221 OK" response
- #1029: Resolves the "A drive with this name already exists" message
- #1041: Fixes a parsing error when sending form data from
Invoke-WebRequest
- #1044: Fixes a duplicate key error when using the
multiple
attribute on HTML file inputs - #1046: Fixes the version of Pode within its runspaces, so it's no "0.0"
- #1065: Fixes query string parsing when key is null (thanks @ili101!)
Documentation
- #1009: Adds clarification around password formats when using a file to store user authentication details (thanks @fatherofinvention!)
- #1054: Fixes rendering issue with
Write-PodeHtmlResponse
example - #1056: Fixes typo in logging documentation (thanks @fatherofinvention!)
Packaging
Pode v2.7.2
Checksum: 3AF04B3DB6C4B52C4CB1CDEDB68F993A86E32949D77A2B63DF9DBF0B25FC2FB7
Enhancements
- #1002: Adds a
-KeepCredential
switch forAdd-PodeAuthWindowsAd
(thanks @TheBakaBandit!)
Bugs
- #988: Add missing
-ListenerType
parameter description forStart-PodeServer
- #1001: Fix no Verbs being defined from crashing the server on restart
Documentation
Pode v2.7.1
Pode v2.7.0
Checksum: 2E8DC36A5C6342E3479AEC3C2C3358924FEB78DF5EE058C3FD6B36EE4F05276D
Features
- #895: Add support for server to be able to connect to external WebSockets
- #902: New TCP server, listener, and endpoints; plus Verbs support
- #976: Add support for grouping Routes
Enhancements
- #901: Enable support for multiple SMTP endpoints, and certificates
- #954: Add anonymous route access support, when authentication is enabled on a route
- #960: Add RSET and NOOP SMTP commands
- #981: Add switch for AccessControl to create global Options route
- #982: Add * level for errors to enable everything
Bugs
- #956: Fix for importing functionss with inline parameters
- #957: Fix for some OpenAPI properties being dropped
- #958: Some SMTP attachment boundaries can include double quotes
- #965: Fix for importing ps1 files
- #974: Add Position=0 to most response write functions
Documentation
- #978: Icon and Donation link updates
Packaging
- #984: Bump Docker images to use PS7.2.4
Pode v2.6.2
Checksum: 8894910B0EA18B239EC90FB7C82C0FEB516D1F067D73A6F80DE60EA262AE9CD0
Bugs
- #948: Hotfix to resolve issue with importing ActiveDirectory module into runspaces