1 2011-08-17 Proxmox Support Team <support@proxmox.com>
3 * PVE/PodParser.pm: split out pod generation code
5 2011-08-16 Proxmox Support Team <support@proxmox.com>
7 * PVE/JSONSchema.pm (dump_config): a simply way to generate
8 key/value configuration files.
10 2011-08-15 Proxmox Support Team <support@proxmox.com>
12 * PVE/JSONSchema.pm (parse_config): a simply way to verify
13 key/value configuration files.
15 2011-08-11 Proxmox Support Team <support@proxmox.com>
17 * PVE/*: remove useless 'fixme' comments.
19 * PVE/Tools.pm (lock_file): removed $text parameter (to simplify
20 code), better timeout error message.
22 2011-08-10 Proxmox Support Team <support@proxmox.com>
24 * PVE/RESTHandler.pm (cli_handler): renamed cli_handler2 to
27 * PVE/CLIHandler.pm (print_pod_manpage): add method to generate
28 pod base manual pages (SYNOPSIS is auto generated).
30 2011-08-05 Proxmox Support Team <support@proxmox.com>
32 * PVE/CLIHandler.pm (help): avoid warning on undefined commands
34 2011-08-02 Proxmox Support Team <support@proxmox.com>
36 * PVE/CLIHandler.pm (handle_cmd): auto-complete commands
38 2011-07-28 Proxmox Support Team <support@proxmox.com>
40 * PVE/JSONSchema.pm (get_standard_option): register option
43 * PVE/Tools.pm (run_command): fix $laststderr (do not suppress
44 last line in some rare cases).
46 2011-07-14 Proxmox Support Team <support@proxmox.com>
48 * PVE/Tools.pm (encode_text, decode_text): useful functions to
49 store comments in config files (uri encoding)
51 2011-07-04 Proxmox Support Team <support@proxmox.com>
53 * PVE/JSONSchema.pm (check_format): allow to add '-opt' to format
54 specifier which allows to pass empty strings. For
55 example format 'email' always requires a valid email address,
56 whereas format 'email-opt' also accepts an emtpy string.
58 2011-06-21 Proxmox Support Team <support@proxmox.com>
60 * PVE/Tools.pm (run_command): use alarm to impl. timeout
62 * PVE/RESTHandler.pm (api_dump): new - used to generate docu
64 * PVE/Tools.pm (upid_decode): fix upid parser
66 2011-05-10 Proxmox Support Team <support@proxmox.com>
68 * PVE/RESTHandler.pm (handle): untaint parameters after validate
70 2011-03-23 Proxmox Support Team <support@proxmox.com>
72 * PVE/Tools.pm (debmirrors): return list of debian mirrors (per
75 2011-03-21 Proxmox Support Team <support@proxmox.com>
77 * PVE/INotify.pm (read_active_workers): simply skip entries we
78 cannot parse, add additional 'id' field to upid
80 2011-03-18 Proxmox Support Team <support@proxmox.com>
82 * PVE/Tools.pm (upid_read_status): read/parse last line from
85 2011-03-17 Proxmox Support Team <support@proxmox.com>
87 * PVE/INotify.pm (read/write_active_workers): list/update list of
88 active/recent worker processes
90 2011-03-16 Proxmox Support Team <support@proxmox.com>
92 * PVE/Tools.pm (upid_*): add code to handle worker processes.
94 2011-03-14 Proxmox Support Team <support@proxmox.com>
96 * PVE/Tools.pm (upid_encode,upid_decode): moved from
99 2011-03-09 Proxmox Support Team <support@proxmox.com>
101 * PVE/ProcFSTools.pm (read_proc_net_dev): first impl.
103 * PVE/Tools.pm (df): implement interruptible version of 'df'
104 (workd with timeout on NFS)
106 2011-03-03 Proxmox Support Team <support@proxmox.com>
108 * PVE/ProcFSTools.pm (read_memory_usage): memory usage of current
111 2011-02-22 Proxmox Support Team <support@proxmox.com>
113 * PVE/JSONSchema.pm (pve_verify_email): verify email address
115 2011-02-16 Proxmox Support Team <support@proxmox.com>
117 * PVE/RPCEnvironment.pm: moved to pve-access-control
119 2011-02-15 Proxmox Support Team <support@proxmox.com>
121 * PVE/Tools.pm (template_replace): support simple uri templates
123 * PVE/JSONSchema.pm: add permissions property (path,
124 privs). Allows use to specify required access permissions.
126 2011-02-14 Proxmox Support Team <support@proxmox.com>
128 * PVE/ProcFSTools.pm: impl. new helpers read_loadavg(),
129 read_meminfo() and read_proc_stat().
131 2011-02-08 Proxmox Support Team <support@proxmox.com>
133 * PVE/INotify.pm (update_file): use PVE::Tools, changed interface
134 (update_etc_resolv_conf): do not touch other options (like
135 'sortlist' and 'options'),
136 (read_etc_timezone): add timezone parser
137 (write_etc_timezone): add timezone writer
139 * PVE/JSONSchema.pm (pve_verify_ipv4): register IPv4 format.
141 2011-02-02 Proxmox Support Team <support@proxmox.com>
143 * PVE/Tools.pm (next_vnc_port): moved from qemu-server
145 2011-01-28 Proxmox Support Team <support@proxmox.com>
147 * PVE/SafeSyslog.pm (initlog): enable default for facility.
149 2011-01-25 Proxmox Support Team <support@proxmox.com>
151 * PVE/JSONSchema.pm (get_options): make boolean arguments
152 optional, allow "true|yes|on|false|no|off|0|1"
154 2011-01-19 root <root@maui.maurer-it.com>
156 * PVE/SafeSyslog.pm (tag): a way to read the log tag
158 2011-01-12 root <root@maui.maurer-it.com>
160 * INotify.pm (read/write_etc_resolv_conf): functions to read/write
162 (nodename): new method to read actual node name (hostname)
164 2010-11-09 Proxmox Support Team <support@proxmox.com>
166 * JSONSchema.pm (check_type): only allow '0' and '1' for boolean
167 values, because we often use perl directly to test (if
168 ($param->{force}) ...)
170 * INotify.pm (read_vmlist): add parser for vmlist file.
172 2010-11-08 Proxmox Support Team <support@proxmox.com>
174 * INotify.pm (read_etc_hostname): impl. read/write /etc/hostname
176 2010-09-17 Proxmox Support Team <support@proxmox.com>
178 * RESTHandler.pm (AUTOLOAD): bug fix.
179 (usage_str): add info about required options.
181 2010-09-15 Proxmox Support Team <support@proxmox.com>
183 * RPCEnvironment.pm (fork_worker): moved from PVE::Utils
184 (get_remote_node_ip): new helper
186 * ProcFSTools.pm (read_proc_starttime): moved from PVE::Utils
188 2010-09-14 Proxmox Support Team <support@proxmox.com>
190 * JSONSchema.pm (get_standard_option): allow to set defaults.
192 * RPCEnvironment.pm (get_nodelist): new helper
194 * RESTHandler.pm (register_method): do not validate method (that
195 is too slow - delays startup).
196 (validate_method_schemas): new method to validate all registered
197 methods. We can no do that once when we create a package.
199 2010-09-13 Proxmox Support Team <support@proxmox.com>
201 * JSONSchema.pm (validate): add minLength/maxLength to the default
204 2010-09-10 Proxmox Support Team <support@proxmox.com>
206 * INotify.pm (ccache_info): fix serious bug by duplicating cache info
209 * CLIHandler.pm (print_usage_short): group command by class
211 * JSONSchema.pm (register_standard_option, get_standard_option): a
212 way to register/get commom schemas by name.
214 * Tools.pm (extract_param): new helper
216 * CLIHandler.pm: new verbose option for help.
218 * Tools.pm (kvmkeymaps): moved from PVE::Utils.
220 * JSONSchema.pm: add a new attribute caled 'typetext' (any better
221 name?), used to generate nice docs.
223 2010-09-08 Proxmox Support Team <support@proxmox.com>
225 * RESTHandler.pm (usage_str): only print indexed options
226 once (-vlan\d+ -scsi\d+)
227 (usage_str): sort options
228 (usage_str): use Text::Wrap to format output
230 * JSONSchema.pm (check_format): revert previous change - to keep
233 2010-09-07 Proxmox Support Team <support@proxmox.com>
235 * JSONSchema.pm (check_format): return parsed value
237 * ProcFSTools.pm: new file - utilities to read /proc/
239 * ProcFSTools.pm (get_cpu_info): read cpu info from /proc
241 2010-08-27 Proxmox Support Team <support@proxmox.com>
243 * RESTHandler.pm (cli_handler2): simplify code - allow to pass
244 optional parameters as arguments.
245 (find_handler): return matched path template as 3rd argument
247 2010-08-26 Proxmox Support Team <support@proxmox.com>
249 * RESTHandler.pm (usage_str): new '$hidepw' parameter to correctly
250 handle hidden password parameter.
252 * README.dev: update docu about find_handler()
254 * RESTHandler.pm (find_handler): use '$path' instead of strange
257 2010-08-25 Proxmox Support Team <support@proxmox.com>
259 * Exception.pm (raise_param_exc): allow to specify usage information.
261 * RESTHandler.pm (usage_str): first try to autogenerate usage information.
262 (cli_handler2): experimental code used by new CLIHandler.pm
264 * CLIHandler.pm: new class for command line tools like 'pvesm' -
265 automatically create 'help' and usage information.
267 2010-08-24 Proxmox Support Team <support@proxmox.com>
269 * RESTHandler.pm (handle): remove $conn parameter. We use new
270 RPCEnvironment class to pass environment values.
272 2010-08-20 Proxmox Support Team <support@proxmox.com>
274 * RESTHandler.pm (register_method): allow us to use regex in the
275 path template, for example path => '{method:(lvm|iscsi|nfs)}'
277 * JSONSchema.pm (validate): new 'fragmentDelimiter' option.
279 * RESTHandler.pm (find_handler): remove 'require' - we load
282 2010-08-17 Proxmox Support Team <support@proxmox.com>
284 * JSONSchema.pm (get_options): we use option type 's' for boolean
285 values - that way we can pass true and false (and any alias for
288 * Exception.pm (raise_param_exc): new helper function
290 2010-08-16 Proxmox Support Team <support@proxmox.com>
292 * Tools.pm (run_command): remove 'ticket' parameter - I think we
294 (file_read_firstline): new function to read first line of file -
295 moved fron Storage.pm
296 (trim): new trim() command
298 * RESTHandler.pm (handle): remove ugly $resp parameter - we can
299 now use the new Expection object to return better error info.
301 * JSONSchema.pm (validate): use new PVE::Exception::raise() in validate()
303 * Exception.pm (new): finalize implementation
305 2010-08-13 Proxmox Support Team <support@proxmox.com>
307 * JSONSchema.pm (register_format): implement a way to register
308 'format' verification methods.
309 (check_format): make it possible to automagically check comman
312 2010-08-12 Proxmox Support Team <support@proxmox.com>
314 * RESTHandler.pm (AUTOLOAD): cache autoload
316 2010-08-11 Proxmox Support Team <support@proxmox.com>
318 * RESTHandler.pm (cli_handler): helper function to call method
319 directly, parsing command line args using new JSONSchema::get_options()
321 * JSONSchema.pm (get_options): a way to parse command line
322 parameters, using a schema to configure Getopt::Long
324 2010-08-10 Proxmox Support Team <support@proxmox.com>
326 * INotify.pm (parse_ccache_options): new shadow option
327 (parse_ccache_options): new perm option (set file perm (example
329 (write_file): do not use PVE::AtomicFile, correctly set file