Actions

Developer Area/Developer Meetings/91: Difference between revisions

From Mahara Wiki

< Developer Area‎ | Developer Meetings
No edit summary
 
(8 intermediate revisions by 2 users not shown)
Line 20: Line 20:
* PHP 8.1 progress
* PHP 8.1 progress
* Mahara 22.10 (Kristina)
* Mahara 22.10 (Kristina)
* Secret project, not so secret anymore once we have the meeting ;-) (Kristina)
* Secret project, not so secret any more once we have the meeting ;-) (Kristina)


General items
General items
Line 29: Line 29:
==Minutes==
==Minutes==


Recording: https://seafile.catalyst.net.nz/f/c01ec54f7e2b42c48444/
[https://seafile.catalyst.net.nz/f/406d0caad57245d5937a/ Recording]


'''Attendees:'''
* Attendees:
** Kristina Hoeppner (Wellington, NZ), Mahara project lead, Catalyst IT
** Robert Lyon (Wellington, NZ) - Mahara tech lead, Catalyst IT
** Doris Tam (Wellington, NZ) - Mahara developer, Catalyst IT
** Adam (Texas, US), Co-founder, LearnOpenTech
** Beck (Texas, US), Co-founder, LearnOpenTech


* Kristina Hoeppner (Wellington, NZ), Mahara project lead
* Additional security checks to the Makefile
* Robert Lyon (Wellington, NZ) - Mahara  tech lead
** The plan is to flag patch sets as private when they involve user input as parameters.
* Doris Tam (Wellington, NZ) - Mahara developer
** Ensure checking for security holes before making patch sets public and remind people to check for potential security issues.
* Adam (Texas, US), LearnOpenTech co-founder
* Beck (Texas, US), LearnOpenTech co-founder


=== Making changes to Makefile for additional security checks 🔒 ===
* Update coding and code review guidelines to add words around security
The plan is to flag patch sets as private when they involve user input as parameters. With this, we can ensure checking for security holes before making patch sets public and remind people to check for potential security issues. - Robert
** Still to do.
 
** Include the Makefile changes once those have been implemented and merged.
=== Update coding and code review guidelines to add words around security 💡 ===
* PHP 8.1 progress
Still to do. Include the Makefile changes once those have been implemented and merged.
** Gold is making lots of progress! See [https://unifex.gitlab.io/mahara-progress/ Mahara progress to PHP 8 charts].
 
** The bulk of Behat tests are passing. Focus has been mainly on PHPStan Level 1.
=== PHP 8.1 progress 🚧 ===
** We are aiming to achieve basic compatibility with PHP 8.1 but not yet implementing new features so that institutions can continue on PHP 7.4 in their current distributions but also upgrade to Mahara 22.10.
Gold is making lots of progress! See [https://unifex.gitlab.io/mahara-progress/ Mahara progress to PHP 8 charts] . The bulk of Behat tests are passing. Focus has been mainly on PHPStan as Phan wasn't providing helpful insights.
** We not yet recommend using Mahara with PHP 8.1 in production. But please do test it on a dev / test site so that issues can be uncovered.
 
** We will work to cover more edge cases and aim to have a stable PHP 8.1 version available in April 2023.
=== Mahara 22.10 🚩 ===
** The upstream for Debian should support PHP7 as Ubuntu 20.04 is an LTS supported until 2025.
Features in 22.10: <nowiki>https://launchpad.net/mahara/+milestone/22.10.0</nowiki>  Come and help us test/code review.
** Mahara Docker patch allowing the switching of PHP 7 and 8 is available.
 
* Mahara 22.10
Ubuntu comes with PHP8.1 in the latest LTS, so we aim for people to upgrade without having to downgrade their PHP. PHP 7.4 is running out of security support in November this year. We want to become PHP 8.1 supported as soon as possible. We will work to cover more edge cases and to have a stable PHP 8.1 version available in April 2023. The upstream for Debian should support PHP7 as Ubuntu 20.04 is an LTS supported until 2025. Mahara Docker patch allowing the switching of PHP 7 and 8 is available.  
** [https://bugs.launchpad.net/mahara/+bugs?field.searchtext=&orderby=-importance&field.status%3Alist=FIXCOMMITTED&field.status%3Alist=FIXRELEASED&field.milestone%3Alist=94719&field.tag=newfeature&&search=Search New features in 22.10] (not all have been added yet) and [https://launchpad.net/mahara/+milestone/22.10.0 bug fixes]: Come and help us test/code review.
 
** Notable features:
Notably
*** Font Awesome 6 icons
 
*** Beginning PHP 8.1 support
* Modern FontAwesome icons
*** Mahara Mobile security updates and other internal / infrastructure-related items too.
* PHP8.1 support
*** LTI 1.3 Advantage support for Moodle (for basic logins)
* Mahara Mobile security updates and other internal /infrastructure-related items too.
*** More blocks with 'Quick edit' option
* LTI 1.3 update -> LTI Advantage (future goal)
*** Better guidance for alt text and captions for images
 
** More new functionality to come in 2023, thanks to some exciting plans. Watch this space!
Note: Mahara 22.10 is not recommended for live testing yet.
* [https://podcast.mahara.org Create. Share. Engage.🎉 (the podcast by the Mahara team)
 
** We quietly launched the podcast 'Create. Share. Engage' today so it can propagate through the various podcast directories before the first episode! An incredible milestone for the project.  
More new functionality to come in 2023, thanks to some exciting plans. Watch this space!
** The first full episode will be released on 28 September 2022.
 
** The theme is on how organisations use Mahara. It will include talks with academics, researchers, practitioners, learning designers, and students.
=== Mahara podcast: Create. Share. Engage. 🎉 ===
** The podcast will tell stories of the community and how people use Mahara in many different contexts, e.g. at schools, universities, home-schooling, and other possibilities.
We quietly launched the podcast 'Create. Share. Engage' today! An incredible milestone for the project.  
** Open source will be a future topic where we'll delve into how features get into Mahara, the process, and how people can get involved.
 
** We shall invite people from the wider community to share their practices, e.g. the [https://aaeebl.org/ AAEEBL] Digital Ethics Task Force and LearnOpenTech, as well as other concepts relevant for portfolio practice.
The theme is on how organisations use Mahara. It will include talks with academics, researchers, practitioners, learning designers, and students.  
* Other questions
 
** What is the security option in the makefile?
The podcast will tell stories of the community and how people use Mahara in many different contexts, e.g. at schools, universities, home-schooling, and other possibilities.
*** The issue is when we push things to our review system, it automatically makes the patches public. However, that shall not be the case with items for security so that we can keep them quarantined until reviewed.
 
*** The Makefile watches out for security related tags and Robert is looking into making that more robust and adapt to the new version of Gerrit that we've been using for the last few months.
OpenSource will be a future topic where we'll delve into how features get into Mahara, the process, and how people can get involved.
** When developing, do you test locally first or is there a development server?
 
*** We don't want some things to be public by default.
We shall invite people from the wider community to share their practices, e.g. the AABEL digital ethics task force and 'Learn Open Tech', as well as other concepts relevant for portfolio practice.
*** We test small developmental items can locally.
 
*** If an item requires integration tests, e.g. LTI, MNeT, and SSO, we have dedicated test sites with the right environment.
=== Other questions ===
** I want to make a gradebook plugin, how to start?
 
*** Depends if the feature will be interaction, general module, authentication-related, or artefact-related
==== When developing (a security fix in Makefile), do you testing locally first, or is there development server? ====
*** It is possible to copy and extend existing things, e.g. the third-party CPD plugin is an extension of our plans artefact where a community member wanted a more customised version.
The issue is when we push things to our review system, it automatically publicises patch sets. However, we don't want some things to be public by default. We test small developmental items can locally. If an item requires integration tests, e.g. LTI, MNET, and SSO, we have dedicated test sites with the right environment.
*** You can find a similar area of Mahara and extend/copy/tinker with it.
 
*** There are no templates to build a module/plugin template.
==== I want to make a Grade-book plugin, how to start? ====
*** For a custom block, the <code>PluginBlocktypeText</code> plugin is a place to start.
Depends if the feature will be interaction, general module, authentication-related, or artefact-related? It is possible to copy and extend existing things, e.g. The third-party CPD plugin is an extension of our plans artefact where a community member wanted a more customised version.
*** For a custom artefact, the <code>ArtefactTypeImage</code> artefact is a good starting spot.
 
*** Something similar to a gradebook might be the web services <code>PluginBlocktypeCourseinfo</code> plugin
You can find a similar area of Mahara and extend/copy/tinker with it. There are no templates to build a module/plugin template. Check the parent classes to see the requirements and possible extensions.
** What is the DataTables plugin?
 
*** Part of the submissions functionality
* For a custom block, the <code>PluginBlocktypeText</code> plugin is a place to start.  
*** Third-party tabelling engine to create tables easily.
* For a custom artefact, the <code>ArtefactTypeImage</code> artefact is a good starting spot.  
*** We are still planning to investigate whether it would be good to use it in all of Mahara instead of our 'regular' tables or just in specific places.
 
*** Currently, the DataTables functionality in Mahara is very specific and stripped down to what is needed for submissions
Something similar to a Grade book might be the webservices <code>PluginBlocktypeCourseinfo</code> plugin  
** What mock-up tools do you use?
 
*** An open source software called [https://pencil.evolus.vn/ Pencil] - Kristina likes to edit live CSS, take a screenshot, and add more items to create a mock-up then in Pencil.
==== What mock up tools do you use? ====
*** Consider what it will look like for a student/teacher with accessibility in mind.
An Open-source software called 'Pencil' - Kristina likes to edit live CSS, take a screenshot, and add more items to create a mock-up.Consider what it will look like for a student/teacher with accessibility in mind.  
*** Beck: [https://penpot.app/ PenPot] (open source), Figma (proprietary).
 
** What is 'LearnOpenTech', Beck's and Adam's business?
Beck: Grade book (proprietary software unknown), PenPot, Figma.
*** LearnOpenTech enables students no matter what type of learning to have a central location where they can store their work.
 
*** It will allow them to get peer reviews,  use the same portfolio for later studies, and to establish and grow a community of learners.
==== What is 'LearnOpenTech' ====
* Next developer meeting:
LearnOpenTech enables students (no matter what type of learning, to have a central location where they can store their work. It will allow them to get peer reviews,  use the same portfolio for later studies, and to establish and grow a community of learners.
** Who: Robert (chair) and Doris (minute-taker)
 
** When: [https://www.timeanddate.com/worldclock/fixedtime.html?msg=Mahara+dev+meeting&iso=20221109T12&p1=264 Tuesday, 8 November 2022 at 23:00 UTC]
== Next developer meeting: ==
 
* Who: Robert (chair) and Doris (minute-taker)
* When: [https://www.timeanddate.com/worldclock/meetingdetails.html?year=2023&month=11&day=8&hour=23&min=0&sec=0&p1=264&p2=24&p3=136 UTC (GMT)Wednesday, 8 November 2023 at 23:00:00]

Latest revision as of 16:38, 27 September 2022

Agenda for the 91st Mahara developer meeting on Tuesday, 13 September 2022 at 22:00:00 UTC

We will meet online using Big Blue Button (A Catalyst staff member will initiate the call).

Our #Mahara channel on Matrix will be our backup in case there are problems with the web conferencing tool and we'll need to chat to resolve it. You can connect to our Matrix channel also using the #mahara channel on Freenode IRC.

  • Chair: Kristina Hoeppner
  • Minute taker: Doris Tam

Chair and minute taker duties explained

Agenda

Items from previous meetings

  • Robert: Change to makefile to add some basic security checks
  • Update coding and code review guidelines to add words around security

New items

  • PHP 8.1 progress
  • Mahara 22.10 (Kristina)
  • Secret project, not so secret any more once we have the meeting ;-) (Kristina)

General items

  • Any other business
  • Next meeting and chair

Minutes

Recording

  • Attendees:
    • Kristina Hoeppner (Wellington, NZ), Mahara project lead, Catalyst IT
    • Robert Lyon (Wellington, NZ) - Mahara tech lead, Catalyst IT
    • Doris Tam (Wellington, NZ) - Mahara developer, Catalyst IT
    • Adam (Texas, US), Co-founder, LearnOpenTech
    • Beck (Texas, US), Co-founder, LearnOpenTech
  • Additional security checks to the Makefile
    • The plan is to flag patch sets as private when they involve user input as parameters.
    • Ensure checking for security holes before making patch sets public and remind people to check for potential security issues.
  • Update coding and code review guidelines to add words around security
    • Still to do.
    • Include the Makefile changes once those have been implemented and merged.
  • PHP 8.1 progress
    • Gold is making lots of progress! See Mahara progress to PHP 8 charts.
    • The bulk of Behat tests are passing. Focus has been mainly on PHPStan Level 1.
    • We are aiming to achieve basic compatibility with PHP 8.1 but not yet implementing new features so that institutions can continue on PHP 7.4 in their current distributions but also upgrade to Mahara 22.10.
    • We not yet recommend using Mahara with PHP 8.1 in production. But please do test it on a dev / test site so that issues can be uncovered.
    • We will work to cover more edge cases and aim to have a stable PHP 8.1 version available in April 2023.
    • The upstream for Debian should support PHP7 as Ubuntu 20.04 is an LTS supported until 2025.
    • Mahara Docker patch allowing the switching of PHP 7 and 8 is available.
  • Mahara 22.10
    • New features in 22.10 (not all have been added yet) and bug fixes: Come and help us test/code review.
    • Notable features:
      • Font Awesome 6 icons
      • Beginning PHP 8.1 support
      • Mahara Mobile security updates and other internal / infrastructure-related items too.
      • LTI 1.3 Advantage support for Moodle (for basic logins)
      • More blocks with 'Quick edit' option
      • Better guidance for alt text and captions for images
    • More new functionality to come in 2023, thanks to some exciting plans. Watch this space!
  • Create. Share. Engage. 🎉 (the podcast by the Mahara team)
    • We quietly launched the podcast 'Create. Share. Engage' today so it can propagate through the various podcast directories before the first episode! An incredible milestone for the project.
    • The first full episode will be released on 28 September 2022.
    • The theme is on how organisations use Mahara. It will include talks with academics, researchers, practitioners, learning designers, and students.
    • The podcast will tell stories of the community and how people use Mahara in many different contexts, e.g. at schools, universities, home-schooling, and other possibilities.
    • Open source will be a future topic where we'll delve into how features get into Mahara, the process, and how people can get involved.
    • We shall invite people from the wider community to share their practices, e.g. the AAEEBL Digital Ethics Task Force and LearnOpenTech, as well as other concepts relevant for portfolio practice.
  • Other questions
    • What is the security option in the makefile?
      • The issue is when we push things to our review system, it automatically makes the patches public. However, that shall not be the case with items for security so that we can keep them quarantined until reviewed.
      • The Makefile watches out for security related tags and Robert is looking into making that more robust and adapt to the new version of Gerrit that we've been using for the last few months.
    • When developing, do you test locally first or is there a development server?
      • We don't want some things to be public by default.
      • We test small developmental items can locally.
      • If an item requires integration tests, e.g. LTI, MNeT, and SSO, we have dedicated test sites with the right environment.
    • I want to make a gradebook plugin, how to start?
      • Depends if the feature will be interaction, general module, authentication-related, or artefact-related
      • It is possible to copy and extend existing things, e.g. the third-party CPD plugin is an extension of our plans artefact where a community member wanted a more customised version.
      • You can find a similar area of Mahara and extend/copy/tinker with it.
      • There are no templates to build a module/plugin template.
      • For a custom block, the PluginBlocktypeText plugin is a place to start.
      • For a custom artefact, the ArtefactTypeImage artefact is a good starting spot.
      • Something similar to a gradebook might be the web services PluginBlocktypeCourseinfo plugin
    • What is the DataTables plugin?
      • Part of the submissions functionality
      • Third-party tabelling engine to create tables easily.
      • We are still planning to investigate whether it would be good to use it in all of Mahara instead of our 'regular' tables or just in specific places.
      • Currently, the DataTables functionality in Mahara is very specific and stripped down to what is needed for submissions
    • What mock-up tools do you use?
      • An open source software called Pencil - Kristina likes to edit live CSS, take a screenshot, and add more items to create a mock-up then in Pencil.
      • Consider what it will look like for a student/teacher with accessibility in mind.
      • Beck: PenPot (open source), Figma (proprietary).
    • What is 'LearnOpenTech', Beck's and Adam's business?
      • LearnOpenTech enables students no matter what type of learning to have a central location where they can store their work.
      • It will allow them to get peer reviews, use the same portfolio for later studies, and to establish and grow a community of learners.
  • Next developer meeting: