Skip to content

Commit

Permalink
Merge pull request #185 from clowder-framework/release/1.15.0
Browse files Browse the repository at this point in the history
Release/1.15.0
  • Loading branch information
lmarini authored Mar 4, 2021
2 parents cf768e5 + 0f3dc0c commit 3c16b47
Show file tree
Hide file tree
Showing 57 changed files with 8,020 additions and 1,979 deletions.
5 changes: 0 additions & 5 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ jobs:
matrix:
name:
- clowder
- toolserver
- mongo-init
- monitor
- check
Expand All @@ -43,10 +42,6 @@ jobs:
FOLDER: "."
IMAGE: clowder
README: README.md
- name: toolserver
FOLDER: scripts/toollaunchservice
IMAGE: toolserver
README: ""
- name: mongo-init
FOLDER: scripts/mongo-init
IMAGE: mongo-init
Expand Down
23 changes: 23 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,29 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/)
and this project adheres to [Semantic Versioning](http://semver.org/).

## 1.15.0 - 2021-03-03

### Added
- CSV/JSON previewer using [Vega](https://vega.github.io/).
- Previewer for FBX files.
- `created` search option for filtering by upload/creation date of resource.
- `EventSinkService` to track user activity. All events are published to the message queue. Multiple consumers are
available in [event-sink-consumers](https://github.com/clowder-framework/event-sink-consumers).

### Fixed
- Clowder will no longer offer a Download button for a file until it has been PROCESSED.
- When space created through api the creator was not added to space as admin [#179](https://github.com/clowder-framework/clowder/issues/179).

### Changed
- `/api/me` will now return some of the same information as response headers. Can be used by other services to single
sign on when running on same host.
- `RabbitMQPlugin` has been split into `ExtractorRoutingService` and `MessageService` to isolate the rabbitmq code from
the extraction code.

### Removed
- the toolserver is no longer build as part of clowder since it is no longer maintained. We are working on a
newer version that will be included in future versions of clowder.

## 1.14.1 - 2021-02-02

- Google will no longer work as login provider, we are working on this issue [#157](https://github.com/clowder-framework/clowder/issues/157).
Expand Down
2 changes: 2 additions & 0 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,10 @@ Following is a list of contributors in alphabetical order:
- Inna Zharnitsky
- Jim Myers
- Jong Lee
- Kaveh Karimi-Asli
- Kenton McHenry
- Luigi Marini
- Maria-Spyridoula Tzima
- Mario Felarca
- Max Burnette
- Michal Ondrejcek
Expand Down
22 changes: 10 additions & 12 deletions app/api/Datasets.scala
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,10 @@ class Datasets @Inject()(
relations: RelationService,
userService: UserService,
thumbnailService : ThumbnailService,
routing: ExtractorRoutingService,
appConfig: AppConfigurationService,
esqueue: ElasticsearchQueue) extends ApiController {
esqueue: ElasticsearchQueue,
sinkService: EventSinkService) extends ApiController {

lazy val chunksize = play.Play.application().configuration().getInt("clowder.chunksize", 1024*1024)

Expand Down Expand Up @@ -606,9 +608,7 @@ class Datasets @Inject()(
val mdMap = metadata.getExtractionSummary

//send RabbitMQ message
current.plugin[RabbitmqPlugin].foreach { p =>
p.metadataAddedToResource(metadataId, metadata.attachedTo, mdMap, Utils.baseUrl(request), request.apiKey, request.user)
}
routing.metadataAddedToResource(metadataId, metadata.attachedTo, mdMap, Utils.baseUrl(request), request.apiKey, request.user)

events.addObjectEvent(request.user, id, x.name, EventType.ADD_METADATA_DATASET.toString)

Expand Down Expand Up @@ -655,9 +655,7 @@ class Datasets @Inject()(
val mdMap = metadata.getExtractionSummary

//send RabbitMQ message
current.plugin[RabbitmqPlugin].foreach { p =>
p.metadataAddedToResource(metadataId, metadata.attachedTo, mdMap, Utils.baseUrl(request), request.apiKey, request.user)
}
routing.metadataAddedToResource(metadataId, metadata.attachedTo, mdMap, Utils.baseUrl(request), request.apiKey, request.user)

events.addObjectEvent(request.user, id, x.name, EventType.ADD_METADATA_DATASET.toString)

Expand Down Expand Up @@ -739,10 +737,8 @@ class Datasets @Inject()(
}

// send extractor message after attached to resource
current.plugin[RabbitmqPlugin].foreach { p =>
metadataIds.foreach { mId =>
p.metadataRemovedFromResource(mId, ResourceRef(ResourceRef.dataset, id), Utils.baseUrl(request), request.apiKey, request.user)
}
metadataIds.foreach { mId =>
routing.metadataRemovedFromResource(mId, ResourceRef(ResourceRef.dataset, id), Utils.baseUrl(request), request.apiKey, request.user)
}

Ok(toJson(Map("status" -> "success", "count" -> metadataIds.size.toString)))
Expand Down Expand Up @@ -2500,8 +2496,10 @@ class Datasets @Inject()(
val baseURL = controllers.routes.Datasets.dataset(id).absoluteURL(https(request))

// Increment download count if tracking is enabled
if (tracking)
if (tracking) {
datasets.incrementDownloads(id, user)
sinkService.logDatasetDownloadEvent(dataset, user)
}

// Use custom enumerator to create the zip file on the fly
// Use a 1MB in memory byte array
Expand Down
Loading

0 comments on commit 3c16b47

Please sign in to comment.