All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: yocto@yoctoproject.org
Cc: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Subject: [opkg-utils][PATCH 00/22] Partially prepare for python3 and fix old Packages file reuse
Date: Fri, 30 Mar 2012 00:21:47 +0200	[thread overview]
Message-ID: <cover.1333058256.git.Martin.Jansa@gmail.com> (raw)

First 5 patches are taken from oe-core.

Then there are some cleanups and fixes for issues I've found while looking 
for cause of very long package-index calls.

Some patches uses compatible changes from 2to3 (tested with python2.7), but
python3 support is not 100% complete, but were closer.

And in the end I've found the cause.. printing long fields (e. g. description)
with opkg.py was producing empty lines in Packages file (which are Packages entry 
separators) so only first entries till first empty line were processed from old
Packages file and the rest was always extracted from control files in packaged .ipk.

And this also fixes Packages.filelist generation.

I don't use python very much, so please review.

And the speedup? Almost 60 times :)
before:
real    20m10.484s
user    18m32.335s
sys     0m11.885s

after
real    0m24.492s
user    0m23.748s
sys     0m0.565s

The following changes since commit 002d29bc605d7c2d02e4cf20a43c5277c15f5597:

  [opkg-utils] fix install fail problem  Thanks for khorben's patch :-)  https://docs.openmoko.org/trac/attachment/ticket/2072/patch-opkg-utils_Makefile_install_path.diff (2008-11-03 03:59:59 +0000)

are available in the git repository at:
  git://github.com/shr-project/opkg-utils jansa/pull
  https://github.com/shr-project/opkg-utils/tree/jansa/pull

Christopher Larson (1):
  Use python via the PATH, rather than hardcoding /usr/bin/python

Enrico Scholz (1):
  opkg-make-index: convert mtime to int before comparing it

Khem Raj (1):
  opkg.py: Add knowledge about License field in ipk headers

Martin Jansa (17):
  opkg.py: use hashlib instead of old md5 module
  opkg.py, arfile.py: report which file has wrong format and use the
    same test
  arfile: decode read lines as ascii string before getting fields from
    it
  2to3: use subprocess instead of commands
  2to3: print fixes
  2to3: dictionary fixes
  2to3: exception handling fixes
  opkg-make-index: show OSError/IOError
  opkg.py: use string funtcions directly on string variable
  opkg.py: catch TypeError when reading control file, to show which one
    is failing
  arfile: fix test
  opkg-make-index: don't use stdout for Packages output and use __str__
    instead of __repr__
  opkg.py: cast lines from controlfile as string
  opkg.py: computeFileMD5 only when we have fn, otherwise fails to read
    None file
  opkg.py: fix write_package when called from main test
  opkg.py: use textwrap for description writing
  opkg.py: improve test so it prints temporary control file with long
    description and then reads it back

Richard Purdie (1):
  opkg-make-index: don't error out when some package disappears

Scott Anderson (1):
  arfile.py: handle six digit UIDs

 arfile.py            |   55 +++++++++++++---------
 makePackage          |    2 +-
 opkg-compare-indexes |   22 ++++----
 opkg-list-fields     |    4 +-
 opkg-make-index      |   74 +++++++++++++++++++----------
 opkg-show-deps       |   28 +++++------
 opkg-unbuild         |    4 +-
 opkg-update-index    |    5 +-
 opkg.py              |  125 +++++++++++++++++++++++++++++--------------------
 9 files changed, 186 insertions(+), 133 deletions(-)

-- 
1.7.8.5



             reply	other threads:[~2012-03-29 22:21 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-29 22:21 Martin Jansa [this message]
2012-03-29 22:22 ` [opkg-utils][PATCH 01/22] opkg-make-index: don't error out when some package disappears Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 02/22] opkg-make-index: convert mtime to int before comparing it Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 03/22] opkg.py: Add knowledge about License field in ipk headers Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 04/22] arfile.py: handle six digit UIDs Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 05/22] Use python via the PATH, rather than hardcoding /usr/bin/python Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 06/22] opkg.py: use hashlib instead of old md5 module Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 07/22] opkg.py, arfile.py: report which file has wrong format and use the same test Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 08/22] arfile: decode read lines as ascii string before getting fields from it Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 09/22] 2to3: use subprocess instead of commands Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 10/22] 2to3: print fixes Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 11/22] 2to3: dictionary fixes Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 12/22] 2to3: exception handling fixes Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 13/22] opkg-make-index: show OSError/IOError Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 14/22] opkg.py: use string funtcions directly on string variable Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 15/22] opkg.py: catch TypeError when reading control file, to show which one is failing Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 16/22] arfile: fix test Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 17/22] opkg-make-index: don't use stdout for Packages output and use __str__ instead of __repr__ Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 18/22] opkg.py: cast lines from controlfile as string Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 19/22] opkg.py: computeFileMD5 only when we have fn, otherwise fails to read None file Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 20/22] opkg.py: fix write_package when called from main test Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 21/22] opkg.py: use textwrap for description writing Martin Jansa
2012-03-29 22:22 ` [opkg-utils][PATCH 22/22] opkg.py: improve test so it prints temporary control file with long description and then reads it back Martin Jansa
2012-04-05  9:09 ` [opkg-utils][PATCH 23/23] opkg-make-index: generate complete filelist martin.jansa
2012-04-05 23:54 ` [opkg-utils][PATCH 00/22] Partially prepare for python3 and fix old Packages file reuse Saul Wold
2012-04-13 10:00   ` Martin Jansa
2012-04-26 10:43 ` Richard Purdie
2012-04-26 16:21   ` Koen Kooi
2012-04-26 18:52     ` Martin Jansa
2012-04-27  6:39       ` Koen Kooi
2012-04-27 12:42         ` Koen Kooi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1333058256.git.Martin.Jansa@gmail.com \
    --to=martin.jansa@gmail.com \
    --cc=enrico.scholz@sigma-chemnitz.de \
    --cc=yocto@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.