This commit is contained in:
Lauri Ojansivu 2024-11-15 23:30:15 +02:00
parent 4bcbaf9113
commit 6e0d41834c
8 changed files with 32 additions and 865 deletions

View file

@ -15,7 +15,7 @@ Fixing other platforms In Progress.
[How to upgrade WeKan](https://github.com/wekan/wekan/issues/4585)
# Upcoming WeKan ® release
# v7.62 2024-11-15 WeKan ® release
This release adds the following new features:

View file

@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v7.61.0"
appVersion: "v7.62.0"
files:
userUploads:
- README.md

2
package-lock.json generated
View file

@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v7.61.0",
"version": "v7.62.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View file

@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v7.61.0",
"version": "v7.62.0",
"description": "Open-Source kanban",
"private": true,
"repository": {

View file

@ -7,7 +7,7 @@
<meta charset="utf-8">
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Wekan REST API v7.61</title>
<title>Wekan REST API v7.62</title>
<style>
</style>
@ -1548,7 +1548,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<ul class="toc-list-h1">
<li>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v7.61">Wekan REST API v7.61</a>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v7.62">Wekan REST API v7.62</a>
</li>
@ -2067,7 +2067,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<div class="page-wrapper">
<div class="dark-box"></div>
<div class="content">
<h1 id="wekan-rest-api">Wekan REST API v7.61</h1>
<h1 id="wekan-rest-api">Wekan REST API v7.62</h1>
<blockquote>
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
</blockquote>

View file

@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
version: v7.61
version: v7.62
description: |
The REST API allows you to control and extend Wekan with ease.
@ -134,204 +134,6 @@ paths:
description: |
Error in registration
/api/boards:
get:
operationId: get_public_boards
summary: Get all public boards
tags:
- Boards
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
type: array
items:
type: object
properties:
_id:
type: string
title:
type: string
post:
operationId: new_board
summary: Create a board
description: |
This allows to create a board.
The color has to be chosen between `belize`, `nephritis`, `pomegranate`,
`pumpkin`, `wisteria`, `moderatepink`, `strongcyan`,
`limegreen`, `midnight`, `dark`, `relax`, `corteza`:
<img src="https://wekan.github.io/board-colors.png" width="40%" alt="Wekan logo" />
tags:
- Boards
consumes:
- multipart/form-data
- application/json
parameters:
- name: title
in: formData
description: |
the new title of the board
type: string
required: true
- name: owner
in: formData
description: |
"ABCDE12345" <= User ID in Wekan.
(Not username or email)
type: string
required: true
- name: isAdmin
in: formData
description: |
is the owner an admin of the board (default true)
type: boolean
required: false
- name: isActive
in: formData
description: |
is the board active (default true)
type: boolean
required: false
- name: isNoComments
in: formData
description: |
disable comments (default false)
type: boolean
required: false
- name: isCommentOnly
in: formData
description: |
only enable comments (default false)
type: boolean
required: false
- name: isWorker
in: formData
description: |
only move cards, assign himself to card and comment (default false)
type: boolean
required: false
- name: permission
in: formData
description: |
"private" board <== Set to "public" if you
want public Wekan board
type: string
required: false
- name: color
in: formData
description: |
the color of the board
type: string
required: false
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
type: object
properties:
_id:
type: string
defaultSwimlaneId:
type: string
/api/boards/{board}:
get:
operationId: get_board
summary: Get the board with that particular ID
tags:
- Boards
parameters:
- name: board
in: path
description: |
the ID of the board to retrieve the data
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
$ref: "#/definitions/Boards"
delete:
operationId: delete_board
summary: Delete a board
tags:
- Boards
parameters:
- name: board
in: path
description: |
the ID of the board
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
/api/boards/{board}/attachments:
get:
operationId: get_board_attachments
summary: Get the list of attachments of a board
tags:
- Boards
parameters:
- name: board
in: path
description: |
the board ID
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
type: array
items:
type: object
properties:
attachmentId:
type: string
attachmentName:
type: string
attachmentType:
type: string
url:
type: string
urlDownload:
type: string
boardId:
type: string
swimlaneId:
type: string
listId:
type: string
cardId:
type: string
/api/boards/{board}/attachments/{attachment}/export:
get:
operationId: exportJson
@ -963,41 +765,6 @@ paths:
properties:
board_cards_count:
type: integer
/api/boards/{board}/copy:
post:
operationId: copy_board
summary: Copy a board to a new one
description: |
If your are board admin or wekan admin, this copies the
given board to a new one.
tags:
- Boards
consumes:
- multipart/form-data
- application/json
parameters:
- name: title
in: formData
description: |
the title of the new board (default to old one)
type: string
required: true
- name: board
in: path
description: |
the board
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
type: string
/api/boards/{board}/custom-fields:
get:
operationId: get_all_custom_fields
@ -1641,40 +1408,6 @@ paths:
200 response
schema:
$ref: "#/definitions/Integrations"
/api/boards/{board}/labels:
put:
operationId: add_board_label
summary: Add a label to a board
description: |
If the board doesn't have the name/color label, this function
adds the label to the board.
tags:
- Boards
consumes:
- multipart/form-data
- application/json
parameters:
- name: label
in: formData
description: the label value
type: string
required: true
- name: board
in: path
description: |
the board
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
type: string
/api/boards/{board}/lists:
get:
operationId: get_all_lists
@ -2277,61 +2010,6 @@ paths:
properties:
list_cards_count:
type: integer
/api/boards/{board}/members/{member}:
post:
operationId: set_board_member_permission
summary: Change the permission of a member of a board
tags:
- Boards
- Users
consumes:
- multipart/form-data
- application/json
parameters:
- name: isAdmin
in: formData
description: |
admin capability
type: boolean
required: true
- name: isNoComments
in: formData
description: |
NoComments capability
type: boolean
required: true
- name: isCommentOnly
in: formData
description: |
CommentsOnly capability
type: boolean
required: true
- name: isWorker
in: formData
description: |
Worker capability
type: boolean
required: true
- name: board
in: path
description: |
the ID of the board that we are changing
type: string
required: true
- name: member
in: path
description: |
the ID of the user to change permissions
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
/api/boards/{board}/swimlanes:
get:
operationId: get_all_swimlanes
@ -2538,531 +2216,7 @@ paths:
type: string
listId:
type: string
/api/boards/{board}/title:
put:
operationId: update_board_title
summary: Update the title of a board
tags:
- Boards
consumes:
- multipart/form-data
- application/json
parameters:
- name: title
in: formData
description: |
the new title for the board
type: string
required: true
- name: board
in: path
description: |
the ID of the board to update
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
/api/boards_count:
get:
operationId: get_boards_count
summary: Get public and private boards count
tags:
- Boards
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
type: object
properties:
private:
type: integer
public:
type: integer
/api/users/{user}/boards:
get:
operationId: get_boards_from_user
summary: Get all boards attached to a user
tags:
- Boards
parameters:
- name: user
in: path
description: |
the ID of the user to retrieve the data
type: string
required: true
produces:
- application/json
security:
- UserSecurity: []
responses:
'200':
description: |-
200 response
schema:
type: array
items:
type: object
properties:
_id:
type: string
title:
type: string
definitions:
Boards:
type: object
description: This is a Board.
properties:
title:
description: |
The title of the board
type: string
slug:
description: |
The title slugified.
type: string
archived:
description: |
Is the board archived?
type: boolean
archivedAt:
description: |
Latest archiving time of the board
type: string
x-nullable: true
createdAt:
description: |
Creation time of the board
type: string
modifiedAt:
description: |
Last modification time of the board
type: string
x-nullable: true
stars:
description: |
How many stars the board has
type: number
labels:
description: |
List of labels attached to a board
type: array
items:
$ref: "#/definitions/BoardsLabels"
x-nullable: true
members:
description: |
List of members of a board
type: array
items:
$ref: "#/definitions/BoardsMembers"
permission:
description: |
visibility of the board
type: string
enum:
- public
- private
orgs:
description: |
the list of organizations that a board belongs to
type: array
items:
$ref: "#/definitions/BoardsOrgs"
x-nullable: true
teams:
description: |
the list of teams that a board belongs to
type: array
items:
$ref: "#/definitions/BoardsTeams"
x-nullable: true
color:
description: |
The color of the board.
type: string
enum:
- belize
- nephritis
- pomegranate
- pumpkin
- wisteria
- moderatepink
- strongcyan
- limegreen
- midnight
- dark
- relax
- corteza
- clearblue
- natural
- modern
- moderndark
- exodark
- cleandark
- cleanlight
backgroundImageURL:
description: |
The background image URL of the board.
type: string
x-nullable: true
allowsCardCounterList:
description: |
Show card counter per list
type: boolean
allowsBoardMemberList:
description: |
Show board member list
type: boolean
description:
description: |
The description of the board
type: string
x-nullable: true
subtasksDefaultBoardId:
description: |
The default board ID assigned to subtasks.
type: string
x-nullable: true
subtasksDefaultListId:
description: |
The default List ID assigned to subtasks.
type: string
x-nullable: true
dateSettingsDefaultBoardId:
type: string
x-nullable: true
dateSettingsDefaultListId:
type: string
x-nullable: true
allowsSubtasks:
description: |
Does the board allows subtasks?
type: boolean
allowsAttachments:
description: |
Does the board allows attachments?
type: boolean
allowsChecklists:
description: |
Does the board allows checklists?
type: boolean
allowsComments:
description: |
Does the board allows comments?
type: boolean
allowsDescriptionTitle:
description: |
Does the board allows description title?
type: boolean
allowsDescriptionText:
description: |
Does the board allows description text?
type: boolean
allowsDescriptionTextOnMinicard:
description: |
Does the board allows description text on minicard?
type: boolean
allowsCoverAttachmentOnMinicard:
description: |
Does the board allows cover attachment on minicard?
type: boolean
allowsBadgeAttachmentOnMinicard:
description: |
Does the board allows badge attachment on minicard?
type: boolean
allowsCardSortingByNumberOnMinicard:
description: |
Does the board allows card sorting by number on minicard?
type: boolean
allowsCardNumber:
description: |
Does the board allows card numbers?
type: boolean
allowsActivities:
description: |
Does the board allows comments?
type: boolean
allowsLabels:
description: |
Does the board allows labels?
type: boolean
allowsCreator:
description: |
Does the board allow creator?
type: boolean
allowsCreatorOnMinicard:
description: |
Does the board allow creator?
type: boolean
allowsAssignee:
description: |
Does the board allows assignee?
type: boolean
allowsMembers:
description: |
Does the board allows members?
type: boolean
allowsRequestedBy:
description: |
Does the board allows requested by?
type: boolean
allowsCardSortingByNumber:
description: |
Does the board allows card sorting by number?
type: boolean
allowsShowLists:
description: |
Does the board allows show lists on the card?
type: boolean
allowsAssignedBy:
description: |
Does the board allows requested by?
type: boolean
allowsReceivedDate:
description: |
Does the board allows received date?
type: boolean
allowsStartDate:
description: |
Does the board allows start date?
type: boolean
allowsEndDate:
description: |
Does the board allows end date?
type: boolean
allowsDueDate:
description: |
Does the board allows due date?
type: boolean
presentParentTask:
description: |
Controls how to present the parent task:
- `prefix-with-full-path`: add a prefix with the full path
- `prefix-with-parent`: add a prefisx with the parent name
- `subtext-with-full-path`: add a subtext with the full path
- `subtext-with-parent`: add a subtext with the parent name
- `no-parent`: does not show the parent at all
type: string
enum:
- prefix-with-full-path
- prefix-with-parent
- subtext-with-full-path
- subtext-with-parent
- no-parent
x-nullable: true
receivedAt:
description: |
Date the card was received
type: string
x-nullable: true
startAt:
description: |
Starting date of the board.
type: string
x-nullable: true
dueAt:
description: |
Due date of the board.
type: string
x-nullable: true
endAt:
description: |
End date of the board.
type: string
x-nullable: true
spentTime:
description: |
Time spent in the board.
type: number
x-nullable: true
isOvertime:
description: |
Is the board overtimed?
type: boolean
x-nullable: true
type:
description: |
The type of board
possible values: board, template-board, template-container
type: string
enum:
- board
- template-board
- template-container
sort:
description: |
Sort value
type: number
required:
- title
- slug
- archived
- createdAt
- stars
- members
- permission
- color
- allowsCardCounterList
- allowsBoardMemberList
- allowsSubtasks
- allowsAttachments
- allowsChecklists
- allowsComments
- allowsDescriptionTitle
- allowsDescriptionText
- allowsDescriptionTextOnMinicard
- allowsCoverAttachmentOnMinicard
- allowsBadgeAttachmentOnMinicard
- allowsCardSortingByNumberOnMinicard
- allowsCardNumber
- allowsActivities
- allowsLabels
- allowsCreator
- allowsCreatorOnMinicard
- allowsAssignee
- allowsMembers
- allowsRequestedBy
- allowsCardSortingByNumber
- allowsShowLists
- allowsAssignedBy
- allowsReceivedDate
- allowsStartDate
- allowsEndDate
- allowsDueDate
- type
- sort
BoardsLabels:
type: object
properties:
_id:
description: |
Unique id of a label
type: string
name:
description: |
Name of a label
type: string
color:
description: |
color of a label.
Can be amongst `green`, `yellow`, `orange`, `red`, `purple`,
`blue`, `sky`, `lime`, `pink`, `black`,
`silver`, `peachpuff`, `crimson`, `plum`, `darkgreen`,
`slateblue`, `magenta`, `gold`, `navy`, `gray`,
`saddlebrown`, `paleturquoise`, `mistyrose`, `indigo`
type: string
enum:
- white
- green
- yellow
- orange
- red
- purple
- blue
- sky
- lime
- pink
- black
- silver
- peachpuff
- crimson
- plum
- darkgreen
- slateblue
- magenta
- gold
- navy
- gray
- saddlebrown
- paleturquoise
- mistyrose
- indigo
required:
- _id
- color
BoardsMembers:
type: object
properties:
userId:
description: |
The uniq ID of the member
type: string
isAdmin:
description: |
Is the member an admin of the board?
type: boolean
isActive:
description: |
Is the member active?
type: boolean
isNoComments:
description: |
Is the member not allowed to make comments
type: boolean
isCommentOnly:
description: |
Is the member only allowed to comment on the board
type: boolean
isWorker:
description: |
Is the member only allowed to move card, assign himself to card and comment
type: boolean
required:
- userId
- isAdmin
- isActive
BoardsOrgs:
type: object
properties:
orgId:
description: |
The uniq ID of the organization
type: string
orgDisplayName:
description: |
The display name of the organization
type: string
isActive:
description: |
Is the organization active?
type: boolean
required:
- orgId
- orgDisplayName
- isActive
BoardsTeams:
type: object
properties:
teamId:
description: |
The uniq ID of the team
type: string
teamDisplayName:
description: |
The display name of the team
type: string
isActive:
description: |
Is the team active?
type: boolean
required:
- teamId
- teamDisplayName
- isActive
CardComments:
type: object
description: A comment on a card
@ -3316,6 +2470,13 @@ definitions:
to every newly created card
type: number
x-nullable: true
showActivities:
type: boolean
hideFinishedChecklistIfItemsAreHidden:
description: |
hide completed checklist?
type: boolean
x-nullable: true
required:
- archived
- swimlaneId
@ -3324,6 +2485,7 @@ definitions:
- dateLastActivity
- userId
- type
- showActivities
CardsVote:
type: object
properties:
@ -3491,11 +2653,6 @@ definitions:
When was the checklist finished
type: string
x-nullable: true
showAtMinicard:
description: |
Show at minicard. Default: false.
type: boolean
x-nullable: true
createdAt:
description: |
Creation date of the checklist
@ -3506,6 +2663,16 @@ definitions:
description: |
sorting value of the checklist
type: number
hideCheckedChecklistItems:
description: |
hide the checked checklist-items?
type: boolean
x-nullable: true
hideAllChecklistItems:
description: |
hide all checklist items ?
type: boolean
x-nullable: true
required:
- cardId
- title

View file

@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
appTitle = (defaultText = "Wekan"),
# The name of the app as it is displayed to the user.
appVersion = 761,
appVersion = 762,
# Increment this for every release.
appMarketingVersion = (defaultText = "7.61.0~2024-10-23"),
appMarketingVersion = (defaultText = "7.62.0~2024-11-15"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,

View file

@ -1,5 +1,5 @@
name: wekan
version: '7.61'
version: '7.62'
base: core20
summary: Open Source kanban
description: |
@ -170,9 +170,9 @@ parts:
# Cleanup
mkdir .build
cd .build
wget https://github.com/wekan/wekan/releases/download/v7.61/wekan-7.61-amd64.zip
unzip wekan-7.61-amd64.zip
rm wekan-7.61-amd64.zip
wget https://github.com/wekan/wekan/releases/download/v7.62/wekan-7.62-amd64.zip
unzip wekan-7.62-amd64.zip
rm wekan-7.62-amd64.zip
cd ..
##cd .build/bundle
##find . -type d -name '*-garbage*' | xargs rm -rf