Skip to content

Commit

Permalink
Merge branch 'release/1.33'
Browse files Browse the repository at this point in the history
  • Loading branch information
petrjasek committed Apr 9, 2020
2 parents 41d4515 + af6ce3d commit 49cf70d
Show file tree
Hide file tree
Showing 175 changed files with 12,296 additions and 1,307 deletions.
23 changes: 23 additions & 0 deletions .travis-docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
version: "2.4"
services:
redis:
image: redis:alpine
ports:
- "6379:6379"

mongo:
image: mongo:3.6
ports:
- "27017:27017"
tmpfs:
- /data/db

elastic:
image: elasticsearch:2.4-alpine
ports:
- "9200:9200"
environment:
- discovery.type=single-node
tmpfs:
- /usr/share/elasticsearch/data

46 changes: 19 additions & 27 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,35 +1,27 @@
language: python

python:
- "3.5"
python: 3.5

services:
- mongodb
- redis-server
dist: bionic

addons:
apt:
sources:
- elasticsearch-2.x
packages:
- elasticsearch
services:
- docker

cache:
- pip
cache: pip

before_install:
- sudo apt-get purge elasticsearch
- sudo apt-get install -t stable elasticsearch

install:
- pip install -r dev-requirements.txt

before_script: >
sudo sed -i 's\enabled: true\enabled: false\' /etc/mongod.conf
&& sudo service mongod restart
&& sudo service elasticsearch restart
- |
if [ "$SKIP_SERVER_INSTALL" != "true" ]; then
docker-compose -f .travis-docker-compose.yml up -d
fi
jobs:
include:
- script: flake8
name: "lint"
env: SKIP_SERVER_INSTALL=true
- script: nosetests --logging-level=ERROR
name: "unit"
- script: behave --format progress2 --logging-level=ERROR
name: "behave"

script:
- flake8
- nosetests --logging-level=ERROR
- behave --format progress2 --logging-level=ERROR
56 changes: 56 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,61 @@
# Superdesk Server Changelog

## [1.33] 2020-04-09

Listing some changes below, for full list go to [github](https://github.com/superdesk/superdesk-core/milestone/79?closed=1).

### Fixed

- Handle missing macro for internal destination.
- Fix block content filter when field is empty.
- Fix babel get locale selector.
- Fix error when moving item to archived and item is there already.
- Don't publish locked associated items during correction.
- Empty error message on insufficient privileges to create a template.
- Fix related item refs on correction.
- It is possible to publish related items locked by a user.
- Removed associated item gets corrected on story correction.
- Don't publish/unpublish items not fetchable from provider.
- Custom CV field validation displays id instead of name.
- POI of associated images is not updated in NINJS output on correction.
- Make sure `guid` matches `_id` for items fetched from search provider.
- Fix `item.extra` elastic mapping.
- Fix backend validation for required custom fields.
- Fix manage subscription on save error.
- Fix internal markup language visible in activity stream.
- Reset list of translations when duplicating/spiking an item.
- Remove marked for user on publishing/spiking/killing.

### Changed

- Stop transmitting to subscriber on first error.
- Use `ingest` celery queue for ingest.
- Make geonames search style param configurable.
- Don't move file on failed FTP ingestion on first attempt.
- Set default pagination to match max limit.
- Allow user to skip ingest config test if needed.
- Handle tansa configuration on server.
- Allow creating update before publishing previous one.
- Make privileges names more descriptive.

### Added

- Add support to download media files.
- Add config to allow updates of scheduled items.
- Add method to get whole items chain.
- Add `mark_for_user` privilege.
- Allow `display_name` to be formatted on ldap authentication.
- Add preview config for content profile editor fields.
- Add config for custom S3 endpoint.
- Add signal when item is routed via internal destination.
- Add helpers for manipulating draftjs state.
- Production API.
- Allow special character validation in fields.
- Implement slugline autocomplete.
- Save new keywords when publishing an item.
- Unpublishing an item is now possible in package editor.
- Send email notification when item is marked for user.

## [1.32.5] 2020-02-17

### Fixed
Expand Down
34 changes: 22 additions & 12 deletions apps/archive/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
from apps.common.models.io.eve_proxy import EveProxy
from .archive_rewrite import ArchiveRewriteResource, ArchiveRewriteService
from .news import NewsResource, NewsService
from flask_babel import _

logger = logging.getLogger(__name__)

Expand Down Expand Up @@ -94,21 +95,30 @@ def init_app(app):
register_component(ItemAutosave(app))
register_model(ItemAutosaveModel(EveProxy(superdesk.get_backend())))

superdesk.privilege(name='monitoring_view', label='Monitoring', description='Can access monitoring view.')
superdesk.privilege(name='archive', label='Archive', description='User can view the published content.')
superdesk.privilege(name='ingest', label='Ingest', description='User can view content in ingest and fetch it.')
superdesk.privilege(name='spike', label='Spike', description='Can spike items.')
superdesk.privilege(name='spike_read', label='Spike - read', description='Can see spiked items.')
superdesk.privilege(name='unspike', label='Un Spike', description='User can un-spike content.')
superdesk.privilege(name='unlock', label='Unlock content', description='User can unlock content.')
superdesk.privilege(name='metadata_uniquename', label='Edit Unique Name', description='User can edit unique name.')
superdesk.privilege(name='hold', label='Hold', description='Hold a content')
superdesk.privilege(name='restore', label='Restore', description='Restore a hold a content')
superdesk.privilege(name='rewrite', label='Update', description='Update a published content')
superdesk.privilege(
name='monitoring_view',
label=_('Monitoring view'),
description=_('Access to Monitoring view in left toolbar')
)
superdesk.privilege(name='archive', label=_('Create content'), description=_('Create and save content'))
superdesk.privilege(name='ingest', label=_('Ingest'), description=_('Access to ingest sources management'))
superdesk.privilege(name='spike', label=_('Spike'), description=_('Spike/delete items'))
superdesk.privilege(name='spike_read', label=_('Spike view'), description=_('View spiked content'))
superdesk.privilege(name='unspike', label=_('Unspike'), description=_('Unspike/undelete content'))
superdesk.privilege(name='metadata_uniquename', label=_('Edit Unique Name'), description=_('Edit unique name'))
superdesk.privilege(name='hold', label=_('Hold'), description=_('Hold content'))
superdesk.privilege(name='restore', label=_('Restore'), description=_('Restore content'))
superdesk.privilege(name='rewrite', label=_('Update'), description=_('Create an update'))
superdesk.privilege(name='unlock',
label=_('Unlock content'),
description=_('Unlock locked content by another user'))
superdesk.privilege(name='mark_for_user',
label=_('Mark items for users'),
description=_('User can mark or unmark items for other users'))

superdesk.intrinsic_privilege(ArchiveUnlockResource.endpoint_name, method=['POST'])


@celery.task(soft_time_limit=600)
@celery.task(soft_time_limit=1800)
def content_expiry():
RemoveExpiredContent().run()

0 comments on commit 49cf70d

Please sign in to comment.