Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependencies. #882

Closed
wants to merge 73 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
1089fc9
Update dependencies.
rosiel Jul 12, 2022
f168462
Update drupal version.
rosiel Jul 12, 2022
8603867
Merge pull request from GHSA-m58q-qq5h-mgqq
jordandukart Jul 21, 2022
9c2a84e
Allowing Image fields for multi-file media (#860)
dannylamb Jul 24, 2022
03653dd
Test matrix: remove php7.3, mysql5.7.
rosiel Jul 19, 2022
49ad4fd
Update php version in README.
rosiel Jul 19, 2022
fe78e21
Update stomp.
rosiel Jul 19, 2022
3cab63e
Allow failure on php 8.1 and add back drupal 10.
rosiel Jul 20, 2022
18ae117
simplify matrix.
rosiel Jul 20, 2022
ec9b0c0
Try again to use matrix overrides.
rosiel Jul 20, 2022
e6a2e5f
Add back drupal 9.3.
rosiel Jul 20, 2022
628cc9c
Fix matrix.
rosiel Jul 20, 2022
0c4dc20
Update matrix.
rosiel Jul 20, 2022
27fa309
Remove future versions we're not ready for.
rosiel Jul 21, 2022
7c4dcdd
no newline is one newline.
rosiel Jul 21, 2022
9689b8f
Try to get FunctionalJavascript working.
rosiel Jul 21, 2022
ddfd7f7
typo.
rosiel Jul 21, 2022
0ca3085
typo.
rosiel Jul 21, 2022
0bde66e
chromedriver.
rosiel Jul 21, 2022
8076b3a
chromedriver.
rosiel Jul 21, 2022
d103224
try now
rosiel Jul 22, 2022
43f3bb5
Add webdriver setting in phpunit.xml.
rosiel Jul 22, 2022
8cf8868
revert setting up chromedriver.
rosiel Jul 22, 2022
5686a4f
IsIslandora views filter and context condition use Islandora Utils. (…
rosiel Aug 3, 2022
0a4bfb4
throw error instead of returning null data
seth-shaw-asu Aug 9, 2022
c93930a
Allow media to use integer weight selector. (#894)
rosiel Aug 15, 2022
e556cbc
Add file access check to IIIF manifest generation. (#884)
adam-vessey Aug 31, 2022
1192a72
Update PULL_REQUEST_TEMPLATE.md
islandora-community Sep 8, 2022
99048e0
Fix/schemas (#898)
adam-vessey Sep 15, 2022
8010b15
Issue #2170: Sort "manage members" View results by field_weight (#900)
mjordan Sep 21, 2022
857b8f2
Unset pseudo field in display modes automatically (#899)
whikloj Sep 21, 2022
08c29c8
WIP Modify GenerateOCRDerivativeFile to support hOCR
alxp Jul 12, 2022
fbcdecc
Add Structured OCR field to IIIF Manifest view.
alxp Jul 27, 2022
759fefc
Skip empty image fields when constructing IIIF manifest.
alxp Aug 24, 2022
2938c56
WIP get hocr field in iiif view.
alxp Aug 25, 2022
f69aae0
WIP: Add hOCR file stream to IIIF Manifest.
alxp Aug 26, 2022
2f50c53
Add empty check when adding hOCR to IIIF manifest.
alxp Sep 7, 2022
1a7d17f
Fix error caused by rebase.
alxp Sep 7, 2022
da635b4
Fix PHPCS errors.
alxp Sep 8, 2022
b56f9ba
Fix PHPCS errors.
alxp Sep 8, 2022
b1e4e5c
Fix PHPCS Errors.
alxp Sep 8, 2022
ebe9829
Add check for falsity in IIIF Manifest along with 'isset()'
alxp Oct 20, 2022
77fd427
Fix/batch upload children, with validation according to default widge…
adam-vessey Nov 7, 2022
7ca7e94
Eliminate warnings when using NodeHasMediaUse views filter. (#914)
jasonhildebrand Dec 1, 2022
64b522a
Fix warning by checking whether key is set. (#909)
jasonhildebrand Dec 1, 2022
5a71339
delete media associated with an islandora object
shriram10567 Oct 18, 2022
0d9405a
list media associated with a Islandora object
shriram10567 Oct 27, 2022
0829856
fixed failing coding standard checks
shriram10567 Nov 1, 2022
394c5f6
check if the entity is a node
shriram10567 Nov 1, 2022
ab31e3e
added test cases for deleting node with media
shriram10567 Nov 1, 2022
42c24ac
delete media with files and translations
shriram10567 Nov 8, 2022
ef06ea9
Updated test cases to include file deletion
shriram10567 Nov 8, 2022
218b9f4
added islandora.libraries.yml
shriram10567 Nov 10, 2022
7d58ddb
added feature toggle for the behavior
shriram10567 Nov 15, 2022
1c57be1
skip entity types protected by entity integrity reference and updated…
Nov 25, 2022
6122fd4
fixed log message
Nov 25, 2022
e89e3f7
minor changes and post_update for delete_media_and_files
shriram10567 Dec 2, 2022
28a8105
Upgrade the EVA to 3.0.
rosiel Nov 21, 2022
0abdbec
Permit newer version of migrate_plus.
rosiel Dec 1, 2022
9a156eb
Fix errors when OCR field not set.
rosiel Dec 6, 2022
fd48120
Updates settings and view for filehash^2.
rosiel Nov 30, 2022
7785f96
Include original hash, and re-hash.
rosiel Nov 30, 2022
9b15856
Use new syntax for filehash.
rosiel Dec 13, 2022
1ff644b
No infinite derivatives.
rosiel Dec 9, 2022
f29ee77
Use a proper exception.
rosiel Dec 13, 2022
6197dfa
phpcs.
rosiel Dec 13, 2022
e3217d0
Document the add members and add media pages.
rosiel Jul 23, 2022
1aa14bd
Clarify wording and add manage link.
rosiel Nov 7, 2022
80362e6
Detect access before showing manage links.
rosiel Nov 7, 2022
b764954
Revert "Allowing Image fields for multi-file media (#860)"
rosiel Jul 25, 2022
2ac5190
Add Image fields only to Image derivative code.
rosiel Jul 26, 2022
7ae57b9
Improve wording on multi-file derivative Action forms.
rosiel Nov 24, 2022
7b218f2
Update dependencies.
rosiel Jul 12, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,4 @@ Any additional information that you think would be helpful when reviewing this
PR.

# Interested parties
Tag (@ mention) interested parties or, if unsure, @Islandora/8-x-committers
Tag (@ mention) interested parties or, if unsure, @Islandora/committers
97 changes: 8 additions & 89 deletions .github/workflows/build-2.x.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,96 +19,19 @@ jobs:
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.allowed_failure }}
strategy:
fail-fast: false
matrix:
php-versions: ["7.3", "7.4"]
# PHP 8.1 fails - see https://github.com/Islandora/islandora/issues/887
php-versions: ["7.4", "8.0"]
# test-suite functional-javascript will appear to pass but will skip tests; missing chromedriver.
test-suite: ["kernel", "functional", "functional-javascript"]
drupal-version: ["9.3.x", "9.4.x-dev"]
# Not yet Drupal 10 ready - see https://github.com/Islandora/islandora/issues/888
drupal-version: ["9.3.x", "9.4.x", "9.5.x-dev"]
mysql: ["8.0"]
allowed_failure: [false]
mysql: ["5.7"]
# include experimental parts
include:
# 9.3.x on PHP 8.0
- drupal-version: '9.3.x'
php-versions: '8.0'
mysql: "8.0"
test-suite: "kernel"
allowed_failure: true
- drupal-version: '9.3.x'
php-versions: '8.0'
mysql: "8.0"
test-suite: "functional"
allowed_failure: true
- drupal-version: '9.3.x'
php-versions: '8.0'
mysql: "8.0"
test-suite: "functional-javascript"
allowed_failure: true
# 9.3.x on PHP 8.1
- drupal-version: '9.3.x'
php-versions: '8.1'
mysql: "8.0"
test-suite: "kernel"
allowed_failure: true
- drupal-version: '9.3.x'
php-versions: '8.1'
mysql: "8.0"
test-suite: "functional"
allowed_failure: true
- drupal-version: '9.3.x'
php-versions: '8.1'
mysql: "8.0"
test-suite: "functional-javascript"
allowed_failure: true
# 9.4.x-dev on PHP "8.0"
- drupal-version: '9.4.x-dev'
php-versions: '8.0'
mysql: "8.0"
test-suite: "kernel"
allowed_failure: true
- drupal-version: '9.4.x-dev'
php-versions: '8.0'
mysql: "8.0"
test-suite: "functional"
allowed_failure: true
- drupal-version: '9.4.x-dev'
php-versions: '8.0'
mysql: "8.0"
test-suite: "functional-javascript"
allowed_failure: true
# 9.4.x-dev on PHP 8.1
- drupal-version: '9.4.x-dev'
php-versions: '8.1'
mysql: "8.0"
test-suite: "kernel"
allowed_failure: true
- drupal-version: '9.4.x-dev'
php-versions: '8.1'
mysql: "8.0"
test-suite: "functional"
allowed_failure: true
- drupal-version: '9.4.x-dev'
php-versions: '8.1'
mysql: "8.0"
test-suite: "functional-javascript"
allowed_failure: true
# 10.0.x-dev on PHP 8.1
- drupal-version: '10.0.x-dev'
php-versions: '8.1'
mysql: "8.0"
test-suite: "kernel"
allowed_failure: true
- drupal-version: '10.0.x-dev'
php-versions: '8.1'
mysql: "8.0"
test-suite: "functional"
allowed_failure: true
- drupal-version: '10.0.x-dev'
php-versions: '8.1'
mysql: "8.0"
test-suite: "functional-javascript"
allowed_failure: true


name: PHP ${{ matrix.php-versions }} | drupal ${{ matrix.drupal-version }} | mysql ${{ matrix.mysql }} | test-suite ${{ matrix.test-suite }}

Expand Down Expand Up @@ -175,7 +98,6 @@ jobs:
cd $DRUPAL_DIR
chmod -R u+w web/sites/default
mkdir -p web/sites/simpletest/browser_output
continue-on-error: ${{ matrix.allowed_failure }}

- name: Setup composer paths
run: |
Expand All @@ -190,18 +112,15 @@ jobs:
cd $DRUPAL_DIR/web
drush --uri=127.0.0.1:8282 en -y islandora_audio islandora_breadcrumbs islandora_iiif islandora_image islandora_video islandora_text_extraction_defaults
drush --uri=127.0.0.1:8282 fim -y islandora_core_feature,islandora_text_extraction_defaults
continue-on-error: ${{ matrix.allowed_failure }}

- name: Copy PHPunit file
run: cp $PHPUNIT_FILE $DRUPAL_DIR/web/core/phpunit.xml

- name: Test scripts
run: $SCRIPT_DIR/travis_scripts.sh
continue-on-error: ${{ matrix.allowed_failure }}

- name: PHPUNIT tests
run: |
cd $DRUPAL_DIR/web/core
$DRUPAL_DIR/vendor/bin/phpunit --verbose --testsuite "${{ matrix.test-suite }}"
continue-on-error: ${{ matrix.allowed_failure }}

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ![Islandora](https://cloud.githubusercontent.com/assets/2371345/25624809/f95b0972-2f30-11e7-8992-a8f135402cdc.png) Islandora

[![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%207.2-8892BF.svg?style=flat-square)](https://php.net/)
[![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%207.4-8892BF.svg?style=flat-square)](https://php.net/)
[![Build Status](https://github.com/islandora/islandora/actions/workflows/build-2.x.yml/badge.svg)](https://github.com/Islandora/islandora/actions)
[![Contribution Guidelines](http://img.shields.io/badge/CONTRIBUTING-Guidelines-blue.svg)](./CONTRIBUTING.md)
[![LICENSE](https://img.shields.io/badge/license-GPLv2-blue.svg?style=flat-square)](./LICENSE)
Expand Down
27 changes: 14 additions & 13 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,30 +14,31 @@
}
],
"require": {
"drupal/context": "^4.0@beta",
"drupal/search_api": "~1.8",
"islandora/jsonld": "^2",
"stomp-php/stomp-php": "4.*",
"drupal/jwt": "^1.0.0-beta5",
"drupal/filehash": "^1.1 || ^2",
"drupal/prepopulate" : "^2.2",
"drupal/eva" : "^2.0",
"drupal/context": "^4.1",
"drupal/ctools": "^3.8 || ^4",
"drupal/eva" : "^3.0",
"drupal/features" : "^3.7",
"drupal/migrate_plus" : "^5.1",
"drupal/file_replace": "^1.1",
"drupal/filehash": "^2",
"drupal/flysystem" : "^2.0@beta",
"drupal/jwt": "^1.0",
"drupal/migrate_plus" : "^5.1 || ^6",
"drupal/migrate_source_csv" : "^3.4",
"drupal/prepopulate" : "^2.2",
"drupal/search_api": "^1.24",
"drupal/token" : "^1.3",
"drupal/flysystem" : "^2.0@alpha",
"islandora/crayfish-commons": "^2",
"drupal/file_replace": "^1.1"
"islandora/jsonld": "^2",
"stomp-php/stomp-php": "4.*"
},
"require-dev": {
"phpunit/phpunit": "^6",
"squizlabs/php_codesniffer": "2.7.1",
"squizlabs/php_codesniffer": "3.7.1",
"drupal/coder": "*",
"sebastian/phpcpd": "*"
},
"suggest": {
"drupal/transliterate_filenames": "Sanitizes filenames when they are uploaded so they don't break your repository."
"drupal/transliterate_filenames": "Sanitizes filenames when they are uploaded so they don't break your repository."
},
"license": "GPL-2.0-or-later",
"authors": [
Expand Down
1 change: 1 addition & 0 deletions config/install/islandora.settings.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
broker_url: 'tcp://localhost:61613'
jwt_expiry: '+2 hour'
gemini_url: ''
delete_media_and_files: TRUE
gemini_pseudo_bundles: []
81 changes: 81 additions & 0 deletions config/schema/islandora.schema.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ islandora.settings:
jwt_expiry:
type: string
label: 'How long JWTs should last before expiring.'
delete_media_and_files:
type: boolean
label: 'Node Delete with Media and Files'
upload_form_location:
type: string
label: 'Upload Form Location'
Expand Down Expand Up @@ -87,6 +90,14 @@ condition.plugin.node_has_term:
logic:
type: string
label: 'Logic (AND or OR)'
tids:
type: sequence
sequence:
type: mapping
mapping:
target_id:
type: integer
label: The target taxonomy term IDs

condition.plugin.node_has_parent:
type: condition.plugin
Expand Down Expand Up @@ -158,6 +169,76 @@ condition.plugin.node_had_namespace:
pid_field:
type: ignore
label: 'PID field'

field.formatter.settings.islandora_image:
type: field.formatter.settings.image
label: 'Islandora image field display format settings'

condition.plugin.islandora_entity_bundle:
type: condition.plugin
mapping:
bundles:
type: sequence
sequence:
type: string

condition.plugin.media_source_mimetype:
type: condition.plugin
mapping:
mimetype:
type: string

reaction.plugin.alter_jsonld_type:
type: islandora.reaction_plugin_with_saved
mapping:
source_field:
type: string

islandora.reaction_plugin_with_saved:
type: reaction.plugin
mapping:
saved:
type: boolean
label: Default config upstream; however, left undefined in the schema.

reaction.plugin.islandora_map_uri_predicate:
type: islandora.reaction_plugin_with_saved
mapping:
drupal_uri_predicate:
type: string

reaction.plugin.view_mode_alter:
type: islandora.reaction_plugin_with_saved
mapping:
mode:
type: string
label: The view mode to which to switch

islandora.reaction.actions:
type: islandora.reaction_plugin_with_saved
mapping:
actions:
type: sequence
sequence:
type: string

reaction.plugin.index:
type: islandora.reaction.actions

reaction.plugin.delete:
type: islandora.reaction.actions

reaction.plugin.derivative:
type: islandora.reaction.actions

field.widget.settings.media_track:
type: field.widget.settings.file_generic

field.field_settings.media_track:
type: field.field_settings.file
mapping:
languages:
type: string

field.storage_settings.media_track:
type: field.storage_settings.file
3 changes: 3 additions & 0 deletions css/islandora.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.container .islandora-media-items {
margin: 0;
}
28 changes: 14 additions & 14 deletions islandora.info.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,31 @@ name: 'islandora'
description: "Islandora Core"
type: module
package: Islandora
core: 8.x
core_version_requirement: ^8 || ^9
core_version_requirement: ^9
dependencies:
- drupal:block
- drupal:node
- drupal:path
- drupal:text
- drupal:options
- drupal:link
- drupal:jsonld
- drupal:search_api
- drupal:jwt
- jsonld:jsonld
- search_api:search_api
- jwt:jwt
- drupal:rest
- drupal:filehash
- filehash:filehash
- drupal:basic_auth
- drupal:context_ui
- context:context_ui
- drupal:action
- drupal:eva
- eva:eva
- drupal:taxonomy
- drupal:views_ui
- drupal:media
- drupal:prepopulate
- drupal:features_ui
- drupal:migrate_source_csv
- prepopulate:prepopulate
- features:features_ui
- migrate_source_csv:migrate_source_csv
- drupal:content_translation
- drupal:flysystem
- drupal:token
- drupal:file_replace
- flysystem:flysystem
- token:token
- file_replace:file_replace
- ctools:ctools
38 changes: 38 additions & 0 deletions islandora.install
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@
* Install/update hook implementations.
*/

use Drupal\Core\Extension\ExtensionNameLengthException;
use Drupal\Core\Extension\MissingDependencyException;
use Drupal\Core\Utility\UpdateException;

/**
* Adds common namespaces to jsonld.settings.
*/
Expand Down Expand Up @@ -174,3 +178,37 @@ function update_jsonld_included_namespaces() {
->warning("Could not find required jsonld.settings to add default RDF namespaces.");
}
}

/**
* Ensure that ctools is enabled.
*/
function islandora_update_8007() {
$module_handler = \Drupal::moduleHandler();
if ($module_handler->moduleExists('ctools')) {
return t('The "@module_name" module is already enabled, no action necessary.', [
'@module_name' => 'ctools',
]);
}

/** @var \Drupal\Core\Extension\ModuleInstallerInterface $installer */
$installer = \Drupal::service('module_installer');

try {
if ($installer->install(['ctools'], TRUE)) {
return t('The "@module_name" module was enabled successfully.', [
'@module_name' => 'ctools',
]);
}
}
catch (ExtensionNameLengthException | MissingDependencyException $e) {
throw new UpdateException('Failed; ensure that the ctools module is available in the Drupal installation.', 0, $e);
}
catch (\Exception $e) {
throw new UpdateException('Failed; encountered an exception while trying to enable ctools.', 0, $e);
}

// Theoretically impossible to hit, as ModuleInstaller::install() only returns
// TRUE (or throws/propagates an exception), but... probably a good idea to
// have the here, just in case?
throw new UpdateException('Failed; hit the end of the update hook implementation, which is not expected.');
}
Loading