-
Notifications
You must be signed in to change notification settings - Fork 5
/
changelog.txt
310 lines (247 loc) · 12.8 KB
/
changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
0.4.7 to 0.4.8
==============
* fe44006 update changelog
* df17ec5 bump version to new one
* bbca5db update armory tool and tests
* 441af80 fix error with new sqlite variable limit, can now be configured in config.json
* 1865f4c debug and improvements
* 873d5ae add possibility to create project from armory template
* e103e30 make img directory optional
* f074021 make img directory optional
* 0b65137 handle empty raw graph
0.4.5 to 0.4.6
==============
* allow database configuration in project configuration, you can now use any peewee supported database backend
* update rebuild command to take database configuration in consideration
* devices has been added to project, allowing you to easily start a zmq forwarder or streamer for more complex tests
* `oct run` command has been reworked. Some useless and undocumented arguments has been removed and new arguments has been added :
* ``-o`` allowing to choose output directory for tests results
* ``--with-forwarder`` start HQ with external publisher forwarder, allowing you to connect to forwarder device instead of simply binding a PUB socket
* ``--forwarder-address`` allow you to set ip and port for external forwarder with format <ip>:<port>. If not set but ``--with-forwarder`` is present default will be used (localhost:5002). Default port is based on your configuration and use the ``external_publisher`` configuration key
Backward compatibility break
----------------------------
* `oct rebuild-results` commands arguments has changed, results_file is now optionnal and the command will by default look
at the configuration file. If no results_database key is present, it will use the patern `results_directory + results.sqlite`
0.4.4 to 0.4.5
==============
* added publisher socket for external services, this socket will allow any client to connect to a running core
and receive informations about the current test. This feature is present and works but will not be documented before
some improvement and the creation of a mini program do display tests progression
* You can now use an `external_publisher` key in configuration to setup the real time publication socket port, default
is 5002
* Add a command line parameter `--publisher-channel` to select the publishing topic for real time pub socket
* Minor code improvements
0.4.3 to 0.4.4
==============
* performances improvement for hq loop
* result colector queue now accepting more messages, HWM set to 0
* html template report has been fully revisted
* number of messages display is now more consistent
* Successfuly generated report for more than 10 millions results in less thant 1 minute
0.4.21 to 0.4.3
===============
* big performances improvement when generating html report
* added ujson to dependencies
* move turrets management in specific class `TurretsManager`
* refactor HQ code
0.4.2 to 0.4.21
===============
* update template extension to avoid setup error
0.4.01 to 0.4.2
===============
* Improve turrets packaging, allowing custom configuration and extra files
* Add a project template system, allow to start project from existing structure
0.4.0 to 0.4.01 (Hotfixes)
==========================
* Make oct command line tools compatible with python 2.7 and old version of argparse
0.3.9 to 0.4.0
===============
Improvements and bug fixes
--------------------------
* Global improvements
* Fixed typo errors
* Improve documentation
* Rewrite command line tools
Backward compatibility breaks
-----------------------------
* Typo error canon has been renamed cannon everywhere (including sqlite results)
* Command line tools has been rewrite, all previous commands are now avaible only with th ``oct`` entry point. Type oct -h to see all avaible commands
* Passing configuration to init method of Transaction class is now mandatory
0.3.9 to 0.3.91
===============
Improvements and bug fixes
--------------------------
* force oct-turrets version in both setup and requirements for future low level renaming anticipation
0.3.8 to 0.3.9
==============
Improvements and bug fixes
--------------------------
* Replace own statistics analysers with pandas
* Replace raw graph with Dot graph type
* All graphs axis now show date time instead of an int representing elapsed seconds
* Added output for the ouput generation too look less "stuck"
* Improve speed for report generation
* Update requirements
* Improve documentation
* Refactor docstring comments
* Improve unit tests
* Added pygal javascript file in results template
* Added javascript folder to templates
Backward compatibility breaks
-----------------------------
* Rename resultsouput module to output
* Rename reportresults module to report
* Remove results_file parameter in oct.results.output.output function and in oct.results.report.ReportResults constructor
since database is configured in the oct.results.models module. You muste use the set_dabase function if you need to change it
* Renaming in the results module :
- reportresults => report and class is ReportResults
- reportwriter => writer and class is ReportWriter
- resultsouput => output and funciton is output
- resultswriter => stats_handler and class is StatsHandler
0.3.7 to 0.3.8
==============
Improvements and bug fixes
--------------------------
* Fix an error in turret setup generation
* Fix an error in throughput graph render (y-axis)
* All new tests suit, now covering 99% of the code
* Added python 3.5 support
* Improve performance when writing results to the sqlite database using db.atomic() context
* The HQ socket will now unbind and read all buffered messages before generating the report
* The generation of the report will now print the total time took to create all reports
* New project command now has better error output
* oct.results.reportwriter has been refactored for removing old multi-threading code
* oct.results.reportwriter will now only use report.html file to generate the results.html output
* oct.results.reportwriter will now raise an OSError if the results directory cannot be create instead of a sys.exit
* oct.results.resultswriter has been refactored for removing old multi-threading code
* oct-pack-turrets command now create tar file relative from path argument
* oct-utilities.run now use argparse instead of optparse
* fixed typo for oct.utilities.configuration
* fixed typo for oct.utilities.run
* add oct.results.graphs module
Backward compatibility breaks
-----------------------------
* oct.core.main module has been removed since it's no longer used for runing tests
* oct.multimechanize.rpcserver module has been removed since it's no longer used
* oct.multimechanize.utilities package has been removed in favor of oct utilities
* octtools-sitemap-to-csv command has been removed since it's no longer usefull inside the core
* octtools-user-generator command has been removed since it's no longer usefull inside the core
* oct.tools.xmltocsv module has been removed since it's irrevelent inside the core
* oct.tools.email_generator module has been removed since it's irrevelent inside the core
* removed all multimech-* commands
* oct.multimechanize.core module has been deleted
* remote starter argument has been removed from the oct-run command
* removed old head and footer html templates since only report.html jinja2 template will be used
* removed oct.testing package, since it's irrevelent inside the core of oct
* removed all oct.multimechanize package
0.3.6 to 0.3.7
==============
* Fix several bugs in template and results rendering
* Now rounding numeric values in template with 2 digits for more readable reports
* oct-run command is now avaible with a whole new functionnalities:
- Does not run tests with multiprocess and multi-threads anymore
- Now creating a ZMQ pub and pull sockets and waiting for turrets to connect
- The number of turrets to wait is configurable in the project settings
- The oct-run command will now run a "HQ" containing the zmq sockets and will send the start command to turrets
and get informations about them
- The turrets are now located in a new github repository and a new pypi package oct-turrets https://github.com/karec/oct-turrets
- oct-turrets package is now a dependencies of the oct project
- You now have the ability to create a turret in any language supported by zeromq
- oct-browser package has been removed from the dependencies
* OCT now encourage you to use the library you want for the tests (like selenium, mechanize, etc...)
* For compatibility reason, the multi-mech run command are still functionnal but will be soon removed in favor of an oct-run-local command
* Since the oct-browser is not a dependency anymore and you can use any library you want for testing the generic transaction of the core
as been removed. Transaction now inherit by default from the BaseTransaction class located in the oct-turrets package
* A new command has been added `oct-pack-turrets` that will create a tar file from a test folder containing all files and configuration
required for running a turret. This command will generate a tar archive per turret in your project `config.json` file
## Last update Thu Sep 8 16:25:46 2016 VALETTE Emmanuel
* You can hotplug a turret while a test is running. This turret will appear in the final report
* The HQ will sleep for 1 second after the creation of the sockets to wait for them
* Remove the GenericTransaction class in oct.core.generic
0.3.5 to 0.3.6
==============
* update the result writer, results are now output in sqlite database
* add the new `oct-tocsv` command to convert sqlite results file to csv manualy
* add travis support
* remove the browser from the core, you can use the oct-browser independant package
* all configurations file are now created using jinja2 and all files are now located in oct/utilities/templates
* all stats results are now refactored and improved, remove old results calculations form multimechanize
* report.html is now a jinja2 template and can be override in the test folder
* improve all unit tests
* add peewee in dependencies for sqlite manipulation and future postgresql support
* update configuration files, now using json file for the global configuration. Json is cleaner and simpler to use for configuration
* improve results output
* add oct-rebuild-results commands to rebuild results
0.3.4 to 0.3.5
==============
* update browser and add headers feature. Can add or delete a header or set all headers
* abandon get_statics method from generic transaction, not representative of real case
* get_statics -> use csv_file and load each url as user will be more performant...
* fix a bug inside check_status_response function
* update command oct-run
* update newproject for adding celery configuration
* added full celery support for running test through the oct-run command
* keep multimech-run command
* results.csv file now updated via logger object with oct-run
* transaction number no longer displayed in results
* oct-run will now clean all tasks running if KeyBoardInterrupt exception occur
* update browser for headers support
* fix a bug if custom configuration section is used
0.3.3 to 0.3.4
==============
* Global code cleaning
* improve python3 support
* update setup long_description
* update documentation
* starting unittest
* fix warning for browser, manually close connection after a request
0.3.2 to 0.3.3
==============
* refactore multi-mechanize core for python3
* compatibility for python3.4 started
* keep compatibility for python >= 2.7 using six
* added six to requirements
* tested basic functionality, all ok for both python 2.7 and python 3.4
* refactor most of the documentation
* update graph render
0.3.1 to 0.3.2
==============
* Remove matplotlib from setup dependencies
* now using pygal for graphs renders
* updated multimechanize graph and results file
* now generating svg files for graph
* clean up dependencies globaly
* updated css file for graph size
0.3 to 0.3.1
============
* Update requirements in setup for cssselect
0.2.2 to 0.3
============
* Minimal browser ready
* Added more features to the browser
* resetting session for each thread at the end of the transaction forcing each user to have different session
* improve results writer for multiples custom timers in same test
* checked compatibility of the browser with python3.4
* 2to3 passed for browser, no change needed
* update GenericTransaction, now using custom browser
* Old GenericTransaction methods still unchanged
* Updated documentation examples for new browser
* Global documentation update
0.2.1 to 0.2.2
==============
* Improve minimal-browser, now handles features like :
- auth
- full session support
- better form management
- multiple select
- bad action value for form tag
0.2 to 0.2.1
============
* added a minimal-browser for replacing mechanize
0.1.1 to 0.2
============
* replace beautifoulsoup4 by lxml for parsing statics files
0.1 to 0.1.1
============
* add nr management for get_form method and auth method
* auth method now passing kwargs to get_form