PHPBB3-14518 One click update - proposal for 3.3

Discuss requests for comments/changes posted in the Issue Tracker for the development of phpBB. Upcoming releases are 3.2/Rhea and 3.3.
Nicofuma
3.2 Release Manager
3.2 Release Manager
Posts: 297
Joined: Sun Apr 13, 2014 1:40 am
Location: Paris

PHPBB3-14518 One click update - proposal for 3.3

Post by Nicofuma » Sun Jan 15, 2017 4:09 pm

Starting a new topic to start fresh

There is a lot of issue with the current automatic updater and the current update process, so here are our proposal:
  1. Adds new update button in the ACP
  2. First step: upload a package and check it
    1. Download the appropriate update package from phpbb.com
    2. Download a signature from the same website
    3. Calculate the package checksum
    4. Decode the expected package checksum from the signature using a public key already available (the public key will be present in the install package and could be updated by any update package. If the key does not work, we will ask the user to download it from phpbb.com but it shouldn't happen a lot of time, the public key shouldn't change unless phpbb.com has been compromised)
  3. Second step check requirements
    1. Check PHP version and others PHP requirements (extensions or anything else) using the current files (this way, we can display a nice message and abort even if PHP is not compatible with the new version)
    2. Check other requirements (write right or DB version per example)
    3.  Calculate and compare the checksum of all files in the update package. Abort with an error message if one of them differ
  4. Third step: update files (replaces old files by the new ones)
  5.  Fourth step: pre db updates (config.php fixes per example)
  6.  Fifth step: db-update
  7. Sixth step: cleanup
Later we could imagine seventh step: updates extensions (but it needs another work before that)

Note: phpbb.com refer to phpbb.com or any other configured source (for IST per example)
Note: A such automatic updater needs 2 things:
  •  No more edits to core files at all
  • Write right to all phpBB files
Member of the phpBB Development-Team
No Support via PM

User avatar
P_I
Registered User
Posts: 69
Joined: Fri Oct 31, 2014 4:56 am

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by P_I » Sun Jan 15, 2017 5:24 pm

Absolutely a great idea. I'd clearly support the idea.

As a website administrator who also uses WordPress, I'd strongly recommend reviewing their model and implementation, including giving the admin the ability to Configuring Automatic Background Updates « WordPress Codex. I always turn the automatic background updates off because I want control of the timing and the ability to test before deploying.

User avatar
Jacob
Registered User
Posts: 100
Joined: Wed Jan 04, 2012 1:41 pm

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by Jacob » Sun Jan 15, 2017 5:34 pm

Sounds good to me.

The auto update method (needs a new name) would still be available, I suppose? (Here on phpbb.com, not through the ACP, obviously.)

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1731
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by DavidIQ » Sun Jan 15, 2017 6:04 pm

Why would we need to keep it?
Image

User avatar
Jacob
Registered User
Posts: 100
Joined: Wed Jan 04, 2012 1:41 pm

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by Jacob » Sun Jan 15, 2017 6:25 pm

For boards with modified core files.

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1731
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by DavidIQ » Sun Jan 15, 2017 8:00 pm

That's probably the point of this and would be part of step 4.
Image

User avatar
Jacob
Registered User
Posts: 100
Joined: Wed Jan 04, 2012 1:41 pm

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by Jacob » Sun Jan 15, 2017 9:57 pm

Hi.

Then I don't understand what this mean:
Nicofuma wrote:
Sun Jan 15, 2017 4:09 pm

Note: A such automatic updater needs 2 things:
  •  No more edits to core files at all

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1731
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by DavidIQ » Sun Jan 15, 2017 10:07 pm

That's the point of this though and I'm in favor of dropping support for the diff'ing of files, i.e. auto update package. It will then be the responsibility of the admin to reapply those changes on their own during updating. Since WordPress is being used as an example it doesn't preserve code changes either and they warn about this. The auto updater is a bit buggy and is tedious to prepare so I see very little reason to keep it.
Image

User avatar
david63
Registered User
Posts: 215
Joined: Mon Feb 07, 2005 7:23 am
Location: Lancashire, UK

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by david63 » Mon Jan 16, 2017 10:45 am

DavidIQ wrote:
Sun Jan 15, 2017 10:07 pm
That's the point of this though and I'm in favor of dropping support for the diff'ing of files, i.e. auto update package. It will then be the responsibility of the admin to reapply those changes on their own during updating. Since WordPress is being used as an example it doesn't preserve code changes either and they warn about this. The auto updater is a bit buggy and is tedious to prepare so I see very little reason to keep it.
I would also go down that route

===============================================================

With the "One click update" which is basically an automated changed files process the one thing that has to be "replaced" currently is the the vendor folder. This is quite a large, and growing, folder and if the whole folder is going to be part of the update then, because of its size, this might become a problem.

Another point to consider is that if this is not going to be included until 3.3 then there will be the problem of all updates until then and also the the upgrade from 3.2 to 3.3. Whilst I know that features are not normally added to minor updates I would suggest that this feature is considered for 3.2 as soon as it is ready rather than waiting for 3.3
David
Remember: You only know what you know -
and you do not know what you do not know!

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1731
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: PHPBB3-14518 One click update - proposal for 3.3

Post by DavidIQ » Mon Jan 16, 2017 1:59 pm

@Nicofuma: I'm curious about how this proposal will work if the vendor folder has to be updated. Currently the vendor folder has to be deleted and a new one uploaded. If the one-click update has to depend on things like Symfony for instance then it won't work.
Image

Post Reply