625c4a70d4
Use findtext() instead of find().text
2024-09-11 13:31:41 +02:00
ila
2f4e479ad1
Restore start symbol check
2024-08-27 11:28:44 +02:00
ila
d80a3b7457
Fix object has no attribute 'dataoff'
...
`ext_fnhdr` exists only if call `_appendHdr()` once found a very long file name. Without that, impossible to get `ext_fnhdr_data`. It should be safe to leave `ext_fnhdr_data` as None if no `ext_fnhdr` added since later every `hdrs` will be checked for very long file name and if none of them will meet the condition, `ext_fnhdr_data` is not needed at all.
2024-08-27 11:28:44 +02:00
5cbd110a84
Forbid extracting files with absolute path from 'cpio' archives (boo#1122683)
...
Also fix and modernize the code, add tests.
2024-05-30 14:53:58 +02:00
d61b781976
Forbid extracting files with absolute path from 'ar' archives (boo#1122683)
...
Also fix and modernize the code, add tests.
2024-05-30 14:53:58 +02:00
798af31064
Merge pull request #1548 from dmach/xml-edit-comments
...
Add comments with attributes/elements to edited XML
2024-05-09 21:56:35 +02:00
3c096b82c9
Update XmlModel.xml_request() to accept also headers argument
2024-04-26 22:14:16 +02:00
7a67786ba4
Add comments with attributes/elements to edited XML
2024-04-25 13:14:03 +02:00
eb2678e0c7
Fix XmlModel to load an empty string in an int field as None
2024-04-17 10:57:59 +02:00
3cfeda45ba
Remove now unused 'retry_on_400' http_request() option from XmlModel
2024-03-12 17:33:41 +01:00
9004d5a5ba
Replace invalid 'if' with 'elif' in BaseModel.dict()
2024-03-05 16:45:52 +01:00
36dd0401ee
Remove a debug print
2024-03-05 15:50:44 +01:00
28326a185d
Add XPathQuery class for translating keyword arguments to an xpath query
2024-03-05 10:06:21 +01:00
cd95478ac8
Implement total ordering on BaseModel
2024-03-04 15:00:12 +01:00
747eb0ec52
Allow storing apiurl in the XmlModel instances
2024-03-04 14:58:40 +01:00
9cce6dbb8e
Allow retrieving default field value from top-level model
2024-03-04 14:58:40 +01:00
4e928a4505
Fix processed node check in XmlModel
2024-02-29 09:26:28 +01:00
7768684461
Fix BaseModel to convert dictionaries to objects on retrieving a model list
2024-02-23 13:14:04 +01:00
acc54919fc
Fix BaseModel to always deepcopy mutable defaults on first use
2024-02-23 13:14:04 +01:00
ab36108871
Implement do_snapshot() and has_changed() methods to determine changes in BaseModel
2024-02-21 09:46:53 +01:00
e5774a5730
Add XmlModel class that encapsulates manipulation with XML
2024-02-21 09:46:53 +01:00
556c97d7ee
Move xml_indent, xml_quote and xml_unquote to osc.util.xml module
2024-02-12 09:27:30 +01:00
8a38a9da82
Implement get_callback that allows modifying returned value to the Field class
2024-01-24 15:47:37 +01:00
7903ade2b4
Add support for List[BaseModel] type to Field class
2024-01-23 20:05:38 +01:00
ea0bf1bb60
Report class name when reporting an error during instantiating BaseModel object
2024-01-23 20:05:33 +01:00
b4a1b29f57
Fix exporting an empty model field in BaseModel.dict()
2024-01-23 20:05:28 +01:00
3baeb4b64e
Fix initializing a sub-model instance from a dictionary
2024-01-23 20:05:24 +01:00
35433fc341
Implement 'Enum' support in models
2024-01-23 20:05:17 +01:00
86e06a341f
Fix Field.origin_type for Optional types
2024-01-23 20:05:11 +01:00
b8d6c949c9
Drop unused 'exclude_unset' argument from BaseModel.dict() method
2024-01-04 10:20:58 +01:00
16cdc067a5
Store cached model defaults in self._defaults, avoid sharing references to mutable defaults
2024-01-03 21:22:30 +01:00
587c094f61
Limit model attributes to predefined fields by forbidding creating new attributes on fly
2024-01-03 21:21:38 +01:00
3c733387af
Store model values in self._values dict instead of private attributes
2024-01-03 21:21:29 +01:00
31059f0f92
Merge pull request #1452 from adrianschroeter/productcompose
...
productcompose: Support building with updateinfo.xml data
2024-01-02 08:05:25 +01:00
608fc76cd2
docs: Update models to avoid including lazy defaults in the rendered man pages
...
Lazy defaults may return different results under different circumstances
and we always want man pages rendered consistently.
2023-12-01 16:22:13 +01:00
7434a31a89
productcompose: Support building with updateinfo.xml data
2023-11-24 15:47:12 +01:00
930b7a8a4e
Add 'osc.util.models' module implementing an alternative pydantic-like data validation
2023-09-11 21:11:05 +02:00
54d1884e1d
Add 'osc.util.xdg' module for handling XDG paths
2023-09-11 21:11:05 +02:00
Rainer Müller
241b34d645
Refactor tar open functions to return early
2022-09-30 15:51:06 +02:00
Rainer Müller
395df87fa1
Remove workarounds for python2 compatibility
2022-09-30 15:48:36 +02:00
Rainer Müller
bcdc3b1835
Replace double with single underscores to avoid name mangling
2022-09-30 15:47:46 +02:00
Rainer Müller
a6fd4f88d3
Refactor extracting control from Debian package
...
Use separate functions for each compression type instead of a
cascade of conditionals.
2022-09-30 15:45:57 +02:00
Rainer Müller
5a13baf2ab
Handle uncompressed Debian packages
...
Debian packages can also be uncompressed in which case the archive
contains a control.tar file.
2022-09-30 15:44:14 +02:00
959d054ec8
Fix whitespace issues in osc.util
2022-09-12 15:44:27 +02:00
b511be20ff
Always import at the toplevel
2022-09-12 13:45:19 +02:00
6d891d7488
Remove superfluous parens
2022-09-12 13:45:19 +02:00
3296fd8d89
User super() instead of referencing parent classes explicitly
2022-09-12 13:45:19 +02:00
ee39653dc7
Fix indentation
2022-09-09 09:33:51 +02:00
ff63226c2f
Properly test for None
2022-09-09 09:33:51 +02:00
8acad28cc0
git_version: Return version from the source code if there's no matching tag
2022-08-22 11:08:34 +02:00