Posts made by Visvanath Ratnaweera

Picture of Particularly helpful Moodlers Picture of Translators
Hi Ken

>> ... those commands have to have a pattern - not custom tailored for each plug-in.
>
> It's not git commands that were the issue is was the way the provider of the plugin offered the plugin

That is exactly the problem! Taking an example:
Moodle Core, a major upgrade
$ git branch --track MOODLE_PQR_STABLE origin/MOODLE_XYZ_STABLE
$ git checkout MOODLE_XYZ_STABLE
$ git pull

$ /path/to/first/plugin
$ [What should I enter?]
$ /path/to/second/plugin
$ [What should I enter?]

You see? There no way of knowing this beforehand, other than reading the documentation of each and/or going to each plug-in directory and some experimenting with Git commands.

My proposal is to whether Moodle HQ ask the developers of the additional plug-ins to follow a common naming convention for their Git branches, which make the answers to those [What should I enter?] questions trivial.

HQ has managed to force everybody to Git, then to GitHub, no GitLab, for example. Then why not this?

> if all plugins had been installed with git to begin with ...

Yes, I am talking of additional plug-ins that have been pulled using Git.

> cd /path/to/first/plugin
> git pull
> cd /path/to/second/plugin
> git pull

Yes, that is what I expect, if I stay within the same major release (second digit). What about a release upgrade, P.Q.R > X.Y.latest where X.Y is a higher release than the P.Q and allows direct jump from P.Q?

Picture of Particularly helpful Moodlers Picture of Translators
Ken Task wrote:
> so rather than spend the time to build, decided that best to let moodle sort out versions of plugins and update them via GUI and not try to build the 'super'.

In other words, my question has no solution?

To repeat, I was hoping to upgrade the plug-ins too with Git. Going to each plug-in directory and issuing a set of Git commands is OK. But those commands have to have a pattern - not custom tailored for each plug-in.

I too tried Git sub-modules a long time ago. Didn't take me anywhere. No, I haven't studied Moodle development environment with Git submodules. Thanks. Will have a closer look.
Picture of Particularly helpful Moodlers Picture of Translators
An explanation: In "how would you plan and execute the upgrades?" I used to term "upgrades" to mean all code upgrades:
- core, point releases (third digit) and major upgrades (second digit)
- plug-ins, as a result of core upgrades and/or new features and bug fixes in the plug-in of its own.

The problem I am trying so solve is that currently each component, the core and each plug-in, may need a different set of Git commands.
Picture of Particularly helpful Moodlers Picture of Translators
Everything Ken said plus my personal choice: March along the LTS route: 3.3.1 > 3.3.final > 3.5.final > 3.9.final > 4.1.latest > 4.3.latest. I would take a long break at 3.9. The generation change to 4.x hurts sometimes, especially in the plug-in arena.

In short, if your people were happy with 3.3 for so many years, there is no great rush to jump in to the latest and the shyniest. The only compelling factor is the end of security support of certain components. With careful planning, like the proper Linux distribution, you can solve that.

Additional plug-ins are a completely different story. Rather than talking about the 2000+ plug-ins in the plug-in database, find out the additional plug-ins your site has and post here.

Picture of Particularly helpful Moodlers Picture of Translators
I'm not a quiz expert but your question intrigued me. About "I've generated 5 versions of the same set of questions": Our common practice it to get the "variations" by asking the question to take different values for its different parameters. Simple example: What is {a}*{b}? Let a = 3..5 in steps of 1 and b = 4.0-8.0 in steps of 0.1.

Don't know about distinct parts of an essay question. I think the core Essay question is single-part.