Releases: MrRefactoring/jira.js
Release v4.1.0
-
General Improvements: Enhanced JSDoc documentation across the project for better clarity and developer experience.
-
Deprecation: Marked the
InstanceInformation.getLicense
method as deprecated. -
Deprecation: Marked the
Issues.getCreateIssueMeta
method as deprecated. -
Deprecation: Marked the
PageBeanFieldConfigurationDetails
class as deprecated. UsePaginated<FieldConfigurationDetails>
instead. -
Deprecation: Marked the
WorkflowUpdateResponse
andWorkflowCreateResponse
classes as deprecated. -
New APIs: Added the following classes to support additional Jira APIs:
AppDataPolicies
: Manage app access rule data policies, allowing developers to set and retrieve rules controlling app access (documentation).ClassificationLevels
: Define and manage classification levels for sensitive information in Jira (documentation).IssueBulkOperations
: Perform bulk operations on issues, such as moving multiple issues between projects or updating multiple fields in one request. For additional guidance, refer to Bulk operation APIs: additional examples and FAQ (documentation).Plans
: Manage advanced roadmaps plans, including creating, duplicating, updating, archiving, and trashing plans (documentation).PrioritySchemes
: Create, retrieve, update, and delete issue priority schemes to standardize prioritization across projects (documentation).ProjectClassificationLevels
: View and manage classification levels within individual projects to ensure compliance with organizational standards (documentation).ServiceRegistry
: Access and manage attributes related to Jira Service Management’s service registry, which helps organize and maintain services (documentation).TeamsInPlan
: Configure settings for Atlassian and custom teams within advanced roadmaps plans, including creating, updating, and deleting team configurations (documentation).
-
Improvement: Changed the return type of
ProjectKeyAndNameValidation.getValidProjectKey
andProjectKeyAndNameValidation.getValidProjectName
fromunknown
tostring
for improved type safety and usability. -
Improvement: Added the
approximateLastUsed
parameter to theFilters.createFilter
method. -
Improvement: Added the
isSubstringMatch
parameter to theFilters.getFiltersPaginated
method. -
Improvement: Updated the
IssueComments.updateComment
method to allow passing a plain string for the comment instead of requiring a specific object format. -
Improvement: Added the
parentId
parameter to theIssueComments.deleteComment
method. -
Improvement: Added the
releasedProjectKeys
property to theProjects.updateProject
method. -
Improvement: Added the
avatarId
parameter to theIssuePriorities.createPriority
method. This parameter will replaceiconUrl
starting March 16, 2025. TheiconUrl
parameter is now marked as deprecated. -
Improvement: Added the
priorityName
andexpand
properties to theIssuePriorities.searchPriorities
method. -
Improvement: Added the
avatarId
parameter to theIssuePriorities.updatePriority
method. This parameter will replaceiconUrl
starting March 16, 2025. TheiconUrl
parameter is now marked as deprecated. -
Improvement: Added the
issueId
property to theUserSearch.findAssignableUsers
method. -
Improvement: Added the optional
skipNotFoundPrecomputations
property to theJqlFunctionsApps.updatePrecomputations
method. -
Improvement: Added the
failFast
parameter to theIssues.getIssue
method. -
Improvement: Added the
failFast
parameter to theIssueSearch.searchForIssuesUsingJql
method. -
Improvement: Added the
ari
andmetadata
parameters to theProjectComponents.createComponent
method. -
Improvement: Added the optional
componentSource
parameter to theProjectComponents.getProjectComponentsPaginated
method. -
Improvement: Added the optional
componentSource
parameter to theProjectComponents.getProjectComponents
method. -
Improvement: Added the
approvers
anddriver
parameters to theProjectVersions.createVersion
andProjectVersions.updateVersion
methods. -
Improvement: Replaced the
maxResults
property withmaxResult
in theUserSearch.findUserKeysByQuery
method. -
Improvement: Added the
extendAdminPermissions
parameter to the following methods in theDashboard
class:Dashboard.createDashboard
Dashboard.updateDashboard
Dashboard.copyDashboard
-
New Method: Added the
getCustomFieldsConfigurations
method to theIssueCustomFieldConfigurationApps
class. -
New Method: Added the
replaceCustomFieldOption
method to theIssueCustomFieldOptions
class. -
New Methods: Added the following methods to the
WorkflowSchemes
class:readWorkflowSchemes
: Retrieve workflow schemes.updateSchemes
: Update workflow schemes.updateWorkflowSchemeMappings
: Update workflow scheme mappings.
-
New Method: Added the
getNotificationSchemeForProject
method to theProjects
class. -
New Method: Added the
getBulkScreenTabs
method to theScreenTabs
class. -
New Method: Added the
deletePriority
method to theIssuePriorities
class. -
New Method: Added the
getPrecomputationsByID
method to theJqlFunctionsApps
class. -
New Methods: Added the following methods to the
Workflows
class:readWorkflows
: Retrieve workflows.workflowCapabilities
: Get workflow capabilities.createWorkflows
: Create new workflows.validateCreateWorkflows
: Validate workflow creation.updateWorkflows
: Update existing workflows.validateUpdateWorkflows
: Validate workflow updates.
-
New Methods: Added the following methods to the
Issues
class:getBulkChangelogs
: Retrieve changelogs for multiple issues in bulk.bulkFetchIssues
: Fetch multiple issues in bulk.getCreateIssueMetaIssueTypes
: Retrieve metadata for issue types when creating issues.getCreateIssueMetaIssueTypeId
: Retrieve metadata for a specific issue type by ID when creating issues.getIssueLimitReport
: Retrieve a report on issue limits.
-
New Methods: Added the following methods to the
IssueSearch
class:countIssues
: Count issues matching a query.searchForIssuesIds
: Search for issue IDs using a query.searchForIssuesUsingJqlEnhancedSearch
: Search and reconcile issues using JQL.searchForIssuesUsingJqlEnhancedSearchPost
: Search and reconcile issues using JQL via POST request.
-
New Methods: Added the following methods to the
IssueWorklogs
class:bulkDeleteWorklogs
: Delete multiple worklogs in bulk.bulkMoveWorklogs
: Move multiple worklogs in bulk.
-
New Method: Added the
evaluateJiraExpressionUsingEnhancedSearch
method to theJiraExpressions
class. -
New Method: Added the
findComponentsForProjects
method to theProjectComponents
class. -
New Methods: Added the following methods to the
ProjectVersions
class:deleteRelatedWork
: Delete related work for a version.updateRelatedWork
: Update related work for a version.createRelatedWork
: Create related work for a version.getRelatedWork
: Retrieve related work for a version.
-
New Method: Added the
getProjectUsagesForWorkflowScheme
method to theWorkflowSchemes
class. -
New Method: Added the
getWorkflowProjectIssueTypeUsages
method to theWorkflows
class. -
New Methods: Added the following methods to the
Status
class:getProjectIssueTypeUsagesForStatus
getProjectUsagesForStatus
getWorkflowUsagesForStatus
-
Fix: Updated the following methods in
Version2Client
andVersion3Client
to make theparameters
argument mandatory (as it should have been initially):IssueFieldConfigurations.createFieldConfiguration
IssueFieldConfigurations.createFieldConfigurationScheme
IssueLinks.linkIssues
IssueTypeSchemes.createIssueTypeScheme
IssueTypeSchemes.assignIssueTypeSchemeToProject
IssueTypeScreenSchemes.createIssueTypeScreenScheme
JQL.parseJqlQueries
TimeTracking.setSharedTimeTrackingConfiguration
WorkflowSchemeProjectAssociations.assignSchemeToProject
IssueTypes.createIssueType
IssueSearch.matchIssues
IssueSearch.searchForIssuesUsingJql
JiraExpressions.evaluateJiraExpression
Users.setUserColumns
Users.getUser
-
Fix: Improved the
Avatars.storeAvatar
method:- Added the
mimeType
parameter to specify the type of the uploaded avatar. - Updated the type of the
avatar
parameter fromany
toBuffer | ArrayBuffer | Uint8Array | any
for better type safety. - Set the default value of the
size
parameter to0
.
- Added the
-
Fix: Improved the ...
Release v4.0.6
- #347: Fixed an issue with adding attachments of type
Readable
orReadableStream
(e.g.,fs.createReadStream
). Thanks to Lunatic174 for reporting the issue.
Release v4.0.5
- #344: Replaced the
mime-types
library withmime
to ensure browser compatibility, asmime-types
relies on thepath
module from Node.js. Thanks to kang for reporting the issue and proposing the fix.
Release v4.0.4
-
#320: Resolved a tree-shaking issue where importing a single client would still include all clients in the output bundle when using bundlers. Now, only the required client code is included. Thanks to Nao Yonashiro for reporting the issue and proposing a fix.
-
#327: Replaced the
form-data
library withformdata-node
to enable compatibility withESM
projects when adding attachments via theissueAttachment.addAttachment
method. Thanks to Paweł Król for reporting the issue and Matyáš Kroupa for implementing the fix. -
Improvement: The type of the
projectIdOrKey
property was updated fromstring
tonumber | string
for project update operations. This enhancement improves type safety and flexibility when handling project identifiers. -
Enhancement: Added a
mimeType
property to theversion2.issueAttachments.addAttachment
,version3.issueAttachments.addAttachment
, andserviceDesk.serviceDesk.attachTemporaryFile
methods. This allows specifying the file type. IfmimeType
is not provided, a default type is inferred from the filename.Examples:
👎 Before:
const client = new Version2Client() || new Version3Client() || new ServiceDeskClient(); const attachment = await client.issueAttachments.addAttachment({ issueIdOrKey: issue.key, attachment: { filename: 'issueAttachments.test.ts', file: fs.readFileSync('./tests/integration/version2/issueAttachments.test.ts'), }, }); console.log(attachment[0].mimeType); // Will be 'video/mp2t'
👍 Now:
const client = new Version2Client() || new Version3Client() || new ServiceDeskClient(); const attachment = await client.issueAttachments.addAttachment({ issueIdOrKey: issue.key, attachment: { filename: 'issueAttachments.test.ts', file: fs.readFileSync('./tests/integration/version2/issueAttachments.test.ts'), mimeType: 'application/typescript', }, }); console.log(attachment[0].mimeType); // Will be 'application/typescript'
Release v4.0.3
4.0.3
- Bug Fix: Fixed an issue with the
Users.createUser
method by adding the requiredproducts
property. Thanks to Appelberg-s for the fix. - Documentation Update: Corrected an error in
README.md
. Thanks to Maurice de Bruyn for the contribution. - Dependencies: Updated all dependencies to their latest versions.
Release v4.0.2
getAllProjects
in README and examples replaced tosearchProjects
. Thanks to Alexander Pivovarov for reporting the issue.- Personal access token link changed to actual in README.
- The test platform has been changed from
ava
tovitest
, thanks to Nato Boram and his reference PR. - Dependencies updated.
- Vulnerabilities fixes.
Release v4.0.1
4.0.1
- Vulnerabilities fixes
v4.0.0
4.0.0
- #309 - Added rate limiting headers. Thanks to Chalenge Masekera.
- #308 - Implemented a new error handling mechanism. Thanks to Dmitry Shilov.
Breaking changes
- The new error handling mechanism may affect your library usage.
v3.0.1
Dependencies upgraded
v3.0.0
Breaking Changes:
-
Avatar Endpoints Updates:
- Methods
avatar.getAvatarImageByID
,getAvatarImageByType
, andgetAvatarImageByOwner
have an updated return type. Avatars will now be returned as binary data. storeAvatar
endpoint has been fixed. It now both accepts and sends theavatar
property.
- Methods
-
Authentication Changes:
- Removed OAuth and JWT authentication. This might be reintroduced with proper testing support in the future.
-
API Clean-Up:
- Deprecated and unused components from Agile, ServiceDesk, Version2, and Version3 APIs have been removed.
Enhancements:
- Improved browser capability.
- Enhanced parameter typings.