← Back to team overview

openerp-india team mailing list archive

[Bug 1199386] Re: Email address regular expression needs work

 

Hi,
This has been fixed in addons 7.0 at revision 9764 rev-id: odo@xxxxxxxxxxx-20140115093120-r2u2bmms9y847b93, using the corrected email_split function. As a result, updating both server and addons 7.0 to the latest version will get you the complete fix.

Concerning the server-part of the big report, I'd prefer addressing it
on bug 1165531, as this bug is (at least partly) a duplicate. The
unification of the email parsing will be continued in trunk, where extra
regular expressions have been introduced again. Splitting the 2 concerns
(specific portal problem vs improvement/unification of email parsing)
seems easier to track.

** Changed in: openobject-addons
   Importance: Undecided => Medium

** Changed in: openobject-addons
       Status: New => Fix Released

** Changed in: openobject-addons
    Milestone: None => 7.0

** Changed in: openobject-addons
     Assignee: (unassigned) => OpenERP R&D Addons Team 1 (openerp-dev-addons1)

** No longer affects: openobject-server

** Summary changed:

- Email address regular expression needs work
+ Portal Wizard uses wrong regular expression for emails

-- 
You received this bug notification because you are a member of OpenERP
Indian Team, which is subscribed to OpenERP Addons.
https://bugs.launchpad.net/bugs/1199386

Title:
  Portal Wizard uses wrong regular expression for emails

Status in OpenERP Addons (modules):
  Fix Released

Bug description:
  During testing with my email-address 'm@xxxxxxxxxxxxxx'  I noticed a
  couple of things:

  1. The partner contact with that email-address can't be given access
  to the portal by the portal wizard, it fails on creation of the user
  in addons/mail/res_user.py:68 :

          if not data.get('login', False):
              raise osv.except_osv(_('Invalid Action!'),...)))

  2. The login field is empty, because the portal wizard uses the email
  field to create a login in addons/portal/wizard/portal_wizard.py:177
  :

              'login': extract_email(wizard_user.email),

  The extract_email function in portal_wizard.py uses 'email_re' to determine what the login field should look like.
  'email_re' is defined as in multiple places, which is the first problem. It at least in  tools/mail.py and tools/import_email.py. (The latter contains email information from the 'steel-sa.com ' (?!?) domain by the way.)

  email_re = re.compile(r"""
      ([a-zA-Z][\w\.-]*[a-zA-Z0-9]     # username part
      @                                                          # mandatory @ sign
      [a-zA-Z0-9][\w\.-]*                       # domain must start with a letter ... Ged> why do we include a 0-9 then?
       \.
       [a-z]{2,3}                      # TLD
      )
      """, re.VERBOSE)

  Problems I see:

  1. The email_re is defined in multiple places; make it one;
  2. It forces to have email-addresses with at least 2 characters for the user part, of which the first must contain a letter; addresses like m@xxxxxxxxxx won't work then; is there a reason for this?
  3. the TLD must contain 2 or 3 characters, which is unsuitable for domains like .name or .info

To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-addons/+bug/1199386/+subscriptions