This application is not used any more and exists only for history. Post new tickets on the Github account.
Cette application n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.

Ticket #732 (closed enhancement: invalid)

Opened 6 years ago

Last modified 6 years ago

Module Installation Patch - Database

Reported by: foxmask Owned by:
Priority: normal Milestone: Jelix 1.2 beta
Component: jelix Version: trunk
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Documentation needed: no
Hosting Provider: Php version:

Description

Here is the patch that includes :

  • libs from clearbrick
  • classes to deal with the database installation/uninstallation process

This patch is a first step to know if that sticks with the needs.

I did not add this patch to another ticket to avoid to put this patch on the wrong one ;)

Attachments

module_mgr.patch (213.6 KB) - added by foxmask 6 years ago.
one patch to deal with jelix installation process
_install.mysql.sql (161 bytes) - added by foxmask 6 years ago.
the database table module need to be create to store the module we manage
modules.dao.xml (1.6 KB) - added by foxmask 6 years ago.
+ the dedicated dao

Change History

Changed 6 years ago by foxmask

one patch to deal with jelix installation process

Changed 6 years ago by foxmask

the database table module need to be create to store the module we manage

Changed 6 years ago by foxmask

+ the dedicated dao

comment:1 Changed 6 years ago by foxmask

  • review set to review?

comment:2 Changed 6 years ago by laurentj

  • review changed from review? to review-

module_mgr.patch : do we really need all of this clearbricks classes ? The patch is too big. Give me the list of classes we need from clearbricks (and why), and I will include them directly into the trunk. So your patch will only includes new thing.

modules.dao.xml : remove the comments.

modules.dao.xml & _install.mysql.sql : And where we install this files ? Which class use them ?

comment:3 Changed 6 years ago by laurentj

To store informations about modules, perhaps a single xml/json/ini/sqlite file is enough ? Do we really need a database ?

For the moment, change the name of the table: jmodules.

comment:4 Changed 6 years ago by foxmask

  • for clearbricks, we need :

1) in the directory dbschema : all classes because we extend them for jInstallerModuleMgr+jInstaller{driver}Dbschema

2) in the directory zip : we can avoid to install it BUT sooner or later, as i plan to use them for the packaging management (the code is started but not finished)... otherwise i could submit another patch for the packaging management with thoses 2 classes.

3) in the directory "common" : we can just install "lib.files.php" that manages the "deltree" function when we want to remove a module from the Filesystem.

  • about "to store info about modules" :

i will change the way i find an nstalled" module by putting an "_installed" file in the directory of the module as soon as we install it.

  • finally :

so i will come back with a lighter patch if this ideas of changes look good for you.

comment:5 follow-up: ↓ 6 Changed 6 years ago by laurentj

  • the directory dbschema: ok
  • the directory zip : we have already some zip classes (and PHP 5.2/5.3 provides already some other classes). So I don't think we need them
  • the directory "common" : we have already a classe to manage files.

You didn't say what we do with the modules table and the dao...

comment:6 in reply to: ↑ 5 Changed 6 years ago by foxmask

Replying to laurentj:

  • the directory "common" : we have already a classe to manage files.

so i will look into the class that manage the files

You didn't say what we do with the modules table and the dao...

the goal of the table module was to store the name and version of a module to know what module were installed.

so i can manage that feature by putting a file in the directory that tell us this module is installed instead of being link by a database table.

comment:7 Changed 6 years ago by laurentj

  • Milestone set to Jelix 1.2

comment:8 Changed 6 years ago by foxmask

  • Summary changed from Module Installation Patch to Module Installation Patch - Database

I submitted a patch on #31 to manage module installations

so in this ticket it remains :

  • DB Part : when installing module
  • Package Part : when creating an archive or installing from an archive

for this last part ; Jelix provides nothing to unpack an archive file. so do you prefer gzopen/gzwrite etc... to generate .gz file or zip_xxx function for .zip file or both ? :D

comment:9 Changed 6 years ago by laurentj

DB Part : when installing module

I don't understand why it is a separate thing from the update/install system...

Package Part : when creating an archive or installing from an archive

ticket #263

Jelix provides nothing to unpack an archive file. so do you prefer gzopen/gzwrite etc... to generate .gz file or zip_xxx function for .zip file or both ?

both

comment:10 Changed 6 years ago by laurentj

I'm going to improve jDbTools with new method to create/drop tables, fields etc.. I won't take the clearbricks classes because they do not provide all necessaries method, and because we cannot reuse jDb. see ticket #861

comment:11 Changed 6 years ago by foxmask

  • Status changed from new to closed
  • Resolution set to invalid

so we can close this ticket as it looks like unusefull.

Note: See TracTickets for help on using tickets.