1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-12-30 19:56:14 +01:00
Commit Graph

22 Commits

Author SHA1 Message Date
Marcus Huewe
e60af6f120 Use with statement in CpioRead._copyin_file
This makes sure that the file is closed in case of an exception.
2019-01-15 20:49:26 +01:00
Marcus Huewe
5387744d36 Port CpioWrite to python3
Now, CpioWrite provides a bytes-only API. It would be also possible
that the API accepts bytes and str (we would need to explicitly
encode the latter) but this would be a bit inconsistent wrt.
cpio.CpioRead (which is bytes-only).
Also, by using a bytesarray instead of a [] we avoid several
intermediate ''.join(...)s.
2019-01-15 20:48:42 +01:00
Marcus Huewe
3e326b1bb4 Port CpioRead and CpioHdr to python3
This is a bytes only API because a filename in a cpio archive can
contain, for instance, illegal utf-8 sequences. A user can decode
the filename/content as she wishes.
2019-01-15 20:05:47 +01:00
Marcus Huewe
54ac438eb0 Do not mmap a cpio archive
There is simply no need for a mmap.
2019-01-15 19:47:27 +01:00
Marcus Huewe
1c4385a579 Run a small demo when the cpio module is invoked as a script
It just reads in a cpio archive and print the headers.
2019-01-15 19:46:00 +01:00
Christian Berendt
1751bdc47f Resolve PEP8 issue E231
* E231 missing whitespace after ':'
2014-08-13 17:30:12 +02:00
Michal Vyskocil
7f2031558c python3 compatibility: print function
The most visible change in python3 - removal of print statement and all
the crufty
   print >> sys.stderr, foo,

The from __future__ import print_function makes it available in python
2.6
2013-04-16 10:51:41 +02:00
Michal Vyskocil
3a93ac6d10 python3 compatibility: except
changes 'except FooError, fe' to 'except FooError as fe'

available in python 2.6
2013-04-16 10:51:17 +02:00
Michal Vyskocil
d3648be24b python3 compatibility: dict
this patch
 1.) removes the iteritems/itervalues, which were dropped in py3
     items/values are used instead
 2.) add an extra list() in a cases the list-based access is needed
     (included appending, indexing and so)
 3.) changes a sorting idiom in few places
     instead of
     foo = dict.keys()
     foo.sort()
     for i in foo:

     there is a recommended

     for i in sorted(dict.keys()):
 4.) in one occassion it removes a if dict.has_key() by simpler
   dict.get(key, default)
2013-04-16 10:51:17 +02:00
Ludwig Nussel
7024449cd8 catch cpio errors
TODO: detect if returned file is XML with error code
2010-05-06 14:27:52 +02:00
Marcus Hüwe
4dc6e956c1 - yet another fix for python24... 2009-11-06 21:38:29 +00:00
Marcus Hüwe
9a8579cc35 - fix for python24 2009-11-06 19:24:36 +00:00
Pavol Rusnak
661d927d38 code cleanup 2009-10-20 14:30:15 +00:00
Marcus Hüwe
d016b3d4f0 - class CpioWrite(): use a valid file mode (default: regular file with permissions 0644)
- removed debug output
2009-09-09 21:25:55 +00:00
Marcus Hüwe
2300afea7e - merged cpio.py and util/cpio.py:
* renamed classes to CpioRead and CpioWrite
2009-09-09 16:02:02 +00:00
Marko Jung
a02ce1389a - fixed exception handling 2009-06-04 15:20:22 +00:00
Pavol Rusnak
e97c1de936 add more checks when working with mmap.mmap 2009-05-22 14:43:39 +00:00
Pavol Rusnak
0fa507a782 mmap.mmap works differently under windows 2009-05-20 16:42:17 +00:00
Michal Cihar
885c72af77 Fix syntax errors with Python 2.4 (bnc#500968). 2009-05-05 14:07:00 +00:00
Marcus Hüwe
9d97bcb56d - minor fix 2009-03-19 18:25:59 +00:00
Marcus Hüwe
6bf55c5415 - forgot the usual license stuff... 2009-03-19 13:58:04 +00:00
Marcus Hüwe
ab3403380f - added cpio archive reader. Supported formats:
* ascii SVR4 no CRC also called "new_ascii"
- no directory/PIPE/blk etc. support atm. Some of it might be implemented later in case I'm bored:)
- format implementation is based on src/copyin.c and src/util.c (see cpio sources)
- it is needed to investigate #477690 ("osc fetching binaries really slow")
2009-03-19 13:52:00 +00:00