Odooly 2.6.0__tar.gz → 2.6.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {odooly-2.6.0 → odooly-2.6.2}/CHANGES.rst +12 -0
- {odooly-2.6.0 → odooly-2.6.2/Odooly.egg-info}/PKG-INFO +6 -71
- {odooly-2.6.0/Odooly.egg-info → odooly-2.6.2}/PKG-INFO +6 -71
- {odooly-2.6.0 → odooly-2.6.2}/README.rst +5 -70
- {odooly-2.6.0 → odooly-2.6.2}/docs/api.rst +2 -2
- {odooly-2.6.0 → odooly-2.6.2}/docs/index.rst +2 -2
- {odooly-2.6.0 → odooly-2.6.2}/docs/intro.rst +2 -2
- {odooly-2.6.0 → odooly-2.6.2}/docs/tutorial.rst +1 -3
- {odooly-2.6.0 → odooly-2.6.2}/odooly.py +4 -4
- {odooly-2.6.0 → odooly-2.6.2}/odooly_run.py +2 -1
- {odooly-2.6.0 → odooly-2.6.2}/LICENSE +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/MANIFEST.in +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/Odooly.egg-info/SOURCES.txt +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/Odooly.egg-info/dependency_links.txt +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/Odooly.egg-info/entry_points.txt +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/Odooly.egg-info/top_level.txt +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/docs/Makefile +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/docs/conf.py +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/docs/developer.rst +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/docs/make.bat +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/odooly.ini +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/setup.cfg +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/setup.py +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/tests/__init__.py +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/tests/_common.py +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/tests/test_client.py +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/tests/test_interact.py +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/tests/test_model.py +0 -0
- {odooly-2.6.0 → odooly-2.6.2}/tests/test_util.py +0 -0
|
@@ -2,6 +2,18 @@ Changelog
|
|
|
2
2
|
---------
|
|
3
3
|
|
|
4
4
|
|
|
5
|
+
2.6.2 (2026-03-17)
|
|
6
|
+
~~~~~~~~~~~~~~~~~~
|
|
7
|
+
|
|
8
|
+
* Fix command-line parsing.
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
2.6.1 (2026-03-17)
|
|
12
|
+
~~~~~~~~~~~~~~~~~~
|
|
13
|
+
|
|
14
|
+
* Fix invocation like ``odooly https://demo.odoo.com``.
|
|
15
|
+
|
|
16
|
+
|
|
5
17
|
2.6.0 (2026-03-17)
|
|
6
18
|
~~~~~~~~~~~~~~~~~~
|
|
7
19
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Odooly
|
|
3
|
-
Version: 2.6.
|
|
3
|
+
Version: 2.6.2
|
|
4
4
|
Summary: Versatile tool for Odoo
|
|
5
5
|
Home-page: http://odooly.readthedocs.org/
|
|
6
6
|
Author: Florent Xicluna
|
|
@@ -75,31 +75,28 @@ Interactive use
|
|
|
75
75
|
|
|
76
76
|
Launch without any configuration. It connects to the Odoo server, local or remote::
|
|
77
77
|
|
|
78
|
-
~$ odooly
|
|
78
|
+
~$ odooly https://demo.odoo.com/
|
|
79
79
|
|
|
80
80
|
Or::
|
|
81
81
|
|
|
82
|
-
~$ odooly
|
|
82
|
+
~$ odooly http://127.0.0.1:8069/
|
|
83
83
|
|
|
84
84
|
|
|
85
85
|
Environments can also be declared in ``odooly.ini``::
|
|
86
86
|
|
|
87
87
|
[DEFAULT]
|
|
88
|
-
scheme = http
|
|
89
|
-
host = localhost
|
|
90
|
-
port = 8069
|
|
91
88
|
database = odoo
|
|
92
89
|
username = admin
|
|
93
90
|
|
|
94
91
|
[demo]
|
|
92
|
+
server = http://localhost:8069/web
|
|
95
93
|
username = demo
|
|
96
94
|
password = demo
|
|
97
|
-
protocol = web
|
|
98
95
|
|
|
99
|
-
[
|
|
96
|
+
[demo/jsonrpc]
|
|
97
|
+
server = http://localhost:8069/jsonrpc
|
|
100
98
|
username = demo
|
|
101
99
|
password = demo
|
|
102
|
-
protocol = jsonrpc
|
|
103
100
|
|
|
104
101
|
[local]
|
|
105
102
|
scheme = local
|
|
@@ -160,65 +157,3 @@ This is a sample session::
|
|
|
160
157
|
create an empty file in your home directory::
|
|
161
158
|
|
|
162
159
|
~$ touch ~/.odooly_history
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
.. _command-line:
|
|
167
|
-
|
|
168
|
-
Command line arguments
|
|
169
|
-
----------------------
|
|
170
|
-
|
|
171
|
-
There are few arguments to query Odoo models from the command line.
|
|
172
|
-
Although it is quite limited::
|
|
173
|
-
|
|
174
|
-
~$ odooly --help
|
|
175
|
-
|
|
176
|
-
Usage: odooly.py [options] [search_term_or_id [search_term_or_id ...]]
|
|
177
|
-
|
|
178
|
-
Inspect data on Odoo objects. Use interactively or query a model (-m) and
|
|
179
|
-
pass search terms or ids as positional parameters after the options.
|
|
180
|
-
|
|
181
|
-
Options:
|
|
182
|
-
--version show program's version number and exit
|
|
183
|
-
-h, --help show this help message and exit
|
|
184
|
-
-l, --list list sections of the configuration
|
|
185
|
-
--env=ENV read connection settings from the given section
|
|
186
|
-
-c CONFIG, --config=CONFIG
|
|
187
|
-
specify alternate config file (default: 'odooly.ini')
|
|
188
|
-
--server=SERVER full URL of the server (default:
|
|
189
|
-
http://localhost:8069/web)
|
|
190
|
-
-d DB, --db=DB database
|
|
191
|
-
-u USER, --user=USER username
|
|
192
|
-
-p PASSWORD, --password=PASSWORD
|
|
193
|
-
password, or it will be requested on login
|
|
194
|
-
--api-key=API_KEY API Key for JSON-2 or JSON-RPC
|
|
195
|
-
|
|
196
|
-
-m MODEL, --model=MODEL
|
|
197
|
-
the type of object to find
|
|
198
|
-
-f FIELDS, --fields=FIELDS
|
|
199
|
-
restrict the output to certain fields (multiple
|
|
200
|
-
allowed)
|
|
201
|
-
-i, --interact use interactively; default when no model is queried
|
|
202
|
-
-v, --verbose verbose
|
|
203
|
-
$ #
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
Example::
|
|
207
|
-
|
|
208
|
-
$ odooly -d demo -m res.partner -f name -f lang 1
|
|
209
|
-
"name","lang"
|
|
210
|
-
"Your Company","en_US"
|
|
211
|
-
|
|
212
|
-
::
|
|
213
|
-
|
|
214
|
-
$ odooly -d demo -m res.groups -f full_name 'id > 0'
|
|
215
|
-
"full_name"
|
|
216
|
-
"Administration / Access Rights"
|
|
217
|
-
"Administration / Configuration"
|
|
218
|
-
"Human Resources / Employee"
|
|
219
|
-
"Usability / Multi Companies"
|
|
220
|
-
"Usability / Extended View"
|
|
221
|
-
"Usability / Technical Features"
|
|
222
|
-
"Sales Management / User"
|
|
223
|
-
"Sales Management / Manager"
|
|
224
|
-
"Partner Manager"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Odooly
|
|
3
|
-
Version: 2.6.
|
|
3
|
+
Version: 2.6.2
|
|
4
4
|
Summary: Versatile tool for Odoo
|
|
5
5
|
Home-page: http://odooly.readthedocs.org/
|
|
6
6
|
Author: Florent Xicluna
|
|
@@ -75,31 +75,28 @@ Interactive use
|
|
|
75
75
|
|
|
76
76
|
Launch without any configuration. It connects to the Odoo server, local or remote::
|
|
77
77
|
|
|
78
|
-
~$ odooly
|
|
78
|
+
~$ odooly https://demo.odoo.com/
|
|
79
79
|
|
|
80
80
|
Or::
|
|
81
81
|
|
|
82
|
-
~$ odooly
|
|
82
|
+
~$ odooly http://127.0.0.1:8069/
|
|
83
83
|
|
|
84
84
|
|
|
85
85
|
Environments can also be declared in ``odooly.ini``::
|
|
86
86
|
|
|
87
87
|
[DEFAULT]
|
|
88
|
-
scheme = http
|
|
89
|
-
host = localhost
|
|
90
|
-
port = 8069
|
|
91
88
|
database = odoo
|
|
92
89
|
username = admin
|
|
93
90
|
|
|
94
91
|
[demo]
|
|
92
|
+
server = http://localhost:8069/web
|
|
95
93
|
username = demo
|
|
96
94
|
password = demo
|
|
97
|
-
protocol = web
|
|
98
95
|
|
|
99
|
-
[
|
|
96
|
+
[demo/jsonrpc]
|
|
97
|
+
server = http://localhost:8069/jsonrpc
|
|
100
98
|
username = demo
|
|
101
99
|
password = demo
|
|
102
|
-
protocol = jsonrpc
|
|
103
100
|
|
|
104
101
|
[local]
|
|
105
102
|
scheme = local
|
|
@@ -160,65 +157,3 @@ This is a sample session::
|
|
|
160
157
|
create an empty file in your home directory::
|
|
161
158
|
|
|
162
159
|
~$ touch ~/.odooly_history
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
.. _command-line:
|
|
167
|
-
|
|
168
|
-
Command line arguments
|
|
169
|
-
----------------------
|
|
170
|
-
|
|
171
|
-
There are few arguments to query Odoo models from the command line.
|
|
172
|
-
Although it is quite limited::
|
|
173
|
-
|
|
174
|
-
~$ odooly --help
|
|
175
|
-
|
|
176
|
-
Usage: odooly.py [options] [search_term_or_id [search_term_or_id ...]]
|
|
177
|
-
|
|
178
|
-
Inspect data on Odoo objects. Use interactively or query a model (-m) and
|
|
179
|
-
pass search terms or ids as positional parameters after the options.
|
|
180
|
-
|
|
181
|
-
Options:
|
|
182
|
-
--version show program's version number and exit
|
|
183
|
-
-h, --help show this help message and exit
|
|
184
|
-
-l, --list list sections of the configuration
|
|
185
|
-
--env=ENV read connection settings from the given section
|
|
186
|
-
-c CONFIG, --config=CONFIG
|
|
187
|
-
specify alternate config file (default: 'odooly.ini')
|
|
188
|
-
--server=SERVER full URL of the server (default:
|
|
189
|
-
http://localhost:8069/web)
|
|
190
|
-
-d DB, --db=DB database
|
|
191
|
-
-u USER, --user=USER username
|
|
192
|
-
-p PASSWORD, --password=PASSWORD
|
|
193
|
-
password, or it will be requested on login
|
|
194
|
-
--api-key=API_KEY API Key for JSON-2 or JSON-RPC
|
|
195
|
-
|
|
196
|
-
-m MODEL, --model=MODEL
|
|
197
|
-
the type of object to find
|
|
198
|
-
-f FIELDS, --fields=FIELDS
|
|
199
|
-
restrict the output to certain fields (multiple
|
|
200
|
-
allowed)
|
|
201
|
-
-i, --interact use interactively; default when no model is queried
|
|
202
|
-
-v, --verbose verbose
|
|
203
|
-
$ #
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
Example::
|
|
207
|
-
|
|
208
|
-
$ odooly -d demo -m res.partner -f name -f lang 1
|
|
209
|
-
"name","lang"
|
|
210
|
-
"Your Company","en_US"
|
|
211
|
-
|
|
212
|
-
::
|
|
213
|
-
|
|
214
|
-
$ odooly -d demo -m res.groups -f full_name 'id > 0'
|
|
215
|
-
"full_name"
|
|
216
|
-
"Administration / Access Rights"
|
|
217
|
-
"Administration / Configuration"
|
|
218
|
-
"Human Resources / Employee"
|
|
219
|
-
"Usability / Multi Companies"
|
|
220
|
-
"Usability / Extended View"
|
|
221
|
-
"Usability / Technical Features"
|
|
222
|
-
"Sales Management / User"
|
|
223
|
-
"Sales Management / Manager"
|
|
224
|
-
"Partner Manager"
|
|
@@ -46,31 +46,28 @@ Interactive use
|
|
|
46
46
|
|
|
47
47
|
Launch without any configuration. It connects to the Odoo server, local or remote::
|
|
48
48
|
|
|
49
|
-
~$ odooly
|
|
49
|
+
~$ odooly https://demo.odoo.com/
|
|
50
50
|
|
|
51
51
|
Or::
|
|
52
52
|
|
|
53
|
-
~$ odooly
|
|
53
|
+
~$ odooly http://127.0.0.1:8069/
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
Environments can also be declared in ``odooly.ini``::
|
|
57
57
|
|
|
58
58
|
[DEFAULT]
|
|
59
|
-
scheme = http
|
|
60
|
-
host = localhost
|
|
61
|
-
port = 8069
|
|
62
59
|
database = odoo
|
|
63
60
|
username = admin
|
|
64
61
|
|
|
65
62
|
[demo]
|
|
63
|
+
server = http://localhost:8069/web
|
|
66
64
|
username = demo
|
|
67
65
|
password = demo
|
|
68
|
-
protocol = web
|
|
69
66
|
|
|
70
|
-
[
|
|
67
|
+
[demo/jsonrpc]
|
|
68
|
+
server = http://localhost:8069/jsonrpc
|
|
71
69
|
username = demo
|
|
72
70
|
password = demo
|
|
73
|
-
protocol = jsonrpc
|
|
74
71
|
|
|
75
72
|
[local]
|
|
76
73
|
scheme = local
|
|
@@ -131,65 +128,3 @@ This is a sample session::
|
|
|
131
128
|
create an empty file in your home directory::
|
|
132
129
|
|
|
133
130
|
~$ touch ~/.odooly_history
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
.. _command-line:
|
|
138
|
-
|
|
139
|
-
Command line arguments
|
|
140
|
-
----------------------
|
|
141
|
-
|
|
142
|
-
There are few arguments to query Odoo models from the command line.
|
|
143
|
-
Although it is quite limited::
|
|
144
|
-
|
|
145
|
-
~$ odooly --help
|
|
146
|
-
|
|
147
|
-
Usage: odooly.py [options] [search_term_or_id [search_term_or_id ...]]
|
|
148
|
-
|
|
149
|
-
Inspect data on Odoo objects. Use interactively or query a model (-m) and
|
|
150
|
-
pass search terms or ids as positional parameters after the options.
|
|
151
|
-
|
|
152
|
-
Options:
|
|
153
|
-
--version show program's version number and exit
|
|
154
|
-
-h, --help show this help message and exit
|
|
155
|
-
-l, --list list sections of the configuration
|
|
156
|
-
--env=ENV read connection settings from the given section
|
|
157
|
-
-c CONFIG, --config=CONFIG
|
|
158
|
-
specify alternate config file (default: 'odooly.ini')
|
|
159
|
-
--server=SERVER full URL of the server (default:
|
|
160
|
-
http://localhost:8069/web)
|
|
161
|
-
-d DB, --db=DB database
|
|
162
|
-
-u USER, --user=USER username
|
|
163
|
-
-p PASSWORD, --password=PASSWORD
|
|
164
|
-
password, or it will be requested on login
|
|
165
|
-
--api-key=API_KEY API Key for JSON-2 or JSON-RPC
|
|
166
|
-
|
|
167
|
-
-m MODEL, --model=MODEL
|
|
168
|
-
the type of object to find
|
|
169
|
-
-f FIELDS, --fields=FIELDS
|
|
170
|
-
restrict the output to certain fields (multiple
|
|
171
|
-
allowed)
|
|
172
|
-
-i, --interact use interactively; default when no model is queried
|
|
173
|
-
-v, --verbose verbose
|
|
174
|
-
$ #
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
Example::
|
|
178
|
-
|
|
179
|
-
$ odooly -d demo -m res.partner -f name -f lang 1
|
|
180
|
-
"name","lang"
|
|
181
|
-
"Your Company","en_US"
|
|
182
|
-
|
|
183
|
-
::
|
|
184
|
-
|
|
185
|
-
$ odooly -d demo -m res.groups -f full_name 'id > 0'
|
|
186
|
-
"full_name"
|
|
187
|
-
"Administration / Access Rights"
|
|
188
|
-
"Administration / Configuration"
|
|
189
|
-
"Human Resources / Employee"
|
|
190
|
-
"Usability / Multi Companies"
|
|
191
|
-
"Usability / Extended View"
|
|
192
|
-
"Usability / Technical Features"
|
|
193
|
-
"Sales Management / User"
|
|
194
|
-
"Sales Management / Manager"
|
|
195
|
-
"Partner Manager"
|
|
@@ -198,7 +198,7 @@ Environment
|
|
|
198
198
|
Advanced methods
|
|
199
199
|
~~~~~~~~~~~~~~~~
|
|
200
200
|
|
|
201
|
-
Those methods give more control on the Odoo objects
|
|
201
|
+
Those methods give more control on the Odoo objects.
|
|
202
202
|
Please refer to `the Odoo documentation`_ for details.
|
|
203
203
|
|
|
204
204
|
|
|
@@ -238,7 +238,7 @@ Python script or interactively in a Python session.
|
|
|
238
238
|
It is not recommended to install or upgrade modules in offline mode when
|
|
239
239
|
any web server is still running: the operation will not be signaled to
|
|
240
240
|
other processes. This restriction does not apply when connected through
|
|
241
|
-
Webclient API or
|
|
241
|
+
Webclient API or JSON-RPC API.
|
|
242
242
|
|
|
243
243
|
|
|
244
244
|
.. _model-and-records:
|
|
@@ -19,8 +19,8 @@ and an encapsulation of the methods on :ref:`Active Record objects
|
|
|
19
19
|
Additional helpers are provided to explore the model and administrate the
|
|
20
20
|
server remotely.
|
|
21
21
|
|
|
22
|
-
The :doc:`intro` describes how to use it
|
|
23
|
-
|
|
22
|
+
The :doc:`intro` describes how to use it within a Python
|
|
23
|
+
:ref:`interactive shell <interactive-mode>`.
|
|
24
24
|
|
|
25
25
|
The :doc:`tutorial` gives an in-depth look at the capabilities.
|
|
26
26
|
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Introduction
|
|
4
4
|
============
|
|
5
5
|
|
|
6
|
-
This section gives the bare minimum to use Odooly
|
|
7
|
-
|
|
6
|
+
This section gives the bare minimum to use Odooly within a Python
|
|
7
|
+
:ref:`interactive shell <interactive-mode>`.
|
|
8
8
|
|
|
9
9
|
Installation
|
|
10
10
|
------------
|
|
@@ -122,10 +122,8 @@ Default password is ``"admin"``.
|
|
|
122
122
|
Create an ``odooly.ini`` file in the current directory to declare all our
|
|
123
123
|
environments. Example::
|
|
124
124
|
|
|
125
|
-
[DEFAULT]
|
|
126
|
-
server = http://localhost:8069/web
|
|
127
|
-
|
|
128
125
|
[demo]
|
|
126
|
+
server = http://localhost:8069/web
|
|
129
127
|
database = demo
|
|
130
128
|
username = joe
|
|
131
129
|
|
|
@@ -28,7 +28,7 @@ try:
|
|
|
28
28
|
except ImportError:
|
|
29
29
|
requests = None
|
|
30
30
|
|
|
31
|
-
__version__ = '2.6.
|
|
31
|
+
__version__ = '2.6.2'
|
|
32
32
|
__all__ = ['Client', 'Env', 'HTTPSession', 'WebAPI', 'Service', 'Json2',
|
|
33
33
|
'Printer', 'Error', 'ServerError',
|
|
34
34
|
'BaseModel', 'Model', 'BaseRecord', 'Record', 'RecordList',
|
|
@@ -1134,7 +1134,7 @@ class Env:
|
|
|
1134
1134
|
qlist = []
|
|
1135
1135
|
for query in queries.split(";"):
|
|
1136
1136
|
if any(li.split('--', 1)[0].strip() for li in query.splitlines()):
|
|
1137
|
-
qlist.append(query)
|
|
1137
|
+
qlist.append(query.strip())
|
|
1138
1138
|
if not qlist:
|
|
1139
1139
|
return None
|
|
1140
1140
|
|
|
@@ -2440,7 +2440,7 @@ def get_parser():
|
|
|
2440
2440
|
'--env',
|
|
2441
2441
|
help='read connection settings from the given section')
|
|
2442
2442
|
parser.add_argument(
|
|
2443
|
-
'-c', '--config', default=
|
|
2443
|
+
'-c', '--config', default=None,
|
|
2444
2444
|
help=f'specify alternate config file (default: {CONF_FILE})')
|
|
2445
2445
|
parser.add_argument(
|
|
2446
2446
|
'--server', default=None,
|
|
@@ -2478,7 +2478,7 @@ def connect_client(args):
|
|
|
2478
2478
|
def main(interact=_interact):
|
|
2479
2479
|
args = get_parser().parse_args()
|
|
2480
2480
|
|
|
2481
|
-
Client._config_file = Path.cwd() / args.config
|
|
2481
|
+
Client._config_file = Path.cwd() / (args.config or CONF_FILE)
|
|
2482
2482
|
if args.list_env:
|
|
2483
2483
|
print('Available settings: ' + ' '.join(read_config()))
|
|
2484
2484
|
return
|
|
@@ -112,7 +112,8 @@ def patch_colors(module):
|
|
|
112
112
|
def main():
|
|
113
113
|
args = odooly.get_parser().parse_args()
|
|
114
114
|
|
|
115
|
-
|
|
115
|
+
if args.config:
|
|
116
|
+
odooly.Client._config_file = odooly.Path.cwd() / args.config
|
|
116
117
|
if args.list_env:
|
|
117
118
|
print('Available settings: ' + ' '.join(odooly.read_config()))
|
|
118
119
|
return
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|