Feature Wiki
Tabs
JourFixe-2024-12-09
Page Overview
[Hide]- 1 Appointments
- 2 Technical Board
- 3 Miscellaneous
- 3.1 Feature Wiki
- 3.2 UI Clinic
- 3.3 Privacy Clinic
- 3.4 Authorities
- 4 Maintained Versions
- 4.1 Roadmap
- 4.2 Mantis Reports
- 4.3 Mantis Statistic
- 4.4 Development Issues of Maintained Versions
- 4.5 Pull Requests
- 4.6 Continuous Integration
- 5 Preparing ILIAS 10
- 5.1 Timeline for ILIAS 10
- 5.2 Testing ILIAS 10
- 5.2.1 Status Community Test
- 5.2.2 WebDAV Tester wanted
- 5.2.3 Live Testing
- 5.3 Status of Development
- 5.4 Software Requirements for ILIAS 10
- 5.5 Development Issues
- 5.6 Dependencies
- 5.7 Pull Requests for ILIAS 10
- 5.8 Project 'Removing of Legacy-UIComponents-Service and Table'
- 6 Developing ILIAS 11
- 7 Participants
Date and place
Monday, 09 December 2024 from 13:00 – 17:26 at VC meeting in BBB.
Please notice:
Kunkel, Matthias [mkunkel] was absent on short notice today.
The JF was moderated by Samoila, Oliver [oliver.samoila], Kergomard, Stephan [skergomard] and Roeser, Nico [nicoroeser]. The minutes of the JourFixe were taken by Kergomard, Stephan [skergomard]. Participants are added to the minutes by Strassner, Denis [dstrassner].
If you like to participate at the Jour Fixe, please join our BigBlueButton-based Jour Fixe VC!
We recommend to use BBB in Chrome (or Firefox).
1 Appointments
Workshops / Working GroupS
- 16 JAN 2025, 13:00 - 15:00: Feature Workshop 'DataCollection : Switch to ‘Contributors‘ instead of ‘Owner‘'
If you want to participate at one of the above mentioned workshops, please register for the related session. This helps to organise the workshop. Thanks!
Jour Fixe
- Monday, 06 January 2025, 13:00 - 17:00
- Monday, 20 January 2025, 13:00 - 17:00
- Monday, 03 February 2025, 13:00 - 17:00
- Monday, 17 February 2025, 13:00 - 17:00
2 Technical Board
This topic on our agenda should improve the information flow between the Technical Board and the society members and ILIAS users.
- We kindly ask all developers to not close Mantis-Issues related to ILIAS 8 after the end of full support on January 1st 2025.
- The Technical Board is currently working on the classification and evaluation of the “Big Projects”.
3 Miscellaneous
3.1 Feature Wiki
The product manager has revised the structure of the template for feature requests: Creating A New Feature Page. Instead of many H1 headlines, all commenting entries on technical aspects, privacy and so on are now categorised under Additional Information. In addition, the specification of authorities has been changed. And the previous information in Contact has been distributed to the corresponding sections.
Don't forget to fill out all information sections. In case there is nothing to mention, just write 'None'. Otherwise, it is unclear whether a statement is still missing on this point.
The template is now available for all new feature requests. The product manager is gradually converting FRs for 11 to the new structure. Anyone who wants to help here is very welcome.
3.2 UI Clinic
Our UI/UX/A11y experts Yvonne Seiler, Kristina Auerswald and Kendra Grotz are offering bi-weekly UI clinic consultation hours for UI/UX and accessibility topics. The consultation hours are open for all users that need or are interested in related help for their ILIAS development activities. The UI Clinic consultation take place every Wednesday before the Jour Fixe from 10h30 to 11h30.
If you are interested in discussing an issue, please register here!.
3.3 Privacy Clinic
In the Privacy Clinic, you can get advice on how to protect user privacy and effectively navigate the complexities of data protection in the context of ILIAS. Our privacy experts Seidel, Elyesa [seidel], Gribchenko, Kseniia [ksgrie] and a member of the Technical Board are offerin support in all privacy related issues. The Privacy Clinic has consultation hours every Wednesday after the Jour Fixe from 11h00 to 12h00. Please announce the topic you want to discuss by e-mail: privacy@lists.ilias.de
3.4 Authorities
3.4.1 Authorities to be Handed Over
For the following components there are authorities to be handed over:
- Multilingualism: We are looking for persons who are willing to take over the authorities to sign off on conceptual changes for this component, to sign off on code changes, to curate testcases and to (de-)assign authorities.
- A community member is interested to take over these authorities. A discussion about the next steps will take place shortly.
Community members who are willing to take over one of the offered authorities are highly appreciated. In case of interest, please contact the Technical Board.
3.4.2 Requests for Modifying Authorities
- Add Joußen, Thomas [tjoussen] to Authority to Sign off on Conceptual Changes in
Login, Auth & Registration
» PR • 8553 - Add Joußen, Thomas [tjoussen] to Authority to Sign off on Code Changes in
Login, Auth & Registration
» PR • 8553 - De-assign Seeland, Per Pascal [PerPascalSeeland] from all Authorities in
Data Collection
» PR • 8592 and PR • 8593
3.4.3 Changed Authorities
For the following components authorities have been changed:
- none
4 Maintained Versions
At the time being, we are maintaining ILIAS version 8 and ILIAS version 9.
4.1 Roadmap
LAST RELEASES
- ILIAS 10.0_beta1 has been published on 28 October 2024
- ILIAS 9.5 has been published on 08 October 2024.
- ILIAS 8.16 has been published on 19 November 2024.
NEXT RELEASES
- ILIAS 10.0_beta2 is planned for end of November 2024
- ILIAS 9.6 is planned for 10 December 2024 – depending on pending fixes
- ILIAS 8.17 is planned for 10 December 2024 – depending on pending fixes
Lifecycles of maintained versions
- ILIAS 8 : end of full maintenance at 31 DEC 2024, security bug fixes (only) until 31 DEC 2025.
- ILIAS 9 : end of full maintenance at 31 DEC 2025, security bug fixes (only) until 30 JUN 2027.
4.2 Mantis Reports
The following Mantis reports have been tagged with 'Needs Jour Fixe Decision' and were therefore be discussed in detail:
- #42862: Failed Test: Inhalte zur Wiederholung zu einer Frage hinzufügen - Überschreitung Uploadgranze and related PR (#8532): We appreciate this change and accept it for all supported versions. We ask Kergomard, Stephan [skergomard] to check if the `$DIC['ui.upload_limit_resolver']`.
4.3 Mantis Statistic
Current information from Mantis:
* … Issues with status 'open' and 'fix.acc.prio.' are recorded.
4.4 Development Issues of Maintained Versions
The following development issues concern one or more maintained versions. Issues related to trunk are listed further below.
- No issues to discuss today.
4.5 Pull Requests
4.5.1 Pull Requests for Maintained Versions
Pull requests in the ILIAS repository on GitHub that are related to maintained versions of ILIAS.
- PR8521 • TA: 37918, show autosave content: We follow the suggestion of Nils and Stephan and accept the mentioned changes for ILIAS 9, ILIAS 10 and Trunk. The authorities are requested to make a corresponding note in Changed Behavior. Many Thanks!
4.5.2 Looking for Shepherd
The following PRs are adressing components that are currently under no authority. So nobody has the authority to do the related code change and accept the PR. We are looking for shepherds that check and review the PR and merge it.
- PR7599 • Add ext-pdo as required extension in composer.json:
- PR7618 • Prevent deletion of required file uploads:
- PR7815 • Phpunit code coverage:
- PR8360 • Legacy Form: fix date range comparison for combination inputs:
- PR8496 • App: Support PHP 8.4:
- NEW: PR8625 • jQueryUI/Maphilight: Remove files and usages from codebase/xln]:
Thanks to all shepherds who already have checked pull requests and merged them (when okay)!
4.6 Continuous Integration
- Unit Tests (trunk):
- As of today, there are (executed with PHP 8.3)
./scripts/PHPUnit/run_tests.sh --random-order-seed 1720173999
- 12561 (-19)
- 30718, assertions (depends on the order of tests being executed / not stably determinable)
- 0 failures (-1):
- 36 skipped (+1):
- See file below
- 0 errors, 0 PHP deprecations
- PHP 8.4
- @ all devs.: Please check the issues listed in the failed PHP 8.4 run https://github.com/ILIAS-eLearning/ILIAS/actions/runs/11953437130/job/33321297683?pr=8496
- As of today, there are (executed with PHP 8.3)
- Code Style:
- 356 Violations (-12)
./vendor/composer/vendor/friendsofphp/php-cs-fixer/php-cs-fixer fix --config=./scripts/PHP-CS-Fixer/code-form
at.php_cs --using-cache=no -vvv --dry-run components/ILIAS/*
:- See file below
- 356 Violations (-12)
ilCtrl
"// @todo: removed deprecated ilCtrl methods, this needs inspection by a maintainer."- PR: https://github.com/ILIAS-eLearning/ILIAS/pull/6628 / https://github.com/ILIAS-eLearning/ILIAS/pull/5100
- 26 findings (+-0)
- See file below
5 Preparing ILIAS 10
5.1 Timeline for ILIAS 10
- Big Projects Jour Fixe on 27 November 2023 ✓
- Feature freeze on 30 April 2024 ✓
- Coding completed on 25 October 2024 ✓
- New features are implemented and related test cases completed
- Existing test cases are updated/revised
- Release 10.0_beta1 published and release-10 branch created on 28 October 2024 ✓
- Beginn of testing phase on 30 October 2024 ✓
- Pretest: 30 October – 12 November 2024 ✓
- Community testing: 13 November 2024 – 05 February 2025
- End of testing phase planned for 05 Februar 2025
- First stable 10.0 release planned for 13 March 2025
- Full maintenance support for version 10: until 31 December 2026
- Security bug fixes only: until 31 December 2027
5.2 Testing ILIAS 10
The official test installation for ILIAS 10 is available at: https://test10.ilias.de. It will be used for the pretest and the community testing. Accounts from test9 should work if not created after 11 July 2024.
5.2.1 Status Community Test
- Productivity week 1 (KW 46): 8,5%
- Productivity week 2 (KW 47): 6,4%
- Productivity week 3 (KW 48): 8,2%
- Productivity week 4 (KW 49): 7,0%
- Major blockers remain in Search, Rating, SCORM (which also blocks parts of LTI), cmi5/xAPI (which also block parts of Learning Progress)
Current information from Mantis for ILIAS 10 BETA:
* … Issues with status 'open' and 'fix.acc.prio.' are recorded.
5.2.2 WebDAV Tester wanted
Several new testers joined the team in the last few weeks. This allows us to assign almost all test cases. We are still looking for a WebDAV tester. Please get in touch with Kruse, Fabian [Fabian].
5.2.3 Live Testing
Weekly live testings in our Test-BBB are still going strong. The next calls have alread been announced some time ago:
- Wednesday, December 11, 14:00 - 15:00
- Tuesday, December 17, 11:00 - 12:00
- X-Mas Break
- Wednesday, January 8, 14:00 - 15:00
5.3 Status of Development
This is the final status of the development of ILIAS Release 10 – based on the metadata of all scheduled feature requests.
Status | Number of features |
---|---|
Published in trunk | 67 |
Removed from code | 30 |
Status of Test Case Information
For some feature pages information about test cases (new ones, changed ones, removed ones) is missing. These new and updated test cases are important to test these features sufficiently.
All cases should have been added by now, as the test runs for release 10 will be set up early this week.
- Removing Legacy-UI » Toolbar » ‘Label‘ + ‘Legacy Dropdown‘ + ‘Submit‘ (in ILIAS 10) – Test cases cannot be finalised before decision about labels.
5.4 Software Requirements for ILIAS 10
The required and supported software for ILIAS 10 is as follows:
PHP
The following software versions are required/supported for ILIAS [[Release 10]]. See also [[Dependencies in ILIAS 10]].
- ILIAS 10 will support PHP 8.2 and 8.3.
- Support for PHP 8.1 will be dropped.
- With ILIAS 10 developers can use PHP 8.2 features: https://stitcher.io/blog/new-in-php-82.
- PHP Roadmap: https://www.php.net/supported-versions.php
Links for Developers:
- PHP 8.2 and PHP 8.3 backward incompatible changes:
- Outlook PHP > 8.3:
- What is deprecated in PHP 8.2 (see: https://www.php.net/manual/en/migration82.deprecated.php), and PHP 8.3 (see: https://www.php.net/manual/en/migration83.deprecated.php), will cause errors in PHP > 8.3!
- Such DEPRECATED issues MUST be fixed in ILIAS 10
PHP Unit
- 10.x (Roadmap: https://phpunit.de/supported-versions.html)
Composer
- Composer 2
DBMS
- MariaDB: 10.5 - 10.11
- MySQL: > 8.0.21
HTTP Server
- nginx:
- Supported: information missing
- Recommended: information missing
- Apache:
- Supported: information missing
- Recommended: information missing
JAVA
- Open JDK Runtime 11, 17 or 21 LTS for certificate service and/or Lucene Search
NodeJS
- Supported: 20 (LTS), 21, 22 (LTS), 23
- Recommended: 22 (LTS)
Other Software:
- Ghostscript: information missing
- MathJax (optional):
- Recommended: MathJax 3 via
[Your ILIAS]/components/ILIAS/MathJax/resources/js/cdn-mathjax3-es5-tex-mml-chtml-safe.js
- Additionally supported: MathJax 2 with safe mode:
https://cdn.jsdelivr.net/npm/mathjax@2.7.9/MathJax.js?config=TeX-AMS-MML_HTMLorMML,Safe
- Recommended: MathJax 3 via
- ImageMagick (optional): information missing
Browser
- We recommend contemporary browsers (supporting ES6, CSS3, HTML5).
5.5 Development Issues
- none
5.6 Dependencies
The following pull requests in the ILIAS repository on GitHub are related to ILIAS 10 and labeled with 'dependencies'.
- PR • …
- Suggested by:
- Status of maintenance:
- Used by:
- Decision: Dependency is accepted/rejected for ILIAS 10.
5.7 Pull Requests for ILIAS 10
Pull requests in the ILIAS repository on GitHub that are related to version ILIAS 10.
- PR8234 • [FIX] 0042349: UI Tooltips (via Topics) won't shown on slate-triggerers in MainBar: We follow the suggestion of Fabian and accept the mentioned changes for ILIAS 10 and Trunk. Many Thanks!
- PR8538 • 0042977: Test setting lost after copying test an related mantis issue #42977: Test setting lost after copying test: We have discussed the pros and cons and would like to follow the process of creating a new object.
This means that the global definition of the setting is also taken into account when copying and importing an object (in this case: Test) with positions - the global settings override individual settings on the source instance of the object.
5.8 Project 'Removing of Legacy-UIComponents-Service and Table'
- Next Bi-Weekly-Meetings:
- Monday, 13 January 2025, 14:30 - 16:00
- Further progress on UI components (exemplary):
- Integration of Filters in UI Data Table
Field\TreeSelect
andField\TreeMultiSelect
for the compensation ofilExplorer
and related.Confirmation Modals
for the compensation ofilConfirmationGUI
&ilConfirmationTableGUI
- Some new funding parties – Many thanks to all contributors !
- Estimated funding needed to realise project in 2025: 339.000€ (like 238 Person Days) – currently further 25.000€ are announced.
Deprecations in ILIAS 10 | |
---|---|
class ilGlyphGUI | |
class ilGroupedListGUI | |
class ilLightboxGUI | |
class ilModalGUI | |
class ilOverlayGUI | |
class ilPanelGUI | |
class ilProgressBar | |
class ilSplitButtonGUI | |
class ilTooltipGUI |
- Legacy Overlay » 2 Usages in
Table
» PR #8403 – Looking for shepherd | Waiting for Response of Authorities of other Components
- Legacy Advanced Selection List
Form
» Style Menu in ILIAS Page Editor » work in progress
- Legacy Button
Container
Scorm
» Mantis #41141Search
UIComponent
» Required in other legacy UI components. Dependencies will be reduced step by step.
- Legacy Progress Bar
Glossary
Survey
Wiki
6 Developing ILIAS 11
6.1 Timeline for ILIAS 11
- Big Projects Jour Fixe on 25 November 2024 ✓
- Dependency Jour Fixe on 09 December 2024
- Feature freeze on 30 April 2025
- Coding completed: all features implemented and test cases finished until 28October 2025
- Release 11.0 beta1 and release-10 branch planned for 28October 2025
- Beginn of testing phase scheduled for 31 October 2025
- End of testing phase planned for 06 Februar 2026
- First stable 11.0 release planned for 17 March 2026
- Full maintenance support for version 11: until 31December 2027
- Security bug fixes only: until 31 December 2028
6.2 Software Requirements for ILIAS 11
The required and supported software for ILIAS 11 is as follows:
- PHP:
- ILIAS 11 will support PHP 8.3 and 8.4.
- Support for PHP 8.2 will be dropped.
- With ILIAS 11 developers can use PHP 8.3 (as the minimum PHP version) features: https://www.php.net/releases/8.3/en.php / https://php.watch/versions/8.3 / https://stitcher.io/blog/new-in-php-83
- PHP Roadmap: https://www.php.net/supported-versions.php
- Links for Developers:
- PHP 8.4 Backward Incompatible Changes:
- Outlook PHP > 8.4
- What is deprecated in PHP 8.4 (see: https://www.php.net/manual/en/migration84.deprecated.php) will cause errors in PHP > 8.4!
- ILIAS 11 will support PHP 8.3 and 8.4.
- PHPUnit: 11.x
- Composer: Composer 2
- DBMS:
- MariaDB: 10.5 – 10.11
- MySQL: > 8.0.21
- HTTP:
- nginx:
- Supported: information missing
- Recommended: information missing
- Apache: information missing
- nginx:
- JAVA:
- information missing
- NodeJS:
- Supported: 20 (LTS, 21)
- Recommended: 20 (LTS)
- Other Software:
- Ghostscript: information missing
- MathJax (optional): information missing
- ImageMagick (optional): information missing
6.3 Dependencies in 11
The policy of dependency handling has been changed with ILIAS 10. Please have a look at this README to know how we handle dependencies like third-party libraries and frameworks in ILIAS from now on.
- PR 8531 • Add `PHPOffice/PhpSpreadsheet` as dependency
- The following pull requests in the ILIAS repository on GitHub are related to trunk and labeled with 'dependencies'.Suggested by: Kergomard, Stephan [skergomard]
- Status of maintenance: Mostly one maintainer. Not much information about him available. Occasional contributions by others. Part of PHPOffice with more contributors. Regular updates (~1 commit per day).
- Used by: Booking Pool, Data Collection, Exercise, MyStaff, OrgUnits, Polls, Category, SCORM, Study Programme, Survey, Test, Learning Progress, Tracking, Wiki and possibly more
- Decision: Dependency is accepted for ILIAS 11.
- PR 8539 • NPM: Add @yaireo/tagify as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance:
The library has 66 contributors and got its last release in November '24. It seems to be feature complete. - Used by: Provides functionality for the Tag Input Field of the UI framework.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8540 • Composer: Add friendsofphp/php-cs-fixer as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: The library is under active maintenance.
- Used by: Used in CI and dev processes to check and correct coding style.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8541 • Composer: Add mustache/mustache as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: The library is widely used by many PHP projects. It has 41 contributors, but most contributions have been made by one person. There is no visible backing from any organisation. There haven't been any releases for over a year.
- Used by: Provides templating mechanism for mails, to replace the native search and replace we have used until now.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8542 • Composer: Add ifsnop/mysqldump-php as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: The last release of the library was in March '23. There are 45 contributors although most contributions are from two people.
- Used by: Provides engine to dump database in standard sql for an export.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8543 • Composer: Add seld/jsonlint as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: The library received its last update in July '24. It seems to be feature complete, though.
- Used by: Allows the setup to give more informative error messages regarding the json that is used for config.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8544 • Composer: add symfony/console as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: The library is under active development. 7.1.8 has been released in November '24.
- Used by: Provides the TUI for the setup console application.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8545 • Composer: add pimple/pimple as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: The library has been stable for a long time and didn't receive updates since 2021. The actual code is only about 150 LOC and hence could be easily maintained by us, if necessary.
- Used by: Provides the dependency injection container that is used as a service locator throughout the system. Will most likely be used as the DIC solution for the new initialisation scheme introduced with the component revision.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8546 • Composer: add filp/whoops as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: The library is stable for a long time now. Major version hasn't been bumped for > 7 years now.
- Used by: Used for formatting error messages for consumation by developers via browser and for error reports.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8547 • Composer: Add `ezyang/htmlpurifier` as dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance:
HTMLPurifier
is actively maintained by multiple contributors. There is recent activity (even last week, see: https://github.com/ezyang/htmlpurifier/commits/master). - Used by:
components/ILIAS/Html
- Decision: Dependency is accepted for ILIAS 11.
- PR 8548 • Composer: add phpunit/phpunit as dependency
- Suggested by: Haagen, Nils [nlz]
- Status of maintenance: Won't go away any time soon.
- Used by: We use it to run unit tests.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8549 • Composer: Add `phpmailer/phpmailer` as dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance:
PHPMailer
is actively maintained by multiple contributors. There is recent activity (even today, see: https://github.com/PHPMailer/PHPMailer/commits/master). - Used by:
components/ILIAS/Mail
- Decision: Dependency is accepted for ILIAS 11.
- PR 8550 • Composer: Add `simplesamlphp/simplesamlphp` as dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance:
SimpleSAMLphp
is actively maintained by multiple contributors (see: https://simplesamlphp.org/contrib/). There is recent activity (even this week, see: https://github.com/simplesamlphp/simplesamlphp/commits/master). - Used by:
components/ILIAS/Saml
- Decision: Dependency is accepted for ILIAS 11.
- PR 8551 • Composer: Add `captainhook/captainhook` and `captainhook/plugin-composer as dev dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance:
CaptainHook
is well maintained (see: https://github.com/captainhookphp/captainhook/commits/main) and widely used in the PHP community. - Used by: Executed during multiple
Composer
andGit
actions (depending on our shared and possible individual configuration files) - Decision: `Captainhook/captainhook` is accepted for ILIAS 11. Plugin-composer seems to be unmaintained. @mjansenDatabay will have a closer look at it and propose an alternative procedure.
- PR 8552 • Composer: Add `cweagans/composer-patches` as dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance:
Composer Patches
is still maintained, mostly by "cweagans (Cameron Eagans)" and supported by other contributors. There is not much activity in general, but the plugin is so to speak "feature-complete". There is activity if there are security vulnerabilities (Dependabot
pull requests are merged) and if changes were made inComposer
itself which require the plugin to adapt. - Used by: During
composer install
andcomposer upgrade
- Decision: Dependency is rejected for ILIAS 11. We kindly ask @mjansenDatabay to try to push the patch we need for
phpmailer\phpmailer
-upstream, if this does not work, we ask @mjansenDatabay to add the dependency again.
- PR 8556 • Composer: Add `mikey179/vfsstream` as dev dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance: There is not much development activity (see: https://github.com/bovigo/vfsStream/graphs/commit-activity), so it might occur that there will be issues with upcoming PHP versions.
- Used by: Used when executing the ILIAS unit test suite.
- Decision: Dependency is accepted for ILIAS 11.
- PR 8557 • Composer: Add `phpstan/phpstan` as dev dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance:
PHPStan
is a very active project (see: https://github.com/phpstan/phpstan/graphs/commit-activity), code was committed even this week (see: https://github.com/phpstan/phpstan/commits/1.11.x). There is one main contributor (ondrejmirtes) supported by other open source enthusiasts (and financially by some well known organizations). - Used by:
PHPStan
finds issues in the ILIAS code without writing tests. It detects architectural smells in our application based on rule definitions (see: scripts/PHPStan/Rules). It is used in the GitHub CI pipeline (see: .github/workflows/legacy-ui.yml).PHPStan
makes use of theAST
(abstract syntax tree) and is capable to analyze our ILIAS PHP code statically. - Decision: Dependency is accepted for ILIAS 11. We try to support version 2.0, if @mjansenDatabay finds too many issues with migrating scripts, also the most current 1.* version is accepted.
- PR 8559 • Composer: Add `ramsey/uuid` as dependency
- Suggested by: Jansen, Michael [mjansen]
- Status of maintenance:
ramsey/uuid
is actively maintained by multiple contributors. There is recent activity in past weeks: https://github.com/ramsey/uuid/commits/4.x. - Used by:
component/ILIAS/Certificate
,component/ILIAS/CoPage
,component/ILIAS/ResourceStorage
- Decision: Dependency is accepted for ILIAS 11.
- PR 8561 • Chatroom: Add `express`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
- Used by:
components/ILIAS/Chatroom/chat/Bootstrap/index.js
,components/ILIAS/Chatroom/chat/api.js
,components/ILIAS/Chatroom/chat/Bootstrap/SetupExpressApi.js
- Decision: Dependency is accepted for ILIAS 11. Please use the version 5.* if it can be used.
- PR 8562 • Composer: Add firebase/php-jwt as dependency
- Suggested by: Cazalla Vázquez, Daniel [Zallax]
- Status of maintenance: The
php-jwt
dependency, maintained by Google's Firebase team, provides robust support for JWT handling with regular updates, ensuring reliability and alignment with current security standards. - Used by:
LTIConsumer
<IProvider
components and wrapped bycomponents/ILIAS/LTIConsumer
andcomponents/ILIAS/LTIProvider
- Decision: Dependency is accepted for ILIAS 11.
- PR 8563 • Chatroom: Add `mysql2`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
mysql2
is actively maintained and regularly updated (The latest release is from 28.11.2024). - Used by:
components/ILIAS/Chatroom/chat/Persistence/Database.js
- Decision: We would kindly ask Scharmer, Lukas [lscharmer] and Jansen, Michael [mjansen] to see if https://www.npmjs.com/package/mariadb would be a valid solution. If possible we would prefer this solution. If not, we accept this dependency for ILIAS 11.
- PR 8564 • Chatroom: Add `node-schedule`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
- Used by:
components/ILIAS/Chatroom/chat/Bootstrap/SetupClearMessagesProcess.js
andcomponents/ILIAS/Chatroom/chat/Bootstrap/UserSettingsProcess.js
- Decision: Dependency is accepted for ILIAS 11. The transitive dependencies of this library have not been updated for a while. Please keep a close eye on this.
- PR 8565 • Composer: Add celtic/lti as dependency
- Suggested by: Cazalla Vázquez, Daniel [Zallax]
- Status of maintenance: Actively maintained with 49 releases and a recent update (v5.1.4) released 2 weeks ago. The library is developed by a dedicated team of contributors and has consistent updates to align with evolving LTI standards.
- Used by:
LTIConsumer
<IProvider
components and wrapped bycomponents/ILIAS/LTIConsumer
andcomponents/ILIAS/LTIProvider
- Decision: Dependency is accepted for ILIAS 11.
- PR 8566 • Chatroom: Add `uuid`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
uuid
is a well maintained package with a lot of contributions. It is an active project, the latest release is from 04.11.2024. - Used by:
components/ILIAS/Chatroom/chat/Persistence/Conversation.js, components/ILIAS/Chatroom/chat/Persistence/ConversationAddUser.js, components/ILIAS/Chatroom/chat/Persistence/ConversationMessage.js
- Decision: Dependency is accepted for ILIAS 11.
- PR 8567 • Chatroom: Add `socket.io` and `socket.io-client`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
socket.io
is a well maintained package with major releases every few years and recent activities. - Used by:
components/ILIAS/Chatroom
andcomponents/ILIAS/OnScreenChat
- Decision: Dependency is accepted for ILIAS 11.
- PR 8569 • Chatroom: Add `winston`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
winston
is a well maintained package with major releases every few years. It is an active project, the latest release is from the 10.11.2024. - Used by:
components/ILIAS/Chatroom/chat/Bootstrap/SetupEnvironment.js
(instance creation and configuration) andcomponents/ILIAS/Chatroom/chat/*
(the logger instance is used in many JS files.) - Decision: Dependency is accepted for ILIAS 11.
- PR 8570 • NPM: Add `moment`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
- Used by:
- Calendar:
./components/ILIAS/Calendar/classes/class.ilCalendarUtil.php
- Legacy Forms: implicitly by
ilCalendarUtil
in theilDateTimeInputGUI
field type - OnScreenChat:
./components/ILIAS/OnScreenChat/js/moment.js
It is mainly (but not only) used to display relative dates and especially times (locale aware) in the conversation windows. These date/time presentations are dynamically updated (without expensive server round-trips) every 60 seconds.
- Calendar:
- Decision: We reject this Dependency for ILIAS 11 as there seems to be only one usage in the chat and the library is not well maintained.
- PR 8572 • NPM: Add `linkifyjs` and `linkify-element`
- Suggested by: Scharmer, Lukas [lscharmer]
- Status of maintenance:
linkifyjs
is actively maintained, although it is feature-complete. In the last months a few bug fixes and improvements have been committed. - Used by:
- CoPage: used in paragraphs
- LearningModule: used for export
- OnScreenChat:
components/ILIAS/OnScreenChat/js/onscreenchat.js
- Chatroom:
components/ILIAS/Chatroom/resources/js/src/ChatMessageArea.js
- Decision: Dependency is accepted for ILIAS 11.
- PR 8573 • Add `league/commonmark` as composer Dependency for ILIAS 11
- Suggested by: Schmid, Fabian [fschmid]
- Status of maintenance: last update of the library at 2024-08-16, PHP Version: ^7.4 || ^8.0
- Used by:
\ILIAS\UI\Implementation\Component\Input\Field\Markdown
- Decision: Dependency is accepted for ILIAS 11.
- PR 8576 • Add `guzzlehttp/psr7` as composer Dependency for ILIAS 11
- Suggested by: Schmid, Fabian [fschmid]
- Status of maintenance: last update of the library at 2024-07-18, PHP Version: ^7.2.5 || ^8.0
- Used by:
ILIAS\HTTP\Services
- Decision: Dependency is accepted for ILIAS 11.
- PR 8577 • Add `league/flysystem` as composer Dependency for ILIAS 11
- Suggested by: Schmid, Fabian [fschmid]
- Status of maintenance: last update of the library at 2024-05-22, PHP Version: ^8.0.2
- Used by:
ILIAS\Filesystem
- Decision: Dependency is accepted for ILIAS 11.
- PR 8578 • Add `sabre/dav` as composer Dependency for ILIAS 11
- Suggested by: Schmid, Fabian [fschmid]
- Status of maintenance: last update of the library at 2023-12-11, PHP Version: ^7.1.0 || ^8.0
- Used by:
ILIAS\WebDAV
- Decision: Dependency is accepted for ILIAS 11.
- PR 8579 • Add `dflydev/fig-cookies` as composer Dependency for ILIAS 11
- Suggested by: Schmid, Fabian [fschmid]
- Status of maintenance: last update of the library at 2023-07-18, PHP Version: ^7.2 || ^8.0
- Used by:
ILIAS\HTTP\Services
- Decision: Dependency is accepted for ILIAS 11.
- PR 8615 • NPM: Add MathJax (Updated PR #8262)
- Suggested by: Neumann, Fred [fneumann]
- Status of maintenance: MathJax is the de-facto standard for rendering LaTeX on web pages. It is supported by strong partners (IEEE, Elsevier). It is actively developed. In the last month, 24 pull requests have been merged to the source repository.
- Used by:
- Page editor: text content
- Forum: thread, post, reply
- Survey: introductory message, final statement
- Test Questions: question text, feedback, hints
- Cloze Question: cloze text
- Kprim Question: answers
- Matching Question: terms, definitions
- SC Question: answers
- MC Question: answers
- Ordering Question: answers
- Decision: Maintainer missing.
- PR 8630 • Add
@uppy/core
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance:
- Regular releases, last one 3 weeks ago.
- Active commit history, almost daily.
- Has over 25K usages.
- Used by:
components/ILIAS/UI/resources/js/Input/Field/file.js
(to be refactored) - Decision: Dependency is decision postponed for ILIAS 11.
- PR 8646 • NPM: Add chart.js as dependency
- Suggested by: Famula, Thomas [tfamula]
- Status of maintenance:
chart.js
is actively maintained by multiple contributors. New releases are published every few weeks/months.Status of maintenance: - Used by:
components/ILIAS/Poll
components/ILIAS/Skill
- Decision: Dependency is accepted for ILIAS 11.
- PR 8659 • Composer: Add getid3 lib
- Suggested by: Killing, Alexander [alex]
- Status of maintenance: The lib is on github since > 10 years, always got maintenance (last changes two weeks ago), has around 50 contributors, James Heinrich is still the main contributor
- Used by: components/ILIAS/MediaObjects (used internally)
- Decision: Dependency is accepted for ILIAS 11.
- PR 8615 • Composer: Add geshi lib
- Suggested by: Killing, Alexander [alex]
- Status of maintenance: Almost 20 years on gitub, little maintenance in the last years, has around 50 contributors, there is a reported PHP 8.1 issue that we did not experience so far. If there will be no maintenance, we might use a fork, create a fork, get into contact with one of the contributors, switch to an alternative like https://github.com/scrivo/highlight.php or abandon the feature.
- Used by: components/ILIAS/COPage (internally)
- Decision: Dependency is rejected for ILIAS 11. We kindly ask @alex40724 to see, if one of the other options would give us more security for the future as this library is not well maintained and the license is also not clear.
- PR 8661 • NPM: Add tinymc
- Suggested by: Killing, Alexander [alex]
- Status of maintenance: Well maintained, commercial background, still widely used and integrated.
- Used by:
- Page editor: text content
- ...
- Decision: Dependency is accepted for ILIAS 11.
- PR 8662 • Add
@uppy/tus
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance:
- Regular releases, last one 3 weeks ago.
- Active commit history, almost daily.
- Used by:
components/ILIAS/UI/resources/js/Input/Field/file.js
(to be refactored) - Decision: Dependency is decision postponed for ILIAS 11.
- PR 8664 • Add
rollup
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance:
- The package is actively maintained.
- The package has an active commit history.
- The package is used by 15Mil.
- Used by:
components/ILIAS/UI/resources/js/*
(many usages) - Decision: Dependency is accepted for ILIAS 11.
- PR 8665 • Add
@rollup/plugin-terser
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance: The package received its last commits in 2023. The package may not be required to be actively maintained because its small.
- Used by:
components/ILIAS/UI/resources/js/*
(many usages) - Decision: Dependency is accepted for ILIAS 11.
- PR 8666 • Add
@rollup/plugin-node-resolve
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance: Has commits this year. The package may not be required to be actively maintained because its small.
- Used by: components/ILIAS/UI/resources/js/Input/Field/file.js` (to be refactored)
- Decision: Dependency is decision postponed for ILIAS 11.
- PR 8667 • Add
eslint
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance: The package is actively maintained. The package has an active commit histroy. The package has 23Mil+ usages.
- Used by:
components/ILIAS/*
(all components should use this) - Decision: Dependency is accepted for ILIAS 11.
- PR 8668 • Add
eslint-plugin-import
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance: The package is actively maintained. The package has an active commit history.
- Used by:
.eslintrc.json
- Decision: Dependency is accepted for ILIAS 11.
- PR 8669 • Add
eslint-config-airbnb-base
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance: The package is not actively maintained (last release 2021). The package does not need much maintenance, as it only provides the configuration for the
eslint
package - Used by:
.eslintrc.json
- Decision: Dependency is accepted for ILIAS 11.
- PR 8670 • Add
@rollup/plugin-commonjs
as npm Dependency for ILIAS 11- Suggested by: Fuhrer, Thibeau [tfuhrer]
- Status of maintenance: The package is part of Rollup.js' plugin repository, which is actively maintained and receives yearly major releases and ~monthly to ~weekly minor/patch updates.
- Used by:
components/ILIAS/UI/resources/js/Input/Field/file.js (to be refactored)
- Decision: Dependency is rejected for ILIAS 11, as this would open the door to include code that doesn't conform to our coding standards. If it should be absolutely necessary to use this, don't hesitate to propose it again.
JourFixe is closed at 17:26h. We had postponed the following agenda items.
6.4 Deprecated for ILIAS 11
The following services, methods and UI elements are deprecated for ILIAS 11:
ILIAS/components/ILIAS/UIComponent
ilConfirmationGUI & ilConfirmationTableGUI
ilCheckboxListOverlayGUI
ilExplorer
ilSyntaxHighlighter
ilTextHighlighterGUI
ilToolbarGUI
ilTabsGUI
ilNestedList
ILIAS/components/ILIAS/Table
6.5 Pull Requests for Current Development / Trunk
The following pull requests in the ILIAS repository on GitHub are related to the current development activities in trunk.
- PR • UI/Legacy: factory->legacy() will return Legacy\Factory, not Component:
- PR • UI: an Input ModeViewControl:
6.6 Suggested Features for 11
- Suggestion presented by Neumann, Fred [fneumann]
- Length of slot: 30'
Split-Up Standard Fields Table and Move to DataTable:
- Suggestion presented by Kergomard, Stephan [skergomard]
- Length of slot: 15'
Move Custom Fields Table to DataTable:
- Suggestion presented by Kergomard, Stephan [skergomard]
- Length of slot: 15'
Move Translations Table to DataTable:
- Suggestion presented by Kergomard, Stephan [skergomard]
- Length of slot: 15'
Move Role-Permissions-Table to DataTable:
- Suggestion presented by Kergomard, Stephan [skergomard]
- Length of slot: 15'
7 Participants
Participant | Joined VC |
---|---|
x | |
x | |
x | |
x | |
x | |
Elagamy, Ahmed | |
x | |
Fries, Tomke | |
x | |
Graf, David | |
x | |
x | |
Hackfort, Marvin | |
Hartwig, Alex | x |
x | |
x | |
x | |
Joussen, Thomas | |
Kergomard, Stephan [skergomard] (Minutes) | x |
x | |
x | |
x | |
Kozianka, Carsten | |
x | |
x | |
x | |
Potter, Chris | x |
x | |
x | |
x | |
Schenk, Ralf | |
x | |
Schmidt-Sielex, Wolfgang | |
x | |
x | |
Seidel, Elyesa | x |
x | |
x | |
x | |
x | |
Wischniak, Stanislav | x |
Last edited: 16. Dec 2024, 12:19, Samoila, Oliver [oliver.samoila]