Skip to content

Commit

Permalink
Merge branch 'docs' into docs_lili
Browse files Browse the repository at this point in the history
* docs:
  more docs
  add docs for jobs
  applied many suggestions from grammarly
  updated datasets docs
  updated datasets
  Release 22.03 (#6069)
  Skip deactivated users in dataset access list (#6070)
  Compile tests to different dir to avoid unnecessary recompilations (#6065)
  • Loading branch information
hotzenklotz committed Feb 22, 2022
2 parents db59b54 + 3847ef6 commit 0a6e546
Show file tree
Hide file tree
Showing 11 changed files with 61 additions and 36 deletions.
1 change: 1 addition & 0 deletions .flowconfig
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
<PROJECT_ROOT>/conf/.*
<PROJECT_ROOT>/lib/.*
<PROJECT_ROOT>/public/.*
<PROJECT_ROOT>/public-test/.*
<PROJECT_ROOT>/tools/.*
<PROJECT_ROOT>/node_modules/webpack-cli/
<PROJECT_ROOT>/node_modules/findup/
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ src/main/scala/rebel.xml
*.zip
*.skp
*.mtl
public/bower_components
public/bundle
public/test-bundle
public-test/test-bundle
public/docs
public/commit.txt
/knowledge
Expand Down
35 changes: 35 additions & 0 deletions CHANGELOG.released.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,41 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Calendar Versioning](http://calver.org/) `0Y.0M.MICRO`.
For upgrade instructions, please check the [migration guide](MIGRATIONS.released.md).

## [22.03.0](https://github.com/scalableminds/webknossos/releases/tag/22.03.0) - 2022-02-21
[Commits](https://github.com/scalableminds/webknossos/compare/22.02.0...22.03.0)

### Highlights
- Added experimental min-cut feature to split a segment in a volume annotation with two seeds. [#5885](https://github.com/scalableminds/webknossos/pull/5885)
- Added a button next to the histogram which adapts the contrast and brightness to the currently visible data. [#5961](https://github.com/scalableminds/webknossos/pull/5961)
- Viewport scale bars are now dynamically adjusted to display sensible values. [#5418](https://github.com/scalableminds/webknossos/pull/6034)

### Added
- Added the option to make a segment's ID active via the right-click context menu in the segments list. [#5935](https://github.com/scalableminds/webknossos/pull/6006)
- Running uploads can now be cancelled. [#5958](https://github.com/scalableminds/webknossos/pull/5958)
- Annotations with multiple volume layers can now be uploaded. (Note that merging multiple annotations with multiple volume layers each is not supported.) [#6028](https://github.com/scalableminds/webknossos/pull/6028)
- Decrease volume annotation download latency by using a different compression level. [#6036](https://github.com/scalableminds/webknossos/pull/6036)

### Changed
- Upgraded webpack build tool to v5 and all other webpack related dependencies to their latest version. Enabled persistent caching which speeds up server restarts during development as well as production builds. [#5969](https://github.com/scalableminds/webknossos/pull/5969)
- Improved stability when quickly volume-annotating large structures. [#6000](https://github.com/scalableminds/webknossos/pull/6000)
- The front-end API `labelVoxels` returns a promise now which resolves as soon as the label operation was carried out. [#5955](https://github.com/scalableminds/webknossos/pull/5955)
- webKnossos no longer tries to reach a save state where all updates are sent to the backend to be in sync with the frontend when the save is triggered by a timeout. [#5999](https://github.com/scalableminds/webknossos/pull/5999)
- When changing which layers are visible in an annotation, this setting is persisted in the annotation, so when you share it, viewers will see the same visibility configuration. [#5967](https://github.com/scalableminds/webknossos/pull/5967)
- Downloading public annotations is now also allowed without being authenticated. [#6001](https://github.com/scalableminds/webknossos/pull/6001)
- Downloaded volume annotation layers no longer produce zero-byte zipfiles but rather a valid header-only zip file with no contents. [#6022](https://github.com/scalableminds/webknossos/pull/6022)
- Changed a number of API routes from GET to POST to avoid unwanted side effects. [#6023](https://github.com/scalableminds/webknossos/pull/6023)
- Removed unused datastore route `checkInbox` (use `checkInboxBlocking` instead). [#6023](https://github.com/scalableminds/webknossos/pull/6023)
- Migrated to Google Analytics 4. [#6031](https://github.com/scalableminds/webknossos/pull/6031)

### Fixed
- Fixed volume-related bugs which could corrupt the volume data in certain scenarios. [#5955](https://github.com/scalableminds/webknossos/pull/5955)
- Fixed the placeholder resolution computation for anisotropic layers with missing base resolutions. [#5983](https://github.com/scalableminds/webknossos/pull/5983)
- Fixed a bug where ad-hoc meshes were computed for a mapping, although it was disabled. [#5982](https://github.com/scalableminds/webknossos/pull/5982)
- Fixed a bug where volume annotation downloads would sometimes contain truncated zips. [#6009](https://github.com/scalableminds/webknossos/pull/6009)
- Fixed a bug where downloaded multi-layer volume annotations would have the wrong data.zip filenames. [#6028](https://github.com/scalableminds/webknossos/pull/6028)
- Fixed a bug which could cause an error message to appear when saving. [#6052](https://github.com/scalableminds/webknossos/pull/6052)


## [22.02.0](https://github.com/scalableminds/webknossos/releases/tag/22.02.0) - 2022-01-24
[Commits](https://github.com/scalableminds/webknossos/compare/22.01.0...22.02.0)

Expand Down
26 changes: 2 additions & 24 deletions CHANGELOG.unreleased.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,37 +8,15 @@ and this project adheres to [Calendar Versioning](http://calver.org/) `0Y.0M.MIC
For upgrade instructions, please check the [migration guide](MIGRATIONS.released.md).

## Unreleased
[Commits](https://github.com/scalableminds/webknossos/compare/22.02.0...HEAD)
[Commits](https://github.com/scalableminds/webknossos/compare/release-YY.MM...HEAD)

### Added
- Viewport scale bars are now dynamically adjusted to display sensible values. [#5418](https://github.com/scalableminds/webknossos/pull/6034)
- Added the option to make a segment's ID active via the right-click context menu in the segments list. [#5935](https://github.com/scalableminds/webknossos/pull/6006)
- Added a button next to the histogram which adapts the contrast and brightness to the currently visible data. [#5961](https://github.com/scalableminds/webknossos/pull/5961)
- Running uploads can now be cancelled. [#5958](https://github.com/scalableminds/webknossos/pull/5958)
- Added experimental min-cut feature to split a segment in a volume tracing with two seeds. [#5885](https://github.com/scalableminds/webknossos/pull/5885)
- Annotations with multiple volume layers can now be uploaded. (Note that merging multiple annotations with multiple volume layers each is not supported.) [#6028](https://github.com/scalableminds/webknossos/pull/6028)
- Decrease volume annotation download latency by using a different compression level. [#6036](https://github.com/scalableminds/webknossos/pull/6036)
- The visible meshes are now included in the link copied from the "Share" modal or the "Share" button next to the dataset position. They are automatically loaded for users that open the shared link. [#5993](https://github.com/scalableminds/webknossos/pull/5993)

### Changed
- Upgraded webpack build tool to v5 and all other webpack related dependencies to their latest version. Enabled persistent caching which speeds up server restarts during development as well as production builds. [#5969](https://github.com/scalableminds/webknossos/pull/5969)
- Improved stability when quickly volume-annotating large structures. [#6000](https://github.com/scalableminds/webknossos/pull/6000)
- The front-end API `labelVoxels` returns a promise now which fulfills as soon as the label operation was carried out. [#5955](https://github.com/scalableminds/webknossos/pull/5955)
- Changed that webKnossos no longer tries to reach a save state where all updates are sent to the backend to be in sync with the frontend when the save is triggered by a timeout. [#5999](https://github.com/scalableminds/webknossos/pull/5999)
- When changing which layers are visible in an annotation, this setting is persisted in the annotation, so when you share it, viewers will see the same visibility configuration. [#5967](https://github.com/scalableminds/webknossos/pull/5967)
- Downloading public annotations is now also allowed without being authenticated. [#6001](https://github.com/scalableminds/webknossos/pull/6001)
- Downloaded volume annotation layers no longer produce zero-byte zipfiles but rather a valid header-only zip file with no contents. [#6022](https://github.com/scalableminds/webknossos/pull/6022)
- Changed a number of API routes from GET to POST to avoid unwanted side effects. [#6023](https://github.com/scalableminds/webknossos/pull/6023)
- Removed unused datastore route `checkInbox` (use `checkInboxBlocking` instead). [#6023](https://github.com/scalableminds/webknossos/pull/6023)
- Migrated to Google Analytics 4. [#6031](https://github.com/scalableminds/webknossos/pull/6031)

### Fixed
- Fixed volume-related bugs which could corrupt the volume data in certain scenarios. [#5955](https://github.com/scalableminds/webknossos/pull/5955)
- Fixed the placeholder resolution computation for anisotropic layers with missing base resolutions. [#5983](https://github.com/scalableminds/webknossos/pull/5983)
- Fixed a bug where ad-hoc meshes were computed for a mapping, although it was disabled. [#5982](https://github.com/scalableminds/webknossos/pull/5982)
- Fixed a bug where volume annotation downloads would sometimes contain truncated zips. [#6009](https://github.com/scalableminds/webknossos/pull/6009)
- Fixed a bug where downloaded multi-layer volume annotations would have the wrong data.zip filenames. [#6028](https://github.com/scalableminds/webknossos/pull/6028)
- Fixed a bug which could cause an error message to appear when saving. [#6052](https://github.com/scalableminds/webknossos/pull/6052)
- Fixed a bug where deactivated users would still be listed as allowed to access the datasets of their team. [#6070](https://github.com/scalableminds/webknossos/pull/6070)

### Removed

Expand Down
7 changes: 7 additions & 0 deletions MIGRATIONS.released.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,13 @@ See `MIGRATIONS.unreleased.md` for the changes which are not yet part of an offi
This project adheres to [Calendar Versioning](http://calver.org/) `0Y.0M.MICRO`.
User-facing changes are documented in the [changelog](CHANGELOG.released.md).

## [22.03.0](https://github.com/scalableminds/webknossos/releases/tag/22.03.0) - 2022-02-21
[Commits](https://github.com/scalableminds/webknossos/compare/22.02.0...22.03.0)
- The config field `googleAnalytics.trackingId` needs to be changed to [GA4 measurement id](https://support.google.com/analytics/answer/10089681), if used.

### Postgres Evolutions:
- [081-annotation-viewconfiguration.sql](conf/evolutions/081-annotation-viewconfiguration.sql)

## [22.02.0](https://github.com/scalableminds/webknossos/releases/tag/22.02.0) - 2022-01-24
[Commits](https://github.com/scalableminds/webknossos/compare/22.01.0...22.02.0)

Expand Down
4 changes: 1 addition & 3 deletions MIGRATIONS.unreleased.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ This project adheres to [Calendar Versioning](http://calver.org/) `0Y.0M.MICRO`.
User-facing changes are documented in the [changelog](CHANGELOG.released.md).

## Unreleased
[Commits](https://github.com/scalableminds/webknossos/compare/22.02.0...HEAD)
- The config field `googleAnalytics.trackingId` needs to be changed to [GA4 measurement id](https://support.google.com/analytics/answer/10089681), if used.
[Commits](https://github.com/scalableminds/webknossos/compare/release-YY.MM...HEAD)

### Postgres Evolutions:
- [081-annotation-viewconfiguration.sql](conf/evolutions/081-annotation-viewconfiguration.sql)
2 changes: 1 addition & 1 deletion app/controllers/ReportController.scala
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ class ReportController @Inject()(reportDAO: ReportDAO,
for {
teamIdValidated <- ObjectId.parse(teamId)
team <- teamDAO.findOne(teamIdValidated) ?~> "team.notFound" ~> NOT_FOUND
users <- userDAO.findAllByTeams(List(team._id), includeDeactivated = false)
users <- userDAO.findAllByTeams(List(team._id))
nonUnlistedUsers = users.filter(!_.isUnlisted)
nonAdminUsers <- Fox.filterNot(nonUnlistedUsers)(u => userService.isTeamManagerOrAdminOf(u, teamIdValidated))
entries: List[OpenTasksEntry] <- getAllAvailableTaskCountsAndProjects(nonAdminUsers)
Expand Down
7 changes: 3 additions & 4 deletions app/models/user/User.scala
Original file line number Diff line number Diff line change
Expand Up @@ -108,17 +108,16 @@ class UserDAO @Inject()(sqlClient: SQLClient)(implicit ec: ExecutionContext)
parsed <- parseAll(r)
} yield parsed

def findAllByTeams(teams: List[ObjectId], includeDeactivated: Boolean = true)(
implicit ctx: DBAccessContext): Fox[List[User]] =
def findAllByTeams(teams: List[ObjectId])(implicit ctx: DBAccessContext): Fox[List[User]] =
if (teams.isEmpty) Fox.successful(List())
else
for {
accessQuery <- readAccessQuery
r <- run(sql"""select #${columnsWithPrefix("u.")}
from (select #$columns from #$existingCollectionName where #$accessQuery) u join webknossos.user_team_roles on u._id = webknossos.user_team_roles._user
where webknossos.user_team_roles._team in #${writeStructTupleWithQuotes(teams.map(_.id))}
and u.isUnlisted = false
and (u.isDeactivated = false or u.isDeactivated = $includeDeactivated)
and not u.isUnlisted
and not u.isDeactivated
order by _id""".as[UsersRow])
parsed <- parseAll(r)
} yield parsed
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@
},
"ava": {
"files": [
"./public/test-bundle/**/*.{js,jsx}"
"./public-test/test-bundle/**/*.{js,jsx}"
],
"ignoredByWatcher": [
"./binaryData/**/*.*"
Expand All @@ -216,7 +216,7 @@
"sourceMap": false,
"instrument": false,
"exclude": [
"public/test-bundle/test/**/*.*",
"public-test/test-bundle/test/**/*.*",
"frontend/javascripts/test/**/*.*"
]
}
Expand Down
7 changes: 7 additions & 0 deletions tools/make-changelog.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
import re
import sys

VERSION_REGEX = r"[\d]{1,2}\.[\d]{1,2}.[\d]{0,2}"


def update_changelogs():

Expand All @@ -14,6 +16,11 @@ def update_changelogs():

# Determine new version
this_version = sys.argv[1]

assert re.match(
VERSION_REGEX, this_version
), "The version string should specified like this: 22.03.1"

today = datetime.date.today()
today_str = f"{today.strftime('%Y')}-{today.strftime('%m')}-{today.strftime('%d')}"

Expand Down
2 changes: 1 addition & 1 deletion tools/test.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash

testBundlePath="public/test-bundle"
testBundlePath="public-test/test-bundle"
jsPath="frontend/javascripts"
FIND=find

Expand Down

0 comments on commit 0a6e546

Please sign in to comment.