diff --git a/.github/workflows/backend.yml b/.github/workflows/backend.yml index 8b2c7d4bf5..f0b387b4b4 100644 --- a/.github/workflows/backend.yml +++ b/.github/workflows/backend.yml @@ -37,7 +37,7 @@ jobs: objects.githubusercontent.com:443 - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup dotnet - uses: actions/setup-dotnet@4d6c8fcf3c8f7a60068d26b594648e99df24cee3 # v4.0.0 + uses: actions/setup-dotnet@6bd8b7f7774af54e05809fcc5431931b3eb1ddee # v4.0.1 with: dotnet-version: ${{ matrix.dotnet }} - name: Install ffmpeg @@ -128,7 +128,7 @@ jobs: # Manually install .NET to work around: # https://github.com/github/codeql-action/issues/757 - name: Setup .NET - uses: actions/setup-dotnet@4d6c8fcf3c8f7a60068d26b594648e99df24cee3 # v4.0.0 + uses: actions/setup-dotnet@6bd8b7f7774af54e05809fcc5431931b3eb1ddee # v4.0.1 with: dotnet-version: "8.0.x" - name: Initialize CodeQL diff --git a/.github/workflows/combine_deploy_image.yml b/.github/workflows/combine_deploy_image.yml index a2248bc511..c8f010de39 100644 --- a/.github/workflows/combine_deploy_image.yml +++ b/.github/workflows/combine_deploy_image.yml @@ -38,9 +38,9 @@ jobs: security.ubuntu.com:80 sts.us-east-1.amazonaws.com:443 - name: Set up QEMU - uses: docker/setup-qemu-action@68827325e0b33c7199eb31dd4e31fbe9023e06e3 # v3.0.0 + uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0 + uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2 with: diff --git a/.github/workflows/commit_message_check.yml b/.github/workflows/commit_message_check.yml index 18f0e95482..4377ba8af3 100644 --- a/.github/workflows/commit_message_check.yml +++ b/.github/workflows/commit_message_check.yml @@ -10,4 +10,4 @@ permissions: # added using https://github.com/step-security/secure-workflows jobs: commit-message-lint: - uses: sillsdev/FieldWorks/.github/workflows/CommitMessage.yml@9972c2aa3ad9fa768bd82714208152c4b6ce6b2c + uses: sillsdev/FieldWorks/.github/workflows/CommitMessage.yml@ba50e637df9593a2a972b29bf670226e89c0a21b diff --git a/.github/workflows/frontend.yml b/.github/workflows/frontend.yml index 9dc04870db..c417bb1892 100644 --- a/.github/workflows/frontend.yml +++ b/.github/workflows/frontend.yml @@ -31,7 +31,7 @@ jobs: - name: Checkout repository uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 + uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 with: node-version: ${{ matrix.node-version }} - run: npm ci @@ -60,7 +60,7 @@ jobs: - name: Checkout repository uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 + uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 with: node-version: ${{ matrix.node-version }} - run: npm ci diff --git a/.gitignore b/.gitignore index 1cf7bbe649..835a807bf8 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,7 @@ public/scripts/config.js .eslintcache Session.vim scripts/*.js +!scripts/createBackendLicenses.js !scripts/printVersion.js !scripts/setRelease.js @@ -58,6 +59,7 @@ mongo_database # User Guide docs/user_guide/site +backend_licenses.json # Python .tox diff --git a/Backend.Tests/Backend.Tests.csproj b/Backend.Tests/Backend.Tests.csproj index 3bae03ffc4..043a93624a 100644 --- a/Backend.Tests/Backend.Tests.csproj +++ b/Backend.Tests/Backend.Tests.csproj @@ -12,7 +12,7 @@ $(NoWarn);CA1305;CA1859;CS1591 - + diff --git a/Backend.Tests/Controllers/UserRoleControllerTests.cs b/Backend.Tests/Controllers/UserRoleControllerTests.cs index a8689173ab..fe8830466d 100644 --- a/Backend.Tests/Controllers/UserRoleControllerTests.cs +++ b/Backend.Tests/Controllers/UserRoleControllerTests.cs @@ -48,7 +48,12 @@ public async Task Setup() _projId = (await _projRepo.Create(new Project { Name = "UserRoleControllerTests" }))!.Id; } - private UserRole RandomUserRole(Role role = Role.Harvester) + private ProjectRole ProjectRoleInProj(Role role = Role.Harvester) + { + return new ProjectRole { ProjectId = _projId, Role = role }; + } + + private UserRole UserRoleInProj(Role role = Role.Harvester) { return new UserRole { ProjectId = _projId, Role = role }; } @@ -59,7 +64,7 @@ public async Task TestGetAllUserRoles() var roles = new List { Role.Harvester, Role.Editor, Role.Administrator }; foreach (var role in roles) { - await _userRoleRepo.Create(RandomUserRole(role)); + await _userRoleRepo.Create(UserRoleInProj(role)); } var getResult = await _userRoleController.GetProjectUserRoles(_projId); @@ -97,14 +102,14 @@ public async Task TestHasPermissionNotAuthorized() [Test] public async Task TestGetCurrentPermissions() { - var userRole = await _userRoleRepo.Create(RandomUserRole()); + var userRole = await _userRoleRepo.Create(UserRoleInProj()); var user = await _userRepo.Create(new User()); _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.HttpContextWithUserId(user!.Id); user.ProjectRoles[_projId] = userRole.Id; await _userRepo.Update(user.Id, user); - await _userRoleRepo.Create(RandomUserRole()); - await _userRoleRepo.Create(RandomUserRole()); + await _userRoleRepo.Create(UserRoleInProj()); + await _userRoleRepo.Create(UserRoleInProj()); var result = await _userRoleController.GetCurrentPermissions(_projId); Assert.That(result, Is.InstanceOf()); @@ -179,7 +184,7 @@ public async Task TestGetCurrentPermissionsNotAuthorized() [Test] public async Task TestCreateUserRole() { - var userRole = RandomUserRole(); + var userRole = UserRoleInProj(); var id = (string)((ObjectResult)await _userRoleController.CreateUserRole(_projId, userRole)).Value!; userRole.Id = id; Assert.That(await _userRoleRepo.GetAllUserRoles(_projId), Does.Contain(userRole)); @@ -188,7 +193,7 @@ public async Task TestCreateUserRole() [Test] public async Task TestCreateUserRolesMissingProject() { - var userRole = RandomUserRole(); + var userRole = UserRoleInProj(); var result = await _userRoleController.CreateUserRole(MissingId, userRole); Assert.That(result, Is.InstanceOf()); } @@ -197,20 +202,29 @@ public async Task TestCreateUserRolesMissingProject() public async Task TestCreateUserRolesNoPermission() { _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.UnauthorizedHttpContext(); - var userRole = await _userRoleRepo.Create(RandomUserRole()); + var userRole = await _userRoleRepo.Create(UserRoleInProj()); var result = await _userRoleController.CreateUserRole(_projId, userRole); Assert.That(result, Is.InstanceOf()); } + [Test] + public async Task TestCreateUserRolesSecondOwner() + { + var firstOwner = await _userRoleController.CreateUserRole(_projId, UserRoleInProj(Role.Owner)); + Assert.That(firstOwner, Is.InstanceOf()); + var secondOwner = await _userRoleController.CreateUserRole(_projId, UserRoleInProj(Role.Owner)); + Assert.That(secondOwner, Is.InstanceOf()); + } + [Test] public async Task TestUpdateUserRole() { - var userRole = RandomUserRole(Role.Harvester); + var userRole = UserRoleInProj(Role.Harvester); await _userRoleRepo.Create(userRole); var user = new User { ProjectRoles = { [_projId] = userRole.Id } }; var userId = (await _userRepo.Create(user))!.Id; _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.HttpContextWithUserId(userId); - var projectRole = new ProjectRole { ProjectId = _projId, Role = Role.Editor }; + var projectRole = ProjectRoleInProj(Role.Editor); await _userRoleController.UpdateUserRole(userId, projectRole); var result = await _userRoleController.GetCurrentPermissions(_projId); @@ -226,13 +240,12 @@ public async Task TestUpdateUserRole() [Test] public async Task TestUpdateUserRoleNoChange() { - var userRole = RandomUserRole(Role.Harvester); + var userRole = UserRoleInProj(Role.Harvester); await _userRoleRepo.Create(userRole); var user = new User { ProjectRoles = { [_projId] = userRole.Id } }; var userId = (await _userRepo.Create(user))!.Id; _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.HttpContextWithUserId(userId); - var projectRole = new ProjectRole { ProjectId = _projId, Role = userRole.Role }; - var result = await _userRoleController.UpdateUserRole(userId, projectRole); + var result = await _userRoleController.UpdateUserRole(userId, ProjectRoleInProj(userRole.Role)); Assert.That(((ObjectResult)result).StatusCode, Is.EqualTo(StatusCodes.Status304NotModified)); } @@ -240,7 +253,7 @@ public async Task TestUpdateUserRoleNoChange() public async Task TestCreateNewUpdateUserRole() { var userId = (await _userRepo.Create(new User()))!.Id; - var projectRole = new ProjectRole { ProjectId = _projId, Role = Role.Editor }; + var projectRole = ProjectRoleInProj(Role.Editor); var updateResult = await _userRoleController.UpdateUserRole(userId, projectRole); var newUserRoleId = (string)((OkObjectResult)updateResult).Value!; _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.HttpContextWithUserId(userId); @@ -258,12 +271,11 @@ public async Task TestCreateNewUpdateUserRole() [Test] public async Task TestUpdateUserRolesMissingIds() { - var projectRole = new ProjectRole { ProjectId = _projId, Role = Role.Editor }; - + var projectRole = ProjectRoleInProj(Role.Editor); var missingUserIdResult = await _userRoleController.UpdateUserRole(MissingId, projectRole); Assert.That(missingUserIdResult, Is.InstanceOf()); - var userRoleId = (await _userRoleRepo.Create(RandomUserRole(Role.Harvester))).Id; + var userRoleId = (await _userRoleRepo.Create(UserRoleInProj(Role.Harvester))).Id; projectRole.ProjectId = MissingId; var missingProjIdResult = await _userRoleController.UpdateUserRole(userRoleId, projectRole); Assert.That(missingProjIdResult, Is.InstanceOf()); @@ -273,15 +285,35 @@ public async Task TestUpdateUserRolesMissingIds() public async Task TestUpdateUserRolesNoPermission() { _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.UnauthorizedHttpContext(); - var userRoleId = (await _userRoleRepo.Create(RandomUserRole(Role.Harvester))).Id; - var result = await _userRoleController.UpdateUserRole(userRoleId, new ProjectRole()); + var userRoleId = (await _userRoleRepo.Create(UserRoleInProj(Role.Harvester))).Id; + var result = await _userRoleController.UpdateUserRole(userRoleId, ProjectRoleInProj()); + Assert.That(result, Is.InstanceOf()); + } + + [Test] + public async Task TestUpdateUserRolesToOwner() + { + var userRoleId = (await _userRoleRepo.Create(UserRoleInProj(Role.Administrator))).Id; + var user = new User { ProjectRoles = { [_projId] = userRoleId } }; + var userId = (await _userRepo.Create(user))!.Id; + var result = await _userRoleController.UpdateUserRole(userId, ProjectRoleInProj(Role.Owner)); + Assert.That(result, Is.InstanceOf()); + } + + [Test] + public async Task TestUpdateUserRolesFromOwner() + { + var userRoleId = (await _userRoleRepo.Create(UserRoleInProj(Role.Owner))).Id; + var user = new User { ProjectRoles = { [_projId] = userRoleId } }; + var userId = (await _userRepo.Create(user))!.Id; + var result = await _userRoleController.UpdateUserRole(userId, ProjectRoleInProj(Role.Administrator)); Assert.That(result, Is.InstanceOf()); } [Test] public async Task TestDeleteUserRole() { - var userRole = RandomUserRole(); + var userRole = UserRoleInProj(); await _userRoleRepo.Create(userRole); var user = new User { ProjectRoles = { [_projId] = userRole.Id } }; var userId = (await _userRepo.Create(user))!.Id; @@ -305,16 +337,30 @@ public async Task TestDeleteUserRole() public async Task TestDeleteUserRoleNoPermission() { _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.UnauthorizedHttpContext(); - var userRole = await _userRoleRepo.Create(RandomUserRole()); - var result = await _userRoleController.DeleteUserRole(_projId, userRole.Id); + var userRole = await _userRoleRepo.Create(UserRoleInProj()); + var user = new User { ProjectRoles = { [_projId] = userRole.Id } }; + var userId = (await _userRepo.Create(user))!.Id; + var result = await _userRoleController.DeleteUserRole(_projId, userId); + Assert.That(result, Is.InstanceOf()); + } + + [Test] + public async Task TestDeleteUserRoleOwner() + { + var userRole = await _userRoleRepo.Create(UserRoleInProj(Role.Owner)); + var user = new User { ProjectRoles = { [_projId] = userRole.Id } }; + var userId = (await _userRepo.Create(user))!.Id; + var result = await _userRoleController.DeleteUserRole(_projId, userId); Assert.That(result, Is.InstanceOf()); } [Test] public async Task TestDeleteUserRoleMissingIds() { - var userRole = await _userRoleRepo.Create(RandomUserRole()); - var projectResult = await _userRoleController.DeleteUserRole(MissingId, userRole.Id); + var userRole = await _userRoleRepo.Create(UserRoleInProj()); + var user = new User { ProjectRoles = { [_projId] = userRole.Id } }; + var userId = (await _userRepo.Create(user))!.Id; + var projectResult = await _userRoleController.DeleteUserRole(MissingId, userId); Assert.That(projectResult, Is.InstanceOf()); var wordResult = await _userRoleController.DeleteUserRole(_projId, MissingId); @@ -324,9 +370,9 @@ public async Task TestDeleteUserRoleMissingIds() [Test] public async Task TestDeleteAllUserRoles() { - await _userRoleRepo.Create(RandomUserRole()); - await _userRoleRepo.Create(RandomUserRole()); - await _userRoleRepo.Create(RandomUserRole()); + await _userRoleRepo.Create(UserRoleInProj()); + await _userRoleRepo.Create(UserRoleInProj()); + await _userRoleRepo.Create(UserRoleInProj()); Assert.That(await _userRoleRepo.GetAllUserRoles(_projId), Has.Count.EqualTo(3)); @@ -348,5 +394,98 @@ public async Task TestDeleteAllUserRolesNoPermission() var result = await _userRoleController.DeleteProjectUserRoles(_projId); Assert.That(result, Is.InstanceOf()); } + + [Test] + public async Task TestChangeOwnerNoPermission() + { + _userRoleController.ControllerContext.HttpContext = PermissionServiceMock.UnauthorizedHttpContext(); + var oldRole = await _userRoleRepo.Create(UserRoleInProj(Role.Owner)); + var oldOwner = new User { ProjectRoles = { [_projId] = oldRole.Id } }; + var oldId = (await _userRepo.Create(oldOwner))!.Id; + var newId = (await _userRepo.Create(new()))!.Id; + + var result = await _userRoleController.ChangeOwner(_projId, oldId, newId); + Assert.That(result, Is.InstanceOf()); + } + + [Test] + public async Task TestChangeOwnerSameId() + { + var oldRole = await _userRoleRepo.Create(UserRoleInProj(Role.Owner)); + var oldOwner = new User { ProjectRoles = { [_projId] = oldRole.Id } }; + var oldId = (await _userRepo.Create(oldOwner))!.Id; + var newId = (await _userRepo.Create(new()))!.Id; + + var result = await _userRoleController.ChangeOwner(_projId, oldId, oldId); + Assert.That(result, Is.InstanceOf()); + + result = await _userRoleController.ChangeOwner(_projId, newId, newId); + Assert.That(result, Is.InstanceOf()); + } + + [Test] + public async Task TestChangeOwnerMissingProjectOrUser() + { + var oldRole = await _userRoleRepo.Create(UserRoleInProj(Role.Owner)); + var oldOwner = new User { ProjectRoles = { [_projId] = oldRole.Id } }; + var oldId = (await _userRepo.Create(oldOwner))!.Id; + var newId = (await _userRepo.Create(new()))!.Id; + + var result = await _userRoleController.ChangeOwner(MissingId, oldId, newId); + Assert.That(result, Is.InstanceOf()); + + result = await _userRoleController.ChangeOwner(_projId, MissingId, newId); + Assert.That(result, Is.InstanceOf()); + + result = await _userRoleController.ChangeOwner(_projId, oldId, MissingId); + Assert.That(result, Is.InstanceOf()); + } + + [Test] + public async Task TestChangeOwnerOldUserNotOwner() + { + var oldRole = await _userRoleRepo.Create(UserRoleInProj(Role.Editor)); + var oldEditor = new User { ProjectRoles = { [_projId] = oldRole.Id } }; + var oldEditorId = (await _userRepo.Create(oldEditor))!.Id; + var oldOtherId = (await _userRepo.Create(new()))!.Id; + var newId = (await _userRepo.Create(new()))!.Id; + + var result = await _userRoleController.ChangeOwner(_projId, oldEditorId, newId); + Assert.That(result, Is.InstanceOf()); + + result = await _userRoleController.ChangeOwner(_projId, oldOtherId, newId); + Assert.That(result, Is.InstanceOf()); + } + + [Test] + public async Task TestChangeOwnerNewRole() + { + var oldRole = await _userRoleRepo.Create(UserRoleInProj(Role.Owner)); + var oldOwner = new User { ProjectRoles = { [_projId] = oldRole.Id } }; + var oldId = (await _userRepo.Create(oldOwner))!.Id; + var newId = (await _userRepo.Create(new()))!.Id; + + var result = await _userRoleController.ChangeOwner(_projId, oldId, newId); + Assert.That(result, Is.InstanceOf()); + Assert.That((await _userRoleRepo.GetUserRole(_projId, oldRole.Id))?.Role, Is.EqualTo(Role.Administrator)); + var newRoleId = (await _userRepo.GetUser(newId))!.ProjectRoles[_projId]; + Assert.That((await _userRoleRepo.GetUserRole(_projId, newRoleId))?.Role, Is.EqualTo(Role.Owner)); + } + + [Test] + public async Task TestChangeOwnerUpdateRole() + { + var oldRole = await _userRoleRepo.Create(UserRoleInProj(Role.Owner)); + var oldOwner = new User { ProjectRoles = { [_projId] = oldRole.Id } }; + var oldId = (await _userRepo.Create(oldOwner))!.Id; + var newRole = await _userRoleRepo.Create(UserRoleInProj()); + var newOwner = new User { ProjectRoles = { [_projId] = newRole.Id } }; + var newId = (await _userRepo.Create(newOwner))!.Id; + + var result = await _userRoleController.ChangeOwner(_projId, oldId, newId); + Assert.That(result, Is.InstanceOf()); + Assert.That((await _userRoleRepo.GetUserRole(_projId, oldRole.Id))?.Role, Is.EqualTo(Role.Administrator)); + Assert.That((await _userRoleRepo.GetUserRole(_projId, newRole.Id))?.Role, Is.EqualTo(Role.Owner)); + } } } diff --git a/Backend/BackendFramework.csproj b/Backend/BackendFramework.csproj index 394ceb6f18..10e9073299 100644 --- a/Backend/BackendFramework.csproj +++ b/Backend/BackendFramework.csproj @@ -16,9 +16,9 @@ - - - + + + diff --git a/Backend/Controllers/UserRoleController.cs b/Backend/Controllers/UserRoleController.cs index b87331dee3..290dd9d90d 100644 --- a/Backend/Controllers/UserRoleController.cs +++ b/Backend/Controllers/UserRoleController.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; using BackendFramework.Helper; using BackendFramework.Interfaces; @@ -147,6 +148,13 @@ public async Task CreateUserRole(string projectId, [FromBody, Bin return NotFound(projectId); } + // Prevent a second project owner + if (userRole.Role == Role.Owner + && (await _userRoleRepo.GetAllUserRoles(projectId)).Any((role) => role.Role == Role.Owner)) + { + return Forbid("This project already has an owner"); + } + await _userRoleRepo.Create(userRole); return Ok(userRole.Id); } @@ -183,6 +191,12 @@ public async Task DeleteUserRole(string projectId, string userId) return NotFound(userRoleId); } + // Prevent deleting the project owner. + if (userRole.Role == Role.Owner) + { + return Forbid("Cannot use this function to remove the project owner's role"); + } + // Prevent deleting role of another user who has more permissions than the actor. if (!await _permissionService.ContainsProjectRole(HttpContext, userRole.Role, projectId)) { @@ -212,6 +226,11 @@ public async Task UpdateUserRole( return Forbid(); } + // Prevent making a new project owner. + if (projectRole.Role == Role.Owner) + { + return Forbid("Cannot use this function to give a user the project owner role"); + } // Prevent upgrading another user to have more permissions than the actor. if (!await _permissionService.ContainsProjectRole(HttpContext, projectRole.Role, projectId)) { @@ -248,6 +267,11 @@ public async Task UpdateUserRole( return NotFound(userRoleId); } + // Prevent downgrading the project owner. + if (userRole.Role == Role.Owner) + { + return Forbid("Cannot use this function to change the project owner's role"); + } // Prevent downgrading another user who has more permissions than the actor. if (!await _permissionService.ContainsProjectRole(HttpContext, userRole.Role, projectId)) { @@ -263,5 +287,95 @@ public async Task UpdateUserRole( _ => StatusCode(StatusCodes.Status304NotModified, userRoleId) }; } + + /// + /// Change project owner from user with first specified id to user with second specified id. + /// Can only be used by the project owner or a site admin. + /// + /// Id of updated UserRole + [HttpGet("changeowner/{oldUserId}/{newUserId}", Name = "ChangeOwner")] + [ProducesResponseType(StatusCodes.Status200OK, Type = typeof(string))] + public async Task ChangeOwner(string projectId, string oldUserId, string newUserId) + { + // Ensure the actor has sufficient permission to change project owner + if (!await _permissionService.ContainsProjectRole(HttpContext, Role.Owner, projectId)) + { + return Forbid(); + } + + // Ensure that the old and new owners' ids are different + if (oldUserId.Equals(newUserId, System.StringComparison.OrdinalIgnoreCase)) + { + return BadRequest($"the user ids for the old and new owners should be different"); + } + + // Ensure the project exists + var proj = await _projRepo.GetProject(projectId); + if (proj is null) + { + return NotFound(projectId); + } + + // Fetch the users + var oldOwner = await _userRepo.GetUser(oldUserId, false); + if (oldOwner is null) + { + return NotFound(oldUserId); + } + var newOwner = await _userRepo.GetUser(newUserId, false); + if (newOwner is null) + { + return NotFound(newUserId); + } + + // Ensure that the user from whom ownership is being moved is the owner + if (!oldOwner.ProjectRoles.TryGetValue(projectId, out var oldRoleId)) + { + return BadRequest($"{oldUserId} is not a project user"); + } + var oldUserRole = await _userRoleRepo.GetUserRole(projectId, oldRoleId); + if (oldUserRole is null || oldUserRole.Role != Role.Owner) + { + return BadRequest($"{oldUserId} is not the project owner"); + } + + // Add or update the role of the new owner + ResultOfUpdate newResult; + if (!newOwner.ProjectRoles.TryGetValue(projectId, out var newRoleId)) + { + // Generate the userRole + var newUsersRole = new UserRole { ProjectId = projectId, Role = Role.Owner }; + newUsersRole = await _userRoleRepo.Create(newUsersRole); + newRoleId = newUsersRole.Id; + + // Update the user + newOwner.ProjectRoles.Add(projectId, newRoleId); + newResult = await _userRepo.Update(newOwner.Id, newOwner); + } + else + { + // Update the user role + var newUsersRole = await _userRoleRepo.GetUserRole(projectId, newRoleId); + if (newUsersRole is null) + { + return NotFound(newRoleId); + } + newUsersRole.Role = Role.Owner; + newResult = await _userRoleRepo.Update(newRoleId, newUsersRole); + } + if (newResult != ResultOfUpdate.Updated) + { + return StatusCode(StatusCodes.Status304NotModified, newRoleId); + }; + + // Change the old owner to a project admin + oldUserRole.Role = Role.Administrator; + var oldResult = await _userRoleRepo.Update(oldRoleId, oldUserRole); + return oldResult switch + { + ResultOfUpdate.Updated => Ok(oldUserRole), + _ => StatusCode(StatusCodes.Status304NotModified, oldUserRole) + }; + } } } diff --git a/Backend/Dockerfile b/Backend/Dockerfile index f0e30198f2..10357c023e 100644 --- a/Backend/Dockerfile +++ b/Backend/Dockerfile @@ -7,7 +7,7 @@ ############################################################ # Docker multi-stage build -FROM mcr.microsoft.com/dotnet/sdk:8.0.401-jammy AS builder +FROM mcr.microsoft.com/dotnet/sdk:8.0.402-jammy AS builder WORKDIR /app # Copy csproj and restore (fetch dependencies) as distinct layers. diff --git a/README.md b/README.md index d5fbc1b585..fbf8b4c0c6 100644 --- a/README.md +++ b/README.md @@ -124,12 +124,10 @@ A rapid word collection tool. See the [User Guide](https://sillsdev.github.io/Th - If using [homebrew](https://formulae.brew.sh/formula/ffmpeg): `brew install ffmpeg` - If manually installing from the FFmpeg website, install both `ffmpeg` and `ffprobe` -9. [dotnet-format](https://github.com/dotnet/format): `dotnet tool update --global dotnet-format --version 5.1.250801` -10. [dotnet-reportgenerator](https://github.com/danielpalme/ReportGenerator) - `dotnet tool update --global dotnet-reportgenerator-globaltool --version 5.0.4` -11. [dotnet-project-licenses](https://github.com/tomchavakis/nuget-license) - `dotnet tool update --global dotnet-project-licenses` -12. Tools for generating the self installer (Linux only): +9. [dotnet-reportgenerator](https://github.com/danielpalme/ReportGenerator) + `dotnet tool update --global dotnet-reportgenerator-globaltool --version 5.0.4` +10. [nuget-license](https://github.com/sensslen/nuget-license) `dotnet tool update --global nuget-project-license` +11. Tools for generating the self installer (Linux only): - [makeself](https://makeself.io/) - a tool to make self-extracting archives in Unix - [pandoc](https://pandoc.org/installing.html#linux) - a tool to convert Markdown documents to PDF. @@ -589,8 +587,8 @@ When _Rancher Desktop_ is first run, you will be prompted to select a few initia 1. Verify that _Enable Kubernetes_ is checked. 2. Select the Kubernetes version marked as _stable, latest_. 3. Select your container runtime, either _containerd_ or _dockerd (moby)_: - - _containerd_ matches what is used on the NUC and uses the `k3s` Kubernetes engine. It requires that you run the - `build.py` script with the `--nerdctl` option. + - _containerd_ matches what is used on the NUC and uses the `k3s` Kubernetes engine. It requires that you set the + `CONTAINER_CLI` environment variable to `nerdctl` before running the `build.py` script. - _dockerd_ uses the `k3d` (`k3s` in docker). 4. Select _Automatic_ or _Manual_ path setup. 5. Click _Accept_. @@ -680,7 +678,7 @@ Notes: export CONTAINER_CLI="nerdctl" ``` - If you are using _Docker Desktop_ or _Rancher Desktop_ with the `dockerd` container runtime, clear this variable or + If you are using _Rancher Desktop_ with the `dockerd` container runtime or _Docker Desktop_, clear this variable or set its value to `docker`. - Run with the `--help` option to see all available options. diff --git a/deploy/ansible/playbook_desktop_setup.yaml b/deploy/ansible/playbook_desktop_setup.yml similarity index 100% rename from deploy/ansible/playbook_desktop_setup.yaml rename to deploy/ansible/playbook_desktop_setup.yml diff --git a/deploy/ansible/playbook_nuc_setup.yaml b/deploy/ansible/playbook_nuc_setup.yml similarity index 100% rename from deploy/ansible/playbook_nuc_setup.yaml rename to deploy/ansible/playbook_nuc_setup.yml diff --git a/deploy/requirements.txt b/deploy/requirements.txt index efab49b28a..bb5f5c681e 100644 --- a/deploy/requirements.txt +++ b/deploy/requirements.txt @@ -4,9 +4,9 @@ # # pip-compile requirements.in # -ansible==10.3.0 +ansible==10.4.0 # via -r requirements.in -ansible-core==2.17.3 +ansible-core==2.17.4 # via ansible cachetools==5.5.0 # via google-auth @@ -22,6 +22,8 @@ cryptography==43.0.1 # via # ansible-core # pyopenssl +durationpy==0.8 + # via kubernetes google-auth==2.34.0 # via kubernetes idna==3.8 @@ -33,7 +35,7 @@ jinja2==3.1.4 # jinja2-base64-filters jinja2-base64-filters==0.1.4 # via -r requirements.in -kubernetes==30.1.0 +kubernetes==31.0.0 # via -r requirements.in markupsafe==2.1.5 # via jinja2 diff --git a/deploy/scripts/aws_env.py b/deploy/scripts/aws_env.py index 251bc8fabe..891b69d053 100755 --- a/deploy/scripts/aws_env.py +++ b/deploy/scripts/aws_env.py @@ -29,7 +29,7 @@ def list_aws_profiles() -> List[str]: aws_ver = aws_version() if aws_ver is not None and aws_ver == 2: result = run_cmd(["aws", "configure", "list-profiles"], chomp=True) - return result.stdout.split("\n") + return [profile for profile in result.stdout.split("\n") if profile] return [] diff --git a/deploy/scripts/build.py b/deploy/scripts/build.py index 969c1533be..31390e39d8 100755 --- a/deploy/scripts/build.py +++ b/deploy/scripts/build.py @@ -3,10 +3,10 @@ """ Build the containerd images for The Combine. -This script currently supports using 'docker' or 'nerdctl' to build the container -images. 'nerdctl' is recommended when using Rancher Desktop for the development -environment and 'docker' is recommended when using Docker Desktop with the 'containerd' -container engine. +This script currently supports using 'docker' or 'nerdctl' to build the container images. +The default is 'docker' unless the CONTAINER_CLI env var is set to 'nerdctl'. +'docker' is for Rancher Desktop with the 'dockerd' container runtime or Docker Desktop. +'nerdctl' is for Rancher Desktop with the 'containerd' container runtime. When 'docker' is used for the build, the BuildKit backend will be enabled. """ @@ -190,11 +190,6 @@ def parse_args() -> Namespace: """Parse user command line arguments.""" parser = ArgumentParser( description="Build containerd container images for project.", - epilog=""" - NOTE: - The '--nerdctl' option is DEPRECATED and will be removed in future versions. - Set the environment variable CONTAINER_CLI to 'nerdctl' or 'docker' instead. - """, formatter_class=RawFormatter, ) parser.add_argument( @@ -214,11 +209,6 @@ def parse_args() -> Namespace: parser.add_argument( "--repo", "-r", help="Push images to the specified Docker image repository." ) - parser.add_argument( - "--nerdctl", - action="store_true", - help="Use 'nerdctl' instead of 'docker' to build images.", - ) parser.add_argument( "--namespace", "-n", @@ -264,7 +254,7 @@ def main() -> None: logging.basicConfig(format="%(levelname)s:%(message)s", level=log_level) # Setup required build engine - docker or nerdctl - container_cli = os.getenv("CONTAINER_CLI", "nerdctl" if args.nerdctl else "docker") + container_cli = os.getenv("CONTAINER_CLI", "docker") match container_cli: case "nerdctl": build_cmd = [container_cli, "-n", args.namespace, "build"] @@ -277,18 +267,18 @@ def main() -> None: sys.exit(1) # Setup build options - build_opts: List[str] = [] if args.quiet: - build_opts = ["--quiet"] + build_cmd += ["--quiet"] else: - build_opts = ["--progress", "plain"] + build_cmd += ["--progress", "plain"] if args.no_cache: - build_opts += ["--no-cache"] + build_cmd += ["--no-cache"] if args.pull: - build_opts += ["--pull"] + build_cmd += ["--pull"] if args.build_args is not None: for build_arg in args.build_args: - build_opts += ["--build-arg", build_arg] + build_cmd += ["--build-arg", build_arg] + logging.debug(f"build_cmd: {build_cmd}") if args.components is not None: to_do = args.components @@ -301,21 +291,10 @@ def main() -> None: spec = build_specs[component] spec.pre_build() image_name = get_image_name(args.repo, spec.name, args.tag) + job_opts = ["-t", image_name, "-f", "Dockerfile", "."] job_set[component] = JobQueue(component) - job_set[component].add_job( - Job( - build_cmd - + build_opts - + [ - "-t", - image_name, - "-f", - "Dockerfile", - ".", - ], - spec.dir, - ) - ) + logging.debug(f"Adding job {build_cmd + job_opts}") + job_set[component].add_job(Job(build_cmd + job_opts, spec.dir)) if args.repo is not None: if args.quiet: push_args = ["--quiet"] diff --git a/deploy/scripts/install-combine.sh b/deploy/scripts/install-combine.sh index 2a969c4f39..ef6d9c1624 100755 --- a/deploy/scripts/install-combine.sh +++ b/deploy/scripts/install-combine.sh @@ -81,9 +81,9 @@ install-kubernetes () { cd ${DEPLOY_DIR}/ansible if [ -d "${DEPLOY_DIR}/airgap-images" ] ; then - ansible-playbook playbook_desktop_setup.yaml -K -e k8s_user=`whoami` -e install_airgap_images=true + ansible-playbook playbook_desktop_setup.yml -K -e k8s_user=`whoami` -e install_airgap_images=true else - ansible-playbook playbook_desktop_setup.yaml -K -e k8s_user=`whoami` + ansible-playbook playbook_desktop_setup.yml -K -e k8s_user=`whoami` fi } diff --git a/deploy/scripts/package_images.py b/deploy/scripts/package_images.py index 66cebe5b6d..0fa690db54 100755 --- a/deploy/scripts/package_images.py +++ b/deploy/scripts/package_images.py @@ -72,16 +72,16 @@ def package_k3s(dest_dir: Path) -> None: def package_images(image_list: List[str], tar_file: Path) -> None: - container_cli = [os.getenv("CONTAINER_CLI", "docker")] - if container_cli[0] == "nerdctl": - container_cli.extend(["--namespace", "k8s.io"]) + container_cli_cmd = [os.getenv("CONTAINER_CLI", "docker")] + if container_cli_cmd[0] == "nerdctl": + container_cli_cmd.extend(["--namespace", "k8s.io"]) # Pull each image for image in image_list: - pull_cmd = container_cli + ["pull", image] + pull_cmd = container_cli_cmd + ["pull", image] logging.debug(f"Running {pull_cmd}") run_cmd(pull_cmd) # Save pulled images into a .tar archive - run_cmd(container_cli + ["save"] + image_list + ["-o", str(tar_file)]) + run_cmd(container_cli_cmd + ["save"] + image_list + ["-o", str(tar_file)]) # Compress the tarball run_cmd(["zstd", "--rm", "--force", "--quiet", str(tar_file)]) diff --git a/deploy/scripts/setup_target.py b/deploy/scripts/setup_target.py index 821905e0f3..0bc0196ec9 100755 --- a/deploy/scripts/setup_target.py +++ b/deploy/scripts/setup_target.py @@ -1,4 +1,5 @@ #!/usr/bin/env python +"""Setup ssh connection between host and target.""" import argparse import os diff --git a/docs/deploy/README.md b/docs/deploy/README.md index bff173ffeb..ccbc089065 100644 --- a/docs/deploy/README.md +++ b/docs/deploy/README.md @@ -6,7 +6,7 @@ This document describes how to deploy _The Combine_ to a target Kubernetes clust - the _host_ machine is the machine that is used to perform the installation. It may be a Linux, Windows, or MacOS machine. -- the _target_ machine is the machine where _The Combine_ is to be installed. It shall be referred to as _\_. +- the _target_ machine is the machine where _The Combine_ is to be installed. - some of the commands described in this document are to be run from within the `git` repository for _The Combine_ that has been cloned on the host machine. This directory shall be referred to as ``. @@ -17,14 +17,15 @@ This document describes how to deploy _The Combine_ to a target Kubernetes clust 1. [Development Environment](#development-environment) 2. [QA/Production Server](#qaproduction-server) 3. [NUC](#nuc) -3. [Install Ubuntu Server](#install-ubuntu-server) -4. [Install Kubernetes Engine](#install-kubernetes-engine) -5. [Setup Kubectl and Environment](#setup-kubectl-and-environment) +3. [Install Ubuntu Server on Target](#install-ubuntu-server-on-target) +4. [Setup Target](#setup-target) +5. [Install Kubernetes Engine on Target](#install-kubernetes-engine-on-target) +6. [Setup Kubectl and Environment](#setup-kubectl-and-environment) 1. [Setup Kubectl](#setup-kubectl) 2. [Setup Environment](#setup-environment) -6. [Install Helm Charts Required by _The Combine_](#install-helm-charts-required-by-the-combine) -7. [Install _The Combine_](#install-the-combine) -8. [Maintenance](#maintenance) +7. [Install Helm Charts Required by _The Combine_](#install-helm-charts-required-by-the-combine) +8. [Install _The Combine_](#install-the-combine) +9. [Maintenance](#maintenance) 1. [Maintenance Scripts for Kubernetes](#maintenance-scripts-for-kubernetes) 2. [Checking Certificate Expiration](#checking-certificate-expiration) 3. [Creating your own Configurations](#creating-your-own-configurations) @@ -64,9 +65,7 @@ separate organization. The characteristics of these systems are: - The QA server has services to login to a private AWS Elastic Container Registry to run private images for _The Combine_. In contrast, the Production server only runs public images. -- On the Production server an additional namespace `combine-cert-proxy`. - -#### Tools Required for a QA/Production Server Installation +- The Production server has an additional namespace `combine-cert-proxy`. The host tools required to install _The Combine_ on a QA or Production server are described in [Install Kubernetes Tools](https://github.com/sillsdev/TheCombine#install-kubernetes-tools) in the project README.md @@ -84,29 +83,27 @@ To install _The Combine_ on one of these systems, follow the steps in _The Combine_ is designed to be installed on an _Intel NUC_ or other mini-computer and to operate where no internet is available. The installation process assumes that a WiFi interface is available as well as a wired Ethernet interface. -#### Tools Required to Install on a NUC - -There are two options for toolsets to install _The Combine_ on a NUC: - -##### Locally Installed Tools +There are two options for installing _The Combine_ on a NUC: local tools and Docker image. -Locally installed tools can be used to install from a Linux, MacOS, or Windows Subsystem for Linux host machine. The -required tools are: +#### Install with Local Tools -- _The Combine_ source tree +Locally installed tools can be used to install from a Linux, MacOS, or Windows Subsystem for Linux (WSL) host machine. +The required tools are: - Clone the repo: +- _The Combine_ source tree; clone the repo: ```bash git clone https://github.com/sillsdev/TheCombine.git ``` -- [Ansible](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html#latest-releases-via-apt-ubuntu) +- [Docker Engine](https://docs.docker.com/engine/install/) or [Docker Desktop](https://docs.docker.com/get-docker/) - Python: See the instructions for installing Python and dependent libraries in the project [README.md](https://github.com/sillsdev/TheCombine#python) -- [Docker Engine](https://docs.docker.com/engine/install/) or [Docker Desktop](https://docs.docker.com/get-docker/) +- Ansible: You can + [install ansible directly](https://docs.ansible.com/ansible/latest/installation_guide/installation_distros.html), or + you can sync `/deploy/requirements.txt` in your Python virtual environment (venv). -##### Install From Docker Image +#### Install from Docker Image You can use a Docker image to install _The Combine_ using a host machine running Windows, Linux, or MacOS. The only tool that is needed is Docker. You can install either [Docker Engine](https://docs.docker.com/engine/install/) or @@ -123,19 +120,30 @@ The Docker image contains all the additional tools that are needed. It also has you do not need to clone _The Combine's_ GitHub repo. The disadvantage of using the Docker image is that any changes to _The Combine_ configuration files will not be preserved. This is not a concern for most users. +##### Open Docker Image Terminal + +To open the Docker image terminal, run: + +```console +docker run -it -v nuc-config:/config public.ecr.aws/thecombine/combine_deploy:latest +``` + +You should see something like `root@18a8f5cf1e86:/#` in the terminal. + #### Steps to Install on a NUC To install _The Combine_ on one of these systems, follow the steps in -- [Install Ubuntu Server](#install-ubuntu-server) -- [Install Kubernetes Engine](#install-kubernetes-engine) +- [Install Ubuntu Server on Target](#install-ubuntu-server-on-target) +- [Setup Target](#setup-target) +- [Install Kubernetes Engine on Target](#install-kubernetes-engine-on-target) - [Setup Kubectl and Environment](#setup-kubectl-and-environment) - [Install Helm Charts Required by _The Combine_](#install-helm-charts-required-by-the-combine) - [Install _The Combine_](#install-the-combine) -## Install Ubuntu Server +## Install Ubuntu Server on Target -Note: In the instructions below, each step indicates whether the step is to be performed on the Host PC (_[Host]_) or +Note: In the instructions below, each step indicates whether the step is to be performed on the host PC (_[Host]_) or the target PC (_[NUC]_). To install the OS on a new target machine, such as, a new NUC, follow these steps: @@ -194,43 +202,53 @@ To install the OS on a new target machine, such as, a new NUC, follow these step sudo reboot ``` -7. _[NUC]_ Lookup IP Address for the NUC: +### Setup values + +The next two steps ([Setup Target](#setup-target) and +[Install Kubernetes Engine on Target](#install-kubernetes-engine-on-target)) use the following variables. + +- `` is the target's ip address. From the NUC, run the command `ip address`. Record the current IP address for + the Ethernet interface; the Ethernet interface starts with `en`, followed by a letter and then a digit, then possibly + another letter and a number (`en[a-z][0-9]([a-z][0-9]+)?])`). + +- `` is the target's server name. This was chosen during profile setup above. If you don't recall which of + nuc1/nuc2/nuc3 was used, run the command `hostname` on the NUC. + +- `` is the username on the target, chosen during profile setup above (default is `sillsdev`). - From the NUC, run the command `ip address`. Record the current IP address for the Ethernet interface; the Ethernet - interface starts with `en`, followed by a letter and then a digit (`en[a-z][0-9]`). +- `` is your current username on the host PC. -8. _[Host]_ Setup your host's connection to the NUC: +## Setup Target - - if using the Docker image open a terminal window and run: +Setup your host's connection to the NUC. This setup is all run from _[Host]_. - ```console - docker run -it -v nuc-config:/config public.ecr.aws/thecombine/combine_deploy:latest - setup_target.py - ``` +If using the Docker image, [open the Docker image terminal](#open-docker-image-terminal) and run: - Where `` is the IP address found in step 7 and `` is the server name specified when Ubuntu was - installed. +```console +python3 ~/scripts/setup_target.py [-t ] +``` - - if using local tools, open a terminal window and run: +If using local tools, open a terminal window and run: - ```console - cd /deploy/scripts - sudo ./setup_target.py -l - ``` +```console +cd /deploy/scripts +sudo ./setup_target.py -l [-t ] +``` - Where `` is the IP address found in step 7, `` is the server name specified when Ubuntu was - installed, and `` is your current username. +The values for ``, ``, ``, and `` are specified in +[Setup Values](#setup-values) above. The `-t ` is not required if the default username (`sillsdev`) was +used on the target. - The `setup_target.py` script will do the following: +The `setup_target.py` script will do the following: - - Add the NUC's IP address to your `/etc/hosts` file - - Generate an SSH key for you - - Copy your SSH public key to the NUC +- Add the NUC's IP address to your `/etc/hosts` file +- Generate an SSH key for you +- Copy your SSH public key to the NUC - Note that if an SSH key exists, you will have the option to overwrite it or skip the key generation. When your SSH - key is copied to the NUC, it will copy the default key, `${HOME}/.ssh/id_rsa.pub`. +Note that if an SSH key exists, you will have the option to overwrite it or skip the key generation. When your SSH key +is copied to the NUC, it will copy the default key, `${HOME}/.ssh/id_rsa.pub`. -## Install Kubernetes Engine +## Install Kubernetes Engine on Target This step does more than just install the Kubernetes engine. It performs the following tasks: @@ -241,33 +259,27 @@ This step does more than just install the Kubernetes engine. It performs the fol - Installs `k3s` Kubernetes engine; and - Sets up a local configuration file for `kubectl` to access the cluster. -To run this step: - -- if using the Docker image open a terminal window and run: +If using the Docker image, [open the Docker image terminal](#open-docker-image-terminal) and run: - ```console - docker run -it -v nuc-config:/config public.ecr.aws/thecombine/combine_deploy:latest - cd ~/ansible - ansible-playbook -i hosts playbook_kube_install.yml --limit -u -K -e link_kubeconfig=true - ``` - -- if using local tools, open a terminal window and run: +```console +cd ~/ansible +ansible-playbook -i hosts.yml playbook_nuc_setup.yml --limit -u -K -e link_kubeconfig=true +``` - ```console - cd /deploy/ansible - ansible-playbook -i hosts playbook_kube_install.yml --limit -u -K - ``` +If using local tools, open a terminal window and run: - Where +```console +cd /deploy/ansible +ansible-playbook -i hosts.yml playbook_nuc_setup.yml --limit -u -K +``` - - `` is the server name specified when Ubuntu was installed, e.g. `nuc1`; and - - `` is the user name specified when Ubuntu was installed, e.g. `sillsdev`. +The values for `` and `` are specified in [Setup Values](#setup-values) above. ## Setup Kubectl and Environment ### Setup Kubectl -If you do not have a `kubectl` configuration file for the `` system, you need to install it. For the NUCs, it is +If you do not have a `kubectl` configuration file for the target system, you need to install it. For the NUCs, it is setup automatically by the Ansible playbook run in the previous section. For the Production or QA server, @@ -285,116 +297,101 @@ The setup scripts require the following environment variables to be set: - AWS_DEFAULT_REGION - AWS_ACCESS_KEY_ID - AWS_SECRET_ACCESS_KEY -- COMBINE_CAPTCHA_SECRET_KEY - COMBINE_JWT_SECRET_KEY -- COMBINE_SMTP_USERNAME -- COMBINE_SMTP_PASSWORD - COMBINE_ADMIN_USERNAME - COMBINE_ADMIN_PASSWORD - COMBINE_ADMIN_EMAIL +The following environment variables are also required for online deployments (QA/Production), but not for offline +deployments (NUC): + +- COMBINE_CAPTCHA_SECRET_KEY +- COMBINE_SMTP_USERNAME +- COMBINE_SMTP_PASSWORD + You may also set the KUBECONFIG environment variable to the location of the `kubectl` configuration file. This is not necessary if the configuration file is at `${HOME}/.kube/config`. If using local tools, these can be set in your `.profile` (Linux or Mac 10.14-), your `.zprofile` (Mac 10.15+), or the _System_ app (Windows). -If using the docker image, +If using the Docker image, -1. Start the `combine_deploy` image: - - ```console - docker run -it -v nuc-config:/config public.ecr.aws/thecombine/combine_deploy:latest - ``` - -2. In the docker image terminal window, run: +1. [Open the Docker image terminal](#open-docker-image-terminal) and run: ```console nano ~/.env ``` -3. Enter the variable definitions using the form: +2. In the nano editor, enter the environment variable definitions using the form: ```config export VARIABLE=VALUE ``` -4. Enter `Ctrl-X` to exit and save the changes. -5. Apply the definitions to the current session by running: + If you need the environment variable values, send a request explaining your need to + [admin@thecombine.app](mailto:admin@thecombine.app). + +3. Enter `Ctrl-X` to exit and save the changes. +4. Apply the definitions to the current session by running: ```console . ~/.env ``` -Once this is done, the environment variables will be set whenever the docker image is started with the volume specified -by the `-v` option. - -If you are a member of the development team and need the environment variable values, send a request explaining your -need to [admin@thecombine.app](mailto:admin@thecombine.app). + Now the environment variables will be set whenever the [Docker image is started](#open-docker-image-terminal). ## Install Helm Charts Required by _The Combine_ This step sets up the NGINX Ingress Controller and the Certificate Manager, [cert-manager.io](https://cert-manager.io/). -- if using the Docker image open a terminal window and run: +If using the Docker image, [open the Docker image terminal](#open-docker-image-terminal) and run: - ```console - docker run -it -v nuc-config:/config public.ecr.aws/thecombine/combine_deploy:latest - setup_cluster.py - ``` +```console +python3 ~/scripts/setup_cluster.py +``` -- if using local tools, open a terminal window and run: +If using local tools, open a terminal window and run: - ```console - cd /deploy/scripts - ./setup_cluster.py - ``` +```console +cd /deploy/scripts +./setup_cluster.py +``` ## Install _The Combine_ This step installs _The Combine_ application itself. -- if using the Docker image - -- open a terminal window and run if the Docker image is not already started: - - ```bash - docker run -it -v nuc-config:/config public.ecr.aws/thecombine/combine_deploy:latest - setup_combine.py --tag --repo public.ecr.aws/thecombine --target - ``` - -- if using local tools, open a terminal window and run: +If using the Docker image, [open the Docker image terminal](#open-docker-image-terminal) and run: - ```console - cd /deploy/scripts - ./setup_combine.py --tag --repo public.ecr.aws/thecombine --target - ``` +```bash +python3 ~/scripts/setup_combine.py --tag --repo public.ecr.aws/thecombine --target +``` -Where: +If using local tools, open a terminal window and run: -- `` is the GitHub tag for the release that should be installed. +```console +cd /deploy/scripts +./setup_combine.py --tag --repo public.ecr.aws/thecombine --target +``` - Note that: +`` is the GitHub tag (starting with 'v') for the release to be installed. This is required, since the default +`--tag` value (`latest`) only works in the _Development Environment_. You can see the version of the latest release on +GitHub (): ![alt text](images/releases.png "The Combine Releases") - - When the `./setup_combine.py` script is used to install _The Combine_ on a NUC, it will install the fonts required - for Arabic, English, French, Portuguese, and Spanish. If additional fonts will be required, call the - `setup_combine.py` commands with the `--langs` option. Use the `--help` option to see the argument syntax. +Notes: - - Starting with version 0.7.25, the tag will start with a ‘v’, even if the release does not (we are transitioning to - the format where release versions start with a ‘v’). - - You can see the version of the latest release on the GitHub page for The Combine, - : ![alt text](images/releases.png "The Combine Releases") - - The help text for `setup_combine.py` says that the `--tag` is optional and its default value is `latest`. That is - used in the _Development Environment_ scenario; there are no images for _The Combine's_ components in - `public.ecr.aws/thecombine` with the tag `latest`. - - The database image contains a script that will initialize the `SemanticDomains` and the `SemanticDomainTree` - collections on _first use_ of the database. The script will not be run automatically when the database is restarted - or updated. If the Semantic Domain data are updated, for example, adding a new language, then the script needs to be - rerun manually: +- When the `./setup_combine.py` script is used to install _The Combine_ on a NUC, it will install the fonts required for + Arabic, English, French, Portuguese, and Spanish. If additional fonts will be required, call the `setup_combine.py` + commands with the `--langs` option. Use the `--help` option to see the argument syntax. +- The database image contains a script that will initialize the `SemanticDomains` and the `SemanticDomainTree` + collections on _first use_ of the database. The script will not be run automatically when the database is restarted or + updated. If the Semantic Domain data are updated, for example, adding a new language, then the script needs to be + rerun manually: - ```console - kubectl -n thecombine exec deployment/database -- /docker-entrypoint-initdb.d/update-semantic-domains.sh - ``` + ```console + kubectl -n thecombine exec deployment/database -- /docker-entrypoint-initdb.d/update-semantic-domains.sh + ``` ## Maintenance @@ -420,44 +417,43 @@ kubectl [--kubeconfig=] [-n thecombine] exec -it deploy Notes: -1. The `--kubeconfig` option is not required if +- The `--kubeconfig` option is not required if - 1. the `KUBECONFIG` environment variable is set to the path of your kubeconfig file, or + 1. the `KUBECONFIG` environment variable is set to the path of your kubeconfig file, or - 2. if your kubeconfig file is located in `${HOME}/.kube/config`. + 2. if your kubeconfig file is located in `${HOME}/.kube/config`. -2. You can see the options for a script by running: +- You can see the options for a script by running: - ```bash - kubectl [--kubeconfig=] [-n thecombine] exec -it deployment/maintenance -- --help - ``` + ```bash + kubectl [--kubeconfig=] [-n thecombine] exec -it deployment/maintenance -- --help + ``` - The only exception is `combine-backup-job.sh` which does not have any script options. + The only exception is `combine-backup-job.sh` which does not have any script options. -3. The `-n thecombine` option is not required if you set `thecombine` as the default namespace for your kubeconfig file - by running: +- The `-n thecombine` option is not required if you set `thecombine` as the default namespace for your kubeconfig file + by running: - ```bash - kubectl config set-context --current --namespace=thecombine - ``` + ```bash + kubectl config set-context --current --namespace=thecombine + ``` ### Checking Certificate Expiration The `check_cert.py` will print the expiration timestamp for _The Combine's_ TLS certificate. -- if using the Docker image, open a terminal window and run: +If using the Docker image, [open the Docker image terminal](#open-docker-image-terminal) and run: - ```console - docker run -it -v nuc-config:/config public.ecr.aws/thecombine/combine_deploy:latest - check_cert.py -n thecombine - ``` +```console +python3 ~/scripts/check_cert.py -n thecombine +``` -- if using local tools, open a terminal window and run: +If using local tools, open a terminal window and run: - ```console - cd /deploy/scripts - ./check_cert.py -n thecombine - ``` +```console +cd /deploy/scripts +./check_cert.py -n thecombine +``` The `-n thecombine` option may be omitted if the default namespace for the kubeconfig file has been set to `thecombine` as described in [Maintenance Scripts for Kubernetes](#maintenance-scripts-for-kubernetes). diff --git a/docs/user_guide/assets/licenses/backend_licenses.txt b/docs/user_guide/assets/licenses/backend_licenses.txt index f70c90b52b..3219857553 100644 --- a/docs/user_guide/assets/licenses/backend_licenses.txt +++ b/docs/user_guide/assets/licenses/backend_licenses.txt @@ -1,3546 +1,830 @@ -#################################################################################################### -Package:AWSSDK.SecurityToken -Version:3.7.100.14 -project URL:https://github.com/aws/aws-sdk-net/ -Description:The AWS Security Token Service (AWS STS) enables you to provide trusted users with temporary credentials that provide controlled access to your AWS resources. -licenseUrl:http://aws.amazon.com/apache2.0/ -license Type:Apache-2.0 - -#################################################################################################### -Package:BouncyCastle.Cryptography -Version:2.4.0 -project URL:https://www.bouncycastle.org/stable/nuget/csharp/website -Description:BouncyCastle.NET is a popular cryptography library for .NET -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:DnsClient -Version:1.6.1 -project URL:http://dnsclient.michaco.net/ -Description:DnsClient.NET is a simple yet very powerful and high performance open source library for the .NET Framework to do DNS lookups -licenseUrl:https://licenses.nuget.org/Apache-2.0 -license Type:Apache-2.0 - -#################################################################################################### -Package:icu.net -Version:2.10.1-beta.5 -project URL:https://github.com/sillsdev/icu-dotnet -Description:icu.net is a C# Wrapper around ICU4C -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:icu.net -Version:2.8.1 -project URL:https://github.com/sillsdev/icu-dotnet -Description:icu.net is a C# Wrapper around ICU4C - -This version of icu.net works with (more or less) any version of ICU4C. - -NOTE: this package contains the managed wrapper part of icu.net. You'll also have to have the unmanaged binaries of ICU installed. On Linux it is recommended to install the official ICU package that comes with the system. On Windows you can install one of the binary nuget packages, e.g. Icu4c.Win. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Icu4c.Win.Full.Lib -Version:62.2.3-beta -project URL:https://github.com/sillsdev/icu -Description:ICU - International Components for Unicode - -This package contains the libraries of a full build of ICU4C for Windows (32- and 64-bit). - -The major version number of the nuget package corresponds to the ICU release. - -For Linux it is recommended to install the official ICU package that comes with the system. -licenseUrl:https://www.nuget.org/packages/Icu4c.Win.Full.Lib/62.2.3-beta/License -license Type:LICENSE.md - -#################################################################################################### -Package:MailKit -Version:4.7.1.1 -project URL:http://www.mimekit.net/ -Description:MailKit is an Open Source cross-platform .NET mail-client library that is based on MimeKit and optimized for mobile devices. - -Features include: -* HTTP, Socks4, Socks4a and Socks5 proxy support. -* SASL Authentication via ANONYMOUS, CRAM-MD5, DIGEST-MD5, LOGIN, NTLM, OAUTHBEARER, PLAIN, SCRAM-SHA-1, SCRAM-SHA-256, SCRAM-SHA-512 and XOAUTH2. -* A fully-cancellable SmtpClient with support for STARTTLS, 8BITMIME, BINARYMIME, ENHANCEDSTATUSCODES, SIZE, DSN, PIPELINING and SMTPUTF8. -* A fully-cancellable Pop3Client with support for STLS, UIDL, APOP, PIPELINING, UTF8, and LANG. -* A fully-cancellable ImapClient with support for ACL, QUOTA, LITERAL+, IDLE, NAMESPACE, ID, CHILDREN, LOGINDISABLED, STARTTLS, MULTIAPPEND, UNSELECT, UIDPLUS, CONDSTORE, ESEARCH, SASL-IR, COMPRESS, WITHIN, ENABLE, QRESYNC, SORT, THREAD, ANNOTATE, LIST-EXTENDED, ESORT, METADATA / METADATA-SERVER, NOTIFY, FILTERS, LIST-STATUS, SORT=DISPLAY, SPECIAL-USE / CREATE-SPECIAL-USE, SEARCH=FUZZY, MOVE, UTF8=ACCEPT / UTF8=ONLY, LITERAL-, APPENDLIMIT, STATUS=SIZE, OBJECTID, REPLACE, SAVEDATE, XLIST, and X-GM-EXT1. -* Client-side sorting and threading of messages (the Ordinal Subject and the Jamie Zawinski threading algorithms are supported). -* Asynchronous versions of all methods that hit the network. -* S/MIME, OpenPGP, DKIM and ARC support via MimeKit. -* Microsoft TNEF support via MimeKit. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.AspNetCore.Authentication.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core common types used by the various authentication components. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Authentication.Core -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core common types used by the various authentication middleware components. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Authentication.JwtBearer -Version:8.0.3 -project URL:https://asp.net/ -Description:ASP.NET Core middleware that enables an application to receive an OpenID Connect bearer token. - -This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/88ec3bc3f37e76fbcc932a25f9f0c1c29fe2b343 -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.AspNetCore.Authorization -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core authorization classes. -Commonly used types: -Microsoft.AspNetCore.Authorization.AllowAnonymousAttribute -Microsoft.AspNetCore.Authorization.AuthorizeAttribute -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Authorization.Policy -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core authorization policy helper classes. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Hosting.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core hosting and startup abstractions for web applications. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Hosting.Server.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core hosting server abstractions for web applications. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Http -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core default HTTP feature implementations. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Http.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core HTTP object model for HTTP requests and responses and also common extension methods for registering middleware in an IApplicationBuilder. -Commonly used types: -Microsoft.AspNetCore.Builder.IApplicationBuilder -Microsoft.AspNetCore.Http.HttpContext -Microsoft.AspNetCore.Http.HttpRequest -Microsoft.AspNetCore.Http.HttpResponse -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Http.Extensions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core common extension methods for HTTP abstractions, HTTP headers, HTTP request/response, and session state. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Http.Features -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core HTTP feature interface definitions. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Mvc.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core MVC abstractions and interfaces for action invocation and dispatching, authorization, action filters, formatters, model binding, routing, validation, and more. -Commonly used types: -Microsoft.AspNetCore.Mvc.IActionResult -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Mvc.ApiExplorer -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core MVC API explorer functionality for discovering metadata such as the list of controllers and actions, and their URLs and allowed HTTP methods. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Mvc.Core -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core MVC core components. Contains common action result types, attribute routing, application model conventions, API explorer, application parts, filters, formatters, model binding, and more. -Commonly used types: -Microsoft.AspNetCore.Mvc.AreaAttribute -Microsoft.AspNetCore.Mvc.BindAttribute -Microsoft.AspNetCore.Mvc.ControllerBase -Microsoft.AspNetCore.Mvc.FromBodyAttribute -Microsoft.AspNetCore.Mvc.FromFormAttribute -Microsoft.AspNetCore.Mvc.RequireHttpsAttribute -Microsoft.AspNetCore.Mvc.RouteAttribute -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Mvc.DataAnnotations -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core MVC metadata and validation system using System.ComponentModel.DataAnnotations. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.ResponseCaching.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core response caching middleware abstractions and feature interface definitions. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Routing -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core middleware for routing requests to application logic and for generating links. -Commonly used types: -Microsoft.AspNetCore.Routing.Route -Microsoft.AspNetCore.Routing.RouteCollection -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.Routing.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core abstractions for routing requests to application logic and for generating links. -Commonly used types: -Microsoft.AspNetCore.Routing.IRouter -Microsoft.AspNetCore.Routing.RouteData -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.StaticFiles -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core static files middleware. Includes middleware for serving static files, directory browsing, and default files. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.AspNetCore.WebUtilities -Version:2.1.0 -project URL:https://asp.net/ -Description:ASP.NET Core utilities, such as for working with forms, multipart messages, and query strings. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Bcl.AsyncInterfaces -Version:1.1.0 -project URL:https://github.com/dotnet/corefx -Description:Provides the IAsyncEnumerable and IAsyncDisposable interfaces and helper types for .NET Standard 2.0. This package is not required starting with .NET Standard 2.1 and .NET Core 3.0. - -Commonly Used Types: -System.IAsyncDisposable -System.Collections.Generic.IAsyncEnumerable -System.Collections.Generic.IAsyncEnumerator - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.Bcl.AsyncInterfaces -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides the IAsyncEnumerable and IAsyncDisposable interfaces and helper types for .NET Standard 2.0. This package is not required starting with .NET Standard 2.1 and .NET Core 3.0. - -Commonly Used Types: -System.IAsyncDisposable -System.Collections.Generic.IAsyncEnumerable -System.Collections.Generic.IAsyncEnumerator - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.Bcl.AsyncInterfaces -Version:1.0.0 -project URL:https://github.com/dotnet/corefx -Description:Provides the IAsyncEnumerable and IAsyncDisposable interfaces and helper types for .NET Standard 2.0. This package is not required starting with .NET Standard 2.1 and .NET Core 3.0. - -Commonly Used Types: -System.IAsyncDisposable -System.Collections.Generic.IAsyncEnumerable -System.Collections.Generic.IAsyncEnumerator - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:Microsoft.CSharp -Version:4.7.0 -project URL:https://github.com/dotnet/corefx -Description:Provides support for compilation and code generation, including dynamic, using the C# language. - -Commonly Used Types: -Microsoft.CSharp.RuntimeBinder.Binder -Microsoft.CSharp.RuntimeBinder.RuntimeBinderException -Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo -Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags -Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.CSharp -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides support for compilation and code generation, including dynamic, using the C# language. - -Commonly Used Types: -Microsoft.CSharp.RuntimeBinder.Binder -Microsoft.CSharp.RuntimeBinder.RuntimeBinderException -Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo -Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags -Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Microsoft.DotNet.PlatformAbstractions -Version:2.1.0 -project URL:https://dot.net/ -Description:Abstractions for making code that uses file system and environment testable. -licenseUrl:https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT -license Type: - -#################################################################################################### -Package:Microsoft.DotNet.PlatformAbstractions -Version:2.0.4 -project URL:https://dot.net/ -Description:Abstractions for making code that uses file system and environment testable. -licenseUrl:https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT -license Type: - -#################################################################################################### -Package:Microsoft.Extensions.ApiDescription.Server -Version:6.0.5 -project URL:https://asp.net/ -Description:MSBuild tasks and targets for build-time Swagger and OpenApi document generation - -This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/e5f183b656a0e8bc087108130a5a9b54ae94494e -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.Extensions.Configuration.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:Abstractions of key-value pair based configuration. -Commonly used types: -Microsoft.Extensions.Configuration.IConfiguration -Microsoft.Extensions.Configuration.IConfigurationBuilder -Microsoft.Extensions.Configuration.IConfigurationProvider -Microsoft.Extensions.Configuration.IConfigurationRoot -Microsoft.Extensions.Configuration.IConfigurationSection -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.DependencyInjection -Version:2.1.0 -project URL:https://asp.net/ -Description:Default implementation of dependency injection for Microsoft.Extensions.DependencyInjection. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.DependencyInjection.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:Abstractions for dependency injection. -Commonly used types: -Microsoft.Extensions.DependencyInjection.IServiceCollection -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.DependencyModel -Version:2.1.0 -project URL:https://dot.net/ -Description:Abstractions for reading `.deps` files. -licenseUrl:https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT -license Type: - -#################################################################################################### -Package:Microsoft.Extensions.DependencyModel -Version:2.0.4 -project URL:https://dot.net/ -Description:Abstractions for reading `.deps` files. -licenseUrl:https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT -license Type: - -#################################################################################################### -Package:Microsoft.Extensions.FileProviders.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:Abstractions of files and directories. -Commonly used types: -Microsoft.Extensions.FileProviders.IDirectoryContents -Microsoft.Extensions.FileProviders.IFileInfo -Microsoft.Extensions.FileProviders.IFileProvider -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.FileProviders.Embedded -Version:2.1.0 -project URL:https://asp.net/ -Description:File provider for files in embedded resources for Microsoft.Extensions.FileProviders. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.Hosting.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:.NET Core hosting and startup abstractions for applications. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.Localization -Version:2.1.0 -project URL:https://asp.net/ -Description:Application localization services and default implementation based on ResourceManager to load localized assembly resources. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.Localization.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:Abstractions of application localization services. -Commonly used types: -Microsoft.Extensions.Localization.IStringLocalizer -Microsoft.Extensions.Localization.IStringLocalizer -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.Logging.Abstractions -Version:2.0.0 -project URL:https://asp.net/ -Description:Logging abstractions for Microsoft.Extensions.Logging. -Commonly used types: -Microsoft.Extensions.Logging.ILogger -Microsoft.Extensions.Logging.ILoggerFactory -Microsoft.Extensions.Logging.ILogger -Microsoft.Extensions.Logging.LogLevel -Microsoft.Extensions.Logging.Logger -Microsoft.Extensions.Logging.LoggerMessage -Microsoft.Extensions.Logging.Abstractions.NullLogger -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.Logging.Abstractions -Version:2.1.0 -project URL:https://asp.net/ -Description:Logging abstractions for Microsoft.Extensions.Logging. -Commonly used types: -Microsoft.Extensions.Logging.ILogger -Microsoft.Extensions.Logging.ILoggerFactory -Microsoft.Extensions.Logging.ILogger -Microsoft.Extensions.Logging.LogLevel -Microsoft.Extensions.Logging.Logger -Microsoft.Extensions.Logging.LoggerMessage -Microsoft.Extensions.Logging.Abstractions.NullLogger -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.ObjectPool -Version:2.1.0 -project URL:https://asp.net/ -Description:A simple object pool implementation. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.Options -Version:2.1.0 -project URL:https://asp.net/ -Description:Provides a strongly typed way of specifying and accessing settings using dependency injection. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.Primitives -Version:2.1.0 -project URL:https://asp.net/ -Description:Primitives shared by framework extensions. Commonly used types include: -Microsoft.Extensions.Primitives.IChangeToken -Microsoft.Extensions.Primitives.StringValues -Microsoft.Extensions.Primitives.StringSegment -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.Extensions.WebEncoders -Version:2.1.0 -project URL:https://asp.net/ -Description:Contains registration and configuration APIs to add the core framework encoders to a dependency injection container. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.IdentityModel.Abstractions -Version:7.1.2 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:A package containing thin abstractions for Microsoft.IdentityModel. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.IdentityModel.Abstractions -Version:7.5.1 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:A package containing thin abstractions for Microsoft.IdentityModel. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.IdentityModel.JsonWebTokens -Version:7.5.1 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:Includes types that provide support for creating, serializing and validating JSON Web Tokens. This is a newer, faster version of System.IdentityModel.Tokens.Jwt that has additional functionality. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.IdentityModel.Logging -Version:7.1.2 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:Includes Event Source based logging support. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.IdentityModel.Logging -Version:7.5.1 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:Includes Event Source based logging support. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.IdentityModel.Protocols -Version:7.1.2 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:Provides base protocol support for OpenIdConnect and WsFederation. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.IdentityModel.Protocols.OpenIdConnect -Version:7.1.2 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:Includes types that provide support for OpenIdConnect protocol. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.IdentityModel.Tokens -Version:7.5.1 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:Includes types that provide support for SecurityTokens, Cryptographic operations: Signing, Verifying Signatures, Encryption. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.Net.Http.Headers -Version:2.1.0 -project URL:https://asp.net/ -Description:HTTP header parser implementations. -licenseUrl:https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt -license Type:Apache-2.0 - -#################################################################################################### -Package:Microsoft.NETCore.Platforms -Version:1.1.1 -project URL:https://dot.net/ -Description:Provides runtime information required to resolve target framework, platform, and runtime specific implementations of .NETCore packages. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Microsoft.NETCore.Platforms -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides runtime information required to resolve target framework, platform, and runtime specific implementations of .NETCore packages. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.NETCore.Platforms -Version:1.0.1 -project URL:https://dot.net/ -Description:Provides runtime information required to resolve target framework, platform, and runtime specific implementations of .NETCore packages. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Microsoft.NETCore.Targets -Version:1.1.0 -project URL:https://dot.net/ -Description:Provides supporting infrastructure for portable projects: support identifiers that define framework and runtime for support targets and packages that reference the minimum supported package versions when targeting these. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Microsoft.NETCore.Targets -Version:1.0.1 -project URL:https://dot.net/ -Description:Provides supporting infrastructure for portable projects: support identifiers that define framework and runtime for support targets and packages that reference the minimum supported package versions when targeting these. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Microsoft.OpenApi -Version:1.6.14 -project URL:https://github.com/Microsoft/OpenAPI.NET -Description:.NET models with JSON and YAML writers for OpenAPI specification -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.Win32.Primitives -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common types for Win32-based libraries. - -Commonly Used Types: -System.ComponentModel.Win32Exception - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Microsoft.Win32.Registry -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides support for accessing and modifying the Windows Registry. - -Commonly Used Types: -Microsoft.Win32.RegistryKey -Microsoft.Win32.Registry -Microsoft.Win32.RegistryValueKind -Microsoft.Win32.RegistryHive -Microsoft.Win32.RegistryView - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Microsoft.Win32.SystemEvents -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides access to Windows system event notifications. - -Commonly Used Types: -Microsoft.Win32.SystemEvents -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:MimeKit -Version:4.7.1 -project URL:https://www.mimekit.net/ -Description:MimeKit is an Open Source library for creating and parsing MIME, S/MIME and PGP messages on desktop and mobile platforms. It also supports parsing of Unix mbox files. - - Unlike any other .NET MIME parser, MimeKit's parser does not need to parse string input nor does it use a TextReader. Instead, it parses raw byte streams, thus allowing it to better support undeclared 8bit text in headers as well as message bodies. It also means that MimeKit's parser is significantly faster than other .NET MIME parsers. - - MimeKit's parser also uses a real tokenizer when parsing the headers rather than regex or string.Split() like most other .NET MIME parsers. This means that MimeKit is much more RFC-compliant than any other .NET MIME parser out there, including the commercial implementations. - - In addition to having a far superior parser implementation, MimeKit's object tree is not a derivative of System.Net.Mail objects and thus does not suffer from System.Net.Mail's limitations. - - API documentation can be found on the web at http://www.mimekit.net/docs - - For those that need SMTP, POP3 or IMAP support, check out https://github.com/jstedfast/MailKit -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:MongoDB.Bson -Version:2.28.0 -project URL:https://www.mongodb.com/docs/drivers/csharp/ -Description:MongoDB's Official Bson Library. -licenseUrl:https://licenses.nuget.org/Apache-2.0 -license Type:Apache-2.0 - -#################################################################################################### -Package:MongoDB.Driver -Version:2.28.0 -project URL:https://www.mongodb.com/docs/drivers/csharp/ -Description:Official .NET driver for MongoDB. -licenseUrl:https://licenses.nuget.org/Apache-2.0 -license Type:Apache-2.0 - -#################################################################################################### -Package:MongoDB.Driver.Core -Version:2.28.0 -project URL:https://www.mongodb.com/docs/drivers/csharp/ -Description:Core Component of the Official MongoDB .NET Driver. -licenseUrl:https://licenses.nuget.org/Apache-2.0 -license Type:Apache-2.0 - -#################################################################################################### -Package:MongoDB.Libmongocrypt -Version:1.11.0 -project URL:http://www.mongodb.org/display/DOCS/CSharp+Language+Center -Description:Libmongocrypt wrapper for the .NET driver. -licenseUrl:https://www.nuget.org/packages/MongoDB.Libmongocrypt/1.11.0/License -license Type:License.txt - -#################################################################################################### -Package:Mono.Unix -Version:7.1.0-final.1.21458.1 -project URL:https://github.com/mono/mono.posix -Description:Provides functionality for managed code to access Posix/Unix features not accessible via BCL -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:NDesk.DBus -Version:0.15.0 -project URL:https://bitbucket.org/hindlemail/dbus-sharp -Description:D-Bus IPC protocol library and CLR binding (also known as dbus-sharp) -licenseUrl:https://bitbucket.org/hindlemail/dbus-sharp/src/tip/COPYING -license Type: - -#################################################################################################### -Package:NETStandard.Library -Version:1.6.1 -project URL:https://dot.net/ -Description:A set of standard .NET APIs that are prescribed to be used and supported together. This includes all of the APIs in the NETStandard.Platform package plus additional libraries that are core to .NET but built on top of NETStandard.Platform. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Newtonsoft.Json -Version:9.0.1 -project URL:http://www.newtonsoft.com/json -Description:Json.NET is a popular high-performance JSON framework for .NET -licenseUrl:https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md -license Type:MIT - -#################################################################################################### -Package:Newtonsoft.Json -Version:13.0.2 -project URL:https://www.newtonsoft.com/json -Description:Json.NET is a popular high-performance JSON framework for .NET -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:RelaxNG -Version:3.2.3 -project URL:https://github.com/mono/mono/tree/master/mcs/class/Commons.Xml.Relaxng -Description:RelaxngValidatingReader is an implementation to validate XML with RELAX NG - grammar. You can use full standard grammar components with it. - - Currently it supports both xml syntax and compact syntax. -licenseUrl:http://www.mono-project.com/FAQ:_Licensing -license Type: - -#################################################################################################### -Package:relaxngDatatype -Version:1.0.0.39 -project URL:https://github.com/josephmyers/relaxng-tenuto -Description:RELAX NG datatypes for .NET -licenseUrl: -license Type: - -#################################################################################################### -Package:runtime.native.System -Version:4.3.0 -project URL:https://dot.net/ -Description:Internal implementation package not meant for direct consumption. Please do not reference directly. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:runtime.native.System -Version:4.0.0 -project URL:https://dot.net/ -Description:Internal implementation package not meant for direct consumption. Please do not reference directly. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:runtime.native.System.IO.Compression -Version:4.3.0 -project URL:https://dot.net/ -Description:Internal implementation package not meant for direct consumption. Please do not reference directly. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:runtime.native.System.Net.Http -Version:4.3.0 -project URL:https://dot.net/ -Description:Internal implementation package not meant for direct consumption. Please do not reference directly. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:runtime.native.System.Security.Cryptography.Apple -Version:4.3.0 -project URL:https://dot.net/ -Description:Internal implementation package not meant for direct consumption. Please do not reference directly. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:runtime.native.System.Security.Cryptography.Apple -Version:4.3.1 -project URL:https://dot.net/ -Description:Internal implementation package not meant for direct consumption. Please do not reference directly. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:runtime.native.System.Security.Cryptography.OpenSsl -Version:4.3.2 -project URL:https://dot.net/ -Description:Internal implementation package not meant for direct consumption. Please do not reference directly. -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:SharpCompress -Version:0.30.1 -project URL:https://github.com/adamhathcock/sharpcompress -Description:SharpCompress is a compression library for NET Standard 2.0/2.1/NET 5.0 that can unrar, decompress 7zip, decompress xz, zip/unzip, tar/untar lzip/unlzip, bzip2/unbzip2 and gzip/ungzip with forward-only reading and file random access APIs. Write support for zip/tar/bzip2/gzip is implemented. -licenseUrl: -license Type: - -#################################################################################################### -Package:SIL.Core -Version:14.1.1 -project URL:https://github.com/sillsdev/libpalaso -Description:SIL.Core provides general utilities for language software. It is the base library for all Palaso libraries. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:SIL.Core.Desktop -Version:14.1.1 -project URL:https://github.com/sillsdev/libpalaso -Description:SIL.Core.Desktop provides general UI related utilities for language software. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:SIL.DictionaryServices -Version:14.1.1 -project URL:https://github.com/sillsdev/libpalaso -Description:SIL.DictionaryServices contains classes for defining a simple lexical model that can be used across applications. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:SIL.Lift -Version:14.1.1 -project URL:https://github.com/sillsdev/libpalaso -Description:SIL.Lift contains classes for reading and writing Lexicon Interchange FormaT (LIFT) data. This assembly currently supports LIFT 0.13. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:SIL.WritingSystems -Version:14.1.1 -project URL:https://github.com/sillsdev/libpalaso -Description:SIL.WritingSystems contains classes for managing and persisting writing systems using the Locale Data Markup Language (LDML) format. This library also contains classes for processing IETF (BCP-47) language tags and accessing the SIL Locale Data Repository (SLDR). -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Snappier -Version:1.0.0 -project URL: -Description:A near-C++ performance implementation of the Snappy compression algorithm for .NET. Snappier is ported to C# directly - from the official C++ implementation, with the addition of support for the framed stream format. - - By avoiding P/Invoke, Snappier is fully cross-platform and works on both Linux and Windows and against any CPU supported - by .NET Core. However, Snappier performs best in .NET Core 3.0 and later on little-endian x86/64 processors with the - help of System.Runtime.Instrinsics. -licenseUrl:https://www.nuget.org/packages/Snappier/1.0.0/License -license Type:COPYING.txt - -#################################################################################################### -Package:Spart -Version:1.0.0 -project URL:https://github.com/sillsdev/spart -Description:The Spart library is an object oriented recursive descent parser generator framework implemented in C#. -licenseUrl:https://opensource.org/licenses/Zlib -license Type: - -#################################################################################################### -Package:Swashbuckle.AspNetCore -Version:6.7.3 -project URL:https://github.com/domaindrivendev/Swashbuckle.AspNetCore -Description:Swagger tools for documenting APIs built on ASP.NET Core -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Swashbuckle.AspNetCore.Swagger -Version:6.7.3 -project URL:https://github.com/domaindrivendev/Swashbuckle.AspNetCore -Description:Middleware to expose Swagger JSON endpoints from APIs built on ASP.NET Core -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Swashbuckle.AspNetCore.SwaggerGen -Version:6.7.3 -project URL:https://github.com/domaindrivendev/Swashbuckle.AspNetCore -Description:Swagger Generator for APIs built on ASP.NET Core -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:Swashbuckle.AspNetCore.SwaggerUI -Version:6.7.3 -project URL:https://github.com/domaindrivendev/Swashbuckle.AspNetCore -Description:Middleware to expose an embedded version of the swagger-ui from an ASP.NET Core application -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.AppContext -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.AppContext class, which allows access to the BaseDirectory property and other application specific data. - -Commonly Used Types: -System.AppContext - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.AppContext -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides the System.AppContext class, which allows access to the BaseDirectory property and other application specific data. - -Commonly Used Types: -System.AppContext - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Buffers -Version:4.5.1 -project URL:https://dot.net/ -Description:Provides resource pooling of any type for performance-critical applications that allocate and deallocate objects frequently. - -Commonly Used Types: -System.Buffers.ArrayPool - -7601f4f6225089ffb291dc7d58293c7bbf5c5d4f -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Collections -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that define generic collections, which allow developers to create strongly typed collections that provide better type safety and performance than non-generic strongly typed collections. - -Commonly Used Types: -System.Collections.Generic.List -System.Collections.Generic.Dictionary -System.Collections.Generic.Queue -System.Collections.Generic.Stack -System.Collections.Generic.HashSet -System.Collections.Generic.LinkedList -System.Collections.Generic.EqualityComparer -System.Collections.Generic.Comparer -System.Collections.Generic.SortedDictionary - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Collections -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides classes that define generic collections, which allow developers to create strongly typed collections that provide better type safety and performance than non-generic strongly typed collections. - -Commonly Used Types: -System.Collections.Generic.List -System.Collections.Generic.Dictionary -System.Collections.Generic.Queue -System.Collections.Generic.Stack -System.Collections.Generic.HashSet -System.Collections.Generic.LinkedList -System.Collections.Generic.EqualityComparer -System.Collections.Generic.Comparer -System.Collections.Generic.SortedDictionary - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Collections.Concurrent -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides several thread-safe collection classes that should be used in place of the corresponding types in the System.Collections.NonGeneric and System.Collections packages whenever multiple threads are accessing the collection concurrently. - -Commonly Used Types: -System.Collections.Concurrent.ConcurrentDictionary -System.Collections.Concurrent.ConcurrentQueue -System.Collections.Concurrent.ConcurrentBag -System.Collections.Concurrent.BlockingCollection -System.Collections.Concurrent.ConcurrentStack - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Collections.NonGeneric -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that define older non-generic collections of objects, such as lists, queues, hash tables and dictionaries. Developers should prefer the generic collections in the System.Collections package. - -Commonly Used Types: -System.Collections.ArrayList -System.Collections.Hashtable -System.Collections.CollectionBase -System.Collections.ReadOnlyCollectionBase -System.Collections.Stack -System.Collections.SortedList -System.Collections.DictionaryBase -System.Collections.Queue -System.Collections.Comparer -System.Collections.CaseInsensitiveComparer - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Collections.Specialized -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides older specialized non-generic collections; for example, a linked list dictionary, a bit vector, and collections that contain only strings. - -Commonly Used Types: -System.Collections.Specialized.NameValueCollection -System.Collections.Specialized.NameObjectCollectionBase -System.Collections.Specialized.StringCollection -System.Collections.Specialized.IOrderedDictionary -System.Collections.Specialized.HybridDictionary -System.Collections.Specialized.OrderedDictionary -System.Collections.Specialized.ListDictionary -System.Collections.Specialized.StringDictionary -System.Collections.Specialized.BitVector32 - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.ComponentModel -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides interfaces for the editing and change tracking of objects used as data sources. - -Commonly Used Types: -System.ComponentModel.CancelEventArgs -System.IServiceProvider -System.ComponentModel.IEditableObject -System.ComponentModel.IChangeTracking -System.ComponentModel.IRevertibleChangeTracking - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.ComponentModel.Annotations -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides attributes that are used to define metadata for objects used as data sources. - -Commonly Used Types: -System.ComponentModel.DataAnnotations.ValidationResult -System.ComponentModel.DataAnnotations.IValidatableObject -System.ComponentModel.DataAnnotations.ValidationAttribute -System.ComponentModel.DataAnnotations.RequiredAttribute -System.ComponentModel.DataAnnotations.StringLengthAttribute -System.ComponentModel.DataAnnotations.DisplayAttribute -System.ComponentModel.DataAnnotations.RegularExpressionAttribute -System.ComponentModel.DataAnnotations.DataTypeAttribute -System.ComponentModel.DataAnnotations.RangeAttribute -System.ComponentModel.DataAnnotations.KeyAttribute - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.ComponentModel.Primitives -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides interfaces that are used to implement the run-time and design-time behavior of components. - -Commonly Used Types: -System.ComponentModel.IComponent -System.ComponentModel.IContainer -System.ComponentModel.ISite -System.ComponentModel.ComponentCollection - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.ComponentModel.TypeConverter -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.ComponentModel.TypeConverter class, which represents a unified way of converting types of values to other types. - -Commonly Used Types: -System.ComponentModel.TypeConverter -System.ComponentModel.TypeConverterAttribute -System.ComponentModel.PropertyDescriptor -System.ComponentModel.StringConverter -System.ComponentModel.ITypeDescriptorContext -System.ComponentModel.EnumConverter -System.ComponentModel.TypeDescriptor -System.ComponentModel.Int32Converter -System.ComponentModel.BooleanConverter -System.ComponentModel.DoubleConverter - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Configuration.ConfigurationManager -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides types that support using configuration files. - -Commonly Used Types: -System.Configuration.Configuration -System.Configuration.ConfigurationManager -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Console -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.Console class, which represents the standard input, output and error streams for console applications. - -Commonly Used Types: -System.Console -System.ConsoleColor - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Data.DataSetExtensions -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides extensions to form LINQ expressions and method queries against DataTable objects. - -Commonly Used Types: -System.Data.DataRowComparer -System.Data.DataRowExtensions -System.Data.DataTableExtensions -System.Data.EnumerableRowCollection -System.Data.EnumerableRowCollectionExtensions -System.Data.OrderedEnumerableRowCollection -System.Data.TypedTableBase -System.Data.TypedTableBaseExtensions - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Diagnostics.Contracts -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides static classes for representing program contracts such as preconditions, postconditions, and invariants. - -Commonly Used Types: -System.Diagnostics.Contracts.Contract -System.Diagnostics.Contracts.ContractClassAttribute -System.Diagnostics.Contracts.ContractClassForAttribute -System.Diagnostics.Contracts.ContractFailureKind -System.Runtime.CompilerServices.ContractHelper -System.Diagnostics.Contracts.ContractInvariantMethodAttribute -System.Diagnostics.Contracts.PureAttribute -System.Diagnostics.Contracts.ContractArgumentValidatorAttribute -System.Diagnostics.Contracts.ContractVerificationAttribute -System.Diagnostics.Contracts.ContractOptionAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.Contracts -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides static classes for representing program contracts such as preconditions, postconditions, and invariants. - -Commonly Used Types: -System.Diagnostics.Contracts.Contract -System.Diagnostics.Contracts.ContractClassAttribute -System.Diagnostics.Contracts.ContractClassForAttribute -System.Diagnostics.Contracts.ContractFailureKind -System.Runtime.CompilerServices.ContractHelper -System.Diagnostics.Contracts.ContractInvariantMethodAttribute -System.Diagnostics.Contracts.PureAttribute -System.Diagnostics.Contracts.ContractArgumentValidatorAttribute -System.Diagnostics.Contracts.ContractVerificationAttribute -System.Diagnostics.Contracts.ContractOptionAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.Debug -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes and attributes that allows basic interaction with a debugger. - -Commonly Used Types: -System.Diagnostics.Debug -System.Diagnostics.DebuggerStepThroughAttribute -System.Diagnostics.Debugger -System.Diagnostics.DebuggerDisplayAttribute -System.Diagnostics.DebuggerBrowsableAttribute -System.Diagnostics.DebuggerBrowsableState -System.Diagnostics.DebuggerHiddenAttribute -System.Diagnostics.DebuggerNonUserCodeAttribute -System.Diagnostics.DebuggerTypeProxyAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.Debug -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides classes and attributes that allows basic interaction with a debugger. - -Commonly Used Types: -System.Diagnostics.Debug -System.Diagnostics.DebuggerStepThroughAttribute -System.Diagnostics.Debugger -System.Diagnostics.DebuggerDisplayAttribute -System.Diagnostics.DebuggerBrowsableAttribute -System.Diagnostics.DebuggerBrowsableState -System.Diagnostics.DebuggerHiddenAttribute -System.Diagnostics.DebuggerNonUserCodeAttribute -System.Diagnostics.DebuggerTypeProxyAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.DiagnosticSource -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides Classes that allow you to decouple code logging rich (unserializable) diagnostics/telemetry (e.g. framework) from code that consumes it (e.g. tools) - -Commonly Used Types: -System.Diagnostics.DiagnosticListener -System.Diagnostics.DiagnosticSource -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.DiagnosticSource -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides Classes that allow you to decouple code logging rich (unserializable) diagnostics/telemetry (e.g. framework) from code that consumes it (e.g. tools) - -Commonly Used Types: -System.Diagnostics.DiagnosticListener -System.Diagnostics.DiagnosticSource - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Diagnostics.Tools -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides attributes, such as GeneratedCodeAttribute and SuppresMessageAttribute, that are emitted or consumed by analysis tools. - -Commonly Used Types: -System.CodeDom.Compiler.GeneratedCodeAttribute -System.Diagnostics.CodeAnalysis.SuppressMessageAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.Tools -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides attributes, such as GeneratedCodeAttribute and SuppresMessageAttribute, that are emitted or consumed by analysis tools. - -Commonly Used Types: -System.CodeDom.Compiler.GeneratedCodeAttribute -System.Diagnostics.CodeAnalysis.SuppressMessageAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.TraceSource -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that help you trace the execution of your code. Developers should prefer the classes in the ETW-based System.Diagnostics.Tracing package. - -Commonly Used Types: -System.Diagnostics.TraceListener -System.Diagnostics.TraceLevel -System.Diagnostics.TraceSource -System.Diagnostics.TraceEventType -System.Diagnostics.DefaultTraceListener -System.Diagnostics.Trace - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Diagnostics.Tracing -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides class that enable you to create high performance tracing events to be captured by event tracing for Windows (ETW). - -Commonly Used Types: -System.Diagnostics.Tracing.EventSource -System.Diagnostics.Tracing.EventListener -System.Diagnostics.Tracing.EventLevel -System.Diagnostics.Tracing.EventKeywords -System.Diagnostics.Tracing.EventWrittenEventArgs -System.Diagnostics.Tracing.EventAttribute -System.Diagnostics.Tracing.EventSourceAttribute -System.Diagnostics.Tracing.NonEventAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Drawing.Common -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides access to GDI+ graphics functionality. - -Commonly Used Types: -System.Drawing.Bitmap -System.Drawing.BitmapData -System.Drawing.Brush -System.Drawing.Font -System.Drawing.Graphics -System.Drawing.Icon - -Unix support is disabled by default. See https://aka.ms/systemdrawingnonwindows for more information. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Dynamic.Runtime -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes and interfaces that support the Dynamic Language Runtime (DLR). - -Commonly Used Types: -System.Runtime.CompilerServices.CallSite -System.Runtime.CompilerServices.CallSite -System.Dynamic.IDynamicMetaObjectProvider -System.Dynamic.DynamicMetaObject -System.Dynamic.SetMemberBinder -System.Dynamic.GetMemberBinder -System.Dynamic.ExpandoObject -System.Dynamic.DynamicObject -System.Runtime.CompilerServices.CallSiteBinder -System.Runtime.CompilerServices.ConditionalWeakTable - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Dynamic.Runtime -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides classes and interfaces that support the Dynamic Language Runtime (DLR). - -Commonly Used Types: -System.Runtime.CompilerServices.CallSite -System.Runtime.CompilerServices.CallSite -System.Dynamic.IDynamicMetaObjectProvider -System.Dynamic.DynamicMetaObject -System.Dynamic.SetMemberBinder -System.Dynamic.GetMemberBinder -System.Dynamic.ExpandoObject -System.Dynamic.DynamicObject -System.Runtime.CompilerServices.CallSiteBinder -System.Runtime.CompilerServices.ConditionalWeakTable - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Formats.Asn1 -Version:8.0.1 -project URL:https://dot.net/ -Description:Provides classes that can read and write the ASN.1 BER, CER, and DER data formats. - -Commonly Used Types: -System.Formats.Asn1.AsnReader -System.Formats.Asn1.AsnWriter -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Globalization -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that define culture-related information, including language, country/region, calendars in use, format patterns for dates, currency, and numbers, and sort order for strings. - -Commonly Used Types: -System.Globalization.DateTimeFormatInfo -System.Globalization.CultureInfo -System.Globalization.NumberFormatInfo -System.Globalization.CalendarWeekRule -System.Globalization.TextInfo -System.Globalization.Calendar -System.Globalization.CompareInfo -System.Globalization.CompareOptions -System.Globalization.UnicodeCategory - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Globalization -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides classes that define culture-related information, including language, country/region, calendars in use, format patterns for dates, currency, and numbers, and sort order for strings. - -Commonly Used Types: -System.Globalization.DateTimeFormatInfo -System.Globalization.CultureInfo -System.Globalization.NumberFormatInfo -System.Globalization.CalendarWeekRule -System.Globalization.TextInfo -System.Globalization.Calendar -System.Globalization.CompareInfo -System.Globalization.CompareOptions -System.Globalization.UnicodeCategory - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Globalization.Calendars -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes for performing date calculations using specific calendars, including the Gregorian, Julian, Hijri and Korean calendars. - -Commonly Used Types: -System.Globalization.HijriCalendar -System.Globalization.GregorianCalendar -System.Globalization.HebrewCalendar -System.Globalization.KoreanCalendar -System.Globalization.ThaiBuddhistCalendar -System.Globalization.TaiwanCalendar -System.Globalization.JapaneseCalendar -System.Globalization.GregorianCalendarTypes -System.Globalization.PersianCalendar -System.Globalization.UmAlQuraCalendar - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Globalization.Extensions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes for performing Unicode string normalization, culture-specific string comparisons and support the use of non-ASCII characters for Internet domain names. - -Commonly Used Types: -System.StringNormalizationExtensions -System.Text.NormalizationForm -System.Globalization.IdnMapping - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IdentityModel.Tokens.Jwt -Version:7.5.1 -project URL:https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet -Description:Includes types that provide support for creating, serializing and validating JSON Web Tokens. As of IdentityModel 7x, this is a legacy tool that should be replaced with Microsoft.IdentityModel.JsonWebTokens. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.IO -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides base input and output (I/O) types, including System.IO.Stream, System.IO.StreamReader and System.IO.StreamWriter, that allow reading and writing to data streams - -Commonly Used Types: -System.IO.Stream -System.IO.EndOfStreamException -System.IO.MemoryStream -System.IO.StreamReader -System.IO.StreamWriter -System.IO.StringWriter -System.IO.TextWriter -System.IO.TextReader - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IO -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides base input and output (I/O) types, including System.IO.Stream, System.IO.StreamReader and System.IO.StreamWriter, that allow reading and writing to data streams - -Commonly Used Types: -System.IO.Stream -System.IO.EndOfStreamException -System.IO.MemoryStream -System.IO.StreamReader -System.IO.StreamWriter -System.IO.StringWriter -System.IO.TextWriter -System.IO.TextReader - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IO.Compression -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that support the compression and decompression of streams. - -Commonly Used Types: -System.IO.Compression.DeflateStream -System.IO.Compression.GZipStream -System.IO.Compression.CompressionMode -System.IO.Compression.CompressionLevel -System.IO.Compression.ZipArchiveEntry -System.IO.Compression.ZipArchive -System.IO.Compression.ZipArchiveMode - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IO.Compression.ZipFile -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that support the compression and decompression of streams using file system paths. - -Commonly Used Types: -System.IO.Compression.ZipFile - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IO.FileSystem -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides types that allow reading and writing to files and types that provide basic file and directory support. - -Commonly Used Types: -System.IO.FileStream -System.IO.FileInfo -System.IO.DirectoryInfo -System.IO.FileSystemInfo -System.IO.File -System.IO.Directory -System.IO.SearchOption -System.IO.FileOptions - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IO.FileSystem -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides types that allow reading and writing to files and types that provide basic file and directory support. - -Commonly Used Types: -System.IO.FileStream -System.IO.FileInfo -System.IO.DirectoryInfo -System.IO.FileSystemInfo -System.IO.File -System.IO.Directory -System.IO.SearchOption -System.IO.FileOptions - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IO.FileSystem.AccessControl -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides types for managing access and audit control lists for files and directories. - -Commonly Used Types: -System.Security.AccessControl.DirectoryObjectSecurity -System.Security.AccessControl.DirectorySecurity -System.Security.AccessControl.FileSecurity -System.Security.AccessControl.FileSystemAccessRule -System.Security.AccessControl.FileSystemAuditRule -System.Security.AccessControl.FileSystemRights -System.Security.AccessControl.FileSystemSecurity - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.IO.FileSystem.Primitives -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common enumerations and exceptions for path-based I/O libraries. - -Commonly Used Types: -System.IO.DirectoryNotFoundException -System.IO.FileAccess -System.IO.FileLoadException -System.IO.PathTooLongException -System.IO.FileMode -System.IO.FileShare -System.IO.FileAttributes - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.IO.FileSystem.Primitives -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides common enumerations and exceptions for path-based I/O libraries. - -Commonly Used Types: -System.IO.DirectoryNotFoundException -System.IO.FileAccess -System.IO.FileLoadException -System.IO.PathTooLongException -System.IO.FileMode -System.IO.FileShare -System.IO.FileAttributes - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Linq -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes and interfaces that supports queries that use Language-Integrated Query (LINQ). - -Commonly Used Types: -System.Linq.Enumerable -System.Linq.IGrouping -System.Linq.IOrderedEnumerable -System.Linq.ILookup -System.Linq.Lookup - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Linq -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides classes and interfaces that supports queries that use Language-Integrated Query (LINQ). - -Commonly Used Types: -System.Linq.Enumerable -System.Linq.IGrouping -System.Linq.IOrderedEnumerable -System.Linq.ILookup -System.Linq.Lookup - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Linq.Expressions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes, interfaces and enumerations that enable language-level code expressions to be represented as objects in the form of expression trees. - -Commonly Used Types: -System.Linq.IQueryable -System.Linq.IQueryable -System.Linq.Expressions.Expression -System.Linq.Expressions.Expression -System.Linq.Expressions.ExpressionVisitor - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Linq.Expressions -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides classes, interfaces and enumerations that enable language-level code expressions to be represented as objects in the form of expression trees. - -Commonly Used Types: -System.Linq.Expressions.Expression -System.Linq.Expressions.Expression -System.Linq.Expressions.MemberExpression -System.Linq.Expressions.ExpressionVisitor -System.Linq.Expressions.MethodCallExpression -System.Linq.IQueryable -System.Linq.IQueryable -System.Linq.Expressions.NewExpression -System.Linq.Expressions.ParameterExpression -System.Linq.Expressions.ConstantExpression - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Memory -Version:4.5.5 -project URL:https://dot.net/ -Description:Provides types for efficient representation and pooling of managed, stack, and native memory segments and sequences of such segments, along with primitives to parse and format UTF-8 encoded text stored in those memory segments. - -Commonly Used Types: -System.Span -System.ReadOnlySpan -System.Memory -System.ReadOnlyMemory -System.Buffers.MemoryPool -System.Buffers.ReadOnlySequence -System.Buffers.Text.Utf8Parser -System.Buffers.Text.Utf8Formatter - -32b491939fbd125f304031c35038b1e14b4e3958 -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Net.Http -Version:4.3.4 -project URL:https://dot.net/ -Description:Provides a programming interface for modern HTTP applications, including HTTP client components that allow applications to consume web services over HTTP and HTTP components that can be used by both clients and servers for parsing HTTP headers. - -Commonly Used Types: -System.Net.Http.HttpResponseMessage -System.Net.Http.DelegatingHandler -System.Net.Http.HttpRequestException -System.Net.Http.HttpClient -System.Net.Http.MultipartContent -System.Net.Http.Headers.HttpContentHeaders -System.Net.Http.HttpClientHandler -System.Net.Http.StreamContent -System.Net.Http.FormUrlEncodedContent -System.Net.Http.HttpMessageHandler - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Net.NameResolution -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.Net.Dns class, which enables developers to perform simple domain name resolution. - -Commonly Used Types: -System.Net.Dns -System.Net.IPHostEntry - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Net.NetworkInformation -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides access to network traffic data, network address information, and notification of address changes for the local computer. - -Commonly Used Types: -System.Net.NetworkInformation.NetworkInterface -System.Net.NetworkInformation.NetworkInformationException -System.Net.NetworkInformation.NetworkAddressChangedEventHandler -System.Net.NetworkInformation.NetworkInterfaceType -System.Net.NetworkInformation.OperationalStatus -System.Net.NetworkInformation.IPGlobalProperties -System.Net.NetworkInformation.UnicastIPAddressInformation -System.Net.NetworkInformation.UnicastIPAddressInformationCollection -System.Net.NetworkInformation.PhysicalAddress -System.Net.NetworkInformation.TcpConnectionInformation - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Net.Primitives -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common types for network-based libraries, including System.Net.IPAddress, System.Net.IPEndPoint, and System.Net.CookieContainer. - -Commonly Used Types: -System.Net.HttpStatusCode -System.Net.Sockets.SocketError -System.Net.Cookie -System.Net.Sockets.SocketException -System.Net.IPEndPoint -System.Net.ICredentials -System.Net.NetworkCredential -System.Net.IPAddress -System.Net.CookieCollection -System.Net.CookieContainer - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Net.Sockets -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes such as Socket, TcpClient and UdpClient, which enable developers to send and receive data over the network. - -Commonly Used Types: -System.Net.Sockets.Socket -System.Net.Sockets.SocketAsyncEventArgs -System.Net.Sockets.LingerOption -System.Net.Sockets.SocketAsyncOperation -System.Net.Sockets.ProtocolType -System.Net.Sockets.NetworkStream -System.Net.Sockets.TcpClient -System.Net.Sockets.SocketType -System.Net.Sockets.UdpClient -System.Net.Sockets.SocketShutdown - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Numerics.Vectors -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides hardware-accelerated numeric types, suitable for high-performance processing and graphics applications. - -Commonly Used Types: -System.Numerics.Matrix3x2 -System.Numerics.Matrix4x4 -System.Numerics.Plane -System.Numerics.Quaternion -System.Numerics.Vector2 -System.Numerics.Vector3 -System.Numerics.Vector4 -System.Numerics.Vector -System.Numerics.Vector - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Numerics.Vectors -Version:4.4.0 -project URL:https://dot.net/ -Description:Provides hardware-accelerated numeric types, suitable for high-performance processing and graphics applications. - -Commonly Used Types: -System.Numerics.Matrix3x2 -System.Numerics.Matrix4x4 -System.Numerics.Plane -System.Numerics.Quaternion -System.Numerics.Vector2 -System.Numerics.Vector3 -System.Numerics.Vector4 -System.Numerics.Vector -System.Numerics.Vector - -8321c729934c0f8be754953439b88e6e1c120c24 -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.ObjectModel -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides types and interfaces that allow the creation of observable types that provide notifications to clients when changes are made to it. - -Commonly Used Types: -System.ComponentModel.INotifyPropertyChanged -System.Collections.ObjectModel.ObservableCollection -System.ComponentModel.PropertyChangedEventHandler -System.Windows.Input.ICommand -System.Collections.Specialized.INotifyCollectionChanged -System.Collections.Specialized.NotifyCollectionChangedEventArgs -System.Collections.Specialized.NotifyCollectionChangedEventHandler -System.Collections.ObjectModel.KeyedCollection -System.ComponentModel.PropertyChangedEventArgs -System.Collections.ObjectModel.ReadOnlyDictionary - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.ObjectModel -Version:4.0.12 -project URL:https://dot.net/ -Description:Provides types and interfaces that allow the creation of observable types that provide notifications to clients when changes are made to it. - -Commonly Used Types: -System.ComponentModel.INotifyPropertyChanged -System.Collections.ObjectModel.ObservableCollection -System.ComponentModel.PropertyChangedEventHandler -System.Windows.Input.ICommand -System.Collections.Specialized.INotifyCollectionChanged -System.Collections.Specialized.NotifyCollectionChangedEventArgs -System.Collections.Specialized.NotifyCollectionChangedEventHandler -System.Collections.ObjectModel.KeyedCollection -System.ComponentModel.PropertyChangedEventArgs -System.Collections.ObjectModel.ReadOnlyDictionary - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides types that retrieve information about assemblies, modules, members, parameters, and other entities in managed code by examining their metadata. These types also can be used to manipulate instances of loaded types, for example to hook up events or to invoke methods. - -Commonly Used Types: -System.Reflection.MethodInfo -System.Reflection.PropertyInfo -System.Reflection.ParameterInfo -System.Reflection.FieldInfo -System.Reflection.ConstructorInfo -System.Reflection.Assembly -System.Reflection.MemberInfo -System.Reflection.EventInfo -System.Reflection.Module - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides types that retrieve information about assemblies, modules, members, parameters, and other entities in managed code by examining their metadata. These types also can be used to manipulate instances of loaded types, for example to hook up events or to invoke methods. - -Commonly Used Types: -System.Reflection.MethodInfo -System.Reflection.PropertyInfo -System.Reflection.ParameterInfo -System.Reflection.FieldInfo -System.Reflection.ConstructorInfo -System.Reflection.Assembly -System.Reflection.MemberInfo -System.Reflection.EventInfo -System.Reflection.Module - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Emit -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that allow a compiler or tool to emit metadata and optionally generate a PE file on disk. The primary clients of these classes are script engines and compilers. - -Commonly Used Types: -System.Reflection.Emit.AssemblyBuilder -System.Reflection.Emit.FieldBuilder -System.Reflection.Emit.TypeBuilder -System.Reflection.Emit.MethodBuilder -System.Reflection.Emit.ConstructorBuilder -System.Reflection.Emit.GenericTypeParameterBuilder -System.Reflection.Emit.ModuleBuilder -System.Reflection.Emit.PropertyBuilder -System.Reflection.Emit.AssemblyBuilderAccess -System.Reflection.Emit.EventBuilder - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Emit -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides classes that allow a compiler or tool to emit metadata and optionally generate a PE file on disk. The primary clients of these classes are script engines and compilers. - -Commonly Used Types: -System.Reflection.Emit.AssemblyBuilder -System.Reflection.Emit.FieldBuilder -System.Reflection.Emit.TypeBuilder -System.Reflection.Emit.MethodBuilder -System.Reflection.Emit.ConstructorBuilder -System.Reflection.Emit.GenericTypeParameterBuilder -System.Reflection.Emit.ModuleBuilder -System.Reflection.Emit.PropertyBuilder -System.Reflection.Emit.AssemblyBuilderAccess -System.Reflection.Emit.EventBuilder - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Emit.ILGeneration -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that allow a compiler or tool to emit Microsoft intermediate language (MSIL). The primary clients of these classes are script engines and compilers. - -Commonly Used Types: -System.Reflection.Emit.ILGenerator -System.Reflection.Emit.Label -System.Reflection.Emit.CustomAttributeBuilder -System.Reflection.Emit.LocalBuilder -System.Reflection.Emit.ParameterBuilder -System.Reflection.Emit.SignatureHelper - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Emit.ILGeneration -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides classes that allow a compiler or tool to emit Microsoft intermediate language (MSIL). The primary clients of these classes are script engines and compilers. - -Commonly Used Types: -System.Reflection.Emit.ILGenerator -System.Reflection.Emit.Label -System.Reflection.Emit.CustomAttributeBuilder -System.Reflection.Emit.LocalBuilder -System.Reflection.Emit.ParameterBuilder -System.Reflection.Emit.SignatureHelper - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Emit.Lightweight -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.Reflection.Emit.DynamicMethod class, which represents a dynamic method that can be compiled, executed, and discarded. Discarded methods are available for garbage collection. - -Commonly Used Types: -System.Reflection.Emit.DynamicMethod - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Emit.Lightweight -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides the System.Reflection.Emit.DynamicMethod class, which represents a dynamic method that can be compiled, executed, and discarded. Discarded methods are available for garbage collection. - -Commonly Used Types: -System.Reflection.Emit.DynamicMethod - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Extensions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides custom attribute extension methods for System.Reflection types. - -Commonly Used Types: -System.Reflection.InterfaceMapping -System.Reflection.CustomAttributeExtensions -System.Reflection.RuntimeReflectionExtensions - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Extensions -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides custom attribute extension methods for System.Reflection types. - -Commonly Used Types: -System.Reflection.InterfaceMapping -System.Reflection.CustomAttributeExtensions -System.Reflection.RuntimeReflectionExtensions - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Primitives -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common enumerations for reflection-based libraries. - -Commonly Used Types: -System.Reflection.FieldAttributes -System.Reflection.Emit.OpCode -System.Reflection.TypeAttributes -System.Reflection.MethodAttributes -System.Reflection.CallingConventions -System.Reflection.PropertyAttributes -System.Reflection.EventAttributes -System.Reflection.ParameterAttributes -System.Reflection.GenericParameterAttributes -System.Reflection.MethodImplAttributes - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.Primitives -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides common enumerations for reflection-based libraries. - -Commonly Used Types: -System.Reflection.FieldAttributes -System.Reflection.Emit.OpCode -System.Reflection.TypeAttributes -System.Reflection.MethodAttributes -System.Reflection.CallingConventions -System.Reflection.PropertyAttributes -System.Reflection.EventAttributes -System.Reflection.ParameterAttributes -System.Reflection.GenericParameterAttributes -System.Reflection.MethodImplAttributes - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.TypeExtensions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides extensions methods for System.Type that are designed to be source-compatible with older framework reflection-based APIs. - -Commonly Used Types: -System.Reflection.TypeExtensions -System.Reflection.BindingFlags - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Reflection.TypeExtensions -Version:4.7.0 -project URL:https://github.com/dotnet/corefx -Description:Provides extensions methods for System.Type that are designed to be source-compatible with older framework reflection-based APIs. - -Commonly Used Types: -System.Reflection.TypeExtensions -System.Reflection.BindingFlags - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Reflection.TypeExtensions -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides extensions methods for System.Type that are designed to be source-compatible with older framework reflection-based APIs. - -Commonly Used Types: -System.Reflection.TypeExtensions -System.Reflection.BindingFlags - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Resources.ResourceManager -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes and attributes that allow developers to create, store, and manage various culture-specific resources used in an application. - -Commonly Used Types: -System.Resources.ResourceManager -System.Resources.NeutralResourcesLanguageAttribute -System.Resources.SatelliteContractVersionAttribute -System.Resources.MissingManifestResourceException - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Resources.ResourceManager -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides classes and attributes that allow developers to create, store, and manage various culture-specific resources used in an application. - -Commonly Used Types: -System.Resources.ResourceManager -System.Resources.NeutralResourcesLanguageAttribute -System.Resources.SatelliteContractVersionAttribute -System.Resources.MissingManifestResourceException - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the fundamental primitives, classes and base classes that define commonly-used value and reference data types, events and event handlers, interfaces, attributes, and exceptions. This packages represents the core package, and provides the minimal set of types required to build a managed application. - -Commonly Used Types: -System.Object -System.Exception -System.Int16 -System.Int32 -System.Int64 -System.Enum -System.String -System.Char -System.Boolean -System.SByte -System.Byte -System.DateTime -System.DateTimeOffset -System.Single -System.Double -System.UInt16 -System.UInt32 -System.UInt64 -System.IDisposable -System.Uri - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides the fundamental primitives, classes and base classes that define commonly-used value and reference data types, events and event handlers, interfaces, attributes, and exceptions. This packages represents the core package, and provides the minimal set of types required to build a managed application. - -Commonly Used Types: -System.Object -System.Exception -System.Int16 -System.Int32 -System.Int64 -System.Enum -System.String -System.Char -System.Boolean -System.SByte -System.Byte -System.DateTime -System.DateTimeOffset -System.Single -System.Double -System.UInt16 -System.UInt32 -System.UInt64 -System.IDisposable -System.Uri - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.CompilerServices.Unsafe -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides the System.Runtime.CompilerServices.Unsafe class, which provides generic, low-level functionality for manipulating pointers. - -Commonly Used Types: -System.Runtime.CompilerServices.Unsafe - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Runtime.CompilerServices.Unsafe -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides the System.Runtime.CompilerServices.Unsafe class, which provides generic, low-level functionality for manipulating pointers. - -Commonly Used Types: -System.Runtime.CompilerServices.Unsafe -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Runtime.Extensions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides commonly-used classes for performing mathematical functions, conversions, string comparisons and querying environment information. - -Commonly Used Types: -System.Math -System.Environment -System.Random -System.Progress -System.Convert -System.Diagnostics.Stopwatch -System.Runtime.Versioning.FrameworkName -System.StringComparer -System.IO.Path - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.Extensions -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides commonly-used classes for performing mathematical functions, conversions, string comparisons and querying environment information. - -Commonly Used Types: -System.Math -System.Environment -System.Random -System.Progress -System.Convert -System.Diagnostics.Stopwatch -System.Runtime.Versioning.FrameworkName -System.StringComparer -System.IO.Path - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.Handles -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides base classes, including System.Runtime.InteropServices.CriticalHandle and System.Runtime.InteropServices.SafeHandle, for types that represent operating system handles. - -Commonly Used Types: -System.Runtime.InteropServices.SafeHandle -Microsoft.Win32.SafeHandles.SafeWaitHandle -System.Runtime.InteropServices.CriticalHandle -System.Threading.WaitHandleExtensions -System.IO.HandleInheritability - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.Handles -Version:4.0.1 -project URL:https://dot.net/ -Description:Provides base classes, including System.Runtime.InteropServices.CriticalHandle and System.Runtime.InteropServices.SafeHandle, for types that represent operating system handles. - -Commonly Used Types: -System.Runtime.InteropServices.SafeHandle -Microsoft.Win32.SafeHandles.SafeWaitHandle -System.Runtime.InteropServices.CriticalHandle -System.Threading.WaitHandleExtensions -System.IO.HandleInheritability - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.InteropServices -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides types that support COM interop and platform invoke services. - -Commonly Used Types: -System.Runtime.InteropServices.GCHandle -System.Runtime.InteropServices.GuidAttribute -System.Runtime.InteropServices.COMException -System.DllNotFoundException -System.Runtime.InteropServices.DllImportAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.InteropServices -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides types that support COM interop and platform invoke services. - -Commonly Used Types: -System.Runtime.InteropServices.GCHandle -System.Runtime.InteropServices.GuidAttribute -System.Runtime.InteropServices.COMException -System.DllNotFoundException -System.Runtime.InteropServices.DllImportAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.InteropServices.RuntimeInformation -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides APIs to query about runtime and OS information. - -Commonly Used Types: -System.Runtime.InteropServices.RuntimeInformation -System.Runtime.InteropServices.OSPlatform - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.InteropServices.RuntimeInformation -Version:4.0.0 -project URL:https://dot.net/ -Description:Provides APIs to query about runtime and OS information. - -Commonly Used Types: -System.Runtime.InteropServices.RuntimeInformation -System.Runtime.InteropServices.OSPlatform - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.InteropServices.WindowsRuntime -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that support interoperation between managed code and the Windows Runtime, and that enable the creation of Windows Runtime types with managed code. - -Commonly Used Types: -System.Runtime.InteropServices.WindowsRuntime.WindowsRuntimeMarshal -System.Runtime.InteropServices.WindowsRuntime.ReadOnlyArrayAttribute -System.Runtime.InteropServices.WindowsRuntime.WriteOnlyArrayAttribute -System.Runtime.InteropServices.WindowsRuntime.ReturnValueNameAttribute - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.Numerics -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the numeric types System.Numerics.BigInteger and System.Numerics.Complex, which complement the numeric primitives, such as System.Byte, System.Double and System.Int32. - -Commonly Used Types: -System.Numerics.BigInteger -System.Numerics.Complex - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.Serialization.Formatters -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common types for libraries that support runtime serialization. - -Commonly Used Types: -System.SerializableAttribute -System.Runtime.Serialization.ISerializable - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.Serialization.Primitives -Version:4.1.1 -project URL:https://dot.net/ -Description:Provides common types, including System.Runtime.Serialization.DataContractAttribute, for libraries that support data contract serialization. - -Commonly Used Types: -System.Runtime.Serialization.StreamingContext -System.Runtime.Serialization.OnDeserializingAttribute -System.Runtime.Serialization.OnDeserializedAttribute -System.Runtime.Serialization.OnSerializingAttribute -System.Runtime.Serialization.OnSerializedAttribute -System.Runtime.Serialization.EnumMemberAttribute -System.Runtime.Serialization.DataMemberAttribute -System.Runtime.Serialization.DataContractAttribute -System.Runtime.Serialization.IgnoreDataMemberAttribute -System.Runtime.Serialization.SerializationException - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.Serialization.Primitives -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common types, including System.Runtime.Serialization.DataContractAttribute, for libraries that support data contract serialization. - -Commonly Used Types: -System.Runtime.Serialization.StreamingContext -System.Runtime.Serialization.OnDeserializingAttribute -System.Runtime.Serialization.OnDeserializedAttribute -System.Runtime.Serialization.OnSerializingAttribute -System.Runtime.Serialization.OnSerializedAttribute -System.Runtime.Serialization.EnumMemberAttribute -System.Runtime.Serialization.DataMemberAttribute -System.Runtime.Serialization.DataContractAttribute -System.Runtime.Serialization.IgnoreDataMemberAttribute -System.Runtime.Serialization.SerializationException - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Runtime.WindowsRuntime -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides extensions methods that improve interoperation between managed code and the Windows Runtime. - -Commonly Used Types: -System.WindowsRuntimeSystemExtensions -System.IO.WindowsRuntimeStorageExtensions -System.IO.WindowsRuntimeStreamExtensions -System.Runtime.InteropServices.WindowsRuntime.AsyncInfo -System.Runtime.InteropServices.WindowsRuntime.WindowsRuntimeBuffer - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.AccessControl -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides base classes that enable managing access and audit control lists on securable objects. - -Commonly Used Types: -System.Security.AccessControl.AccessRule -System.Security.AccessControl.AuditRule -System.Security.AccessControl.ObjectAccessRule -System.Security.AccessControl.ObjectAuditRule -System.Security.AccessControl.ObjectSecurity - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Security.AccessControl -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides base classes that enable managing access and audit control lists on securable objects. - -Commonly Used Types: -System.Security.AccessControl.AccessRule -System.Security.AccessControl.AuditRule -System.Security.AccessControl.ObjectAccessRule -System.Security.AccessControl.ObjectAuditRule -System.Security.AccessControl.ObjectSecurity -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Security.Claims -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides classes that implement claims-based identity in the .NET Framework, including classes that represent claims, claims-based identities, and claims-based principals. - -Commonly Used Types: -System.Security.Principal.GenericIdentity -System.Security.Claims.Claim -System.Security.Claims.ClaimsIdentity -System.Security.Claims.ClaimsPrincipal -System.Security.Principal.GenericPrincipal - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.Algorithms -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides base types for cryptographic algorithms, including hashing, encryption, and signing operations. - -Commonly Used Types: -System.Security.Cryptography.Aes -System.Security.Cryptography.RSA -System.Security.Cryptography.RSAParameters -System.Security.Cryptography.HMACSHA1 -System.Security.Cryptography.SHA256 -System.Security.Cryptography.SHA1 -System.Security.Cryptography.SHA512 -System.Security.Cryptography.SHA384 -System.Security.Cryptography.HMACSHA256 -System.Security.Cryptography.MD5 -System.Security.Cryptography.HMACSHA384 -System.Security.Cryptography.HMACSHA512 - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.Algorithms -Version:4.3.1 -project URL:https://dot.net/ -Description:Provides base types for cryptographic algorithms, including hashing, encryption, and signing operations. - -Commonly Used Types: -System.Security.Cryptography.Aes -System.Security.Cryptography.RSA -System.Security.Cryptography.RSAParameters -System.Security.Cryptography.HMACSHA1 -System.Security.Cryptography.SHA256 -System.Security.Cryptography.SHA1 -System.Security.Cryptography.SHA512 -System.Security.Cryptography.SHA384 -System.Security.Cryptography.HMACSHA256 -System.Security.Cryptography.MD5 -System.Security.Cryptography.HMACSHA384 -System.Security.Cryptography.HMACSHA512 - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.Cng -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides cryptographic algorithm implementations and key management with Windows Cryptographic Next Generation API (CNG). - -Commonly Used Types: -System.Security.Cryptography.RSACng -System.Security.Cryptography.ECDsaCng -System.Security.Cryptography.CngKey - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.Cng -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides cryptographic algorithm implementations and key management with Windows Cryptographic Next Generation API (CNG). - -Commonly Used Types: -System.Security.Cryptography.RSACng -System.Security.Cryptography.ECDsaCng -System.Security.Cryptography.CngKey - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Security.Cryptography.Cng -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides cryptographic algorithm implementations and key management with Windows Cryptographic Next Generation API (CNG). - -Commonly Used Types: -System.Security.Cryptography.RSACng -System.Security.Cryptography.ECDsaCng -System.Security.Cryptography.CngKey - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Security.Cryptography.Csp -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides cryptographic algorithm implementations and key management with Windows Cryptographic API (CryptoAPI). - -Commonly Used Types: -System.Security.Cryptography.RSACryptoServiceProvider -System.Security.Cryptography.CspParameters - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.Encoding -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides types for representing Abstract Syntax Notation One (ASN.1)-encoded data. - -Commonly Used Types: -System.Security.Cryptography.AsnEncodedData -System.Security.Cryptography.Oid -System.Security.Cryptography.OidCollection - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.OpenSsl -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides cryptographic algorithm implementations and key management for non-Windows systems with OpenSSL. - -Commonly Used Types: -System.Security.Cryptography.RSAOpenSsl - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.Pkcs -Version:8.0.0 -project URL:https://dot.net/ -Description:Provides support for PKCS and CMS algorithms. - -Commonly Used Types: -System.Security.Cryptography.Pkcs.EnvelopedCms -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Security.Cryptography.Primitives -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common types for the cryptographic libraries. - -Commonly Used Types: -System.Security.Cryptography.ICryptoTransform -System.Security.Cryptography.AsymmetricAlgorithm -System.Security.Cryptography.SymmetricAlgorithm -System.Security.Cryptography.HashAlgorithm -System.Security.Cryptography.KeyedHashAlgorithm -System.Security.Cryptography.HMAC -System.Security.Cryptography.KeySizes -System.Security.Cryptography.CryptographicException -System.Security.Cryptography.CipherMode -System.Security.Cryptography.PaddingMode -System.Security.Cryptography.CryptoStream -System.Security.Cryptography.CryptoStreamMode - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Cryptography.ProtectedData -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides access to Windows Data Protection Api. - -Commonly Used Types: -System.Security.Cryptography.DataProtectionScope -System.Security.Cryptography.ProtectedData -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Security.Cryptography.X509Certificates -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides types for reading, exporting and verifying Authenticode X.509 v3 certificates. These certificates are signed with a private key that uniquely and positively identifies the holder of the certificate. - -Commonly Used Types: -System.Security.Cryptography.X509Certificates.X509Certificate2 -System.Security.Cryptography.X509Certificates.X509Certificate -System.Security.Cryptography.X509Certificates.X509ContentType -System.Security.Cryptography.X509Certificates.StoreLocation -System.Security.Cryptography.X509Certificates.StoreName -System.Security.Cryptography.X509Certificates.X509FindType -System.Security.Cryptography.X509Certificates.X509ChainStatus -System.Security.Cryptography.X509Certificates.X509Certificate2Collection -System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension -System.Security.Cryptography.X509Certificates.X509Chain - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Permissions -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides types supporting Code Access Security (CAS). -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Security.Principal -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the base interfaces for principal and identity objects that represents the security context under which code is running. - -Commonly Used Types: -System.Security.Principal.IPrincipal -System.Security.Principal.IIdentity -System.Security.Principal.TokenImpersonationLevel - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Security.Principal.Windows -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides classes for retrieving the current Windows user and for interacting with Windows users and groups. - -Commonly Used Types: -System.Security.Principal.WindowsIdentity -System.Security.Principal.SecurityIdentifier -System.Security.Principal.NTAccount -System.Security.Principal.WindowsPrincipal -System.Security.Principal.IdentityReference -System.Security.Principal.IdentityNotMappedException -System.Security.Principal.WindowsBuiltInRole -System.Security.Principal.WellKnownSidType - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Text.Encoding -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides base abstract encoding classes for converting blocks of characters to and from blocks of bytes. - -Commonly Used Types: -System.Text.Encoding -System.Text.DecoderFallbackException -System.Text.Decoder -System.Text.EncoderFallbackException -System.Text.Encoder -System.Text.EncoderFallback -System.Text.EncoderFallbackBuffer -System.Text.DecoderFallback -System.Text.DecoderFallbackBuffer -System.Text.DecoderExceptionFallback - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Text.Encoding -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides base abstract encoding classes for converting blocks of characters to and from blocks of bytes. - -Commonly Used Types: -System.Text.Encoding -System.Text.DecoderFallbackException -System.Text.Decoder -System.Text.EncoderFallbackException -System.Text.Encoder -System.Text.EncoderFallback -System.Text.EncoderFallbackBuffer -System.Text.DecoderFallback -System.Text.DecoderFallbackBuffer -System.Text.DecoderExceptionFallback - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Text.Encoding.CodePages -Version:8.0.0 -project URL:https://dot.net/ -Description:Provides support for code-page based encodings, including Windows-1252, Shift-JIS, and GB2312. - -Commonly Used Types: -System.Text.CodePagesEncodingProvider -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Text.Encoding.CodePages -Version:5.0.0 -project URL:https://github.com/dotnet/runtime -Description:Provides support for code-page based encodings, including Windows-1252, Shift-JIS, and GB2312. - -Commonly Used Types: -System.Text.CodePagesEncodingProvider - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Text.Encoding.Extensions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides support for specific encodings, including ASCII, UTF-7, UTF-8, UTF-16, and UTF-32. - -Commonly Used Types: -System.Text.UTF8Encoding -System.Text.UnicodeEncoding -System.Text.ASCIIEncoding -System.Text.UTF7Encoding -System.Text.UTF32Encoding - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Text.Encoding.Extensions -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides support for specific encodings, including ASCII, UTF-7, UTF-8, UTF-16, and UTF-32. - -Commonly Used Types: -System.Text.UTF8Encoding -System.Text.UnicodeEncoding -System.Text.ASCIIEncoding -System.Text.UTF7Encoding -System.Text.UTF32Encoding - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Text.Encodings.Web -Version:4.7.2 -project URL:https://github.com/dotnet/corefx -Description:Provides types for encoding and escaping strings for use in JavaScript, HyperText Markup Language (HTML), and uniform resource locators (URL). - -Commonly Used Types: -System.Text.Encodings.Web.HtmlEncoder -System.Text.Encodings.Web.UrlEncoder -System.Text.Encodings.Web.JavaScriptEncoder - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Text.Encodings.Web -Version:4.7.1 -project URL:https://github.com/dotnet/corefx -Description:Provides types for encoding and escaping strings for use in JavaScript, HyperText Markup Language (HTML), and uniform resource locators (URL). - -Commonly Used Types: -System.Text.Encodings.Web.HtmlEncoder -System.Text.Encodings.Web.UrlEncoder -System.Text.Encodings.Web.JavaScriptEncoder - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Text.Encodings.Web -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides types for encoding and escaping strings for use in JavaScript, HyperText Markup Language (HTML), and uniform resource locators (URL). - -Commonly Used Types: -System.Text.Encodings.Web.HtmlEncoder -System.Text.Encodings.Web.UrlEncoder -System.Text.Encodings.Web.JavaScriptEncoder - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Text.Encodings.Web -Version:4.6.0 -project URL:https://github.com/dotnet/corefx -Description:Provides types for encoding and escaping strings for use in JavaScript, HyperText Markup Language (HTML), and uniform resource locators (URL). - -Commonly Used Types: -System.Text.Encodings.Web.HtmlEncoder -System.Text.Encodings.Web.UrlEncoder -System.Text.Encodings.Web.JavaScriptEncoder - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Text.Json -Version:4.7.2 -project URL:https://github.com/dotnet/corefx -Description:Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. - -Commonly Used Types: -System.Text.Json.JsonSerializer -System.Text.Json.JsonDocument -System.Text.Json.JsonElement -System.Text.Json.Utf8JsonWriter -System.Text.Json.Utf8JsonReader - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Text.Json -Version:4.6.0 -project URL:https://github.com/dotnet/corefx -Description:Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. - -Commonly Used Types: -System.Text.Json.JsonSerializer -System.Text.Json.JsonDocument -System.Text.Json.JsonElement -System.Text.Json.Utf8JsonWriter -System.Text.Json.Utf8JsonReader - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Text.RegularExpressions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.Text.RegularExpressions.Regex class, an implementation of a regular expression engine. - -Commonly Used Types: -System.Text.RegularExpressions.Regex -System.Text.RegularExpressions.RegexOptions -System.Text.RegularExpressions.Match -System.Text.RegularExpressions.Group -System.Text.RegularExpressions.Capture -System.Text.RegularExpressions.MatchEvaluator - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Text.RegularExpressions -Version:4.1.0 -project URL:https://dot.net/ -Description:Provides the System.Text.RegularExpressions.Regex class, an implementation of a regular expression engine. - -Commonly Used Types: -System.Text.RegularExpressions.Regex -System.Text.RegularExpressions.RegexOptions -System.Text.RegularExpressions.Match -System.Text.RegularExpressions.Group -System.Text.RegularExpressions.Capture -System.Text.RegularExpressions.MatchEvaluator - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the fundamental synchronization primitives, including System.Threading.Monitor and System.Threading.Mutex, that are required when writing asynchronous code. - -Commonly Used Types: -System.Threading.Monitor -System.Threading.SynchronizationContext -System.Threading.ManualResetEvent -System.Threading.AutoResetEvent -System.Threading.ThreadLocal -System.Threading.EventWaitHandle -System.Threading.SemaphoreSlim -System.Threading.Mutex - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides the fundamental synchronization primitives, including System.Threading.Monitor and System.Threading.Mutex, that are required when writing asynchronous code. - -Commonly Used Types: -System.Threading.Monitor -System.Threading.SynchronizationContext -System.Threading.ManualResetEvent -System.Threading.AutoResetEvent -System.Threading.ThreadLocal -System.Threading.EventWaitHandle -System.Threading.SemaphoreSlim -System.Threading.Mutex - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.Overlapped -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides common types for interacting with asynchronous (or overlapped) input and output (I/O). - -Commonly Used Types: -System.Threading.NativeOverlapped -System.Threading.Overlapped -System.Threading.IOCompletionCallback - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.Tasks -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides types that simplify the work of writing concurrent and asynchronous code. - -Commonly Used Types: -System.Threading.Tasks.Task -System.Runtime.CompilerServices.TaskAwaiter -System.Threading.Tasks.TaskCompletionSource -System.Threading.Tasks.Task -System.OperationCanceledException -System.AggregateException - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.Tasks -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides types that simplify the work of writing concurrent and asynchronous code. - -Commonly Used Types: -System.Threading.Tasks.Task -System.Runtime.CompilerServices.TaskAwaiter -System.Threading.Tasks.TaskCompletionSource -System.Threading.Tasks.Task -System.OperationCanceledException -System.AggregateException - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.Tasks.Extensions -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides additional types that simplify the work of writing concurrent and asynchronous code. - -Commonly Used Types: -System.Threading.Tasks.ValueTask -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.Tasks.Extensions -Version:4.5.2 -project URL:https://dot.net/ -Description:Provides additional types that simplify the work of writing concurrent and asynchronous code. - -Commonly Used Types: -System.Threading.Tasks.ValueTask - -99ce22c306b07f99ddae60f443d23a983ae78f7b -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Threading.Tasks.Extensions -Version:4.5.4 -project URL:https://dot.net/ -Description:Provides additional types that simplify the work of writing concurrent and asynchronous code. - -Commonly Used Types: -System.Threading.Tasks.ValueTask - -7601f4f6225089ffb291dc7d58293c7bbf5c5d4f -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Threading.Tasks.Extensions -Version:4.0.0 -project URL:https://dot.net/ -Description:Provides additional types that simplify the work of writing concurrent and asynchronous code. - -Commonly Used Types: -System.Threading.Tasks.ValueTask -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.Tasks.Extensions -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides additional types that simplify the work of writing concurrent and asynchronous code. - -Commonly Used Types: -System.Threading.Tasks.ValueTask - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Threading.Thread -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.Threading.Thread class, which allows developers to create and control a thread, set its priority, and get its state. - -Commonly Used Types: -System.Threading.Thread -System.Threading.ThreadStart -System.Threading.ParameterizedThreadStart - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.ThreadPool -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.Threading.ThreadPool class, which contains a pool of threads that can be used to execute tasks, post work items, wait on behalf of other threads, and process timers. - -Commonly Used Types: -System.Threading.ThreadPool -System.Threading.WaitOrTimerCallback - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Threading.Timer -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the System.Threading.Timer class, which is a mechanism for executing a method at specified intervals. - -Commonly Used Types: -System.Threading.Timer -System.Threading.TimerCallback - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.ValueTuple -Version:4.5.0 -project URL:https://dot.net/ -Description:Provides the System.ValueTuple structs, which implement the underlying types for tuples in C# and Visual Basic. - -Commonly Used Types: -System.ValueTuple -System.ValueTuple -System.ValueTuple -System.ValueTuple -System.ValueTuple -System.ValueTuple -System.ValueTuple -System.ValueTuple -System.ValueTuple - -30ab651fcb4354552bd4891619a0bdd81e0ebdbf -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:https://github.com/dotnet/corefx/blob/master/LICENSE.TXT -license Type:MIT - -#################################################################################################### -Package:System.Windows.Extensions -Version:6.0.0 -project URL:https://dot.net/ -Description:Provides miscellaneous Windows-specific types - -Commonly Used Types: -System.Security.Cryptography.X509Certificates.X509Certificate2UI -System.Security.Cryptography.X509Certificates.X509SelectionFlag -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - -#################################################################################################### -Package:System.Xml.ReaderWriter -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides provides a fast, non-cached, forward-only way to read and write Extensible Markup Language (XML) data. - -Commonly Used Types: -System.Xml.XmlNodeType -System.Xml.XmlException -System.Xml.XmlReader -System.Xml.XmlWriter -System.Xml.IXmlLineInfo -System.Xml.XmlNameTable -System.Xml.IXmlNamespaceResolver -System.Xml.XmlNamespaceManager -System.Xml.XmlQualifiedName - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Xml.ReaderWriter -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides provides a fast, non-cached, forward-only way to read and write Extensible Markup Language (XML) data. - -Commonly Used Types: -System.Xml.XmlNodeType -System.Xml.XmlException -System.Xml.XmlReader -System.Xml.XmlWriter -System.Xml.IXmlLineInfo -System.Xml.XmlNameTable -System.Xml.IXmlNamespaceResolver -System.Xml.XmlNamespaceManager -System.Xml.XmlQualifiedName - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Xml.XDocument -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides the classes for Language-Integrated Query (LINQ) to Extensible Markup Language (XML). LINQ to XML is an in-memory XML programming interface that enables you to modify XML documents efficiently and easily. - -Commonly Used Types: -System.Xml.Linq.XElement -System.Xml.Linq.XAttribute -System.Xml.Linq.XDocument -System.Xml.Linq.XText -System.Xml.Linq.XNode -System.Xml.Linq.XContainer -System.Xml.Linq.XComment -System.Xml.Linq.XObject -System.Xml.Linq.XProcessingInstruction -System.Xml.Linq.XDocumentType - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Xml.XDocument -Version:4.0.11 -project URL:https://dot.net/ -Description:Provides the classes for Language-Integrated Query (LINQ) to Extensible Markup Language (XML). LINQ to XML is an in-memory XML programming interface that enables you to modify XML documents efficiently and easily. - -Commonly Used Types: -System.Xml.Linq.XElement -System.Xml.Linq.XAttribute -System.Xml.Linq.XDocument -System.Xml.Linq.XText -System.Xml.Linq.XNode -System.Xml.Linq.XContainer -System.Xml.Linq.XComment -System.Xml.Linq.XObject -System.Xml.Linq.XProcessingInstruction -System.Xml.Linq.XDocumentType - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:System.Xml.XmlDocument -Version:4.3.0 -project URL:https://dot.net/ -Description:Provides an older in-memory Extensible Markup Language (XML) programming interface that enables you to modify XML documents. Developers should prefer the classes in the System.Xml.XDocument package. - -Commonly Used Types: -System.Xml.XmlNode -System.Xml.XmlElement -System.Xml.XmlAttribute -System.Xml.XmlDocument -System.Xml.XmlDeclaration -System.Xml.XmlText -System.Xml.XmlComment -System.Xml.XmlNodeList -System.Xml.XmlWhitespace -System.Xml.XmlCDataSection - -When using NuGet 3.x this package requires at least version 3.4. -licenseUrl:http://go.microsoft.com/fwlink/?LinkId=329770 -license Type:MS-EULA - -#################################################################################################### -Package:Tenuto -Version:1.0.0.39 -project URL:https://github.com/josephmyers/relaxng-tenuto -Description:RELAX NG validator for .NET -licenseUrl: -license Type: - -#################################################################################################### -Package:Xabe.FFmpeg -Version:5.2.6 -project URL:https://ffmpeg.xabe.net/index.html -Description:Cross-platform wrapper for FFmpeg. -licenseUrl:https://ffmpeg.xabe.net/license.html -license Type: - -#################################################################################################### -Package:ZstdSharp.Port -Version:0.7.3 -project URL:https://github.com/oleg-st/ZstdSharp -Description:Port of zstd compression library to c# -licenseUrl:https://licenses.nuget.org/MIT -license Type:MIT - +############################################################### +PackageId: AWSSDK.Core +PackageVersion: 3.7.100.14 +PackageProjectUrl: https://github.com/aws/aws-sdk-net/ +Authors: Amazon Web Services +License: Apache-2.0 +LicenseUrl: http://aws.amazon.com/apache2.0/ +############################################################### +PackageId: AWSSDK.SecurityToken +PackageVersion: 3.7.100.14 +PackageProjectUrl: https://github.com/aws/aws-sdk-net/ +Authors: Amazon Web Services +License: Apache-2.0 +LicenseUrl: http://aws.amazon.com/apache2.0/ +############################################################### +PackageId: BouncyCastle.Cryptography +PackageVersion: 2.4.0 +PackageProjectUrl: https://www.bouncycastle.org/stable/nuget/csharp/website +Authors: Legion of the Bouncy Castle Inc. +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: DnsClient +PackageVersion: 1.6.1 +PackageProjectUrl: http://dnsclient.michaco.net/ +Authors: MichaCo +License: Apache-2.0 +LicenseUrl: https://licenses.nuget.org/Apache-2.0 +############################################################### +PackageId: icu.net +PackageVersion: 2.10.1-beta.5 +PackageProjectUrl: https://github.com/sillsdev/icu-dotnet +Authors: SIL International +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Icu4c.Win.Full.Lib +PackageVersion: 62.2.3-beta +PackageProjectUrl: https://github.com/sillsdev/icu +Authors: SIL International +LicenseUrl: https://aka.ms/deprecateLicenseUrl +############################################################### +PackageId: MailKit +PackageVersion: 4.8.0 +PackageProjectUrl: http://www.mimekit.net/ +Authors: Jeffrey Stedfast +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.AspNetCore.Authentication.JwtBearer +PackageVersion: 8.0.3 +PackageProjectUrl: https://asp.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.CSharp +PackageVersion: 4.7.0 +PackageProjectUrl: https://github.com/dotnet/corefx +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.DotNet.PlatformAbstractions +PackageVersion: 2.0.4 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft.DotNet.PlatformAbstractions +License: https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT +LicenseUrl: https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT +############################################################### +PackageId: Microsoft.Extensions.ApiDescription.Server +PackageVersion: 6.0.5 +PackageProjectUrl: https://asp.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.Extensions.DependencyModel +PackageVersion: 2.0.4 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft.Extensions.DependencyModel +License: https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT +LicenseUrl: https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT +############################################################### +PackageId: Microsoft.Extensions.Logging.Abstractions +PackageVersion: 2.0.0 +PackageProjectUrl: https://asp.net/ +Authors: Microsoft +License: Apache-2.0 +LicenseUrl: https://raw.githubusercontent.com/aspnet/Home/2.0.0/LICENSE.txt +############################################################### +PackageId: Microsoft.IdentityModel.Abstractions +PackageVersion: 7.5.1 +PackageProjectUrl: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.IdentityModel.JsonWebTokens +PackageVersion: 7.5.1 +PackageProjectUrl: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.IdentityModel.Logging +PackageVersion: 7.5.1 +PackageProjectUrl: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.IdentityModel.Protocols +PackageVersion: 7.1.2 +PackageProjectUrl: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.IdentityModel.Protocols.OpenIdConnect +PackageVersion: 7.1.2 +PackageProjectUrl: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.IdentityModel.Tokens +PackageVersion: 7.5.1 +PackageProjectUrl: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.NETCore.Platforms +PackageVersion: 1.1.1 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: Microsoft.NETCore.Targets +PackageVersion: 1.1.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: Microsoft.OpenApi +PackageVersion: 1.6.14 +PackageProjectUrl: https://github.com/Microsoft/OpenAPI.NET +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.Win32.Registry +PackageVersion: 5.0.0 +PackageProjectUrl: https://github.com/dotnet/runtime +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Microsoft.Win32.SystemEvents +PackageVersion: 6.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: MimeKit +PackageVersion: 4.8.0 +PackageProjectUrl: https://www.mimekit.net/ +Authors: Jeffrey Stedfast +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: MongoDB.Bson +PackageVersion: 2.29.0 +PackageProjectUrl: https://www.mongodb.com/docs/drivers/csharp/ +Authors: MongoDB Inc. +License: Apache-2.0 +LicenseUrl: https://licenses.nuget.org/Apache-2.0 +############################################################### +PackageId: MongoDB.Driver +PackageVersion: 2.29.0 +PackageProjectUrl: https://www.mongodb.com/docs/drivers/csharp/ +Authors: MongoDB Inc. +License: Apache-2.0 +LicenseUrl: https://licenses.nuget.org/Apache-2.0 +############################################################### +PackageId: MongoDB.Driver.Core +PackageVersion: 2.29.0 +PackageProjectUrl: https://www.mongodb.com/docs/drivers/csharp/ +Authors: MongoDB Inc. +License: Apache-2.0 +LicenseUrl: https://licenses.nuget.org/Apache-2.0 +############################################################### +PackageId: MongoDB.Libmongocrypt +PackageVersion: 1.12.0 +PackageProjectUrl: http://www.mongodb.org/display/DOCS/CSharp+Language+Center +Authors: MongoDB Inc. +LicenseUrl: https://aka.ms/deprecateLicenseUrl +############################################################### +PackageId: Mono.Unix +PackageVersion: 7.1.0-final.1.21458.1 +PackageProjectUrl: https://github.com/mono/mono.posix +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Newtonsoft.Json +PackageVersion: 13.0.2 +PackageProjectUrl: https://www.newtonsoft.com/json +Authors: James Newton-King +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: RelaxNG +PackageVersion: 3.2.3 +PackageProjectUrl: https://github.com/mono/mono/tree/master/mcs/class/Commons.Xml.Relaxng +Authors: Atsushi Enomoto,Alexandre Alapetite,the Mono team +License: http://www.mono-project.com/FAQ:_Licensing +LicenseUrl: http://www.mono-project.com/FAQ:_Licensing +############################################################### +PackageId: relaxngDatatype +PackageVersion: 1.0.0.39 +PackageProjectUrl: https://github.com/josephmyers/relaxng-tenuto +Authors: relaxngDatatype +############################################################### +PackageId: runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.native.System +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.native.System.Net.Http +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.native.System.Security.Cryptography.Apple +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.2 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: SharpCompress +PackageVersion: 0.30.1 +PackageProjectUrl: https://github.com/adamhathcock/sharpcompress +Authors: Adam Hathcock +############################################################### +PackageId: SIL.Core +PackageVersion: 14.1.1 +PackageProjectUrl: https://github.com/sillsdev/libpalaso +Authors: SIL International +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: SIL.Core.Desktop +PackageVersion: 14.1.1 +PackageProjectUrl: https://github.com/sillsdev/libpalaso +Authors: SIL International +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: SIL.DictionaryServices +PackageVersion: 14.1.1 +PackageProjectUrl: https://github.com/sillsdev/libpalaso +Authors: SIL International +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: SIL.Lift +PackageVersion: 14.1.1 +PackageProjectUrl: https://github.com/sillsdev/libpalaso +Authors: SIL International +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: SIL.WritingSystems +PackageVersion: 14.1.1 +PackageProjectUrl: https://github.com/sillsdev/libpalaso +Authors: SIL International +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Snappier +PackageVersion: 1.0.0 +Authors: btburnett3 +LicenseUrl: https://aka.ms/deprecateLicenseUrl +############################################################### +PackageId: Spart +PackageVersion: 1.0.0 +PackageProjectUrl: https://github.com/sillsdev/spart +Authors: Jonathan de Halleux, SIL +License: https://opensource.org/licenses/Zlib +LicenseUrl: https://opensource.org/licenses/Zlib +############################################################### +PackageId: Swashbuckle.AspNetCore +PackageVersion: 6.8.1 +PackageProjectUrl: https://github.com/domaindrivendev/Swashbuckle.AspNetCore +Authors: domaindrivendev +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Swashbuckle.AspNetCore.Swagger +PackageVersion: 6.8.1 +PackageProjectUrl: https://github.com/domaindrivendev/Swashbuckle.AspNetCore +Authors: domaindrivendev +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Swashbuckle.AspNetCore.SwaggerGen +PackageVersion: 6.8.1 +PackageProjectUrl: https://github.com/domaindrivendev/Swashbuckle.AspNetCore +Authors: domaindrivendev +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Swashbuckle.AspNetCore.SwaggerUI +PackageVersion: 6.8.1 +PackageProjectUrl: https://github.com/domaindrivendev/Swashbuckle.AspNetCore +Authors: domaindrivendev +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.AppContext +PackageVersion: 4.1.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Buffers +PackageVersion: 4.5.1 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://github.com/dotnet/corefx/blob/master/LICENSE.TXT +############################################################### +PackageId: System.Collections +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Collections.Concurrent +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Configuration.ConfigurationManager +PackageVersion: 6.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Diagnostics.Debug +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Diagnostics.DiagnosticSource +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Diagnostics.Tracing +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Drawing.Common +PackageVersion: 6.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Dynamic.Runtime +PackageVersion: 4.0.11 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Formats.Asn1 +PackageVersion: 8.0.1 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Globalization +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Globalization.Calendars +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Globalization.Extensions +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.IdentityModel.Tokens.Jwt +PackageVersion: 7.5.1 +PackageProjectUrl: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.IO +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.IO.FileSystem +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.IO.FileSystem.AccessControl +PackageVersion: 5.0.0 +PackageProjectUrl: https://github.com/dotnet/runtime +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.IO.FileSystem.Primitives +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Linq +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Linq.Expressions +PackageVersion: 4.1.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Memory +PackageVersion: 4.5.5 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://github.com/dotnet/corefx/blob/master/LICENSE.TXT +############################################################### +PackageId: System.Net.Http +PackageVersion: 4.3.4 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Net.Primitives +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.ObjectModel +PackageVersion: 4.0.12 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Reflection +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Reflection.Emit +PackageVersion: 4.0.1 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Reflection.Emit.ILGeneration +PackageVersion: 4.0.1 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Reflection.Emit.Lightweight +PackageVersion: 4.0.1 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Reflection.Extensions +PackageVersion: 4.0.1 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Reflection.Primitives +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Reflection.TypeExtensions +PackageVersion: 4.1.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Resources.ResourceManager +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Runtime +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Runtime.CompilerServices.Unsafe +PackageVersion: 5.0.0 +PackageProjectUrl: https://github.com/dotnet/runtime +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Runtime.Extensions +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Runtime.Handles +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Runtime.InteropServices +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Runtime.InteropServices.RuntimeInformation +PackageVersion: 4.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Runtime.Numerics +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.AccessControl +PackageVersion: 6.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Security.Cryptography.Algorithms +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.Cryptography.Cng +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.Cryptography.Csp +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.Cryptography.Encoding +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.Cryptography.OpenSsl +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.Cryptography.Pkcs +PackageVersion: 8.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Security.Cryptography.Primitives +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.Cryptography.ProtectedData +PackageVersion: 6.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Security.Cryptography.X509Certificates +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Security.Permissions +PackageVersion: 6.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Security.Principal.Windows +PackageVersion: 5.0.0 +PackageProjectUrl: https://github.com/dotnet/runtime +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: System.Text.Encoding +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Threading +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.Threading.Tasks +PackageVersion: 4.3.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: http://go.microsoft.com/fwlink/?LinkId=329770 +LicenseUrl: http://go.microsoft.com/fwlink/?LinkId=329770 +############################################################### +PackageId: System.ValueTuple +PackageVersion: 4.5.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://github.com/dotnet/corefx/blob/master/LICENSE.TXT +############################################################### +PackageId: System.Windows.Extensions +PackageVersion: 6.0.0 +PackageProjectUrl: https://dot.net/ +Authors: Microsoft +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT +############################################################### +PackageId: Tenuto +PackageVersion: 1.0.0.39 +PackageProjectUrl: https://github.com/josephmyers/relaxng-tenuto +Authors: Tenuto +############################################################### +PackageId: Xabe.FFmpeg +PackageVersion: 5.2.6 +PackageProjectUrl: https://ffmpeg.xabe.net/index.html +Authors: Xabe +License: https://ffmpeg.xabe.net/license.html +LicenseUrl: https://ffmpeg.xabe.net/license.html +############################################################### +PackageId: ZstdSharp.Port +PackageVersion: 0.7.3 +PackageProjectUrl: https://github.com/oleg-st/ZstdSharp +Authors: Oleg Stepanischev +License: MIT +LicenseUrl: https://licenses.nuget.org/MIT diff --git a/docs/user_guide/assets/licenses/frontend_licenses.txt b/docs/user_guide/assets/licenses/frontend_licenses.txt index a89bfe3383..2782dbbba2 100644 --- a/docs/user_guide/assets/licenses/frontend_licenses.txt +++ b/docs/user_guide/assets/licenses/frontend_licenses.txt @@ -41476,7 +41476,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -dset 3.1.3 +dset 3.1.4 MIT The MIT License (MIT) diff --git a/maintenance/requirements.txt b/maintenance/requirements.txt index fefff5d8b8..56a4f0d055 100644 --- a/maintenance/requirements.txt +++ b/maintenance/requirements.txt @@ -18,13 +18,15 @@ cryptography==43.0.1 # via pyopenssl dnspython==2.6.1 # via pymongo +durationpy==0.8 + # via kubernetes google-auth==2.34.0 # via kubernetes humanfriendly==10.0 # via -r requirements.in idna==3.8 # via requests -kubernetes==30.1.0 +kubernetes==31.0.0 # via -r requirements.in oauthlib==3.2.2 # via @@ -38,7 +40,7 @@ pyasn1-modules==0.4.0 # via google-auth pycparser==2.22 # via cffi -pymongo==4.8.0 +pymongo==4.10.0 # via -r requirements.in pyopenssl==24.2.1 # via -r requirements.in diff --git a/package-lock.json b/package-lock.json index 3e508a6362..467c489958 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9738,9 +9738,9 @@ "dev": true }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, "dependencies": { "bytes": "3.1.2", @@ -9751,7 +9751,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -11379,9 +11379,9 @@ "dev": true }, "node_modules/dset": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/dset/-/dset-3.1.3.tgz", - "integrity": "sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/dset/-/dset-3.1.4.tgz", + "integrity": "sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==", "engines": { "node": ">=4" } @@ -11441,9 +11441,9 @@ } }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "engines": { "node": ">= 0.8" @@ -12944,37 +12944,37 @@ } }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", + "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", "dev": true, "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.10", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -13178,13 +13178,13 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -17663,10 +17663,13 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -18705,9 +18708,9 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", "dev": true }, "node_modules/path-type": { @@ -20374,12 +20377,12 @@ } }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -22699,9 +22702,9 @@ } }, "node_modules/rollup": { - "version": "2.79.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", - "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "version": "2.79.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.2.tgz", + "integrity": "sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -23009,9 +23012,9 @@ } }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dev": true, "dependencies": { "debug": "2.6.9", @@ -23047,6 +23050,15 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -23141,15 +23153,15 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dev": true, "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" diff --git a/package.json b/package.json index 11950785ef..8936b2d427 100644 --- a/package.json +++ b/package.json @@ -11,14 +11,14 @@ "drop-database": "tsc scripts/dropDB.ts && node scripts/dropDB.js", "eject": "react-scripts eject", "find-circular-deps": "npx -y madge -c src/index.tsx", - "fmt-backend": " dotnet-format && dotnet-format Backend.Tests", - "fmt-backend-check": "dotnet-format --check && dotnet-format --check Backend.Tests", + "fmt-backend": " dotnet format && dotnet format Backend.Tests", + "fmt-backend-check": "dotnet format --verify-no-changes && dotnet format --verify-no-changes Backend.Tests", "fmt-frontend": " prettier --write \"./{.github,.vscode,certmgr,deploy,docs,public,scripts,src}/**/*.{js,jsx,ts,tsx,json,md,yml,yaml}\"", "fmt-frontend-check": "prettier --check \"./{.github,.vscode,certmgr,deploy,docs,public,scripts,src}/**/*.{js,jsx,ts,tsx,json,md,yml,yaml}\"", "frontend": "npm run set-release && react-scripts start", "gen-backend-coverage-report": "tsc scripts/genBackendCoverageReport.ts && node scripts/genBackendCoverageReport.js", - "license-report-backend": " dotnet-project-licenses --include-transitive --input ./Backend/BackendFramework.csproj --output --outfile docs/user_guide/assets/licenses/backend_licenses.txt", - "license-summary-backend": "dotnet-project-licenses --include-transitive --input ./Backend/BackendFramework.csproj", + "license-report-backend": " nuget-license --include-transitive --input ./Backend/BackendFramework.csproj --output JsonPretty > docs/user_guide/assets/licenses/backend_licenses.json | exit 0 && node scripts/createBackendLicenses.js", + "license-summary-backend": "nuget-license --include-transitive --input ./Backend/BackendFramework.csproj", "license-report-frontend": " npm install && license-checker-rseidelsohn --production --excludePrivatePackages --plainVertical --out docs/user_guide/assets/licenses/frontend_licenses.txt", "license-summary-frontend": "npm install && license-checker-rseidelsohn --production --excludePrivatePackages --summary", "lint": " eslint --max-warnings=0 --ext js,ts,tsx,jsx src", diff --git a/scripts/createBackendLicenses.js b/scripts/createBackendLicenses.js new file mode 100644 index 0000000000..3c9c667809 --- /dev/null +++ b/scripts/createBackendLicenses.js @@ -0,0 +1,36 @@ +// To be run after generating a JSON license file with nuget-license + +const fs = require("fs"); + +const fileNameNoExt = "docs/user_guide/assets/licenses/backend_licenses"; +const fileNameIn = `${fileNameNoExt}.json`; +const fileNameOut = `${fileNameNoExt}.txt`; + +console.log(`Reading JSON data from ${fileNameIn}`); +const licenseData = JSON.parse(fs.readFileSync(fileNameIn)); + +// Ignore "LicenseInformationOrigin", "ValidationErrors" +const infoKeys = [ + "PackageId", + "PackageVersion", + "PackageProjectUrl", + "Authors", + "License", + "LicenseUrl", +]; + +const sep = "###############################################################\n"; +let licensesString = ""; + +for (const data of licenseData) { + licensesString += sep; + for (const key of infoKeys) { + const datum = data[key]; + if (datum) { + licensesString += `${key}: ${datum}\n`; + } + } +} + +console.log(`Writing license data to ${fileNameOut}`); +fs.writeFileSync(fileNameOut, licensesString); diff --git a/src/api/api/user-role-api.ts b/src/api/api/user-role-api.ts index f7a94dd786..43f6432900 100644 --- a/src/api/api/user-role-api.ts +++ b/src/api/api/user-role-api.ts @@ -50,6 +50,60 @@ export const UserRoleApiAxiosParamCreator = function ( configuration?: Configuration ) { return { + /** + * + * @param {string} projectId + * @param {string} oldUserId + * @param {string} newUserId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + changeOwner: async ( + projectId: string, + oldUserId: string, + newUserId: string, + options: any = {} + ): Promise => { + // verify required parameter 'projectId' is not null or undefined + assertParamExists("changeOwner", "projectId", projectId); + // verify required parameter 'oldUserId' is not null or undefined + assertParamExists("changeOwner", "oldUserId", oldUserId); + // verify required parameter 'newUserId' is not null or undefined + assertParamExists("changeOwner", "newUserId", newUserId); + const localVarPath = + `/v1/projects/{projectId}/userroles/changeowner/{oldUserId}/{newUserId}` + .replace(`{${"projectId"}}`, encodeURIComponent(String(projectId))) + .replace(`{${"oldUserId"}}`, encodeURIComponent(String(oldUserId))) + .replace(`{${"newUserId"}}`, encodeURIComponent(String(newUserId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: "GET", + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * * @param {string} projectId @@ -415,6 +469,35 @@ export const UserRoleApiAxiosParamCreator = function ( export const UserRoleApiFp = function (configuration?: Configuration) { const localVarAxiosParamCreator = UserRoleApiAxiosParamCreator(configuration); return { + /** + * + * @param {string} projectId + * @param {string} oldUserId + * @param {string} newUserId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async changeOwner( + projectId: string, + oldUserId: string, + newUserId: string, + options?: any + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.changeOwner( + projectId, + oldUserId, + newUserId, + options + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + ); + }, /** * * @param {string} projectId @@ -611,6 +694,24 @@ export const UserRoleApiFactory = function ( ) { const localVarFp = UserRoleApiFp(configuration); return { + /** + * + * @param {string} projectId + * @param {string} oldUserId + * @param {string} newUserId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + changeOwner( + projectId: string, + oldUserId: string, + newUserId: string, + options?: any + ): AxiosPromise { + return localVarFp + .changeOwner(projectId, oldUserId, newUserId, options) + .then((request) => request(axios, basePath)); + }, /** * * @param {string} projectId @@ -722,6 +823,34 @@ export const UserRoleApiFactory = function ( }; }; +/** + * Request parameters for changeOwner operation in UserRoleApi. + * @export + * @interface UserRoleApiChangeOwnerRequest + */ +export interface UserRoleApiChangeOwnerRequest { + /** + * + * @type {string} + * @memberof UserRoleApiChangeOwner + */ + readonly projectId: string; + + /** + * + * @type {string} + * @memberof UserRoleApiChangeOwner + */ + readonly oldUserId: string; + + /** + * + * @type {string} + * @memberof UserRoleApiChangeOwner + */ + readonly newUserId: string; +} + /** * Request parameters for createUserRole operation in UserRoleApi. * @export @@ -862,6 +991,27 @@ export interface UserRoleApiUpdateUserRoleRequest { * @extends {BaseAPI} */ export class UserRoleApi extends BaseAPI { + /** + * + * @param {UserRoleApiChangeOwnerRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UserRoleApi + */ + public changeOwner( + requestParameters: UserRoleApiChangeOwnerRequest, + options?: any + ) { + return UserRoleApiFp(this.configuration) + .changeOwner( + requestParameters.projectId, + requestParameters.oldUserId, + requestParameters.newUserId, + options + ) + .then((request) => request(this.axios, this.basePath)); + } + /** * * @param {UserRoleApiCreateUserRoleRequest} requestParameters Request parameters. diff --git a/src/backend/index.ts b/src/backend/index.ts index 718d125f51..250807bb5a 100644 --- a/src/backend/index.ts +++ b/src/backend/index.ts @@ -790,6 +790,15 @@ export async function removeUserRole( await userRoleApi.deleteUserRole(params, defaultOptions()); } +export async function changeProjectOwner( + projectId: string, + oldUserId: string, + newUserId: string +): Promise { + const params = { projectId, oldUserId, newUserId }; + await userRoleApi.changeOwner(params, defaultOptions()); +} + /* WordController.cs */ export async function areInFrontier( diff --git a/src/components/App/tests/index.test.tsx b/src/components/App/tests/index.test.tsx index f0a5af0c22..19ccd34ee8 100644 --- a/src/components/App/tests/index.test.tsx +++ b/src/components/App/tests/index.test.tsx @@ -1,3 +1,4 @@ +import { ThemeProvider } from "@mui/material/styles"; import { render } from "@testing-library/react"; import "jest-canvas-mock"; import { act } from "react"; @@ -7,6 +8,7 @@ import thunk from "redux-thunk"; import App from "components/App"; import { defaultState } from "rootRedux/types"; +import theme from "types/theme"; jest.mock("react-router-dom"); @@ -21,9 +23,11 @@ describe("App", () => { it("renders without crashing", async () => { await act(async () => { render( - - - + + + + + ); }); }); diff --git a/src/components/AppBar/Logo.tsx b/src/components/AppBar/Logo.tsx index 4847063f18..75eea7aac2 100644 --- a/src/components/AppBar/Logo.tsx +++ b/src/components/AppBar/Logo.tsx @@ -1,4 +1,4 @@ -import { Button, Hidden } from "@mui/material"; +import { Button, Theme, useMediaQuery } from "@mui/material"; import { ReactElement } from "react"; import { useNavigate } from "react-router-dom"; @@ -13,6 +13,8 @@ export const logoButtonLabel = "The Combine - return home"; /** A button that redirects to the home page */ export default function Logo(): ReactElement { + const isSmDown = useMediaQuery((th) => th.breakpoints.down("sm")); + const isMdDown = useMediaQuery((th) => th.breakpoints.down("md")); const navigate = useNavigate(); return ( ); } diff --git a/src/components/AppBar/NavigationButtons.tsx b/src/components/AppBar/NavigationButtons.tsx index 39c5765840..56640c49fe 100644 --- a/src/components/AppBar/NavigationButtons.tsx +++ b/src/components/AppBar/NavigationButtons.tsx @@ -1,6 +1,12 @@ import { PlaylistAdd, Rule } from "@mui/icons-material"; -import { Button, Hidden, Tooltip, Typography } from "@mui/material"; -import { ReactElement, useEffect, useState } from "react"; +import { + Button, + type Theme, + Tooltip, + Typography, + useMediaQuery, +} from "@mui/material"; +import { type ReactElement, useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; import { useNavigate } from "react-router-dom"; @@ -71,6 +77,7 @@ function NavButton(props: NavButtonProps): ReactElement { const { t } = useTranslation(); const navigate = useNavigate(); const { windowWidth } = useWindowSize(); + const showText = useMediaQuery((th) => th.breakpoints.up("sm")); return ( ); } diff --git a/src/components/AppBar/ProjectButtons.tsx b/src/components/AppBar/ProjectButtons.tsx index af9293a686..4507ce2961 100644 --- a/src/components/AppBar/ProjectButtons.tsx +++ b/src/components/AppBar/ProjectButtons.tsx @@ -1,5 +1,11 @@ import { BarChart, Settings } from "@mui/icons-material"; -import { Button, Hidden, Tooltip, Typography } from "@mui/material"; +import { + Button, + Theme, + Tooltip, + Typography, + useMediaQuery, +} from "@mui/material"; import { ReactElement, useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; import { useSelector } from "react-redux"; @@ -42,6 +48,15 @@ export default function ProjectButtons(props: TabProps): ReactElement { const { t } = useTranslation(); const navigate = useNavigate(); + const isMdUp = useMediaQuery((th) => th.breakpoints.up("md")); + const isLg = useMediaQuery((th) => th.breakpoints.only("lg")); + const isXl = useMediaQuery((th) => th.breakpoints.only("xl")); + const nameLength = isXl + ? projNameLength.xl + : isLg + ? projNameLength.lg + : projNameLength.md; + useEffect(() => { hasPermission(Permission.Statistics).then(setHasStatsPermission); }, []); @@ -77,22 +92,14 @@ export default function ProjectButtons(props: TabProps): ReactElement { }} > - + {isMdUp && ( - - {shortenName(projectName, projNameLength.xl)} - - - {shortenName(projectName, projNameLength.lg)} - - - {shortenName(projectName, projNameLength.md)} - + {shortenName(projectName, nameLength)} - + )} {showSpeaker && } diff --git a/src/components/AppBar/UserMenu.tsx b/src/components/AppBar/UserMenu.tsx index 429d5860e0..5cdbdcfd3a 100644 --- a/src/components/AppBar/UserMenu.tsx +++ b/src/components/AppBar/UserMenu.tsx @@ -7,15 +7,15 @@ import { import { Avatar, Button, - Hidden, Menu, MenuItem, + type Theme, Typography, + useMediaQuery, } from "@mui/material"; import { type CSSProperties, type ForwardedRef, - Fragment, type MouseEvent, type ReactElement, useState, @@ -53,6 +53,10 @@ export default function UserMenu(props: TabProps): ReactElement { const [isAdmin, setIsAdmin] = useState(false); const username = LocalStorage.getCurrentUser()?.username; + const isLgUp = useMediaQuery((th) => th.breakpoints.up("lg")); + const isXl = useMediaQuery((th) => th.breakpoints.only("xl")); + const nameLength = isXl ? usernameLength.xl : usernameLength.lg; + function handleClick(event: MouseEvent): void { setAnchorElement(event.currentTarget); } @@ -78,17 +82,10 @@ export default function UserMenu(props: TabProps): ReactElement { padding: 0, }} > - {username ? ( - - - {shortenName(username, usernameLength.xl)} - - {shortenName(username, usernameLength.lg)} - - - - ) : ( - + {!!username && isLgUp && ( + + {shortenName(username, nameLength)} + )} {avatar ? ( diff --git a/src/components/AppBar/tests/Logo.test.tsx b/src/components/AppBar/tests/Logo.test.tsx index be69cce765..0a6721c13c 100644 --- a/src/components/AppBar/tests/Logo.test.tsx +++ b/src/components/AppBar/tests/Logo.test.tsx @@ -1,9 +1,11 @@ +import { ThemeProvider } from "@mui/material/styles"; import { render, screen } from "@testing-library/react"; import userEvent from "@testing-library/user-event"; import { act } from "react"; import Logo, { logoButtonLabel } from "components/AppBar/Logo"; import { Path } from "types/path"; +import theme from "types/theme"; jest.mock("react-router-dom", () => ({ useNavigate: @@ -16,7 +18,11 @@ const mockNavigate = jest.fn(); beforeAll(async () => { await act(async () => { - render(); + render( + + + + ); }); }); diff --git a/src/components/AppBar/tests/NavigationButtons.test.tsx b/src/components/AppBar/tests/NavigationButtons.test.tsx index 45d02e0f55..ac0b442af7 100644 --- a/src/components/AppBar/tests/NavigationButtons.test.tsx +++ b/src/components/AppBar/tests/NavigationButtons.test.tsx @@ -1,3 +1,4 @@ +import { ThemeProvider } from "@mui/material/styles"; import { Provider } from "react-redux"; import renderer, { type ReactTestInstance } from "react-test-renderer"; import configureMockStore from "redux-mock-store"; @@ -8,7 +9,7 @@ import NavigationButtons, { dataEntryButtonId, } from "components/AppBar/NavigationButtons"; import { Path } from "types/path"; -import { themeColors } from "types/theme"; +import theme, { themeColors } from "types/theme"; jest.mock("react-router-dom", () => ({ useNavigate: jest.fn(), @@ -34,9 +35,11 @@ const renderNavButtons = async ( mockGetCurrentPermissions.mockResolvedValue([permission]); await renderer.act(async () => { testRenderer = renderer.create( - - - + + + + + ); }); }; diff --git a/src/components/AppBar/tests/ProjectButtons.test.tsx b/src/components/AppBar/tests/ProjectButtons.test.tsx index b5ea3f7b36..cf66ae5343 100644 --- a/src/components/AppBar/tests/ProjectButtons.test.tsx +++ b/src/components/AppBar/tests/ProjectButtons.test.tsx @@ -1,4 +1,5 @@ import { Button } from "@mui/material"; +import { ThemeProvider } from "@mui/material/styles"; import { Provider } from "react-redux"; import { ReactTestRenderer, act, create } from "react-test-renderer"; import configureMockStore, { MockStoreEnhanced } from "redux-mock-store"; @@ -14,7 +15,7 @@ import { MergeDups } from "goals/MergeDuplicates/MergeDupsTypes"; import { ReviewEntries } from "goals/ReviewEntries/ReviewEntriesTypes"; import { Goal, GoalStatus } from "types/goals"; import { Path } from "types/path"; -import { themeColors } from "types/theme"; +import theme, { themeColors } from "types/theme"; jest.mock("react-router-dom", () => ({ useNavigate: jest.fn(), @@ -46,9 +47,11 @@ const renderProjectButtons = async ( ): Promise => { await act(async () => { testRenderer = create( - - - + + + + + ); }); }; diff --git a/src/components/AppBar/tests/UserMenu.test.tsx b/src/components/AppBar/tests/UserMenu.test.tsx index 853885fd5d..5fc178b73e 100644 --- a/src/components/AppBar/tests/UserMenu.test.tsx +++ b/src/components/AppBar/tests/UserMenu.test.tsx @@ -1,10 +1,12 @@ import { Button, MenuItem } from "@mui/material"; +import { ThemeProvider } from "@mui/material/styles"; import { Provider } from "react-redux"; import { act, create, ReactTestRenderer } from "react-test-renderer"; import configureMockStore from "redux-mock-store"; import UserMenu, { UserMenuList } from "components/AppBar/UserMenu"; import { Path } from "types/path"; +import theme from "types/theme"; jest.mock("backend", () => ({ isSiteAdmin: () => mockIsSiteAdmin(), @@ -37,9 +39,11 @@ describe("UserMenu", () => { it("renders", async () => { await act(async () => { testRenderer = create( - - - + + + + + ); }); expect(testRenderer.root.findAllByType(Button).length).toEqual(1); diff --git a/src/components/AppBar/tests/index.test.tsx b/src/components/AppBar/tests/index.test.tsx index c5eede11d0..0744a682fb 100644 --- a/src/components/AppBar/tests/index.test.tsx +++ b/src/components/AppBar/tests/index.test.tsx @@ -1,3 +1,4 @@ +import { ThemeProvider } from "@mui/material/styles"; import { render } from "@testing-library/react"; import { act } from "react"; import { Provider } from "react-redux"; @@ -6,6 +7,7 @@ import configureMockStore from "redux-mock-store"; import AppBar from "components/AppBar"; import { defaultState } from "rootRedux/types"; +import theme from "types/theme"; jest.mock("backend", () => ({ isSiteAdmin: () => mockIsSiteAdmin(), @@ -27,11 +29,13 @@ describe("AppBar", () => { it("renders", async () => { await act(async () => { render( - - - - - + + + + + + + ); }); }); diff --git a/src/components/LandingPage/TopBar.tsx b/src/components/LandingPage/TopBar.tsx index 9b67e40819..f0ecd1eb84 100644 --- a/src/components/LandingPage/TopBar.tsx +++ b/src/components/LandingPage/TopBar.tsx @@ -1,4 +1,11 @@ -import { AppBar, Hidden, Stack, Toolbar, Typography } from "@mui/material"; +import { + AppBar, + Stack, + Theme, + Toolbar, + Typography, + useMediaQuery, +} from "@mui/material"; import { ReactElement } from "react"; import { useTranslation } from "react-i18next"; @@ -8,6 +15,8 @@ export const topBarHeight = 70; /** A bar shown at the top of the landing page. */ export default function TopBar(): ReactElement { + const showSubtitle = useMediaQuery((th) => th.breakpoints.up("sm")); + const isMdUp = useMediaQuery((th) => th.breakpoints.up("md")); const { t } = useTranslation(); return ( @@ -22,12 +31,11 @@ export default function TopBar(): ReactElement { style={{ width: "100%" }} > Logo - - {t("landingPage.subtitle")} - - - {t("landingPage.subtitle")} - + {showSubtitle && ( + + {t("landingPage.subtitle")} + + )} diff --git a/src/components/LandingPage/index.tsx b/src/components/LandingPage/index.tsx index 98c94533f1..f167ff75bf 100644 --- a/src/components/LandingPage/index.tsx +++ b/src/components/LandingPage/index.tsx @@ -1,4 +1,11 @@ -import { Box, Grid, Hidden, Stack, Typography } from "@mui/material"; +import { + Box, + Grid, + Stack, + Theme, + Typography, + useMediaQuery, +} from "@mui/material"; import { ReactElement, useEffect } from "react"; import { useTranslation } from "react-i18next"; import { useNavigate } from "react-router-dom"; @@ -21,42 +28,31 @@ const heightBetweenBars = parseInt(theme.spacing(1)); export default function LandingPage(): ReactElement { + const isXs = useMediaQuery((th) => th.breakpoints.only("xs")); const navigate = useNavigate(); + useEffect(() => { // If there is an AnnouncementBanner and somebody enters the URL for // the LandingPage when displaying page without an AppBar, this // prevents banner misalignment. navigate(Path.Root); }, [navigate]); + + const maxBodyHeight = + heightBetweenBars - (isXs ? horizontalButtonsHeight : 0); + return ( <> - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + diff --git a/src/components/ProjectScreen/index.tsx b/src/components/ProjectScreen/index.tsx index cb9e57e928..287aebf0ea 100644 --- a/src/components/ProjectScreen/index.tsx +++ b/src/components/ProjectScreen/index.tsx @@ -1,4 +1,4 @@ -import { Hidden, Stack } from "@mui/material"; +import { Stack, Theme, useMediaQuery } from "@mui/material"; import { ReactElement, useEffect } from "react"; import { clearCurrentProject } from "components/Project/ProjectActions"; @@ -10,6 +10,8 @@ import { useAppDispatch } from "rootRedux/hooks"; /** Where users create a project or choose an existing one */ export default function ProjectScreen(): ReactElement { const dispatch = useAppDispatch(); + const isXs = useMediaQuery((th) => th.breakpoints.only("xs")); + /* Disable Data Entry, Data Cleanup, Project Settings until a project is selected or created. */ useEffect(() => { dispatch(clearCurrentProject()); @@ -17,19 +19,14 @@ export default function ProjectScreen(): ReactElement { }, [dispatch]); return ( - <> - - - - - - - - - - - - - + + + + ); } diff --git a/src/components/ProjectScreen/tests/index.test.tsx b/src/components/ProjectScreen/tests/index.test.tsx index 6fe5ffbd22..4df46944d6 100644 --- a/src/components/ProjectScreen/tests/index.test.tsx +++ b/src/components/ProjectScreen/tests/index.test.tsx @@ -1,6 +1,8 @@ +import { ThemeProvider } from "@mui/material/styles"; import renderer from "react-test-renderer"; import ProjectScreen from "components/ProjectScreen"; +import theme from "types/theme"; jest.mock("components/ProjectScreen/ChooseProject", () => "div"); jest.mock("components/ProjectScreen/CreateProject", () => "div"); @@ -12,7 +14,11 @@ const mockDispatch = jest.fn(); it("renders without crashing", () => { renderer.act(() => { - renderer.create(); + renderer.create( + + + + ); }); expect(mockDispatch).toHaveBeenCalledTimes(2); }); diff --git a/src/components/ProjectSettings/index.tsx b/src/components/ProjectSettings/index.tsx index fe8cc7d3c2..c21fa820fe 100644 --- a/src/components/ProjectSettings/index.tsx +++ b/src/components/ProjectSettings/index.tsx @@ -16,12 +16,13 @@ import { import { Box, Divider, - Hidden, Stack, Tab, Tabs, + type Theme, Tooltip, Typography, + useMediaQuery, } from "@mui/material"; import { type ReactElement, @@ -90,6 +91,7 @@ export default function ProjectSettingsComponent(): ReactElement { const project = useAppSelector( (state: StoreState) => state.currentProjectState.project ); + const hideLabels = useMediaQuery((th) => th.breakpoints.down("md")); const navigate = useNavigate(); const { t } = useTranslation(); @@ -139,23 +141,13 @@ export default function ProjectSettingsComponent(): ReactElement { - - - - - - + diff --git a/src/components/ProjectSettings/tests/index.test.tsx b/src/components/ProjectSettings/tests/index.test.tsx index 31138ed374..ef1ee8e3a4 100644 --- a/src/components/ProjectSettings/tests/index.test.tsx +++ b/src/components/ProjectSettings/tests/index.test.tsx @@ -1,3 +1,4 @@ +import { ThemeProvider } from "@mui/material/styles"; import { LocalizationProvider } from "@mui/x-date-pickers"; import { AdapterDayjs } from "@mui/x-date-pickers/AdapterDayjs"; import "@testing-library/jest-dom"; @@ -20,6 +21,7 @@ import { whichTabs, } from "components/ProjectSettings/tests/SettingsTabTypes"; import { randomProject } from "types/project"; +import theme from "types/theme"; jest.mock("react-router-dom", () => ({ useNavigate: jest.fn(), @@ -62,9 +64,11 @@ const updateProjSettings = async (hasSchedule = false): Promise => { // This is accomplished by randomProject() in createMockStore(). render( - - - + + + + + ); }); @@ -88,16 +92,18 @@ const createMatchMedia = ( }; beforeAll(async () => { - // Required for the elements to show up + // Required (along with a `ThemeProvider`) for `useMediaQuery` to work window.matchMedia = createMatchMedia(window.innerWidth); resetMocks(); await act(async () => { render( - - - + + + + + ); }); diff --git a/src/components/ProjectUsers/CancelConfirmDialogCollection.tsx b/src/components/ProjectUsers/CancelConfirmDialogCollection.tsx index eb3b5c16cb..d0c0f407b7 100644 --- a/src/components/ProjectUsers/CancelConfirmDialogCollection.tsx +++ b/src/components/ProjectUsers/CancelConfirmDialogCollection.tsx @@ -5,7 +5,11 @@ import { useTranslation } from "react-i18next"; import { toast } from "react-toastify"; import { Role } from "api/models"; -import { addOrUpdateUserRole, removeUserRole } from "backend"; +import { + addOrUpdateUserRole, + changeProjectOwner, + removeUserRole, +} from "backend"; import { CancelConfirmDialog } from "components/Dialogs"; import { asyncRefreshProjectUsers } from "components/Project/ProjectActions"; import { useAppDispatch } from "rootRedux/hooks"; @@ -97,14 +101,7 @@ export default function CancelConfirmDialogCollection( } function makeOwner(userId: string): void { - addOrUpdateUserRole(props.projectId, Role.Owner, userId) - .then(() => { - addOrUpdateUserRole( - props.projectId, - Role.Administrator, - props.currentUserId - ); - }) + changeProjectOwner(props.projectId, props.currentUserId, userId) .then(() => { setMakeOwner(false); setAnchorEl(undefined); diff --git a/src/components/TreeView/TreeDepiction/index.tsx b/src/components/TreeView/TreeDepiction/index.tsx index 74a4dafce3..60518b94dd 100644 --- a/src/components/TreeView/TreeDepiction/index.tsx +++ b/src/components/TreeView/TreeDepiction/index.tsx @@ -1,4 +1,4 @@ -import { Grid, Hidden } from "@mui/material"; +import { Grid, Theme, useMediaQuery } from "@mui/material"; import { ReactElement, useEffect, useState } from "react"; import ChildrenRow from "components/TreeView/TreeDepiction/ChildrenRow"; @@ -13,6 +13,8 @@ import { parent } from "resources/tree"; import { useWindowSize } from "utilities/useWindowSize"; export default function TreeDepiction(props: TreeDepictionProps): ReactElement { + const showTree = useMediaQuery((th) => th.breakpoints.up("sm")); + const [colWidth, setColWidth] = useState(0); const { windowWidth } = useWindowSize(); @@ -25,45 +27,36 @@ export default function TreeDepiction(props: TreeDepictionProps): ReactElement { return ( <> {/* Display parent domain, if available. */} - - {currentDomain.parent && ( - <> - - - - - - - - )} - + {showTree && currentDomain.parent && ( + <> + + + + + + + + )} {/* Display current domain and (if available) left and right brothers. */} - - - - - - + {/* Display subdomains, if available. */} - - - {currentDomain.children.length > 0 && ( - - )} - - + + {showTree && currentDomain.children.length > 0 && ( + + )} + ); } diff --git a/src/components/TreeView/TreeDepiction/tests/__snapshots__/index.test.tsx.snap b/src/components/TreeView/TreeDepiction/tests/__snapshots__/index.test.tsx.snap index 224caf1d8e..65f7bdfe9e 100644 --- a/src/components/TreeView/TreeDepiction/tests/__snapshots__/index.test.tsx.snap +++ b/src/components/TreeView/TreeDepiction/tests/__snapshots__/index.test.tsx.snap @@ -6,7 +6,7 @@ Array [ className="MuiGrid-root MuiGrid-item css-13i4rnv-MuiGrid-root" >