- Added support for creating and updating documents containing
non-ASCII characters by adding Encoding parameter to
New-CosmosDbDocument
andSet-CosmosDbDocument
functions - fixes Issue #151. - Fix table of contents link in README.MD.
- Improved unit test reliability on MacOS and Linux.
- Improved unit tests for account functions to include parameter filters on mock assertions.
- Added
Get-CosmosDbAccountConnectionString
function for retrieving the connection strings of an existing account in Azure - fixes Issue #163. This function is not currently working due to an issue with the Microsoft\DocumentDB provider in Azure - see this issue for more information. - Fixed 'Unable to find type [Microsoft.PowerShell.Commands.HttpResponseException]' exception
being thrown in
Invoke-CosmosDbRequest
when error is returned by Cosmos DB in PowerShell 5.x or earlier - fixes Issue #186. - Split unit and integration test execution in CI process so that integration tests do not run when unit tests fail - fixes Issue #184.
- Fixed RU display - fixes Issue #168
- Fixed Powershell Core
Invoke-WebRequest
error handling. - Fixed retry logic bug (
$fatal
initially set to$true
instead of$false
). - Fixed stored procedure debug logging output.
- Rework CI process to simplify code.
- Enabled integration test execution in Azure DevOps Pipelines - fixes Issue #179
- Added artifact publish tasks for Azure Pipeline.
- Refactored module deployment process to occur in Azure DevOps pipeline - fixes Issue #181
- Added support for running CI in Azure DevOps Pipelines - fixes Issue #174
- Added
New-CosmosDbAccount
function for creating a new Cosmos DB account in Azure - fixes Issue #111 - Added
Get-CosmosDbAccount
function for retrieving the properties of an existing account in Azure - fixes Issue #159 - Added
Set-CosmosDbAccount
function for updating an existing Cosmos DB account in Azure - fixes Issue #160 - Added
Remove-CosmosDbAccount
function for removing an existing Cosmos DB account in Azure - fixes Issue #161 - Added OSx and Linux PowerShell Core continuous integration using TravisCI.
- Improved CI/CodeCoverage badges in README.MD.
- Improved build process to handle build environments that do not have Administrator/Root access.
- Skip test for
Convert-CosmosDbRequestBody
when run in Linux/OSx using PowerShell Core due to behavior difference - see PowerShell Core #Issue - Skip integration tests for
New-CosmosDbAccount
andSet-CosmosDbAccount
when run in AppVeyor due to exception occuring inNew-AzureRmResource
andSet-AzureRmResource
cmdlets because of Newtonsoft.Json version conflict.
- Updated partition key handling when creating collections to allow for leading '/' characters in the partition key - fixes Issue #153
- Add support for setting URI and Key when using with a Cosmos DB Emulator - fixes Issue #155
- Changed references to
CosmosDB
toCosmos DB
in documentation - fixes Issue #147
- Added
RemoveDefaultTimeToLive
switch parameter toSet-CosmosDbCollection
to allow removal of a default time to live setting on a collection - fixes Issue #144
- Changed
New-CosmosDbStoredProcedure
&Set-CosmosDbStoredProcedure
to use serialization instead of tricky request body conversion - fixes Issue #137 - Added parameter
DefaultTimeToLive
toNew-CosmosDbCollection
andSet-CosmosDbCollection
- fixes Issue #139 - Changed the
IndexingPolicy
parameter onSet-CosmosDbCollection
to be optional - fixes Issue #140
- Changed
New-CosmosDBContext
so that Read Only keys will use thereadonlykeys
action endpoint instead of thelistKeys
action - fixes Issue #133 - Fixed freeze occuring in functions when
-ErrorAction SilentlyContinue
parameter was used and error is returned - fixes Issue #132
- Changed trigger operation type
Insert
toCreate
inNew-CosmosDBTrigger
andSet-CosmosDBTrigger
functions - fixes Issue #129
- Removed
UseWebRequest
parameter fromInvoke-CosmosDbReuest
function to refactor out the use ofInvoke-RestMethod
. This is because most Cosmos DB REST requests return additional header information that is lost if usingInvoke-RestMethod
.Invoke-WebRequest
is used instead so that additional headers can always be retured - See Issue #125 - Added integration tests for attachments.
- Added integration tests for stored procedures.
- Added integration tests for triggers.
- Added integration tests for user defined functions.
- Added
New-CosmosDbBackOffPolicy
function for controlling the behaviour of a function when a "Too Many Request" (error code 429) is recieved - See Issue #87 - Added support for handling a back-off policy to the
Invoke-CosmosDbRequest
function.
- Added None as an IndexingMode - See Issue #120
- Fix creation of spatial index by
New-CosmosDbCollectionIncludedPathIndex
so that precision is not used when passing toNew-CosmosDbCollection
. - Added support for
-PartitionKey
inInvoke-CosmosDbStoredProcedure
- See Issue #116 - Changed -StoredProcedureParameter from string[] to object[] in
Invoke-CosmosDbStoredProcedure
- See Issue #116 - Updated
Invoke-CosmosDbStoredProcedure
to setx-ms-documentdb-script-enable-logging: true
header and write stored procedure logs to the Verbose Stream when-Debug
is set - See Issue #116
- Fixed Code Coverage upload to CodeCov.io.
- Fix
New-CosmosDbCollectionIncludedPathIndex
Kind parameter spelling of spacial - See Issue #112. - Added parameter validation to
New-CosmosDbCollectionIncludedPathIndex
.
- Added
Set-CosmosDbCollection
function for updating a collection - See Issue #104. - Updated
Invoke-CosmosDbRequest
function to output additional exception information to the Verbose stream - See Issue #103.
- Changed Id parameter in
Get-CosmosDbCollectionSize
to be mandatory. - Added documentation for creating a resource token context - See Issue #33.
- Added
New-CosmosDbContextToken
to create a resource token context object that can be passed toNew-CosmosDbContext
to support working with resource level access controls - See Issue #33. - Added support to
New-CosmosDbContext
for creating a context object with resource tokens from permissions - See Issue #33.
- Added PowerShell Core version support badge.
- Prevent integration tests from running if Azure connection environment variables are not set.
- Added Code of Conduct to project.
- Fixed error returned by
Get-CosmosDbDocument
when getting documents from a partitioned collection without specifying an Id or Query - See Issue #97. Thanks jasonchester
- Added basic integration test support.
- Fixed 401 error returned by
Set-CosmosDbOffer
when updating offer - See Issue #85. Thanks dl8on
- Added
Get-CosmosDbCollectionSize
function to return data about size and object counts of collections - See Issue #79. Thanks WatersJohn.
- Fixed
New-CosmosDbAuthorizationToken
function to support generating authorization tokens for case sensitive resource names - See Issue #76. Thanks MWL88.
- Updated CI process to use PSDepend for dependencies.
- Updated CI process to use PSake for tasks.
- Changes AppVeyor.yml to call PSake tasks.
- Added
PSEdition_Desktop
tag to manifest. - Added cmdlet help examples for utils.
- Converted help to MAML file CosmosDB-help.xml.
- Updated AppVeyor build to generate MAML help.
- Added more README.MD badges.
- Added
*-CosmosDbOffer
cmdlets.
- Fixed bug in
Get-CosmosDbDocument
when looking up a document in a partitioned collection by adding aPartitionKey
parameter. - Added
Upsert
parameter toNew-CosmosDbDocument
to enable updating a document if it exists. - Fixed bug in
New-CosmosDbDocument
when adding document to a partitioned collection but no partition key is specified - See Issue #48. - Fixed bug in
Set-CosmosDbDocument
when updating a document in a partitioned collection. - Fixed bug in
Remove-CosmosDbDocument
when deleting a document in a partitioned collection. - Added check to
New-CosmosDbCollection
to ensurePartitionKey
parameter is passed ifOfferThroughput
is greater than 10000.
- Added support for configuring custom indexing policies when creating a new collection.
- Converted all
connection
function names and parameter names over tocontext
. Aliases were implemented for oldconnection
function and parameter names to reduce possibility of breakage.
- Added support for CosmosDB Emulator.
- Fixed
New-CosmosDbConnection
error message when creating connection but not connected to Azure. - Added support for specifying token expiry length to
Get-cosmosDbPermission
.
- BREAKING CHANGE: Converted all cmdlets to return custom types and added support for custom formats.
- Added
*-CosmosDbAttachment
cmdlets.
- Fixed
Get-CosmosDbDocument
returning (400) Bad Request error when executed with Query - See Issue #22.
- Added
*-CosmosDbDocument
cmdlets.
- Added
*-CosmosDbUserDefinedFunction
cmdlets.
- Added
*-CosmosDbStoredProcedure
cmdlets.
- Added
*-CosmosDbTrigger
cmdlets.
- Added
New-CosmosDbDatabase
andRemove-CosmosDbDatabase
cmdlets. - Improved unit tests.
- Added
Get-CosmosDbDatabase
andGet-CosmosDbDatabaseResourcePath
cmdlets.
- Fixed bug in
New-CosmosDbConnection
detecting Azure connection.
- Fixed bug in
New-CosmosDbConnection
connecting to Azure and improved tests. - Changed
New-CosmosDbAuthorizationToken
to replacedConnection
parameter withKey
andKeyType
parameter. - Fixed bug in
Invoke-CosmosDbRequest
that can cause connection object to be changed.
- Added
PartitionKey
,OfferThroughput
andOfferType
parameters to cmdletNew-CosmosDBCollection
. - Added support for retrieving key from Azure Management Portal.
- Updated manifest to show all cmdlets.
- Improved unit test coverage.
- Added cmdlet
Set-CosmosDBUser
for setting the user Id of an existing user.
- Minor bugfixes.
- Improved unit test coverage.
- Initial Release.