Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: oat-sa/generis
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v15.34.0
Choose a base ref
...
head repository: oat-sa/generis
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Nov 22, 2023

  1. fix: used only distinct results, so it will match count of items and …

    …not pagination issues.
    vbyndych committed Nov 22, 2023
    Copy the full SHA
    e3ac800 View commit details

Commits on Dec 11, 2023

  1. Copy the full SHA
    d8a9f48 View commit details
  2. AUT-3384: TAO Studio - Neo4j: pagination is limited by 7 users and pa…

    …ge navigation is disabled in 'Manage users' (#1089)
    vbyndych authored Dec 11, 2023
    Copy the full SHA
    f0c11f4 View commit details
  3. Merge branch 'release-15.34.1'

    github-actions committed Dec 11, 2023
    Copy the full SHA
    fc33713 View commit details

Commits on Dec 12, 2023

  1. feat: decrease query count by cacheing some RDF property fields (#1095)

    Co-authored-by: Makar Sichevoi <makar.sichevoy@taotesting.com>
    mccar and Makar Sichevoi authored Dec 12, 2023
    Copy the full SHA
    3cac123 View commit details
  2. Merge branch 'release-15.35.0'

    github-actions committed Dec 12, 2023
    Copy the full SHA
    e6b7b12 View commit details
  3. fix: typo fix in PropertyCache class name

    Janos Pribelszki committed Dec 12, 2023
    Copy the full SHA
    2764c21 View commit details
  4. Merge pull request #1097 from oat-sa/fix/REL-1279/fix-typo

    fix: typo fix in PropertyCache class name
    pribi authored Dec 12, 2023
    Copy the full SHA
    4214040 View commit details
  5. Merge branch 'release-15.35.1'

    github-actions committed Dec 12, 2023
    Copy the full SHA
    e8eea38 View commit details

Commits on Dec 15, 2023

  1. bugfix: check if dir exist before trying to create one (#1099)

    * bugfix: check if dir exist before trying to create one
    
    * bugfix: change for logging
    
    * bugfix: add file check
    
    * bugfix: file_exist()
    
    * bugfix: add else
    
    * bugfix: small refactor
    
    * bugfix: add return type, change log to info
    
    * bugfix: codestyle
    Karol-Stelmaczonek authored Dec 15, 2023
    Copy the full SHA
    2dc006c View commit details
  2. Merge branch 'release-15.35.2'

    github-actions committed Dec 15, 2023
    Copy the full SHA
    626038c View commit details

Commits on Jan 10, 2024

  1. Copy the full SHA
    7b06add View commit details

Commits on Jan 16, 2024

  1. REL-1315: NEO4J Inability to add Assets to Items as far as they are n…

    …ot presented in the stimuli bank (#1102)
    vbyndych authored Jan 16, 2024
    Copy the full SHA
    49282ba View commit details
  2. Merge branch 'release-15.35.3'

    github-actions committed Jan 16, 2024
    Copy the full SHA
    50b0b1b View commit details

Commits on Feb 22, 2024

  1. Copy the full SHA
    7473e72 View commit details
  2. chore: use date instead of pid

    shpran committed Feb 22, 2024
    Copy the full SHA
    f7e90e6 View commit details
  3. chore: add unit test

    shpran committed Feb 22, 2024
    Copy the full SHA
    755a237 View commit details

Commits on Feb 27, 2024

  1. Merge pull request #1091 from oat-sa/fix/REL-1370/property-lable-in-c…

    …hange-schema-form
    
    fix: Property label showed in schema changed form
    augustas authored Feb 27, 2024
    Copy the full SHA
    3bc2896 View commit details
  2. Merge branch 'release-15.35.4'

    github-actions committed Feb 27, 2024
    Copy the full SHA
    d2d7b5d View commit details

Commits on Mar 1, 2024

  1. Merge pull request #1107 from oat-sa/fix/tr-5940/uri-provider-length

    [Fix] Set the maximum allowable value for URI - 36 characters
    shpran authored Mar 1, 2024
    Copy the full SHA
    f6b5385 View commit details
  2. Merge branch 'release-15.35.5'

    github-actions committed Mar 1, 2024
    Copy the full SHA
    ab99b06 View commit details

Commits on Apr 15, 2024

  1. Copy the full SHA
    464cfaf View commit details

Commits on Apr 16, 2024

  1. Merge pull request #1113 from oat-sa/fix/sonarqube-workflow-update-op…

    …s-184
    
    update sonarqube workflow
    edwin-focaloid authored Apr 16, 2024
    Copy the full SHA
    ef709f7 View commit details

Commits on Apr 29, 2024

  1. feat: Update extension to send QTI package (#1114)

    * feat: Update extension to send QTI package
    mccar authored Apr 29, 2024
    Copy the full SHA
    e0b256a View commit details
  2. Merge branch 'release-15.36.0'

    github-actions committed Apr 29, 2024
    Copy the full SHA
    b4ac21d View commit details

Commits on May 21, 2024

  1. Copy the full SHA
    00b027b View commit details

Commits on Jun 4, 2024

  1. Merge pull request #1116 from oat-sa/fix/AUT-3654/complex-search-clas…

    …s-search
    
    fix: allow performing only class search in complex search
    bartlomiejmarszal authored Jun 4, 2024
    Copy the full SHA
    7b614c6 View commit details
  2. Merge branch 'release-15.36.1'

    github-actions committed Jun 4, 2024
    Copy the full SHA
    a9fc27a View commit details

Commits on Jun 10, 2024

  1. Copy the full SHA
    160224c View commit details

Commits on Jun 12, 2024

  1. Copy the full SHA
    202058e View commit details

Commits on Jun 13, 2024

  1. Copy the full SHA
    6d5d355 View commit details

Commits on Jun 18, 2024

  1. Copy the full SHA
    991c0e9 View commit details
  2. Merge pull request #1123 from oat-sa/fix/REL-1625/di-container-rebuild

    fix: rebuilding DI container when it was already built during same request
    augustas authored Jun 18, 2024
    Copy the full SHA
    c96c0e0 View commit details
  3. Merge branch 'release-15.36.2'

    github-actions committed Jun 18, 2024
    Copy the full SHA
    72df6b1 View commit details

Commits on Jun 20, 2024

  1. Merge pull request #1121 from oat-sa/fix/AUT-3679/platform-requiremen…

    …ts-tests-max-version-8.3.x
    
    chore: allow max PHP version 8.3.x
    pnal authored Jun 20, 2024
    Copy the full SHA
    89a4256 View commit details
  2. Merge branch 'release-15.36.3'

    github-actions committed Jun 20, 2024
    Copy the full SHA
    d099457 View commit details

Commits on Jun 24, 2024

  1. Merge pull request #1120 from oat-sa/feat/AUT-3625/content-creation-m…

    …ode-switch
    
    chore: Add interface mode to rdf
    Nevermind23 authored Jun 24, 2024
    Copy the full SHA
    735ca1b View commit details
  2. Merge branch 'release-15.36.4'

    github-actions committed Jun 24, 2024
    Copy the full SHA
    22ca209 View commit details

Commits on Jun 27, 2024

  1. Copy the full SHA
    3b6723f View commit details
  2. chore: fix cs

    gabrielfs7 committed Jun 27, 2024
    Copy the full SHA
    17f39eb View commit details
  3. Merge pull request #1127 from oat-sa/feat/ADF-1683/fix-case-stream-al…

    …ready-closed
    
    fix: only close stream in case the resource is valid
    gabrielfs7 authored Jun 27, 2024
    Copy the full SHA
    3728af2 View commit details
  4. Merge branch 'release-15.36.5'

    github-actions committed Jun 27, 2024
    Copy the full SHA
    b7462ff View commit details

Commits on Jul 9, 2024

  1. feat: Add ability to prefix keys in redis (#1122)

    * feat: Add prefix functionality for redis presistance
    
    * feat: Add tests
    
    * fix: Update default prefix separator
    yaraslau-kavaliou authored Jul 9, 2024
    Copy the full SHA
    c516ab4 View commit details
  2. Merge branch 'release-15.37.0'

    github-actions committed Jul 9, 2024
    Copy the full SHA
    e9cd24f View commit details

Commits on Aug 2, 2024

  1. fix: use updated google cloud

    kilatib authored and augustas committed Aug 2, 2024
    Copy the full SHA
    813b33d View commit details
  2. Copy the full SHA
    1b69844 View commit details
  3. fix: apply code styles

    kilatib authored and augustas committed Aug 2, 2024
    Copy the full SHA
    d16dd31 View commit details

Commits on Aug 28, 2024

  1. feat: require flysystem v3

    augustas committed Aug 28, 2024
    Copy the full SHA
    233b6e6 View commit details
  2. feat: require flysystem v3

    augustas committed Aug 28, 2024
    Copy the full SHA
    f533fa8 View commit details

Commits on Sep 6, 2024

  1. Copy the full SHA
    ff939de View commit details
Showing with 988 additions and 607 deletions.
  1. +2 −2 .github/workflows/continuous-integration.yaml
  2. +9 −10 .github/workflows/sonar.yml
  3. +5 −0 common/class.Utils.php
  4. +24 −1 common/oatbox/event/EventManager.php
  5. +20 −15 common/oatbox/filesystem/Directory.php
  6. +76 −135 common/oatbox/filesystem/File.php
  7. +8 −9 common/oatbox/filesystem/FileSystem.php
  8. +3 −1 common/oatbox/filesystem/FileSystemHandler.php
  9. +34 −17 common/oatbox/filesystem/FileSystemService.php
  10. +10 −0 common/oatbox/filesystem/FilesystemException.php
  11. +9 −0 common/oatbox/filesystem/FilesystemInterface.php
  12. +119 −155 common/oatbox/filesystem/utils/FileSystemWrapperTrait.php
  13. +68 −85 common/oatbox/filesystem/utils/FlyWrapperTrait.php
  14. +0 −66 common/oatbox/filesystem/wrapper/GoogleStorageWrapper.php
  15. +3 −3 common/oatbox/install/Installer.php
  16. +4 −0 common/oatbox/service/ServiceManager.php
  17. +11 −1 common/oatbox/task/AbstractTaskAction.php
  18. +16 −18 common/persistence/class.PhpFileDriver.php
  19. +64 −18 common/persistence/class.PhpRedisDriver.php
  20. +12 −5 composer.json
  21. +10 −8 core/DependencyInjection/BaseContainer.php
  22. +3 −0 core/GenerisRdf.php
  23. +19 −9 core/kernel/classes/class.Resource.php
  24. +56 −1 core/kernel/persistence/smoothsql/class.Class.php
  25. +9 −2 core/kernel/persistence/smoothsql/search/ComplexSearchService.php
  26. +27 −10 core/kernel/persistence/starsql/class.Resource.php
  27. +11 −0 core/kernel/persistence/starsql/search/Command/RegexCommand.php
  28. +1 −1 core/kernel/persistence/starsql/search/GateWay.php
  29. +10 −15 core/kernel/persistence/starsql/search/QuerySerializer.php
  30. +2 −2 core/kernel/uri/Bin2HexUriProvider.php
  31. +24 −0 core/ontology/generis.rdf
  32. +2 −0 helpers/PropertyCache.php
  33. +0 −6 migrations/Version202009081435472348_generis.php
  34. +59 −0 migrations/Version202412031536512348_generis.php
  35. +5 −5 scripts/update/Updater.php
  36. +2 −2 test/FileSystemMockTrait.php
  37. +0 −1 test/integration/common/filesystem/DirectoryFilesystemTest.php
  38. +48 −0 test/integration/model/persistence/starsql/ClassTest.php
  39. +4 −4 test/unit/ConfigurationTest.php
  40. +153 −0 test/unit/common/persistence/PhpRedisDriverTest.php
  41. +46 −0 test/unit/core/kernel/uri/Bin2HexUriProviderTest.php
4 changes: 2 additions & 2 deletions .github/workflows/continuous-integration.yaml
Original file line number Diff line number Diff line change
@@ -14,9 +14,9 @@ jobs:
fail-fast: false
matrix:
operating-system: [ ubuntu-latest ]
php-version: [ '7.4', '8.0', '8.1' ]
php-version: [ '8.1', '8.2', '8.3' ]
include:
- php-version: '8.1'
- php-version: '8.3'
coverage: true

steps:
19 changes: 9 additions & 10 deletions .github/workflows/sonar.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,20 @@
name: Sonarqube_CI
on:

pull_request:
types:
- labeled

push:
branches:
- master
- main
- develop

pull_request:
types: [opened, synchronize, reopened]
branches:
- '**'
workflow_dispatch:
- release-*

jobs:
build:
name: Sonarqube_CI
if: ${{ github.event.label.name == 'sonar_check' || github.event_name == 'push' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
@@ -26,16 +25,16 @@ jobs:
uses: sonarsource/sonarqube-scan-action@master
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }}
SONAR_HOST_URL: 'https://sonarqube.taotesting.info/sonarqube/'

# Job will fail when the Quality Gate is red
- name: Sonarqube quality gate check
id: sonarqube-quality-gate-check
id: sonarqube-quality-gate-check
uses: sonarsource/sonarqube-quality-gate-action@master
timeout-minutes: 5
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}


- name: "Example show SonarQube Quality Gate Status value"
run: echo "The Quality Gate status is ${{ steps.sonarqube-quality-gate-check.outputs.quality-gate-status }}"
run: echo "The Quality Gate status is ${{ steps.sonarqube-quality-gate-check.outputs.quality-gate-status }}"
5 changes: 5 additions & 0 deletions common/class.Utils.php
Original file line number Diff line number Diff line change
@@ -207,4 +207,9 @@ public static function toHumanReadablePhpString($value, $indentation = 0)

return (string) $returnValue;
}

public static function getResourceId(string $uri): string
{
return substr($uri, strpos($uri, '#') + 1);
}
}
25 changes: 24 additions & 1 deletion common/oatbox/event/EventManager.php
Original file line number Diff line number Diff line change
@@ -21,8 +21,10 @@

namespace oat\oatbox\event;

use common_Logger;
use oat\oatbox\service\ConfigurableService;
use oat\oatbox\service\ServiceNotFoundException;
use Throwable;

/**
* The simple placeholder ServiceManager
@@ -52,9 +54,18 @@ public function trigger($event, $params = [])
$event = is_object($event) ? $event : new GenericEvent($event, $params);

foreach ($this->getListeners($event) as $callback) {
$callbackName = $callback;

if (is_array($callback) && count($callback) == 2) {
list($key, $function) = $callback;
[$key, $function] = $callback;

if (is_object($key)) {
$callbackName = sprintf('%s::%s', get_class($key), $function);
}

if (is_string($key)) {
$callbackName = sprintf('%s::%s', $key, $function);

try {
$service = $container->get($key);
$callback = [$service, $function];
@@ -64,6 +75,18 @@ public function trigger($event, $params = [])
}
}

if (!is_callable($callback)) {
common_Logger::w(
sprintf(
'Event manager cannot call %s because it is not a callable. '
. 'Notice, that classes registered in DI container cannot be executed during the installation',
$callbackName
)
);

continue;
}

call_user_func($callback, $event);
}
}
35 changes: 20 additions & 15 deletions common/oatbox/filesystem/Directory.php
Original file line number Diff line number Diff line change
@@ -21,8 +21,6 @@

namespace oat\oatbox\filesystem;

use League\Flysystem\FileExistsException;

class Directory extends FileSystemHandler implements \IteratorAggregate
{
public const ITERATOR_RECURSIVE = '1';
@@ -87,14 +85,13 @@ public function getFlyIterator($flags = null)
$contents = $this->getFileSystem()->listContents($this->getPrefix(), $recursive);

if (!empty($contents)) {
$dirPath = $this->getFileSystem()->get($this->getPrefix())->getPath();
foreach ($contents as $content) {
if ($withDirectories && $content['type'] == 'dir') {
$iterator[] = $this->getDirectory(str_replace($dirPath, '', $content['path']));
$iterator[] = $this->getDirectory($this->stripDirectoryPath($content['path']));
}

if ($withFiles && $content['type'] == 'file') {
$iterator[] = $this->getFile(str_replace($dirPath, '', $content['path']));
$iterator[] = $this->getFile($this->stripDirectoryPath($content['path']));
}
}
}
@@ -127,7 +124,7 @@ public function getRelPath($content)
*/
public function exists()
{
return $this->getFileSystem()->has($this->getPrefix());
return $this->getFileSystem()->directoryExists($this->getPrefix());
}

/**
@@ -137,7 +134,14 @@ public function exists()
*/
public function deleteSelf()
{
return $this->getFileSystem()->deleteDir($this->getPrefix());
try {
$this->getFileSystem()->deleteDirectory($this->getPrefix());
return true;
} catch (FilesystemException $e) {
$this->logWarning($e->getMessage());
}

return false;
}

/**
@@ -185,15 +189,10 @@ public function rename($path)

foreach ($filePaths as $renaming) {
try {
if ($this->getFileSystem()->rename($renaming['source'], $renaming['destination']) === false) {
throw new \common_exception_FileSystemError(
"Unable to rename '" . $renaming['source'] . "' into '" . $renaming['destination'] . "'."
);
}
} catch (FileExistsException $e) {
$this->getFileSystem()->move($renaming['source'], $renaming['destination']);
} catch (FilesystemException $e) {
throw new \common_exception_FileSystemError(
"Unable to rename '" . $renaming['source'] . "' into '" . $renaming['destination']
. "'. File already exists."
"Unable to rename '" . $renaming['source'] . "' into '" . $renaming['destination'] . "'."
);
}
}
@@ -206,4 +205,10 @@ public function rename($path)

return true;
}

private function stripDirectoryPath(string $path): string
{
$strippedPath = str_replace($this->getPrefix(), '', $path);
return str_replace($this->getFileSystemId(), '', $strippedPath);
}
}
Loading