summaryrefslogtreecommitdiff
path: root/bin/addons/base/module
diff options
context:
space:
mode:
authorHarry (Open ERP) <hmo@tinyerp.com>2010-03-03 15:25:53 +0530
committerHarry (Open ERP) <hmo@tinyerp.com>2010-03-03 15:25:53 +0530
commitff51cf9330585530bccaa61eae932be87641ec0f (patch)
tree9965def108387b3a8d391afa5d1d857cf074fc46 /bin/addons/base/module
parent6244d2f561fa150d4e4e1b59cfdfc896de3a0d05 (diff)
[IMP] base: Remove everything related to repositires in the modules management (like download module from repositories, configure repositories)
bzr revid: hmo@tinyerp.com-20100303095553-r0u2xo2r0a1nxm01
Diffstat (limited to 'bin/addons/base/module')
-rw-r--r--bin/addons/base/module/module.py68
-rw-r--r--bin/addons/base/module/module_data.xml9
-rw-r--r--bin/addons/base/module/module_view.xml50
-rw-r--r--bin/addons/base/module/wizard/wizard_update_module.py19
4 files changed, 15 insertions, 131 deletions
diff --git a/bin/addons/base/module/module.py b/bin/addons/base/module/module.py
index 769ef4687e8..a474866f885 100644
--- a/bin/addons/base/module/module.py
+++ b/bin/addons/base/module/module.py
@@ -37,29 +37,6 @@ import netsvc
from tools.parse_version import parse_version
from tools.translate import _
-
-class module_repository(osv.osv):
- _name = "ir.module.repository"
- _description = "Module Repository"
- _columns = {
- 'name': fields.char('Name', size=128),
- 'url': fields.char('URL', size=256, required=True),
- 'sequence': fields.integer('Sequence', required=True),
- 'filter': fields.char('Filter', size=128, required=True,
- help='Regexp to search module on the repository webpage:\n'
- '- The first parenthesis must match the name of the module.\n'
- '- The second parenthesis must match the whole version number.\n'
- '- The last parenthesis must match the extension of the module.'),
- 'active': fields.boolean('Active'),
- }
- _defaults = {
- 'sequence': lambda *a: 5,
- 'filter': lambda *a: 'href="([a-zA-Z0-9_]+)-('+release.major_version+'.(\\d+)((\\.\\d+)*)([a-z]?)((_(pre|p|beta|alpha|rc)\\d*)*)(-r(\\d+))?)(\.zip)"',
- 'active': lambda *a: 1,
- }
- _order = "sequence"
-module_repository()
-
class module_category(osv.osv):
_name = "ir.module.category"
_description = "Module Category"
@@ -298,7 +275,6 @@ class module(osv.osv):
# update the list of available packages
def update_list(self, cr, uid, context={}):
- robj = self.pool.get('ir.module.repository')
res = [0, 0] # [update, add]
# iterate through installed modules and mark them as being so
@@ -345,50 +321,6 @@ class module(osv.osv):
self._update_dependencies(cr, uid, id, terp.get('depends', []))
self._update_category(cr, uid, id, terp.get('category', 'Uncategorized'))
- for repository in robj.browse(cr, uid, robj.search(cr, uid, [])):
- try:
- index_page = urllib.urlopen(repository.url).read()
- except IOError, e:
- if e.errno == 21:
- raise orm.except_orm(_('Error'),
- _("This url '%s' must provide an html file with links to zip modules") % (repository.url))
- else:
- raise
- modules = re.findall(repository.filter, index_page, re.I+re.M)
- mod_sort = {}
- for m in modules:
- name, version, extension = m[0], m[1], m[-1]
- if not version or version == 'x': # 'x' version was a mistake
- version = '0'
- if name in mod_sort:
- if parse_version(version) <= parse_version(mod_sort[name][0]):
- continue
- mod_sort[name] = [version, extension]
- for name in mod_sort.keys():
- version, extension = mod_sort[name]
- url = repository.url+'/'+name+'-'+version+extension
- ids = self.search(cr, uid, [('name','=',name)])
- if not ids:
- self.create(cr, uid, {
- 'name': name,
- 'published_version': version,
- 'url': url,
- 'state': 'uninstalled',
- })
- res[1] += 1
- else:
- id = ids[0]
- installed_version = self.read(cr, uid, id, ['latest_version'])['latest_version']
- if not installed_version or installed_version == 'x': # 'x' version was a mistake
- installed_version = '0'
- if parse_version(version) > parse_version(installed_version):
- self.write(cr, uid, id, { 'url': url })
- res[0] += 1
- published_version = self.read(cr, uid, id, ['published_version'])['published_version']
- if published_version == 'x' or not published_version:
- published_version = '0'
- if parse_version(version) > parse_version(published_version):
- self.write(cr, uid, id, {'published_version': version})
return res
def download(self, cr, uid, ids, download=True, context=None):
diff --git a/bin/addons/base/module/module_data.xml b/bin/addons/base/module/module_data.xml
index 6176b229e13..bca3f30d67a 100644
--- a/bin/addons/base/module/module_data.xml
+++ b/bin/addons/base/module/module_data.xml
@@ -1,13 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
- <data>
- <record id="module_repository_openerp" model="ir.module.repository">
- <field name="name">OpenERP</field>
- <field name="url">http://www.openerp.com/download/modules/</field>
- <field eval="False" name="active"/>
- <field eval="'href=&quot;([a-zA-Z0-9_]+)-('+version+'.(\\d+)((\\.\\d+)*)([a-z]?)((_(pre|p|beta|alpha|rc)\\d*)*)(-r(\\d+))?)(\.zip)&quot;'" name="filter"/>
- </record>
-
+ <data>
<record id="ir_ui_view_sc_modules0" model="ir.ui.view_sc">
<field name="name">Modules</field>
<field name="resource">ir.ui.menu</field>
diff --git a/bin/addons/base/module/module_view.xml b/bin/addons/base/module/module_view.xml
index 10582bb711b..ef0cf239042 100644
--- a/bin/addons/base/module/module_view.xml
+++ b/bin/addons/base/module/module_view.xml
@@ -38,7 +38,7 @@
<menuitem action="action_module_category_tree" id="menu_action_module_category_tree" parent="base.menu_management"/>
<!-- Click on a category -->
-
+
<record id="view_module_filter" model="ir.ui.view">
<field name="name">ir.module.module.list.select</field>
<field name="model">ir.module.module</field>
@@ -51,14 +51,14 @@
<filter icon="terp-sale" string="To be upgraded" domain="[('state','in', ['to upgrade', 'to remove', 'to install'])]"/>
<separator orientation="vertical"/>
<field name="name" select="1"/>
- <field name="state" readonly="1" select="1"/>
-
+ <field name="state" readonly="1" select="1"/>
+
</group>
-
+
</search>
</field>
</record>
-
+
<record id="action_module_open_categ" model="ir.actions.act_window">
<field name="name">Modules</field>
@@ -66,7 +66,7 @@
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('category_id','=',active_id)]</field>
-
+
</record>
<record id="ir_action_module_category" model="ir.values">
<field eval="'tree_but_open'" name="key2"/>
@@ -154,43 +154,7 @@
<field name="domain"/>
<field name="search_view_id" ref="view_module_filter"/>
</record>
- <menuitem action="open_module_tree" id="menu_module_tree" parent="base.menu_management"/>
-
- <record id="repository_form" model="ir.ui.view">
- <field name="name">ir.module.repository.form</field>
- <field name="model">ir.module.repository</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Repository">
- <field name="name" select="1"/>
- <field name="sequence"/>
- <field name="url" select="1" widget="url"/>
- <field name="active" select="1"/>
- <field colspan="4" name="filter"/>
- </form>
- </field>
- </record>
- <record id="repository_tree" model="ir.ui.view">
- <field name="name">ir.module.repository.tree</field>
- <field name="model">ir.module.repository</field>
- <field name="type">tree</field>
- <field name="arch" type="xml">
- <tree string="Repository list">
- <field name="sequence"/>
- <field name="active"/>
- <field name="name"/>
- <field name="url"/>
- </tree>
- </field>
- </record>
- <record id="open_repository_tree" model="ir.actions.act_window">
- <field name="name">Repository list</field>
- <field name="res_model">ir.module.repository</field>
- <field name="view_type">form</field>
- <field name="view_mode">tree,form</field>
- <field name="context">{'active_test': False}</field>
- </record>
- <menuitem action="open_repository_tree" id="menu_module_repository_tree" parent="base.menu_management"/>
+ <menuitem action="open_module_tree" id="menu_module_tree" parent="base.menu_management"/>
</data>
</openerp>
diff --git a/bin/addons/base/module/wizard/wizard_update_module.py b/bin/addons/base/module/wizard/wizard_update_module.py
index d9548d5cdb9..c4f794a87de 100644
--- a/bin/addons/base/module/wizard/wizard_update_module.py
+++ b/bin/addons/base/module/wizard/wizard_update_module.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
##############################################################################
-#
+#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
#
@@ -15,7 +15,7 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
@@ -27,11 +27,11 @@ class wizard_update_module(wizard.interface):
arch = '''<?xml version="1.0"?>
<form string="Scan for new modules">
- <label string="This function will check for new modules in the 'addons' path and on module repositories:" colspan="4" align="0.0"/>
- <field name="repositories" colspan="4" nolabel="1"/>
+ <label string="This function will check for new modules in the 'addons' path" colspan="4" align="0.0"/>
+
</form>'''
fields = {
- 'repositories': {'type': 'text', 'string': 'Repositories', 'readonly': True},
+
}
arch_module = '''<?xml version="1.0"?>
@@ -60,16 +60,11 @@ class wizard_update_module(wizard.interface):
'type': 'ir.actions.act_window'
}
- def _get_repositories(self, cr, uid, data, context):
- pool = pooler.get_pool(cr.dbname)
- repository_obj = pool.get('ir.module.repository')
- ids = repository_obj.search(cr, uid, [])
- res = repository_obj.read(cr, uid, ids, ['name', 'url'], context)
- return {'repositories': '\n'.join(map(lambda x: x['name']+': '+x['url'], res))}
+
states = {
'init': {
- 'actions': [_get_repositories],
+ 'actions': [],
'result': {'type': 'form', 'arch': arch, 'fields': fields,
'state': [
('end', 'Cancel', 'gtk-cancel'),