Commit Graph

161 Commits

Author SHA1 Message Date
Ferdinand Thiessen 660f3f6fd1 refactor: use logical && || instead of weak and or operators
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-27 23:02:18 +02:00
Côme Chilliet ae4d38eb63 fix: Allow hyphen in appid
It’s rare but exists for some apps not in the appstore.
Also added unit tests for cleanAppId and fixed small issues with it.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-16 17:59:30 +02:00
Côme Chilliet f5111c0961 chore(tests): Do not mock DependencyAnalyzer in AppManagerTest
Not ideal to have coupled tests like that but it’s the easiest path
 forward to make sure the tests still covers the same usecase and avoid
 code duplication.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:40 +02:00
Côme Chilliet 12edd2b23a fix: Deduplicate code by using DependencyAnalyzer in the AppManager
Was a bit more complicated than expected because of a dependency loop,
the L10N factory uses the app manager, thus the AppManager cannot depend
on I10N directly or indirectly in its constructor.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:40 +02:00
Côme Chilliet 3cea218750 chore(tests): Use valid application names for tests
Dash is not allowed in appid, underscore is.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:40 +02:00
Ferdinand Thiessen 0ef58c96ab refactor(Memcache\Factory): move prefix generation to the factory class
This removes a circular dependency between AppConfig and cache factory.
When a cache in the app config is used.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 13:24:18 +02:00
Côme Chilliet 1f5e232314 chore: Move info parsing related method from OC_App to InfoParser
Also fix the tests

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 15:57:05 +02:00
Robin Appelman aa15f9d16d chore: run rector
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-07-01 22:45:52 +02:00
Ferdinand Thiessen 5981b7eb51 chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
Maxence Lange d8fc08d718 feat(lexicon): fix tests
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-06-24 12:10:57 -01:00
Robin Appelman 29e39c0a2e chore: run rector on tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-12 18:31:58 +02:00
Côme Chilliet a2fdeccc31 chore(tests): Adapt AppManager test to the use of searchValues
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-06-05 17:58:54 +02:00
Ferdinand Thiessen 9422b6d6d0 test: adjust library tests for PHPunit deprecations
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-05-28 11:20:15 +02:00
Joas Schilling 720ab52e07 test: Fix tests/lib/App*
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-05-15 08:21:24 +02:00
Côme Chilliet f758f565d4 fix: Replace getInstalledApps calls with getEnabledApps
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-02-13 10:19:20 +01:00
Côme Chilliet a3685551f7 fix: Replace isInstalled calls with isEnabledForAnyone or isEnabledForUser
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-02-13 10:19:19 +01:00
Ferdinand Thiessen 31664b3edd fix: Correctly return app id and app version for core styles and images
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-24 13:08:31 +01:00
skjnldsv 158299b3d7 fix(profile): make sure the app cannot be disabled as it was in core
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-11-14 10:25:10 +01:00
Joas Schilling 220bd3422f fix(appinfo): Make sure screenshot, author and category are always arrays
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-10-28 08:46:31 +01:00
provokateurin 9836e9b164 chore(deps): Update nextcloud/coding-standard to v1.3.1
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-19 14:21:20 +02:00
Christoph Wurst 49dd79eabb refactor: Add void return type to PHPUnit test methods
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-09-15 22:32:31 +02:00
Côme Chilliet 7ed583cb8e chore: Migrate cleanAppId and getAppPath calls to IAppManager from OC_App
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-09-13 10:08:43 +02:00
Julius Knorr 38e0a89972 fix: Add whiteboard to education and public sector bundle
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2024-09-12 09:13:42 +02:00
provokateurin 70ed08daf1 refactor(AppManager): Deprecated default apps handling
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-09 11:04:36 +02:00
Daniel Kesselberg af6de04e9e style: update codestyle for coding-standard 1.2.3
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
Jérôme Herbinet c221090c86 fix: unify bundle naming
Signed-off-by: Jérôme Herbinet <33763786+Jerome-Herbinet@users.noreply.github.com>
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-08-06 11:14:07 +02:00
Richard Steinmetz e42bceac9f feat: hide caldav server settings if no app uses the caldav backend
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-07-16 09:18:33 +02:00
Andy Scherzinger 1f7e2ba599 chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-13 17:41:36 +02:00
Côme Chilliet ac1d868d18 fix: Lazy load IURLGenerator from AppManager to avoid installation crash
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-22 15:50:06 +02:00
Côme Chilliet a0be3ffdf2 fix: Fix tests following OC_App migrations to IAppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-22 12:21:55 +02:00
Ferdinand Thiessen bae133bf4f fix(AppDiscoverFetcher): Do not remove entries as expired that have no expiry date
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-19 09:36:06 +01:00
Christopher Ng af49278c5f test: Update test for PublicSectorBundle
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-03-12 10:47:12 -07:00
Ferdinand Thiessen c8d7a5acaa fix(AppManager): Allow to query dark **or** bright icon
The navigation needs the bright icon, while the notifications and activity need a dark icon.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-08 09:51:03 +01:00
Ferdinand Thiessen 876e2d6198 feat(AppManager): Provide getAppIcon function
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-07 22:40:31 +01:00
Julius Härtl e13fb468cf fix: Fetch custom app store url without internet connection
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-03-04 12:47:14 +01:00
Joas Schilling 57a30e9bbe fix(appstore): Only send subscription keys to valid appstores
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-01-15 15:39:45 +01:00
Joas Schilling aa5f037af7 chore: apply changes from Nextcloud coding standards 1.1.1
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +01:00
Ferdinand Thiessen 927e7fcf67 fix(AppManager): Ensure that app manager can handle empty app keys on the navigation entries
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-11-14 20:04:48 +01:00
Ferdinand Thiessen 8d0c7cc5fa fix: Allow to set custom app order on navigation entries added by closures to NavigationManager
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-11-14 20:03:28 +01:00
Ferdinand Thiessen e9d4036389 feat(theming): Allow to configure default apps and app order in frontend settings
* Also add API for setting the value using ajax.
* Add cypress tests for app order and defaul apps

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-10-20 00:24:17 +02:00
Côme Chilliet 2d28e8110f Fix and extend tests for AppManager::getDefaultAppForUser
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-26 14:59:05 +02:00
Côme Chilliet f57c12b14e Fix various deprecation warnings in tests on PHP 8.3
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-14 18:13:12 +02:00
Joas Schilling 5bb6a7804f fix: Move AppManager events to IEventDispatcher
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-27 09:57:51 +02:00
Christoph Wurst 3d1acca1f3 chore(app): Do not clear unused cache key
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-30 17:48:20 +02:00
Côme Chilliet 8d5165e8dc Adapt tests to config value typing
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-05 17:42:14 +02:00
Christopher Ng 4f8e916585 Add label for logo link
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2023-03-29 13:36:45 -07:00
Thomas Citharel f1751c4428 Introduced app enable/disable/update typed events
OCP\App\ManagerEvent is depreciated since 22 without a replacement

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-13 11:52:57 +01:00
Côme Chilliet f5c361cf44 composer run cs:fix
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-20 11:45:08 +01:00
szaimen 1d17a0843a set theming app to alwaysEnabled
Signed-off-by: szaimen <szaimen@e.mail.de>
2022-10-17 17:51:39 +02:00
Arthur Schiwon a133a8a9d7 remove getDefaultInstallationBundle
- because all apps are shipped now it was returning an empty result

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-09-22 15:11:39 +02:00