1
0
mirror of https://github.com/chylex/Nextcloud-News.git synced 2025-09-18 13:24:48 +02:00

Compare commits

929 Commits

Author SHA1 Message Date
3fdd21b9fd Add article word count & limit intro length 2024-08-02 15:39:01 +02:00
9f1f615d99 Improve visibility of links in dark theme (#2215) 2024-08-02 15:38:47 +02:00
Nextcloud bot
69fe896990 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-28 01:30:09 +00:00
Nextcloud bot
350eea3aa1 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-20 01:13:51 +00:00
Nextcloud bot
d0df2c85c7 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-13 01:13:47 +00:00
Nextcloud bot
4e2a2e139c Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-10 01:24:42 +00:00
Nextcloud bot
0e437d22ac Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-09 01:10:38 +00:00
Benjamin Brahmer
e3b3087d14 Release 25.0.0-alpha8
Changed
- Add support for moving feeds to another folder from the sidebar feed menu (#2707)
- Persist the filter state and show unread items by default (#2704)

Fixed
- Fix undefined item when using `j` and `k` keyboards shortcuts in an empty feed (#2689)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-07-08 09:31:38 +02:00
Nextcloud bot
cb89f1bc2a Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-08 01:12:39 +00:00
Patrizio Bekerle
2efb4d200a add: move feed dialog (#2707)
add: more feed moving implementation
add: finish feed moving and update changelog
add: try more ways to reload feed list
add: do folder and feed reloading

Signed-off-by: Patrizio Bekerle <patrizio@bekerle.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-07-07 11:41:34 +02:00
Nextcloud bot
daf365ea92 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-07-04 01:13:53 +00:00
Benjamin Brahmer
ff1c6c9e12 Add section about OCC
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-06-29 00:10:32 +02:00
Nextcloud bot
a7ac7449e0 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-28 01:14:28 +00:00
Patrizio Bekerle
3aae9e379d add: filter persistence
Signed-off-by: Patrizio Bekerle <patrizio@bekerle.com>
2024-06-27 21:28:44 +02:00
Nextcloud bot
2603fee0e8 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-26 01:10:37 +00:00
dependabot[bot]
c74cfeb329 Build(deps): Bump getong/mariadb-action from 1.2 to 1.11
Bumps [getong/mariadb-action](https://github.com/getong/mariadb-action) from 1.2 to 1.11.
- [Release notes](https://github.com/getong/mariadb-action/releases)
- [Commits](https://github.com/getong/mariadb-action/compare/v1.2...v1.11)

---
updated-dependencies:
- dependency-name: getong/mariadb-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-24 14:37:44 +02:00
Benjamin Brahmer
b144030a07 log warning if feed cannot be parsed
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-06-23 18:32:18 +02:00
Benjamin Brahmer
4d9fe9f009 update bats to latest release
and use sudo for npm

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-06-22 12:59:04 +02:00
dependabot[bot]
f33111f8ae Build(deps): Bump getong/mariadb-action from 1.1 to 1.2
Bumps [getong/mariadb-action](https://github.com/getong/mariadb-action) from 1.1 to 1.2.
- [Release notes](https://github.com/getong/mariadb-action/releases)
- [Commits](https://github.com/getong/mariadb-action/compare/v1.1...v1.2)

---
updated-dependencies:
- dependency-name: getong/mariadb-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 17:15:56 +02:00
dependabot[bot]
44eb12d7f1 Build(deps-dev): Bump ws from 8.13.0 to 8.17.1
Bumps [ws](https://github.com/websockets/ws) from 8.13.0 to 8.17.1.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.13.0...8.17.1)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 13:19:34 +02:00
Patrizio Bekerle
23def3acef fix: undefined item when using j/k akeyboards shortcuts in empty feed
Signed-off-by: Patrizio Bekerle <patrizio@bekerle.com>
2024-06-15 09:15:02 +02:00
Nextcloud bot
6124f344e5 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-15 01:14:05 +00:00
dependabot[bot]
6478763d92 Build(deps): Bump braces from 3.0.2 to 3.0.3
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-11 13:43:24 +02:00
Benjamin Brahmer
8688bf6c02 Release 25.0.0-alpha7
Changed
- added alternative development environment (#2670)
- Implement `j` and `k` keyboards shortcuts for navigating through feed items (#2671)
- Implement `s`, `i` and `l` keyboards shortcuts for staring current feed item (#2677)
- Implement `o` keyboards shortcut for opening the URL of current feed item (#2677)
- Implement `u` keyboards shortcut for marking current feed item read/unread (#2677)
- Implement highlighting of active feed item (#2677)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-06-11 12:34:45 +02:00
dependabot[bot]
ac569431c2 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.69 to 1.4.3
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.69 to 1.4.3.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.69...1.4.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-11 11:57:47 +02:00
Patrizio Bekerle
8145582d02 Implement highlighting of active feed item and more keyboard shortcuts (#2677)
* add: highlighting of active item
* add: keyboard shortcuts "u", "s", "i", "l" and "o"
* dev: force running commands on stale session
* add: prepare scrolling to the current item

Signed-off-by: Patrizio Bekerle <patrizio@bekerle.com>
2024-06-08 19:25:59 +02:00
Nextcloud bot
9ff40ab8a5 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-06 02:50:54 +00:00
Nextcloud bot
de12aceef1 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-04 01:06:13 +00:00
Nextcloud bot
0d96deb64e Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-03 01:05:17 +00:00
Patrizio Bekerle
ea71aced58 add: j/k shortcuts
add: make first attempt to jump to previous and next feed item

fix: linter errors

fix: use correct feed items

fix: use filterSortedItems()

add: trigger click event programmatically to benefit from item handling
inside FeedItemRow component

add: use a proper item if none is selected

fix: remove not needed MUTATIONS import

add: attempt to scroll to clicked item

doc: add changelog text

Signed-off-by: Patrizio Bekerle <patrizio@bekerle.com>
2024-06-02 16:43:36 +02:00
Benjamin Brahmer
9ff0f77798 add changelog entry
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-06-01 14:35:46 +02:00
Benjamin Brahmer
b42c40c0e0 add entry in the docs
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-06-01 14:35:46 +02:00
Patrizio Bekerle
1ce46dcc3e add: development environment
Signed-off-by: Patrizio Bekerle <patrizio@bekerle.com>
2024-06-01 14:35:46 +02:00
Nextcloud bot
281bb66f13 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-06-01 01:03:26 +00:00
Nextcloud bot
9b795c6ada Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-31 01:02:57 +00:00
Vincent Neubauer
fd5aaa82d9 fix(ui): "a.data.items is undefined" on first run
When enabling the app for the very first time and opening the view, a
toast notification pops up with the following message:

> TypeError: a.data.items is undefined

This is caused by a silenced exception in lib/Controller/ItemController.
Due to it, not a single key is set in the $return array.

Responses returned from such a controller will be serialized as JSON.
However, the returned value is no longer a key-value array, but an
(empty) list and the serializer will convert it to `[]` instead of `{}`
what it should've been.

Now it will return a dummy response containing all the keys but
empty values, causing the serializer to return an object.

Signed-off-by: Vincent Neubauer <v.neubauer@darlor.de>
2024-05-30 19:22:51 +02:00
Nextcloud bot
f6b411a497 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-28 01:02:15 +00:00
Nextcloud bot
073922245a Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-25 01:04:48 +00:00
Nextcloud bot
3111f79d05 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-24 01:01:13 +00:00
Nextcloud bot
4a4bed4c41 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-23 01:03:39 +00:00
Nextcloud bot
4a11c2579f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-21 01:04:09 +00:00
Nextcloud bot
2ab9f7169d Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-18 01:02:52 +00:00
dependabot[bot]
493ef0c341 Build(deps-dev): Bump @nextcloud/browserslist-config from 3.0.0 to 3.0.1
Bumps [@nextcloud/browserslist-config](https://github.com/nextcloud/browserslist-config) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/nextcloud/browserslist-config/releases)
- [Commits](https://github.com/nextcloud/browserslist-config/compare/v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: "@nextcloud/browserslist-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-14 19:04:12 +02:00
dependabot[bot]
416235b623 Build(deps-dev): Bump eslint-plugin-vue from 9.20.1 to 9.26.0
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.20.1 to 9.26.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.20.1...v9.26.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-11 07:53:50 +03:00
dependabot[bot]
276f6a7ff3 Build(deps): Bump @nextcloud/dialogs from 4.2.2 to 4.2.7
Bumps [@nextcloud/dialogs](https://github.com/nextcloud-libraries/nextcloud-dialogs) from 4.2.2 to 4.2.7.
- [Release notes](https://github.com/nextcloud-libraries/nextcloud-dialogs/releases)
- [Changelog](https://github.com/nextcloud-libraries/nextcloud-dialogs/blob/v4.2.7/CHANGELOG.md)
- [Commits](https://github.com/nextcloud-libraries/nextcloud-dialogs/compare/v4.2.2...v4.2.7)

---
updated-dependencies:
- dependency-name: "@nextcloud/dialogs"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-10 08:49:00 +03:00
dependabot[bot]
3baa27a208 Build(deps-dev): Bump squizlabs/php_codesniffer from 3.9.1 to 3.9.2
Bumps [squizlabs/php_codesniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) from 3.9.1 to 3.9.2.
- [Release notes](https://github.com/PHPCSStandards/PHP_CodeSniffer/releases)
- [Changelog](https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.9.1...3.9.2)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-08 09:52:25 +03:00
dependabot[bot]
56301bd9e8 Build(deps): Bump svenstaro/upload-release-action from 2.7.0 to 2.9.0
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.7.0 to 2.9.0.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](1beeb572c1...04733e069f)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-07 21:07:19 +02:00
dependabot[bot]
04f70d5dcc Build(deps-dev): Bump webpack-dev-middleware from 5.3.3 to 5.3.4
Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.3...v5.3.4)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-07 21:06:45 +02:00
dependabot[bot]
02e443c65c Build(deps-dev): Bump vue-material-design-icons from 5.2.0 to 5.3.0
Bumps [vue-material-design-icons](https://github.com/robcresswell/vue-material-design-icons) from 5.2.0 to 5.3.0.
- [Release notes](https://github.com/robcresswell/vue-material-design-icons/releases)
- [Changelog](https://github.com/robcresswell/vue-material-design-icons/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/robcresswell/vue-material-design-icons/compare/5.2.0...5.3.0)

---
updated-dependencies:
- dependency-name: vue-material-design-icons
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-07 21:06:12 +02:00
dependabot[bot]
30313f71db Build(deps): Bump skjnldsv/read-package-engines-version-actions
Bumps [skjnldsv/read-package-engines-version-actions](https://github.com/skjnldsv/read-package-engines-version-actions) from 2.2 to 3.
- [Release notes](https://github.com/skjnldsv/read-package-engines-version-actions/releases)
- [Commits](https://github.com/skjnldsv/read-package-engines-version-actions/compare/v2.2...v3)

---
updated-dependencies:
- dependency-name: skjnldsv/read-package-engines-version-actions
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-07 21:04:23 +02:00
Benjamin Brahmer
8b1666e815 Release 25.0.0-alpha6
Changed
- Improve layout of feed item row (#2569)

Fixed
- Reset content scroll position when feed item is changed (#2569)
- Fix link to feed in article header (#2569)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-05-07 20:10:12 +02:00
Benjamin Brahmer
0fb5ed2d78 update authors
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-05-07 13:52:59 +02:00
Paul Tirk
34fb1d2324 add changelog entries
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2024-05-07 13:52:59 +02:00
Paul Tirk
3a154dcceb fix link to feed in article header
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2024-05-07 13:52:59 +02:00
Paul Tirk
e1bcddd52e improve typing of feed item display list config
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2024-05-07 13:52:59 +02:00
Paul Tirk
a4911e2b74 reset content scroll position when changing feed item
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2024-05-07 13:52:59 +02:00
Paul Tirk
9c3f3e3dca grow main container of feed item row
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2024-05-07 13:52:59 +02:00
Paul Tirk
f774eba227 move feed item list header actually into header
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2024-05-07 13:52:59 +02:00
Nextcloud bot
cdff40499b Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-05-01 01:11:57 +00:00
Nextcloud bot
f3bfcc98de Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-04-25 01:11:55 +00:00
Nextcloud bot
3b9eee8339 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-04-23 01:11:43 +00:00
dependabot[bot]
a776d93fd2 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.64 to 1.3.69
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.64 to 1.3.69.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.64...1.3.69)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-21 21:11:25 +02:00
Nextcloud bot
3bed7897c1 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-04-13 01:13:31 +00:00
Nextcloud bot
cdf8636ac2 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-04-11 01:11:29 +00:00
Nextcloud bot
b5a327da3b Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-04-05 01:11:24 +00:00
dependabot[bot]
16c001cde5 Build(deps-dev): Bump squizlabs/php_codesniffer from 3.9.0 to 3.9.1
Bumps [squizlabs/php_codesniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) from 3.9.0 to 3.9.1.
- [Release notes](https://github.com/PHPCSStandards/PHP_CodeSniffer/releases)
- [Changelog](https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.9.0...3.9.1)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-02 07:50:10 +02:00
dependabot[bot]
89fb17b19c Build(deps-dev): Bump express from 4.18.2 to 4.19.2
Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-02 07:49:32 +02:00
Nextcloud bot
b8df39ee52 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-04-02 01:10:05 +00:00
Benjamin Brahmer
d6e37d665f Release 25.0.0-alpha5
Changed
- make occ news:updater:job exit with code 2 if last update was too long ago (#2590)
- Fix deprecated variable reference in ExportController.php (#2602)
- Add support for Nextcloud 29 (#2611)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-04-01 15:44:04 +02:00
Petra Mirelli
8c36f1d8bf Chore(docs): enable code highlighting and theme switcher
Signed-off-by: Petra Mirelli <80395360+iNtEgraIR2021@users.noreply.github.com>
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-04-01 10:51:56 +02:00
Petra Mirelli
9834529005 Chore(docs): enhance readability
Signed-off-by: Petra Mirelli <80395360+iNtEgraIR2021@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-04-01 10:51:56 +02:00
Marcus Nitzschke
323629c371 Fix horizontal grow of feed item rows
Signed-off-by: Marcus Nitzschke <mail@kendix.org>
2024-04-01 10:44:31 +02:00
Benjamin Brahmer
f5dc9a6aca Use local feedserver to test the logo/favicon logic
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-03-31 16:19:01 +02:00
Nextcloud bot
abb9c57f03 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-31 01:11:14 +00:00
Nextcloud bot
afc1e13cbf Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-30 01:11:50 +00:00
Nextcloud bot
17075d9b2e Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-29 01:16:11 +00:00
dependabot[bot]
2092557366 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.63 to 1.3.64
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.63 to 1.3.64.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.63...1.3.64)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-22 10:11:17 +01:00
dependabot[bot]
87ee7239d6 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.62 to 1.3.63
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.62 to 1.3.63.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.62...1.3.63)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-19 16:16:28 +01:00
dependabot[bot]
35a9442534 Build(deps): Bump follow-redirects from 1.15.4 to 1.15.6
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 09:17:48 +01:00
Nextcloud bot
701eeb1794 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-17 01:09:45 +00:00
Benjamin Brahmer
acc649e480 Changelog update
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-03-13 12:56:25 +01:00
Sean Molenaar
83533dc892 chore: support Nextcloud 29
Signed-off-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
2024-03-13 12:56:25 +01:00
Martin Vuille
3c642d67fe Update CHANGELOG.md
Signed-off-by: Martin Vuille <jpmv27@yahoo.com>
2024-03-13 12:43:05 +01:00
Martin Vuille
847556cda2 Fix deprecated variable reference
Signed-off-by: Martin Vuille <jpmv27@yahoo.com>
2024-03-13 12:43:05 +01:00
dependabot[bot]
11a9b16b0a Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.15 to 1.3.16
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.15 to 1.3.16.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.15...1.3.16)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-08 16:21:50 +01:00
dependabot[bot]
2d8ab2f858 Build(deps-dev): Bump phpstan/phpstan from 1.10.59 to 1.10.60
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.59 to 1.10.60.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.59...1.10.60)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-08 15:51:47 +01:00
Nextcloud bot
dc2b96c203 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-08 01:10:59 +00:00
Nextcloud bot
49e04ca13c Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-07 01:19:17 +00:00
Nextcloud bot
950dd751cc Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-04 01:10:52 +00:00
Nextcloud bot
ab7a4f5850 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-03-02 01:08:56 +00:00
Nextcloud bot
8eba7361ce Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-28 01:20:33 +00:00
Nextcloud bot
342627d9b5 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-27 01:09:52 +00:00
Nextcloud bot
8a1c943991 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-25 01:13:10 +00:00
Nextcloud bot
d44d3e3bad Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-22 01:12:21 +00:00
dependabot[bot]
5d940776eb Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.59 to 1.3.62
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.59 to 1.3.62.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.59...1.3.62)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-21 09:35:53 +01:00
dependabot[bot]
d8bfdf9251 Build(deps): Bump @nextcloud/moment from 1.2.2 to 1.3.1
Bumps [@nextcloud/moment](https://github.com/nextcloud/nextcloud-moment) from 1.2.2 to 1.3.1.
- [Release notes](https://github.com/nextcloud/nextcloud-moment/releases)
- [Changelog](https://github.com/nextcloud-libraries/nextcloud-moment/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-moment/compare/v1.2.2...v1.3.1)

---
updated-dependencies:
- dependency-name: "@nextcloud/moment"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-21 09:35:18 +01:00
dependabot[bot]
ff89a33bb4 Build(deps-dev): Bump squizlabs/php_codesniffer from 3.8.1 to 3.9.0
Bumps [squizlabs/php_codesniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) from 3.8.1 to 3.9.0.
- [Release notes](https://github.com/PHPCSStandards/PHP_CodeSniffer/releases)
- [Changelog](https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.8.1...3.9.0)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-21 09:17:21 +01:00
mortee
c926982281 cosmetic docs changes
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: mortee <mortee.github@kavemalna.hu>
2024-02-21 09:16:30 +01:00
mortee
70e18cdb2e make phpcs happy 2024-02-21 09:16:30 +01:00
mortee
540b7db34e added --check-elapsed command line option, to prevent existing scripts from breaking 2024-02-21 09:16:30 +01:00
mortee
9ee51e0c5b made reset logic and update problem checking independent of each other 2024-02-21 09:16:30 +01:00
mortee
f5a5caa3cc output clearer error message
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: mortee <mortee.github@kavemalna.hu>
2024-02-21 09:16:30 +01:00
mortee
d90769d2c6 occ news:updater:job exits with code 2 if last update was too long ago
Signed-off-by: mortee <mortee@kavemalna.hu>
2024-02-21 09:16:30 +01:00
mortee
1ae4a36155 quoted all paths in Makefile, to prevent errors because of spaces in the working directory path
Signed-off-by: mortee <mortee@kavemalna.hu>
2024-02-21 09:01:35 +01:00
dependabot[bot]
64709da84f Build(deps-dev): Bump ip from 2.0.0 to 2.0.1
Bumps [ip](https://github.com/indutny/node-ip) from 2.0.0 to 2.0.1.
- [Commits](https://github.com/indutny/node-ip/compare/v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-21 08:59:06 +01:00
Nextcloud bot
a386d8f357 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-19 01:09:34 +00:00
Nextcloud bot
3ed0f89c10 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-16 01:10:47 +00:00
Nextcloud bot
2a494eeab1 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-15 01:15:03 +00:00
dependabot[bot]
9908a0e2bf Build(deps-dev): Bump phpstan/phpstan from 1.10.56 to 1.10.58
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.56 to 1.10.58.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.56...1.10.58)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-13 14:33:40 +01:00
Nextcloud bot
a2788b8fca Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-02-13 01:10:11 +00:00
dependabot[bot]
46cc276cbd Build(deps-dev): Bump doctrine/dbal from 3.7.3 to 3.8.0
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.7.3 to 3.8.0.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.7.3...3.8.0)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-27 11:47:36 +01:00
Nextcloud bot
04fa40bc4f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-27 01:27:40 +00:00
Benjamin Brahmer
f18e690e89 Release 25.0.0-alpha4
Changed
- Add DB index for news_feeds.deleted_at (#2526)

Fixed
- PostgreSQL implement fix for marking over 65535 unread items as "read" (#2557)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2024-01-25 12:42:20 +01:00
IgorA100
4f5cf492ae Styling
Signed-off-by: IgorA100 <igora100@gmail.com>
2024-01-25 11:23:55 +01:00
IgorA100
2f6118e818 Replacing tabs with spaces
Signed-off-by: IgorA100 <igora100@gmail.com>
2024-01-25 11:23:55 +01:00
IgorA100
e7de0b550a Cancel preserve keys of the items array.
Signed-off-by: IgorA100 <igora100@gmail.com>
2024-01-25 11:23:55 +01:00
IgorA100
e3be78a1ff Update CHANGELOG.md
Update CHANGELOG.md

Signed-off-by: IgorA100 <igora100@gmail.com>
2024-01-25 11:23:55 +01:00
IgorA100
457aaa7aaf Fix: Mark over 65535 unread items as "read"
If there are more than 65535 unread items, then when checking “mark as read” you will get an SQL error (SQLSTATE[HY000]: General error: 7 number of parameters must be between 0 and 65535 at) due to the limitation of the number of parameters. The array is divided into smaller ones.

Signed-off-by: IgorA100 <igora100@gmail.com>
2024-01-25 11:23:55 +01:00
dependabot[bot]
719d4fd6b4 Build(deps-dev): Bump doctrine/dbal from 3.7.2 to 3.7.3
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.7.2 to 3.7.3.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.7.2...3.7.3)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-25 11:22:59 +01:00
dependabot[bot]
f04b5eab22 Build(deps-dev): Bump @babel/preset-env from 7.23.6 to 7.23.8
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.23.6 to 7.23.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.8/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-23 17:25:50 +01:00
dependabot[bot]
357033a47f Build(deps-dev): Bump eslint-plugin-vue from 9.19.2 to 9.20.1
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.19.2 to 9.20.1.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.19.2...v9.20.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-23 17:25:07 +01:00
dependabot[bot]
6d57237e7d Build(deps-dev): Bump vue-eslint-parser from 9.3.2 to 9.4.2
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.3.2 to 9.4.2.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.3.2...v9.4.2)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-23 17:24:38 +01:00
dependabot[bot]
e13fc9432d Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.54 to 1.3.59
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.54 to 1.3.59.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.54...1.3.59)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-22 10:32:27 +01:00
dependabot[bot]
49e213e7c4 Build(deps-dev): Bump phpstan/phpstan from 1.10.55 to 1.10.56
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.55 to 1.10.56.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.55...1.10.56)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-22 09:43:48 +01:00
Nextcloud bot
83d8d89edf Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-22 01:10:22 +00:00
dependabot[bot]
2467fff321 Build(deps-dev): Bump phpunit/phpunit from 9.6.15 to 9.6.16
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.15 to 9.6.16.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.16/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.15...9.6.16)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-21 14:17:46 +01:00
Josh
668ed82280 FolderRead: add type declarations
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-01-21 13:58:20 +01:00
dependabot[bot]
b3bad9938f Build(deps-dev): Bump squizlabs/php_codesniffer from 3.8.0 to 3.8.1
Bumps [squizlabs/php_codesniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) from 3.8.0 to 3.8.1.
- [Release notes](https://github.com/PHPCSStandards/PHP_CodeSniffer/releases)
- [Changelog](https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.8.0...3.8.1)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-21 13:57:53 +01:00
dependabot[bot]
eb472e7a7c Build(deps-dev): Bump @babel/core from 7.23.6 to 7.23.7
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.6 to 7.23.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.7/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-21 11:37:36 +01:00
dependabot[bot]
4148a74f18 Build(deps-dev): Bump terser-webpack-plugin from 5.3.9 to 5.3.10
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 5.3.9 to 5.3.10.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v5.3.9...v5.3.10)

---
updated-dependencies:
- dependency-name: terser-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-21 11:37:11 +01:00
Nextcloud bot
1f6b12b8fb Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-21 01:28:56 +00:00
Nextcloud bot
918fc14658 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-18 01:09:35 +00:00
nextcloud-command
2492232c57 Update npm and node engines versions
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-01-17 08:40:54 +01:00
Nextcloud bot
0ea8ca3558 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-14 01:12:07 +00:00
Nextcloud bot
5c5c457368 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-13 01:10:58 +00:00
Nextcloud bot
69741134fd Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-12 01:09:12 +00:00
Nextcloud bot
320357f35f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-10 01:11:17 +00:00
dependabot[bot]
32bdbd26b8 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.53 to 1.3.54
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.53 to 1.3.54.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.53...1.3.54)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-08 15:57:26 +02:00
dependabot[bot]
95efbabb96 Build(deps-dev): Bump axios from 1.6.3 to 1.6.5
Bumps [axios](https://github.com/axios/axios) from 1.6.3 to 1.6.5.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.6.3...v1.6.5)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-08 15:55:41 +02:00
dependabot[bot]
90bee5435c Build(deps-dev): Bump phpstan/phpstan from 1.10.50 to 1.10.52
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.50 to 1.10.52.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.50...1.10.52)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-05 15:14:49 +02:00
dependabot[bot]
ebcbf4f63d Build(deps): Bump vue and vue-template-compiler
Bumps [vue](https://github.com/vuejs/core) and [vue-template-compiler](https://github.com/vuejs/vue). These dependencies needed to be updated together.

Updates `vue` from 2.7.15 to 2.7.16
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/commits)

Updates `vue-template-compiler` from 2.7.15 to 2.7.16
- [Release notes](https://github.com/vuejs/vue/releases)
- [Changelog](https://github.com/vuejs/vue/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue/compare/v2.7.15...v2.7.16)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: vue-template-compiler
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-05 12:25:56 +01:00
Nextcloud bot
9afd6f5fcd Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-04 01:12:05 +00:00
Nextcloud bot
7a25eeaf5f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-01-03 01:11:49 +00:00
Sean Molenaar
38af3a742a fix: ESLint errors
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2024-01-02 11:16:39 +02:00
Nextcloud bot
b226b6f076 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-31 01:10:56 +00:00
Benjamin Brahmer
a8c26384a3 fix typo
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-30 15:25:56 +01:00
Benjamin Brahmer
9cfcc71e65 bump version
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-30 15:25:56 +01:00
Benjamin Brahmer
87fac9579a change order of droping tables, constraints
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-30 15:25:56 +01:00
Benjamin Brahmer
324fee8161 adjust existing migration
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-30 15:25:56 +01:00
Benjamin Brahmer
db4bb6381d php 8.2 deprecated ${} in strings {$var} is a working alternative
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-30 15:25:56 +01:00
Benjamin Brahmer
08f4e63aeb Add Listener for missing db indices
this allows admins to add them via occ.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-30 15:25:56 +01:00
dependabot[bot]
64fe310488 Build(deps-dev): Bump eslint from 8.54.0 to 8.56.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.54.0 to 8.56.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.54.0...v8.56.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-29 14:06:04 +01:00
dependabot[bot]
389955169d Build(deps-dev): Bump axios from 1.6.2 to 1.6.3
Bumps [axios](https://github.com/axios/axios) from 1.6.2 to 1.6.3.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.6.2...v1.6.3)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-29 13:44:07 +01:00
Nextcloud bot
872567f0bf Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-27 01:10:09 +00:00
Benjamin Brahmer
29ad0cf02d revert changes to test
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-24 14:57:28 +01:00
Benjamin Brahmer
cc01fd4a64 Release 25.0.0-alpha3
Changed
- Changed default page when starting app (#2515)
- Downgrade feed-io to 5.3.1 (#2497)

Fixed
- Fix search support for Nextcloud 28 (#2432)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-24 14:57:28 +01:00
Benjamin Brahmer
b5b3d1816e downgrade feed-io to 5.3.1
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-24 14:28:27 +01:00
Nextcloud bot
151d673d73 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-24 01:16:51 +00:00
Nextcloud bot
fbec2303bd Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-23 01:11:02 +00:00
Sean Molenaar
1c7a5f5bd8 fix: default to unread page
Signed-off-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
2023-12-21 17:51:47 +01:00
dependabot[bot]
44a620f2a6 Build(deps-dev): Bump @babel/preset-env from 7.23.5 to 7.23.6
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.23.5 to 7.23.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.6/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 10:48:34 +01:00
dependabot[bot]
a4b50cebbf Build(deps-dev): Bump @babel/core from 7.23.5 to 7.23.6
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.5 to 7.23.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.6/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 10:33:50 +01:00
dependabot[bot]
6cd79ae2d0 Build(deps-dev): Bump phpstan/phpstan from 1.10.46 to 1.10.50
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.46 to 1.10.50.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.46...1.10.50)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 10:33:30 +01:00
dependabot[bot]
b8d93f6b5a Build(deps-dev): Bump regenerator-runtime from 0.14.0 to 0.14.1
Bumps [regenerator-runtime](https://github.com/facebook/regenerator) from 0.14.0 to 0.14.1.
- [Release notes](https://github.com/facebook/regenerator/releases)
- [Commits](https://github.com/facebook/regenerator/compare/regenerator-runtime@0.14.0...regenerator-runtime@0.14.1)

---
updated-dependencies:
- dependency-name: regenerator-runtime
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 10:33:00 +01:00
Christof Dorner
a8f43de588 use https for all explore feed urls and favicons
The CCMixter favicon was responsible for browsers emitting
a mixed content warning. While at it, I changed all other
http URLs to https.

Signed-off-by: Christof Dorner <christof@chdorner.com>
2023-12-19 15:20:00 +01:00
dependabot[bot]
9a0ae37518 Build(deps-dev): Bump eslint-plugin-import from 2.28.0 to 2.29.1
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.28.0 to 2.29.1.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.28.0...v2.29.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-19 13:28:47 +01:00
dependabot[bot]
adce2b4f6a Build(deps-dev): Bump squizlabs/php_codesniffer from 3.7.2 to 3.8.0
Bumps [squizlabs/php_codesniffer](https://github.com/squizlabs/PHP_CodeSniffer) from 3.7.2 to 3.8.0.
- [Release notes](https://github.com/squizlabs/PHP_CodeSniffer/releases)
- [Commits](https://github.com/squizlabs/PHP_CodeSniffer/commits)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-19 12:29:57 +01:00
dependabot[bot]
a65bbcc43b Build(deps-dev): Bump @types/jest from 29.5.10 to 29.5.11
Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 29.5.10 to 29.5.11.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-19 12:25:46 +01:00
dependabot[bot]
1cebfef199 Build(deps-dev): Bump eslint-plugin-vue from 9.18.1 to 9.19.2
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.18.1 to 9.19.2.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.18.1...v9.19.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-19 12:22:49 +01:00
Benjamin Brahmer
0ab992cadd update favicon link
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-18 14:37:43 +01:00
Benjamin Brahmer
a10cb17a3e Fix Time Test failing for no reason
Co-authored-by: Sean Molenaar <sean@seanmolenaar.eu>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-12-18 14:37:43 +01:00
Nextcloud bot
373706e73a Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-18 01:09:45 +00:00
Nextcloud bot
929651bebb Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-16 01:09:10 +00:00
Nextcloud bot
eeda1b27e2 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-15 01:09:23 +00:00
dependabot[bot]
7f83ea17d9 Build(deps-dev): Bump phpunit/phpunit from 9.6.13 to 9.6.15
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.13 to 9.6.15.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.15/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.13...9.6.15)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-10 23:51:57 +01:00
dependabot[bot]
60a191744e Build(deps-dev): Bump @babel/core from 7.23.3 to 7.23.5
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.23.3 to 7.23.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.5/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-08 12:25:47 +01:00
dependabot[bot]
27be0be71d Build(deps-dev): Bump ts-loader from 9.4.4 to 9.5.1
Bumps [ts-loader](https://github.com/TypeStrong/ts-loader) from 9.4.4 to 9.5.1.
- [Release notes](https://github.com/TypeStrong/ts-loader/releases)
- [Changelog](https://github.com/TypeStrong/ts-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/ts-loader/compare/v9.4.4...v9.5.1)

---
updated-dependencies:
- dependency-name: ts-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-08 12:25:09 +01:00
Nextcloud bot
2b1c836e77 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-12-04 01:08:20 +00:00
dependabot[bot]
6e3c4b40a6 Build(deps-dev): Bump @babel/preset-env from 7.23.3 to 7.23.5
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.23.3 to 7.23.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.5/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-29 15:09:36 +01:00
dependabot[bot]
b1bb97774a Build(deps-dev): Bump phpstan/phpstan from 1.10.45 to 1.10.46
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.45 to 1.10.46.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.45...1.10.46)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-29 15:08:42 +01:00
dependabot[bot]
01bb4745a3 Build(deps-dev): Bump phpstan/phpstan from 1.10.44 to 1.10.45
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.44 to 1.10.45.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.44...1.10.45)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-28 15:43:41 +01:00
dependabot[bot]
2a08de5792 Build(deps-dev): Bump @types/lodash from 4.14.201 to 4.14.202
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.201 to 4.14.202.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-28 08:51:24 +01:00
dependabot[bot]
e37454c730 Build(deps-dev): Bump jest and @types/jest
Bumps [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) and [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest). These dependencies needed to be updated together.

Updates `jest` from 29.6.2 to 29.7.0
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v29.7.0/packages/jest)

Updates `@types/jest` from 29.5.3 to 29.5.10
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: jest
  dependency-type: direct:development
  update-type: version-update:semver-minor
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-27 17:27:20 +01:00
dependabot[bot]
774b191dab Build(deps): Bump @nextcloud/moment from 1.2.1 to 1.2.2
Bumps [@nextcloud/moment](https://github.com/nextcloud/nextcloud-moment) from 1.2.1 to 1.2.2.
- [Changelog](https://github.com/nextcloud-libraries/nextcloud-moment/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-moment/compare/v1.2.1...v1.2.2)

---
updated-dependencies:
- dependency-name: "@nextcloud/moment"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-27 17:26:47 +01:00
dependabot[bot]
818a28d0f9 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.51 to 1.3.53
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.51 to 1.3.53.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.51...1.3.53)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-27 10:49:38 +01:00
dependabot[bot]
e162b5ebe2 Build(deps-dev): Bump eslint-webpack-plugin from 3.2.0 to 4.0.1
Bumps [eslint-webpack-plugin](https://github.com/webpack-contrib/eslint-webpack-plugin) from 3.2.0 to 4.0.1.
- [Release notes](https://github.com/webpack-contrib/eslint-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/eslint-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/eslint-webpack-plugin/compare/v3.2.0...v4.0.1)

---
updated-dependencies:
- dependency-name: eslint-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-27 10:48:51 +01:00
dependabot[bot]
12e3c14768 Build(deps-dev): Bump axios from 1.6.0 to 1.6.2
Bumps [axios](https://github.com/axios/axios) from 1.6.0 to 1.6.2.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.6.0...v1.6.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-27 10:48:27 +01:00
Nextcloud bot
cc79edc0a6 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-27 01:14:34 +00:00
dependabot[bot]
13dfc72634 Build(deps-dev): Bump emoji-mart-vue-fast from 11.2.0 to 15.0.0
Bumps [emoji-mart-vue-fast](https://github.com/serebrov/emoji-mart-vue) from 11.2.0 to 15.0.0.
- [Release notes](https://github.com/serebrov/emoji-mart-vue/releases)
- [Commits](https://github.com/serebrov/emoji-mart-vue/compare/11.2.0...15.0.0)

---
updated-dependencies:
- dependency-name: emoji-mart-vue-fast
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-26 23:48:16 +01:00
dependabot[bot]
191bee518a Build(deps-dev): Bump @types/webpack-env from 1.18.1 to 1.18.4
Bumps [@types/webpack-env](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/webpack-env) from 1.18.1 to 1.18.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/webpack-env)

---
updated-dependencies:
- dependency-name: "@types/webpack-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-26 23:44:27 +01:00
dependabot[bot]
46cb7b1922 Build(deps-dev): Bump phpstan/phpstan from 1.10.43 to 1.10.44
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.43 to 1.10.44.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.43...1.10.44)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-26 23:43:13 +01:00
Nextcloud bot
991d77e1d7 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-26 01:13:53 +00:00
Nextcloud bot
a1bf4d7565 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-25 01:18:23 +00:00
Nextcloud bot
b106cfc274 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-24 01:43:36 +00:00
dependabot[bot]
3916ac53ee Build(deps-dev): Bump debounce from 1.2.1 to 2.0.0
Bumps [debounce](https://github.com/sindresorhus/debounce) from 1.2.1 to 2.0.0.
- [Release notes](https://github.com/sindresorhus/debounce/releases)
- [Commits](https://github.com/sindresorhus/debounce/compare/1.2.1...v2.0.0)

---
updated-dependencies:
- dependency-name: debounce
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-23 09:57:20 +01:00
dependabot[bot]
9efa7812a4 Build(deps-dev): Bump eslint from 8.53.0 to 8.54.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.53.0 to 8.54.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.53.0...v8.54.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-21 12:30:21 +01:00
dependabot[bot]
e516c90670 Build(deps): Bump ezyang/htmlpurifier from 4.16.0 to 4.17.0
Bumps [ezyang/htmlpurifier](https://github.com/ezyang/htmlpurifier) from 4.16.0 to 4.17.0.
- [Release notes](https://github.com/ezyang/htmlpurifier/releases)
- [Changelog](https://github.com/ezyang/htmlpurifier/blob/master/NEWS)
- [Commits](https://github.com/ezyang/htmlpurifier/compare/v4.16.0...v4.17.0)

---
updated-dependencies:
- dependency-name: ezyang/htmlpurifier
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 16:14:23 +01:00
dependabot[bot]
5cc994b11c Build(deps-dev): Bump doctrine/dbal from 3.7.1 to 3.7.2
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.7.1 to 3.7.2.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.7.1...3.7.2)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 15:40:44 +01:00
dependabot[bot]
33798f60bf Build(deps-dev): Bump webpack from 5.88.2 to 5.89.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.88.2 to 5.89.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.88.2...v5.89.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 15:31:06 +01:00
dependabot[bot]
cf6145f7ff Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.50 to 1.3.51
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.50 to 1.3.51.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.50...1.3.51)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 15:03:42 +01:00
dependabot[bot]
e08ee29163 Build(deps-dev): Bump @vue/eslint-config-typescript
Bumps [@vue/eslint-config-typescript](https://github.com/vuejs/eslint-config-typescript) from 11.0.2 to 11.0.3.
- [Release notes](https://github.com/vuejs/eslint-config-typescript/releases)
- [Commits](https://github.com/vuejs/eslint-config-typescript/compare/v11.0.2...v11.0.3)

---
updated-dependencies:
- dependency-name: "@vue/eslint-config-typescript"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 14:58:52 +01:00
dependabot[bot]
c863344809 Build(deps-dev): Bump regenerator-runtime from 0.13.11 to 0.14.0
Bumps [regenerator-runtime](https://github.com/facebook/regenerator) from 0.13.11 to 0.14.0.
- [Release notes](https://github.com/facebook/regenerator/releases)
- [Commits](https://github.com/facebook/regenerator/compare/regenerator-runtime@0.13.11...regenerator-runtime@0.14.0)

---
updated-dependencies:
- dependency-name: regenerator-runtime
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 14:58:29 +01:00
dependabot[bot]
180697592d Build(deps-dev): Bump regexpu-core from 5.3.2 to 6.0.0
Bumps [regexpu-core](https://github.com/mathiasbynens/regexpu-core) from 5.3.2 to 6.0.0.
- [Release notes](https://github.com/mathiasbynens/regexpu-core/releases)
- [Commits](https://github.com/mathiasbynens/regexpu-core/compare/v5.3.2...v6.0.0)

---
updated-dependencies:
- dependency-name: regexpu-core
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-20 14:58:10 +01:00
dependabot[bot]
f7a4f7e95b Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.48 to 1.3.50
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.48 to 1.3.50.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.48...1.3.50)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-19 19:56:16 +01:00
Benjamin Brahmer
df35c43c4e security fixes
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-11-19 19:54:01 +01:00
Benjamin Brahmer
e5b3393d29 update nodejs
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-11-19 18:57:54 +01:00
dependabot[bot]
8b6febb584 Build(deps-dev): Bump focus-trap from 7.5.2 to 7.5.4
Bumps [focus-trap](https://github.com/focus-trap/focus-trap) from 7.5.2 to 7.5.4.
- [Release notes](https://github.com/focus-trap/focus-trap/releases)
- [Changelog](https://github.com/focus-trap/focus-trap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/focus-trap/focus-trap/compare/v7.5.2...v7.5.4)

---
updated-dependencies:
- dependency-name: focus-trap
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 13:37:29 +01:00
dependabot[bot]
bf4405e24b Build(deps-dev): Bump eslint from 8.46.0 to 8.53.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.46.0 to 8.53.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.46.0...v8.53.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 13:37:18 +01:00
dependabot[bot]
df6574d47f Build(deps-dev): Bump @babel/preset-env from 7.22.9 to 7.23.3
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.22.9 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 13:37:05 +01:00
dependabot[bot]
0a93b5a322 Build(deps-dev): Bump eslint-import-resolver-webpack
Bumps [eslint-import-resolver-webpack](https://github.com/import-js/eslint-plugin-import) from 0.12.2 to 0.13.8.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v0.12.2...resolvers/webpack/v0.13.8)

---
updated-dependencies:
- dependency-name: eslint-import-resolver-webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 13:36:52 +01:00
dependabot[bot]
081ba62662 Build(deps-dev): Bump string-length from 5.0.1 to 6.0.0
Bumps [string-length](https://github.com/sindresorhus/string-length) from 5.0.1 to 6.0.0.
- [Release notes](https://github.com/sindresorhus/string-length/releases)
- [Commits](https://github.com/sindresorhus/string-length/compare/v5.0.1...v6.0.0)

---
updated-dependencies:
- dependency-name: string-length
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 13:36:30 +01:00
dependabot[bot]
de59ca0f7b Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.47 to 1.3.48
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.47 to 1.3.48.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.47...1.3.48)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-16 19:10:12 +01:00
dependabot[bot]
650143e949 Build(deps-dev): Bump jest-environment-jsdom from 29.6.2 to 29.7.0
Bumps [jest-environment-jsdom](https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom) from 29.6.2 to 29.7.0.
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v29.7.0/packages/jest-environment-jsdom)

---
updated-dependencies:
- dependency-name: jest-environment-jsdom
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-16 16:04:45 +01:00
Benjamin Brahmer
46fb15c6ee update nextcloud-axios
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-11-16 13:04:14 +01:00
dependabot[bot]
c17b2a8d74 Build(deps-dev): Bump vue-eslint-parser from 9.3.1 to 9.3.2
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.3.1 to 9.3.2.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.3.1...v9.3.2)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-16 10:36:09 +01:00
dependabot[bot]
3148c16f96 Build(deps-dev): Bump stylelint from 15.10.2 to 15.11.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 15.10.2 to 15.11.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/15.10.2...15.11.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-16 10:35:49 +01:00
dependabot[bot]
ffdb3923e5 Build(deps): Bump @nextcloud/password-confirmation from 4.0.4 to 4.1.0
Bumps [@nextcloud/password-confirmation](https://github.com/nextcloud-libraries/nextcloud-password-confirmation) from 4.0.4 to 4.1.0.
- [Release notes](https://github.com/nextcloud-libraries/nextcloud-password-confirmation/releases)
- [Changelog](https://github.com/nextcloud-libraries/nextcloud-password-confirmation/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud-libraries/nextcloud-password-confirmation/compare/v4.0.4...v4.1.0)

---
updated-dependencies:
- dependency-name: "@nextcloud/password-confirmation"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-16 10:28:40 +01:00
dependabot[bot]
87d2c1d0b8 Build(deps-dev): Bump @types/lodash from 4.14.197 to 4.14.201
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.197 to 4.14.201.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-16 10:26:09 +01:00
dependabot[bot]
0391b24d53 Build(deps-dev): Bump vue-multiselect from 2.1.7 to 2.1.8
Bumps [vue-multiselect](https://github.com/shentao/vue-multiselect) from 2.1.7 to 2.1.8.
- [Release notes](https://github.com/shentao/vue-multiselect/releases)
- [Commits](https://github.com/shentao/vue-multiselect/compare/v2.1.7...v2.1.8)

---
updated-dependencies:
- dependency-name: vue-multiselect
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-15 13:23:44 +01:00
dependabot[bot]
d17bff8022 Build(deps-dev): Bump stylelint-webpack-plugin from 2.5.0 to 4.1.1
Bumps [stylelint-webpack-plugin](https://github.com/webpack-contrib/stylelint-webpack-plugin) from 2.5.0 to 4.1.1.
- [Release notes](https://github.com/webpack-contrib/stylelint-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/stylelint-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/stylelint-webpack-plugin/compare/v2.5.0...v4.1.1)

---
updated-dependencies:
- dependency-name: stylelint-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-15 10:52:47 +01:00
Sean Molenaar
9f5da17e1d fix: adopt search to NC 28 filters
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2023-11-15 09:27:41 +01:00
dependabot[bot]
afb3639316 Build(deps-dev): Bump regenerator-transform from 0.15.1 to 0.15.2
Bumps [regenerator-transform](https://github.com/facebook/regenerator) from 0.15.1 to 0.15.2.
- [Release notes](https://github.com/facebook/regenerator/releases)
- [Commits](https://github.com/facebook/regenerator/compare/regenerator-transform@0.15.1...regenerator-transform@0.15.2)

---
updated-dependencies:
- dependency-name: regenerator-transform
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-15 09:22:56 +01:00
dependabot[bot]
6a6da59ed3 Build(deps-dev): Bump @babel/core from 7.22.9 to 7.23.3
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.22.9 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-15 00:19:40 +01:00
Nextcloud bot
99e90ac477 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-14 01:16:53 +00:00
dependabot[bot]
d85e3d9a99 Build(deps): Bump vue and vue-template-compiler
Bumps [vue](https://github.com/vuejs/core) and [vue-template-compiler](https://github.com/vuejs/vue). These dependencies needed to be updated together.

Updates `vue` from 2.7.14 to 2.7.15
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/commits)

Updates `vue-template-compiler` from 2.7.14 to 2.7.15
- [Release notes](https://github.com/vuejs/vue/releases)
- [Changelog](https://github.com/vuejs/vue/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue/compare/v2.7.14...v2.7.15)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: vue-template-compiler
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-13 22:28:28 +01:00
dependabot[bot]
3824adfb7b Build(deps): Bump @nextcloud/l10n from 1.6.0 to 2.2.0
Bumps [@nextcloud/l10n](https://github.com/nextcloud/nextcloud-l10n) from 1.6.0 to 2.2.0.
- [Release notes](https://github.com/nextcloud/nextcloud-l10n/releases)
- [Changelog](https://github.com/nextcloud-libraries/nextcloud-l10n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-l10n/compare/v1.6.0...v2.2.0)

---
updated-dependencies:
- dependency-name: "@nextcloud/l10n"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-13 22:26:34 +01:00
dependabot[bot]
7551ac98fb Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.46 to 1.3.47
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.46 to 1.3.47.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.46...1.3.47)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-13 22:25:05 +01:00
Nextcloud bot
c063daa199 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-13 01:14:31 +00:00
Benjamin Brahmer
f81054ff77 Release 25.0.0-alpha2
Changed
- Add support for Nextcloud 28
- Use Nextcloud vue components for item list and article view (#2401)
- Fix aspect ratio of article images (#2401)

Fixed
- Adjust search urls to match changed Vue routes (#2408)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-11-12 14:51:28 +01:00
dependabot[bot]
bdb6494efd Build(deps-dev): Bump eslint-plugin-vue from 9.16.1 to 9.18.1
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.16.1 to 9.18.1.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.16.1...v9.18.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-12 13:51:24 +01:00
dependabot[bot]
fc6eebb7e0 Build(deps-dev): Bump eslint-plugin-standard from 4.1.0 to 5.0.0
Bumps [eslint-plugin-standard](https://github.com/standard/eslint-plugin-standard) from 4.1.0 to 5.0.0.
- [Commits](https://github.com/standard/eslint-plugin-standard/compare/v4.1.0...v5.0.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-standard
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-11 22:39:23 +01:00
dependabot[bot]
1b977a202f Build(deps-dev): Bump @babel/preset-typescript from 7.22.5 to 7.23.3
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.22.5 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-11 22:38:59 +01:00
dependabot[bot]
264c27567d Build(deps-dev): Bump webpack-merge from 5.9.0 to 5.10.0
Bumps [webpack-merge](https://github.com/survivejs/webpack-merge) from 5.9.0 to 5.10.0.
- [Changelog](https://github.com/survivejs/webpack-merge/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/survivejs/webpack-merge/compare/v5.9.0...v5.10.0)

---
updated-dependencies:
- dependency-name: webpack-merge
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-11 22:35:36 +01:00
Nextcloud bot
abf86c2115 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-11 01:12:03 +00:00
dependabot[bot]
a1639b9422 Build(deps-dev): Bump jest-serializer-vue from 2.0.2 to 3.1.0
Bumps [jest-serializer-vue](https://github.com/eddyerburgh/jest-serializer-vue) from 2.0.2 to 3.1.0.
- [Release notes](https://github.com/eddyerburgh/jest-serializer-vue/releases)
- [Changelog](https://github.com/eddyerburgh/jest-serializer-vue/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eddyerburgh/jest-serializer-vue/commits)

---
updated-dependencies:
- dependency-name: jest-serializer-vue
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-10 11:42:18 +01:00
dependabot[bot]
186d384919 Build(deps-dev): Bump axios from 1.4.0 to 1.6.0
Bumps [axios](https://github.com/axios/axios) from 1.4.0 to 1.6.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.4.0...v1.6.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-10 11:33:57 +01:00
dependabot[bot]
58a5c7a4fd Build(deps): Bump @babel/traverse from 7.22.8 to 7.23.3
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.22.8 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-10 11:17:27 +01:00
dependabot[bot]
e988491138 Build(deps-dev): Bump @nextcloud/browserslist-config from 2.3.0 to 3.0.0
Bumps [@nextcloud/browserslist-config](https://github.com/nextcloud/browserslist-config) from 2.3.0 to 3.0.0.
- [Release notes](https://github.com/nextcloud/browserslist-config/releases)
- [Commits](https://github.com/nextcloud/browserslist-config/compare/v2.3.0...v3.0.0)

---
updated-dependencies:
- dependency-name: "@nextcloud/browserslist-config"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-10 09:44:08 +01:00
dependabot[bot]
4413eab908 Build(deps): Bump @nextcloud/dialogs from 3.2.0 to 4.2.2
Bumps [@nextcloud/dialogs](https://github.com/nextcloud-libraries/nextcloud-dialogs) from 3.2.0 to 4.2.2.
- [Release notes](https://github.com/nextcloud-libraries/nextcloud-dialogs/releases)
- [Changelog](https://github.com/nextcloud-libraries/nextcloud-dialogs/blob/v4.2.2/CHANGELOG.md)
- [Commits](https://github.com/nextcloud-libraries/nextcloud-dialogs/compare/v3.2.0...v4.2.2)

---
updated-dependencies:
- dependency-name: "@nextcloud/dialogs"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-10 09:26:46 +01:00
Nextcloud bot
1c31e2a394 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-10 01:13:38 +00:00
dependabot[bot]
84df3f7400 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.45 to 1.3.46
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.45 to 1.3.46.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.45...1.3.46)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-09 17:16:25 +01:00
Nextcloud bot
e977bd78f0 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-09 01:16:16 +00:00
Benjamin Brahmer
70aed07c0b fix dbal deprecations
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-11-08 11:07:40 +01:00
Benjamin Brahmer
2dc90bc660 adjust makefile, npm didn't find package.json
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-11-08 11:07:40 +01:00
Nextcloud bot
a4ac9357c8 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-08 01:22:49 +00:00
Paul Tirk
2facfdaa5b remove (now) unsuitable test for folder name/unread count in feed list header
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
f3ce43963b move css style into class
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
282056f07c remove unnecessary height of app content details component
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
b568eec0be show empty content component when no article is selected
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
4bad81fb3a pass empty array instead of undefined for unread items
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
2e43e722e9 add note about composition api
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
9c872360b5 adapt tests to use new content template component
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
8970397a2f use @vue/vue2-jest package instead of vue-jest
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
b5a18d339c reformat emit definition to satisfy linter
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
e69a0f85e0 do not import unused component
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
6638a9f8ef use type import for PropType
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
fec356ff83 add missing nc app content component to explore page
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
f83a8ccf90 improve changelog entries
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
1b96e8d5c7 linting
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
37723da980 add changelog entry for frontend improvements
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
7cfa70f632 improve feed item list item
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
940bcb3dcc use favicon as link to feed item
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
4844e1da49 fix article scrolling
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
22d183fb96 show/hide details according to item selection
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
b4673d3f80 wrap list and details in the corresponding nextcloud components
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
fb7b121103 use template component for list/content views
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
fba58d4658 set max width for article view and center it
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
3366b797bb show feed item in content detail
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
1d2a0bfa29 move NcAppContent into route components & use list slot
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
Paul Tirk
97de4333b3 maintain aspect ratio of images
Signed-off-by: Paul Tirk <paultirk@paultirk.com>
2023-11-07 20:01:54 +01:00
anoy
ff5de06c71 adjust search urls to match changed Vue routes
Signed-off-by: anoy <anoymouserver+github@mailbox.org>
2023-11-07 14:16:45 +01:00
Benjamin Brahmer
97aac092e5 remove duplicate npm ci, don't use npm install
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-11-07 14:15:44 +01:00
anoy
e5a4f6a005 fix merge errors
- js build was run twice
- engines were defined twice

Signed-off-by: anoy <anoymouserver+github@mailbox.org>
2023-11-07 14:15:44 +01:00
dependabot[bot]
35a6018ea5 Build(deps-dev): Bump phpstan/phpstan from 1.10.40 to 1.10.41
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.40 to 1.10.41.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.40...1.10.41)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-07 13:49:06 +01:00
Nextcloud bot
15300917dd Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-07 01:23:27 +00:00
Nextcloud bot
9d11e11bf4 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-06 01:19:46 +00:00
dependabot[bot]
ed595a666d Build(deps-dev): Bump phpstan/phpstan-strict-rules from 1.5.1 to 1.5.2 (#2405)
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.5.1...1.5.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 09:36:24 +01:00
dependabot[bot]
dd6ac83aeb Build(deps-dev): Bump phpstan/phpstan from 1.10.39 to 1.10.40
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.39 to 1.10.40.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.39...1.10.40)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-01 08:13:07 +01:00
Nextcloud bot
52e6faffe4 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-11-01 01:17:40 +00:00
dependabot[bot]
26b4c65b7f Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.43 to 1.3.45
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.43 to 1.3.45.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.43...1.3.45)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-31 10:30:32 +01:00
Nextcloud bot
2352d8c791 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-31 01:17:22 +00:00
Joas Schilling
e52eb0f613 Merge pull request #2403 from nextcloud/nickvergessen-patch-1
Don't build frontend code to save CI time when only running PHP tests
2023-10-30 14:39:41 +01:00
Joas Schilling
90d004f7f7 Don't build frontend code to save CI time when only running PHP tests
Signed-off-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
2023-10-30 07:23:49 +01:00
dependabot[bot]
224525012c Build(deps): Bump browserify-sign from 4.2.1 to 4.2.2
Bumps [browserify-sign](https://github.com/crypto-browserify/browserify-sign) from 4.2.1 to 4.2.2.
- [Changelog](https://github.com/browserify/browserify-sign/blob/main/CHANGELOG.md)
- [Commits](https://github.com/crypto-browserify/browserify-sign/compare/v4.2.1...v4.2.2)

---
updated-dependencies:
- dependency-name: browserify-sign
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-28 14:22:54 +02:00
Benjamin Brahmer
66c2121125 update test dependencies
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-10-28 14:19:56 +02:00
Benjamin Brahmer
da3c58eba5 Feed without GUID is now working
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-10-28 14:19:56 +02:00
dependabot[bot]
8b33b252d5 Build(deps): Bump debril/feed-io from 5.3.1 to 5.3.2
Bumps [debril/feed-io](https://github.com/alexdebril/feed-io) from 5.3.1 to 5.3.2.
- [Release notes](https://github.com/alexdebril/feed-io/releases)
- [Commits](https://github.com/alexdebril/feed-io/compare/v5.3.1...v5.3.2)

---
updated-dependencies:
- dependency-name: debril/feed-io
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-28 14:19:56 +02:00
Nextcloud bot
91e9279799 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-28 01:16:23 +00:00
Nextcloud bot
1244f6e5d3 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-27 01:16:12 +00:00
Nextcloud bot
c2ae225cfd Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-26 01:16:21 +00:00
Benjamin Brahmer
6de455444b Release 25.0.0-alpha1
Changed
- Major Rewrite of the Frontend with Vue JS (#748)
  For comments and suggestions for the new UI, please use this: https://github.com/nextcloud/news/discussions/2388
- Set User Agent for curl in Scraper (#2380)
- Drop support for Nextcloud 26, Supported 27

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-10-25 12:01:20 +02:00
Nextcloud bot
0ef92f2117 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-25 01:31:57 +00:00
dependabot[bot]
d5f71e212c Build(deps): Bump actions/setup-node from 1 to 4
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 1 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v1...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 19:02:03 +02:00
dependabot[bot]
15e3792d99 Build(deps): Bump actions/checkout from 2 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 14:39:17 +02:00
Benjamin Brahmer
1632f5b0e2 adjust dependabot, remove allowEvalScript()
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-10-24 13:22:44 +02:00
Benjamin Brahmer
f53159bb88 Adjust Makefile, Changelog and more
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-10-24 13:22:44 +02:00
dependabot[bot]
2f9d18516d Build(deps): Bump arthurhoaro/favicon from 1.3.3 to 2.0.0
Bumps [arthurhoaro/favicon](https://github.com/ArthurHoaro/favicon) from 1.3.3 to 2.0.0.
- [Release notes](https://github.com/ArthurHoaro/favicon/releases)
- [Commits](https://github.com/ArthurHoaro/favicon/compare/v1.3.3...v2.0.0)

---
updated-dependencies:
- dependency-name: arthurhoaro/favicon
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 11:29:50 +02:00
Benjamin Brahmer
b60ba4a05c Merge pull request #748 from nextcloud/vue-rewrite
Major rewrite of the UI with Vue JS.
Thanks to
@JonathanTreffler 
@jancborchardt 
@devlinjunker 

And all others that made this possible
2023-10-24 11:28:05 +02:00
Benjamin Brahmer
02c9fff469 Merge pull request #2385 from devlinjunker/master-merge
[Vue Rewrite] Upmerge Branch from Master to clean up Merge Conflicts
2023-10-24 10:19:11 +02:00
Devlin Junker
3e35d781cf Merge remote-tracking branch 'nextcloud/master' into master-merge
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-22 14:03:52 -07:00
Devlin Junker
94f04d4a20 cleanup old cron stuff and make cron-warning.js part of build so it can be committed
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-19 08:26:39 +02:00
Devlin Junker
9cab23574f fix bug using php template for warning message
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-19 08:26:39 +02:00
Devlin Junker
ab4f941028 start documentation rewrite
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-19 08:26:39 +02:00
IgorA100
d423ca520c Update CHANGELOG.md
- Set User Agent for curl in Scraper

Signed-off-by: IgorA100 <igora100@gmail.com>
2023-10-19 08:26:14 +02:00
IgorA100
ce8888443c Update Scraper.php
Use FetcherConfig::DEFAULT_USER_AGENT for Curl

Signed-off-by: IgorA100 <igora100@gmail.com>
2023-10-19 08:26:14 +02:00
IgorA100
982ff16a2e Fix: Set CURLOPT_USERAGENT
Some sites do not serve content without a User Agent
Set CURLOPT_USERAGENT= Google Chrome

Signed-off-by: IgorA100 <igora100@gmail.com>
2023-10-19 08:26:14 +02:00
dependabot[bot]
1583ed2292 Build(deps-dev): Bump phpstan/phpstan from 1.10.38 to 1.10.39
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.38 to 1.10.39.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.38...1.10.39)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-19 08:25:47 +02:00
dependabot[bot]
862a9a672e Build(deps-dev): Bump @babel/traverse from 7.21.2 to 7.23.2
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-19 08:25:02 +02:00
dependabot[bot]
756f1cbb6c Build(deps-dev): Bump @babel/traverse from 7.18.5 to 7.23.2 in /js
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.18.5 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-18 08:04:37 +02:00
Nextcloud bot
34e7e938a3 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-18 01:41:19 +00:00
devlinjunker
0a2ecc2d79 Merge pull request #2371 from devlinjunker/mobile-friendly-styles
[Vue Rewrite] Basic Mobile accessible interface
2023-10-16 12:54:16 -07:00
dependabot[bot]
953731604e Build(deps-dev): Bump doctrine/dbal from 3.7.0 to 3.7.1
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.7.0...3.7.1)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-12 08:55:33 +02:00
dependabot[bot]
02eee39b5d Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.14 to 1.3.15
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.14 to 1.3.15.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.14...1.3.15)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-11 18:42:59 +02:00
Devlin Junker
30e4e9b442 copy files from explore.scss file
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-11 18:41:33 +02:00
Devlin Junker
ed62d3eb3d cleaning up explore page
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-11 18:41:33 +02:00
Benjamin Brahmer
816239c198 Log more useful things when checking a logo
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-10-11 18:40:38 +02:00
Devlin Junker
dff06a4225 Merge branch 'vue-rewrite' into mobile-friendly-styles
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-10 13:46:40 -07:00
Devlin Junker
f576eb4e54 fix flex properties to avoid media queries
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-10 13:44:30 -07:00
dependabot[bot]
be0929092b Build(deps-dev): Bump phpstan/phpstan from 1.10.37 to 1.10.38
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.37 to 1.10.38.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.37...1.10.38)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-10 11:05:55 +02:00
Devlin Junker
60f319fe8a make ActionParams generic to make it clear what is available in each vuex file
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-06 08:18:41 +02:00
Devlin Junker
991facf2ee tests and some cleanup
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-06 08:18:41 +02:00
Devlin Junker
498c001bd3 cleanup
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-06 08:18:41 +02:00
Devlin Junker
00d1d65ea4 display vue errors and axios errors in top right popover
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-06 08:18:41 +02:00
Devlin Junker
e737236095 smaller date font size
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-05 11:56:21 -07:00
Devlin Junker
2309c80436 remove unecessary class
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-05 11:43:52 -07:00
Devlin Junker
2ed0df3f92 add box-shadow and other cleanups
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-05 11:42:42 -07:00
Devlin Junker
06e373bb49 start on mobile view
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-05 08:02:27 -07:00
dependabot[bot]
1f00ccd1ee Build(deps-dev): Bump phpstan/phpstan from 1.10.35 to 1.10.37
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.35 to 1.10.37.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.35...1.10.37)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-05 09:47:42 +02:00
Devlin Junker
b6a4293539 add unit tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-05 09:46:36 +02:00
Devlin Junker
ed69499a16 tested with audio and video feeds
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-05 09:46:36 +02:00
devlinjunker
bcb3dcb36b Merge pull request #2361 from devlinjunker/share-item
[Vue Rewrite] Share Article Component
2023-10-04 11:31:11 -07:00
Devlin Junker
883b7b5368 fix length of line
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-02 19:37:54 -07:00
Nextcloud bot
934f78c01b Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-03 01:14:36 +00:00
devlinjunker
0aa4b10390 Merge branch 'vue-rewrite' into share-item
Signed-off-by: devlinjunker <devlin.junker@gmail.com>
2023-10-01 10:44:34 -07:00
Devlin Junker
e6f5edbb0c fix whitespace
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-01 10:28:29 +02:00
Devlin Junker
2c7ffa881d fix tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-01 10:28:29 +02:00
Devlin Junker
e16ab4a364 add warning message generated with PHP, also check for subcribe_to parameter
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-10-01 10:28:29 +02:00
Nextcloud bot
5bf91ea8e3 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-10-01 01:19:29 +00:00
Benjamin Brahmer
4648cd7f1d update php setup action
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-09-29 12:33:50 +02:00
Benjamin Brahmer
d56d4b4d4e Release 24.0.0
No major changes compared to 24.0.0-beta1.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-09-28 08:39:52 +02:00
dependabot[bot]
66c8ccc7ad Build(deps-dev): Bump doctrine/dbal from 3.6.7 to 3.7.0
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.7 to 3.7.0.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.7...3.7.0)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-27 15:57:23 +02:00
Devlin Junker
ba9d512239 tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-26 15:54:33 -07:00
Devlin Junker
74eb3150e2 use translation method params for relative timestamp
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-26 15:08:48 -07:00
Devlin Junker
816ef83bd0 reuse ShareItem component in FeedItemDisplay
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-26 14:55:32 -07:00
Devlin Junker
b7179b5858 working share component
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-26 14:42:50 -07:00
dependabot[bot]
f392db0a00 Build(deps-dev): Bump doctrine/dbal from 3.6.6 to 3.6.7
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.6 to 3.6.7.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.6...3.6.7)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-26 11:17:08 +02:00
Nextcloud bot
752c4d130d Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-09-21 01:17:30 +00:00
dependabot[bot]
2c5353d79c Build(deps-dev): Bump phpunit/phpunit from 9.6.11 to 9.6.13
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.11 to 9.6.13.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.13/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.11...9.6.13)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-20 17:47:26 +02:00
Devlin Junker
2ebd898a1b ignore vue files for stylelint (probably need to remove old css files soon)
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
a2ad3df5d1 add all icons
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
84e891bef7 finish unit tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
6aa282d2af store tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
b234f33441 start on tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
eb9dd0a6ae confirm mark all read and feed counter inside folder
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
4f5004ec0e all sidebar actions working
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
ac33e7c13c remaining feed actions
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
4b24d05ec2 3 more feed actions
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
9d629b943a adding pinned feeds
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
Devlin Junker
fe034782f7 start hooking up actions to backend
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-20 17:32:33 +02:00
dependabot[bot]
1b4aea433b Build(deps-dev): Bump phpstan/phpstan from 1.10.33 to 1.10.35
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.33 to 1.10.35.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.33...1.10.35)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-20 17:27:53 +02:00
Devlin Junker
dce0701f73 add unit tests and little more cleanup of uncessary lines
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-15 06:57:42 +02:00
Devlin Junker
7e21dc8edc cleanup sidebar and translations
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-15 06:57:42 +02:00
Devlin Junker
5caefbadc6 add routes for folder items and all items
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-15 06:57:42 +02:00
dependabot[bot]
a17749bbd4 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.42 to 1.3.43
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.42 to 1.3.43.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.42...1.3.43)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-06 13:06:57 +02:00
dependabot[bot]
5fde4cc07c Build(deps): Bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-06 13:05:32 +02:00
Devlin Junker
e2e8ae517a move backend call details to services
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-03 12:05:24 +02:00
Devlin Junker
6111aca4af add comments and remove start parameter
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-03 12:05:24 +02:00
Devlin Junker
a3077f1b97 fix loading bug and move to feed-display directory
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-09-03 12:05:24 +02:00
dependabot[bot]
295ff6b85f Build(deps-dev): Bump jquery from 3.7.0 to 3.7.1 in /js
Bumps [jquery](https://github.com/jquery/jquery) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.7.0...3.7.1)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-29 20:12:21 +02:00
Devlin Junker
83f99debaa basic unit tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-28 07:03:07 +02:00
Devlin Junker
bb154d0a49 add Feed component and filtering in FeedItemDisplayList
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-28 07:03:07 +02:00
Benjamin Brahmer
65978ce09f Release 24.0.0-beta1
Changed

- Drop support for Nextcloud 25, Supported: 26, 27 (#2316)
- Add a new command for occ `./occ news:updater:job` allows to check and reset the update job (#2166)
- Check for available http(s) compression options and use them (gzip, deflate, brotli) (#2328)
- Change and unify [cache](https://nextcloud.github.io/news/install/#cache) to use the instance ID of Nextcloud (#2331)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-27 21:07:58 +02:00
dependabot[bot]
75e5be3d5e Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.13 to 1.3.14
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.13 to 1.3.14.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.13...1.3.14)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-26 21:15:27 +02:00
dependabot[bot]
ecd141fe5c Build(deps-dev): Bump jasmine-core from 5.1.0 to 5.1.1 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 5.1.0 to 5.1.1.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v5.1.0...v5.1.1)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-26 21:15:08 +02:00
Benjamin Brahmer
da83f9a9b3 use unique name for cache folder
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-26 10:52:58 +02:00
Devlin Junker
d4d20e91e5 Add more unit tests and all passing
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-26 07:48:18 +02:00
Devlin Junker
8183510385 More cleanup and started on unit tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-26 07:48:18 +02:00
Devlin Junker
3f34e3da33 css tweaks
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-26 07:48:18 +02:00
Devlin Junker
26488e8161 Add FeedItemDisplayList component
- Reused by Starred and Unread route components

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-26 07:48:18 +02:00
Devlin Junker
fd72a202b5 add logic to fetch more starred
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-26 07:48:18 +02:00
Devlin Junker
726c157873 cleanup and rename FeedItemRow component
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-26 07:48:18 +02:00
Devlin Junker
9272190bc0 add unread route and component
- started on unread component and using load-more callback from VirtualScroll component
- realized we need to change to a 3-panel display because VirtualScroll removes the rendered component even when open if you scroll too much
- created FeedItemDisplay component to display a selected feed item details

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-26 07:48:18 +02:00
Benjamin Brahmer
b99320dd4a Check available compression types of curl (#2328)
Check an use available compression types of curl
use compression when downloading feed logo

Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-25 09:37:29 +02:00
dependabot[bot]
caf3001773 Build(deps-dev): Bump phpstan/phpstan from 1.10.29 to 1.10.30
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.29 to 1.10.30.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.29...1.10.30)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-23 18:26:49 +02:00
Benjamin Brahmer
17f0fc7f4a Add a command to check the job status and reset it
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-22 09:47:11 +02:00
Benjamin Brahmer
ca9e07b3ba drop support for Nextcloud 25
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-22 09:14:32 +02:00
dependabot[bot]
eb9ec5d334 Build(deps-dev): Bump phpunit/phpunit from 9.6.10 to 9.6.11
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.10 to 9.6.11.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.11/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.10...9.6.11)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-22 08:35:31 +02:00
Devlin Junker
efb1ac236e basic unit tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
0bfb6162c7 cleanup unused stuff
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
4fa0a875d8 connect actions to backend
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
99a08b3c37 start on user actions and some more cleanup
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
d14dbe3fb1 match style from current app
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
41213ad486 css effects
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
05e2e73dbb some cleanup and improvements
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
6693681bba basic starred items list with VirtualScroll component
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
Devlin Junker
0dd27dd915 started on fetching starred items from backend and displaying with for loop
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-22 08:34:39 +02:00
dependabot[bot]
c8e6c06a94 Build(deps-dev): Bump phpstan/phpstan from 1.10.28 to 1.10.29
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.28 to 1.10.29.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.28...1.10.29)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-18 10:35:53 +02:00
dependabot[bot]
4e8bbc0157 Build(deps-dev): Bump doctrine/dbal from 3.6.5 to 3.6.6
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.5 to 3.6.6.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.5...3.6.6)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-18 10:05:22 +02:00
Benjamin Brahmer
ac336174de Fix link to not existing faq
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-16 17:23:56 +02:00
Benjamin Brahmer
0c7b9112f4 Release 23.0.0
Changed
- Drop support for PHP 7.4 new min. version is php 8.0 (#2237)
- Upgrade feed-io to v5.1.3 (#2238)

Fixed
- Some feeds missing items (#2236)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-16 14:45:24 +02:00
Nextcloud bot
4bc5598858 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-08-12 01:16:24 +00:00
Devlin Junker
9c79d64885 fix php unit test
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
e559cb35d4 fix linting errors
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
790701a82a fix wrong property
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
3f1fb5b1d6 fix add + create folder
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
2287835894 use eslint --fix to clean up linting errors
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
da782c0b07 fix indentation
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
770720aedb clean up comments
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
8fe0bb2166 fix indentation
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
9377e89a2e finished unit tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
0b4232ca24 fix formatting
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
9b11141405 clean up
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
67d687c3b2 cleanup of angular directives
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Devlin Junker
10c891776c add feed pretty much works
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-11 09:22:24 +02:00
Benjamin Brahmer
449b2141f5 update menu for docs
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-10 16:02:21 +02:00
Benjamin Brahmer
5e78412a54 remove plugins, old and not active anymore
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-10 16:02:21 +02:00
Nextcloud bot
0be0c47641 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-08-10 01:14:55 +00:00
Benjamin Brahmer
b51298ea7e fix codecoverage never executed
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-09 16:03:37 +02:00
Benjamin Brahmer
2180c17f38 Release 23.0.0-beta1
Changed
- Drop support for PHP 7.4 new min. version is php 8.0 (#2237)
- Upgrade feed-io to v5.1.3 (#2238)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-09 15:22:53 +02:00
dependabot[bot]
c2d2d7f0d9 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.41 to 1.3.42
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.41 to 1.3.42.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.41...1.3.42)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 11:47:43 +02:00
dependabot[bot]
9a8e09d80a Build(deps): Bump svenstaro/upload-release-action from 2.6.1 to 2.7.0
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.6.1 to 2.7.0.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](2b9d2847a9...1beeb572c1)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 11:41:21 +02:00
dependabot[bot]
8c9f4f9514 Build(deps-dev): Bump phpstan/phpstan from 1.10.27 to 1.10.28
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.27 to 1.10.28.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.27...1.10.28)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 11:40:59 +02:00
dependabot[bot]
f158cdbb12 Build(deps-dev): Bump jasmine-core from 5.0.1 to 5.1.0 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 11:40:25 +02:00
Devlin Junker
9a047cbbcd minimum nextcloud version supported is 27
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-09 11:08:04 +02:00
Devlin Junker
b9a5887897 resolve build issues
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-09 11:08:04 +02:00
Devlin Junker
eeb06381c9 fix unit test and linting errors
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-09 11:08:04 +02:00
Devlin Junker
923f986e67 upmerged from master
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2023-08-09 11:08:04 +02:00
Benjamin Brahmer
0d061efe64 add Test for old items
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-09 10:58:45 +02:00
Benjamin Brahmer
ca6cedeb28 Upgrade feed-io to v5.1.3
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-09 10:58:45 +02:00
Nextcloud bot
d1dc011abe Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-08-09 01:39:09 +00:00
Benjamin Brahmer
de0db5dc0f Drop support for PHP 7.4 new min. version is php 8.0
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-08-08 10:10:51 +02:00
Nextcloud bot
2718b7db9f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-08-07 01:19:13 +00:00
Nextcloud bot
ce5e74af44 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-08-04 01:18:59 +00:00
Nextcloud bot
e612e6be9d Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-08-03 01:17:07 +00:00
dependabot[bot]
cbb7d0a5c0 Build(deps-dev): Bump doctrine/dbal from 3.6.4 to 3.6.5
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.4 to 3.6.5.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.4...3.6.5)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-01 07:25:09 +02:00
Benjamin Brahmer
499511e1a7 Release 22.0.0
Changed
- Support deflate and gzip compression for HTTP response bodies (#2269)
- Broke apart old FAQ into different guides. Deprecated old FAQ (#2285)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-07-23 15:12:26 +02:00
hydrian
65b80c50a2 Updating changelog for #2285 2023-07-23 14:39:52 +02:00
hydrian
682dd49753 moved integration guide to docs/features dir and fixed reference 2023-07-23 14:39:52 +02:00
hydrian
634e43caf1 removed per #2268 requests 2023-07-23 14:39:52 +02:00
hydrian
825eeafea1 Added refences in readme. Fixed guide filename 2023-07-23 14:39:52 +02:00
hydrian
588dadedf0 Added guides 2023-07-23 14:39:52 +02:00
Jimmy Boucher
d25dc3c4ca install.md minor grammar changes
-fix "then" vs "than"
-standardize capitalization of "News"

Signed-off-by: Jimmy Boucher <75694650+jboucher614@users.noreply.github.com>
2023-07-23 14:38:43 +02:00
dependabot[bot]
a609b43a61 Build(deps-dev): Bump word-wrap from 1.2.3 to 1.2.4
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-23 14:38:18 +02:00
dependabot[bot]
7b0781c285 Build(deps-dev): Bump phpstan/phpstan from 1.10.25 to 1.10.26
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.25 to 1.10.26.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.25...1.10.26)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-23 14:35:16 +02:00
Nextcloud bot
411497e099 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-20 01:12:53 +00:00
Nextcloud bot
c63a39d035 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-19 01:13:36 +00:00
Nextcloud bot
166b31a29c Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-18 01:10:58 +00:00
Nextcloud bot
40b461292a Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-15 01:13:20 +00:00
Nextcloud bot
66e3bd9152 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-13 01:17:05 +00:00
Benjamin Brahmer
32a1819bdc remove matcher
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-07-12 12:39:10 +02:00
dependabot[bot]
785efbac2b Build(deps-dev): Bump phpunit/phpunit from 9.6.9 to 9.6.10
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.9 to 9.6.10.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.10/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.9...9.6.10)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-12 12:39:10 +02:00
Nextcloud bot
4c18b2f077 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-12 01:08:17 +00:00
Nextcloud bot
0f3af16a01 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-11 01:19:05 +00:00
dependabot[bot]
7c094c7a02 Build(deps-dev): Bump doctrine/dbal from 3.6.3 to 3.6.4
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.3 to 3.6.4.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.3...3.6.4)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-09 14:28:16 +02:00
dependabot[bot]
751510a7a7 Build(deps-dev): Bump karma-coverage from 2.2.0 to 2.2.1 in /js
Bumps [karma-coverage](https://github.com/karma-runner/karma-coverage) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/karma-runner/karma-coverage/releases)
- [Changelog](https://github.com/karma-runner/karma-coverage/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-coverage/compare/v2.2.0...v2.2.1)

---
updated-dependencies:
- dependency-name: karma-coverage
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-08 21:18:17 +02:00
dependabot[bot]
83bcfb923c Build(deps-dev): Bump phpstan/phpstan from 1.10.19 to 1.10.25
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.19 to 1.10.25.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.19...1.10.25)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-08 21:17:55 +02:00
dependabot[bot]
4679164177 Build(deps-dev): Bump minimatch from 9.0.1 to 9.0.3 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 9.0.1 to 9.0.3.
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v9.0.1...v9.0.3)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-08 13:51:58 +02:00
dependabot[bot]
9c4e68030f Build(deps): Bump fast-xml-parser from 4.2.4 to 4.2.5
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 4.2.4 to 4.2.5.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v4.2.4...v4.2.5)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-08 13:50:08 +02:00
Nextcloud bot
7d51803d2d Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-06 01:16:14 +00:00
Nextcloud bot
dcb35da6a6 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-07-01 01:12:30 +00:00
Nextcloud bot
1588ed70e3 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-28 01:17:50 +00:00
Nextcloud bot
1c82467989 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-26 01:18:23 +00:00
Nextcloud bot
7a730ffaa5 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-24 01:12:20 +00:00
Mynacol
48e1ad1583 Use HTTP compression for downloads
As long as we use Feed-io < 6, we always use Guzzle (with Feed-io 6, we
need to choose a [HTTPlug](https://httplug.io/) library ourselves). Guzzle
[supports](https://docs.guzzlephp.org/en/stable/request-options.html#decode-content)
transparently decompressing gzip or deflate compressed responses, which is enabled by default.

Feed-io does this [by default](ffef9eaabe),
but as we override the headers, we have to add a fitting `Accept-Encoding` header as well.

Previously, my feed collection caused up to 45.9 MB download traffic per cronjob,
with this commit it is as low as 23.6 MB.

Signed-off-by: Mynacol <Mynacol@users.noreply.github.com>
2023-06-22 11:31:42 +02:00
Nextcloud bot
6410e4f272 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-22 01:17:18 +00:00
Nextcloud bot
ef19212172 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-20 01:09:44 +00:00
Benjamin Brahmer
1335d9ade5 22.0.0-beta2
Changed
-  allowEvalScript set to true (#2262)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-06-19 20:09:25 +02:00
Benjamin Brahmer
9b29d84b47 allowEvalScript set to true
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-06-18 14:41:15 +02:00
dependabot[bot]
45cbfad267 Build(deps): Bump fivefilters/readability.php from 3.1.5 to 3.1.6
Bumps [fivefilters/readability.php](https://github.com/fivefilters/readability.php) from 3.1.5 to 3.1.6.
- [Release notes](https://github.com/fivefilters/readability.php/releases)
- [Changelog](https://github.com/fivefilters/readability.php/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fivefilters/readability.php/compare/v3.1.5...v3.1.6)

---
updated-dependencies:
- dependency-name: fivefilters/readability.php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-18 14:40:01 +02:00
dependabot[bot]
a9f7f495f3 Build(deps-dev): Bump phpstan/phpstan from 1.10.18 to 1.10.19
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.18 to 1.10.19.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.18...1.10.19)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-18 14:39:32 +02:00
dependabot[bot]
2529fa354f Build(deps-dev): Bump phpunit/phpunit from 9.6.8 to 9.6.9
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.8 to 9.6.9.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.9/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.8...9.6.9)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-18 14:39:09 +02:00
dependabot[bot]
e7add6cedb Build(deps-dev): Bump jasmine-core from 5.0.0 to 5.0.1 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-18 14:38:52 +02:00
Nextcloud bot
57c31bbd0f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-17 01:03:42 +00:00
Nextcloud bot
d2b7eabded Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-16 01:03:52 +00:00
Nextcloud bot
ca93963332 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-13 01:03:58 +00:00
Nextcloud bot
db73b3636f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-12 01:02:46 +00:00
Nextcloud bot
d13746d67e Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-11 01:23:49 +00:00
dependabot[bot]
de0aba3068 Build(deps): Bump svenstaro/upload-release-action from 2.6.0 to 2.6.1
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.6.0 to 2.6.1.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](58d5258088...2b9d2847a9)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-09 10:16:35 +02:00
dependabot[bot]
c0f82b94a4 Build(deps): Bump skjnldsv/read-package-engines-version-actions
Bumps [skjnldsv/read-package-engines-version-actions](https://github.com/skjnldsv/read-package-engines-version-actions) from 2.1 to 2.2.
- [Release notes](https://github.com/skjnldsv/read-package-engines-version-actions/releases)
- [Commits](https://github.com/skjnldsv/read-package-engines-version-actions/compare/v2.1...v2.2)

---
updated-dependencies:
- dependency-name: skjnldsv/read-package-engines-version-actions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-09 10:15:56 +02:00
dependabot[bot]
7696f04ddc Build(deps-dev): Bump doctrine/dbal from 3.6.2 to 3.6.3
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.2 to 3.6.3.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.2...3.6.3)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-09 10:15:01 +02:00
dependabot[bot]
a122d874b2 Build(deps): Bump fast-xml-parser from 4.1.3 to 4.2.4
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 4.1.3 to 4.2.4.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/commits)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-09 10:13:16 +02:00
dependabot[bot]
dd28d32f86 Build(deps-dev): Bump phpstan/phpstan from 1.10.15 to 1.10.18
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.15 to 1.10.18.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.15...1.10.18)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-09 10:12:42 +02:00
Nextcloud bot
539cd26d13 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-06-08 01:04:12 +00:00
dependabot[bot]
6af9aa1d87 Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.12 to 1.3.13
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.12 to 1.3.13.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.12...1.3.13)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-29 23:12:24 +02:00
dependabot[bot]
be1f6f3e1a Build(deps-dev): Bump phpstan/extension-installer from 1.3.0 to 1.3.1
Bumps [phpstan/extension-installer](https://github.com/phpstan/extension-installer) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/phpstan/extension-installer/releases)
- [Commits](https://github.com/phpstan/extension-installer/compare/1.3.0...1.3.1)

---
updated-dependencies:
- dependency-name: phpstan/extension-installer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-25 11:52:19 +02:00
dependabot[bot]
64f7612df1 Build(deps): Bump socket.io-parser from 4.2.2 to 4.2.3 in /js
Bumps [socket.io-parser](https://github.com/socketio/socket.io-parser) from 4.2.2 to 4.2.3.
- [Release notes](https://github.com/socketio/socket.io-parser/releases)
- [Changelog](https://github.com/socketio/socket.io-parser/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io-parser/compare/4.2.2...4.2.3)

---
updated-dependencies:
- dependency-name: socket.io-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-25 11:51:11 +02:00
dependabot[bot]
0d16ae7cb2 Build(deps): Bump svenstaro/upload-release-action from 2.5.0 to 2.6.0
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](7319e4733e...58d5258088)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-25 11:50:58 +02:00
dependabot[bot]
f22dddd4bb Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.11 to 1.3.12
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.11 to 1.3.12.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.11...1.3.12)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-23 15:48:47 +02:00
dependabot[bot]
c1c16be6c6 Build(deps-dev): Bump minimatch from 9.0.0 to 9.0.1 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 9.0.0 to 9.0.1.
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v9.0.0...v9.0.1)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-22 23:52:22 +02:00
Nextcloud bot
892aa42726 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-05-21 01:00:05 +00:00
Benjamin Brahmer
a97cde9fee add testing on stable27
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-05-18 12:59:01 +02:00
Benjamin Brahmer
2b4a680a63 Release 22.0.0-beta1
Changed
- Drop support for Nextcloud 24
- Add support for Nextcloud 27

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-05-18 10:56:09 +02:00
Benjamin Brahmer
b3c17e2edb Drop support for NC 24 add support for NC 27
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-05-18 08:43:05 +02:00
dependabot[bot]
a69d3dda79 Build(deps-dev): Bump jasmine-core from 4.6.0 to 5.0.0 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.6.0 to 5.0.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.6.0...v5.0.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-17 18:11:19 +02:00
Nextcloud bot
8c32620361 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-05-16 03:12:07 +00:00
dependabot[bot]
73feeb94c9 Build(deps-dev): Bump jquery from 3.6.4 to 3.7.0 in /js (#2233)
Bumps [jquery](https://github.com/jquery/jquery) from 3.6.4 to 3.7.0.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.6.4...3.7.0)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-13 18:19:57 +02:00
Nextcloud bot
7164a9c999 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-05-12 03:15:05 +00:00
dependabot[bot]
c637de4f5b Build(deps-dev): Bump phpunit/phpunit from 9.6.7 to 9.6.8 (#2231)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.7 to 9.6.8.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.8/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.7...9.6.8)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-11 16:49:49 +00:00
dependabot[bot]
ae8450464a Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.38 to 1.3.40 (#2232)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.38 to 1.3.40.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.38...1.3.40)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-11 14:25:19 +00:00
dependabot[bot]
b9877f4200 Build(deps-dev): Bump phpstan/phpstan from 1.10.14 to 1.10.15 (#2230)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.14 to 1.10.15.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.14...1.10.15)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-11 09:17:29 +02:00
Nextcloud bot
00fcedbae4 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-05-10 03:17:13 +00:00
Benjamin Brahmer
144d6d188e Release 21.2.0
Changed
- Improve visibility of links in dark theme (#2215)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-05-07 10:32:47 +02:00
Benjamin Brahmer
c21de9099b add more sleep commands
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-05-06 12:47:50 +02:00
dependabot[bot]
36f22036ab Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.37 to 1.3.38
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.37 to 1.3.38.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.37...1.3.38)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-04 19:34:43 +02:00
dependabot[bot]
294b8b352c Build(deps-dev): Bump karma from 6.4.1 to 6.4.2 in /js
Bumps [karma](https://github.com/karma-runner/karma) from 6.4.1 to 6.4.2.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.4.1...v6.4.2)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-04 19:34:08 +02:00
dependabot[bot]
aeedfd0bda Build(deps): Bump engine.io and socket.io in /js (#2220)
Bumps [engine.io](https://github.com/socketio/engine.io) and [socket.io](https://github.com/socketio/socket.io). These dependencies needed to be updated together.

Updates `engine.io` from 6.2.1 to 6.4.2
- [Release notes](https://github.com/socketio/engine.io/releases)
- [Changelog](https://github.com/socketio/engine.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/engine.io/compare/6.2.1...6.4.2)

Updates `socket.io` from 4.5.1 to 4.6.1
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/4.5.1...4.6.1)

---
updated-dependencies:
- dependency-name: engine.io
  dependency-type: indirect
- dependency-name: socket.io
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 09:04:09 +02:00
Nextcloud bot
d6a99e270a Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-04-27 03:09:45 +00:00
7338574821 Improve visibility of links in dark theme (#2215)
Signed-off-by: chylex <contact@chylex.com>
2023-04-26 15:41:10 +02:00
Benjamin Brahmer
1fc1e51c6d Release 21.2.0-beta4
Fixed
- Fix audio player floating when scrolling in NC25+ (#2142)
- Fix sorting of folder names in select when adding subscription (#2090)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-04-23 11:44:54 +02:00
dependabot[bot]
fbf079ac01 Build(deps-dev): Bump karma-chrome-launcher from 3.1.1 to 3.2.0 in /js
Bumps [karma-chrome-launcher](https://github.com/karma-runner/karma-chrome-launcher) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/karma-runner/karma-chrome-launcher/releases)
- [Changelog](https://github.com/karma-runner/karma-chrome-launcher/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-chrome-launcher/compare/v3.1.1...v3.2.0)

---
updated-dependencies:
- dependency-name: karma-chrome-launcher
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-23 11:44:35 +02:00
dependabot[bot]
db856ab2f2 Build(deps-dev): Bump phpstan/phpstan from 1.10.13 to 1.10.14 (#2210)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.13 to 1.10.14.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.13...1.10.14)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-20 13:44:02 +00:00
dependabot[bot]
8a5426c4d7 Build(deps-dev): Bump phpstan/extension-installer from 1.2.0 to 1.3.0 (#2208)
Bumps [phpstan/extension-installer](https://github.com/phpstan/extension-installer) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/phpstan/extension-installer/releases)
- [Commits](https://github.com/phpstan/extension-installer/compare/1.2.0...1.3.0)

---
updated-dependencies:
- dependency-name: phpstan/extension-installer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-19 16:47:25 +02:00
Manuel Sailer
02b517bf85 Fix audio player floating when scrolling (#2142) (#2206)
Signed-off-by: ManuelSailer <github.com@manuel-sailer.de>
Signed-off-by: Manuel Sailer <github.com@manuel-sailer.de>
2023-04-18 12:15:57 +02:00
ManuelSailer
6691d45c56 Added Changelog entry
Signed-off-by: ManuelSailer <github.com@manuel-sailer.de>
2023-04-17 14:27:44 +02:00
ManuelSailer
bdae594403 Sort select options by name (ignore case)
Signed-off-by: ManuelSailer <github.com@manuel-sailer.de>
2023-04-17 14:27:44 +02:00
Manuel Sailer
14b6c2d55f Ignore Visual Studio Code settings (#2204) 2023-04-17 09:20:35 +00:00
Benjamin Brahmer
fae1654458 Release 21.2.0-beta3
Changed
- Improve performance of item updates (#1322)

Fixed
- Fix display issue in NC26+ (#2192)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-04-16 19:15:42 +02:00
Daniel Starzmann
2d4cb5ed1c Improve sql query performance by removing unused payload
Signed-off-by: Daniel Starzmann <daniel@starze.de>
2023-04-16 11:13:30 +02:00
dependabot[bot]
51d026a46a Build(deps-dev): Bump minimatch from 8.0.3 to 9.0.0 in /js (#2191)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 8.0.3 to 9.0.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v8.0.3...v9.0.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-16 08:57:14 +00:00
dependabot[bot]
ef85fa6572 Build(deps-dev): Bump doctrine/dbal from 3.6.1 to 3.6.2
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.1 to 3.6.2.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.1...3.6.2)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-16 10:51:06 +02:00
dependabot[bot]
3111f232df Build(deps-dev): Bump phpunit/phpunit from 9.6.6 to 9.6.7
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.6 to 9.6.7.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.7/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.6...9.6.7)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-16 10:45:59 +02:00
ManuelSailer
bf0ffd7921 Fix display issue in NC26+ (#2192)
Signed-off-by: ManuelSailer <github.com@manuel-sailer.de>
2023-04-16 10:40:11 +02:00
dependabot[bot]
4a1d94ace0 Build(deps-dev): Bump phpstan/phpstan from 1.10.10 to 1.10.13
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.10 to 1.10.13.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.10...1.10.13)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-16 10:26:01 +02:00
Benjamin Brahmer
934b307458 add sleep command
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-04-16 10:18:04 +02:00
Benjamin Brahmer
ee4097e8b8 Also adjust dates on other test feeds
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-04-16 10:18:04 +02:00
Benjamin Brahmer
4d6d602c4e Change dates to far future and leave comment
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-04-16 10:18:04 +02:00
Nextcloud bot
3d08168392 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-04-16 03:07:41 +00:00
dependabot[bot]
bc2f40224f Build(deps): Bump fivefilters/readability.php from 3.1.4 to 3.1.5 (#2189)
Bumps [fivefilters/readability.php](https://github.com/fivefilters/readability.php) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/fivefilters/readability.php/releases)
- [Changelog](https://github.com/fivefilters/readability.php/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fivefilters/readability.php/compare/v3.1.4...v3.1.5)

---
updated-dependencies:
- dependency-name: fivefilters/readability.php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 11:52:56 +02:00
Benjamin Brahmer
f4ebebeb5d Release 21.2.0-beta2
Fixed
- Fix last_modified not updated when all items are marked as read (#2183)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-04-06 10:32:34 +02:00
Nextcloud bot
7c7f4cff70 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-04-06 03:10:04 +00:00
Benjamin Brahmer
a70d155ce4 Set lastmodified in read all
if this is not updated the API won't work correctly and we get sync errors.
Adjust test to use item api

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-04-05 19:43:02 +02:00
dependabot[bot]
f79b6c4751 Build(deps-dev): Bump minimatch from 8.0.2 to 8.0.3 in /js (#2184)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 8.0.2 to 8.0.3.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v8.0.2...v8.0.3)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-04 16:50:34 +02:00
dependabot[bot]
97487a75ee Build(deps-dev): Bump phpstan/phpstan from 1.10.9 to 1.10.10 (#2182)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.9 to 1.10.10.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.9...1.10.10)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-03 15:11:31 +00:00
dependabot[bot]
487e209aae Build(deps-dev): Bump minimatch from 7.4.3 to 8.0.2 in /js (#2181)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.4.3 to 8.0.2.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.4.3...v8.0.2)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-03 14:51:35 +00:00
dependabot[bot]
b1ce9cb214 Build(deps-dev): Bump phpunit/phpunit from 9.6.5 to 9.6.6 (#2176)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.5 to 9.6.6.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.5...9.6.6)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-31 10:55:07 +02:00
dependabot[bot]
041e1be321 Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.10 to 1.3.11 (#2177)
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.10 to 1.3.11.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.10...1.3.11)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-31 10:24:36 +02:00
Nextcloud bot
e2d1628e6f Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-31 03:08:23 +00:00
dependabot[bot]
063650d50f Build(deps-dev): Bump phpstan/phpstan-strict-rules from 1.5.0 to 1.5.1 (#2179)
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.5.0 to 1.5.1.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.5.0...1.5.1)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-30 15:38:16 +00:00
dependabot[bot]
3370cf673c Build(deps-dev): Bump phpstan/phpstan from 1.10.8 to 1.10.9 (#2178)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.8 to 1.10.9.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.8...1.10.9)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-30 14:12:03 +00:00
Nextcloud bot
1a35d0e104 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-28 02:59:36 +00:00
Benjamin Brahmer
758ea7258b Release 21.2.0-beta1
Changed
- Use httpLastModified field for If-Modified-Since header when fetching feed updates (#2119)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-24 18:59:00 +01:00
Benjamin Brahmer
84c2ba538c Create tests for the updating and purging functions via the API
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-24 18:57:53 +01:00
dependabot[bot]
41325e4031 Build(deps-dev): Bump phpstan/phpstan from 1.10.7 to 1.10.8
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.7 to 1.10.8.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.7...1.10.8)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-24 18:57:18 +01:00
dependabot[bot]
b3ee1b148e Build(deps-dev): Bump minimatch from 7.4.2 to 7.4.3 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.4.2 to 7.4.3.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.4.2...v7.4.3)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-23 15:51:20 +01:00
Benjamin Brahmer
b1476e958a If timestamp is null use timestamp "one year ago"
if timestamp is not set during creation of a feed use date one year ago
code fixes and linting fixes.

Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-23 12:12:06 +01:00
Robert Wunderer
eeabb4189b Use httpLastModified field for If-Modified-Since header when fetching feed updates
Signed-off-by: Robert Wunderer <robert.wunderer@caprisys.at>
2023-03-23 12:12:06 +01:00
Benjamin Brahmer
be95c17f46 store useragent in one place
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-23 12:11:38 +01:00
dependabot[bot]
a6fa8f9a51 Build(deps): Bump skjnldsv/read-package-engines-version-actions
Bumps [skjnldsv/read-package-engines-version-actions](https://github.com/skjnldsv/read-package-engines-version-actions) from 2.0 to 2.1.
- [Release notes](https://github.com/skjnldsv/read-package-engines-version-actions/releases)
- [Commits](https://github.com/skjnldsv/read-package-engines-version-actions/compare/v2.0...v2.1)

---
updated-dependencies:
- dependency-name: skjnldsv/read-package-engines-version-actions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-22 14:29:41 +01:00
Benjamin Brahmer
ec74c1b5f3 Release 21.1.0
No notable changes compared 21.1.0-beta1

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-21 11:38:55 +01:00
dependabot[bot]
3eba666316 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.36 to 1.3.37
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.36 to 1.3.37.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.36...1.3.37)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-20 14:11:56 +01:00
Nextcloud bot
667e037bce Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-18 03:07:09 +00:00
dependabot[bot]
386294d039 Build(deps-dev): Bump phpstan/phpstan-deprecation-rules (#2160)
Bumps [phpstan/phpstan-deprecation-rules](https://github.com/phpstan/phpstan-deprecation-rules) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/phpstan/phpstan-deprecation-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-deprecation-rules/compare/1.1.2...1.1.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-deprecation-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-17 14:40:13 +01:00
dependabot[bot]
bd07a093c3 Build(deps-dev): Bump phpstan/phpstan from 1.10.6 to 1.10.7 (#2161)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.6 to 1.10.7.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.6...1.10.7)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-17 14:39:55 +01:00
dependabot[bot]
8ecada5b62 Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.35 to 1.3.36 (#2159)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.35 to 1.3.36.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.35...1.3.36)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-16 13:35:25 +00:00
dependabot[bot]
b6b7a87b78 Build(deps-dev): Bump jasmine-core from 4.5.0 to 4.6.0 in /js (#2158)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-16 13:28:05 +00:00
Nextcloud bot
7a4d1d932a Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-16 03:08:40 +00:00
dependabot[bot]
4c9c39c3f0 Build(deps): Bump webpack from 5.75.0 to 5.76.1 (#2157)
Bumps [webpack](https://github.com/webpack/webpack) from 5.75.0 to 5.76.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.75.0...v5.76.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-15 16:31:00 +01:00
Nextcloud bot
1fdc0c13a4 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-15 03:05:59 +00:00
Nextcloud bot
da3c3d278e Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-14 03:07:29 +00:00
Benjamin Brahmer
683ebf37c3 Release 21.1.0-beta1
Changed
- Remove unused background job OCA\News\Cron\Updater (#2137)
- Add info card to the admin settings, showing last job execution (#2141)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-13 16:25:48 +01:00
dependabot[bot]
b470899d5f Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.33 to 1.3.35
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.33 to 1.3.35.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.33...1.3.35)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-13 14:39:47 +01:00
Benjamin Brahmer
ea8002e2d9 add cron status badge to admin setting
Display  a info card in the settings, indicating when the last news update job ran.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-13 14:39:15 +01:00
dependabot[bot]
0d31caac83 Build(deps-dev): Bump phpstan/phpstan from 1.10.5 to 1.10.6
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.5 to 1.10.6.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.5...1.10.6)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-13 10:44:15 +01:00
Nextcloud bot
70462929d1 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-13 03:08:42 +00:00
dependabot[bot]
f12f0e40a8 Build(deps-dev): Bump phpstan/phpstan from 1.10.4 to 1.10.5
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.4 to 1.10.5.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.4...1.10.5)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-10 11:31:38 +01:00
dependabot[bot]
bcdd8c5a40 Build(deps-dev): Bump jquery from 3.6.3 to 3.6.4 in /js
Bumps [jquery](https://github.com/jquery/jquery) from 3.6.3 to 3.6.4.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.6.3...3.6.4)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-09 14:30:19 +01:00
dependabot[bot]
9e5eab3d09 Build(deps-dev): Bump phpunit/phpunit from 9.6.4 to 9.6.5
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.4 to 9.6.5.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.4...9.6.5)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-09 14:29:41 +01:00
dependabot[bot]
60f253f7df Build(deps): Bump fivefilters/readability.php from 3.1.3 to 3.1.4
Bumps [fivefilters/readability.php](https://github.com/fivefilters/readability.php) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/fivefilters/readability.php/releases)
- [Changelog](https://github.com/fivefilters/readability.php/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fivefilters/readability.php/compare/v3.1.3...v3.1.4)

---
updated-dependencies:
- dependency-name: fivefilters/readability.php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-09 14:28:41 +01:00
dependabot[bot]
42ace678c3 Build(deps-dev): Bump phpstan/phpstan from 1.10.3 to 1.10.4
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.3 to 1.10.4.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.3...1.10.4)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-07 14:17:02 +01:00
Benjamin Brahmer
d11f0cafab use stable26
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-06 17:07:19 +01:00
dependabot[bot]
5dbe8688bb Build(deps): Bump fivefilters/readability.php from 3.1.2 to 3.1.3
Bumps [fivefilters/readability.php](https://github.com/fivefilters/readability.php) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/fivefilters/readability.php/releases)
- [Changelog](https://github.com/fivefilters/readability.php/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fivefilters/readability.php/compare/v3.1.2...v3.1.3)

---
updated-dependencies:
- dependency-name: fivefilters/readability.php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-06 14:12:57 +01:00
Nextcloud bot
5fea38acec Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-04 03:09:25 +00:00
dependabot[bot]
dd552fd11c Build(deps-dev): Bump doctrine/dbal from 3.6.0 to 3.6.1 (#2138)
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.6.0 to 3.6.1.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.6.0...3.6.1)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-03 14:58:06 +00:00
Benjamin Brahmer
7cdf3c83e8 fix style
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-02 17:51:53 +01:00
Benjamin Brahmer
8cdcde2e56 adjust docs
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-02 17:51:53 +01:00
Benjamin Brahmer
04fcda9b1a Remove unused job from db
Our background job was renamed quite a while ago
the old job remained in the db, to prevent confusion this adds
a repair step to remove the old job.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-02 17:51:53 +01:00
dependabot[bot]
e6117020c0 Build(deps-dev): Bump minimatch from 7.4.1 to 7.4.2 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.4.1 to 7.4.2.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.4.1...v7.4.2)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-02 16:36:30 +01:00
dependabot[bot]
d809c941e1 Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.9 to 1.3.10
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.9 to 1.3.10.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.9...1.3.10)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-02 16:35:53 +01:00
dependabot[bot]
6964bd0dd9 Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.8 to 1.3.9 (#2134) 2023-03-02 12:09:08 +00:00
dependabot[bot]
cfb8147b49 Build(deps-dev): Bump minimatch from 7.3.0 to 7.4.1 in /js (#2133) 2023-03-02 09:17:44 +01:00
Benjamin Brahmer
adc143e2a5 Release 21.0.0
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-03-01 10:52:02 +01:00
Nextcloud bot
20434449ab Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-01 02:58:24 +00:00
dependabot[bot]
28d22fb2e2 Build(deps-dev): Bump phpunit/phpunit from 9.6.3 to 9.6.4
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.3 to 9.6.4.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.3...9.6.4)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-28 20:34:24 +01:00
dependabot[bot]
218e534f52 Build(deps-dev): Bump minimatch from 7.2.0 to 7.3.0 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.2.0 to 7.3.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.2.0...v7.3.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-28 20:30:53 +01:00
dependabot[bot]
501f2a2be6 Build(deps): Update SMillerDev/nextcloud-actions requirement to main
Updates the requirements on [SMillerDev/nextcloud-actions](https://github.com/SMillerDev/nextcloud-actions) to permit the latest version.
- [Release notes](https://github.com/SMillerDev/nextcloud-actions/releases)
- [Commits](d3d8e8441c)

---
updated-dependencies:
- dependency-name: SMillerDev/nextcloud-actions
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-27 22:47:19 +01:00
dependabot[bot]
02189e6f26 Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.7 to 1.3.8
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.7 to 1.3.8.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.7...1.3.8)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-27 21:31:58 +01:00
dependabot[bot]
2690422243 Build(deps-dev): Bump phpstan/phpstan from 1.10.2 to 1.10.3
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.2 to 1.10.3.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.2...1.10.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-27 16:51:36 +01:00
dependabot[bot]
9e25c893cc Build(deps-dev): Bump minimatch from 7.1.1 to 7.2.0 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.1.1 to 7.2.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.1.1...v7.2.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-27 14:21:09 +01:00
dependabot[bot]
36826c3bc0 Build(deps-dev): Bump phpstan/phpstan from 1.10.1 to 1.10.2 (#2120)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.1 to 1.10.2.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.1...1.10.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-24 14:26:03 +00:00
dependabot[bot]
ddba1370e3 Build(deps-dev): Bump minimatch from 7.1.0 to 7.1.1 in /js (#2121)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.1.0 to 7.1.1.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.1.0...v7.1.1)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-24 14:15:12 +01:00
Nextcloud bot
e0e3617c9e Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-24 02:58:30 +00:00
dependabot[bot]
7f3117f946 Build(deps-dev): Bump minimatch from 7.0.1 to 7.1.0 in /js (#2117)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.0.1 to 7.1.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.0.1...v7.1.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-23 13:31:46 +00:00
dependabot[bot]
66d4e04007 Build(deps-dev): Bump squizlabs/php_codesniffer from 3.7.1 to 3.7.2 (#2116)
Bumps [squizlabs/php_codesniffer](https://github.com/squizlabs/PHP_CodeSniffer) from 3.7.1 to 3.7.2.
- [Release notes](https://github.com/squizlabs/PHP_CodeSniffer/releases)
- [Commits](https://github.com/squizlabs/PHP_CodeSniffer/compare/3.7.1...3.7.2)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-23 14:14:09 +01:00
dependabot[bot]
408d85cc4a Build(deps-dev): Bump phpstan/phpstan-strict-rules from 1.4.5 to 1.5.0 (#2111)
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.4.5 to 1.5.0.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.4.5...1.5.0)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:32:32 +01:00
dependabot[bot]
571cda9ccb Build(deps-dev): Bump phpstan/phpstan-doctrine from 1.3.32 to 1.3.33 (#2112)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.32 to 1.3.33.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.32...1.3.33)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 12:31:12 +00:00
dependabot[bot]
3282bef11a Build(deps-dev): Bump phpstan/phpstan-phpunit from 1.3.4 to 1.3.7 (#2110)
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.4 to 1.3.7.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.4...1.3.7)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:30:19 +01:00
dependabot[bot]
0b16a30f7d Build(deps-dev): Bump phpstan/phpstan-deprecation-rules (#2108)
Bumps [phpstan/phpstan-deprecation-rules](https://github.com/phpstan/phpstan-deprecation-rules) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/phpstan/phpstan-deprecation-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-deprecation-rules/compare/1.1.1...1.1.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-deprecation-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:27:37 +01:00
dependabot[bot]
59a005b731 Build(deps-dev): Bump minimatch from 7.0.0 to 7.0.1 in /js (#2109)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 7.0.0 to 7.0.1.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v7.0.0...v7.0.1)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:27:11 +01:00
dependabot[bot]
fa8f5918c1 Build(deps): Bump svenstaro/upload-release-action from 2.4.1 to 2.5.0 (#2113)
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.4.1 to 2.5.0.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](cc92c9093e...7319e4733e)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:26:09 +01:00
dependabot[bot]
eb4196eba3 Build(deps-dev): Bump phpstan/phpstan from 1.9.18 to 1.10.1 (#2114)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.18 to 1.10.1.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.18...1.10.1)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:23:21 +01:00
Nextcloud bot
fe836b109a Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-22 02:51:12 +00:00
Nextcloud bot
b0390157ec Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-21 02:50:04 +00:00
dependabot[bot]
994996a709 Build(deps-dev): Bump phpstan/phpstan from 1.9.17 to 1.9.18
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.17 to 1.9.18.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.17...1.9.18)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-20 21:52:05 +01:00
dependabot[bot]
fa1eed222d Build(deps-dev): Bump minimatch from 6.2.0 to 7.0.0 in /js (#2107) 2023-02-20 19:26:02 +01:00
Nextcloud bot
410669deca Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-20 02:50:21 +00:00
Nextcloud bot
e990321eb8 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-17 02:50:31 +00:00
Nextcloud bot
7dfa18973a Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-16 02:50:11 +00:00
Benjamin Brahmer
5032e02b4b Release 21.0.0-beta1
Changed
- Drop support for Nextcloud 23 (#2077 )
- Make the "open" keyboard shortcut work faster (#2080)
- Implemented search for articles, results can only link to the feed. (#2075)

Fixed
- Stop errors from the favicon library over empty values (#2096)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-02-14 14:43:51 +01:00
Benjamin Brahmer
69681d12cb Implement item search
The search result can only link to the feed.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-02-14 11:18:00 +01:00
Sean Molenaar
e5f75d7a4c fix: do not request favicon for empty base URL
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2023-02-14 10:18:08 +01:00
dependabot[bot]
7f20279a7d Bump minimatch from 6.1.6 to 6.2.0 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 6.1.6 to 6.2.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v6.1.6...v6.2.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-14 10:16:56 +01:00
dependabot[bot]
68d2b3cc3e Bump phpstan/phpstan-phpunit from 1.3.3 to 1.3.4
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.3 to 1.3.4.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.3...1.3.4)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-14 10:16:40 +01:00
dependabot[bot]
0ba7872d7a Bump phpstan/phpstan from 1.9.16 to 1.9.17 (#2092) 2023-02-13 18:44:14 +01:00
dependabot[bot]
c9139471a4 Bump doctrine/dbal from 3.5.3 to 3.6.0
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.5.3 to 3.6.0.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.5.3...3.6.0)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-10 15:19:59 +01:00
dependabot[bot]
3988ae950f Bump svenstaro/upload-release-action from 2.4.0 to 2.4.1
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](2728235f7d...cc92c9093e)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-10 15:19:41 +01:00
Nextcloud bot
cb8eaf38a3 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-10 02:52:04 +00:00
dependabot[bot]
693e184336 Bump phpunit/phpunit from 9.5.28 to 9.6.3 (#2087)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.28 to 9.6.3.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.28...9.6.3)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-08 08:24:24 +01:00
dependabot[bot]
f05999b84e Bump phpstan/phpstan from 1.9.14 to 1.9.16 (#2089) 2023-02-08 08:09:03 +01:00
Anderson Silva
7739ad15e9 Documentation: Add NewsFlash app client
File to be updated: https://github.com/nextcloud/news/blob/master/docs/clients.md

App name: NewsFlash
Description: RSS Reader with cross-platform sync
OS support: Linux (Flatpak, Arch Community Repository)
Download Link: https://flathub.org/apps/details/com.gitlab.newsflash | https://archlinux.org/packages/community/x86_64/newsflash/
Support Link: https://gitlab.com/news-flash/news_flash_gtk

Sources: https://gitlab.com/news-flash/news_flash_gtk


Signed-off-by: Anderson Silva <UnderEu@users.noreply.github.com>
2023-02-06 17:19:52 +01:00
Nextcloud bot
3d0a9dfdbf Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-02-06 02:46:57 +00:00
Nextcloud bot
2f305b3a5c Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-31 02:56:47 +00:00
Benjamin Brahmer
c4dfd8e196 add pr template
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-30 09:26:38 +01:00
Nextcloud bot
11ccf2258a Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-30 02:55:56 +00:00
Benjamin Brahmer
f296d35c6d fix failing frontend tests
https://github.com/actions/runner-images/issues/6704

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-29 20:23:21 +01:00
Benjamin Brahmer
9ae22c246f add changelog entry
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-29 19:14:30 +01:00
Kuba Orlik
a0ab07fdb9 Make the "open" keyboard shortcut work faster
Previously when pressing the `O` key on article list, the handler for
that keypress first simulated a click on that event in order to mark
it as read, and only then opened the website that item links to in
another tab. When having a lot of items on screen this caused a huge
delay between pressing `O` and opening the linked article in a new
tab. The delay was sometimes 5, even 10 whole seconds. This simple fix
makes it so the article opens first, and then the click simulation
happens afterwards.

Signed-off-by: Kuba Orlik <kontakt@kuba-orlik.name>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-29 19:14:30 +01:00
Benjamin Brahmer
c8800fcbc2 Nextcloud 23 is EOL
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-27 12:30:11 +01:00
dependabot[bot]
fb7edac570 Bump ua-parser-js from 0.7.31 to 0.7.33 in /js
Bumps [ua-parser-js](https://github.com/faisalman/ua-parser-js) from 0.7.31 to 0.7.33.
- [Release notes](https://github.com/faisalman/ua-parser-js/releases)
- [Changelog](https://github.com/faisalman/ua-parser-js/blob/master/changelog.md)
- [Commits](https://github.com/faisalman/ua-parser-js/compare/0.7.31...0.7.33)

---
updated-dependencies:
- dependency-name: ua-parser-js
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-26 08:43:40 +01:00
dependabot[bot]
3271a12e03 Bump minimatch from 6.1.5 to 6.1.6 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 6.1.5 to 6.1.6.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v6.1.5...v6.1.6)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-25 15:28:20 +01:00
Nextcloud bot
a2bd8adf32 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-25 03:07:38 +00:00
Nextcloud bot
f0e3e75423 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-24 02:49:48 +00:00
Benjamin Brahmer
3b8c2248f2 Release 20.0.1
Fixed
- SyntaxError triggered when full-text is enabled with some items. (#2048, #2053)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-23 12:29:45 +01:00
Nextcloud bot
5df404ae62 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-23 02:52:38 +00:00
dependabot[bot]
328f2ffef6 Bump phpstan/phpstan from 1.9.12 to 1.9.14
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.12 to 1.9.14.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.12...1.9.14)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-21 00:30:35 +01:00
Benjamin Brahmer
3b863a8912 remove id part from pattern matching since website changes ID too often
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-21 00:30:06 +01:00
dependabot[bot]
c9f743a32d Bump minimatch from 6.1.0 to 6.1.5 in /js (#2067) 2023-01-18 21:15:57 +01:00
dependabot[bot]
8b849b65e8 Bump minimatch from 6.0.4 to 6.1.0 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 6.0.4 to 6.1.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v6.0.4...v6.1.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-18 10:44:15 +01:00
dependabot[bot]
dda84595ee Bump phpstan/phpstan from 1.9.11 to 1.9.12
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.11 to 1.9.12.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.11...1.9.12)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-18 10:44:02 +01:00
dependabot[bot]
fd45cb3009 Bump minimatch from 5.1.2 to 6.0.4 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 5.1.2 to 6.0.4.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v5.1.2...v6.0.4)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-16 19:03:29 +01:00
dependabot[bot]
34406858e8 Bump phpstan/phpstan-doctrine from 1.3.31 to 1.3.32
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.31 to 1.3.32.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.31...1.3.32)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-16 19:02:58 +01:00
dependabot[bot]
f938f6dae0 Bump fivefilters/readability.php from 3.1.1 to 3.1.2
Bumps [fivefilters/readability.php](https://github.com/fivefilters/readability.php) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/fivefilters/readability.php/releases)
- [Changelog](https://github.com/fivefilters/readability.php/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fivefilters/readability.php/compare/v3.1.1...v3.1.2)

---
updated-dependencies:
- dependency-name: fivefilters/readability.php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-16 19:02:32 +01:00
dependabot[bot]
1fc8872006 Bump phpunit/phpunit from 9.5.27 to 9.5.28 (#2061)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.27 to 9.5.28.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.5.28/ChangeLog-9.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.27...9.5.28)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16 13:08:23 +01:00
dependabot[bot]
6f996600ef Bump phpstan/phpstan from 1.9.9 to 1.9.11 (#2060)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.9 to 1.9.11.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.9...1.9.11)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16 13:05:34 +01:00
dependabot[bot]
ddc3d1d381 Bump doctrine/dbal from 3.5.2 to 3.5.3
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.5.2 to 3.5.3.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.5.2...3.5.3)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-12 18:27:56 +01:00
Benjamin Brahmer
ef04d091c7 Update lib/Db/Feed.php
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-12 18:27:32 +01:00
Benjamin Brahmer
502e4b923e don't process link if it's null
don't process body of feed if it's null

Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-12 18:27:32 +01:00
dependabot[bot]
41264586ea Bump phpstan/phpstan-strict-rules from 1.4.4 to 1.4.5
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.4.4 to 1.4.5.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.4.4...1.4.5)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-12 16:13:19 +01:00
dependabot[bot]
9749b9766d Bump phpstan/phpstan from 1.9.8 to 1.9.9
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.8 to 1.9.9.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.10.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.8...1.9.9)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-12 13:37:42 +01:00
Nextcloud bot
a66ba9d556 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-12 02:47:05 +00:00
Benjamin Brahmer
0dfd93f75d Workaround for #2048
The league/uri version that we inherit in Nextcloud is a bit outdated.
That version can't handle certain uris.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2023-01-11 10:19:34 +01:00
dependabot[bot]
343aa5e2f7 Bump svenstaro/upload-release-action from 2.3.0 to 2.4.0 (#2052) 2023-01-10 16:56:34 +01:00
dependabot[bot]
71c657b333 Bump phpstan/phpstan-doctrine from 1.3.29 to 1.3.31
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.29 to 1.3.31.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.29...1.3.31)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-10 13:08:31 +01:00
Nextcloud bot
148df14156 Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-10 02:50:08 +00:00
dependabot[bot]
540545c595 Bump phpstan/phpstan from 1.9.7 to 1.9.8
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.7 to 1.9.8.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.7...1.9.8)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-09 18:42:32 +01:00
dependabot[bot]
be113c7be6 Bump phpstan/phpstan-doctrine from 1.3.28 to 1.3.29
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.28 to 1.3.29.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.28...1.3.29)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-08 09:59:03 +01:00
dependabot[bot]
6ca2a75c1e Bump json5 from 1.0.1 to 1.0.2 (#2045)
Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-04 14:35:50 +01:00
dependabot[bot]
75ae6ee613 Bump phpstan/phpstan-doctrine from 1.3.27 to 1.3.28 (#2040)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.27 to 1.3.28.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.27...1.3.28)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-04 13:59:56 +01:00
dependabot[bot]
e39fb12f80 Bump json5 from 2.2.1 to 2.2.3 in /js (#2044)
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-04 13:59:20 +01:00
dependabot[bot]
359db992be Bump phpstan/phpstan from 1.9.4 to 1.9.6 (#2043)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.4 to 1.9.6.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.4...1.9.6)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-04 13:51:57 +01:00
Devlin Junker
450047ef4b rename to typescript file
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-23 12:54:31 +01:00
Devlin Junker
f517bc37f7 split out routing and add another route
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-23 12:54:31 +01:00
Sean Molenaar
61ef08d6b8 AdminSettings: update types
Signed-off-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
2022-12-23 12:54:08 +01:00
Sean Molenaar
aab2aae985 AdminSettings: add JSDoc parameters
Signed-off-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
2022-12-23 12:54:08 +01:00
dependabot[bot]
a9169925ac Bump phpstan/phpstan-phpunit from 1.3.2 to 1.3.3
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.2 to 1.3.3.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.2...1.3.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-23 12:53:36 +01:00
dependabot[bot]
ccd5c01735 Bump minimatch from 5.1.1 to 5.1.2 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v5.1.1...v5.1.2)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-23 12:53:05 +01:00
dependabot[bot]
270ad2230b Bump doctrine/dbal from 3.5.1 to 3.5.2
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.5.1 to 3.5.2.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.5.1...3.5.2)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-23 12:52:52 +01:00
Benjamin Brahmer
2ec7b78816 Update .github/workflows/lint-eslint.yml
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-12-23 12:52:25 +01:00
dependabot[bot]
f89fb6123d Bump skjnldsv/read-package-engines-version-actions from 1.2 to 2.0
Bumps [skjnldsv/read-package-engines-version-actions](https://github.com/skjnldsv/read-package-engines-version-actions) from 1.2 to 2.0.
- [Release notes](https://github.com/skjnldsv/read-package-engines-version-actions/releases)
- [Commits](https://github.com/skjnldsv/read-package-engines-version-actions/compare/v1.2...v2.0)

---
updated-dependencies:
- dependency-name: skjnldsv/read-package-engines-version-actions
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-23 12:52:25 +01:00
dependabot[bot]
9b0d783c3c Bump phpstan/phpstan-doctrine from 1.3.26 to 1.3.27
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.26 to 1.3.27.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.26...1.3.27)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-23 12:50:54 +01:00
dependabot[bot]
2dc64055f3 Bump phpstan/phpstan from 1.9.3 to 1.9.4
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.3 to 1.9.4.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.3...1.9.4)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-23 12:49:55 +01:00
dependabot[bot]
65b6515af8 Bump jquery from 3.6.2 to 3.6.3 in /js (#2034)
Bumps [jquery](https://github.com/jquery/jquery) from 3.6.2 to 3.6.3.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.6.2...3.6.3)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-21 13:24:58 +01:00
Benjamin Brahmer
c60d9b1f15 Release 20.0.0
Changed
- Drop support for PHP 7.3 (#2008)
- Dependency updates

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-12-15 10:32:42 +01:00
dependabot[bot]
7592615f1c Bump phpstan/phpstan-phpunit from 1.3.1 to 1.3.2 (#2022)
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.1...1.3.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-14 13:51:43 +01:00
dependabot[bot]
4616bf6750 Bump phpstan/phpstan-deprecation-rules from 1.1.0 to 1.1.1 (#2021)
Bumps [phpstan/phpstan-deprecation-rules](https://github.com/phpstan/phpstan-deprecation-rules) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/phpstan/phpstan-deprecation-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-deprecation-rules/compare/1.1.0...1.1.1)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-deprecation-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-14 13:45:09 +01:00
dependabot[bot]
799b8b25a8 Bump jquery from 3.6.1 to 3.6.2 in /js (#2020)
Bumps [jquery](https://github.com/jquery/jquery) from 3.6.1 to 3.6.2.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.6.1...3.6.2)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-14 13:34:14 +01:00
dependabot[bot]
b6e37df6f4 Bump phpstan/phpstan-deprecation-rules from 1.0.0 to 1.1.0 (#2019)
Bumps [phpstan/phpstan-deprecation-rules](https://github.com/phpstan/phpstan-deprecation-rules) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/phpstan/phpstan-deprecation-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-deprecation-rules/compare/1.0.0...1.1.0)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-deprecation-rules
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-13 14:36:44 +01:00
dependabot[bot]
5bb5d5ba5e Bump phpstan/phpstan-phpunit from 1.3.0 to 1.3.1 (#2017)
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.3.0...1.3.1)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-13 14:25:39 +01:00
dependabot[bot]
37535173fc Bump phpstan/phpstan-doctrine from 1.3.23 to 1.3.26 (#2016)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.23 to 1.3.26.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.23...1.3.26)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-13 13:42:58 +01:00
dependabot[bot]
1d5d7e349a Bump phpunit/phpunit from 9.5.26 to 9.5.27
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.26 to 9.5.27.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.26...9.5.27)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-09 13:27:07 +01:00
dependabot[bot]
79de5a4d8e Bump phpstan/phpstan-phpunit from 1.2.2 to 1.3.0 (#2012)
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.2.2 to 1.3.0.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.2.2...1.3.0)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 14:12:49 +01:00
Devlin Junker
cec18279ac fix admin tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
05ad544a0c lint
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
d9532e35bc clean up commented out lines
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
c975b93a8e clean
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
4fb5426285 clean up linting warnings
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
404b6367d0 clean
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
e61fb48d64 basic tests for store
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
2c32ea05f0 start on state/store tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
4899be32e3 add more tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
8131604192 lint the .ts and spec.ts files also
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
f65769868b working unit test for local computed state
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
28ead9da95 modularize store files and fix unit tests
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
c0bc5ecd51 clean
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
c522bacfb1 cleanup and renaming
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
83fe713c05 split store into multiple files
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Devlin Junker
604e4e0f1b moved store to separate file and started using constants for action/mutation names
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-06 14:57:20 +01:00
Benjamin Brahmer
356c3e1795 Drop support for PHP 7.3
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-12-06 14:49:40 +01:00
Nextcloud bot
2169538e7e [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-12-03 02:38:44 +00:00
dependabot[bot]
9b0d40a854 Bump decode-uri-component from 0.2.0 to 0.2.2 in /js
Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases)
- [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2)

---
updated-dependencies:
- dependency-name: decode-uri-component
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-02 06:06:27 +01:00
Benjamin Brahmer
afd928ed3d Release 19.0.1
Changed
- Dependency updates

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-12-01 13:27:33 +01:00
Devlin Junker
db8b4af2cf move to dev dependencies
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-01 13:17:21 +01:00
Devlin Junker
b77284d65b clean
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-01 13:17:21 +01:00
Devlin Junker
c61d4bbe1f use single quotes
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-01 13:17:21 +01:00
Devlin Junker
5bf6407309 add back translate to admin main js file
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-01 13:17:21 +01:00
Devlin Junker
208cfa8109 add unit tests for admin settings
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-01 13:17:21 +01:00
Devlin Junker
a12e334ce2 add unit tests for admin settings
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-01 13:17:21 +01:00
Devlin Junker
01d15aef47 fix admin page getRequestToken() call
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-12-01 13:17:21 +01:00
dependabot[bot]
23be5386fe Bump minimatch from 5.1.0 to 5.1.1 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 5.1.0 to 5.1.1.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v5.1.0...v5.1.1)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-01 13:15:15 +01:00
dependabot[bot]
012d022893 Bump fivefilters/readability.php from 3.1.0 to 3.1.1
Bumps [fivefilters/readability.php](https://github.com/fivefilters/readability.php) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/fivefilters/readability.php/releases)
- [Changelog](https://github.com/fivefilters/readability.php/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fivefilters/readability.php/compare/v3.1.0...v3.1.1)

---
updated-dependencies:
- dependency-name: fivefilters/readability.php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-29 14:51:33 +01:00
Nextcloud bot
cb00eec4fb [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-11-23 02:43:35 +00:00
dependabot[bot]
766378493d Bump engine.io from 6.2.0 to 6.2.1 in /js (#1997)
Bumps [engine.io](https://github.com/socketio/engine.io) from 6.2.0 to 6.2.1.
- [Release notes](https://github.com/socketio/engine.io/releases)
- [Changelog](https://github.com/socketio/engine.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/engine.io/compare/6.2.0...6.2.1)

---
updated-dependencies:
- dependency-name: engine.io
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-22 09:55:57 +01:00
Benjamin Brahmer
8351293f03 update language files from master
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-11-21 16:24:08 +01:00
Benjamin Brahmer
167e7b6094 Merge branch 'master' into vue-rewrite
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-11-21 16:16:37 +01:00
Nextcloud bot
0ec1b77faf [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-11-21 02:39:13 +00:00
Nextcloud bot
9da97bcbe5 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-11-19 02:41:53 +00:00
dependabot[bot]
92ebe4a836 Bump fivefilters/readability.php from 2.1.0 to 3.1.0 (#1989)
* Bump fivefilters/readability.php from 2.1.0 to 3.1.0

Bumps [fivefilters/readability.php](https://github.com/fivefilters/readability.php) from 2.1.0 to 3.1.0.
- [Release notes](https://github.com/fivefilters/readability.php/releases)
- [Changelog](https://github.com/fivefilters/readability.php/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fivefilters/readability.php/compare/v2.1.0...v3.1.0)

---
updated-dependencies:
- dependency-name: fivefilters/readability.php
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* update Authors

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>

* Change namespace for fivefilters

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Benjamin Brahmer <info@b-brahmer.de>
2022-11-17 22:03:46 +01:00
dependabot[bot]
90a3b239b8 Bump loader-utils from 1.4.1 to 1.4.2 (#1990)
Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.2/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-17 16:16:17 +01:00
dependabot[bot]
c5802105b0 Bump phpstan/phpstan-doctrine from 1.3.22 to 1.3.23
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.22 to 1.3.23.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.22...1.3.23)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-17 14:51:38 +01:00
dependabot[bot]
72b1099549 Bump jshint from 2.13.5 to 2.13.6 in /js
Bumps [jshint](https://github.com/jshint/jshint) from 2.13.5 to 2.13.6.
- [Release notes](https://github.com/jshint/jshint/releases)
- [Changelog](https://github.com/jshint/jshint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jshint/jshint/compare/2.13.5...2.13.6)

---
updated-dependencies:
- dependency-name: jshint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-17 14:51:19 +01:00
Devlin Junker
095176fd90 fix extraneous import error
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-17 14:50:53 +01:00
Devlin Junker
234b9759c5 fix linting
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-17 14:50:53 +01:00
Devlin Junker
e4ada332a4 run npm install with node 18
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-17 14:50:53 +01:00
Devlin Junker
7753837f6c ensure admin settings page is working
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-17 14:50:53 +01:00
Devlin Junker
c6b4bcc00e upmerging master into vue-rewrite
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-17 14:50:53 +01:00
Nextcloud bot
f062c7458c [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-11-12 02:38:09 +00:00
dependabot[bot]
0b99b9e736 Bump phpstan/phpstan from 1.9.1 to 1.9.2 (#1983)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.9.1 to 1.9.2.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.9.1...1.9.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-10 15:01:09 +01:00
dependabot[bot]
582175ef99 Bump socket.io-parser from 4.0.4 to 4.0.5 in /js
Bumps [socket.io-parser](https://github.com/socketio/socket.io-parser) from 4.0.4 to 4.0.5.
- [Release notes](https://github.com/socketio/socket.io-parser/releases)
- [Changelog](https://github.com/socketio/socket.io-parser/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io-parser/compare/4.0.4...4.0.5)

---
updated-dependencies:
- dependency-name: socket.io-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-10 08:20:54 +01:00
dependabot[bot]
59d8d3142d Bump phpstan/phpstan-doctrine from 1.3.21 to 1.3.22 (#1978)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.21 to 1.3.22.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.21...1.3.22)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-09 16:29:33 +01:00
dependabot[bot]
8cfb8b6961 Bump loader-utils from 1.4.0 to 1.4.1 (#1979)
Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.1/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-09 16:29:19 +01:00
Nextcloud bot
da216d85c2 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-11-05 02:41:22 +00:00
rhein
c427ac8216 Update clients.md: Added Fluent Reader (#1975)
* Update clients.md

Added Fluent Reader (Desktop Version) that now also supports Nextcloud News Sync

Signed-off-by: rhein <mail@ralfhein.de>

* Added Fluent Reader 

Now with with correct link + licence

Signed-off-by: rhein <mail@ralfhein.de>

Signed-off-by: rhein <mail@ralfhein.de>
2022-11-04 21:10:04 +01:00
dependabot[bot]
720cad5da5 Bump phpstan/phpstan from 1.8.11 to 1.9.0
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.11 to 1.9.0.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.11...1.9.0)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-03 15:58:33 +01:00
Devlin Junker
760c442882 remove unecessary lines 2022-11-02 11:27:20 +01:00
Devlin Junker
0fe2d497ba update changelog
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
d7aa5e1461 fix linting
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
31384120be import -> require
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
3bf3bc17ce fix tests with proper mocking
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
431236bbd8 more package cleanup and some basic tests for Sidebar
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
182897b4a8 clean up dependencies
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
2be4f28369 use newer libraries and clean up eslint
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
6557bb2873 test file for each component
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
902ff04ac2 outline Sidebar specs
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
a81cd40b00 clean up linting errors
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
Devlin Junker
08d12e5009 running single test
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-11-02 11:27:20 +01:00
dependabot[bot]
4a3de069ca Bump jasmine-core from 4.4.0 to 4.5.0 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-02 11:26:12 +01:00
Benjamin Brahmer
c1eb31da4d Update documentation
Style and spell fixes.
Explain purging and new unread purge better.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-11-02 11:23:00 +01:00
dependabot[bot]
1de013530e Bump phpunit/phpunit from 9.5.25 to 9.5.26
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.25 to 9.5.26.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.25...9.5.26)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-28 21:17:19 +02:00
dependabot[bot]
82472bf367 Bump phpstan/phpstan-phpunit from 1.2.1 to 1.2.2
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.2.1 to 1.2.2.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.2.1...1.2.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-28 21:15:45 +02:00
dependabot[bot]
2f09fdddf8 Bump phpstan/phpstan-phpunit from 1.1.3 to 1.2.1 (#1969)
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.1.3 to 1.2.1.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.1.3...1.2.1)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-27 14:36:54 +02:00
Nextcloud bot
f24376e26f [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-27 02:37:12 +00:00
dependabot[bot]
4a68915290 Bump phpstan/phpstan-doctrine from 1.3.19 to 1.3.21 (#1967)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.19 to 1.3.21.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.19...1.3.21)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-26 14:18:53 +02:00
dependabot[bot]
d191647d61 Bump phpstan/phpstan-doctrine from 1.3.18 to 1.3.19
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.18 to 1.3.19.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.18...1.3.19)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-26 09:38:30 +02:00
Benjamin Brahmer
82575cbe82 Release 19.0.0
Fixed
- Fix nested scrollbars in navigation (#411, #1958)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-25 18:51:32 +02:00
dependabot[bot]
c87a707886 Bump phpstan/phpstan from 1.8.10 to 1.8.11
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.10 to 1.8.11.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.10...1.8.11)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-25 15:08:02 +02:00
Benjamin Brahmer
2432d56f8c Use app password, change setup method
The app password is nice in local testing, since
Nextcloud logs too much data if you use the user password.
Setup_file and teardown_file are only executed once instead
of running before and after every job.

Use bats from npm as ubuntu's version is old.

Switch to occ for app password

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-24 16:51:57 +02:00
dependabot[bot]
80ab436095 Bump phpstan/phpstan-phpunit from 1.1.1 to 1.1.3
Bumps [phpstan/phpstan-phpunit](https://github.com/phpstan/phpstan-phpunit) from 1.1.1 to 1.1.3.
- [Release notes](https://github.com/phpstan/phpstan-phpunit/releases)
- [Commits](https://github.com/phpstan/phpstan-phpunit/compare/1.1.1...1.1.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-24 15:52:39 +02:00
dependabot[bot]
e207883ea3 Bump doctrine/dbal from 3.4.5 to 3.5.1
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.4.5 to 3.5.1.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.4.5...3.5.1)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-24 15:51:27 +02:00
Rhys Tyers
063cbdba73 Fix nested scroll bars in navigation
Signed-off-by: Rhys Tyers <mail@rhy.si>
2022-10-24 12:13:27 +02:00
Benjamin Brahmer
33b60e1b94 Release 19.0.0-beta2
Fixed
- Fixed various keyboard navigation issues (#1953)
- Fix cron job warning notification layout on NC25 (#1953)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-23 14:21:32 +02:00
Rhys Tyers
0822765c82 Fix cron job warning layout in NC25
Signed-off-by: Rhys Tyers <mail@rhy.si>
2022-10-23 12:48:39 +02:00
Rhys Tyers
a50d0a427d Fix various keyboard navigation issues
Signed-off-by: Rhys Tyers <mail@rhy.si>
2022-10-23 12:48:39 +02:00
Nextcloud bot
cbcf87f4ea [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-23 02:37:29 +00:00
Benjamin Brahmer
22a7a09579 Release 19.0.0-beta1
Changed
- Drop support for Nextcloud 22, NC 22 has reached it's end of life.
- Add support for Nextcloud 25

Fixed
- Corrected article compact title bar position in NC25 (#1944)
- Fixed "Mark read through scrolling" in NC25 and NC24 (#1944)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-22 21:24:03 +02:00
Rhys Tyers
adae144b3c Fix mark read throughscrolling in NC24
Signed-off-by: Rhys Tyers <mail@rhy.si>
2022-10-22 14:31:01 +02:00
rhyst
a9771c27a9 Use correct PHP tag for rendering version
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: rhyst <5313660+rhyst@users.noreply.github.com>
Signed-off-by: Rhys Tyers <mail@rhy.si>
2022-10-22 14:31:01 +02:00
rhyst
031a1726cf Fix NC25 UI issues
Signed-off-by: Rhys Tyers <mail@rhy.si>
2022-10-22 14:31:01 +02:00
Benjamin Brahmer
d18a983656 Release 18.3.0
Fixed
- Remove setting for minimum purge interval since it is not used.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-21 22:46:19 +02:00
Benjamin Brahmer
84ed477ec2 add conditon to check for existing key and crt
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-21 17:33:09 +02:00
dependabot[bot]
914c48b1bd Bump phpstan/extension-installer from 1.1.0 to 1.2.0
Bumps [phpstan/extension-installer](https://github.com/phpstan/extension-installer) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/phpstan/extension-installer/releases)
- [Commits](https://github.com/phpstan/extension-installer/compare/1.1.0...1.2.0)

---
updated-dependencies:
- dependency-name: phpstan/extension-installer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-21 14:44:47 +02:00
dependabot[bot]
adb201dab2 Bump phpstan/phpstan-doctrine from 1.3.16 to 1.3.18 (#1940) 2022-10-21 14:35:55 +02:00
Nextcloud bot
f5c48ce505 Updating lint-eslint.yml workflow from template
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-21 14:26:46 +02:00
Benjamin Brahmer
781fb1a3c5 change postgres image to v14
Postgres v15 is currently not compatabile.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-21 14:19:07 +02:00
Nextcloud bot
c69f747fb7 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-16 02:37:31 +00:00
Nextcloud bot
2fc176bf50 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-15 02:37:34 +00:00
dependabot[bot]
09541309bf Bump phpstan/phpstan from 1.8.8 to 1.8.9
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.8 to 1.8.9.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.8...1.8.9)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-14 20:47:03 +02:00
Nextcloud bot
ad425d0bfc [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-14 02:41:21 +00:00
Nextcloud bot
896dcb73b6 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-13 02:38:08 +00:00
Benjamin Brahmer
505b3360cb Remove setting for minimum purge interval setting
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-12 21:09:54 +02:00
Benjamin Brahmer
6f9d3bdbcd fix wording to articles
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-12 08:24:06 +02:00
Nextcloud bot
db4c94d8e0 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-12 02:37:59 +00:00
Benjamin Brahmer
78e5b7ff5c Release 18.3.0-beta1
Changed
- New administrator setting for deleting unread items automatically (#1931)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-11 20:29:30 +02:00
Nextcloud bot
0d8452d861 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-11 02:37:15 +00:00
Sean Molenaar
50b78092dc feat: start servers from make
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-10 16:03:19 +02:00
Benjamin Brahmer
efc2cc84a9 Add some documentation about the integration tests
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-10 16:03:19 +02:00
Nextcloud bot
5b755d90f4 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-10 02:41:38 +00:00
Nextcloud bot
c91026cad1 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-09 02:36:49 +00:00
Benjamin Brahmer
931fcc1853 Update src/components/AdminSettings.vue
Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-08 17:29:08 +02:00
Benjamin Brahmer
b88e1a546a New administrator setting for deleting unread items automatically
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-10-08 17:29:08 +02:00
dependabot[bot]
64eda2fa61 Bump phpstan/phpstan from 1.8.7 to 1.8.8
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.7 to 1.8.8.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.9.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.7...1.8.8)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-08 08:38:27 +02:00
Nextcloud bot
1e569747c2 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-08 02:39:12 +00:00
Nextcloud bot
448dff5d02 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-06 02:40:55 +00:00
dependabot[bot]
f5d37679fa Bump phpstan/phpstan-doctrine from 1.3.15 to 1.3.16
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.15 to 1.3.16.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.15...1.3.16)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-05 14:17:30 +02:00
Devlin Junker
fe62ff2011 move types to separate files
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-10-04 13:45:17 +02:00
Devlin Junker
d2482893e2 move all components to typescript 'Vue.extend({ ... ' syntax
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-10-04 13:45:17 +02:00
Devlin Junker
a71fc67b9c fix editor config and spaces inside of quotes
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-10-03 12:58:13 +02:00
Devlin Junker
56ffba7c5a revert feeds.en.json
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-10-03 12:58:13 +02:00
Devlin Junker
a59f0fdb4c remove unecessary eslint rule
Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-10-03 12:58:13 +02:00
Devlin Junker
42e9b47159 change linting rule from spaces to tabs to match typical vue linting
also clean up all lint warnings in js+vue files

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-10-03 12:58:13 +02:00
Nextcloud bot
e8e838b16f [tx-robot] Update transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-10-01 02:45:27 +00:00
dependabot[bot]
6452c1e4de Bump phpstan/phpstan-doctrine from 1.3.14 to 1.3.15
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.14 to 1.3.15.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.14...1.3.15)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-30 20:14:09 +02:00
Nextcloud bot
3ff51b53d6 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-30 04:28:38 +00:00
Benjamin Brahmer
4b03354073 Release 18.2.0
Fixed
- Fix the highlighted item when reverse ordering is selected (#1838)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-09-28 16:06:42 +02:00
Nextcloud bot
805e9a1aad [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-28 03:13:44 +00:00
dependabot[bot]
ca0d176a51 Bump phpunit/phpunit from 9.5.24 to 9.5.25
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.24 to 9.5.25.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.24...9.5.25)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-26 14:46:04 +02:00
dependabot[bot]
aeb988b29e Bump doctrine/dbal from 3.4.4 to 3.4.5
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.4.4 to 3.4.5.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.4.4...3.4.5)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-26 14:45:39 +02:00
Nextcloud bot
a3a6895ea3 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-24 03:14:08 +00:00
dependabot[bot]
2adb442d52 Bump phpstan/phpstan-strict-rules from 1.4.3 to 1.4.4
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.4.3 to 1.4.4.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.4.3...1.4.4)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 14:54:45 +02:00
dependabot[bot]
65d432cbee Bump phpstan/phpstan from 1.8.5 to 1.8.6
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.5 to 1.8.6.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.8.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.5...1.8.6)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 14:53:24 +02:00
dependabot[bot]
7bfd8ef3a9 Bump phpstan/phpstan-doctrine from 1.3.13 to 1.3.14
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.13 to 1.3.14.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.13...1.3.14)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 14:52:06 +02:00
Nextcloud bot
2de049bd88 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-23 03:09:08 +00:00
Nextcloud bot
dc437fc728 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-22 03:13:02 +00:00
Michael Chang
afe46c58b7 Fix the highlighted item in reversed order
Signed-off-by: Michael Chang <github@micbase.com>
2022-09-20 14:24:16 +02:00
dependabot[bot]
293028035c Bump karma from 6.4.0 to 6.4.1 in /js
Bumps [karma](https://github.com/karma-runner/karma) from 6.4.0 to 6.4.1.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.4.0...v6.4.1)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 14:21:07 +02:00
dependabot[bot]
236ed349d1 Bump ezyang/htmlpurifier from 4.14.0 to 4.16.0
Bumps [ezyang/htmlpurifier](https://github.com/ezyang/htmlpurifier) from 4.14.0 to 4.16.0.
- [Release notes](https://github.com/ezyang/htmlpurifier/releases)
- [Changelog](https://github.com/ezyang/htmlpurifier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ezyang/htmlpurifier/compare/v4.14.0...v4.16.0)

---
updated-dependencies:
- dependency-name: ezyang/htmlpurifier
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 14:20:36 +02:00
Nextcloud bot
8a77833f21 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-13 03:07:29 +00:00
dependabot[bot]
db27490788 Bump phpstan/phpstan from 1.8.4 to 1.8.5
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.4 to 1.8.5.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.8.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.4...1.8.5)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-08 14:32:14 +02:00
Benjamin Brahmer
f7013224e2 Release 18.2.0-beta2
Fix for the read all function and spelling fixes.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-09-08 11:11:05 +02:00
Nextcloud bot
68552c6356 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-08 03:07:56 +00:00
dependabot[bot]
33c4771df4 Bump phpstan/phpstan-doctrine from 1.3.12 to 1.3.13
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.12 to 1.3.13.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.12...1.3.13)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-07 16:24:17 +02:00
Nextcloud bot
74bca2c5f8 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-07 03:07:23 +00:00
dependabot[bot]
29d99d0140 Bump doctrine/dbal from 3.4.3 to 3.4.4
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.4.3 to 3.4.4.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.4.3...3.4.4)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-06 21:01:13 +02:00
dependabot[bot]
548e0ac820 Bump phpstan/phpstan from 1.8.3 to 1.8.4
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.3 to 1.8.4.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.8.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.3...1.8.4)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-06 20:56:38 +02:00
dependabot[bot]
f4185ad382 Bump jasmine-core from 4.3.0 to 4.4.0 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.3.0...v4.4.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-06 20:55:46 +02:00
Nextcloud bot
f2a8ec71ca [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-06 03:06:59 +00:00
Nextcloud bot
91c737d283 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-05 03:05:55 +00:00
Valdnet
a01018bc68 Merge pull request #1897 from nextcloud/Valdnet-patch-1
l10n: Spelling unification
2022-09-04 15:53:48 +02:00
Valdnet
33da37dfea l10n: Spelling unification
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-09-04 15:44:43 +02:00
dependabot[bot]
1800f7d521 Bump phpstan/phpstan-strict-rules from 1.4.2 to 1.4.3
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.4.2...1.4.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-04 14:58:26 +02:00
dependabot[bot]
18e91f2029 Bump phpstan/phpstan from 1.8.2 to 1.8.3
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.2 to 1.8.3.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.8.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.2...1.8.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 14:59:49 +02:00
Nextcloud bot
18c9202627 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-02 03:05:54 +00:00
Nextcloud bot
6403bdf09a [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-01 03:16:45 +00:00
anoy
69f607fb6f fix truncated string for Transifex
Signed-off-by: anoy. <anoymouserver@users.noreply.github.com>
2022-08-31 18:41:31 +02:00
dependabot[bot]
c26b3ae79d Bump doctrine/dbal from 3.4.2 to 3.4.3
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.4.2 to 3.4.3.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.4.2...3.4.3)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-31 16:28:03 +02:00
Benjamin Brahmer
a7f69c4b63 fix readAll
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-31 16:14:18 +02:00
Valdnet
a41abf808f l10n: Correct a typo
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-08-31 11:13:37 +02:00
Valdnet
17f05b4c06 l10n: Spelling unification
Spelling unification in Transifex.

Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-08-31 11:13:37 +02:00
Nextcloud bot
bb3210802d [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-31 03:03:02 +00:00
Benjamin Brahmer
1e536fdcb7 Release 18.2.0-beta1
Changed
- Ported the admin settings to vue (#2353)

Fixed
- Fix PHP 8.1 deprecations (#1861)
- Document api item types (#1861)
- Fix deprecation warnings from Nextcloud server (#1869)
- Fix when marking all items as read, all items of the user are used in the sql query (#1873)
- Fix adding feed via the web-ui that was just deleted causing an error (#1872)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-30 20:48:22 +02:00
Carl Schwan
753e88793e Port admin settings to vue (#1880)
* Port admin settings to vue

Co-authored-by: anoy. <anoymouserver@users.noreply.github.com>
Co-authored-by: Benjamin Brahmer <info@b-brahmer.de>
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-08-30 18:07:25 +02:00
dependabot[bot]
39ac02c034 Bump phpunit/phpunit from 9.5.23 to 9.5.24
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.23 to 9.5.24.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.23...9.5.24)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-30 17:50:36 +02:00
dependabot[bot]
e9963f0581 Bump jquery from 3.6.0 to 3.6.1 in /js
Bumps [jquery](https://github.com/jquery/jquery) from 3.6.0 to 3.6.1.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.6.0...3.6.1)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-29 14:54:23 +02:00
dependabot[bot]
c3591ada5c Bump phpstan/phpstan-strict-rules from 1.4.0 to 1.4.2
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.4.0 to 1.4.2.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.4.0...1.4.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-26 18:23:13 +02:00
Benjamin Brahmer
c217448345 Fix adding feed that was just deleted is causing an error
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-25 07:50:36 +02:00
dependabot[bot]
e60fdff33e Bump doctrine/dbal from 3.4.1 to 3.4.2
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.4.1...3.4.2)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-25 07:44:55 +02:00
dependabot[bot]
108f8b523f Bump phpunit/phpunit from 9.5.21 to 9.5.23 (#1878)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.21 to 9.5.23.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.21...9.5.23)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-24 15:52:31 +02:00
dependabot[bot]
bd3abf1a60 Bump phpstan/phpstan-strict-rules from 1.3.0 to 1.4.0 (#1879)
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.3.0...1.4.0)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-24 15:34:14 +02:00
Nextcloud bot
2fe96dd5bb [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-24 03:05:32 +00:00
Benjamin Brahmer
d39fd83a26 update changelog
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-21 16:39:07 +02:00
Benjamin Brahmer
1a76e03f5a fix unittest
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-21 16:39:07 +02:00
Benjamin Brahmer
4afd5a547d change itemMapper readAll
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-21 16:39:07 +02:00
Benjamin Brahmer
49f79101c3 try to speedup the api testing by hosting the feeds locally (#1874)
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-21 16:38:40 +02:00
Anderson Silva
b1cbf80933 Documentation: Add Communique app client
File to be updated: https://github.com/nextcloud/news/blob/master/docs/clients.md

App name: Communique
Description: RSS Reader with cross-platform sync
OS support: Linux (Flatpak)
Download Link: https://flathub.org/apps/details/com.github.suzie97.communique
Support Link: https://github.com/flathub/com.github.suzie97.communique

Sources: https://github.com/Suzie97/Communique

Signed-off-by: Anderson Silva <UnderEu@users.noreply.github.com>
2022-08-21 15:46:07 +02:00
Benjamin Brahmer
410a1e4d6b fixup for #1861
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-19 15:57:03 +02:00
Benjamin Brahmer
1784406fa7 Fix deprecation warnings from Nextcloud. (#1869)
* don't use private class anymore
* execute is deprecated
* fix migration execute statement
* fix unittest

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-19 10:07:43 +02:00
Benjamin Brahmer
c09cca75b5 Fix deprecations
add phpstan deprecation rules

Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-19 09:14:27 +02:00
Benjamin Brahmer
df04eb2723 add changelog
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-19 09:14:27 +02:00
Benjamin Brahmer
a3d70f50aa Fix Test and adjust code
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-19 09:14:27 +02:00
Benjamin Brahmer
932b88a39c add item types to api docs
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-19 09:14:27 +02:00
Benjamin Brahmer
a66d62d1d7 adapt generateSearchIndex
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-19 09:14:27 +02:00
dependabot[bot]
51e6928a46 Bump doctrine/dbal from 3.4.0 to 3.4.1 (#1868)
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.4.0...3.4.1)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-17 14:32:54 +02:00
Nextcloud bot
2578031cf5 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-14 03:02:42 +00:00
Benjamin Brahmer
71d635db76 Release 18.1.1
Changed
- Change autodiscover to only run after fetching the given url has failed (#1860)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-08-12 11:01:15 +02:00
dependabot[bot]
ae4f0aec75 Bump phpstan/phpstan-doctrine from 1.3.11 to 1.3.12
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.11 to 1.3.12.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.11...1.3.12)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-10 14:07:12 +02:00
dependabot[bot]
0afdd5c37a Bump doctrine/dbal from 3.3.7 to 3.4.0
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.3.7 to 3.4.0.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.3.7...3.4.0)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-08 19:24:34 +02:00
Benjamin Brahmer
d4450ebad2 Change Autodiscover behaviour (#1860)
* change autodiscover behaviour to only run if the provided url is not already a feed

* Execute feed check after the final url is found

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>

Co-authored-by: Sean Molenaar <SMillerDev@users.noreply.github.com>
2022-08-08 19:23:42 +02:00
Nextcloud bot
496084d447 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-06 03:02:58 +00:00
dependabot[bot]
390efb9806 Bump jshint from 2.13.4 to 2.13.5 in /js
Bumps [jshint](https://github.com/jshint/jshint) from 2.13.4 to 2.13.5.
- [Release notes](https://github.com/jshint/jshint/releases)
- [Changelog](https://github.com/jshint/jshint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jshint/jshint/compare/2.13.4...2.13.5)

---
updated-dependencies:
- dependency-name: jshint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-26 23:05:11 +02:00
dependabot[bot]
70f257d08a Bump jasmine-core from 4.2.0 to 4.3.0 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.2.0...v4.3.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-26 08:57:17 +02:00
Nextcloud bot
056465f2bf [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-07-26 03:04:56 +00:00
dependabot[bot]
1d1f9db94f Bump phpstan/phpstan-doctrine from 1.3.10 to 1.3.11
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.10 to 1.3.11.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.10...1.3.11)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 23:22:17 +02:00
dependabot[bot]
cb92fa9c20 Bump terser from 5.14.1 to 5.14.2 in /js
Bumps [terser](https://github.com/terser/terser) from 5.14.1 to 5.14.2.
- [Release notes](https://github.com/terser/terser/releases)
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/commits)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 23:21:10 +02:00
dependabot[bot]
df040839fb Bump phpstan/phpstan from 1.8.1 to 1.8.2
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.8.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.1...1.8.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 23:20:30 +02:00
dependabot[bot]
b9a4bef2b1 Bump phpstan/phpstan-doctrine from 1.3.9 to 1.3.10 (#1847)
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.9 to 1.3.10.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.9...1.3.10)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-13 14:33:56 +02:00
dependabot[bot]
7642402af4 Bump phpstan/phpstan from 1.8.0 to 1.8.1 (#1848)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.8.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.8.0...1.8.1)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-13 14:22:12 +02:00
Nextcloud bot
8ce114def2 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-07-08 03:02:55 +00:00
Benjamin Brahmer
ef25b133ab Release 18.1.1-beta1
- Fix export of unread and starred articles failing due to postgres error (#1839, #1249)
- Fix broken API v1.3 (#1841)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-07-04 12:11:09 +02:00
devlinjunker
f1668df03f [Vue Rewrite] Enable Typescript Vue Components (#1831)
* compiling typescript with webpack

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* working typescript component

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* clean up indentation and linting

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* remove calendar-js

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* revert indentation and remove commented out lines

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* clean up warning

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* cleanup + add comments

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* fix warnings and add more comments

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* cleanup unecessary changes to webpack and add comments

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* fix package

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* update changelog and fix comment

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* cleanup

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* remove unecessary line

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* remove vue-class-component library + others

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* clean up babel-loader

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* remove fork-ts-checker plugin

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-07-04 10:07:48 +02:00
anoy
89eb6a6584 add CORS and version endpoint for API v2
Signed-off-by: anoy <anoymouserver+github@mailbox.org>
2022-07-03 09:40:01 +02:00
anoy
fa3a2c56de fix duplicated api routes
Signed-off-by: anoy <anoymouserver+github@mailbox.org>
2022-07-03 09:40:01 +02:00
dependabot[bot]
b281fb52f2 Bump phpstan/phpstan from 1.7.15 to 1.8.0
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.15 to 1.8.0.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.8.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.15...1.8.0)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-30 15:10:16 +02:00
Benjamin Brahmer
66a161e4f7 fix type always string for findAllFromUser
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-06-28 17:29:13 +02:00
dependabot[bot]
e3dedd833f Bump phpstan/phpstan-strict-rules from 1.2.3 to 1.3.0
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.2.3 to 1.3.0.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.2.3...1.3.0)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-24 14:44:53 +02:00
Nextcloud bot
61267c5e31 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-22 03:05:10 +00:00
dependabot[bot]
7c4146c230 Bump squizlabs/php_codesniffer from 3.7.0 to 3.7.1 (#1835)
Bumps [squizlabs/php_codesniffer](https://github.com/squizlabs/PHP_CodeSniffer) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/squizlabs/PHP_CodeSniffer/releases)
- [Commits](https://github.com/squizlabs/PHP_CodeSniffer/compare/3.7.0...3.7.1)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-20 15:32:01 +02:00
dependabot[bot]
1fe24115e3 Bump phpunit/phpunit from 9.5.20 to 9.5.21 (#1834)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.5.20 to 9.5.21.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/main/ChangeLog-9.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.5.20...9.5.21)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-20 15:31:16 +02:00
dependabot[bot]
8357b7200d Bump phpstan/phpstan from 1.7.14 to 1.7.15 (#1833)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.14 to 1.7.15.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.14...1.7.15)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-20 15:15:55 +02:00
dependabot[bot]
1847635cf2 Bump doctrine/dbal from 3.3.6 to 3.3.7
Bumps [doctrine/dbal](https://github.com/doctrine/dbal) from 3.3.6 to 3.3.7.
- [Release notes](https://github.com/doctrine/dbal/releases)
- [Commits](https://github.com/doctrine/dbal/compare/3.3.6...3.3.7)

---
updated-dependencies:
- dependency-name: doctrine/dbal
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-18 11:43:56 +02:00
Björn Bidar
6106ef625b Add Fuoten to the list of clients
Signed-off-by: Björn Bidar <bjorn.bidar@thaodan.de>
2022-06-17 09:17:53 +02:00
dependabot[bot]
a67b927a04 Bump karma-jasmine from 5.0.1 to 5.1.0 in /js
Bumps [karma-jasmine](https://github.com/karma-runner/karma-jasmine) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/karma-runner/karma-jasmine/releases)
- [Changelog](https://github.com/karma-runner/karma-jasmine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-jasmine/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: karma-jasmine
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-17 09:12:39 +02:00
Benjamin Brahmer
01e4adfee2 Release 18.1.0
Due to #1766 some Feeds might now have items that have `null` set as author instead of `""` clients need to handle this.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-06-15 16:04:58 +02:00
Benjamin Brahmer
8cf7e072a4 adjust dependabot config
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-06-15 15:47:56 +02:00
Benjamin Brahmer
0c431a1b2f Update PHP and JS dependencies
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-06-15 15:47:56 +02:00
dependabot[bot]
10bb22756c Bump phpstan/phpstan from 1.7.13 to 1.7.14
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.13 to 1.7.14.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.13...1.7.14)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-15 15:11:28 +02:00
Nextcloud bot
b144987119 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-15 03:06:53 +00:00
dependabot[bot]
4f5e04284b Bump phpstan/phpstan from 1.7.12 to 1.7.13
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.12 to 1.7.13.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.12...1.7.13)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-14 16:40:31 +02:00
dependabot[bot]
db01befa75 Bump karma from 6.3.20 to 6.4.0 in /js
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.20 to 6.4.0.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.20...v6.4.0)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-14 16:40:22 +02:00
dependabot[bot]
0adb76b05b Bump squizlabs/php_codesniffer from 3.6.2 to 3.7.0
Bumps [squizlabs/php_codesniffer](https://github.com/squizlabs/PHP_CodeSniffer) from 3.6.2 to 3.7.0.
- [Release notes](https://github.com/squizlabs/PHP_CodeSniffer/releases)
- [Commits](https://github.com/squizlabs/PHP_CodeSniffer/compare/3.6.2...3.7.0)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-13 19:13:19 +02:00
dependabot[bot]
4b5d261f9e Bump jasmine-core from 4.1.1 to 4.2.0 in /js
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.1.1 to 4.2.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.1.1...v4.2.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 20:40:52 +02:00
dependabot[bot]
466c432c42 Bump phpstan/phpstan from 1.7.11 to 1.7.12
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.11 to 1.7.12.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.11...1.7.12)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 20:39:52 +02:00
dependabot[bot]
96f109e9f5 Bump phpstan/phpstan from 1.7.10 to 1.7.11
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.10 to 1.7.11.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.10...1.7.11)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 11:40:05 +02:00
devlinjunker
40d9c352ab [Vue Rewrite] Fix CI Jobs (#1816)
* attempt to fix linting

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* working linting/stylelint

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* fix npm build

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* working with node 16 and npm build

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* fix linting

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* add @babel/eslint-parser

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* remove babel-eslint

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* use node 16 in lint

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* proper syntax

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* fix syntax

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* update version

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* attempt to undo indentation changes

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* revert indentation on css and update stylelint rule for now (for simpler PR)

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* revert indentation changes in vue/js files and update eslint to pass this (for now)

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* try to cleanup disabled rules

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* remove last disabled rules in js files

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* add basic changelog

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* update calendar-js to 3.0

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>

* remove npm test with TODO (this will fail CI) and remove calendar-js dependency

Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
2022-06-09 08:55:37 +02:00
Nextcloud bot
d941ff6e79 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-08 03:13:04 +00:00
Benjamin Brahmer
77dce00f9a Add documentation on how to fully uninstall news
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-06-07 12:32:53 +02:00
dependabot[bot]
1885455920 Bump svenstaro/upload-release-action from 2.2.1 to 2.3.0
Bumps [svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action) from 2.2.1 to 2.3.0.
- [Release notes](https://github.com/svenstaro/upload-release-action/releases)
- [Changelog](https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md)
- [Commits](483c1e56f9...133984371c)

---
updated-dependencies:
- dependency-name: svenstaro/upload-release-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-06 22:55:37 +02:00
dependabot[bot]
583d6a3e46 Bump phpstan/phpstan from 1.7.9 to 1.7.10 (#1813) 2022-06-06 15:36:55 +02:00
dependabot[bot]
e1be5a9b37 Bump phpstan/phpstan-doctrine from 1.3.7 to 1.3.9 (#1812) 2022-06-06 15:36:37 +02:00
dependabot[bot]
eb8fefa33e Bump phpstan/phpstan from 1.7.8 to 1.7.9
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.8 to 1.7.9.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.8...1.7.9)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-03 16:07:06 +02:00
dependabot[bot]
5851620044 Bump phpstan/phpstan-doctrine from 1.3.6 to 1.3.7
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.6 to 1.3.7.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.6...1.3.7)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-02 14:53:04 +02:00
dependabot[bot]
cc445ac038 Bump phpstan/phpstan from 1.7.6 to 1.7.8
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.6 to 1.7.8.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.6...1.7.8)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-02 14:52:18 +02:00
Benjamin Brahmer
4981b9e3fd Release 18.1.0-beta2
Changed
-  If items of feed do not provide an author fallback to feed author (#1803)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-05-31 15:59:41 +02:00
Benjamin Brahmer
1c91928e59 If items of feed do not provide an author fallback to feed author (#1803)
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-05-31 15:46:01 +02:00
dependabot[bot]
dbb6419316 Bump phpstan/phpstan from 1.7.4 to 1.7.6
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.4 to 1.7.6.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.4...1.7.6)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-31 14:34:52 +02:00
dependabot[bot]
86d20bb6f9 Bump phpstan/phpstan-doctrine from 1.3.5 to 1.3.6
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.5 to 1.3.6.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.5...1.3.6)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-30 15:34:49 +02:00
dependabot[bot]
4ce4eca522 Bump phpstan/phpstan from 1.7.2 to 1.7.3
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.2...1.7.3)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-30 15:12:58 +02:00
Benjamin Brahmer
eca96ad37d Enable API testing (#1699)
Enable API testing with local php server.

This adds many tests for API v1.2, more still possible.
Which increased the quality of news already.

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-05-29 11:25:38 +02:00
Benjamin Brahmer
86e01a91f3 Release 18.1.0-beta1
Changed
- Add API v1.3 adding routes for starring/unstarring items by id and general fixes (#1727)
  https://nextcloud.github.io/news/api/api-v1-3/
- Improve styling of tables in articles (#1779)
- Allow fetching feeds that omit guid by using link as stand-in (#1785)

Fixed
- Fix updated api not returning any item after marking item as read (#1713)
- Fix deprecation warning for strip_tags() on a null value (#1766)
- Fix selected item being set incorrectly when using default ordering or newest first ordering (#1324)
- Fix doubling the height of the content area (#1796)

Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
2022-05-29 10:34:26 +02:00
083b0a1a74 Fix doubling the height of the content area
Signed-off-by: chylex <contact@chylex.com>
2022-05-28 16:39:50 +02:00
dependabot[bot]
2b254d3483 Bump phpstan/phpstan from 1.7.1 to 1.7.2
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.7.1 to 1.7.2.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.7.1...1.7.2)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 17:37:24 +02:00
Accalia Elementia
fdf037e728 Use Feed Link as GUID when Feed omits Guid. (#1785)
* Use Feed Link as GUID when Feed omits Guid.

As noted in nextcloud/news#1702 some feeds omit the GUID and are
therefore not a valid RSS feed.

nextcloud/news#1738 resolved the issue to allow valid feeds to
update correctly when an invalid feed is present.

This commit allows parsing of the invalid feed as well by assuming
that the item link of the feed is unique to the feed and using
it in place of the GUID when the feed omits the GUID.

This will allow NextCloud News to accept and behave like many other
popular feed aggregators when presented with such an invalid feed.

Signed-off-by: Accalia <Accalia@Elementia.me>

* Add basic Logging when using fallback guid

Signed-off-by: Accalia <Accalia@Elementia.me>

* Add basic Logging when using fallback guid - Fix Fatfinger Typo

Signed-off-by: Accalia <Accalia@Elementia.me>

* Add basic Logging when using fallback guid - Update tests to account for additional logging

Signed-off-by: Accalia <Accalia@Elementia.me>
2022-05-24 17:07:50 +02:00
dependabot[bot]
684af84ea9 Bump phpstan/phpstan-doctrine from 1.3.4 to 1.3.5
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 1.3.4 to 1.3.5.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/1.3.4...1.3.5)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-doctrine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-24 17:07:29 +02:00
dependabot[bot]
83cb9b6a58 Bump phpstan/phpstan from 1.6.9 to 1.7.1
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.6.9 to 1.7.1.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.6.9...1.7.1)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-24 14:42:28 +02:00
Accalia
09e06fd5b0 update ContentController to fix nextcloud#1324
Signed-off-by: Accalia <Accalia@Elementia.me>
2022-05-24 10:49:06 +02:00
Nextcloud bot
f3c824bfae [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-05-24 03:16:22 +00:00
dependabot[bot]
c8f781cd35 Bump phpstan/phpstan from 1.6.8 to 1.6.9
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.6.8 to 1.6.9.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.7.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.6.8...1.6.9)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-23 16:30:52 +02:00
HK2FB
b036d309c2 Vue Rewrite
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2022-05-22 16:07:30 +02:00
dependabot[bot]
50c8960f8d Bump minimatch from 5.0.1 to 5.1.0 in /js
Bumps [minimatch](https://github.com/isaacs/minimatch) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Commits](https://github.com/isaacs/minimatch/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 11:12:22 +02:00
dependabot[bot]
6a8b904f72 Bump karma from 6.3.19 to 6.3.20 in /js
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.19 to 6.3.20.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.19...v6.3.20)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-13 14:23:01 +02:00
dependabot[bot]
687a308fe4 Bump karma-jasmine from 5.0.0 to 5.0.1 in /js
Bumps [karma-jasmine](https://github.com/karma-runner/karma-jasmine) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/karma-runner/karma-jasmine/releases)
- [Changelog](https://github.com/karma-runner/karma-jasmine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-jasmine/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: karma-jasmine
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-13 14:22:46 +02:00
00cb4becf6 Improve styling of tables in articles
Signed-off-by: chylex <contact@chylex.com>
2022-05-13 09:45:16 +02:00
499 changed files with 59932 additions and 17478 deletions

View File

@@ -5,11 +5,16 @@ trim_trailing_whitespace = true
end_of_line = lf end_of_line = lf
insert_final_newline = true insert_final_newline = true
[*.{js,php,html}] [*.{php,html,css}]
indent_style = space indent_style = space
indent_size = 4 indent_size = 4
charset = utf-8 charset = utf-8
[*.{js,ts,vue}]
indent_style = tab
indent_size = 4
charset = utf-8
[*.bats] [*.bats]
indent_style = space indent_style = space
indent_size = 2 indent_size = 2

1
.envrc Normal file
View File

@@ -0,0 +1 @@
use nix

52
.eslintrc.js Normal file
View File

@@ -0,0 +1,52 @@
module.exports = {
root: true,
parser: 'vue-eslint-parser',
parserOptions: {
parser: {
ts: '@typescript-eslint/parser',
},
ecmaVersion: 2020,
},
env: {
jest: true,
},
extends: [
'eslint:recommended',
'plugin:vue/base',
'plugin:vue/essential',
'@vue/standard',
'@vue/typescript/recommended',
'@nextcloud',
'plugin:@typescript-eslint/recommended',
],
ignorePatterns: ['*.d.ts', 'l10n/*.js'],
rules: {
'no-console': 'warn',
'@typescript-eslint/no-var-requires': 'off',
// TODO: Trouble importing .ts files into .vue files for some reason?
'import/extensions': 'off',
'n/no-missing-import': 'off',
},
settings: {
'import/resolver': {
node: {
extensions: ['.ts'],
},
},
},
overrides: [
{
files: ['*spec.ts', 'tests/javascript/unit/setup.ts'],
rules: {
'@typescript-eslint/no-explicit-any': 'off',
},
},
{
files: ['src/store/*.ts'],
rules: {
'function-paren-newline': ['error', 'multiline'],
},
},
],
}

View File

@@ -7,12 +7,13 @@ version: 2
updates: updates:
# Maintain dependencies for npm # Maintain dependencies for npm
- package-ecosystem: "npm" - package-ecosystem: "npm"
directory: "/js" directory: "/"
schedule: schedule:
interval: "daily" interval: "daily"
labels: labels:
- "dependencies" - "dependencies"
- "Skip-Changelog" - "Skip-Changelog"
versioning-strategy: increase
# Maintain dependencies for Composer # Maintain dependencies for Composer
- package-ecosystem: "composer" - package-ecosystem: "composer"
@@ -22,6 +23,7 @@ updates:
labels: labels:
- "dependencies" - "dependencies"
- "Skip-Changelog" - "Skip-Changelog"
versioning-strategy: increase
# Maintain dependencies for GitHub Actions # Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions" - package-ecosystem: "github-actions"

12
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,12 @@
* Resolves: # <!-- related github issue -->
## Summary
<!-- your text -->
## Checklist
- Code is [properly formatted](https://nextcloud.github.io/news/developer/#coding-style-guidelines)
- [Sign-off message](https://github.com/src-d/guide/blob/master/developer-community/fix-DCO.md) is added to all commits
- Changelog entry added for all important changes.

View File

@@ -16,7 +16,7 @@ jobs:
name: "Integration: Nextcloud ${{ matrix.nextcloud }} - PHP ${{ matrix.php-versions }} - DB ${{ matrix.database }}" name: "Integration: Nextcloud ${{ matrix.nextcloud }} - PHP ${{ matrix.php-versions }} - DB ${{ matrix.database }}"
services: services:
postgres: postgres:
image: postgres image: postgres:14
env: env:
POSTGRES_PASSWORD: ${{ env.POSTGRES_PASSWORD }} POSTGRES_PASSWORD: ${{ env.POSTGRES_PASSWORD }}
options: >- options: >-
@@ -28,26 +28,24 @@ jobs:
- 5432:5432 # Maps tcp port 5432 on service container to the host - 5432:5432 # Maps tcp port 5432 on service container to the host
strategy: strategy:
matrix: matrix:
php-versions: ['7.4', '8.0'] php-versions: ['8.0', '8.1']
nextcloud: ['stable22', 'stable23'] nextcloud: ['stable27']
database: ['sqlite', 'pgsql', 'mysql'] database: ['sqlite', 'pgsql', 'mysql']
experimental: [false] experimental: [false]
include: include:
- php-versions: 8.0
nextcloud: pre-release
database: sqlite
experimental: true
- php-versions: 8.1 - php-versions: 8.1
nextcloud: pre-release nextcloud: pre-release
database: sqlite database: sqlite
experimental: true experimental: true
- php-versions: 8.1 - php-versions: 8.2
nextcloud: stable24 nextcloud: pre-release
database: sqlite database: sqlite
experimental: false experimental: true
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
@@ -55,14 +53,16 @@ jobs:
php-version: ${{ matrix.php-versions }} php-version: ${{ matrix.php-versions }}
extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip
coverage: none coverage: none
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Setup BATS - name: Setup BATS & httpie
uses: mig4/setup-bats@v1.2.0 run: sudo apt-get install -y httpie && sudo npm install -g bats@1.11.0
### MySQL specific setup ### MySQL specific setup
- name: Setup mysql - name: Setup mysql
if: matrix.database == 'mysql' if: matrix.database == 'mysql'
uses: getong/mariadb-action@v1.1 uses: getong/mariadb-action@v1.11
with: with:
mariadb version: '10.5' mariadb version: '10.5'
host port: ${{ env.MYSQL_PORT }} host port: ${{ env.MYSQL_PORT }}
@@ -99,7 +99,7 @@ jobs:
database-password: ${{ env.POSTGRES_PASSWORD }} database-password: ${{ env.POSTGRES_PASSWORD }}
- name: Prime app build - name: Prime app build
run: make run: make composer
- name: Configure server with app - name: Configure server with app
uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@main uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@main
@@ -108,8 +108,21 @@ jobs:
check-code: false check-code: false
force: ${{ matrix.experimental }} force: ${{ matrix.experimental }}
- name: Setup problem matchers for PHP - name: Run API tests
run: echo "::add-matcher::${{ runner.tool_cache }}/php.json" working-directory: ../server
run: |
php -S localhost:8080 &> /tmp/webserver.log &
cd apps/news/tests/test_helper/feeds && php -S localhost:8090 &> /tmp/feedserver.log &
sleep 2
cd ${{ github.workspace }}/../server
bats apps/news/tests/api
# Kill php server
kill %1
kill %2
- name: Functional tests maintenance - name: Functional tests maintenance
working-directory: ../server working-directory: ../server
@@ -118,7 +131,16 @@ jobs:
- name: Functional tests - name: Functional tests
working-directory: ../server working-directory: ../server
run: bats apps/news/tests/integration run: |
cd apps/news/tests/test_helper/feeds && php -S localhost:8090 &> /tmp/feedserver.log &
sleep 2
cd ${{ github.workspace }}/../server
bats apps/news/tests/command
kill %1
- name: Prep PHP tests - name: Prep PHP tests
working-directory: ../server/apps/news working-directory: ../server/apps/news
@@ -127,3 +149,4 @@ jobs:
- name: Feed tests - name: Feed tests
working-directory: ../server/apps/news working-directory: ../server/apps/news
run: make feed-test run: make feed-test

View File

@@ -7,28 +7,26 @@ jobs:
continue-on-error: true continue-on-error: true
strategy: strategy:
matrix: matrix:
php-versions: [ '7.4', '8.0' ] php-versions: ['8.0', '8.1', '8.2' ]
nextcloud: [ 'stable24' ] nextcloud: [ 'stable27' ]
database: [ 'sqlite' ] database: [ 'sqlite' ]
include: include:
- php-versions: 8.1 - php-versions: 8.2
nextcloud: stable24
database: sqlite
experimental: false
- php-versions: 8.1
nextcloud: pre-release nextcloud: pre-release
database: sqlite database: sqlite
experimental: true experimental: true
name: "phpstan: Nextcloud ${{ matrix.nextcloud }} with ${{ matrix.php-versions }}" name: "phpstan: Nextcloud ${{ matrix.nextcloud }} with ${{ matrix.php-versions }}"
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Set up php - name: Set up php
uses: shivammathur/setup-php@master uses: shivammathur/setup-php@master
with: with:
php-version: ${{ matrix.php-versions }} php-version: ${{ matrix.php-versions }}
extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip
coverage: none coverage: none
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up server non MySQL - name: Set up server non MySQL
uses: SMillerDev/nextcloud-actions/setup-nextcloud@main uses: SMillerDev/nextcloud-actions/setup-nextcloud@main
@@ -38,7 +36,7 @@ jobs:
database-type: ${{ matrix.database }} database-type: ${{ matrix.database }}
- name: Build app - name: Build app
run: make run: make composer
- name: Configure server with app - name: Configure server with app
uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@main uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@main

View File

@@ -10,19 +10,19 @@ jobs:
strategy: strategy:
matrix: matrix:
php-versions: ['8.1'] php-versions: ['8.1']
nextcloud: ['stable24'] nextcloud: ['stable27']
database: ['sqlite'] database: ['sqlite']
experimental: [false] experimental: [false]
codecoverage: [false] codecoverage: [false]
include: include:
- php-versions: 8.0 - php-versions: 8.2
nextcloud: stable24 nextcloud: stable27
database: sqlite database: sqlite
experimental: false experimental: false
codecoverage: true codecoverage: true
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
with: with:
fetch-depth: 2 # https://github.com/codecov/codecov-action/issues/190#issuecomment-790729633 fetch-depth: 2 # https://github.com/codecov/codecov-action/issues/190#issuecomment-790729633
@@ -32,6 +32,8 @@ jobs:
php-version: ${{ matrix.php-versions }} php-version: ${{ matrix.php-versions }}
extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip
coverage: pcov coverage: pcov
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
### Back to normal setup ### Back to normal setup
- name: Set up server non MySQL - name: Set up server non MySQL
@@ -50,9 +52,6 @@ jobs:
app: 'news' app: 'news'
check-code: false check-code: false
- name: Setup problem matchers for PHPUnit
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
- name: Prep PHP tests - name: Prep PHP tests
working-directory: ../server/apps/news working-directory: ../server/apps/news
run: make php-test-dependencies run: make php-test-dependencies

View File

@@ -15,21 +15,21 @@ jobs:
strategy: strategy:
matrix: matrix:
php-versions: ['8.1'] php-versions: ['8.1']
nextcloud: ['stable24'] nextcloud: ['stable27']
database: ['sqlite'] database: ['sqlite']
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@afefcaf556d98dc7896cca380e181decb609ca44 uses: shivammathur/setup-php@7fdd3ece872ec7ec4c098ae5ab7637d5e0a96067 #2.26.0
with: with:
php-version: ${{ matrix.php-versions }} php-version: ${{ matrix.php-versions }}
extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip
coverage: none coverage: none
- name: Set up server non MySQL - name: Set up server non MySQL
uses: SMillerDev/nextcloud-actions/setup-nextcloud@fae87e29aa7cdf1ea0b8033c67f60e75b10be2cd uses: SMillerDev/nextcloud-actions/setup-nextcloud@1e38cb369e2193642279c64ee140fc93ddd4fa77
with: with:
cron: false cron: false
version: ${{ matrix.nextcloud }} version: ${{ matrix.nextcloud }}
@@ -39,7 +39,7 @@ jobs:
run: make run: make
- name: Configure server with app - name: Configure server with app
uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@fae87e29aa7cdf1ea0b8033c67f60e75b10be2cd uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@1e38cb369e2193642279c64ee140fc93ddd4fa77
with: with:
app: ${{ env.APP_NAME }} app: ${{ env.APP_NAME }}
check-code: false check-code: false
@@ -52,7 +52,7 @@ jobs:
app_public_crt: ${{ secrets.APP_PUBLIC_CRT }} app_public_crt: ${{ secrets.APP_PUBLIC_CRT }}
- name: Upload app tarball to release - name: Upload app tarball to release
uses: svenstaro/upload-release-action@483c1e56f95e88835747b1c7c60581215016cbf2 uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd
id: attach_to_release id: attach_to_release
with: with:
repo_token: ${{ secrets.GITHUB_TOKEN }} repo_token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout master - name: Checkout master
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Deploy docs - name: Deploy docs
uses: mhausenblas/mkdocs-deploy-gh-pages@master uses: mhausenblas/mkdocs-deploy-gh-pages@master

View File

@@ -10,12 +10,12 @@ jobs:
strategy: strategy:
matrix: matrix:
php-versions: ['8.1'] php-versions: ['8.1']
nextcloud: ['stable24'] nextcloud: ['stable27']
database: ['sqlite'] database: ['sqlite']
experimental: [false] experimental: [false]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2

46
.github/workflows/lint-eslint.yml vendored Normal file
View File

@@ -0,0 +1,46 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Lint
on: pull_request
permissions:
contents: read
concurrency:
group: lint-eslint-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
lint:
runs-on: ubuntu-latest
name: eslint
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@v3
id: versions
with:
fallbackNode: '^16'
fallbackNpm: '^6'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@v4
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint

52
.github/workflows/lint.yml vendored Normal file
View File

@@ -0,0 +1,52 @@
name: Lint
on:
pull_request:
push:
branches:
- master
jobs:
eslint:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.x]
name: eslint node${{ matrix.node-versions }}
steps:
- uses: actions/checkout@v4
- name: Set up node ${{ matrix.node-versions }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-versions }}
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint
stylelint:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.x]
name: stylelint node${{ matrix.node-versions }}
steps:
- uses: actions/checkout@v4
- name: Set up node ${{ matrix.node-versions }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-versions }}
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run stylelint

View File

@@ -7,18 +7,20 @@ jobs:
php: php:
runs-on: ubuntu-latest runs-on: ubuntu-latest
continue-on-error: false continue-on-error: false
name: "Coverage: Nextcloud PHP ${{ matrix.php-versions }}" name: "Coverage: Nextcloud ${{ matrix.nextcloud }} PHP ${{ matrix.php-version }}"
strategy: strategy:
matrix: matrix:
nextcloud: ['stable24'] nextcloud: ['stable27']
codecoverage: [true]
php-version: ["8.1"]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: '8.1' php-version: ${{ matrix.php-version }}
### Back to normal setup ### Back to normal setup
- name: Set up server non MySQL - name: Set up server non MySQL
@@ -39,7 +41,11 @@ jobs:
- name: Prep PHP tests - name: Prep PHP tests
run: cd ../server/apps/news && make php-test-dependencies run: cd ../server/apps/news && make php-test-dependencies
- name: Unittests - name: Unittests
run: cd ../server/apps/news && make unit-test run: cd ../server/apps/news && make unit-test
env:
CODECOVERAGE: ${{ matrix.codecoverage }}
- name: Upload codecoverage - name: Upload codecoverage
run: cd ../server/apps/news && bash <(curl -s https://codecov.io/bash) -f build/php-unit.clover run: cd ../server/apps/news && bash <(curl -s https://codecov.io/bash) -f build/php-unit.clover

80
.github/workflows/updater-test.yml vendored Normal file
View File

@@ -0,0 +1,80 @@
name: Updater Tests
on:
pull_request
env:
POSTGRES_PASSWORD: nc_test_db
MYSQL_USER: nc_test
MYSQL_PASSWORD: nc_test_db
MYSQL_DATABASE: nc_test
MYSQL_PORT: 3800
jobs:
integration:
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental }}
name: "Update Test: Nextcloud ${{ matrix.nextcloud }} - PHP ${{ matrix.php-versions }}"
strategy:
matrix:
php-versions: ['8.1']
nextcloud: ['stable27']
database: ['sqlite']
experimental: [false]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip
coverage: none
- name: Setup BATS & httpie
run: sudo apt-get install -y httpie && sudo npm install -g bats@1.11.0
- name: Set up server
uses: SMillerDev/nextcloud-actions/setup-nextcloud@main
with:
version: ${{ matrix.nextcloud }}
cron: true
database-type: ${{ matrix.database }}
database-host: localhost
database-port: 5432
database-name: postgres
database-user: postgres
database-password: ${{ env.POSTGRES_PASSWORD }}
- name: Prime app build
run: make
- name: Configure server with app
uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@main
with:
app: 'news'
check-code: false
force: ${{ matrix.experimental }}
- name: Install composer install php-feed-generator
working-directory: ../server
run: composer install -d apps/news/tests/test_helper/php-feed-generator
- name: Run Updater tests
working-directory: ../server
run: |
php -S localhost:8080 &> /tmp/webserver.log &
cd apps/news/tests/test_helper/feeds && php -S localhost:8090 &> /tmp/feedserver.log &
sleep 2
cd ${{ github.workspace }}/../server
bats apps/news/tests/updater
# Kill php server
kill %1
kill %2

23
.gitignore vendored
View File

@@ -2,15 +2,26 @@
composer.phar composer.phar
node_modules/ node_modules/
vendor/ vendor/
js/build
*.log *.log
/build/ /build/
/js/coverage/ js/
js/*.xml
.rvm .rvm
*.clover *.clover
.phpunit.result.cache .phpunit.result.cache
site/ site/
coverage
#bats
tests/api/helpers/settings-override.bash
tests/test_helper/feeds/test.xml
tests/test_helper/feeds/feed1.xml
tests/test_helper/feeds/feed2.xml
#bats
tests/api/helpers/settings-override.bash
tests/test_helper/feeds/test.xml
tests/test_helper/feeds/feed1.xml
tests/test_helper/feeds/feed2.xml
# python # python
PKG-INFO PKG-INFO
@@ -49,6 +60,9 @@ RCS/*
# netbeans # netbeans
nbproject nbproject
# vscode
.vscode
# phpStorm # phpStorm
.idea .idea
@@ -64,3 +78,6 @@ nbproject
# Mac OS # Mac OS
.DS_Store .DS_Store
*.iml *.iml
# VS Code
.vscode

9
.gitmodules vendored Normal file
View File

@@ -0,0 +1,9 @@
[submodule "tests/test_helper/bats-support"]
path = tests/test_helper/bats-support
url = https://github.com/bats-core/bats-support.git
[submodule "tests/test_helper/bats-assert"]
path = tests/test_helper/bats-assert
url = https://github.com/bats-core/bats-assert.git
[submodule "tests/test_helper/php-feed-generator"]
path = tests/test_helper/php-feed-generator
url = https://github.com/Grotax/php-feed-generator.git

2
.stylelintignore Normal file
View File

@@ -0,0 +1,2 @@
vendor/
coverage/

View File

@@ -1,10 +1,10 @@
[main] [main]
host = https://www.transifex.com host = https://www.transifex.com
lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja lang_map = sk_SK: sk, th_TH: th, ja_JP: ja, bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb
[nextcloud.news] [o:nextcloud:p:nextcloud:r:news]
file_filter = translationfiles/<lang>/news.po file_filter = translationfiles/<lang>/news.po
source_file = translationfiles/templates/news.pot source_file = translationfiles/templates/news.pot
source_lang = en source_lang = en
type = PO type = PO

View File

@@ -1,10 +1,12 @@
# Authors # Authors
* [Bernhard Posselt](mailto:dev@bernhard-posselt.com) * [Bernhard Posselt](mailto:dev@bernhard-posselt.com)
* [Alessandro Cosentino](mailto:cosenal@gmail.com)
* [Benjamin Brahmer](mailto:info@b-brahmer.de) * [Benjamin Brahmer](mailto:info@b-brahmer.de)
* [Alessandro Cosentino](mailto:cosenal@gmail.com)
* [Marco Nassabain](mailto:marco.nassabain@hotmail.com) * [Marco Nassabain](mailto:marco.nassabain@hotmail.com)
* [Devlin Junker](mailto:devlin.junker@gmail.com)
* [Robin Appelman](mailto:icewind@owncloud.com) * [Robin Appelman](mailto:icewind@owncloud.com)
* [Sean Molenaar](mailto:sean@seanmolenaar.eu) * [Sean Molenaar](mailto:sean@seanmolenaar.eu)
* [Paul Tirk](mailto:paultirk@paultirk.com)
* [Gregor Tätzner](mailto:gregor@freenet.de) * [Gregor Tätzner](mailto:gregor@freenet.de)
* [Sean Molenaar](mailto:SMillerDev@users.noreply.github.com) * [Sean Molenaar](mailto:SMillerDev@users.noreply.github.com)
* [anoy](mailto:anoymouserver+github@mailbox.org) * [anoy](mailto:anoymouserver+github@mailbox.org)
@@ -12,7 +14,6 @@
* [Jimmy Huynh](mailto:jimmy.huynh@etu.unistra.fr) * [Jimmy Huynh](mailto:jimmy.huynh@etu.unistra.fr)
* [Aurélien](mailto:dav.aurelien@gmail.com) * [Aurélien](mailto:dav.aurelien@gmail.com)
* [Jan-Christoph Borchardt](mailto:hey@jancborchardt.net) * [Jan-Christoph Borchardt](mailto:hey@jancborchardt.net)
* [Paul Tirk](mailto:paultirk@paultirk.com)
* [Daniel Schaal](mailto:daniel@schaal.email) * [Daniel Schaal](mailto:daniel@schaal.email)
* [Davide Saurino](mailto:davide.saurino@alcacoop.it) * [Davide Saurino](mailto:davide.saurino@alcacoop.it)
* [raghunayyar](mailto:me@iraghu.com) * [raghunayyar](mailto:me@iraghu.com)
@@ -21,6 +22,7 @@
* [Bernhard Posselt](mailto:bep@foryouandyourcustomers.com) * [Bernhard Posselt](mailto:bep@foryouandyourcustomers.com)
* [Thomas Müller](mailto:thomas.mueller@tmit.eu) * [Thomas Müller](mailto:thomas.mueller@tmit.eu)
* [Hoàng Đức Hiếu](mailto:hdhoang@zahe.me) * [Hoàng Đức Hiếu](mailto:hdhoang@zahe.me)
* [IgorA100](mailto:igora100@gmail.com)
* [Marco Nassabain](mailto:marco.nassabain@etu.unistra.fr) * [Marco Nassabain](mailto:marco.nassabain@etu.unistra.fr)
* [rakekniven](mailto:mark.ziegler@rakekniven.de) * [rakekniven](mailto:mark.ziegler@rakekniven.de)
* [Daniel Opitz](mailto:git@copynpaste.de) * [Daniel Opitz](mailto:git@copynpaste.de)
@@ -30,15 +32,20 @@
* [Koen Martens](mailto:gmc@sonologic.nl) * [Koen Martens](mailto:gmc@sonologic.nl)
* [Lukas Reschke](mailto:lukas@owncloud.com) * [Lukas Reschke](mailto:lukas@owncloud.com)
* [Tucker McKnight](mailto:tucker.mcknight@gmail.com) * [Tucker McKnight](mailto:tucker.mcknight@gmail.com)
* [Valdnet](mailto:47037905+Valdnet@users.noreply.github.com)
* [Bart Visscher](mailto:bartv@thisnet.nl) * [Bart Visscher](mailto:bartv@thisnet.nl)
* [Christian Elmer](mailto:christian@keinkurt.de) * [Christian Elmer](mailto:christian@keinkurt.de)
* [Nicolas Wendling](mailto:nicolas.wendling1011@gmail.com) * [Nicolas Wendling](mailto:nicolas.wendling1011@gmail.com)
* [Thomas Tanghus](mailto:thomas@tanghus.net) * [Thomas Tanghus](mailto:thomas@tanghus.net)
* [Volkan Gezer](mailto:volkangezer@gmail.com) * [Volkan Gezer](mailto:volkangezer@gmail.com)
* [Xéfir Destiny](mailto:xefir@crystalyx.net) * [Xéfir Destiny](mailto:xefir@crystalyx.net)
* [devlinjunker](mailto:devlin.junker@gmail.com)
* [hydrian](mailto:ben.tyger@tygerclan.net)
* [mortee](mailto:mortee@kavemalna.hu)
* [Daniel Opitz](mailto:danopz@users.noreply.github.com) * [Daniel Opitz](mailto:danopz@users.noreply.github.com)
* [Daniel Rheinbay](mailto:danielrheinbay@gmail.com) * [Daniel Rheinbay](mailto:danielrheinbay@gmail.com)
* [Lars Bensmann](mailto:lars@almosthappy.de) * [Lars Bensmann](mailto:lars@almosthappy.de)
* [Rhys Tyers](mailto:mail@rhy.si)
* [Robin Appelman](mailto:robin@icewind.nl) * [Robin Appelman](mailto:robin@icewind.nl)
* [bluehaze](mailto:francesco.sportolari@gmail.com) * [bluehaze](mailto:francesco.sportolari@gmail.com)
* [darkside40](mailto:darkside401@googlemail.com) * [darkside40](mailto:darkside401@googlemail.com)
@@ -48,34 +55,43 @@
* [Daniel Kesselberg](mailto:mail@danielkesselberg.de) * [Daniel Kesselberg](mailto:mail@danielkesselberg.de)
* [ELHADDAD Hamza](mailto:elhaddadhamza49@gmail.com) * [ELHADDAD Hamza](mailto:elhaddadhamza49@gmail.com)
* [Jakob Sack](mailto:mail@jakobsack.de) * [Jakob Sack](mailto:mail@jakobsack.de)
* [ManuelSailer](mailto:github.com@manuel-sailer.de)
* [Qingping Hou](mailto:dave2008713@gmail.com) * [Qingping Hou](mailto:dave2008713@gmail.com)
* [Roman](mailto:reverse@jamm.me) * [Roman](mailto:reverse@jamm.me)
* [b_b](mailto:bruno@eliaz.fr) * [b_b](mailto:bruno@eliaz.fr)
* [chylex](mailto:contact@chylex.com)
* [heyarne](mailto:arne@schlueter.is) * [heyarne](mailto:arne@schlueter.is)
* [marco.nassabain@etu.unistra.fr](mailto:marco.nassabain@hotmail.com) * [marco.nassabain@etu.unistra.fr](mailto:marco.nassabain@hotmail.com)
* [Anderson Silva](mailto:UnderEu@users.noreply.github.com)
* [Andreas Fischer](mailto:bantu@owncloud.com) * [Andreas Fischer](mailto:bantu@owncloud.com)
* [David Guillot](mailto:david@guillot.me) * [David Guillot](mailto:david@guillot.me)
* [Gioele Falcetti](mailto:thegio.f@gmail.com) * [Gioele Falcetti](mailto:thegio.f@gmail.com)
* [Igor Bubelov](mailto:igor@bubelov.com) * [Igor Bubelov](mailto:igor@bubelov.com)
* [Jan C. Borchardt](mailto:hey@jancborchardt.net) * [Jan C. Borchardt](mailto:hey@jancborchardt.net)
* [Jimmy Huynh](mailto:linkatox@gmail.com) * [Jimmy Huynh](mailto:linkatox@gmail.com)
* [Joas Schilling](mailto:213943+nickvergessen@users.noreply.github.com)
* [John Kristensen](mailto:john@jerrykan.com) * [John Kristensen](mailto:john@jerrykan.com)
* [Keunes](mailto:11229646+keunes@users.noreply.github.com) * [Keunes](mailto:11229646+keunes@users.noreply.github.com)
* [Konrad Graefe](mailto:konradgraefe@aol.com) * [Konrad Graefe](mailto:konradgraefe@aol.com)
* [Loki3000](mailto:github@labcms.ru) * [Loki3000](mailto:github@labcms.ru)
* [Maik Kulbe](mailto:info@linux-web-development.de) * [Maik Kulbe](mailto:info@linux-web-development.de)
* [Manuel Sailer](mailto:github.com@manuel-sailer.de)
* [Martin Vuille](mailto:jpmv27@yahoo.com)
* [Michael Gapczynski](mailto:mtgap@owncloud.com) * [Michael Gapczynski](mailto:mtgap@owncloud.com)
* [Nikita Chernyi](mailto:rakshazi@users.noreply.github.com) * [Nikita Chernyi](mailto:rakshazi@users.noreply.github.com)
* [Peter Hedlund](mailto:peter@peterandlinda.com) * [Peter Hedlund](mailto:peter@peterandlinda.com)
* [Petra Mirelli](mailto:80395360+iNtEgraIR2021@users.noreply.github.com)
* [Simon Spannagel](mailto:simonspa@kth.se) * [Simon Spannagel](mailto:simonspa@kth.se)
* [Valdnet](mailto:47037905+Valdnet@users.noreply.github.com)
* [bbBowser](mailto:carspi@mail.de) * [bbBowser](mailto:carspi@mail.de)
* [benediktb](mailto:benedikt@blablub.de) * [benediktb](mailto:benedikt@blablub.de)
* [coderkun](mailto:olli@coderkun.de) * [coderkun](mailto:olli@coderkun.de)
* [davidak](mailto:git@davidak.de) * [davidak](mailto:git@davidak.de)
* [hooger](mailto:horvathg.1988@gmail.com) * [hooger](mailto:horvathg.1988@gmail.com)
* [lsmooth](mailto:ls@lsmooth.de) * [lsmooth](mailto:ls@lsmooth.de)
* [mortee](mailto:mortee.github@kavemalna.hu)
* [s17t.net](mailto:mail+github@s17t.net) * [s17t.net](mailto:mail+github@s17t.net)
* [Accalia](mailto:Accalia@Elementia.me)
* [Accalia Elementia](mailto:accalia@elementia.me)
* [Alec Kojaev](mailto:alec@kojaev.name) * [Alec Kojaev](mailto:alec@kojaev.name)
* [Alessandro](mailto:cosenal@gmail.com) * [Alessandro](mailto:cosenal@gmail.com)
* [Alexander Grüßung](mailto:alexander@gruessung-online.de) * [Alexander Grüßung](mailto:alexander@gruessung-online.de)
@@ -89,17 +105,21 @@
* [Aurelien DAVID](mailto:dav.aurelien@gmail.com) * [Aurelien DAVID](mailto:dav.aurelien@gmail.com)
* [Benedikt Geißler](mailto:benedikt@g5r.eu) * [Benedikt Geißler](mailto:benedikt@g5r.eu)
* [Bernhard Posselt](mailto:bernhard@desktop.localdomain) * [Bernhard Posselt](mailto:bernhard@desktop.localdomain)
* [Björn Bidar](mailto:bjorn.bidar@thaodan.de)
* [Candid Dauth](mailto:cdauth@cdauth.eu) * [Candid Dauth](mailto:cdauth@cdauth.eu)
* [Carl Schwan](mailto:carl@carlschwan.eu)
* [Carlos Silva](mailto:r3pek@r3pek.org) * [Carlos Silva](mailto:r3pek@r3pek.org)
* [Cesar Enrique Garcia Dabo](mailto:enrique@engarda.org) * [Cesar Enrique Garcia Dabo](mailto:enrique@engarda.org)
* [Chris Aumann](mailto:me@chr4.org) * [Chris Aumann](mailto:me@chr4.org)
* [Chris Danser](mailto:skiingwiz@gmail.com) * [Chris Danser](mailto:skiingwiz@gmail.com)
* [Chris Noxz](mailto:chris@noxz.tech) * [Chris Noxz](mailto:chris@noxz.tech)
* [Christof Dorner](mailto:christof@chdorner.com)
* [Christoph Wurst](mailto:ChristophWurst@users.noreply.github.com) * [Christoph Wurst](mailto:ChristophWurst@users.noreply.github.com)
* [Clemens](mailto:clemens@clemensknost.de) * [Clemens](mailto:clemens@clemensknost.de)
* [Colin W](mailto:cwmke@users.noreply.github.com) * [Colin W](mailto:cwmke@users.noreply.github.com)
* [Daniel Aleksandersen](mailto:code@daniel.priv.no) * [Daniel Aleksandersen](mailto:code@daniel.priv.no)
* [Daniel S](mailto:daniel@while-true-do.org) * [Daniel S](mailto:daniel@while-true-do.org)
* [Daniel Starzmann](mailto:daniel@starze.de)
* [David Baucum](mailto:david@baucum.me) * [David Baucum](mailto:david@baucum.me)
* [David Engster](mailto:deng@randomsample.de) * [David Engster](mailto:deng@randomsample.de)
* [Dennis Müller](mailto:dennismueller.kontakt@gmail.com) * [Dennis Müller](mailto:dennismueller.kontakt@gmail.com)
@@ -117,19 +137,26 @@
* [Freddo](mailto:f.falk@protonmail.com) * [Freddo](mailto:f.falk@protonmail.com)
* [Freddo3000](mailto:f.falk@protonmail.com) * [Freddo3000](mailto:f.falk@protonmail.com)
* [Greg](mailto:greg@toolstack.com) * [Greg](mailto:greg@toolstack.com)
* [HK2FB](mailto:tom.schmidt@helsana.ch)
* [Hagen](mailto:derhagen@users.noreply.github.com) * [Hagen](mailto:derhagen@users.noreply.github.com)
* [Hanzei](mailto:Hanzei@users.noreply.github.com) * [Hanzei](mailto:Hanzei@users.noreply.github.com)
* [Hendrik Leppelsack](mailto:hendrik@leppelsack.de) * [Hendrik Leppelsack](mailto:hendrik@leppelsack.de)
* [Jasper Knockaert](mailto:jasper@knockaert.nl) * [Jasper Knockaert](mailto:jasper@knockaert.nl)
* [Jimmy Boucher](mailto:75694650+jboucher614@users.noreply.github.com)
* [Josh](mailto:josh.t.richards@gmail.com)
* [Kevin Decherf](mailto:kevin@kdecherf.com) * [Kevin Decherf](mailto:kevin@kdecherf.com)
* [Kuba Orlik](mailto:kontakt@kuba-orlik.name)
* [Maceček Richard](mailto:46937538+macecekrichard@users.noreply.github.com) * [Maceček Richard](mailto:46937538+macecekrichard@users.noreply.github.com)
* [Marc Cousin](mailto:marc.cousin@people-doc.com) * [Marc Cousin](mailto:marc.cousin@people-doc.com)
* [Marcus Nitzschke](mailto:mail@kendix.org)
* [Martin Ferretti](mailto:ferrettimartin@protonmail.com) * [Martin Ferretti](mailto:ferrettimartin@protonmail.com)
* [Matthias](mailto:matthias.baier@mabaart.de) * [Matthias](mailto:matthias.baier@mabaart.de)
* [Matthias Blümel](mailto:user@inanna.local) * [Matthias Blümel](mailto:user@inanna.local)
* [Michael Chang](mailto:github@micbase.com)
* [Michael Grosser](mailto:github@stp-ip.net) * [Michael Grosser](mailto:github@stp-ip.net)
* [Michael Hamann](mailto:michael@content-space.de) * [Michael Hamann](mailto:michael@content-space.de)
* [Michael Holley](mailto:michaelwholley@gmail.com) * [Michael Holley](mailto:michaelwholley@gmail.com)
* [Mynacol](mailto:Mynacol@users.noreply.github.com)
* [NanoSector](mailto:rick@nanosector.nl) * [NanoSector](mailto:rick@nanosector.nl)
* [Nick Frey](mailto:nickfrey123@gmail.com) * [Nick Frey](mailto:nickfrey123@gmail.com)
* [Oliver Herst](mailto:oliver.herst@googlemail.com) * [Oliver Herst](mailto:oliver.herst@googlemail.com)
@@ -140,6 +167,7 @@
* [Piotr Dobrowolski](mailto:admin@tastycode.pl) * [Piotr Dobrowolski](mailto:admin@tastycode.pl)
* [Raspbeguy](mailto:raspbeguy@users.noreply.github.com) * [Raspbeguy](mailto:raspbeguy@users.noreply.github.com)
* [René Henrich](mailto:contact@rene-henrich.de) * [René Henrich](mailto:contact@rene-henrich.de)
* [Robert Wunderer](mailto:robert.wunderer@caprisys.at)
* [Rodrigo Aguilera](mailto:rodrigo.aguilera@amazee.com) * [Rodrigo Aguilera](mailto:rodrigo.aguilera@amazee.com)
* [Roeland Jago Douma](mailto:roeland@famdouma.nl) * [Roeland Jago Douma](mailto:roeland@famdouma.nl)
* [Simon](mailto:sschubert89@gmail.com) * [Simon](mailto:sschubert89@gmail.com)
@@ -175,8 +203,13 @@
* [markusj](mailto:markusj@users.noreply.github.com) * [markusj](mailto:markusj@users.noreply.github.com)
* [mnassabain](mailto:34754819+mnassabain@users.noreply.github.com) * [mnassabain](mailto:34754819+mnassabain@users.noreply.github.com)
* [mormegil](mailto:mormegil@centrum.cz) * [mormegil](mailto:mormegil@centrum.cz)
* [nextcloud-command](mailto:nextcloud-command@users.noreply.github.com)
* [nextcloud486153](mailto:78801830+nextcloud486153@users.noreply.github.com)
* [nexus-uw](mailto:you@example.com) * [nexus-uw](mailto:you@example.com)
* [repat](mailto:repat@repat.de) * [repat](mailto:repat@repat.de)
* [rhein](mailto:mail@ralfhein.de)
* [rhyst](mailto:5313660+rhyst@users.noreply.github.com)
* [rhyst](mailto:rhystyers1@gmail.com)
* [ritchiewilson](mailto:rawilson52@gmail.com) * [ritchiewilson](mailto:rawilson52@gmail.com)
* [skiingwiz](mailto:skiingwiz@gmail.com) * [skiingwiz](mailto:skiingwiz@gmail.com)
* [sonologic](mailto:gmc@sonologic.nl) * [sonologic](mailto:gmc@sonologic.nl)

View File

@@ -2,16 +2,240 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
The format is mostly based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), older entries don't fully match. The format is mostly based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), older entries don't fully match.
You can also check [on GitHub](https://github.com/nextcloud/news/releases), the release notes there are generated automatically and include every pull request.
# Unreleased # Unreleased
## [18.x.x] ## [25.x.x]
### Changed ### Changed
- Add routes for starring/unstarring items by id
### Fixed
# Releases
## [25.0.0-alpha8] - 2024-07-07
### Changed
- Add support for moving feeds to another folder from the sidebar feed menu (#2707)
- Persist the filter state and show unread items by default (#2704)
### Fixed
- Fix undefined item when using `j` and `k` keyboards shortcuts in an empty feed (#2689)
## [25.0.0-alpha7] - 2024-06-10
### Changed
- added alternative development environment (#2670)
- Implement `j` and `k` keyboards shortcuts for navigating through feed items (#2671)
- Implement `s`, `i` and `l` keyboards shortcuts for staring current feed item (#2677)
- Implement `o` keyboards shortcut for opening the URL of current feed item (#2677)
- Implement `u` keyboards shortcut for marking current feed item read/unread (#2677)
- Implement highlighting of active feed item (#2677)
# Releases
## [25.0.0-alpha6] - 2024-05-07
### Changed
- Improve layout of feed item row (#2569)
### Fixed
- Reset content scroll position when feed item is changed (#2569)
- Fix link to feed in article header (#2569)
## [25.0.0-alpha5] - 2024-04-01
### Changed
- make occ news:updater:job exit with code 2 if last update was too long ago (#2590)
- Fix deprecated variable reference in ExportController.php (#2602)
- Add support for Nextcloud 29 (#2611)
## [25.0.0-alpha4] - 2023-01-25
### Changed
- Add DB index for news_feeds.deleted_at (#2526)
### Fixed
- PostgreSQL implement fix for marking over 65535 unread items as "read" (#2557)
## [25.0.0-alpha3] - 2023-12-24
### Changed
- Changed default page when starting app (#2515)
- Downgrade feed-io to 5.3.1 (#2497)
### Fixed
- Fix search support for Nextcloud 28 (#2432)
## [25.0.0-alpha2] - 2023-11-08
### Changed
- Add support for Nextcloud 28
- Use Nextcloud vue components for item list and article view (#2401)
- Fix aspect ratio of article images (#2401)
### Fixed
- Adjust search urls to match changed Vue routes (#2408)
## [25.0.0-alpha1] - 2023-10-24
### Changed
- Major Rewrite of the Frontend with Vue JS (#748)
For comments and suggestions for the new UI, please use this: https://github.com/nextcloud/news/discussions/2388
- Set User Agent for curl in Scraper (#2380)
- Drop support for Nextcloud 26, Supported 27
## [24.0.0] - 2023-09-26
No major changes compared to 24.0.0-beta1.
## [24.0.0-beta1] - 2023-08-26
### Changed
- Drop support for Nextcloud 25, Supported: 26, 27 (#2316)
- Add a new command for occ `./occ news:updater:job` allows to check and reset the update job (#2166)
- Check for available http(s) compression options and use them (gzip, deflate, brotli) (#2328)
- Change and unify [cache](https://nextcloud.github.io/news/install/#cache) to use the instance ID of Nextcloud (#2331)
## [23.0.0] - 2023-08-16
No notable changes compared to 23.0.0-beta1
## [23.0.0-beta1] - 2023-08-09
### Changed
- Drop support for PHP 7.4 new min. version is php 8.0 (#2237)
- Upgrade feed-io to v5.1.3 (#2238)
### Fixed
- Some feeds missing items (#2236)
## [22.0.0] - 2023-07-23
### Changed
- Support deflate and gzip compression for HTTP response bodies (#2269)
- Broke apart old FAQ into different guides. Deprecated old FAQ (#2285)
## [22.0.0-beta2] - 2023-06-18
### Changed
- allowEvalScript set to true (#2262)
## [22.0.0-beta1] - 2023-05-18
### Changed
- Drop support for Nextcloud 24 (#2223)
- Add support for Nextcloud 27 (#2223)
## [21.2.0] - 2023-05-06
### Changed
- Improve visibility of links in dark theme (#2215)
## [21.2.0-beta4] - 2023-04-16
### Fixed
- Fix audio player floating when scrolling in NC25+ (#2142)
- Fix sorting of folder names in select when adding subscription (#2090)
## [21.2.0-beta3] - 2023-04-16
### Changed
- Improve performance of item updates (#1322)
### Fixed
- Fix display issue in NC26+ (#2192)
## [21.2.0-beta2] - 2023-04-05
### Fixed
- Fix last_modified not updated when all items are marked as read (#2183)
## [21.2.0-beta1] - 2023-03-23
### Changed
- Use httpLastModified field for If-Modified-Since header when fetching feed updates (#2119)
## [21.1.0] - 2023-03-20
No notable changes compared to 21.1.0-beta1
## [21.1.0-beta1] - 2023-03-13
### Changed
- Remove unused background job OCA\News\Cron\Updater (#2137)
- (Nextcloud 26+) Add info card to the admin settings, showing last job execution (#2141)
## [21.0.0] - 2023-02-28
No notable changes compared to 21.0.0-beta1
## [21.0.0-beta1] - 2023-02-14
### Changed
- Drop support for Nextcloud 23 (#2077 )
- Make the "open" keyboard shortcut work faster (#2080)
- Implemented search for articles, results can only link to the feed. (#2075)
### Fixed
- Stop errors from the favicon library over empty values (#2096)
## [20.0.1] - 2023-01-19
### Fixed
- SyntaxError triggered when full-text is enabled with some items. (#2048, #2053)
## [20.0.0] - 2022-12-14
### Changed
- Drop support for PHP 7.3 (#2008)
- Dependency updates
## [19.0.1] - 2022-12-01
### Changed
- Dependency updates
## [19.0.0] - 2022-10-25
### Fixed
- Fix nested scrollbars in navigation (#411, #1958)
## [19.0.0-beta2] - 2022-10-23
### Fixed
- Fixed various keyboard navigation issues (#1953)
- Fix cron job warning notification layout on NC25 (#1953)
## [19.0.0-beta1] - 2022-10-22
### Changed
- Drop support for Nextcloud 22, NC 22 has reached it's end of life. (#1950)
- Add support for Nextcloud 25 (#1950)
### Fixed
- Corrected article compact title bar position in NC25 (#1944)
- Fixed "Mark read through scrolling" in NC25 and NC24 (#1944)
## [18.3.0] - 2022-10-21
### Fixed
- Remove setting for minimum purge interval since it is not used. (#1935)
## [18.3.0-beta1] - 2022-10-10
### Changed
- New administrator setting for deleting unread items automatically (#1931)
## [18.2.0] - 2022-09-28
### Fixed
- Fix the highlighted item when reverse ordering is selected (#1838)
## [18.2.0-beta2] - 2022-09-07
Fix for the read all function and spelling fixes.
## [18.2.0-beta1] - 2022-08-30
### Changed
- Ported the admin settings to vue (#2353)
### Fixed
- Fix PHP 8.1 deprecations (#1861)
- Document api item types (#1861)
- Fix deprecation warnings from Nextcloud server (#1869)
- Fix when marking all items as read, all items of the user are used in the sql query (#1873)
- Fix adding feed via the web-ui that was just deleted causing an error (#1872)
## [18.1.1] - 2022-08-12
### Changed
- Change autodiscover to only run after fetching the given url has failed (#1860)
## [18.1.1-beta1] - 2022-07-04
### Fixed
- Fix export of unread and starred articles failing due to postgres error (#1839, #1249)
- Fix broken API v1.3 (#1841)
## [18.1.0] - 2022-06-10
Due to #1766 some Feeds might now have items that have `null` set as author instead of `""` clients need to handle this.
## [18.1.0-beta2] - 2022-05-31
### Changed
- If items of feed do not provide an author fallback to feed author (#1803)
## [18.1.0-beta1] - 2022-05-29
### Changed
- Add API v1.3 adding routes for starring/unstarring items by id and general fixes (#1727)
https://nextcloud.github.io/news/api/api-v1-3/
- Improve styling of tables in articles (#1779)
- Allow fetching feeds that omit guid by using link as stand-in (#1785)
### Fixed ### Fixed
- Fix updated api not returning any item after marking item as read (#1713) - Fix updated api not returning any item after marking item as read (#1713)
- Fix deprecation warning for strip_tags() on a null value (#1766) - Fix deprecation warning for strip_tags() on a null value (#1766)
- Fix selected item being set incorrectly when using default ordering or newest first ordering (#1324)
# Releases - Fix doubling the height of the content area (#1796)
## [18.0.1] - 2022-04-22 ## [18.0.1] - 2022-04-22
No major changes since the beta versions. No major changes since the beta versions.

View File

@@ -25,7 +25,7 @@ Read this when you want to:
* Disable all browser add-ons to make sure that it's not a plugin's fault (adblockers, especially cosmetic filters) * Disable all browser add-ons to make sure that it's not a plugin's fault (adblockers, especially cosmetic filters)
* Clear your PHP opcode cache if you use any by restarting your webserver. * Clear your PHP opcode cache if you use any by restarting your webserver.
* [Check if they have already been reported](https://github.com/nextcloud/news/issues?state=open) * [Check if they have already been reported](https://github.com/nextcloud/news/issues?state=open)
* [Check if your problem is covered in the FAQ section]( https://nextcloud.github.io/news/faq) * [Check if your problem is covered in the Troubleshooting section](https://nextcloud.github.io/news/troubleshooting/)
### Debugging issues ### Debugging issues
* Enable debug mode in your **config/config.php**: * Enable debug mode in your **config/config.php**:

View File

@@ -52,7 +52,7 @@ cert_dir=$(HOME)/.nextcloud/certificates
npm:=$(shell which npm 2> /dev/null) npm:=$(shell which npm 2> /dev/null)
composer:=$(shell which composer 2> /dev/null) composer:=$(shell which composer 2> /dev/null)
ifeq (,$(composer)) ifeq (,$(composer))
composer:=php $(build_tools_directory)/composer.phar composer:=php "$(build_tools_directory)/composer.phar"
endif endif
#Support xDebug 3.0+ #Support xDebug 3.0+
@@ -74,9 +74,9 @@ build:
composer: composer:
ifeq (, $(shell which composer 2> /dev/null)) ifeq (, $(shell which composer 2> /dev/null))
@echo "No composer command available, downloading a copy from the web" @echo "No composer command available, downloading a copy from the web"
mkdir -p $(build_tools_directory) mkdir -p "$(build_tools_directory)"
curl -sS https://getcomposer.org/installer | php curl -sS https://getcomposer.org/installer | php
mv composer.phar $(build_tools_directory) mv composer.phar "$(build_tools_directory)"
endif endif
$(composer) install --prefer-dist --no-dev $(composer) install --prefer-dist --no-dev
@@ -84,16 +84,16 @@ endif
.PHONY: npm .PHONY: npm
npm: npm:
ifneq (, $(npm)) ifneq (, $(npm))
cd js && $(npm) run build $(npm) run build
else else
@echo "npm command not available, please install nodejs first" @echo "npm command not available, please install nodejs first"
@exit 1 @exit 1
endif endif
# Removes the appstore build # Removes the appstore build and compiled js files
.PHONY: clean .PHONY: clean
clean: clean:
rm -rf ./build rm -rf ./build ./js/*
# Reports PHP codestyle violations # Reports PHP codestyle violations
.PHONY: phpcs .PHONY: phpcs
@@ -124,9 +124,9 @@ dist:
# Builds the source package # Builds the source package
.PHONY: source .PHONY: source
source: source:
rm -rf $(source_build_directory) $(source_artifact_directory) rm -rf "$(source_build_directory)" "$(source_artifact_directory)"
mkdir -p $(source_build_directory) $(source_artifact_directory) mkdir -p "$(source_build_directory)" "$(source_artifact_directory)"
rsync -rv . $(source_build_directory) \ rsync -rv . "$(source_build_directory)" \
--exclude=/.git/ \ --exclude=/.git/ \
--exclude=/.idea/ \ --exclude=/.idea/ \
--exclude=/build/ \ --exclude=/build/ \
@@ -137,13 +137,13 @@ ifdef CAN_SIGN
else else
@echo $(sign_skip_msg) @echo $(sign_skip_msg)
endif endif
tar -cvzf $(source_package_name).tar.gz -C $(source_build_directory)/../ $(app_name) tar -cvzf "$(source_package_name).tar.gz" -C "$(source_build_directory)/../" $(app_name)
# Builds the source package for the app store, ignores php and js tests # Builds the source package for the app store, ignores php and js tests
.PHONY: appstore .PHONY: appstore
appstore: appstore:
rm -rf $(appstore_build_directory) $(appstore_sign_dir) $(appstore_artifact_directory) rm -rf "$(appstore_build_directory)" "$(appstore_sign_dir)" "$(appstore_artifact_directory)"
install -d $(appstore_sign_dir)/$(app_name) install -d "$(appstore_sign_dir)/$(app_name)"
cp -r \ cp -r \
"appinfo" \ "appinfo" \
"css" \ "css" \
@@ -152,47 +152,49 @@ appstore:
"lib" \ "lib" \
"templates" \ "templates" \
"vendor" \ "vendor" \
$(appstore_sign_dir)/$(app_name) "$(appstore_sign_dir)/$(app_name)"
# remove composer binaries, those aren't needed # remove composer binaries, those aren't needed
rm -rf $(appstore_sign_dir)/$(app_name)/vendor/bin rm -rf "$(appstore_sign_dir)/$(app_name)/vendor/bin"
# the App Store doesn't like .git # the App Store doesn't like .git
rm -rf $(appstore_sign_dir)/$(app_name)/vendor/arthurhoaro/favicon/.git rm -rf "$(appstore_sign_dir)/$(app_name)/vendor/arthurhoaro/favicon/.git"
# remove large test files # remove large test files
rm -rf $(appstore_sign_dir)/$(app_name)/vendor/fivefilters/readability.php/test rm -rf "$(appstore_sign_dir)/$(app_name)/vendor/fivefilters/readability.php/test"
install "COPYING" $(appstore_sign_dir)/$(app_name) install "COPYING" "$(appstore_sign_dir)/$(app_name)"
install "AUTHORS.md" $(appstore_sign_dir)/$(app_name) install "AUTHORS.md" "$(appstore_sign_dir)/$(app_name)"
install "CHANGELOG.md" $(appstore_sign_dir)/$(app_name) install "CHANGELOG.md" "$(appstore_sign_dir)/$(app_name)"
#remove stray .htaccess files since they are filtered by nextcloud #remove stray .htaccess files since they are filtered by nextcloud
find $(appstore_sign_dir) -name .htaccess -exec rm {} \; find "$(appstore_sign_dir)" -name .htaccess -exec rm {} \;
# on macOS there is no option "--parents" for the "cp" command # on macOS there is no option "--parents" for the "cp" command
mkdir -p $(appstore_sign_dir)/$(app_name)/js/build $(appstore_sign_dir)/$(app_name)/js/admin mkdir -p "$(appstore_sign_dir)/$(app_name)/js"
cp js/build/app.min.js $(appstore_sign_dir)/$(app_name)/js/build cp js/* "$(appstore_sign_dir)/$(app_name)/js/"
cp js/admin/Admin.js $(appstore_sign_dir)/$(app_name)/js/admin
# export the key and cert to a file # export the key and cert to a file
mkdir -p $(cert_dir) @if [ ! -f "$(cert_dir)/$(app_name).key" ] || [ ! -f "$(cert_dir)/$(app_name).crt" ]; then \
php ./bin/tools/file_from_env.php "app_private_key" "$(cert_dir)/$(app_name).key" echo "Key and cert do not exist"; \
php ./bin/tools/file_from_env.php "app_public_crt" "$(cert_dir)/$(app_name).crt" mkdir -p "$(cert_dir)"; \
php ./bin/tools/file_from_env.php "app_private_key" "$(cert_dir)/$(app_name).key"; \
php ./bin/tools/file_from_env.php "app_public_crt" "$(cert_dir)/$(app_name).crt"; \
fi
@if [ -f $(cert_dir)/$(app_name).key ]; then \ @if [ -f "$(cert_dir)/$(app_name).key" ]; then \
echo "Signing app files…"; \ echo "Signing app files…"; \
php ../../occ integrity:sign-app \ php ../../occ integrity:sign-app \
--privateKey=$(cert_dir)/$(app_name).key\ --privateKey="$(cert_dir)/$(app_name).key"\
--certificate=$(cert_dir)/$(app_name).crt\ --certificate="$(cert_dir)/$(app_name).crt"\
--path=$(appstore_sign_dir)/$(app_name); \ --path="$(appstore_sign_dir)/$(app_name)"; \
echo "Signing app files ... done"; \ echo "Signing app files ... done"; \
fi fi
mkdir -p $(appstore_artifact_directory) mkdir -p "$(appstore_artifact_directory)"
tar -czf $(appstore_package_name).tar.gz -C $(appstore_sign_dir) $(app_name) tar -czf "$(appstore_package_name).tar.gz" -C "$(appstore_sign_dir)" $(app_name)
.PHONY: js-test .PHONY: js-test
js-test: js-test:
cd js && $(npm) run test $(npm) run test
.PHONY: php-test-dependencies .PHONY: php-test-dependencies
php-test-dependencies: php-test-dependencies:
@@ -200,12 +202,7 @@ php-test-dependencies:
.PHONY: unit-test .PHONY: unit-test
unit-test: unit-test:
@if [ "$(CODECOVERAGE)" = "true" ]; then \ ./vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover build/php-unit.clover
./vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover build/php-unit.clover; \
else \
./vendor/phpunit/phpunit/phpunit -c phpunit.xml --no-coverage; \
fi
# Command for running JS and PHP tests. Works for package.json files in the js/ # Command for running JS and PHP tests. Works for package.json files in the js/
# and root directory. If phpunit is not installed systemwide, a copy is fetched # and root directory. If phpunit is not installed systemwide, a copy is fetched
@@ -221,3 +218,19 @@ test: php-test-dependencies
.PHONY: feed-test .PHONY: feed-test
feed-test: feed-test:
./bin/tools/check_feeds.sh ./bin/tools/check_feeds.sh
.PHONY: feed-server
feed-server:
php -S 127.0.0.1:8090 -t "$(CURDIR)/tests/test_helper/feeds"
.PHONY: nextcloud-server
nextcloud-server:
php -S 127.0.0.1:8080 -t "$(CURDIR)/../../."
.PHONY: term
term:
zellij --layout term.kdl attach nextcloud-news -cf
.PHONY: term-kill
term-kill:
zellij delete-session nextcloud-news -f

View File

@@ -1,7 +1,4 @@
# Nextcloud News app # Nextcloud News app
**We need help with the frontend, check the issue tracker if you are interested!**
![Release status](https://github.com/nextcloud/news/workflows/Build%20and%20publish%20app%20release/badge.svg) ![Integration Tests](https://github.com/nextcloud/news/workflows/Integration%20Tests/badge.svg) ![Frontend tests](https://github.com/nextcloud/news/workflows/Frontend%20tests/badge.svg) [![Code coverage](https://img.shields.io/codecov/c/github/nextcloud/news.svg?style=flat)](https://codecov.io/gh/nextcloud/news/) ![Release status](https://github.com/nextcloud/news/workflows/Build%20and%20publish%20app%20release/badge.svg) ![Integration Tests](https://github.com/nextcloud/news/workflows/Integration%20Tests/badge.svg) ![Frontend tests](https://github.com/nextcloud/news/workflows/Frontend%20tests/badge.svg) [![Code coverage](https://img.shields.io/codecov/c/github/nextcloud/news.svg?style=flat)](https://codecov.io/gh/nextcloud/news/)
The News app is an RSS/Atom feed aggregator. It offers a [RESTful API](https://nextcloud.github.io/news/developer/#apis) for app developers. The source code is [available on GitHub](https://github.com/nextcloud/news) The News app is an RSS/Atom feed aggregator. It offers a [RESTful API](https://nextcloud.github.io/news/developer/#apis) for app developers. The source code is [available on GitHub](https://github.com/nextcloud/news)
@@ -9,6 +6,14 @@ The News app is an RSS/Atom feed aggregator. It offers a [RESTful API](https://n
## Documentation ## Documentation
The documentation can be found [here](https://nextcloud.github.io/news/), the source of the documentation is on [GitHub](https://github.com/nextcloud/news/blob/master/docs) The documentation can be found [here](https://nextcloud.github.io/news/), the source of the documentation is on [GitHub](https://github.com/nextcloud/news/blob/master/docs)
### Common Guides
There are some small guides for dealing with common setup and issues.
* [Troubleshooting Guide](docs/troubleshooting.md)
* [Integration Guide](docs/features/integration.md)
## Bugs ## Bugs
Please read the [appropriate section in the contributing notices](https://github.com/nextcloud/news/blob/master/CONTRIBUTING.md#issues) Please read the [appropriate section in the contributing notices](https://github.com/nextcloud/news/blob/master/CONTRIBUTING.md#issues)

View File

@@ -21,7 +21,7 @@ Create a [feature request](https://github.com/nextcloud/news/discussions/new)
Report a [feed issue](https://github.com/nextcloud/news/discussions/new) Report a [feed issue](https://github.com/nextcloud/news/discussions/new)
]]></description> ]]></description>
<version>18.0.1</version> <version>25.0.0-alpha8</version>
<licence>agpl</licence> <licence>agpl</licence>
<author>Benjamin Brahmer</author> <author>Benjamin Brahmer</author>
<author>Sean Molenaar</author> <author>Sean Molenaar</author>
@@ -43,7 +43,7 @@ Report a [feed issue](https://github.com/nextcloud/news/discussions/new)
<screenshot small-thumbnail="https://raw.githubusercontent.com/nextcloud/news/master/screenshots/2-small.png">https://raw.githubusercontent.com/nextcloud/news/master/screenshots/2.png</screenshot> <screenshot small-thumbnail="https://raw.githubusercontent.com/nextcloud/news/master/screenshots/2-small.png">https://raw.githubusercontent.com/nextcloud/news/master/screenshots/2.png</screenshot>
<screenshot small-thumbnail="https://raw.githubusercontent.com/nextcloud/news/master/screenshots/3-small.png">https://raw.githubusercontent.com/nextcloud/news/master/screenshots/3.png</screenshot> <screenshot small-thumbnail="https://raw.githubusercontent.com/nextcloud/news/master/screenshots/3-small.png">https://raw.githubusercontent.com/nextcloud/news/master/screenshots/3.png</screenshot>
<dependencies> <dependencies>
<php min-version="7.3" min-int-size="64"/> <php min-version="8.0" min-int-size="64"/>
<database min-version="10">pgsql</database> <database min-version="10">pgsql</database>
<database>sqlite</database> <database>sqlite</database>
<database min-version="8.0">mysql</database> <database min-version="8.0">mysql</database>
@@ -55,13 +55,19 @@ Report a [feed issue](https://github.com/nextcloud/news/discussions/new)
<lib>json</lib> <lib>json</lib>
<owncloud max-version="0" min-version="0"/> <owncloud max-version="0" min-version="0"/>
<nextcloud min-version="22" max-version="24"/> <nextcloud min-version="27" max-version="29"/>
</dependencies> </dependencies>
<background-jobs> <background-jobs>
<job>OCA\News\Cron\UpdaterJob</job> <job>OCA\News\Cron\UpdaterJob</job>
</background-jobs> </background-jobs>
<repair-steps>
<post-migration>
<step>OCA\News\Migration\RemoveUnusedJob</step>
</post-migration>
</repair-steps>
<commands> <commands>
<command>OCA\News\Command\ExploreGenerator</command> <command>OCA\News\Command\ExploreGenerator</command>
<command>OCA\News\Command\ShowFeed</command> <command>OCA\News\Command\ShowFeed</command>
@@ -69,6 +75,7 @@ Report a [feed issue](https://github.com/nextcloud/news/discussions/new)
<command>OCA\News\Command\Updater\UpdateUser</command> <command>OCA\News\Command\Updater\UpdateUser</command>
<command>OCA\News\Command\Updater\BeforeUpdate</command> <command>OCA\News\Command\Updater\BeforeUpdate</command>
<command>OCA\News\Command\Updater\AfterUpdate</command> <command>OCA\News\Command\Updater\AfterUpdate</command>
<command>OCA\News\Command\Updater\Job</command>
<command>OCA\News\Command\Config\FolderList</command> <command>OCA\News\Command\Config\FolderList</command>
<command>OCA\News\Command\Config\FolderAdd</command> <command>OCA\News\Command\Config\FolderAdd</command>
<command>OCA\News\Command\Config\FolderDelete</command> <command>OCA\News\Command\Config\FolderDelete</command>

View File

@@ -61,85 +61,61 @@ return ['routes' => [
// general API // general API
['name' => 'api#index', 'url' => '/api', 'verb' => 'GET'], ['name' => 'api#index', 'url' => '/api', 'verb' => 'GET'],
['name' => 'utility_api#preflighted_cors', 'url' => '/api/{apiVersion}/{path}', 'verb' => 'OPTIONS', 'requirements' => ['apiVersion' => 'v(1-[23]|2)', 'path' => '.+']],
['name' => 'utility_api#version', 'url' => '/api/{apiVersion}/version', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v(1-[23]|2)']],
// API 1.x
['name' => 'utility_api#status', 'url' => '/api/{apiVersion}/status', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'utility_api#before_update', 'url' => '/api/{apiVersion}/cleanup/before-update', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'utility_api#after_update', 'url' => '/api/{apiVersion}/cleanup/after-update', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
// folders
['name' => 'folder_api#index', 'url' => '/api/{apiVersion}/folders', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'folder_api#create', 'url' => '/api/{apiVersion}/folders', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'folder_api#update', 'url' => '/api/{apiVersion}/folders/{folderId}', 'verb' => 'PUT', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'folder_api#delete', 'url' => '/api/{apiVersion}/folders/{folderId}', 'verb' => 'DELETE', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'folder_api#read', 'url' => '/api/{apiVersion}/folders/{folderId}/read', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'folder_api#read', 'url' => '/api/v1-2/folders/{folderId}/read', 'verb' => 'PUT', 'postfix' => 'v1.2'], // Backward compatibility. Corrected HTTP method as of v1.3
// feeds
['name' => 'feed_api#index', 'url' => '/api/{apiVersion}/feeds', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'feed_api#create', 'url' => '/api/{apiVersion}/feeds', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'feed_api#update', 'url' => '/api/{apiVersion}/feeds/{feedId}', 'verb' => 'PUT', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'feed_api#delete', 'url' => '/api/{apiVersion}/feeds/{feedId}', 'verb' => 'DELETE', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'feed_api#from_all_users', 'url' => '/api/{apiVersion}/feeds/all', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'feed_api#move', 'url' => '/api/{apiVersion}/feeds/{feedId}/move', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'feed_api#move', 'url' => '/api/v1-2/feeds/{feedId}/move', 'verb' => 'PUT', 'postfix' => 'v1.2'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'feed_api#rename', 'url' => '/api/{apiVersion}/feeds/{feedId}/rename', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'feed_api#rename', 'url' => '/api/v1-2/feeds/{feedId}/rename', 'verb' => 'PUT', 'postfix' => 'v1.2'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'feed_api#read', 'url' => '/api/{apiVersion}/feeds/{feedId}/read', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'feed_api#read', 'url' => '/api/v1-2/feeds/{feedId}/read', 'verb' => 'PUT', 'postfix' => 'v1.2'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'feed_api#update', 'url' => '/api/{apiVersion}/feeds/update', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
// items
['name' => 'item_api#index', 'url' => '/api/{apiVersion}/items', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'item_api#updated', 'url' => '/api/{apiVersion}/items/updated', 'verb' => 'GET', 'requirements' => ['apiVersion' => 'v1-[23]']],
['name' => 'item_api#read', 'url' => '/api/{apiVersion}/items/{itemId}/read', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#read', 'url' => '/api/v1-2/items/{itemId}/read', 'verb' => 'PUT', 'postfix' => 'v1.2'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#unread', 'url' => '/api/{apiVersion}/items/{itemId}/unread', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#unread', 'url' => '/api/v1-2/items/{itemId}/unread', 'verb' => 'PUT', 'postfix' => 'v1.2'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#read_all', 'url' => '/api/{apiVersion}/items/read', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#read_all', 'url' => '/api/v1-2/items/read', 'verb' => 'PUT', 'postfix' => 'v1.2'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#read_multiple_by_ids', 'url' => '/api/{apiVersion}/items/read/multiple', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#read_multiple', 'url' => '/api/v1-2/items/read/multiple', 'verb' => 'PUT'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#unread_multiple_by_ids', 'url' => '/api/{apiVersion}/items/unread/multiple', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#unread_multiple', 'url' => '/api/v1-2/items/unread/multiple', 'verb' => 'PUT'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#star_by_item_id', 'url' => '/api/{apiVersion}/items/{itemId}/star', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#star', 'url' => '/api/v1-2/items/{feedId}/{guidHash}/star', 'verb' => 'PUT'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#unstar_by_item_id', 'url' => '/api/{apiVersion}/items/{itemId}/unstar', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#unstar', 'url' => '/api/v1-2/items/{feedId}/{guidHash}/unstar', 'verb' => 'PUT'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#star_multiple_by_item_ids', 'url' => '/api/{apiVersion}/items/star/multiple', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#star_multiple', 'url' => '/api/v1-2/items/star/multiple', 'verb' => 'PUT'], // Backward compatibility. Corrected HTTP method as of v1.3
['name' => 'item_api#unstar_multiple_by_item_ids', 'url' => '/api/{apiVersion}/items/unstar/multiple', 'verb' => 'POST', 'requirements' => ['apiVersion' => 'v1-3']],
['name' => 'item_api#unstar_multiple', 'url' => '/api/v1-2/items/unstar/multiple', 'verb' => 'PUT'], // Backward compatibility. Corrected HTTP method as of v1.3
// API 2 // API 2
['name' => 'folder_api_v2#create', 'url' => '/api/v2/folders', 'verb' => 'POST'], ['name' => 'folder_api_v2#create', 'url' => '/api/v2/folders', 'verb' => 'POST'],
['name' => 'folder_api_v2#update', 'url' => '/api/v2/folders/{folderId}', 'verb' => 'PATCH'], ['name' => 'folder_api_v2#update', 'url' => '/api/v2/folders/{folderId}', 'verb' => 'PATCH'],
['name' => 'folder_api_v2#delete', 'url' => '/api/v2/folders/{folderId}', 'verb' => 'DELETE'], ['name' => 'folder_api_v2#delete', 'url' => '/api/v2/folders/{folderId}', 'verb' => 'DELETE'],
// API 1.3
['name' => 'utility_api#version', 'url' => '/api/v1-3/version', 'verb' => 'GET'],
['name' => 'utility_api#status', 'url' => '/api/v1-3/status', 'verb' => 'GET'],
['name' => 'utility_api#before_update', 'url' => '/api/v1-3/cleanup/before-update', 'verb' => 'GET'],
['name' => 'utility_api#after_update', 'url' => '/api/v1-3/cleanup/after-update', 'verb' => 'GET'],
['name' => 'utility_api#preflighted_cors', 'url' => '/api/v1-3/{path}', 'verb' => 'OPTIONS', 'requirements' => ['path' => '.+']],
// folders
['name' => 'folder_api#index', 'url' => '/api/v1-3/folders', 'verb' => 'GET'],
['name' => 'folder_api#create', 'url' => '/api/v1-3/folders', 'verb' => 'POST'],
['name' => 'folder_api#update', 'url' => '/api/v1-3/folders/{folderId}', 'verb' => 'PUT'],
['name' => 'folder_api#delete', 'url' => '/api/v1-3/folders/{folderId}', 'verb' => 'DELETE'],
['name' => 'folder_api#read', 'url' => '/api/v1-3/folders/{folderId}/read', 'verb' => 'POST'],
// feeds
['name' => 'feed_api#index', 'url' => '/api/v1-3/feeds', 'verb' => 'GET'],
['name' => 'feed_api#create', 'url' => '/api/v1-3/feeds', 'verb' => 'POST'],
['name' => 'feed_api#update', 'url' => '/api/v1-3/feeds/{feedId}', 'verb' => 'PUT'],
['name' => 'feed_api#delete', 'url' => '/api/v1-3/feeds/{feedId}', 'verb' => 'DELETE'],
['name' => 'feed_api#from_all_users', 'url' => '/api/v1-3/feeds/all', 'verb' => 'GET'],
['name' => 'feed_api#move', 'url' => '/api/v1-3/feeds/{feedId}/move', 'verb' => 'POST'],
['name' => 'feed_api#rename', 'url' => '/api/v1-3/feeds/{feedId}/rename', 'verb' => 'POST'],
['name' => 'feed_api#read', 'url' => '/api/v1-3/feeds/{feedId}/read', 'verb' => 'POST'],
['name' => 'feed_api#update', 'url' => '/api/v1-3/feeds/update', 'verb' => 'GET'],
// items
['name' => 'item_api#index', 'url' => '/api/v1-3/items', 'verb' => 'GET'],
['name' => 'item_api#updated', 'url' => '/api/v1-3/items/updated', 'verb' => 'GET'],
['name' => 'item_api#read', 'url' => '/api/v1-3/items/{itemId}/read', 'verb' => 'POST'],
['name' => 'item_api#unread', 'url' => '/api/v1-3/items/{itemId}/unread', 'verb' => 'POST'],
['name' => 'item_api#read_all', 'url' => '/api/v1-3/items/read', 'verb' => 'POST'],
['name' => 'item_api#read_multiple_by_ids', 'url' => '/api/v1-3/items/read/multiple', 'verb' => 'POST'],
['name' => 'item_api#unread_multiple_by_ids', 'url' => '/api/v1-3/items/unread/multiple', 'verb' => 'POST'],
['name' => 'item_api#star_by_item_id', 'url' => '/api/v1-3/items/{itemId}/star', 'verb' => 'POST'],
['name' => 'item_api#unstar_by_item_id', 'url' => '/api/v1-3/items/{itemId}/unstar', 'verb' => 'POST'],
['name' => 'item_api#star_multiple_by_item_ids', 'url' => '/api/v1-3/items/star/multiple', 'verb' => 'POST'],
['name' => 'item_api#unstar_multiple_by_item_ids', 'url' => '/api/v1-3/items/unstar/multiple', 'verb' => 'POST'],
// API 1.2
['name' => 'utility_api#version', 'url' => '/api/v1-2/version', 'verb' => 'GET'],
['name' => 'utility_api#status', 'url' => '/api/v1-2/status', 'verb' => 'GET'],
['name' => 'utility_api#before_update', 'url' => '/api/v1-2/cleanup/before-update', 'verb' => 'GET'],
['name' => 'utility_api#after_update', 'url' => '/api/v1-2/cleanup/after-update', 'verb' => 'GET'],
['name' => 'utility_api#preflighted_cors', 'url' => '/api/v1-2/{path}', 'verb' => 'OPTIONS', 'requirements' => ['path' => '.+']],
// folders
['name' => 'folder_api#index', 'url' => '/api/v1-2/folders', 'verb' => 'GET'],
['name' => 'folder_api#create', 'url' => '/api/v1-2/folders', 'verb' => 'POST'],
['name' => 'folder_api#update', 'url' => '/api/v1-2/folders/{folderId}', 'verb' => 'PUT'],
['name' => 'folder_api#delete', 'url' => '/api/v1-2/folders/{folderId}', 'verb' => 'DELETE'],
['name' => 'folder_api#read', 'url' => '/api/v1-2/folders/{folderId}/read', 'verb' => 'PUT'], // FIXME: POST would be more correct
// feeds
['name' => 'feed_api#index', 'url' => '/api/v1-2/feeds', 'verb' => 'GET'],
['name' => 'feed_api#create', 'url' => '/api/v1-2/feeds', 'verb' => 'POST'],
['name' => 'feed_api#update', 'url' => '/api/v1-2/feeds/{feedId}', 'verb' => 'PUT'],
['name' => 'feed_api#delete', 'url' => '/api/v1-2/feeds/{feedId}', 'verb' => 'DELETE'],
['name' => 'feed_api#from_all_users', 'url' => '/api/v1-2/feeds/all', 'verb' => 'GET'],
['name' => 'feed_api#move', 'url' => '/api/v1-2/feeds/{feedId}/move', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'feed_api#rename', 'url' => '/api/v1-2/feeds/{feedId}/rename', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'feed_api#read', 'url' => '/api/v1-2/feeds/{feedId}/read', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'feed_api#update', 'url' => '/api/v1-2/feeds/update', 'verb' => 'GET'],
// items
['name' => 'item_api#index', 'url' => '/api/v1-2/items', 'verb' => 'GET'],
['name' => 'item_api#updated', 'url' => '/api/v1-2/items/updated', 'verb' => 'GET'],
['name' => 'item_api#read', 'url' => '/api/v1-2/items/{itemId}/read', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#unread', 'url' => '/api/v1-2/items/{itemId}/unread', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#read_all', 'url' => '/api/v1-2/items/read', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#read_multiple', 'url' => '/api/v1-2/items/read/multiple', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#unread_multiple', 'url' => '/api/v1-2/items/unread/multiple', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#star', 'url' => '/api/v1-2/items/{feedId}/{guidHash}/star', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#unstar', 'url' => '/api/v1-2/items/{feedId}/{guidHash}/unstar', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#star_multiple', 'url' => '/api/v1-2/items/star/multiple', 'verb' => 'PUT'], // FIXME: POST would be more correct
['name' => 'item_api#unstar_multiple', 'url' => '/api/v1-2/items/unstar/multiple', 'verb' => 'PUT'], // FIXME: POST would be more correct
]]; ]];

6
babel.config.js Normal file
View File

@@ -0,0 +1,6 @@
module.exports = {
plugins: [
'@babel/plugin-syntax-dynamic-import',
],
presets: ['@babel/preset-env', '@babel/preset-typescript'],
}

View File

@@ -40,13 +40,13 @@
"source": "https://github.com/nextcloud/news/" "source": "https://github.com/nextcloud/news/"
}, },
"require": { "require": {
"php": "^7.2 || ~8.0", "php": "~8.0",
"ezyang/htmlpurifier": "^4.14.0", "ezyang/htmlpurifier": "^4.17.0",
"pear/net_url2": "^2.2.2", "pear/net_url2": "^2.2.2",
"riimu/kit-pathjoin": "^1.2.0", "riimu/kit-pathjoin": "^1.2.0",
"debril/feed-io": "^v4.9.12", "debril/feed-io": "v5.3.1",
"arthurhoaro/favicon": "^1.3.3", "arthurhoaro/favicon": "^2.0.0",
"fivefilters/readability.php": "^2.1", "fivefilters/readability.php": "^3.1",
"ext-json": "*", "ext-json": "*",
"ext-simplexml": "*", "ext-simplexml": "*",
"ext-libxml": "*", "ext-libxml": "*",
@@ -54,15 +54,16 @@
"ext-curl": "*" "ext-curl": "*"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "9.5.*", "phpunit/phpunit": "9.6.*",
"squizlabs/php_codesniffer": "^3.6.2", "squizlabs/php_codesniffer": "^3.9.2",
"phpstan/phpstan": "^1.4.0", "phpstan/phpstan": "^1.10.60",
"phpstan/phpstan-doctrine": "^1.2.11", "phpstan/phpstan-doctrine": "^1.4.3",
"phpstan/phpstan-strict-rules": "^1.1.0", "phpstan/phpstan-strict-rules": "^1.5.2",
"phpstan/phpstan-phpunit": "^1.0.0", "phpstan/phpstan-phpunit": "^1.3.16",
"phpstan/extension-installer": "^1.1.0", "phpstan/extension-installer": "^1.3.1",
"phpstan/phpstan-deprecation-rules": "^1.1",
"guzzlehttp/guzzle": "^7.3.0", "guzzlehttp/guzzle": "^7.3.0",
"doctrine/dbal": "^3.3.2", "doctrine/dbal": "^3.8.0",
"symfony/console": "^4.4.19", "symfony/console": "^4.4.19",
"psr/log": "^1.1.0" "psr/log": "^1.1.0"
}, },

1337
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,739 +0,0 @@
/**
* Nextcloud - News
*
* This file is licensed under the Affero General Public License version 3 or
* later. See the COPYING file.
*
* @author Bernhard Posselt <dev@bernhard-posselt.com>
* @copyright Bernhard Posselt 2014
*/
#app-content {
width: 100%;
flex-basis: auto;
}
#app-navigation:not(.hidden) + #app-content {
width: calc(100% - 300px);
}
#app-content #searchresults {
display: none;
}
#app-content #text-content {
padding: 20px;
}
#app-content #text-content h1 {
font-size: 18pt;
margin-bottom: 15px;
}
#app-content #text-content p {
font-size: 11pt;
}
#app-content .no-feeds-available {
text-align: center;
color: var(--color-text-lighter);
font-size: 16pt;
min-height: 100%;
height: 100%;
width: 100%;
display: table;
}
#app-content .no-feeds-available p {
vertical-align: middle;
display: table-cell;
}
#articles {
width: 100%;
}
/**
* Podcast settings
*/
#app-content .podcast {
height: 50px;
z-index: 10000;
background-color: #111;
display: flex;
position: sticky;
top: 50px;
align-items: center;
}
#app-content .podcast audio {
display: block;
width: calc(100% - 60px);
border-radius: 0;
height: inherit;
}
#app-content .podcast button,
#app-content .podcast a {
display: block;
float: left;
height: 30px;
width: 30px;
border: 0;
border-radius: 0;
margin: 0;
background-color: transparent;
background-repeat: no-repeat;
background-position: center;
}
#app-content .podcast-close {
background-size: 25px;
background-image: url('../img/close.svg');
}
#app-content .podcast-download {
transform: rotate(270deg);
background-size: 20px;
background-image: url('../img/arrow-white.svg');
}
#app-content .podcast audio::-webkit-media-controls-enclosure {
max-width: inherit;
}
#app-content .podcast.fixed {
position: absolute;
right: 0;
left: 0;
}
#notification a {
text-decoration: underline;
color: blue;
}
#notification li {
display: block;
}
/**
* Content styles
*/
#app-content.loading-content {
background: url('../img/loading.gif') no-repeat;
background-color: var(--color-main-background);
background-position: calc(50% - 16px) calc(50% - 16px);
/* Overrides the snap.js animation making the loading icon to fly in app-content. */
transition: none !important;
-webkit-transition: none !important;
-moz-webkit-transition: none !important;
}
#app-content.loading-content #app-content-wrapper {
display: none;
}
#app-content:not(.explore) #articles:after {
content: '';
display: block;
height: 100%;
background-repeat: no-repeat;
}
#app-content .autopaging: #articles:after {
content: '';
background-image: url('../img/loading.gif');
background-position: calc(50% - 16px) calc(50% - 16px);
/* Overrides the snap.js animation making the loading icon to fly in app-content. */
transition: none !important;
-webkit-transition: none !important;
-moz-webkit-transition: none !important;
}
#app-content .finished-auto-paging #articles:after {
background: var(--color-main-background);
}
/**
*
*/
.pull-to-refresh {
height: 0;
overflow: hidden;
text-align: center;
background-image: -moz-linear-gradient(top, #eee 0%, #fefefe 100%);
background-image: -webkit-linear-gradient(top, #eee 0%, #fefefe 100%);
background-image: -ms-linear-gradient(top, #eee 0%, #fefefe 100%);
background-image: linear-gradient(top, #eee 0%, #fefefe 100%);
}
.pull-to-refresh.show-pull-to-refresh {
transition: all 0.5s ease;
padding-top: 10px;
height: 44px;
}
/**
* Rules for a single feed item
*/
#app-content .only-in-expanded {
display: block;
}
#app-content .compact .only-in-expanded {
display: none;
}
#app-content .only-in-compact {
display: none;
}
#app-content .compact .only-in-compact {
display: block;
}
#app-content .item {
cursor: default;
border-bottom: 1px solid var(--color-border);
}
#app-content .item.active {
background-image: linear-gradient(to right, orange 0, orange 2px, transparent 2px);
}
#app-content .compact li.item div.utils:hover {
background-color: var(--color-background-hover);
}
#app-content :not(.compact) .item {
}
#app-content .item:last-child {
border-bottom: 0;
}
/**
* Utils panel
*/
#app-content .utils {
width: 100%;
line-height: 52px;
box-sizing: border-box;
padding: 15px 50px 0 15px;
position: relative;
}
#app-content .compact .utils {
cursor: pointer;
padding: 0 15px 0 0;
-webkit-position: sticky;
position: sticky;
top: 50px;
background-color: var(--color-main-background);
min-height: 43px;
}
/* Only apply opacity to the util bar, not the dropdown */
#app-content .compact .utils ul {
opacity: 0.9;
}
#app-content .utils ul {
height: 43px;
list-style-type: none;
display: flex;
margin: 0;
padding: 0;
}
#app-content .compact .util-spacer,
#app-content .compact .util,
#app-content .compact .only-in-compact {
flex: 1 0 auto;
}
#app-content .compact .title {
flex: 1 1 auto;
}
#app-content .open .utils ul {
height: auto;
}
#app-content .utils ul > li {
min-width: 0;
}
#app-content .util-spacer {
width: 25px;
}
#app-content .compact .util-spacer {
width: 5px;
}
@media screen and (max-width: 1024px) {
#app-content .compact .util-spacer {
width: 0;
flex: 0 0 auto;
}
#app-content .item:first-of-type .util-spacer {
width: 28px;
}
}
#app-content .utils li {
line-height: 43px;
vertical-align: middle;
}
#app-content .utils > ul > li:last-child {
padding-right: 0;
}
#app-content .utils > ul > li:first-child {
padding-left: 0;
}
#app-content .utils .util {
padding: 0;
}
#app-content .utils .article-action-plugins {
}
#app-content .utils button,
#app-content .utils .external {
padding: 0;
margin: 0;
height: 43px;
width: 40px;
border: 0;
float: left;
background-color: transparent;
background-size: 100%;
background-repeat: no-repeat;
background-size: 25px;
background-position: center;
}
#app-content .utils .external,
#app-content .utils .menu button,
#app-content .utils .icon-toggle {
display: inline-block;
opacity: 0.3;
}
#app-content .utils .external:hover,
#app-content .utils .menu button:hover,
#app-content .utils .icon-toggle:hover,
#app-content .utils .icon-toggle.keep-unread {
opacity: 1;
}
#app-content .utils .star {
background-image: url('../img/inactive_star.svg');
}
#app-content .utils .starred {
background-image: url('../img/active_star.svg');
}
#app-content .utils .star:hover {
background-image: url('../img/hover_star.svg');
}
#app-content .utils .share {
opacity: .3;
}
#app-content .utils .share:hover {
opacity: 1;
}
#app-content .utils .more button {
opacity: .3;
}
#app-content .utils .more button:hover {
opacity: 1;
}
#app-content .utils .more {
position: relative;
}
#app-content .article-actions {
display: none;
filter: drop-shadow(0 0 5px rgba(150, 150, 150, 0.75));
-webkit-filter: drop-shadow(0 0 5px rgba(150, 150, 150, 0.75));
-moz-filter: drop-shadow(0 0 5px rgba(150, 150, 150, 0.75));
position: absolute;
top: 40px;
border-radius: 3px;
z-index: 1000;
border: 1px solid transparent;
margin: 0;
padding: 0;
}
#app-content .article-actions ul {
display: flex;
float: left;
}
#app-content .article-actions li {
float: left;
width: 40px !important;
}
#app-content #articles:not(.compact) .article-actions {
left: 6px;
}
#app-content #articles:not(.compact) .article-actions:after,
#app-content #articles:not(.compact) .article-actions:before {
left: 20px;
}
#app-content #articles.compact .article-actions {
right: -10px;
}
#app-content #articles.compact .article-actions:after,
#app-content #articles.compact .article-actions:before {
right: 9px;
}
#app-content .article-actions:after,
#app-content .article-actions:before {
bottom: 100%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
#app-content .article-actions:after {
border-color: rgba(255, 255, 255, 0);
border-bottom-color: var(--color-border);
border-width: 5px;
margin-left: -5px;
}
#app-content .article-actions:before {
border-color: rgba(255, 255, 255, 0);
border-bottom-color: var(--color-border);
border-width: 9px;
margin-left: -9px;
}
/**
* Article title
*/
#app-content .utils .title {
width: 100%;
padding-left: 35px;
background-position: 6px 10px;
background-size: 20px 20px;
background-repeat: no-repeat;
}
#app-content .compact .utils .title h1 {
line-height: 1;
}
#app-content .feed-view .utils .title {
background: none !important;
padding-left: 10px;
}
#app-content .utils .title h1 a {
/*text-overflow: ellipsis;*/
white-space: nowrap;
overflow: hidden;
width: 100%;
display: inline-block;
color: var(--color-main-text);
font-weight: bold;
font-size: 16px;
line-height: 1.5;
padding-top: 8px;
min-height: 40px;
}
#app-content .open .title .intro {
display: none;
}
#app-content .title .intro {
color: var(--color-text-lighter);
font-size: 10pt;
font-weight: normal;
margin-left: 20px;
}
#app-content .open .utils .title h1 a {
overflow: auto;
white-space: normal;
}
#app-content .read .utils .title h1 a {
font-weight: normal;
color: var(--color-text-lighter);
}
#app-content .utils .date {
padding: 0 15px;
}
/**
* Expanded content
*/
#app-content .heading {
padding: 25px 0 10px 0;
}
#app-content .heading h1 {
font-size: 19px;
max-width: 770px;
word-wrap: break-word;
}
#app-content .heading a {
font-weight: bold;
color: var(--color-main-text);
text-decoration: none;
margin:0;
}
#app-content .heading a:hover {
text-decoration: underline;
}
#app-content .heading .date {
float: right;
display: inline-block;
font-size: 15px;
padding: 0 10px;
}
#app-content .read .heading a {
font-weight: normal !important;
color: var(--color-text-lighter);
}
#app-content .feed-view .source {
display: none;
}
#app-content .source img {
height: 16px;
display: inline-block;
margin: 0 0 -2px 2px;
}
/**
* Actual content
*/
#app-content .article {
min-height: 69px;
padding: 0 50px 50px 50px;
}
#app-content .compact .article {
display: none;
}
#app-content .open .article {
display: block;
}
/**
* Timestamp
*/
#app-content .subtitle {
color: var(--color-text-lighter);
font-size: 15px;
max-width: 770px;
padding: 25px 0;
}
#app-content .subtitle a {
color: var(--color-text-lighter);
}
#app-content .subtitle a:hover {
text-decoration: underline;
}
#app-content .date {
color: var(--color-text-lighter);
white-space: nowrap;
}
/**
* Author
*/
#app-content .author {
color: var(--color-text-lighter);
font-size: 15px;
}
#app-content .author a {
color: inherit;
}
#app-content .author a:hover {
text-decoration: underline;
}
/**
* Enclosure
*/
#app-content .enclosure {
padding: 20px 0;
max-width: 770px;
margin-bottom: 15px;
}
#app-content .enclosure audio,
#app-content .enclosure video {
width: 100%;
}
#app-content .enclosure video {
background-color: #000;
margin-bottom: 20px;
}
#app-content .enclosure-error {
line-height: 1.5;
height: 40px;
}
/**
* Article body
*/
#app-content .body {
max-width: 770px;
font-size: 14px;
clear: both;
overflow-x: auto;
}
#app-content .body p {
line-height: 1.5;
margin: 7px 0 14px 0;
}
#app-content .body img,
#app-content .body table {
max-width: 100%;
height: auto;
overflow: auto;
word-wrap: break-word;
white-space: normal;
}
#app-content .body iframe {
max-width: 100%;
}
#app-content .body > div > img:first-child,
#app-content .body > div > :first-child > img:first-child {
padding: 0 14px 0 0;
float: left;
}
#app-content .body h1,
#app-content .body h2 {
font-size: 17px;
font-weight: bold;
color: var(--color-main-text);
margin: 21px 0 5px 0;
}
#app-content .body h3 {
font-size: 15px;
font-weight: bold;
color: var(--color-main-text);
margin: 21px 0 0 0;
text-decoration: underline;
}
#app-content .body h4,
#app-content .body h5,
#app-content .body h6 {
font-weight: bold;
}
#app-content .body > div {
margin: 7px 0;
}
#app-content .body a {
color: #0c76ff;
text-decoration: underline;
}
#app-content .body ul {
margin: 7px 0;
padding-left: 14px;
list-style-type: disc;
}
#app-content .body ol {
margin: 7px 0;
padding-left: 21px;
}
#app-content .body ul li {
cursor: default;
line-height: 21px;
}
#app-content .body pre {
padding: 7px 7px 7px 14px;
background-color: var(--color-background-darker);
border: 1px solid var(--color-border-dark);
margin: 7px 0 14px 0;
overflow-y: auto;
}
#app-content .body pre::-webkit-scrollbar {
height: 10px;
}
#app-content .body pre::-webkit-scrollbar-thumb {
background: #333;
}
#app-content .body pre::-webkit-scrollbar-track-piece {
background: #ddd;
}
#app-content .body code,
#app-content .body pre {
font-family: monospace;
font-size: 16px;
}
#app-content .body blockquote {
border-left: 1px solid rgb(210, 210, 210);
margin: 25px 0;
padding: 0 0 0 15px;
font-style: italic;
}
#app-content .body em {
font-style: italic;
opacity: 1;
}
#app-content *[dir=rtl] {
text-align: right;
}

View File

@@ -18,3 +18,8 @@
#app-content .custom-sueddeutsche-de .body img { #app-content .custom-sueddeutsche-de .body img {
float: none !important; float: none !important;
} }
body.theme--dark #app-content .body a, /* NC 24 */
[data-theme-dark] #app-content .body a { /* NC 25 */
color: #9cc7ff;
}

19
css/explore.css Normal file
View File

@@ -0,0 +1,19 @@
/**
* Nextcloud - News
*
* This file is licensed under the Affero General Public License version 3 or
* later. See the COPYING file.
*
* @author Bernhard Posselt <dev@bernhard-posselt.com>
* @copyright 2020, Jan C. Borchardt, https://jancborchardt.net
* @copyright Bernhard Posselt 2014
*/
/**
* Explore styles
*/
.explore #app-content-wrapper {
height: 100%;
}
/*# sourceMappingURL=explore.css.map */

View File

@@ -21,44 +21,37 @@
width: 100%; width: 100%;
padding: 45px 0 45px 45px; padding: 45px 0 45px 45px;
.grid-item { .grid-item {
width: 300px; width: 300px;
border: 2px solid var(--color-border); border: 2px solid var(--color-border);
border-radius: var(--border-radius-large); border-radius: var(--border-radius-large);
margin: 0 24px 24px 0; margin: 0 24px 24px 0;
padding: 24px; padding: 24px;
.explore-title { .explore-title {
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: 0 center; background-position: 0 center;
background-size: 24px; background-size: 24px;
padding-left: 32px; padding-left: 32px;
a { a {
word-wrap: break-word; word-wrap: break-word;
&:hover, &:hover,
&:focus { &:focus {
text-decoration: underline; text-decoration: underline;
} }
} }
} }
.explore-logo { .explore-logo {
text-align: center; text-align: center;
margin-top: 25px; margin-top: 25px;
img { img {
width: 100%; width: 100%;
} }
} }
.explore-subscribe { }
margin-top: 16px;
max-width: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
} }

9
css/merged.scss Normal file
View File

@@ -0,0 +1,9 @@
@import 'explore';
@import 'admin';
@import 'app';
@import 'content';
@import 'custom';
@import 'mobile';
@import 'navigation';
@import 'settings';
@import 'shortcuts';

View File

@@ -1,4 +1,4 @@
@media only screen and (max-width: $breakpoint_mobile) { @media only screen and (max-width: 1024px) {
#app-content .utils .date { #app-content .utils .date {
display: none; display: none;
} }

View File

@@ -7,6 +7,9 @@
* @author Bernhard Posselt <dev@bernhard-posselt.com> * @author Bernhard Posselt <dev@bernhard-posselt.com>
* @copyright Bernhard Posselt 2014 * @copyright Bernhard Posselt 2014
*/ */
#app-navigation {
overflow-y: hidden !important;
}
/* add new feed or folder */ /* add new feed or folder */
/* button */ /* button */
@@ -31,60 +34,6 @@
background-position: 14px center; background-position: 14px center;
} }
/* actual form content */
#app-navigation .add-new-popup {
display: none;
padding: 10px;
width: 100%;
border-top: 1px solid var(--color-border-dark);
border-bottom: 1px solid var(--color-border-dark);
}
#app-navigation input.ng-invalid {
border: 1px solid var(--color-error);
}
#app-navigation .add-new-popup input,
#app-navigation .add-new-popup select {
width: 100%;
height: 36px;
padding: 5px;
margin-right: 0;
}
#app-navigation .add-new-popup select,
#app-navigation #new-feed [name="folderName"] {
width: calc(100% - 36px);
border-right: 0;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
float: left;
}
#app-navigation .add-new-popup .add-new-folder-primary {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
width: 36px;
height: 36px;
margin-left: 0;
margin-right: 0;
}
#app-navigation .add-new-popup .add-new-basicauth-toggle {
padding: 5px 0;
}
#app-navigation .add-new-popup .add-feed-basicauth {
width: 100%;
padding: 0 0 10px;
}
#app-navigation .add-new-popup .error {
padding: 0 0 10px 0;
}
/* navigation */ /* navigation */
#app-navigation ul.with-icon > li > a, #app-navigation ul.with-icon > li > a,
#app-navigation ul.with-icon > li > ul > li > a { #app-navigation ul.with-icon > li > ul > li > a {
@@ -115,7 +64,6 @@
background-image: url('../img/twitter.svg') !important; background-image: url('../img/twitter.svg') !important;
} }
.col-4 { .col-4 {
-ms-flex: 0 0 33.333333%; -ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%; flex: 0 0 33.333333%;
@@ -131,7 +79,7 @@
flex-wrap: wrap; flex-wrap: wrap;
} }
.icon-dropdown{ .icon-dropdown {
background-position: center !important; background-position: center !important;
background-size: 24px; background-size: 24px;
padding: 2em !important; padding: 2em !important;
@@ -142,14 +90,13 @@
.icon-full-text-enabled { .icon-full-text-enabled {
background-image: url('../img/fulltext.svg'); background-image: url('../img/fulltext.svg');
background-size: 50%; background-size: 50%;
opacity: .5; opacity: 0.5;
} }
.icon-full-text-disabled { .icon-full-text-disabled {
background-image: url('../img/nonfulltext.svg'); background-image: url('../img/nonfulltext.svg');
background-size: 50%; background-size: 50%;
opacity: .5; opacity: 0.5;
} }
#app-navigation .unread > a { #app-navigation .unread > a {
@@ -187,10 +134,10 @@
white-space: nowrap; white-space: nowrap;
} }
#app-navigation .error-message:hover .title // #app-navigation .error-message:hover .title
#app-navigation .error-message:hover .message { // #app-navigation .error-message:hover .message {
} // }
#app-navigation .error-message button { #app-navigation .error-message button {
top: 0; top: 0;
@@ -206,7 +153,7 @@
background-image: url('../img/close.svg'); background-image: url('../img/close.svg');
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: right 5px top 5px; background-position: right 5px top 5px;
opacity: .9; opacity: 0.9;
} }
#app-navigation .error-message button:hover { #app-navigation .error-message button:hover {
@@ -222,7 +169,7 @@
#app-navigation .animate-show.ng-hide-add-active, #app-navigation .animate-show.ng-hide-add-active,
#app-navigation .animate-show.ng-hide-remove-active { #app-navigation .animate-show.ng-hide-remove-active {
transition: .2s linear opacity; transition: 0.2s linear opacity;
} }
#app-navigation .animate-show { #app-navigation .animate-show {
@@ -241,8 +188,8 @@
transform: rotate(180deg); transform: rotate(180deg);
} }
#app-navigation .feed-normal-ordering { // #app-navigation .feed-normal-ordering {
} // }
#app-navigation .icon-pinned { #app-navigation .icon-pinned {
background-image: url('../img/pinned.svg'); background-image: url('../img/pinned.svg');
@@ -260,6 +207,10 @@
background-image: url('../img/updatemodeunread.svg'); background-image: url('../img/updatemodeunread.svg');
} }
#app-navigation .icon-arrow {
background-image: url('../img/arrow.svg');
}
#app-navigation .updateerror a { #app-navigation .updateerror a {
background-color: var(--color-warning) !important; background-color: var(--color-warning) !important;
} }

View File

@@ -36,7 +36,7 @@
padding-left: 18px; padding-left: 18px;
} }
#app-settings-content label input[type="checkbox"] { #app-settings-content label input[type='checkbox'] {
margin-left: -18px; margin-left: -18px;
max-width: 16px; max-width: 16px;
} }

View File

@@ -1,5 +1,5 @@
#app-shortcuts { // #app-shortcuts {
} // }
#app-shortcuts table { #app-shortcuts table {
border-collapse: collapse; border-collapse: collapse;

11
docker/Dockerfile Normal file
View File

@@ -0,0 +1,11 @@
# https://hub.docker.com/_/nextcloud/
FROM nextcloud:29-apache
#FROM ghcr.io/pbek/nextcloud-docker-pre-apache:latest
#FROM ghcr.io/digital-blueprint/nextcloud-docker-pre-apache:latest
COPY entrypoint.sh /
RUN deluser www-data
RUN useradd -u 1000 -ms /bin/bash www-data
RUN usermod -a -G www-data www-data
RUN mkdir /var/www/deploy

28
docker/Makefile Normal file
View File

@@ -0,0 +1,28 @@
.PHONY: bash check-code show-log test build
# Try to use "docker compose" and fall back to "docker-compose" if not available
DOCKER_COMPOSE := $(shell docker compose > /dev/null && echo docker compose || echo docker-compose)
build:
$(DOCKER_COMPOSE) build
ls-db:
$(DOCKER_COMPOSE) run --rm app su -c "ls -hal data/mydb.db*" www-data
fetch-db:
$(DOCKER_COMPOSE) run --rm app su -c "cp data/mydb.db apps/news" www-data
push-db:
$(DOCKER_COMPOSE) run --rm app su -c "cp apps/news/mydb.db* data" www-data
bash:
$(DOCKER_COMPOSE) run --rm app su -c "bash" www-data
check-code:
$(DOCKER_COMPOSE) run --rm app su -c "./occ app:check-code news" www-data
show-log:
$(DOCKER_COMPOSE) run --rm app tail -f /var/www/html/data/nextcloud.log
#test:
# $(DOCKER_COMPOSE) run --rm app su -c "cd custom_apps/news && make test" www-data

29
docker/README.md Normal file
View File

@@ -0,0 +1,29 @@
# Nextcloud Development Environment
## Installation / Running
```bash
make build
docker compose up
```
Afterward you should be able to open <http://localhost:8081/index.php/apps/news> (admin/admin) to
log in to your Nextcloud instance.
## Check nextcloud.log
For debugging, you can show the `nextcloud.log`:
```bash
make show-log
```
There also is a [logging web interface](http://localhost:8081/index.php/settings/admin/logging).
## Tip
In case something is broken try to reset the container:
```bash
docker compose build; docker compose down; docker volume rm nextcloud-news_nextcloud
```

19
docker/docker-compose.yml Normal file
View File

@@ -0,0 +1,19 @@
name: nextcloud-news
services:
app:
build: .
ports:
- 8081:80
environment:
- NEXTCLOUD_ADMIN_USER=admin
- NEXTCLOUD_ADMIN_PASSWORD=admin
- SQLITE_DATABASE=mydb
- NEXTCLOUD_TRUSTED_DOMAINS=localhost 127.0.0.1
volumes:
- nextcloud:/var/www/html
- ..:/var/www/html/custom_apps/news
- ./news.config.php:/var/www/html/config/news.config.php
volumes:
nextcloud:

198
docker/entrypoint.sh Executable file
View File

@@ -0,0 +1,198 @@
#!/bin/sh
set -eu
chown www-data:root /var/www/deploy
chown www-data:root /var/www/html/custom_apps
chown www-data:root /var/www/html/config
# version_greater A B returns whether A > B
version_greater() {
[ "$(printf '%s\n' "$@" | sort -t '.' -n -k1,1 -k2,2 -k3,3 -k4,4 | head -n 1)" != "$1" ]
}
# return true if specified directory is empty
directory_empty() {
[ -z "$(ls -A "$1/")" ]
}
run_as() {
if [ "$(id -u)" = 0 ]; then
su -p www-data -s /bin/sh -c "$1"
else
sh -c "$1"
fi
}
# usage: file_env VAR [DEFAULT]
# ie: file_env 'XYZ_DB_PASSWORD' 'example'
# (will allow for "$XYZ_DB_PASSWORD_FILE" to fill in the value of
# "$XYZ_DB_PASSWORD" from a file, especially for Docker's secrets feature)
file_env() {
local var="$1"
local fileVar="${var}_FILE"
local def="${2:-}"
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
exit 1
fi
if [ -n "${varValue}" ]; then
export "$var"="${varValue}"
elif [ -n "${fileVarValue}" ]; then
export "$var"="$(cat "${fileVarValue}")"
elif [ -n "${def}" ]; then
export "$var"="$def"
fi
unset "$fileVar"
}
if expr "$1" : "apache" 1>/dev/null; then
if [ -n "${APACHE_DISABLE_REWRITE_IP+x}" ]; then
a2disconf remoteip
fi
fi
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
if [ -n "${REDIS_HOST+x}" ]; then
echo "Configuring Redis as session handler"
{
echo 'session.save_handler = redis'
# check if redis host is an unix socket path
if [ "$(echo "$REDIS_HOST" | cut -c1-1)" = "/" ]; then
if [ -n "${REDIS_HOST_PASSWORD+x}" ]; then
echo "session.save_path = \"unix://${REDIS_HOST}?auth=${REDIS_HOST_PASSWORD}\""
else
echo "session.save_path = \"unix://${REDIS_HOST}\""
fi
# check if redis password has been set
elif [ -n "${REDIS_HOST_PASSWORD+x}" ]; then
echo "session.save_path = \"tcp://${REDIS_HOST}:${REDIS_HOST_PORT:=6379}?auth=${REDIS_HOST_PASSWORD}\""
else
echo "session.save_path = \"tcp://${REDIS_HOST}:${REDIS_HOST_PORT:=6379}\""
fi
} > /usr/local/etc/php/conf.d/redis-session.ini
fi
installed_version="0.0.0.0"
if [ -f /var/www/html/version.php ]; then
# shellcheck disable=SC2016
installed_version="$(php -r 'require "/var/www/html/version.php"; echo implode(".", $OC_Version);')"
fi
# shellcheck disable=SC2016
image_version="$(php -r 'require "/usr/src/nextcloud/version.php"; echo implode(".", $OC_Version);')"
if version_greater "$installed_version" "$image_version"; then
echo "Can't start Nextcloud because the version of the data ($installed_version) is higher than the docker image version ($image_version) and downgrading is not supported. Are you sure you have pulled the newest image version?"
exit 1
fi
if version_greater "$image_version" "$installed_version"; then
echo "Initializing nextcloud $image_version ..."
if [ "$installed_version" != "0.0.0.0" ]; then
echo "Upgrading nextcloud from $installed_version ..."
run_as 'php /var/www/html/occ app:list' | sed -n "/Enabled:/,/Disabled:/p" > /tmp/list_before
fi
if [ "$(id -u)" = 0 ]; then
rsync_options="-rlDog --chown www-data:root"
else
rsync_options="-rlD"
fi
rsync $rsync_options --delete --exclude-from=/upgrade.exclude /usr/src/nextcloud/ /var/www/html/
for dir in config data custom_apps themes; do
if [ ! -d "/var/www/html/$dir" ] || directory_empty "/var/www/html/$dir"; then
rsync $rsync_options --include "/$dir/" --exclude '/*' /usr/src/nextcloud/ /var/www/html/
fi
done
rsync $rsync_options --include '/version.php' --exclude '/*' /usr/src/nextcloud/ /var/www/html/
echo "Initializing finished"
#install
if [ "$installed_version" = "0.0.0.0" ]; then
echo "New nextcloud instance"
file_env NEXTCLOUD_ADMIN_PASSWORD
file_env NEXTCLOUD_ADMIN_USER
if [ -n "${NEXTCLOUD_ADMIN_USER+x}" ] && [ -n "${NEXTCLOUD_ADMIN_PASSWORD+x}" ]; then
# shellcheck disable=SC2016
install_options='-n --admin-user "$NEXTCLOUD_ADMIN_USER" --admin-pass "$NEXTCLOUD_ADMIN_PASSWORD"'
if [ -n "${NEXTCLOUD_DATA_DIR+x}" ]; then
# shellcheck disable=SC2016
install_options=$install_options' --data-dir "$NEXTCLOUD_DATA_DIR"'
fi
file_env MYSQL_DATABASE
file_env MYSQL_PASSWORD
file_env MYSQL_USER
file_env POSTGRES_DB
file_env POSTGRES_PASSWORD
file_env POSTGRES_USER
install=false
if [ -n "${SQLITE_DATABASE+x}" ]; then
echo "Installing with SQLite database"
# shellcheck disable=SC2016
install_options=$install_options' --database-name "$SQLITE_DATABASE"'
install=true
elif [ -n "${MYSQL_DATABASE+x}" ] && [ -n "${MYSQL_USER+x}" ] && [ -n "${MYSQL_PASSWORD+x}" ] && [ -n "${MYSQL_HOST+x}" ]; then
echo "Installing with MySQL database"
# shellcheck disable=SC2016
install_options=$install_options' --database mysql --database-name "$MYSQL_DATABASE" --database-user "$MYSQL_USER" --database-pass "$MYSQL_PASSWORD" --database-host "$MYSQL_HOST"'
install=true
elif [ -n "${POSTGRES_DB+x}" ] && [ -n "${POSTGRES_USER+x}" ] && [ -n "${POSTGRES_PASSWORD+x}" ] && [ -n "${POSTGRES_HOST+x}" ]; then
echo "Installing with PostgreSQL database"
# shellcheck disable=SC2016
install_options=$install_options' --database pgsql --database-name "$POSTGRES_DB" --database-user "$POSTGRES_USER" --database-pass "$POSTGRES_PASSWORD" --database-host "$POSTGRES_HOST"'
install=true
fi
if [ "$install" = true ]; then
echo "starting nextcloud installation"
max_retries=10
try=0
until run_as "php /var/www/html/occ maintenance:install $install_options" || [ "$try" -gt "$max_retries" ]
do
echo "retrying install..."
try=$((try+1))
sleep 10s
done
if [ "$try" -gt "$max_retries" ]; then
echo "installing of nextcloud failed!"
exit 1
fi
if [ -n "${NEXTCLOUD_TRUSTED_DOMAINS+x}" ]; then
echo "setting trusted domains…"
NC_TRUSTED_DOMAIN_IDX=1
for DOMAIN in $NEXTCLOUD_TRUSTED_DOMAINS ; do
DOMAIN=$(echo "$DOMAIN" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')
run_as "php /var/www/html/occ config:system:set trusted_domains $NC_TRUSTED_DOMAIN_IDX --value=$DOMAIN"
NC_TRUSTED_DOMAIN_IDX=$(($NC_TRUSTED_DOMAIN_IDX+1))
done
fi
else
echo "running web-based installer on first connect!"
fi
fi
#upgrade
else
run_as 'php /var/www/html/occ upgrade'
run_as 'php /var/www/html/occ app:list' | sed -n "/Enabled:/,/Disabled:/p" > /tmp/list_after
echo "The following apps have been disabled:"
diff /tmp/list_before /tmp/list_after | grep '<' | cut -d- -f2 | cut -d: -f1
rm -f /tmp/list_before /tmp/list_after
fi
fi
# if we get an error "ln: /var/www/html/apps/news: cannot overwrite directory" we need to remove that directory in the container
run_as 'rm -Rf /var/www/html/apps/news'
run_as 'ln -sfT /var/www/html/custom_apps/news /var/www/html/apps/news'
run_as "php /var/www/html/occ app:enable news"
fi
exec "$@"

1
docker/news.config.php Normal file
View File

@@ -0,0 +1 @@
<?php declare(strict_types=1);

View File

@@ -1,33 +1,73 @@
# Admin # Admin
Welcome to the Admin documentation this page explains some of the configuration options for news.
## System Cron Welcome to the Admin documentation.
Nextcloud uses Cron to run regular jobs, News relies on the Job system to execute the feed updates.
## Administration via OCC
News integrates with Nextclouds command line tool occ.
To get an overview over the available commands simply execute `./occ list news`
In most environments you will have to call occ like this:
```bash
sudo -u www-data php ./occ list news
```
More information about occ here: [Nextcloud Admin Manual](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html)
## Settings
The following sections explain some of the more complicated settings on the admin page.
### System Cron
Nextcloud uses cron to run regular jobs, News relies on the Job system to execute the feed updates.
Alternatively you may use an [external updater](https://nextcloud.github.io/news/clients/#update-clients), in this case you need to disable the system cron in the settings. Alternatively you may use an [external updater](https://nextcloud.github.io/news/clients/#update-clients), in this case you need to disable the system cron in the settings.
## Auto purge count ### Auto purge count
This value represents the maximum amount of read items per feed, which won't be deleted by the cleanup job.
For example if the value is 200 there can be maximum 200 read items per feed, unread items are unaffected.
If old articles reappear after being read, try to increase this value.
To disable this feature use -1.
## Explore Service - The default value is 200.
If you are using the News app in your company/community it might be interesting to offer your users a bunch of easily to discover default feeds. You could also create a website where people can add and up-vote news feeds like bigger cloud feed readers like Feedly do it or even convert their APIs into a service for the News app (if someone wants to provide one for the News app, feel free to contact us by creating an issue in the bug tracker). - To disable this feature, use -1.
- Unread and starred items are not deleted.
Auto purging automatically removes the oldest read items of every feed after every update.
The value you enter here is used as the limit of read items per feed, unless the feed comes with more items in it's feed.
The individual limit per feed is only adjusted when it's bigger. Let's say last feed update came with 210 items,
then that will be the limit for that feed as long as no bigger update with more items is fetched.
In this case the limit will be 210 instead of 200, for that feed.
This is needed to prevent items from reappearing in the feed.
### Purge unread items
This changes the behavior of the auto purging to also purge unread items. This is useful if you have users with a lot of unread items.
**Starred items are always kept.**
### Explore Service
If you are using the News app in your company/community, it might be interesting to offer your users a bunch of easily to discover default feeds. You could also create a website where people can add and up-vote news feeds like bigger cloud feed readers like Feedly do it or even convert their APIs into a service for the News app (if someone wants to provide one for the News app, feel free to contact us by creating an issue in the bug tracker).
The URL should be a path to a directory which contains a JSON file in the format of **feeds.LANG_CODE.json** where LANG_CODE is a two character language code (e.g. **en** or **de**). The URL should be a path to a directory which contains a JSON file in the format of **feeds.LANG_CODE.json** where LANG_CODE is a two character language code (e.g. **en** or **de**).
For example, entering the URL **https://domain.com/directory** as explore URL will produce the following request for German users: For example, entering the URL **<https://domain.com/directory>** as explore URL will produce the following request for German users:
GET https://domain.com/directory/feeds.de.json GET https://domain.com/directory/feeds.de.json
**Do not forget to implement [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS) in your API, otherwise the request will fail!** **Do not forget to implement [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS) in your API, otherwise the request will fail!**
## Update Interval ### Update Interval
The update interval is used to determine when the next update of all feeds should be done.
You can configure this interval as an administrator. The update interval is used to determine when the next update of all feeds should be done.
By default, the value is set to 3600 seconds (1 hour) You can configure this interval as an administrator.
The new value is only applied after the next run of the updater.
#### What is a good update interval?
### What is a good update interval?
That depends on your individual needs. That depends on your individual needs.
Please keep in mind that the lower you set your update interval, the more traffic is generated. Please keep in mind that the lower you set your update interval, the more traffic is generated.
### Can I set individual update intervals per feed/user? #### Can I set individual update intervals per feed/user?
No, the job framework of Nextcloud is pretty simple.
No, that is not possible.

View File

@@ -23,6 +23,7 @@ You have to design your app with these things in mind!:
* **Use a library to compare versions, ideally one that uses semantic versioning** * **Use a library to compare versions, ideally one that uses semantic versioning**
## Authentication & Basics ## Authentication & Basics
Because REST is stateless you have to send user and password each time you access the API. Therefore running Nextcloud **with SSL is highly recommended** otherwise **everyone in your network can log your credentials**. Because REST is stateless you have to send user and password each time you access the API. Therefore running Nextcloud **with SSL is highly recommended** otherwise **everyone in your network can log your credentials**.
The base URL for all calls is: The base URL for all calls is:
@@ -42,11 +43,13 @@ where $CREDENTIALS is:
base64(USER:PASSWORD) base64(USER:PASSWORD)
## How To Sync ## How To Sync
This is a small overview over how you should sync your articles with the Nextcloud News app. For more fine-grained details about the API see further down. This is a small overview over how you should sync your articles with the Nextcloud News app. For more fine-grained details about the API see further down.
All routes are given relative to the base API url (e.g.: https://yournextcloud.com/index.php/apps/news/api/v1-2) All routes are given relative to the base API url (e.g.: <https://yournextcloud.com/index.php/apps/news/api/v1-2>)
### Initial Sync ### Initial Sync
The intial sync happens, when a user adds a Nextcloud account in your app. In that case you should fetch all feeds, folders and unread or starred articles from the News app. Do not fetch all articles, not only because it syncs faster, but also because the user is primarily interested in unread articles. To fetch all unread and starred articles, you must call 4 routes: The intial sync happens, when a user adds a Nextcloud account in your app. In that case you should fetch all feeds, folders and unread or starred articles from the News app. Do not fetch all articles, not only because it syncs faster, but also because the user is primarily interested in unread articles. To fetch all unread and starred articles, you must call 4 routes:
* **unread articles**: GET /items?type=3&getRead=false&batchSize=-1 * **unread articles**: GET /items?type=3&getRead=false&batchSize=-1
@@ -57,6 +60,7 @@ The intial sync happens, when a user adds a Nextcloud account in your app. In th
The JSON response structures can be viewed further down. The JSON response structures can be viewed further down.
### Syncing ### Syncing
When syncing, you want to push read/unread and starred/unstarred items to the server and receive new and updated items, feeds and folders. To do that, call the following routes: When syncing, you want to push read/unread and starred/unstarred items to the server and receive new and updated items, feeds and folders. To do that, call the following routes:
* **Notify the News app of unread articles**: PUT /items/unread/multiple {"items": [1, 3, 5] } * **Notify the News app of unread articles**: PUT /items/unread/multiple {"items": [1, 3, 5] }
@@ -67,31 +71,32 @@ When syncing, you want to push read/unread and starred/unstarred items to the se
* **Get new feeds**: GET /feeds * **Get new feeds**: GET /feeds
* **Get new items and modified items**: GET /items/updated?lastModified=12123123123&type=3 * **Get new items and modified items**: GET /items/updated?lastModified=12123123123&type=3
## Accessing API from a web application ## Accessing API from a web application
**News 1.401** implements CORS which allows web applications to access the API. **To access the API in a webapp you need to send the correct authorization header instead of simply putting auth data into the URL!**. An example request in jQuery would look like this: **News 1.401** implements CORS which allows web applications to access the API. **To access the API in a webapp you need to send the correct authorization header instead of simply putting auth data into the URL!**. An example request in jQuery would look like this:
```js ```js
$.ajax({ $.ajax({
type: 'GET', type: 'GET',
url: 'https://yournextcloud.com/index.php/apps/news/api/v1-2/version', url: 'https://yournextcloud.com/index.php/apps/news/api/v1-2/version',
contentType: 'application/json', contentType: 'application/json',
success: function (response) { success: function (response) {
// handle success // handle success
}, },
error: function () { error: function () {
// handle errors // handle errors
}, },
beforeSend: function (xhr) { beforeSend: function (xhr) {
var username = 'john'; var username = 'john';
var password = 'doe'; var password = 'doe';
var auth = btoa(username + ':' + password); var auth = btoa(username + ':' + password);
xhr.setRequestHeader('Authorization', 'Basic ' + auth); xhr.setRequestHeader('Authorization', 'Basic ' + auth);
} }
}); });
``` ```
An example with AngularJS would look like this: An example with AngularJS would look like this:
```js ```js
angular.module('YourApp', []) angular.module('YourApp', [])
.config(['$httpProvider', '$provide', function ($httpProvider, $provide) { .config(['$httpProvider', '$provide', function ($httpProvider, $provide) {
@@ -129,14 +134,17 @@ angular.module('YourApp', [])
``` ```
## Input ## Input
In general the input parameters can be in the URL or request body, the App Framework doesnt differentiate between them. In general the input parameters can be in the URL or request body, the App Framework doesnt differentiate between them.
So JSON in the request body like: So JSON in the request body like:
```jsonc
```json
{ {
"id": 3 "id": 3
} }
``` ```
will be treated the same as will be treated the same as
/?id=3 /?id=3
@@ -149,11 +157,13 @@ It is recommended though that you use the following convention:
* **DELETE**: parameters as JSON in the request body * **DELETE**: parameters as JSON in the request body
## Output ## Output
The output is JSON. The output is JSON.
## API Endpoints ## API Endpoints
### Folders ### Folders
#### Get all folders #### Get all folders
* **Status**: Implemented * **Status**: Implemented
@@ -161,7 +171,8 @@ The output is JSON.
* **Route**: /folders * **Route**: /folders
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"folders": [ "folders": [
{ {
@@ -173,22 +184,26 @@ The output is JSON.
``` ```
#### Create a folder #### Create a folder
Creates a new folder and returns a new folder object Creates a new folder and returns a new folder object
* **Status**: Implemented * **Status**: Implemented
* **Method**: POST * **Method**: POST
* **Route**: /folders * **Route**: /folders
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"name": "folder name" "name": "folder name"
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 409**: If the folder exists already * **HTTP 409**: If the folder exists already
* **HTTP 422**: If the folder name is invalid (for instance empty) * **HTTP 422**: If the folder name is invalid (for instance empty)
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"folders": [ "folders": [
{ {
@@ -200,6 +215,7 @@ Creates a new folder and returns a new folder object
``` ```
#### Delete a folder #### Delete a folder
Deletes a folder with the id folderId and all the feeds it contains Deletes a folder with the id folderId and all the feeds it contains
* **Status**: Implemented * **Status**: Implemented
@@ -207,25 +223,28 @@ Deletes a folder with the id folderId and all the feeds it contains
* **Route**: /folders/{folderId} * **Route**: /folders/{folderId}
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the folder does not exist * **HTTP 404**: If the folder does not exist
* **Returns**: nothing * **Returns**: nothing
#### Rename a folder #### Rename a folder
Only the name can be updated Only the name can be updated
* **Status**: Implemented * **Status**: Implemented
* **Method**: PUT * **Method**: PUT
* **Route**: /folders/{folderId} * **Route**: /folders/{folderId}
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"name": "folder name" "name": "folder name"
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 409**: If the folder name does already exist * **HTTP 409**: If the folder name does already exist
* **HTTP 404**: If the folder does not exist * **HTTP 404**: If the folder does not exist
* **HTTP 422**: If the folder name is invalid (for instance empty) * **HTTP 422**: If the folder name is invalid (for instance empty)
* **Returns**: nothing * **Returns**: nothing
#### Mark items of a folder as read #### Mark items of a folder as read
@@ -234,15 +253,17 @@ Only the name can be updated
* **Method**: PUT * **Method**: PUT
* **Route**: /folders/{folderId}/read * **Route**: /folders/{folderId}/read
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
// mark all items read lower than equal that id // mark all items read lower than equal that id
// this is mean to prevent marking items as read which the client/user does not yet know of // this is mean to prevent marking items as read which the client/user does not yet know of
"newestItemId": 10 "newestItemId": 10
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
### Feeds ### Feeds
@@ -261,7 +282,8 @@ The following attributes are **not sanitized** meaning: including them in your w
* **Route**: /feeds * **Route**: /feeds
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"feeds": [ "feeds": [
{ {
@@ -290,23 +312,27 @@ The following attributes are **not sanitized** meaning: including them in your w
``` ```
#### Create a feed #### Create a feed
Creates a new feed and returns the feed Creates a new feed and returns the feed
* **Status**: Implemented * **Status**: Implemented
* **Method**: POST * **Method**: POST
* **Route**: /feeds * **Route**: /feeds
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"url": "http:\/\/www.cyanogenmod.org\/wp-content\/themes\/cyanogenmod\/images\/favicon.ico", "url": "http:\/\/www.cyanogenmod.org\/wp-content\/themes\/cyanogenmod\/images\/favicon.ico",
"folderId": 81 // id of the parent folder, null for root "folderId": 81 // id of the parent folder, null for root
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 409**: If the feed exists already * **HTTP 409**: If the feed exists already
* **HTTP 422**: If the feed cant be read (most likely contains errors) * **HTTP 422**: If the feed cant be read (most likely contains errors)
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"feeds": [ "feeds": [
{ {
@@ -327,6 +353,7 @@ Creates a new feed and returns the feed
``` ```
#### Delete a feed #### Delete a feed
Deletes a feed with the id feedId and all of its items Deletes a feed with the id feedId and all of its items
* **Status**: Implemented * **Status**: Implemented
@@ -334,7 +361,7 @@ Deletes a feed with the id feedId and all of its items
* **Route**: /feeds/{feedId} * **Route**: /feeds/{feedId}
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
#### Move a feed to a different folder #### Move a feed to a different folder
@@ -343,13 +370,15 @@ Deletes a feed with the id feedId and all of its items
* **Method**: PUT * **Method**: PUT
* **Route**: /feeds/{feedId}/move * **Route**: /feeds/{feedId}/move
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"folderId": null // id of the parent folder, null for root "folderId": null // id of the parent folder, null for root
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
#### Rename a feed #### Rename a feed
@@ -358,13 +387,15 @@ Deletes a feed with the id feedId and all of its items
* **Method**: PUT * **Method**: PUT
* **Route**: /feeds/{feedId}/rename * **Route**: /feeds/{feedId}/rename
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"feedTitle": "New Title" "feedTitle": "New Title"
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark items of a feed as read #### Mark items of a feed as read
@@ -373,17 +404,18 @@ Deletes a feed with the id feedId and all of its items
* **Method**: PUT * **Method**: PUT
* **Route**: /feeds/{feedId}/read * **Route**: /feeds/{feedId}/read
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
// mark all items read lower than equal that id // mark all items read lower than equal that id
// this is mean to prevent marking items as read which the client/user does not yet know of // this is mean to prevent marking items as read which the client/user does not yet know of
"newestItemId": 10 "newestItemId": 10
} }
``` ```
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
### Items ### Items
@@ -399,12 +431,39 @@ The following attributes are **not sanitized** meaning: including them in your w
* **mediaThumbnail** * **mediaThumbnail**
* **mediaDescription** * **mediaDescription**
#### Types
| Name | Default | Types |
|------------------|---------|--------------|
| author | null | string\|null |
| body | | string\|null |
| contentHash | | string\|null |
| enclosureLink | | string\|null |
| enclosureMime | | string\|null |
| feedId | | int |
| fingerprint | | string\|null |
| guid | | string |
| guidHash | | string |
| id | | int |
| lastModified | \"0\" | string\|null |
| mediaDescription | | string\|null |
| mediaThumbnail | | string\|null |
| pubDate | | int\|null |
| rtl | false | bool |
| starred | false | bool |
| title | | string\|null |
| unread | false | bool |
| updatedDate | | string\|null |
| url | | string\|null |
#### Get items #### Get items
* **Status**: Implemented * **Status**: Implemented
* **Method**: GET * **Method**: GET
* **Route**: /items * **Route**: /items
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"batchSize": 10, // the number of items that should be returned, defaults to -1, new in 5.2.3: -1 returns all items "batchSize": 10, // the number of items that should be returned, defaults to -1, new in 5.2.3: -1 returns all items
"offset": 30, // only return older (lower than equal that id) items than the one with id 30 "offset": 30, // only return older (lower than equal that id) items than the one with id 30
@@ -414,8 +473,10 @@ The following attributes are **not sanitized** meaning: including them in your w
"oldestFirst": false // implemented in 3.002, if true it reverse the sort order "oldestFirst": false // implemented in 3.002, if true it reverse the sort order
} }
``` ```
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"items": [ "items": [
{ {
@@ -443,12 +504,14 @@ The following attributes are **not sanitized** meaning: including them in your w
``` ```
##### Example ##### Example
Autopaging would work like this: Autopaging would work like this:
* Get the **first 20** items from a feed with **id 12** * Get the **first 20** items from a feed with **id 12**
**GET /items**: **GET /items**:
```jsonc
```json
{ {
"batchSize": 20, "batchSize": 20,
"offset": 0, "offset": 0,
@@ -462,7 +525,7 @@ The item with the lowest item id is 43.
* Get the next **20** items: **GET /items**: * Get the next **20** items: **GET /items**:
```jsonc ```json
{ {
"batchSize": 20, "batchSize": 20,
"offset": 43, "offset": 43,
@@ -472,15 +535,16 @@ The item with the lowest item id is 43.
} }
``` ```
#### Get updated items #### Get updated items
This is used to stay up to date. This is used to stay up to date.
* **Status**: Implemented * **Status**: Implemented
* **Method**: GET * **Method**: GET
* **Route**: /items/updated * **Route**: /items/updated
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"lastModified": 123231, // returns only items with a lastModified timestamp >= than this one "lastModified": 123231, // returns only items with a lastModified timestamp >= than this one
// this may also return already existing items whose read or starred status // this may also return already existing items whose read or starred status
@@ -489,8 +553,10 @@ This is used to stay up to date.
"id": 12 // the id of the folder or feed, Use 0 for Starred and All "id": 12 // the id of the folder or feed, Use 0 for Starred and All
} }
``` ```
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"items": [ "items": [
{ {
@@ -515,62 +581,73 @@ This is used to stay up to date.
``` ```
#### Mark an item as read #### Mark an item as read
* **Status**: Implemented * **Status**: Implemented
* **Method**: PUT * **Method**: PUT
* **Route**: /items/{itemId}/read * **Route**: /items/{itemId}/read
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as read #### Mark multiple items as read
* **Status**: Implemented in 1.2 * **Status**: Implemented in 1.2
* **Method**: PUT * **Method**: PUT
* **Route**: /items/read/multiple * **Route**: /items/read/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"items": [2, 3] // ids of the items "items": [2, 3] // ids of the items
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark an item as unread #### Mark an item as unread
* **Status**: Implemented * **Status**: Implemented
* **Method**: PUT * **Method**: PUT
* **Route**: /items/{itemId}/unread * **Route**: /items/{itemId}/unread
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as unread #### Mark multiple items as unread
* **Status**: Implemented in 1.2 * **Status**: Implemented in 1.2
* **Method**: PUT * **Method**: PUT
* **Route**: /items/unread/multiple * **Route**: /items/unread/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"items": [2, 3] // ids of the items "items": [2, 3] // ids of the items
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark an item as starred #### Mark an item as starred
* **Status**: Implemented * **Status**: Implemented
* **Method**: PUT * **Method**: PUT
* **Route**: /items/{feedId}/{guidHash}/star * **Route**: /items/{feedId}/{guidHash}/star
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as starred #### Mark multiple items as starred
* **Status**: Implemented in 1.2 * **Status**: Implemented in 1.2
* **Method**: PUT * **Method**: PUT
* **Route**: /items/star/multiple * **Route**: /items/star/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"items": [ "items": [
{ {
@@ -580,23 +657,27 @@ This is used to stay up to date.
] ]
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark an item as unstarred #### Mark an item as unstarred
* **Status**: Implemented * **Status**: Implemented
* **Method**: PUT * **Method**: PUT
* **Route**: /items/{feedId}/{guidHash}/unstar * **Route**: /items/{feedId}/{guidHash}/unstar
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as unstarred #### Mark multiple items as unstarred
* **Status**: Implemented in 1.2 * **Status**: Implemented in 1.2
* **Method**: PUT * **Method**: PUT
* **Route**: /items/unstar/multiple * **Route**: /items/unstar/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"items": [ "items": [
{ {
@@ -606,6 +687,7 @@ This is used to stay up to date.
] ]
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark all items as read #### Mark all items as read
@@ -614,17 +696,18 @@ This is used to stay up to date.
* **Method**: PUT * **Method**: PUT
* **Route**: /items/read * **Route**: /items/read
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
// mark all items read lower than equal that id // mark all items read lower than equal that id
// this is mean to prevent marking items as read which the client/user does not yet know of // this is mean to prevent marking items as read which the client/user does not yet know of
"newestItemId": 10 "newestItemId": 10
} }
``` ```
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
### Updater ### Updater
@@ -640,6 +723,7 @@ Updating should be done in the following fashion:
This [implementation in Python](https://github.com/nextcloud/news-updater) should give you a good idea how to design and run it. This [implementation in Python](https://github.com/nextcloud/news-updater) should give you a good idea how to design and run it.
#### Trigger cleanup before update #### Trigger cleanup before update
This is used to clean up the database. It deletes folders and feeds that are marked for deletion This is used to clean up the database. It deletes folders and feeds that are marked for deletion
* **Status**: Implemented in 1.601 * **Status**: Implemented in 1.601
@@ -650,7 +734,9 @@ This is used to clean up the database. It deletes folders and feeds that are mar
**New in 8.1.0**: The console command for achieving the same result is: **New in 8.1.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:before-update ```bash
php -f nextcloud/occ news:updater:before-update
```
#### Get feed ids and usernames for all feeds #### Get feed ids and usernames for all feeds
@@ -660,7 +746,8 @@ This is used to clean up the database. It deletes folders and feeds that are mar
* **Route**: /feeds/all * **Route**: /feeds/all
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"feeds": [ "feeds": [
{ {
@@ -673,8 +760,9 @@ This is used to clean up the database. It deletes folders and feeds that are mar
**New in 8.1.0, Removed in 16.0.0**: The console command for achieving the same result is: **New in 8.1.0, Removed in 16.0.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:all-feeds ```bash
php -f nextcloud/occ news:updater:all-feeds
```
#### Trigger a feed update #### Trigger a feed update
@@ -683,21 +771,26 @@ This is used to clean up the database. It deletes folders and feeds that are mar
* **Method**: GET * **Method**: GET
* **Route**: /feeds/update * **Route**: /feeds/update
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"userId": "john", "userId": "john",
"feedId": 3 "feedId": 3
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: Nothing * **Returns**: Nothing
**New in 8.1.0**: The console command for achieving the same result is: **New in 8.1.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:update-feed 3 john ```bash
php -f nextcloud/occ news:updater:update-feed 3 john
```
#### Trigger cleanup after update #### Trigger cleanup after update
This is used to clean up the database. It removes old read articles which are not starred This is used to clean up the database. It removes old read articles which are not starred
* **Status**: Implemented in 1.601 * **Status**: Implemented in 1.601
@@ -708,7 +801,9 @@ This is used to clean up the database. It removes old read articles which are no
**New in 8.1.0**: The console command for achieving the same result is: **New in 8.1.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:after-update ```bash
php -f nextcloud/occ news:updater:after-update
```
### Version ### Version
@@ -719,7 +814,8 @@ This is used to clean up the database. It removes old read articles which are no
* **Route**: /version * **Route**: /version
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"version": "5.2.3" "version": "5.2.3"
} }
@@ -736,7 +832,8 @@ This API can be used to display warnings and errors in your client if the web ap
* **Route**: /status * **Route**: /status
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"version": "5.2.4", "version": "5.2.4",
"warnings": { "warnings": {
@@ -762,8 +859,9 @@ If **incorrectDbCharset** is true you should display a warning that database cha
This API can be used to retrieve metadata about the current user. This API can be used to retrieve metadata about the current user.
DEPRECATED: This API is deprecated, use the Nextcloud APIs instead. DEPRECATED: This API is deprecated, use the Nextcloud APIs instead.
- https://docs.nextcloud.com/server/latest/developer_manual/client_apis/OCS/ocs-api-overview.html#user-metadata for user data
- `https://nc.url/avatar/{userid}/{size}?v={1|2}` for the avatar * <https://docs.nextcloud.com/server/latest/developer_manual/client_apis/OCS/ocs-api-overview.html#user-metadata> for user data
* `https://nc.url/avatar/{userid}/{size}?v={1|2}` for the avatar
#### Get the status #### Get the status
@@ -772,7 +870,8 @@ DEPRECATED: This API is deprecated, use the Nextcloud APIs instead.
* **Route**: /user * **Route**: /user
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"userId": "john", "userId": "john",
"displayName": "John Doe", "displayName": "John Doe",

View File

@@ -23,6 +23,7 @@ You have to design your app with these things in mind!:
* **Use a library to compare versions, ideally one that uses semantic versioning** * **Use a library to compare versions, ideally one that uses semantic versioning**
## Authentication & Basics ## Authentication & Basics
Because REST is stateless you have to send user and password each time you access the API. Therefore running Nextcloud **with SSL is highly recommended** otherwise **everyone in your network can log your credentials**. Because REST is stateless you have to send user and password each time you access the API. Therefore running Nextcloud **with SSL is highly recommended** otherwise **everyone in your network can log your credentials**.
The base URL for all calls is: The base URL for all calls is:
@@ -42,11 +43,13 @@ where $CREDENTIALS is:
base64(USER:PASSWORD) base64(USER:PASSWORD)
## How To Sync ## How To Sync
This is a small overview over how you should sync your articles with the Nextcloud News app. For more fine-grained details about the API see further down. This is a small overview over how you should sync your articles with the Nextcloud News app. For more fine-grained details about the API see further down.
All routes are given relative to the base API url (e.g.: https://yournextcloud.com/index.php/apps/news/api/v1-3) All routes are given relative to the base API url (e.g.: <https://yournextcloud.com/index.php/apps/news/api/v1-3>)
### Initial Sync ### Initial Sync
The intial sync happens, when a user adds a Nextcloud account in your app. In that case you should fetch all feeds, folders and unread or starred articles from the News app. Do not fetch all articles, not only because it syncs faster, but also because the user is primarily interested in unread articles. To fetch all unread and starred articles, you must call 4 routes: The intial sync happens, when a user adds a Nextcloud account in your app. In that case you should fetch all feeds, folders and unread or starred articles from the News app. Do not fetch all articles, not only because it syncs faster, but also because the user is primarily interested in unread articles. To fetch all unread and starred articles, you must call 4 routes:
* **unread articles**: GET /items?type=3&getRead=false&batchSize=-1 * **unread articles**: GET /items?type=3&getRead=false&batchSize=-1
@@ -57,6 +60,7 @@ The intial sync happens, when a user adds a Nextcloud account in your app. In th
The JSON response structures can be viewed further down. The JSON response structures can be viewed further down.
### Syncing ### Syncing
When syncing, you want to push read/unread and starred/unstarred items to the server and receive new and updated items, feeds and folders. To do that, call the following routes: When syncing, you want to push read/unread and starred/unstarred items to the server and receive new and updated items, feeds and folders. To do that, call the following routes:
* **Notify the News app of unread articles**: PUT /items/unread/multiple {"items": [1, 3, 5]} * **Notify the News app of unread articles**: PUT /items/unread/multiple {"items": [1, 3, 5]}
@@ -67,31 +71,32 @@ When syncing, you want to push read/unread and starred/unstarred items to the se
* **Get new feeds**: GET /feeds * **Get new feeds**: GET /feeds
* **Get new items and modified items**: GET /items/updated?lastModified=12123123123&type=3 * **Get new items and modified items**: GET /items/updated?lastModified=12123123123&type=3
## Accessing API from a web application ## Accessing API from a web application
**News 1.401** implements CORS which allows web applications to access the API. **To access the API in a webapp you need to send the correct authorization header instead of simply putting auth data into the URL!**. An example request in jQuery would look like this: **News 1.401** implements CORS which allows web applications to access the API. **To access the API in a webapp you need to send the correct authorization header instead of simply putting auth data into the URL!**. An example request in jQuery would look like this:
```js ```js
$.ajax({ $.ajax({
type: 'GET', type: 'GET',
url: 'https://yournextcloud.com/index.php/apps/news/api/v1-3/version', url: 'https://yournextcloud.com/index.php/apps/news/api/v1-3/version',
contentType: 'application/json', contentType: 'application/json',
success: function (response) { success: function (response) {
// handle success // handle success
}, },
error: function () { error: function () {
// handle errors // handle errors
}, },
beforeSend: function (xhr) { beforeSend: function (xhr) {
var username = 'john'; var username = 'john';
var password = 'doe'; var password = 'doe';
var auth = btoa(username + ':' + password); var auth = btoa(username + ':' + password);
xhr.setRequestHeader('Authorization', 'Basic ' + auth); xhr.setRequestHeader('Authorization', 'Basic ' + auth);
} }
}); });
``` ```
An example with AngularJS would look like this: An example with AngularJS would look like this:
```js ```js
angular.module('YourApp', []) angular.module('YourApp', [])
.config(['$httpProvider', '$provide', function ($httpProvider, $provide) { .config(['$httpProvider', '$provide', function ($httpProvider, $provide) {
@@ -129,14 +134,17 @@ angular.module('YourApp', [])
``` ```
## Input ## Input
In general the input parameters can be in the URL or request body, the App Framework doesnt differentiate between them. In general the input parameters can be in the URL or request body, the App Framework doesnt differentiate between them.
So JSON in the request body like: So JSON in the request body like:
```jsonc
```json
{ {
"id": 3 "id": 3
} }
``` ```
will be treated the same as will be treated the same as
/?id=3 /?id=3
@@ -149,11 +157,13 @@ It is recommended though that you use the following convention:
* **DELETE**: parameters as JSON in the request body * **DELETE**: parameters as JSON in the request body
## Output ## Output
The output is JSON. The output is JSON.
## API Endpoints ## API Endpoints
### Folders ### Folders
#### Get all folders #### Get all folders
* **Status**: Implemented * **Status**: Implemented
@@ -161,7 +171,8 @@ The output is JSON.
* **Route**: /folders * **Route**: /folders
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"folders": [ "folders": [
{ {
@@ -173,22 +184,26 @@ The output is JSON.
``` ```
#### Create a folder #### Create a folder
Creates a new folder and returns a new folder object Creates a new folder and returns a new folder object
* **Status**: Implemented * **Status**: Implemented
* **Method**: POST * **Method**: POST
* **Route**: /folders * **Route**: /folders
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"name": "folder name" "name": "folder name"
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 409**: If the folder exists already * **HTTP 409**: If the folder exists already
* **HTTP 422**: If the folder name is invalid (for instance empty) * **HTTP 422**: If the folder name is invalid (for instance empty)
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"folders": [ "folders": [
{ {
@@ -200,6 +215,7 @@ Creates a new folder and returns a new folder object
``` ```
#### Delete a folder #### Delete a folder
Deletes a folder with the id folderId and all the feeds it contains Deletes a folder with the id folderId and all the feeds it contains
* **Status**: Implemented * **Status**: Implemented
@@ -207,25 +223,28 @@ Deletes a folder with the id folderId and all the feeds it contains
* **Route**: /folders/{folderId} * **Route**: /folders/{folderId}
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the folder does not exist * **HTTP 404**: If the folder does not exist
* **Returns**: nothing * **Returns**: nothing
#### Rename a folder #### Rename a folder
Only the name can be updated Only the name can be updated
* **Status**: Implemented * **Status**: Implemented
* **Method**: PUT * **Method**: PUT
* **Route**: /folders/{folderId} * **Route**: /folders/{folderId}
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"name": "folder name" "name": "folder name"
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 409**: If the folder name does already exist * **HTTP 409**: If the folder name does already exist
* **HTTP 404**: If the folder does not exist * **HTTP 404**: If the folder does not exist
* **HTTP 422**: If the folder name is invalid (for instance empty) * **HTTP 422**: If the folder name is invalid (for instance empty)
* **Returns**: nothing * **Returns**: nothing
#### Mark items of a folder as read #### Mark items of a folder as read
@@ -234,15 +253,17 @@ Only the name can be updated
* **Method**: POST * **Method**: POST
* **Route**: /folders/{folderId}/read * **Route**: /folders/{folderId}/read
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
// mark all items read lower than equal that id // mark all items read lower than equal that id
// this is mean to prevent marking items as read which the client/user does not yet know of // this is mean to prevent marking items as read which the client/user does not yet know of
"newestItemId": 10 "newestItemId": 10
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
### Feeds ### Feeds
@@ -261,7 +282,8 @@ The following attributes are **not sanitized** meaning: including them in your w
* **Route**: /feeds * **Route**: /feeds
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"feeds": [ "feeds": [
{ {
@@ -290,23 +312,27 @@ The following attributes are **not sanitized** meaning: including them in your w
``` ```
#### Create a feed #### Create a feed
Creates a new feed and returns the feed Creates a new feed and returns the feed
* **Status**: Implemented * **Status**: Implemented
* **Method**: POST * **Method**: POST
* **Route**: /feeds * **Route**: /feeds
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"url": "http:\/\/www.cyanogenmod.org\/wp-content\/themes\/cyanogenmod\/images\/favicon.ico", "url": "http:\/\/www.cyanogenmod.org\/wp-content\/themes\/cyanogenmod\/images\/favicon.ico",
"folderId": 81 // id of the parent folder, null for root "folderId": 81 // id of the parent folder, null for root
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 409**: If the feed exists already * **HTTP 409**: If the feed exists already
* **HTTP 422**: If the feed cant be read (most likely contains errors) * **HTTP 422**: If the feed cant be read (most likely contains errors)
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"feeds": [ "feeds": [
{ {
@@ -327,6 +353,7 @@ Creates a new feed and returns the feed
``` ```
#### Delete a feed #### Delete a feed
Deletes a feed with the id feedId and all of its items Deletes a feed with the id feedId and all of its items
* **Status**: Implemented * **Status**: Implemented
@@ -334,7 +361,7 @@ Deletes a feed with the id feedId and all of its items
* **Route**: /feeds/{feedId} * **Route**: /feeds/{feedId}
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
#### Move a feed to a different folder #### Move a feed to a different folder
@@ -343,28 +370,32 @@ Deletes a feed with the id feedId and all of its items
* **Method**: POST * **Method**: POST
* **Route**: /feeds/{feedId}/move * **Route**: /feeds/{feedId}/move
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"folderId": null // id of the parent folder, null for root "folderId": null // id of the parent folder, null for root
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
#### Rename a feed #### Rename a feed
* **Status**: Implemented in 1.807 * **Status**: Implemented in News 1.807
* **Method**: POST * **Method**: POST
* **Route**: /feeds/{feedId}/rename * **Route**: /feeds/{feedId}/rename
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"feedTitle": "New Title" "feedTitle": "New Title"
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark items of a feed as read #### Mark items of a feed as read
@@ -373,17 +404,18 @@ Deletes a feed with the id feedId and all of its items
* **Method**: POST * **Method**: POST
* **Route**: /feeds/{feedId}/read * **Route**: /feeds/{feedId}/read
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
// mark all items read lower than equal that id // mark all items read lower than equal that id
// this is mean to prevent marking items as read which the client/user does not yet know of // this is mean to prevent marking items as read which the client/user does not yet know of
"newestItemId": 10 "newestItemId": 10
} }
``` ```
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
### Items ### Items
@@ -399,12 +431,39 @@ The following attributes are **not sanitized** meaning: including them in your w
* **mediaThumbnail** * **mediaThumbnail**
* **mediaDescription** * **mediaDescription**
#### Types
| Name | Default | Types |
|------------------|---------|--------------|
| author | null | string\|null |
| body | | string\|null |
| contentHash | | string\|null |
| enclosureLink | | string\|null |
| enclosureMime | | string\|null |
| feedId | | int |
| fingerprint | | string\|null |
| guid | | string |
| guidHash | | string |
| id | | int |
| lastModified | \"0\" | string\|null |
| mediaDescription | | string\|null |
| mediaThumbnail | | string\|null |
| pubDate | | int\|null |
| rtl | false | bool |
| starred | false | bool |
| title | | string\|null |
| unread | false | bool |
| updatedDate | | string\|null |
| url | | string\|null |
#### Get items #### Get items
* **Status**: Implemented * **Status**: Implemented
* **Method**: GET * **Method**: GET
* **Route**: /items * **Route**: /items
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"batchSize": 10, // the number of items that should be returned, defaults to -1, new in 5.2.3: -1 returns all items "batchSize": 10, // the number of items that should be returned, defaults to -1, new in 5.2.3: -1 returns all items
"offset": 30, // only return older (lower than equal that id) items than the one with id 30 "offset": 30, // only return older (lower than equal that id) items than the one with id 30
@@ -414,8 +473,10 @@ The following attributes are **not sanitized** meaning: including them in your w
"oldestFirst": false // implemented in 3.002, if true it reverse the sort order "oldestFirst": false // implemented in 3.002, if true it reverse the sort order
} }
``` ```
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"items": [ "items": [
{ {
@@ -443,12 +504,14 @@ The following attributes are **not sanitized** meaning: including them in your w
``` ```
##### Example ##### Example
Autopaging would work like this: Autopaging would work like this:
* Get the **first 20** items from a feed with **id 12** * Get the **first 20** items from a feed with **id 12**
**GET /items**: **GET /items**:
```jsonc
```json
{ {
"batchSize": 20, "batchSize": 20,
"offset": 0, "offset": 0,
@@ -462,7 +525,7 @@ The item with the lowest item id is 43.
* Get the next **20** items: **GET /items**: * Get the next **20** items: **GET /items**:
```jsonc ```json
{ {
"batchSize": 20, "batchSize": 20,
"offset": 43, "offset": 43,
@@ -472,15 +535,16 @@ The item with the lowest item id is 43.
} }
``` ```
#### Get updated items #### Get updated items
This is used to stay up to date. This is used to stay up to date.
* **Status**: Implemented * **Status**: Implemented
* **Method**: GET * **Method**: GET
* **Route**: /items/updated * **Route**: /items/updated
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"lastModified": 123231, // returns only items with a lastModified timestamp >= than this one "lastModified": 123231, // returns only items with a lastModified timestamp >= than this one
// this may also return already existing items whose read or starred status // this may also return already existing items whose read or starred status
@@ -489,8 +553,10 @@ This is used to stay up to date.
"id": 12 // the id of the folder or feed, Use 0 for Starred and All "id": 12 // the id of the folder or feed, Use 0 for Starred and All
} }
``` ```
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"items": [ "items": [
{ {
@@ -515,87 +581,103 @@ This is used to stay up to date.
``` ```
#### Mark an item as read #### Mark an item as read
* **Status**: Implemented * **Status**: Implemented
* **Method**: POST * **Method**: POST
* **Route**: /items/{itemId}/read * **Route**: /items/{itemId}/read
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as read #### Mark multiple items as read
* **Status**: Implemented in 1.2
* **Status**: Implemented in API 1.2
* **Method**: POST * **Method**: POST
* **Route**: /items/read/multiple * **Route**: /items/read/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"itemIds": [2, 3] // ids of the items "itemIds": [2, 3] // ids of the items
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark an item as unread #### Mark an item as unread
* **Status**: Implemented * **Status**: Implemented
* **Method**: POST * **Method**: POST
* **Route**: /items/{itemId}/unread * **Route**: /items/{itemId}/unread
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as unread #### Mark multiple items as unread
* **Status**: Implemented in 1.2
* **Status**: Implemented in API 1.2
* **Method**: POST * **Method**: POST
* **Route**: /items/unread/multiple * **Route**: /items/unread/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"itemIds": [2, 3] // ids of the items "itemIds": [2, 3] // ids of the items
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark an item as starred #### Mark an item as starred
* **Status**: Implemented in 1.3
* **Status**: Implemented in API 1.3
* **Method**: POST * **Method**: POST
* **Route**: /items/{itemId}/star * **Route**: /items/{itemId}/star
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as starred #### Mark multiple items as starred
* **Status**: Implemented in 1.3
* **Status**: Implemented in API 1.3
* **Method**: POST * **Method**: POST
* **Route**: /items/star/multiple * **Route**: /items/star/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"itemIds": [1, ...] "itemIds": [1, ...]
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark an item as unstarred #### Mark an item as unstarred
* **Status**: Implemented in 1.3
* **Status**: Implemented in API 1.3
* **Method**: POST * **Method**: POST
* **Route**: /items/{itemId}/unstar * **Route**: /items/{itemId}/unstar
* **Parameters**: none * **Parameters**: none
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the item does not exist * **HTTP 404**: If the item does not exist
* **Returns**: nothing * **Returns**: nothing
#### Mark multiple items as unstarred #### Mark multiple items as unstarred
* **Status**: Implemented in 1.3
* **Status**: Implemented in API 1.3
* **Method**: POST * **Method**: POST
* **Route**: /items/unstar/multiple * **Route**: /items/unstar/multiple
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"itemIds": [1, ...] "itemIds": [1, ...]
} }
``` ```
* **Returns**: nothing * **Returns**: nothing
#### Mark all items as read #### Mark all items as read
@@ -604,17 +686,18 @@ This is used to stay up to date.
* **Method**: POST * **Method**: POST
* **Route**: /items/read * **Route**: /items/read
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
// mark all items read lower than equal that id // mark all items read lower than equal that id
// this is mean to prevent marking items as read which the client/user does not yet know of // this is mean to prevent marking items as read which the client/user does not yet know of
"newestItemId": 10 "newestItemId": 10
} }
``` ```
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
* **Return codes**:
* **HTTP 404**: If the feed does not exist
* **Returns**: nothing
### Updater ### Updater
@@ -630,9 +713,10 @@ Updating should be done in the following fashion:
This [implementation in Python](https://github.com/nextcloud/news-updater) should give you a good idea how to design and run it. This [implementation in Python](https://github.com/nextcloud/news-updater) should give you a good idea how to design and run it.
#### Trigger cleanup before update #### Trigger cleanup before update
This is used to clean up the database. It deletes folders and feeds that are marked for deletion This is used to clean up the database. It deletes folders and feeds that are marked for deletion
* **Status**: Implemented in 1.601 * **Status**: Implemented in News 1.601
* **Authentication**: Requires admin user * **Authentication**: Requires admin user
* **Method**: GET * **Method**: GET
* **Route**: /cleanup/before-update * **Route**: /cleanup/before-update
@@ -640,17 +724,20 @@ This is used to clean up the database. It deletes folders and feeds that are mar
**New in 8.1.0**: The console command for achieving the same result is: **New in 8.1.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:before-update ```bash
php -f nextcloud/occ news:updater:before-update
```
#### Get feed ids and usernames for all feeds #### Get feed ids and usernames for all feeds
* **Status**: Implemented in 1.203 * **Status**: Implemented in News 1.203
* **Authentication**: Requires admin user * **Authentication**: Requires admin user
* **Method**: GET * **Method**: GET
* **Route**: /feeds/all * **Route**: /feeds/all
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"feeds": [ "feeds": [
{ {
@@ -663,34 +750,40 @@ This is used to clean up the database. It deletes folders and feeds that are mar
**New in 8.1.0, Removed in 16.0.0**: The console command for achieving the same result is: **New in 8.1.0, Removed in 16.0.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:all-feeds ```bash
php -f nextcloud/occ news:updater:all-feeds
```
#### Trigger a feed update #### Trigger a feed update
* **Status**: Implemented in 1.601 * **Status**: Implemented in News 1.601
* **Authentication**: Requires admin user * **Authentication**: Requires admin user
* **Method**: GET * **Method**: GET
* **Route**: /feeds/update * **Route**: /feeds/update
* **Parameters**: * **Parameters**:
```jsonc
```json
{ {
"userId": "john", "userId": "john",
"feedId": 3 "feedId": 3
} }
``` ```
* **Return codes**: * **Return codes**:
* **HTTP 404**: If the feed does not exist * **HTTP 404**: If the feed does not exist
* **Returns**: Nothing * **Returns**: Nothing
**New in 8.1.0**: The console command for achieving the same result is: **New in 8.1.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:update-feed 3 john ```bash
php -f nextcloud/occ news:updater:update-feed 3 john
```
#### Trigger cleanup after update #### Trigger cleanup after update
This is used to clean up the database. It removes old read articles which are not starred This is used to clean up the database. It removes old read articles which are not starred
* **Status**: Implemented in 1.601 * **Status**: Implemented in News 1.601
* **Authentication**: Requires admin user * **Authentication**: Requires admin user
* **Method**: GET * **Method**: GET
* **Route**: /cleanup/after-update * **Route**: /cleanup/after-update
@@ -698,7 +791,9 @@ This is used to clean up the database. It removes old read articles which are no
**New in 8.1.0**: The console command for achieving the same result is: **New in 8.1.0**: The console command for achieving the same result is:
php -f nextcloud/occ news:updater:after-update ```bash
php -f nextcloud/occ news:updater:after-update
```
### Version ### Version
@@ -709,7 +804,8 @@ This is used to clean up the database. It removes old read articles which are no
* **Route**: /version * **Route**: /version
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"version": "5.2.3" "version": "5.2.3"
} }
@@ -721,12 +817,13 @@ This API can be used to display warnings and errors in your client if the web ap
#### Get the status #### Get the status
* **Status**: Implemented in 5.2.4 * **Status**: Implemented in News 5.2.4
* **Method**: GET * **Method**: GET
* **Route**: /status * **Route**: /status
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"version": "5.2.4", "version": "5.2.4",
"warnings": { "warnings": {
@@ -752,17 +849,19 @@ If **incorrectDbCharset** is true you should display a warning that database cha
This API can be used to retrieve metadata about the current user. This API can be used to retrieve metadata about the current user.
DEPRECATED: This API is deprecated, use the Nextcloud APIs instead. DEPRECATED: This API is deprecated, use the Nextcloud APIs instead.
- https://docs.nextcloud.com/server/latest/developer_manual/client_apis/OCS/ocs-api-overview.html#user-metadata for user data
- `https://nc.url/avatar/{userid}/{size}?v={1|2}` for the avatar * <https://docs.nextcloud.com/server/latest/developer_manual/client_apis/OCS/ocs-api-overview.html#user-metadata> for user data
* `https://nc.url/avatar/{userid}/{size}?v={1|2}` for the avatar
#### Get the status #### Get the status
* **Status**: Implemented in 6.0.5 * **Status**: Implemented in News 6.0.5
* **Method**: GET * **Method**: GET
* **Route**: /user * **Route**: /user
* **Parameters**: none * **Parameters**: none
* **Returns**: * **Returns**:
```jsonc
```json
{ {
"userId": "john", "userId": "john",
"displayName": "John Doe", "displayName": "John Doe",

View File

@@ -7,6 +7,7 @@ The **News app** offers a RESTful API which can be used to sync folders, feeds a
In addition, an updater API is exposed which enables API users to run feed updates in parallel using a REST API or Nextcloud console API. In addition, an updater API is exposed which enables API users to run feed updates in parallel using a REST API or Nextcloud console API.
## Conventions ## Conventions
This document uses the following conventions: This document uses the following conventions:
* Object aliases as comments * Object aliases as comments
@@ -22,6 +23,7 @@ There are two types of aliases:
* Object arrays * Object arrays
**Objects**: **Objects**:
```js ```js
{ {
"folder": { /* folder object */ }, "folder": { /* folder object */ },
@@ -31,6 +33,7 @@ There are two types of aliases:
means that the folder attributes will be listed inside the **folder** object means that the folder attributes will be listed inside the **folder** object
**Object arrays**: **Object arrays**:
```js ```js
{ {
"folders": [ /* array of folder objects */ ], "folders": [ /* array of folder objects */ ],
@@ -78,6 +81,7 @@ You have to design your app with these things in mind!:
* **Use a library to compare versions**, ideally one that uses semantic versioning * **Use a library to compare versions**, ideally one that uses semantic versioning
## Request Format ## Request Format
The base URL for all calls is: The base URL for all calls is:
https://yournextcloud.com/index.php/apps/news/api/v2 https://yournextcloud.com/index.php/apps/news/api/v2
@@ -110,9 +114,11 @@ The request body is either passed in the URL in case of a **GET** request (e.g.:
**Note**: The current Etag implementation contains a unix timestamp in milliseconds. This is an implementation detail and you should not rely on it. **Note**: The current Etag implementation contains a unix timestamp in milliseconds. This is an implementation detail and you should not rely on it.
### API Level Detection ### API Level Detection
Check the [API level route](#api-level) Check the [API level route](#api-level)
### Authentication ### Authentication
Because REST is stateless you have to re-send user and password each time you access the API. Therefore running Nextcloud **with SSL is highly recommended** otherwise **everyone in your network can log your credentials**. Because REST is stateless you have to re-send user and password each time you access the API. Therefore running Nextcloud **with SSL is highly recommended** otherwise **everyone in your network can log your credentials**.
Credentials are passed as an HTTP header using [HTTP basic auth](https://en.wikipedia.org/wiki/Basic_access_authentication#Client_side): Credentials are passed as an HTTP header using [HTTP basic auth](https://en.wikipedia.org/wiki/Basic_access_authentication#Client_side):
@@ -128,6 +134,7 @@ This authentication/authorization method will be the recommended default until c
**Note**: Even if login cookies are sent back to your client, they will not be considered for authentication. **Note**: Even if login cookies are sent back to your client, they will not be considered for authentication.
## Response Format ## Response Format
The status codes are not always provided by the News app itself, but might also be returned because of Nextcloud internal errors. The status codes are not always provided by the News app itself, but might also be returned because of Nextcloud internal errors.
The following status codes can always be returned by Nextcloud: The following status codes can always be returned by Nextcloud:
@@ -167,6 +174,7 @@ The response body is a JSON structure that looks like this, which contains the a
In case of an **4xx** or **5xx** error the request was not successful and has to be retried. For instance marking items as read locally and syncing should send the same request again the next time the user syncs in case an error occurred. In case of an **4xx** or **5xx** error the request was not successful and has to be retried. For instance marking items as read locally and syncing should send the same request again the next time the user syncs in case an error occurred.
## Security Guidelines ## Security Guidelines
Read the following notes carefully to prevent being subject to security exploits: Read the following notes carefully to prevent being subject to security exploits:
* You should always enforce SSL certificate verification and never offer a way to turn it off. Certificate verification is important to prevent MITM attacks which is especially important in the mobile world where users are almost always connected to untrusted networks. In case a user runs a self-signed certificate on his server ask him to either install his certificate on his device or direct him to one of the many ways to sign his certificate for free (most notably letsencrypt.com) * You should always enforce SSL certificate verification and never offer a way to turn it off. Certificate verification is important to prevent MITM attacks which is especially important in the mobile world where users are almost always connected to untrusted networks. In case a user runs a self-signed certificate on his server ask him to either install his certificate on his device or direct him to one of the many ways to sign his certificate for free (most notably letsencrypt.com)
@@ -176,7 +184,8 @@ Read the following notes carefully to prevent being subject to security exploits
* If you are building a client in JavaScript or are using a link with **target="blank"**, remember to set the **window.opener** property to **null** and/or add a **rel="noreferrer"** to your link to prevent your app from being [target by an XSS attack](https://medium.com/@jitbit/target-blank-the-most-underestimated-vulnerability-ever-96e328301f4c#.wf2ddytbh) * If you are building a client in JavaScript or are using a link with **target="blank"**, remember to set the **window.opener** property to **null** and/or add a **rel="noreferrer"** to your link to prevent your app from being [target by an XSS attack](https://medium.com/@jitbit/target-blank-the-most-underestimated-vulnerability-ever-96e328301f4c#.wf2ddytbh)
## Syncing ## Syncing
All routes are given relative to the base API url, e.g.: **/sync** becomes **https://yourNextcloud.com/index.php/apps/news/api/v2/sync**
All routes are given relative to the base API url, e.g.: **/sync** becomes **<https://yourNextcloud.com/index.php/apps/news/api/v2/sync>**
There are two usecases for syncing: There are two usecases for syncing:
@@ -184,6 +193,7 @@ There are two usecases for syncing:
* **Syncing local and remote changes**: the user has synced at least once and wants to submit and receive changes * **Syncing local and remote changes**: the user has synced at least once and wants to submit and receive changes
### Initial Sync ### Initial Sync
The intial sync happens when a user adds an Nextcloud account in your app. In that case you want to download all folders, feeds and unread/starred items. To do this, make the following request: The intial sync happens when a user adds an Nextcloud account in your app. In that case you want to download all folders, feeds and unread/starred items. To do this, make the following request:
* **Method**: GET * **Method**: GET
@@ -202,6 +212,7 @@ and the following HTTP headers:
* **Etag**: A string containing a cache header, maximum size 64 ASCII characters, e.g. 6d82cbb050ddc7fa9cbb659014546e59 * **Etag**: A string containing a cache header, maximum size 64 ASCII characters, e.g. 6d82cbb050ddc7fa9cbb659014546e59
and the following request body: and the following request body:
```js ```js
{ {
"folders": [ /* array of folder objects */ ], "folders": [ /* array of folder objects */ ],
@@ -216,8 +227,8 @@ and the following request body:
* [Feeds](#feeds) * [Feeds](#feeds)
* [Items](#items) * [Items](#items)
### Sync Local And Remote Changes ### Sync Local And Remote Changes
After the initial sync the app has all folders, feeds and items. Now you want to push changes and retrieve updates from the server. To do this, make the following request: After the initial sync the app has all folders, feeds and items. Now you want to push changes and retrieve updates from the server. To do this, make the following request:
* **Method**: POST * **Method**: POST
@@ -274,6 +285,7 @@ This also applies to folders and feeds, however the reduced folder and feed obje
If you push a list of items to be marked read/starred, there can also be less items in the response than the ones which were initially sent. This means that the item was deleted by the cleanup job and should be removed from the client device. If you push a list of items to be marked read/starred, there can also be less items in the response than the ones which were initially sent. This means that the item was deleted by the cleanup job and should be removed from the client device.
For instance let's take a look at the following example. You are **POST**ing the following JSON: For instance let's take a look at the following example. You are **POST**ing the following JSON:
```json ```json
{ {
"items": [{ "items": [{
@@ -314,7 +326,9 @@ The item with the **id** **7** is missing from the response. This means that it
For folders and feeds all ids will be returned so you can compare the existing ids with your locally available feeds and folders and remove the difference. For folders and feeds all ids will be returned so you can compare the existing ids with your locally available feeds and folders and remove the difference.
## Folders ## Folders
Folders are represented using the following data structure: Folders are represented using the following data structure:
```json ```json
{ {
"id": 3, "id": 3,
@@ -328,6 +342,7 @@ The attributes mean the following:
* **name**: Abitrary long text, folder's name * **name**: Abitrary long text, folder's name
### Deleting A Folder ### Deleting A Folder
To delete a folder, use the following request: To delete a folder, use the following request:
* **Method**: DELETE * **Method**: DELETE
@@ -356,6 +371,7 @@ In case of an HTTP 200, the deleted folder is returned in full in the response,
**Note**: If you delete a folder locally, you should also delete all feeds whose **folderId** attribute matches the folder's **id** attribute and also delete all items whose **feedId** attribute matches the feeds' **id** attribute. This is done automatically on the server and will also be missing on the next request. **Note**: If you delete a folder locally, you should also delete all feeds whose **folderId** attribute matches the folder's **id** attribute and also delete all items whose **feedId** attribute matches the feeds' **id** attribute. This is done automatically on the server and will also be missing on the next request.
### Creating A Folder ### Creating A Folder
To create a folder, use the following request: To create a folder, use the following request:
* **Method**: POST * **Method**: POST
@@ -363,6 +379,7 @@ To create a folder, use the following request:
* **Authentication**: [required](#authentication) * **Authentication**: [required](#authentication)
with the following request body: with the following request body:
```json ```json
{ {
"name": "Folder name" "name": "Folder name"
@@ -386,6 +403,7 @@ In case of an HTTP 200, the created or already existing folder is returned in fu
``` ```
### Changing A Folder ### Changing A Folder
The following attributes can be changed on the folder: The following attributes can be changed on the folder:
* **name** * **name**
@@ -399,6 +417,7 @@ To change any number of attributes on a folder, use the following request and pr
* **Authentication**: [required](#authentication) * **Authentication**: [required](#authentication)
with the following request body: with the following request body:
```json ```json
{ {
"name": "New folder name" "name": "New folder name"
@@ -424,8 +443,8 @@ In case of an HTTP 200, the changed or already existing folder is returned in fu
} }
``` ```
## Feeds ## Feeds
Feeds are represented using the following data structure: Feeds are represented using the following data structure:
```json ```json
@@ -464,8 +483,8 @@ The attributes mean the following:
* **1**: Error occured during feed update * **1**: Error occured during feed update
* **message**: Translated error message depending on the user's configured server locale * **message**: Translated error message depending on the user's configured server locale
### Deleting A Feed ### Deleting A Feed
To delete a feed, use the following request: To delete a feed, use the following request:
* **Method**: DELETE * **Method**: DELETE
@@ -474,7 +493,6 @@ To delete a feed, use the following request:
* **{id}**: feed's id * **{id}**: feed's id
* **Authentication**: [required](#authentication) * **Authentication**: [required](#authentication)
The following response is being returned: The following response is being returned:
Status codes: Status codes:
@@ -483,7 +501,6 @@ Status codes:
* **404**: Feed with given id was not found, no error object * **404**: Feed with given id was not found, no error object
* Other Nextcloud errors, see [Response Format](#response-format) * Other Nextcloud errors, see [Response Format](#response-format)
In case of an HTTP 200, the deleted feed is returned in full in the response, e.g.: In case of an HTTP 200, the deleted feed is returned in full in the response, e.g.:
```js ```js
@@ -497,14 +514,15 @@ In case of an HTTP 200, the deleted feed is returned in full in the response, e.
**Note**: If you delete a feed locally, you should also delete all items whose **feedId** attribute matches the feeds' **id** attribute. This is done automatically on the server and will also be missing on the next request. **Note**: If you delete a feed locally, you should also delete all items whose **feedId** attribute matches the feeds' **id** attribute. This is done automatically on the server and will also be missing on the next request.
### Creating A feed ### Creating A feed
To create a feed, use the following request: To create a feed, use the following request:
* **Method**: POST * **Method**: POST
* **Route**: /feeds * **Route**: /feeds
* **Authentication**: [required](#authentication) * **Authentication**: [required](#authentication)
with the following request body: with the following request body:
```json ```json
{ {
"url": "https://feed.url.com", "url": "https://feed.url.com",
@@ -518,7 +536,7 @@ with the following request body:
} }
``` ```
* **url**: Abitrary long text, the url needs to have the full schema e.g. https://the-url.com. In case the user omits the schema, prepending **https** is recommended * **url**: Abitrary long text, the url needs to have the full schema e.g. <https://the-url.com>. In case the user omits the schema, prepending **https** is recommended
* **folderId**: 64bit Integer, the feed's folder or **0** in case no folder is specified * **folderId**: 64bit Integer, the feed's folder or **0** in case no folder is specified
* **name (optional)**: Abitrary long text, the feeds name or if not given taken from the RSS/Atom feed * **name (optional)**: Abitrary long text, the feeds name or if not given taken from the RSS/Atom feed
* **basicAuthUser (optional)**: Abitrary long text, if given basic auth headers are sent for the feed * **basicAuthUser (optional)**: Abitrary long text, if given basic auth headers are sent for the feed
@@ -527,7 +545,6 @@ with the following request body:
* **isPinned (optional)**: See [Feeds](#feeds) * **isPinned (optional)**: See [Feeds](#feeds)
* **fullTextEnabled (optional)**: See [Feeds](#feeds) * **fullTextEnabled (optional)**: See [Feeds](#feeds)
The following response is being returned: The following response is being returned:
Status codes: Status codes:
@@ -557,6 +574,7 @@ In case of an HTTP 200, the created feed is returned in full in the response, e.
**Note**: Because the next sync would also pull in the added feed and items again, the added items will be omitted for saving bandwidth. This also means that after successfully creating a feed you will need to query the [sync route](#sync-local-and-remote-changes) again. **Note**: Because the next sync would also pull in the added feed and items again, the added items will be omitted for saving bandwidth. This also means that after successfully creating a feed you will need to query the [sync route](#sync-local-and-remote-changes) again.
### Changing A Feed ### Changing A Feed
To change a feed, use the following request: To change a feed, use the following request:
* **Method**: PATCH * **Method**: PATCH
@@ -565,8 +583,8 @@ To change a feed, use the following request:
* **{id}**: feed's id * **{id}**: feed's id
* **Authentication**: [required](#authentication) * **Authentication**: [required](#authentication)
with the following request body: with the following request body:
```json ```json
{ {
"url": "https://feed.url.com", "url": "https://feed.url.com",
@@ -586,9 +604,9 @@ All parameters are optional
* **name (optional)**: Abitrary long text, the feeds name or if not given taken from the RSS/Atom feed * **name (optional)**: Abitrary long text, the feeds name or if not given taken from the RSS/Atom feed
* **basicAuthUser (optional)**: Abitrary long text, if given basic auth headers are sent for the feed * **basicAuthUser (optional)**: Abitrary long text, if given basic auth headers are sent for the feed
* **basicAuthPassword (optional)**: Abitrary long text, if given basic auth headers are sent for the feed * **basicAuthPassword (optional)**: Abitrary long text, if given basic auth headers are sent for the feed
* **ordering (optional)**: See [feeds](#Feeds) * **ordering (optional)**: See [feeds](#feeds)
* **isPinned (optional)**: See [feeds](#Feeds) * **isPinned (optional)**: See [feeds](#feeds)
* **fullTextEnabled (optional)**: See [feeds](#Feeds) * **fullTextEnabled (optional)**: See [feeds](#feeds)
* **folderId (optional)**: 64bit Integer, the feed's folder or **0** in case no folder is specified * **folderId (optional)**: 64bit Integer, the feed's folder or **0** in case no folder is specified
The following response is being returned: The following response is being returned:
@@ -648,7 +666,9 @@ The attributes mean the following:
* **contentHash**: 64 ASCII characters, used to determine if the item on the client is up to or out of date. The difference between the contentHash and the fingerprint attribute is that contentHash is always calculated from a stable set of attributes (title, author, url, enclosure, body) whereas the fingerprint is calculated from a set of attributes depending on the feed. The reason for this is that some feeds use different URLs for the same article so you would not want to include the URL as uniqueness criteria in that case. If the fingerprint was used for syncing however, an URL update would never reach the client. * **contentHash**: 64 ASCII characters, used to determine if the item on the client is up to or out of date. The difference between the contentHash and the fingerprint attribute is that contentHash is always calculated from a stable set of attributes (title, author, url, enclosure, body) whereas the fingerprint is calculated from a set of attributes depending on the feed. The reason for this is that some feeds use different URLs for the same article so you would not want to include the URL as uniqueness criteria in that case. If the fingerprint was used for syncing however, an URL update would never reach the client.
### Full ### Full
A full item contains the full content: A full item contains the full content:
```json ```json
{ {
"id": 5, "id": 5,
@@ -671,7 +691,9 @@ A full item contains the full content:
``` ```
### Reduced ### Reduced
A reduced item only contains the item status: A reduced item only contains the item status:
```json ```json
{ {
"id": 5, "id": 5,
@@ -681,6 +703,7 @@ A reduced item only contains the item status:
``` ```
## Updater ## Updater
Instead of using the built in, slow cron updater you can use the parallel update API to update feeds. The API can be accessed through REST or Nextcloud console API. Instead of using the built in, slow cron updater you can use the parallel update API to update feeds. The API can be accessed through REST or Nextcloud console API.
The API should be used in the following way: The API should be used in the following way:
@@ -696,11 +719,14 @@ If the REST API is used, Authorization is required via Basic Auth and the user n
If the Nextcloud console API is used, no authorization is required. If the Nextcloud console API is used, no authorization is required.
### Clean Up Before Update ### Clean Up Before Update
This is used to clean up the database. It deletes folders and feeds that are marked for deletion. This is used to clean up the database. It deletes folders and feeds that are marked for deletion.
**Console API**: **Console API**:
php -f /path/to/nextcloud/occ news:updater:before-update ```bash
php -f /path/to/nextcloud/occ news:updater:before-update
```
**REST API**: **REST API**:
@@ -709,11 +735,14 @@ This is used to clean up the database. It deletes folders and feeds that are mar
* **Authentication**: [admin](#authentication) * **Authentication**: [admin](#authentication)
### Get All Feeds And User Ids ### Get All Feeds And User Ids
This call returns pairs of feed ids and user ids. This call returns pairs of feed ids and user ids.
**Console API**: **Console API**:
php -f /path/to/nextcloud/occ news:updater:all-feeds ```bash
php -f /path/to/nextcloud/occ news:updater:all-feeds
```
**REST API**: **REST API**:
@@ -721,7 +750,6 @@ This call returns pairs of feed ids and user ids.
* **Route**: /updater/all-feeds * **Route**: /updater/all-feeds
* **Authentication**: [admin](#authentication) * **Authentication**: [admin](#authentication)
Both APIs will return the following response body or terminal output: Both APIs will return the following response body or terminal output:
```js ```js
@@ -734,6 +762,7 @@ Both APIs will return the following response body or terminal output:
``` ```
### Update A User's Feed ### Update A User's Feed
After all feed ids and user ids are known, feeds can be updated in parallel. After all feed ids and user ids are known, feeds can be updated in parallel.
**Console API**: **Console API**:
@@ -742,8 +771,9 @@ After all feed ids and user ids are known, feeds can be updated in parallel.
* **{feedId}**: the feed's id * **{feedId}**: the feed's id
* **{userId}**: the user's id * **{userId}**: the user's id
```bash
php -f /path/to/nextcloud/occ news:updater:update-feed {feedId} {userId} php -f /path/to/nextcloud/occ news:updater:update-feed {feedId} {userId}
```
**REST API**: **REST API**:
@@ -754,13 +784,15 @@ After all feed ids and user ids are known, feeds can be updated in parallel.
* **{userId}**: the user's id * **{userId}**: the user's id
* **Authentication**: [admin](#authentication) * **Authentication**: [admin](#authentication)
### Clean Up After Update ### Clean Up After Update
This is used to clean up the database. It removes old read articles which are not starred. This is used to clean up the database. It removes old read articles which are not starred.
**Console API**: **Console API**:
php -f /path/to/nextcloud/occ news:updater:after-update ```bash
php -f /path/to/nextcloud/occ news:updater:after-update
```
**REST API**: **REST API**:
@@ -769,13 +801,13 @@ This is used to clean up the database. It removes old read articles which are no
* **Authentication**: [admin](#authentication) * **Authentication**: [admin](#authentication)
## Meta Data ## Meta Data
The retrieve meta data about the app, use the following request: The retrieve meta data about the app, use the following request:
* **Method**: GET * **Method**: GET
* **Route**: / * **Route**: /
* **Authentication**: [required](#authentication) * **Authentication**: [required](#authentication)
The following response is being returned: The following response is being returned:
Status codes: Status codes:
@@ -813,12 +845,12 @@ The attributes mean the following:
* **data**: Abitrary long text, the user's image encoded as base64 * **data**: Abitrary long text, the user's image encoded as base64
* **mime**: Abitrary long text, avatar mimetype * **mime**: Abitrary long text, avatar mimetype
## API Level ## API Level
To find out which API levels are supported, make a request to the following route: To find out which API levels are supported, make a request to the following route:
* **Method**: GET * **Method**: GET
* **Route**: https://yournextcloud.com/index.php/apps/news/api * **Route**: <https://yournextcloud.com/index.php/apps/news/api>
* **Authentication**: none * **Authentication**: none
The following response is being returned: The following response is being returned:
@@ -829,6 +861,7 @@ Status codes:
* **404**: The user is either running a version prior to **8.8.0** or the News app is disabled or not installed. * **404**: The user is either running a version prior to **8.8.0** or the News app is disabled or not installed.
In case of an HTTP 200, the supported API levels are returned as JSON, e.g.: In case of an HTTP 200, the supported API levels are returned as JSON, e.g.:
```json ```json
{ {
"apiLevels": ["v1-2", "v2"] "apiLevels": ["v1-2", "v2"]
@@ -840,7 +873,7 @@ In case of an HTTP 200, the supported API levels are returned as JSON, e.g.:
To find out if a user is running an older News version than **8.8.0**, make a request to the following route: To find out if a user is running an older News version than **8.8.0**, make a request to the following route:
* **Method**: GET * **Method**: GET
* **Route**: https://yournextcloud.com/index.php/apps/news/api/v1-2/version * **Route**: <https://yournextcloud.com/index.php/apps/news/api/v1-2/version>
* **Authentication**: [required](#authentication) * **Authentication**: [required](#authentication)
Status codes: Status codes:

View File

@@ -10,6 +10,9 @@ A sync client can be used to read news and synchronize via the API.
| Name | OS/Platform | License | Source | | Name | OS/Platform | License | Source |
|------------------------------------------------------------------------------------------------------------------|------------------------------|----------------------|--------------------------------------------------------------------| |------------------------------------------------------------------------------------------------------------------|------------------------------|----------------------|--------------------------------------------------------------------|
| [RSS Guard](https://github.com/martinrotter/rssguard) | Windows, Linux, OS/2, macOS | GPL-3.0 License | [GitHub](https://github.com/martinrotter/rssguard) | | [RSS Guard](https://github.com/martinrotter/rssguard) | Windows, Linux, OS/2, macOS | GPL-3.0 License | [GitHub](https://github.com/martinrotter/rssguard) |
| [Fluent Reader](https://hyliu.me/fluent-reader/) | Windows, Linux, macOS | BSD-3-Clause License | [GitHub](https://github.com/yang991178/fluent-reader) |
| [Communique](https://flathub.org/apps/details/com.github.suzie97.communique) | Linux | LGPL-2.1 License | [GitHub](https://github.com/Suzie97/Communique) |
| [NewsFlash](https://flathub.org/apps/details/com.gitlab.newsflash) | Linux | GPL-3.0 License | [GitLab](https://gitlab.com/news-flash/news_flash_gtk) |
| [Nextcloud News Reader](https://play.google.com/store/apps/details?id=de.luhmer.owncloudnewsreader) | Android | GPL-3.0 License | [GitHub](https://github.com/nextcloud/news-android-app) | | [Nextcloud News Reader](https://play.google.com/store/apps/details?id=de.luhmer.owncloudnewsreader) | Android | GPL-3.0 License | [GitHub](https://github.com/nextcloud/news-android-app) |
| [OCReader](https://f-droid.org/repository/browse/?fdid=email.schaal.ocreader) | Android | GPL-3.0 License | [GitHub](https://github.com/schaal/ocreader) | | [OCReader](https://f-droid.org/repository/browse/?fdid=email.schaal.ocreader) | Android | GPL-3.0 License | [GitHub](https://github.com/schaal/ocreader) |
| [Newsout](https://play.google.com/store/apps/details?id=com.inspiredandroid.newsout) | Android | Apache-2.0 License | [GitHub](https://github.com/SimonSchubert/NewsOut) | | [Newsout](https://play.google.com/store/apps/details?id=com.inspiredandroid.newsout) | Android | Apache-2.0 License | [GitHub](https://github.com/SimonSchubert/NewsOut) |
@@ -24,6 +27,7 @@ A sync client can be used to read news and synchronize via the API.
| [py3status](https://github.com/ultrabug/py3status/) | i3wm | BSD-3-Clause License | [GitHub](https://github.com/ultrabug/py3status/) | | [py3status](https://github.com/ultrabug/py3status/) | i3wm | BSD-3-Clause License | [GitHub](https://github.com/ultrabug/py3status/) |
| [newsboat](https://newsboat.org/) | Unix Terminal | MIT License | [GitHub](https://github.com/newsboat/newsboat) | | [newsboat](https://newsboat.org/) | Unix Terminal | MIT License | [GitHub](https://github.com/newsboat/newsboat) |
| [Newsie](https://open-store.io/app/newsie.martinferretti) | Ubuntu Touch | GPL-3.0 License | [GitLab](https://gitlab.com/ferrettim/newsie) | | [Newsie](https://open-store.io/app/newsie.martinferretti) | Ubuntu Touch | GPL-3.0 License | [GitLab](https://gitlab.com/ferrettim/newsie) |
| [Fuoten](https://github.com/Huessenbergnetz/Fuoten) | Sailfish OS | GPL-3.0 License | [GitHub](https://github.com/Huessenbergnetz/Fuoten) |
## Update Clients ## Update Clients

View File

@@ -1,4 +1,5 @@
# Developer # Developer
Welcome to the Nextcloud News App developer documentation. Welcome to the Nextcloud News App developer documentation.
News is open for contributions, if you plan to implement a new feature make sure to open a [discussion](https://github.com/nextcloud/news/discussions/new?category=Features). Describe the feature that you are planing and your first idea how to implement it. News is open for contributions, if you plan to implement a new feature make sure to open a [discussion](https://github.com/nextcloud/news/discussions/new?category=Features). Describe the feature that you are planing and your first idea how to implement it.
@@ -7,16 +8,76 @@ This ensures that you don't start working on something which collides with the t
For small fixes and improvements feel free to directly create a PR, the maintainers are happy to review your code. For small fixes and improvements feel free to directly create a PR, the maintainers are happy to review your code.
## APIs ## APIs
News offers an API that can be used by clients to synchronize with the server. News offers an API that can be used by clients to synchronize with the server.
There are two API declarations, so far only V1 has been fully implemented. There are two API declarations, so far only V1 has been fully implemented.
Work on V2 has started with low priority. Work on V2 has started with low priority.
- [API-V1](api/api-v1.md) - [API-V1.2](api/api-v1-2.md)
- [API-V1.3](api/api-v1-3.md)
- [API-V2](api/api-v2.md) - [API-V2](api/api-v2.md)
## Coding Style Guidelines ## Coding Style Guidelines
The PHP code should all adhere to [PSR-2](https://www.php-fig.org/psr/psr-2/). The PHP code should all adhere to [PSR-2](https://www.php-fig.org/psr/psr-2/).
*Note that this is a different codestyle than Nextcloud itself uses.* *Note that this is a different codestyle than Nextcloud itself uses.*
To test the codestyle you can run `make phpcs`. To test the codestyle you can run `make phpcs`.
For linting JavaScript, a [jshint file](https://github.com/nextcloud/news/blob/master/js/.jshintrc) is used that is run before compiling the JavaScript. The application Front End uses Vue 2.7 and the Nextcloud Libraries [Vue Components](https://github.com/nextcloud-libraries/nextcloud-vue) for building the Application running inside your Nextcloud instance. For linting these files, we are using eslint, see the [config file](https://github.com/nextcloud/news/blob/master/.eslintrc.js). We also have Unit Tests for the components that run with Jest, please ensure these pass when adding new features/fixing bugs.
## General Developer setup
Check the Nextcloud [documentation](https://docs.nextcloud.com/server/latest/developer_manual/getting_started/devenv.html) to learn how to setup a developer environment, alternatively to a proper web server you can also use the [builtin php server](https://www.php.net/manual/en/features.commandline.webserver.php) on demand, it is enough for development purposes.
When your setup is running, clone the news repository in the `apps/` directory inside the server.
Change into the news directory and run `make` to build the app, you will need php, composer, node, npm and maybe more.
Now you can basically use the news app and test any changes you make on your local development environment. Check out the `appinfo/routes.php` file and `lib/controller/` directory for details on API controllers. Or check out `package.json` for npm scripts and the `src/` directory for the front end Vue Application.
## Alternative Developer setup
With [PR 2670](https://github.com/nextcloud/news/pull/2670) new options to create a development environment were added.
See the README in the docker directory.
There is also a nix-shell config and zellij layout prepared.
If you have issues with the setup create a [new discussion](https://github.com/nextcloud/news/discussions).
### Frontend Tips/Organization
- We use the Nextcloud Vue component library for most of the form controls and navigation
- Vuex is used for state management, this is similar to Redux and has Actions/Mutations and Getters
- We are using the Nextcloud Webpack Vue configuration and have enabled Typescript support and importing in the Vue components
- We use ESLint and StyleLint for ensuring correct formatting of the Scripts and HTML
## Testing
Please make sure to run all tests before submitting any pull requests.
### Frontend Unit Tests
Frontend unit tests are written with Jest and can be run with `npm run test`.
### API and CLI Integration Tests
We use [bats](https://bats-core.readthedocs.io/en/stable/) to run integration tests against the API and the cli.
Check how to install bats on your system in the [official documentation](https://bats-core.readthedocs.io/en/stable/installation.html).
You also need to pull the submodules of the news repo.
```bash
git submodules update --init
```
The cli tests expect that the feeds are reachable at `http://localhost:8090`, to achieve that you can use `make feed-server &` the `&` means it'll run in the background.
Now the test feeds will be reachable for bats.
Run the tests by executing `bats tests/command` you can also only run specific tests for example `bats tests/command/feeds.bats`.
For the API tests you need to run a second php server or have another web server that provides Nextcloud and the News App.
The tests expect to find Nextcloud at `http://localhost:8080`
You can do this by running `make nextcloud-server`.
The bats tests can be executed like this `bats tests/api`.

View File

@@ -1,118 +0,0 @@
# FAQ
## My browser shows a mixed content warning (Connection is Not Secure)
If you are serving your Nextcloud over HTTPS your browser will very likely warn you with a yellow warnings sign about your connection not being secure.
Chrome will show no green HTTPS lock sign, Firefox will show you the following image
![Mixed Passive Content](https://ffp4g1ylyit3jdyti1hqcvtb-wpengine.netdna-ssl.com/security/files/2015/10/mixed-passive-click1-600x221.png)
Note that this warning **is not red and won't block the page like the following images** which signal **a serious issue**:
![Untrusted Cert](https://www.inmotionhosting.com/support/images/stories/website/errors/ssl/chrome-self-signed-ssl-warning.png)
![Mixed Active Content](https://www.howtogeek.com/wp-content/uploads/2014/02/650x367xchrome-mixed-content-https-problem.png.pagespeed.gp+jp+jw+pj+js+rj+rp+rw+ri+cp+md.ic.r_lQiZiq38.png)
### What is the cause of the (yellow) error message
This warning is caused by [mixed passive content](https://developer.mozilla.org/en/docs/Security/MixedContent) and means that your page loads passive resources from non HTTPS resources, such as:
* Images
* Video/Audio
This allows a possible attacker to perform a MITM (man-in-the-middle) attack by serving you different images or audio/video.
### Why doesn't the News app fix it
The News app fully prevents mixed **active** content by only allowing HTTPS iframes from known locations; other possible mixed active content elements such as <script\> are stripped from the feed. Because images and audio/video are an integral part of a feed, we can not simply strip them.
Since an attacker can not execute code in contrast to mixed active content, but only replace images/audio/video in your feed reader, this is **not considered to be a security issue**. If, for whatever reason (e.g. feed which would allow fishing), this is a security problem for you, contact the specific feed provider and ask him to serve his feed content over HTTPS.
### Why don't you simply use an HTTPS image/audio/video proxy
For the same reason that we can't fix non HTTPS websites: It does not fix the underlying issue but only silences it. If you are using an image HTTPS proxy, an attacker can simply attack your image proxy since the proxy fetches insecure content. **Even worse**: if your image proxy serves these images from the same domain as your Nextcloud installation you [are vulnerable to XSS via SVG images](https://www.owasp.org/images/0/03/Mario_Heiderich_OWASP_Sweden_The_image_that_called_me.pdf). In addition, people feel safe when essentially they are not.
Since most people don't understand mixed content and don't have two domains and a standalone server for the image proxy, it is very likely they will choose to host it under the same domain.
Because we care about our users' security and don't want to hide security warnings, we won't fix (aka silence) this issue.
The only fix for this issue is that feed providers serve their content over HTTPS.
## I am getting: Exception: Some\\Class does not exist errors in my nextcloud.log
This is very often caused by missing or old files, e.g. by failing to upload all the News app files or errors during installation. Before you report a bug, please recheck if all files from the archive are in place and accessible.
## Feeds not updated
Feeds can be updated using Nextcloud's system cron or an [external updater](https://nextcloud.github.io/news/clients/#update-clients) via the API
**The feed update is not run in Webcron and AJAX cron mode!**
### System Cron
* Check if you are using the system cron (Cron) setting on the admin page. AJAX and Web cron will not update feeds
* Check if the cronjob exists with **crontab -u www-data -e** (replace www-data with your httpd user)
* Check the file permissions of the **cron.php** file and if **www-data** (or whatever your httpd user is called like) can read and execute that script
* Check if you can execute the cron with **sudo -u www-data php -f nextcloud/cron.php** (replace www-data with your httpd user)
* Check your **data/nextcloud.log** for errors
* Check if the cronjob is ever executed by placing an **error_log('updating');** in the [background job file](https://github.com/nextcloud/news/blob/master/lib/Service/UpdaterService.php#L55). If the cronjob runs, there should be an updating log statement in your httpd log.
* If there is no **updating** statement in your logs check if your cronjob is executed by executing a different script
* Check if the **oc_jobs** table has a **reserved_at** entry with a value other than 0. If it does for whatever reason, set it to 0. You can check this by executing:
```sql
SELECT * from oc_jobs WHERE class LIKE '%News%' ORDER BY id;
```
You will get two rows where column `class`will be `OCA\News\Cron\Updater` and `OCA\News\Cron\UpdaterJob`.
Reset the `reserved_at` by executing
```sql
UPDATE oc_jobs SET reserved_at = 0 WHERE id = <id from above SELECT statement>;
```
* If your cron works fine, but Nextcloud's cronjobs are never executed, file a bug in [server](https://github.com/nextcloud/server/)
### External Updater
* Check if your configuration is set to **not** use the system cron.
* Consult the documentation of the updater
* Check your **data/nextcloud.log** for errors
## Adding feeds that use self-signed certificates
If you want to add a feed that uses a self-signed certificate that is not signed by a trusted CA the request will fail with "SSL certificate is invalid". A common solution is to turn off the certificate verification **which is wrong** and **makes your installation vulnerable to MITM attacks**. Therefore **turning off certificate verification is not supported**.
If you have control over the feed in question, consider signing your certificate for free on one of the following providers:
* [Let's Encrypt](https://letsencrypt.org/)
* [ZeroSSL](https://zerossl.com/)
If you do not have control over the chosen feed, you should [download the certificate from the feed's website](https://superuser.com/questions/97201/how-to-save-a-remote-server-ssl-certificate-locally-as-a-file) and [add it to your server's trusted certificates](https://www.onlinesmartketer.com/2009/06/23/curl-adding-installing-trusting-new-self-signed-certificate/). The exact procedure however may vary depending on your distribution.
## Is There An Subscription URL To Easily Subscribe To Feeds
By appending **?subscribe_to=SOME_URL** to your News app URL, you can launch the News app with a pre-filled URL, e.g.:
https://yourdomain.com/nextcloud/index.php/apps/news?subscribe_to=https://github.com/nextcloud/news/releases
## Database table grows too big
By default, Nextcloud News purges old news items above a certain threshold each time it fetches new news items. The maximum number of items per feed
that should be kept during the purging can be defined through the “Maximum read count per feed” setting in the admin UI or the `autoPurgeCount`
value in the config. (Note: The “Purge interval” (`autoPurgeMinimumInterval`) setting is ignored and does not have any effect.)
However, unread or starred items are exempt from the purging. If your users have subscribed to some high-volume feeds where a lot of items remain
unread, this can lead to an oversized news table over time. As a consequence, the database upgrade of the news app can take several hours, during which
Nextcloud cannot be used.
The command `occ news:updater:after-update [--purge-unread] [<purge-count>]` can be used to manually purge old news items across the instance. With
the `--purge-unread` option, unread items are also purged (starred items are still exempt). If `purge-count` is not specified, the configured
`autoPurgeCount` is used.
The purge count only applies to the items that are purged. For example, when purging a feed that has 100 unread items, 100 starred read
items and 100 unstarred read items, using a `purge-count` of 50 would keep all unread and starred items and the latest 50 read items. Using
a `purge-count` of 50 along with `--purge-unread` would keep the all starred items plus the latest 50 from the set of unread and read items.
## Missing 4-byte support SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: ...
This is likely caused by your feed using emojis in the feed title or text.
The DB is then not able to store the feed and runs into strange decoding errors.
You need to convert your DB to support 4 bytes, check the [Nextcloud documentation](https://docs.nextcloud.com/server/stable/admin_manual/configuration_database/mysql_4byte_support.html).
References [#1165](https://github.com/nextcloud/news/issues/1165) [#526](https://github.com/nextcloud/news/issues/526)

View File

@@ -1,8 +1,9 @@
# Custom CSS # Custom CSS
Sometimes you want to add additional CSS for a feed to improve the rendering. This can very easily be done by adding a CSS class to **css/custom.css** following the following naming convention: Sometimes you want to add additional CSS for a feed to improve the rendering. This can very easily be done by adding a CSS class to **css/custom.css** following the following naming convention:
* Take the URL from the \<link> attribute (e.g.: \<link>https://www.google.de/path?my=query \</link>) * Take the URL from the \<link> attribute (e.g.: \<link><https://www.google.de/path?my=query> \</link>)
* Extract the Domain from the URL (e.g.: www.google.de) * Extract the Domain from the URL (e.g.: <www.google.de>)
* Strip the leading **www.** (e.g.: google.de) * Strip the leading **www.** (e.g.: google.de)
* Replace all . with - (e.g.: google-de) * Replace all . with - (e.g.: google-de)
* Prepend **custom-** (e.g.: custom-google-de) * Prepend **custom-** (e.g.: custom-google-de)

View File

@@ -0,0 +1,30 @@
# Integrations
## Is There An Subscription URL To Easily Subscribe To Feeds?
By appending `/index.php/apps/news?subscribe_to=SOME_RSS_URL` to your NextCloud base path URL, you can launch the News app with a pre-filled URL, e.g.:
Ex.
https://yourdomain.com/nextcloud/index.php/apps/news?subscribe_to=https://github.com/nextcloud/news/releases
### Known Working Integrations
#### Chrome / Edge
1. Install [RSS Subscription Extension (by Google)](https://chrome.google.com/webstore/detail/rss-subscription-extensio/nlbjncdgjeocebhnmkbbbdekmmmcbfjd) extension
1. Open the extension's options menu
1. Click `Add..`
1. In the *Description* field, enter a description for the RSS reader entry. 'NextCloud News' is a reasonable name.
1. Enter `https://<NEXTCLOUD_BASE_PATH>/index.php/apps/news?subscribe_to=%s` replacing &lt;NEXTCLOUD_BASE_PATH&gt; with the base URL path to your NextCloud instance.
* Domain based example: <https://cloud.mydomain.com/index.php/apps/news?subscribe_to=%s>
* Domain+subpath based example: <https://cloud.mydomain.com/nextcloud/index.php/apps/news?subscribe_to=%s>
#### Firefox
1. Install Firefox Add-on Extension [Awesome RSS](https://addons.mozilla.org/en-US/firefox/addon/awesome-rss/)
1. Open the `Preferences` for the extension
1. In the 'Subscribe using' section, select the `NextCloud` radio button
1. In the field link field, enter the base NextCloud URL.
* Domain based example: <https://cloud.mydomain.com/>
* Domain+subpath based example: <https://cloud.mydomain.com/nextcloud/>

View File

@@ -9,157 +9,49 @@ There are essentially three different use cases for plugins:
* Dropping in additional CSS or JavaScript * Dropping in additional CSS or JavaScript
## The Basics ## The Basics
Whatever plugin you want to create, you first need to create a basic structure. A plugin is basically just an app, so you can take advantage of the full [Nextcloud app API](https://docs.nextcloud.org/server/latest/developer_manual/app/index.html). If you want you can [take a look at the developer docs](https://docs.nextcloud.org/server/latest/developer_manual/app/index.html) or [dig into the tutorial](https://docs.nextcloud.org/server/latest/developer_manual/app/tutorial.html).
Whatever plugin you want to create, you first need to create a basic structure. A plugin is basically just an app, so you can take advantage of the full [Nextcloud app API](https://docs.nextcloud.org/server/latest/developer_manual/app/index.html). [Take a look at the developer docs](https://docs.nextcloud.com/server/latest/developer_manual/app_development/index.html) or [dig into the tutorial](https://docs.nextcloud.com/server/latest/developer_manual/app_development/tutorial.html).
However, if you just want to start slow, the full process is described below. However, if you just want to start slow, the full process is described below.
First create the following directories and files: First create a skeleton app using the [web interface](https://apps.nextcloud.com/developer/apps/generate)
The application name affects the name and namespace of your plugin and only one app can exist using the same name. Choose wisely. This will become the directory name in the Nextcloud `apps/` directory
* **newsplugin/** * **newsplugin/**
* **appinfo/** * **appinfo/**
* **app.php** * **app.php**
* **info.xml** * **info.xml**
The first folder name affects the name and namespace of your plugin and only one app can exist using the same name. Choose wisely.
First let's add some meta ata about our app. Open the **newsplugin/appinfo/info.xml** and add the following contents:
```xml
<?xml version="1.0"?>
<info>
<id>newsplugin</id>
<name>Example News Plugin</name>
<description>This plugin allows you to share articles via Twitter</description>
<licence>AGPL</licence>
<author>Your Name Here</author>
<version>0.0.1</version>
<dependencies>
<nextcloud min-version="10"/>
<owncloud min-version="9.1"/>
<php min-version="5.6"/>
</dependencies>
</info>
```
**Note**: You must license your app under the [AGPL 3 or later](https://www.gnu.org/licenses/agpl-3.0.en.html) to comply with the News app's license. Don't forget to add the license as plain text file if you want to distribute your app! **Note**: You must license your app under the [AGPL 3 or later](https://www.gnu.org/licenses/agpl-3.0.en.html) to comply with the News app's license. Don't forget to add the license as plain text file if you want to distribute your app!
Then we want to make sure that our code is only run if the News app is enabled. To do that put the following PHP code into the **newsplugin/appinfo/app.php** file: Then we want to make sure that our code is only run if the News app is enabled. To do that put the following PHP code into the **newsplugin/lib/AppInfo/Application.php** file:
```php ```php
<?php <?php
namespace OCA\NewsPlugin\AppInfo; declare(strict_types=1);
use OCP\App;
if (App::isEnabled('news')) { namespace OCA\NewsBookmarkPlugin\AppInfo;
// your code here
use OCP\AppFramework\App;
use OCP\Util;
use OCP\App as Test;
class Application extends App {
public const APP_ID = 'newsbookmarkplugin';
public function __construct() {
parent::__construct(self::APP_ID);
// your code here
}
} }
``` ```
If your plugin integrates with another Nextcloud app, make sure to also require it be installed. If you depend on the Bookmarks app for instance use:
```php
<?php
namespace OCA\MyNewsPlugin\AppInfo;
use OCP\App;
if (App::isEnabled('news') && App::isEnabled('bookmarks')) {
// your code here
}
```
Now you are ready to enable the app. Head over to the apps section and choose the **Not enabled** section. Your app should be listed under the name **Example News Plugin** (or whatever name you set in the **info.xml**).
With the basics set up, you can now choose how to progress further. In our case we just want to add some additional CSS and JavaScript, so we are going to create a client-side plugin.
## Client-Side Plugin
A client-side plugin is adding additional JavaScript and/or CSS to the News app. Remember the **app.php**? Open it and place the following contents inside:
```php
<?php
namespace OCA\MyNewsPlugin\AppInfo;
use OCP\App;
if (App::isEnabled('news') && class_exists('OCA\News\Plugin\Client\Plugin')) {
\OCA\News\Plugin\Client\Plugin::registerScript('newsplugin', 'script');
\OCA\News\Plugin\Client\Plugin::registerStyle('newsplugin', 'style');
}
```
This will tell the News app to load the following files after its own JavaScript and CSS files have been included:
* **newsplugin/js/script.js**
* **newspluing/css/style.css**
### Adding Basic JavaScript Functionality
You can basically add any JavaScript you want. If you want to add a new article action, this is a bit more complicated because it's hard to hook into Angular from the outside. Therefore, the News app provides an API which makes creating additional article actions a breeze.
A basic article action looks like this:
```js
News.addArticleAction(function($actionsElement, article) {
// your code here
});
```
The **addArticleAction** method expects a function with the following parameters:
* **$actionsElement**: The DOM element wrapped in jQuery where your plugin should be appended to
* **article**: The current article's data (readonly!). The article object has the following properties:
* **id**: the article ID in the News database
* **url**: the article URL it points to
* **title**: the article title
* **author**: the article author
* **pubDate**: the article published date, a Unix timestamp
* **body**: the HTML content
* **enclosureMime**: if an enclosure is added, this is the mime type
* **enclosureLink**: this is the source of the enclosure
* **mediaThumbnail**: if there is a media attached, this is its thumbnail
* **mediaDescription**: if there is a media attached, this is its description
* **feedId**: the feed ID it belongs to
* **unread**: if the article is unread (bool)
* **starred**: if the article is starred (bool)
* **lastModified**: the last modified date
With that in mind, let's add the Twitter button. Open the JavaScript file at **newsplugin/js/script.js** and add the following contents:
```js
News.addArticleAction(function($actionsElement, article) {
var $li = $('<li>')
.addClass('article-plugin-twitter');
var $button = $('<button>')
.attr('title', t('newsplugin', 'Share on Twitter'));
var text = 'Read this: ' + article.url;
var url = 'https://twitter.com/intent/tweet?text=' + encodeURIComponent(text);
$button.click(function (event) {
window.open(url);
window.opener = null; // prevent twitter being from able to access the DOM
event.stopPropagation(); // prevent expanding in compact mode
});
$li.append($button);
$actionsElement.append($li);
});
```
Great! Now the only thing left is to add some styles.
### Adding Styles
Now let's add some styles to our app. We want to style the button to look like a Twitter icon, so simply download an icon (e.g. [from Wikipedia](https://commons.wikimedia.org/wiki/File:Twitter_icon.png)) and place it at **newsplugin/img/twitter.png**.
Then open the **newspluing/css/style.css** file and add the following CSS:
```css
.article-plugin-twitter button {
background-image: url('../img/twitter.png');
}
```
Reload the News app and click the three dots menu, sit back and enjoy :)
## Server-Side Plugin ## Server-Side Plugin
A Server-Side plugin is a plugin that uses the same infrastructure as the News app for its own purposes. An example would be a plugin that makes the starred entries of a user available via an interface or a bookmark app that also shows starred articles as bookmarks. A Server-Side plugin is a plugin that uses the same infrastructure as the News app for its own purposes. An example would be a plugin that makes the starred entries of a user available via an interface or a bookmark app that also shows starred articles as bookmarks.
It's very easy to interface with the News app. Because all Classes are registered in the **news/app/application.php** it takes almost no effort to use the same infrastructure. It's very easy to interface with the News app. Because all Classes are registered in the **news/app/application.php** it takes almost no effort to use the same infrastructure.
@@ -200,11 +92,109 @@ class Application extends App {
Using automatic container assembly you can then use it from your code by simply adding the type to your constructors. Using automatic container assembly you can then use it from your code by simply adding the type to your constructors.
# TODO: Update the following
### Examples If your plugin integrates with another Nextcloud app, make sure to also require it be installed. If you depend on the Bookmarks app for instance use:
Client-side plugins:
* [Mail Share](https://github.com/cosenal/mailsharenewsplugin): Client-side plugin to share articles by email ```php
Server-side plugins: <?php
namespace OCA\MyNewsPlugin\AppInfo;
use OCP\App;
* [Feed Central](https://github.com/Raydiation/feedcentral): Publish your feeds as RSS if (App::isEnabled('news') && App::isEnabled('bookmarks')) {
// your code here
}
```
Now you are ready to enable the app. Head over to the apps section and choose the **Not enabled** section. Your app should be listed under the name **Example News Plugin** (or whatever name you set in the **info.xml**).
With the basics set up, you can now choose how to progress further. In our case we just want to add some additional CSS and JavaScript, so we are going to create a client-side plugin.
## Client-Side Plugin
A client-side plugin is adding additional JavaScript and/or CSS to the News app. Remember the **app.php**? Open it and place the following contents inside:
```php
<?php
namespace OCA\MyNewsPlugin\AppInfo;
use OCP\App;
if (App::isEnabled('news') && class_exists('OCA\News\Plugin\Client\Plugin')) {
\OCA\News\Plugin\Client\Plugin::registerScript('newsplugin', 'script');
\OCA\News\Plugin\Client\Plugin::registerStyle('newsplugin', 'style');
}
```
This will tell the News app to load the following files after its own JavaScript and CSS files have been included:
* **newsplugin/js/script.js**
* **newspluing/css/style.css**
### Adding Basic JavaScript Functionality
You can basically add any JavaScript you want. If you want to add a new article action, this is a bit more complicated because it's hard to hook into Angular from the outside. Therefore, the News app provides an API which makes creating additional article actions a breeze.
A basic article action looks like this:
```js
News.addArticleAction(function($actionsElement, article) {
// your code here
});
```
The **addArticleAction** method expects a function with the following parameters:
* **$actionsElement**: The DOM element wrapped in jQuery where your plugin should be appended to
* **article**: The current article's data (readonly!). The article object has the following properties:
* **id**: the article ID in the News database
* **url**: the article URL it points to
* **title**: the article title
* **author**: the article author
* **pubDate**: the article published date, a Unix timestamp
* **body**: the HTML content
* **enclosureMime**: if an enclosure is added, this is the mime type
* **enclosureLink**: this is the source of the enclosure
* **mediaThumbnail**: if there is a media attached, this is its thumbnail
* **mediaDescription**: if there is a media attached, this is its description
* **feedId**: the feed ID it belongs to
* **unread**: if the article is unread (bool)
* **starred**: if the article is starred (bool)
* **lastModified**: the last modified date
With that in mind, let's add the Twitter button. Open the JavaScript file at **newsplugin/js/script.js** and add the following contents:
```js
News.addArticleAction(function($actionsElement, article) {
var $li = $('<li>')
.addClass('article-plugin-twitter');
var $button = $('<button>')
.attr('title', t('newsplugin', 'Share on Twitter'));
var text = 'Read this: ' + article.url;
var url = 'https://twitter.com/intent/tweet?text=' + encodeURIComponent(text);
$button.click(function (event) {
window.open(url);
window.opener = null; // prevent twitter being from able to access the DOM
event.stopPropagation(); // prevent expanding in compact mode
});
$li.append($button);
$actionsElement.append($li);
});
```
Great! Now the only thing left is to add some styles.
### Adding Styles
Now let's add some styles to our app. We want to style the button to look like a Twitter icon, so simply download an icon (e.g. [from Wikipedia](https://commons.wikimedia.org/wiki/File:Twitter_icon.png)) and place it at **newsplugin/img/twitter.png**.
Then open the **newspluing/css/style.css** file and add the following CSS:
```css
.article-plugin-twitter button {
background-image: url('../img/twitter.png');
}
```
Reload the News app and click the three dots menu, sit back and enjoy :)

View File

@@ -1,4 +1,5 @@
# Themes # Themes
Nextcloud News can look different with the following themes: Nextcloud News can look different with the following themes:
* [Nextcloud News Themes](https://github.com/cwmke/nextcloud-news-themes) * [Nextcloud News Themes](https://github.com/cwmke/nextcloud-news-themes)

View File

@@ -1,9 +1,9 @@
# Installation/Update # Installation/Update & Uninstall
## Dependencies ## Dependencies
* 64bit OS (starting with News 16.0.0) * 64bit OS (starting with News 16.0.0)
* PHP >= 7.3 * PHP >= 8.0
* Nextcloud 22 * Nextcloud (current stable version)
* libxml >= 2.7.8 * libxml >= 2.7.8
You also need some PHP extensions: You also need some PHP extensions:
@@ -21,16 +21,25 @@ You also need some PHP extensions:
* MySQL >= 8.0 * MySQL >= 8.0
* SQLite (discouraged) * SQLite (discouraged)
Also see the [Nextcloud documentation](https://docs.nextcloud.com/server/stable/admin_manual/configuration_database/linux_database_configuration.html?highlight=database). Oracle is currently not supported by news. Also see the [Nextcloud documentation](https://docs.nextcloud.com/server/stable/admin_manual/configuration_database/linux_database_configuration.html?highlight=database). Oracle is currently not supported by News.
## Performance Notices ## Performance Notices
* Use MySQL/MariaDB or PostgreSQL for better database performance * Use MySQL/MariaDB or PostgreSQL for better database performance
* Use the [updater script to thread and speed up the update](https://github.com/nextcloud/news-updater) * Use the [updater script to thread and speed up the update](https://github.com/nextcloud/news-updater)
## Cache
News and it's libraries require a writeable temporary directory used as cache. The base directory depends on your system.
You can [configure a custom directory](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html?highlight=temp#tempdirectory) if you want.
In most cases the base directory will be `/tmp`. News will create a folder `news-$instanceID` the [instance ID is defined by Nextcloud](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html?highlight=temp#instanceid).
Inside that folder a subfolder `cache` is created, inside this cache folder news and libraries will try to create cache directories for caching images, html and more.
You need to ensure that your web-server user can write to that directory.
## Before you install/update the News app ## Before you install/update the News app
Before you install the app do the following: Before you install the app do the following:
* Check that your **nextcloud/data/** directory is owned by your web server user and that it is write/readable
* Check that your installation fulfills the [requirements listed above](#dependencies) * Check that your installation fulfills the [requirements listed above](#dependencies)
* [Set up Nextcloud Background Jobs](https://docs.nextcloud.org/server/latest/admin_manual/configuration_server/background_jobs_configuration.html#cron) to enable feed updates. * [Set up Nextcloud Background Jobs](https://docs.nextcloud.org/server/latest/admin_manual/configuration_server/background_jobs_configuration.html#cron) to enable feed updates.
@@ -93,3 +102,51 @@ To update the News app use change into the **nextcloud/apps/news/** directory us
git pull --rebase origin master git pull --rebase origin master
make make
## Uninstall with cleanup
First uninstall the app via the web-interface or via occ:
```console
./occ app:remove news
```
This currently does not remove any of the database tables.
Data in your `/tmp` directory will be automatically deleted by the OS.
If you changed the temporary directory for Nextcloud you need to check on your own.
Careful, this next part is only intended for admins, that know what they are doing.
To remove the tables from the DB we drop the tables of News.
Your installation might have a different prefix than `oc_` but it is the default in most installations.
Connect to your DB and execute the commands. Don't forget to switch to the right database.
For example in mysql: `use nextcloud;`
```sql
DROP TABLE oc_news_items;
DROP TABLE oc_news_feeds;
DROP TABLE oc_news_folders;
```
Then we remove the traces in the migrations table.
```sql
DELETE FROM oc_migrations WHERE app='news';
```
Next delete the app configuration.
```sql
DELETE FROM oc_appconfig WHERE appid = 'news';
```
And finally remove the jobs from the job table.
The last two lines are only needed for older installations.
```sql
DELETE FROM oc_jobs WHERE class='OCA\\News\\Cron\\UpdaterJob';
DELETE FROM oc_jobs WHERE class='OCA\\News\\Cron\\Updater';
DELETE FROM oc_jobs WHERE argument='["OCA\\\\News\\\\Cron\\\\Updater","run"]';
```
Now nothing is left from News in your Nextcloud installation.

168
docs/troubleshooting.md Normal file
View File

@@ -0,0 +1,168 @@
# Troubleshooting
This is a brief list of common issues that come up with NextCloud News.
## My browser shows a mixed content warning (Connection is Not Secure)
If you are serving your Nextcloud over HTTPS your browser will very likely warn you with a yellow warnings sign about your connection not being secure.
* Chrome will show no green HTTPS lock sign.
* Firefox will show you the following image Mixed Passive Content ![Mixed Content Type](https://ffp4g1ylyit3jdyti1hqcvtb-wpengine.netdna-ssl.com/security/files/2015/10/mixed-passive-click1-600x221.png)
Note that this warning **is not red and won't block the page like the following images** which signal a serious issue:
* Chrome ![Chrome error](https://www.inmotionhosting.com/support/images/stories/website/errors/ssl/chrome-self-signed-ssl-warning.png)
* Firefox ![Firefox error](https://www.howtogeek.com/wp-content/uploads/2014/02/650x367xchrome-mixed-content-https-problem.png.pagespeed.gp+jp+jw+pj+js+rj+rp+rw+ri+cp+md.ic.r_lQiZiq38.png)
### What is the cause of the (yellow) error message?
This warning is caused by mixed passive content and means that your page loads passive resources from non HTTPS resources, such as:
* Images
* Video/Audio
* Some Ads
This allows a possible attacker to perform a MITM (man-in-the-middle) attack by serving you different images or audio/video.
### Why doesn't the News app fix it?
The News app fully prevents mixed **active** content by only allowing HTTPS iframes from known locations; other possible mixed active content elements such as &lt;script\&gt; are stripped from the feed. Because images and audio/video are an integral part of a feed, we can not simply strip them.
Since an attacker can not execute code in contrast to mixed active content, but only replace images/audio/video in your feed reader, this is **not considered to be a security issue**. If, for whatever reason (e.g. feed which would allow fishing), this is a security problem for you, contact the specific feed provider and ask him to serve his feed content over HTTPS.
### Why don't you simply use an HTTPS image/audio/video proxy?
For the same reason that we can't fix non HTTPS websites: It does not fix the underlying issue, but only silences it. If you are using an image HTTPS proxy, an attacker can simply attack your image proxy since the proxy fetches insecure content. **Even worse**: if your image proxy serves these images from the same domain as your Nextcloud installation, you are [vulnerable to XSS via SVG images](https://www.owasp.org/images/0/03/Mario_Heiderich_OWASP_Sweden_The_image_that_called_me.pdf). In addition, people feel safe when essentially they are not.
Since most people don't understand mixed content and don't have two domains and a standalone server for the image proxy, it is very likely they will choose to host it under the same domain.
Because we care about our users' security and don't want to hide security warnings, we won't fix (aka silence) this issue.
The only fix for this issue is that feed providers serve their content over HTTPS.
## I am getting: Exception: Some\Class does not exist errors in my nextcloud.log
This is very often caused by missing or old files, e.g. by failing to upload all the News app files or errors during installation. Before you report a bug, please recheck if all files from the archive are in place and accessible.
## Feeds not updated
Feeds can be updated using Nextcloud's system cron or an external updater via the API. **The feed update is not run in Webcron and AJAX cron mode!**
### Validating Using System Cron
!!! info
This requires Nextcloud 26 or newer and News 24.0.0 or newer.
Follow this checklist:
* Check admin settings of Nextcloud, was the last cron execution ok.
* Check the logs for errors.
* Does your [cache configuration](install.md#cache) work?
* Check the News admin settings, system cron is used to update news.
* You should see a info card at the top, which will tell you when the last job execution was.
* If the card is red it is very likely that the update job is stuck.
* If it is green then maybe only some feeds are failing to update, check the Nextcloud logs.
If you believe the job is stuck you can reset it. For further steps you need to use occ.
You can check again the status of the job.
(replace `www-data` with your httpd user)
```bash
sudo -u www-data php ./occ news:updater:job
Checking update Status
Last Execution was 2023-03-20 12:20:03 UTC
```
The same check that is done in the News admin settings can be done using occ too.
Adding the `--check-elapsed` option displays the time elapsed since the last execution,
and if it's considered too long ago, a message will be displayed, and the command returns
with exit code 2. This can be used in scripts to send an alert for example.
```console
$ sudo -u www-data php ./occ news:updater:job --check-elapsed
Checking update Status
Last Execution was 2023-03-20 12:20:03 UTC
8 hours, 21 minutes, 20 seconds ago
Something is wrong with the news cronjob, execution delay exceeded the configured interval.
```
If you think the job is stuck you can reset it, this may lead to issues if the job is currently running!
```bash
sudo -u www-data php ./occ news:updater:job --reset
Checking update Status
Last Execution was 2023-03-20 12:20:03 UTC
Attempting to reset the job.
Done, job should execute on next schedule.
```
The output of the command should have changed.
```bash
sudo -u www-data php ./occ news:updater:job
Checking update Status
Last Execution was 1970-01-01 00:00:00 UTC
```
After some time has passed the timestamp should be close to the current time.
If this did not help, check the logs and open a issue or discussion on GitHub.
#### Outdated Steps
Follow these steps if you are running an older version of News and Nextcloud.
* Check if you are using the system cron (Cron) setting on the admin page. AJAX and Web cron will not update feeds
* Check if the cronjob exists with `crontab -u www-data -e` (replace www-data with your httpd user)
* Check the file permissions of the cron.php file and if www-data (or whatever your httpd user is called like) can read and execute that script
* Check if you can execute the cron with `sudo -u www-data php -f nextcloud/cron.php` (replace www-data with your httpd user)
* Check your `data/nextcloud.log` for errors
* Check if the cronjob is ever executed by placing an `error_log('updating');` in the [background job file](https://github.com/nextcloud/news/blob/master/lib/Service/UpdaterService.php#L55). If the cronjob runs, there should be an updating log statement in your httpd log.
* If there is no updating statement in your logs check if your cronjob is executed by executing a different script
* Check if the oc_jobs table has a reserved_at entry with a value other than 0. If it does for whatever reason, set it to 0. You can check this by executing:
```sql
SELECT * from oc_jobs WHERE class LIKE '%News%' ORDER BY id;
```
You will get two rows where column class will be `OCA\News\Cron\Updater` and `OCA\News\Cron\UpdaterJob`.
!!! info
In newer versions of News (21.x.x) the old job OCA\News\Cron\Updater was removed from the DB.
Reset the reserved_at by executing
```sql
UPDATE oc_jobs SET reserved_at = 0 WHERE id = <id from above SELECT statement>;
```
If your cron works fine, but Nextcloud's cronjobs are never executed, file a bug in [server](https://github.com/nextcloud/server/)
### Using External Updater
* Check if your configuration is set to not use the system cron.
* Consult the documentation of the updater
* Check your data/nextcloud.log for errors
## Database table grows too big
If your users have subscribed to some high-volume feeds where a lot of items remain unread, this can lead to an oversized news table over time. As a consequence, the database upgrade of the news app can take several hours, during which Nextcloud cannot be used.
By default, Nextcloud News purges old news items above a certain threshold each time it fetches new news items. The maximum number of items per feed that should be kept during the purging can be defined through the “Maximum read count per feed” setting in the admin UI or the `autoPurgeCount` value in the config. Additionally you may enable the option to also purge unread items `purgeUnread`. This is useful if your users have large amounts of unread items. Starred items are always exempt from purging.
The command `occ news:updater:after-update [--purge-unread] [<purge-count>]` can be used to manually purge old news items across the instance. With the `--purge-unread option`, unread items are also purged (starred items are still exempt). If `purge-count` is not specified, the configured `autoPurgeCount` is used.
The purge count only applies to the items that are purged. For example, when purging a feed that has 100 unread items, 100 starred read items and 100 unstarred read items, using a purge-count of 50 would keep all unread and starred items and the latest 50 read items. Using a `purge-count` of 50 along with `--purge-unread` would keep the all starred items plus the latest 50 from the set of unread and read items.
## Missing 4-byte support SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value:
This is likely caused by your feed using emojis in the feed title or text.
The DB is then not able to store the feed and runs into strange decoding errors.
You need to convert your DB to support 4 bytes, check the [Nextcloud documentation](https://docs.nextcloud.com/server/stable/admin_manual/configuration_database/mysql_4byte_support.html).
References [#1165](https://github.com/nextcloud/news/issues/1165) [#526](https://github.com/nextcloud/news/issues/526)

View File

@@ -34,6 +34,10 @@ app.config(function ($routeProvider, $provide, $httpProvider, $locationProvider)
$provide.constant('MARK_READ_TIMEOUT', 0.5); $provide.constant('MARK_READ_TIMEOUT', 0.5);
$provide.constant('SCROLL_TIMEOUT', 0.1); $provide.constant('SCROLL_TIMEOUT', 0.1);
const majorVersion = parseInt($('#app-content').data('nc-major-version') || 0, 10);
$provide.constant('NC_MAJOR_VERSION', majorVersion);
window.NEWS_NC_MAJOR_VERSION = majorVersion;
// make sure that the CSRF header is only sent to the Nextcloud domain // make sure that the CSRF header is only sent to the Nextcloud domain
$provide.factory('CSRFInterceptor', function ($q, BASE_URL, $window) { $provide.factory('CSRFInterceptor', function ($q, BASE_URL, $window) {
return { return {
@@ -55,7 +59,7 @@ app.config(function ($routeProvider, $provide, $httpProvider, $locationProvider)
var errorMessages = { var errorMessages = {
0: t('news', 'Request failed, network connection unavailable!'), 0: t('news', 'Request failed, network connection unavailable!'),
401: t('news', 'Request unauthorized. Are you logged in?'), 401: t('news', 'Request unauthorized. Are you logged in?'),
403: t('news', 'Request forbidden. Are you an admin?'), 403: t('news', 'Request forbidden. Are you an administrator?'),
412: t('news', 'Token expired or app not enabled! Reload the page!'), 412: t('news', 'Token expired or app not enabled! Reload the page!'),
500: t('news', 'Internal server error! Please check your ' + 500: t('news', 'Internal server error! Please check your ' +
'data/nextcloud.log file for additional ' + 'data/nextcloud.log file for additional ' +

View File

@@ -18,7 +18,7 @@ app.controller('ContentController', function (Publisher, FeedResource, ItemResou
// distribute data to models based on key // distribute data to models based on key
Publisher.publishAll(data); Publisher.publishAll(data);
var getOrdering = function () { var isOldestFirst = function () {
var ordering = SettingsResource.get('oldestFirst'); var ordering = SettingsResource.get('oldestFirst');
if (self.isFeed()) { if (self.isFeed()) {
@@ -35,14 +35,7 @@ app.controller('ContentController', function (Publisher, FeedResource, ItemResou
this.getFirstItem = function () { this.getFirstItem = function () {
var orderedItems = this.getItems(); var orderedItems = this.getItems();
var item = orderedItems[orderedItems.length - 1]; var item = orderedItems[0];
var firstItem = orderedItems[0];
// If getOrdering == 1, then the sorting is set to
// newest first. So, item should be the first item
//
if (getOrdering()) {
item = firstItem;
}
if (item === undefined) { if (item === undefined) {
return undefined; return undefined;
} }
@@ -152,7 +145,7 @@ app.controller('ContentController', function (Publisher, FeedResource, ItemResou
return $route.current.$$route.type === FEED_TYPE.FEED; return $route.current.$$route.type === FEED_TYPE.FEED;
}; };
this.oldestFirst = getOrdering(); this.oldestFirst = isOldestFirst();
this.autoPage = function () { this.autoPage = function () {
if (this.isNothingMoreToAutoPage) { if (this.isNothingMoreToAutoPage) {

View File

@@ -8,10 +8,19 @@
* @copyright Bernhard Posselt 2014 * @copyright Bernhard Posselt 2014
*/ */
app.directive('newsScroll', function ($timeout, ITEM_AUTO_PAGE_SIZE, app.directive('newsScroll', function ($timeout, ITEM_AUTO_PAGE_SIZE,
MARK_READ_TIMEOUT, SCROLL_TIMEOUT) { MARK_READ_TIMEOUT, SCROLL_TIMEOUT, NC_MAJOR_VERSION) {
'use strict'; 'use strict';
var timer; var timer;
var scrollElement = function() {
// This should be in sync with the same function in js/gui/KeyboardShortcuts.js
if (NC_MAJOR_VERSION >= 25) {
return $('#app-content');
}
return $(window);
};
// autopaging // autopaging
var autoPage = function (limit, elem, scope) { var autoPage = function (limit, elem, scope) {
var counter = 0; var counter = 0;
@@ -49,8 +58,7 @@ app.directive('newsScroll', function ($timeout, ITEM_AUTO_PAGE_SIZE,
articles.forEach(function(article) { articles.forEach(function(article) {
// distance to top + height // distance to top + height
var distTop = article.offsetTop + article.offsetHeight; var distTop = article.offsetTop + article.offsetHeight;
var scrollTop = window.pageYOffset || var scrollTop = window.pageYOffset || scrollElement().scrollTop();
document.documentElement.scrollTop;
if (distTop < scrollTop) { if (distTop < scrollTop) {
ids.push(parseInt(article.dataset.id, 10)); ids.push(parseInt(article.dataset.id, 10));
} else { } else {
@@ -100,11 +108,11 @@ app.directive('newsScroll', function ($timeout, ITEM_AUTO_PAGE_SIZE,
} }
}; };
$(document).on('scroll', scrollHandler); scrollElement().on('scroll', scrollHandler);
// remove scroll handler if element is destroyed // remove scroll handler if element is destroyed
scope.$on('$destroy', function () { scope.$on('$destroy', function () {
$(document).off('scroll', scrollHandler); scrollElement().off('scroll', scrollHandler);
}); });
} }
}; };

View File

@@ -7,7 +7,7 @@
* @author Bernhard Posselt <dev@bernhard-posselt.com> * @author Bernhard Posselt <dev@bernhard-posselt.com>
* @copyright Bernhard Posselt 2014 * @copyright Bernhard Posselt 2014
*/ */
app.directive('newsStickyMenu', function () { app.directive('newsStickyMenu', function (NC_MAJOR_VERSION) {
'use strict'; 'use strict';
return function (scope, elem, attr) { return function (scope, elem, attr) {
@@ -18,7 +18,9 @@ app.directive('newsStickyMenu', function () {
if (scrollHeight > height) { if (scrollHeight > height) {
elem.addClass('fixed'); elem.addClass('fixed');
elem.css('top', scrollHeight); if (NC_MAJOR_VERSION < 25) {
elem.css('top', scrollHeight);
}
} else { } else {
elem.removeClass('fixed'); elem.removeClass('fixed');
} }

View File

@@ -16,6 +16,14 @@
(function (window, document, $) { (function (window, document, $) {
'use strict'; 'use strict';
var scrollElement = function() {
// This should be in sync with the same function in js/directive/NewsScroll.js
if (window.NEWS_NC_MAJOR_VERSION >= 25) {
return $('#app-content');
}
return $(window);
};
var noInputFocused = function (element) { var noInputFocused = function (element) {
return !( return !(
element.is('input') || element.is('input') ||
@@ -223,38 +231,38 @@
} }
}; };
var getActiveElement = function (scrollArea) { var getActiveElement = function () {
return scrollArea.find('.item.active:first'); return $('#app-content').find('.item.active:first');
}; };
var onActiveItem = function (scrollArea, callback) { var onActiveItem = function (callback) {
callback(getActiveElement(scrollArea)); callback(getActiveElement());
}; };
var toggleUnread = function (scrollArea) { var toggleUnread = function () {
onActiveItem(scrollArea, function (item) { onActiveItem(function (item) {
item.find('.toggle-keep-unread').trigger('click'); item.find('.toggle-keep-unread').trigger('click');
}); });
}; };
var toggleStar = function (scrollArea) { var toggleStar = function () {
onActiveItem(scrollArea, function (item) { onActiveItem(function (item) {
item.find('.star').trigger('click'); item.find('.star').trigger('click');
}); });
}; };
var expandItem = function (scrollArea) { var expandItem = function () {
onActiveItem(scrollArea, function (item) { onActiveItem(function (item) {
item.find('.utils').trigger('click'); item.find('.utils').trigger('click');
}); });
}; };
var openLink = function (scrollArea) { var openLink = function () {
onActiveItem(scrollArea, function (item) { onActiveItem(function (item) {
item.trigger('click'); // mark read
var url = item.find('.external:visible').attr('href'); var url = item.find('.external:visible').attr('href');
var newWindow = window.open(url, '_blank'); var newWindow = window.open(url, '_blank');
newWindow.opener = null; newWindow.opener = null;
setTimeout(()=>item.trigger('click'), 0); // mark read
}); });
}; };
@@ -265,9 +273,14 @@
var scrollToItem = function (scrollArea, item, expandItemInCompact) { var scrollToItem = function (scrollArea, item, expandItemInCompact) {
// if you go to the next article in compact view, it should // if you go to the next article in compact view, it should
// expand the current one // expand the current one
scrollArea.scrollTop(
item.offset().top - 50 if (window.NEWS_NC_MAJOR_VERSION >= 25) {
); scrollArea.scrollTop(scrollArea.scrollTop() + item.offset().top - 50);
} else {
scrollArea.scrollTop(
item.offset().top - 50
);
}
setItemActive(item[0]); setItemActive(item[0]);
@@ -279,7 +292,7 @@
}; };
var scrollToNextItem = function (scrollArea, expandItemInCompact) { var scrollToNextItem = function (scrollArea, expandItemInCompact) {
var activeElement = getActiveElement(scrollArea); var activeElement = getActiveElement();
// in expand in compact mode, jumping to the next item should open // in expand in compact mode, jumping to the next item should open
// the current one if it's not open yet // the current one if it's not open yet
if (expandItemInCompact && !activeElement.hasClass('open')) { if (expandItemInCompact && !activeElement.hasClass('open')) {
@@ -300,7 +313,7 @@
var scrollToPreviousItem = function (scrollArea, var scrollToPreviousItem = function (scrollArea,
expandItemInCompact) { expandItemInCompact) {
var activeElement = getActiveElement(scrollArea); var activeElement = getActiveElement();
var previousElement = activeElement.prev(); var previousElement = activeElement.prev();
// if the active element has been scrolled, the previous element // if the active element has been scrolled, the previous element
@@ -321,18 +334,19 @@
items.each(function (index, item) { items.each(function (index, item) {
var $item = $(item); var $item = $(item);
var bottom = $item.position().top + $item.outerHeight(true); var bottom = $item.position().top + $item.outerHeight(true);
if ((bottom - 20) >= 0) { var scrollBottom = scrollElement().scrollTop();
if (bottom - 20 >= scrollBottom) {
setItemActive(item); setItemActive(item);
return false; return false;
} }
}); });
}; };
$('#app-content').scroll(_.debounce(detectAndSetActiveItem, 250)); scrollElement().scroll(_.debounce(detectAndSetActiveItem, 250));
}); });
$(document).keyup(function (event) { $(document).keyup(function (event) {
var keyCode = event.keyCode; var keyCode = event.keyCode;
var scrollArea = $(document); var scrollArea = scrollElement();
var navigationArea = $('#app-navigation'); var navigationArea = $('#app-navigation');
var isCompactView = $('#articles.compact').length > 0; var isCompactView = $('#articles.compact').length > 0;
var isExpandItem = $('#articles') var isExpandItem = $('#articles')

Some files were not shown because too many files have changed in this diff Show More