readme.txt 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353
  1. iTop - version 2.0.1 - 22-May-2013
  2. Readme file
  3. 1. ABOUT THIS RELEASE
  4. 2. INSTALLATION
  5. 2.1. Requirements
  6. 2.2. Install procedure
  7. 2.3. CRON
  8. 2.4. Upgrading from 2.0.0
  9. 2.5. Migration from 1.x versions
  10. 3. FEATURES
  11. 3.1. Changes since 2.0.0
  12. 3.2. Known limitations
  13. 3.3. Known issues
  14. 1. ABOUT THIS RELEASE
  15. ==================
  16. Thank you for downloading the 16th packaged release of iTop.
  17. This version is a maintenance release, with quite a few bug fixes and a few enhancements.
  18. The documentation about iTop is available as a Wiki: http://www.combodo.com/wiki
  19. iTop is released under the AGPL (v3) license. (Check license.txt in this directory).
  20. The source code of iTop can be found on SourceForge: https://sourceforge.net/p/itop/code/
  21. 1.1 What's new?
  22. ---------------------------
  23. This version brings a number of bug fixes since 2.0.0 and a few enhancements, namely:
  24. - CRON jobs are now scheduled according to their "periodicity", the status can be displayed using the "--status_only=1" flag
  25. - A new REST/JSON web service API is available (documented at: http://www.combodo.com/wiki/doku.php?id=advancedtopics:rest_json)
  26. Users' Portal:
  27. - New "Portal power user" profile. Combined with the "Portal user" profile, this additional profile gives access, from the portal, to ALL the tickets of the customer
  28. - Reopen and Close are done in a separate dialog box where the user will input requested data
  29. - On closed tickets, the user satisfaction and comments are displayed
  30. The Spanish and Japanese localizations have been reviewed and completed thanks to Miguel Turrubiates and Shoji Seki.
  31. ... and about 80 bug fixes!
  32. 1.2 Should I upgrade to 2.0.1?
  33. -------------------------------
  34. Considering that iTop 2.0.1 is fully compatible with iTop 2.0.0 and the number of bugs fixed, we recommend you to upgrade.
  35. 1.3 Special Thanks To:
  36. -----------------
  37. Bruno Bonfils for his guidance about LDAP and authentication.
  38. Randall Badilla Castro and Miguel Turrubiates for the Spanish translation.
  39. Jonathan Lucas, Stephan Rosenke and David Gümbel from ITOMIG GmbH, for the German translation.
  40. Christian Lempereur and Olivier Fouquet for their feedbacks.
  41. Everaldo Coelho and the Oxygen Team for their wonderful icons.
  42. The JQuery team and all the jQuery plugins authors for developing such a powerful library.
  43. Phil Eddies for the numerous feedbacks provided, and the first implementation of CKEdit
  44. Marco Tulio and Bruno Cassaro for the Portuguese (Brazilian) translation
  45. Vladimir Shilov and Shamil Khamit for the Russian translation
  46. Izzet Sirin for the Turkish translation
  47. Deng Lixin for the Chinese translation
  48. Marialaura Colantoni for the Italian translation
  49. Schlobinux for the fix of the setup temporary file verification.
  50. Gabor Kiss for the Hungarian translation
  51. Tadashi Kaneda, Shoji Seki and Hirofumi Kosaka for the Japanese translation
  52. Antoine Coetsier for the CAS support and tests
  53. Vincenzo Todisco for his contribution to the enhancement of the webservices
  54. Stephan Rickauer, Tobias Glemser and Sabri Saleh for their consulting about iTop security
  55. Claudio Cesar Sanchez Tejeda for his contribution to bug fixes on the export and data synchronization
  56. 2. INSTALLATION
  57. ============
  58. 2.1. Requirements
  59. ------------
  60. Server configuration:
  61. iTop is based on the AMP (Apache / MySQL / PHP) platform and requires PHP 5.2 and
  62. MySQL 5. The installation of iTop does not require any command line access to the
  63. server. The only operations required to install iTop are: copying the files to the
  64. server and browsing web pages. iTop can be installed on any web server supporting
  65. PHP 5.2: Apache, IIS, nginx...
  66. End-user configuration:
  67. Although iTop should work with most modern web browsers, the application has been
  68. tested mostly with Firefox 3+, IE8, IE9, Safari 5 and Chrome. iTop was designed for
  69. at least a 1024x768 screen resolution. For the graphical view of the impact analysis,
  70. Flash version 8 or higher is required.
  71. 2.2. Install procedure
  72. -----------------
  73. 1) Make sure that you have a properly configured instance of Apache/PHP/MySQL running
  74. 2) Unpack the files contained in the zipped package, and copy the content of the "web"
  75. directory in a directory served by your web server.
  76. 3) Check the access rights on the files/folders: the setup needs to have write access
  77. either to the directory where iTop is installed or to the following subdirectories
  78. (create them if needed)
  79. - conf
  80. - data
  81. - env-production
  82. - log
  83. 3) Point your web browser to the URL corresponding to the directory where the files
  84. have been unzipped and follow the indications on the screen.
  85. If you wish to re-launch the installation process (for example in order to install
  86. more modules), just make sure that the configuration file (located at <itop>/conf/production/config-itop.php)
  87. is writable by the web server (on Windows: remove the "read-only" flag, on Linux
  88. adjust the rights of the file) and point your browser to <itop>/setup/.
  89. 2.3. cron.php
  90. --------
  91. The following features will require the activation of CRON.PHP:
  92. - asynchronous emails. By default, this option is disabled. To enable it, set 'email_asynchronous' to 1 in the configuration file.
  93. - check ticket SLA. Tickets reaching the limits will be passed into Escalation TTO/TTR states.
  94. More information into the Wiki: https://sourceforge.net/apps/mediawiki/itop/index.php?title=Cron.php
  95. New in 2.0.1: you can get a status of the cron "tasks" with the command:
  96. php cron.php --auth_user=admin_login --auth_pwd=admin_pwd --status_only=1
  97. The output will look as shown below:
  98. +---------------------------+---------+---------------------+---------------------+--------+-----------+
  99. | Task Class | Status | Last Run | Next Run | Nb Run | Avg. Dur. |
  100. +---------------------------+---------+---------------------+---------------------+--------+-----------+
  101. | CheckStopWatchThresholds | active | 2013-03-28 10:32:27 | 2013-03-28 10:32:37 | 51 | 0.317 s |
  102. | EmailBackgroundProcess | active | 2013-03-28 10:32:27 | 2013-03-28 10:32:57 | 12 | 7.089 s |
  103. | ExecAsyncTask | active | 2013-03-28 10:32:27 | 2013-03-28 10:32:29 | 51 | 0.032 s |
  104. +---------------------------+---------+---------------------+---------------------+--------+-----------+
  105. 2.4. Upgrading from 2.0.0
  106. --------------------
  107. The version 2.0.1 if fully compatible with 2.0.0. Due to the new database table used for storing the
  108. definition of cron jobs, you must run the setup when upgrading.
  109. If the location of mysql binaries is in the "path", the setup proposes to perform a full backup
  110. of iTop (database + configuration file) using mysqldump.
  111. Here is how to upgrade, step by step, a 2.0.0 instance of iTop:
  112. 1) Do NOT overwrite the files from the previous version. Expand the content of the "web" directory of
  113. the new package into a new directory on the web server.
  114. 2) Check the access rights on the files/folders: the setup needs to have write access either to the
  115. whole directory where iTop is installed or to the following subdirectories (create them if needed)
  116. - conf
  117. - data
  118. - env-production
  119. - log
  120. 3) Point your web browser to the URL corresponding to the new location. You should see the setup screen.
  121. 4) When prompted (At step 2 of the installation), choose "Upgrade an existing instance"
  122. 5) Either enter the path (on the disk) to the previous instance, or supply the needed credentials.
  123. 6) Run the setup to completion. Once this is done you can connect to your upgraded iTop.
  124. 7) To replace the old instance of iTop with the newly installed one:
  125. Rename the directories to switch the locations
  126. Edit the new configuration file (now located at <itop>/conf/production/config-itop.php) and change the
  127. value of the "application_url" parameter.
  128. 2.5. Migrating from 1.x versions
  129. ---------------------------
  130. The setup is designed to upgrade existing 1.x instances of iTop automatically. In case the instance was
  131. customized (for example by altering its data model), the installation process will detect the modifications
  132. (by scanning the source files and comparing them with the manifest) and will prompt either to keep the
  133. modifications or to discard them.
  134. If the location of mysql binaries is in the "path", the installation proposes to perform a full backup
  135. of iTop (database + configuration file) using mysqldump.
  136. Here is how to upgrade, step by step, a 1.x instance of iTop.
  137. 1) Do NOT overwrite the files from the previous version. Expand the content of the "web" directory of
  138. the new package into a new directory on the web server.
  139. 2) Check the access rights on the files/folders: the setup needs to have write access either to the
  140. directory where iTop is installed or to the following subdirectories (create them if needed)
  141. - conf
  142. - data
  143. - env-production
  144. - log
  145. 3) Point your web browser to the URL corresponding to the new location. You should see the setup screen.
  146. 4) When prompted (At step 2 of the installation), choose "Upgrade an existing instance"
  147. 5) Enter the needed credentials. It is not mandatory to supply the location (on the disk of the server)
  148. where the previous instance was installed but, by doing so, you let the installation find the credentials
  149. (by looking at the previous configuration file) and also perform additional checks, for instance, to
  150. detect any customization that you may have made to iTop.
  151. 6) Run the setup to completion. Once this is done you can connect to your upgraded iTop.
  152. 7) To replace the old instance of iTop with the newly installed one:
  153. Rename the directories to switch the locations
  154. Edit the new configuration file (now located at <itop>/conf/production/config-itop.php) and change the
  155. value of the "application_url" parameter.
  156. That's it.
  157. 3. FEATURES
  158. ========
  159. 3.1. Changes since 2.0.0
  160. -------------------
  161. This maintenance version consists mostly in bug fixes. There are only two enhancements:
  162. - CRON jobs are now scheduled according to their "periodicity"
  163. - A new REST/JSON web service API is available (documented at: http://www.combodo.com/wiki/doku.php?id=advancedtopics:rest_json)
  164. Bug fixes from Trac:
  165. --------------------
  166. #732 Change password: exit after building the page in case of wrong "old" password
  167. #729 Backup fails on Windows IIS
  168. #728 The ticket's title is now an (external) attribute of the link between a ticket and a CI.
  169. #727 Prevent a crash in cron.php
  170. #726 Missing string in german dictionary
  171. #725 Specify a port for mySQL server
  172. #722 Document preview disappeared since 2.0 (not in 1.x)
  173. #723 Cron locking is too restrictive
  174. #721 Unmet dependencies not detected
  175. #717 Prevent flicker of unstyled content: make the pane visible only when their content is ready... + watchdog in case of error.
  176. #715 Group by day -> month+day, group by month -> year+month, months are shown as a localized label
  177. #713 URL format reviewed:
  178. - more formats allowed by default
  179. - aligned between the wiki formatting and the URL attribute
  180. - configurable globally with 'url_validation_pattern'
  181. - can be defined at the attribute level with tag validation_pattern
  182. #711 Audit error drill-down not working when zero error (requires to bookmark the link when there are some errors, then use it later when there is no error anymore)
  183. #710 Query phrase book "fields list" is too small
  184. #708 Cosmetics for the english dictionary
  185. #707 Make sure that DOCTYPE is the first statement of the page
  186. #705 Typo in the english dictionary
  187. #704 Preserve the content of a "linkedset" when changing the initial state of the object being created !
  188. #703 HTML entities not escaped in history tab
  189. #702 Ignoring the class when looking up for a polymorphic ext key
  190. #701 Portal customization : enabled the calendar widget for input of a date+time type of attribute (it was only available for pure DATE attributes)
  191. #693 Portal user cannot choose services linked via customer contract
  192. #699 Change the path for incident icon
  193. #698 SeparatorPopupMenuItem was not working.
  194. #697 Properly export NULL dates in "spreadsheet" format.
  195. #696 The message "Please fill all mandatory fields" can now be localized (done in English, French and German).
  196. #694 A module can now add a menu under a menu from another module
  197. #692 Allow to set a default value for AttributeDuration (was forced to 0 anytime)
  198. #691 Notifications were not sent at all if some recicipients had an empty address
  199. #690 XML export broken
  200. #689 Logoff / Change Pwd buttons not visible in the portal if the window is too small: now allow line wrapping...
  201. #688 When the autocomplete is activated, and the allowed values depend on another value, then it is possible to set a wrong value
  202. #687 Label for attribute Person: "name" was always shown in English (Last Name)
  203. #684 CSV import / reconciliation using an enum does not take the translation into account
  204. #683 Allow installation on a DB which names begins with numbers
  205. #682 Order notifications (last first).
  206. #680 Setup failing to display the check report when DOM extension not enabled (php-xml not installed on redhat distributions)
  207. #679 Improved the reporting in case of an error while loading a module: 1) the list of already loaded modules is given, 2) the full path of the searched node is given
  208. #677 Cosmetics in the german localization (and a few other languages): first header of the config mgmt overview
  209. #675 Error when drilling down on graph/pie/table with group by on a field that can be null (this case has been excluded)
  210. #674 request_type:servicerequest changed into service_request - added the DB update to allow an upgrade
  211. #674 Fix bug TTO / TTR computation for Service request
  212. #673 Could not create a physical interface with default value for the speed (+ definitive corruption of the DB for the device on which the interface is being created!)
  213. #670 Fix for an XSS vulnerability issue.
  214. #666 Add reconciliation key for Software
  215. #664 Could not login after upgrade of an iTop 1.x with a DB prefix
  216. #663 Fix for emptying a directory which contains broken symbolic links
  217. #661 and #662 Could not create a user request (or ?) as soon as the autocomplete feature gets active
  218. #660 Warning raised with ZendServer (with APC cache enabled) causing the setup to fail
  219. #659 Exception handling producing notices, hence causing confusion
  220. #657 JavaScript error when modifying UserLDAP object with Sync
  221. #638 Limit rack according to location for PDU
  222. #634 Detection of HTTPS not working with nginx (iTop always considering the current connection as being secure)
  223. #626 Fixed missing translation in dictionaries (Tickets: "relations", and Contacts overview / count)
  224. #383 support negative numbers in OQL
  225. also added support for MySQL bitwise operators (&, |, ^, <<, >>) and hexadecimal numbers (up to 64-bit).
  226. Setup/installation fixes
  227. ------------------------
  228. Compiler: typo preventing from setting the property 'min_autocomplete_chars' on an external key
  229. Better error reporting when loading a module fails.
  230. Sort the modules before processing them for dependencies, in order to obtain a predictable result independent from the order of the modules in the file system... hopefully... (should fix Trac#679)
  231. Data model alternate options were not properly checked when upgrading (especially when selecting ITIL tickets)
  232. Enable support of databases which name either is a reserved word or contains non-alphanumeric characters (i.e. itop-production).
  233. Added support for creating symbolic links via the toolkit
  234. Added more debug info in the setup.log about the detection of the previously installed modules
  235. Enhancement: the expression of dependencies between modules can now use a complex boolean expression with a combination of "logical or" (||) and "logical and" (&&) instead of just a module name.
  236. New internal flag for generating the delta: needed => define if not exists
  237. Compiler: added the capability to redefine icons in xml
  238. New way to compile the dictionaries, allowing for incremental modification via XML, also allows the filtering of the languages to install
  239. Proper reset of APC cache upon compilation !
  240. Experimental support of icon uploads...
  241. Data model fixes
  242. ----------------
  243. Correction to display IP address field for:
  244. Physical Device
  245. Network Device
  246. Server
  247. Storage System
  248. NAS
  249. Tape Library
  250. SAN switch
  251. Fix an issue that prevented the creation of Logical Interfaces
  252. Add reconciliation keys for SLT in order to allow import for SLT having the same name
  253. Remove wrong dependency to service_id on parent_request_id (for ITIL tickets)
  254. Fixed typos in the sample data for the service subcategories
  255. Make icons transparent...
  256. All the overloads of DisplayBareProperties must return an array (otherwise a warning is issued and field validation will not work as expected)
  257. The ticket class must be abstract!
  258. Add "Employee number" to the list of possible reconciliation keys for the class Person.
  259. Missing localized label for some problem management menus, when the Known Error Management module is installed without the Problem Management module
  260. Miscellaneous fixes
  261. -------------------
  262. Preserve POSted parameters on the login web page (useful when the session expires)
  263. More readable edition for AttributeDuration
  264. Properly record history of Hierarchical Keys
  265. Fix for supporting the CSV export of big audit results.
  266. Fix for making iUIPageExtension usable !
  267. Fixed transparent background issues on the icons at the top-right of the main iTop page...
  268. Allow printing lists fully expanded without the "pager" navigation. Also try to completely hide the main menu on the left when printing.
  269. Properly serialize Emails with binary Attachments. Previously asynchronous emails with binary attachements were not working (they were queued but never sent).
  270. Fix for the "Notifications" tab: use the polymorphism to let each trigger determine which object is "In Scope" and thus can potentially have notifications related to it
  271. User rights:
  272. - for link classes, if no grant has been given explicitely, then check if one of the remote class has a grant (mix of compile-time and run-time changes)
  273. - fixed an issue: when looking for a grant into the hierarchy, the most explicit declaration (aka the deepest class) must be found first -> reorder the parent classes (new flag on MetaModel::EnumParentClasses
  274. Prevent logoff problems depending on PHP's session.cache_limiter setting...
  275. - Enhancement: support for "target" in PopupMenuItems.. which was ignored before
  276. Fix for reconciliation by id (Advanced Mode) -reintegrated from branch 2.0
  277. Silently discard unknown attributes in object templates (in case some modules have not been installed)
  278. Fix the auto-resize (fit) of the dialog's content when picking up a value using the magnifier button on an external key.
  279. Cleanup of the log output. No need for such verbosity now that we are approaching the release.
  280. 3.2. Known limitations (https://sourceforge.net/apps/trac/itop/report/3)
  281. -----------------
  282. #71 The same MySQL credentials are used during the setup and for running the application.
  283. Suhosin can interfere with iTop. More information can be found here: http://www.combodo.com/wiki/doku.php?id=admin:suhosin
  284. Internet Explorer 6 is not supported (neither IE7 nor IE8 in compatibility mode)
  285. Tested with IE8 and IE9, Firefox 3.6 up to Firefox 16 and Chrome. Be aware that there are certain limitations when using IE8 in "security mode" (when running IE on a Windows 2008 Server for example)
  286. 3.3. Known issues (https://sourceforge.net/apps/trac/itop/report/3)
  287. ------------
  288. #259 Not instantaneously logged off when the administrator deletes a user account
  289. #273 The administrator can delete his/her own user account
  290. #372 APC Cache not efficient (multi org usage, global search)
  291. #382 Search form / base class lost after a search
  292. #377 Case log: exclude the index from the views
  293. #388 IE9: edition fields not resizable
  294. #443 Objects remain in the database after de-installing some modules
  295. #442 Useless profiles installed (1.x legacy data model only)
  296. #438 The selection of Organizations using the hierarchy does not work on IE8 in security mode
  297. #436 Cannot type "All Organizations"
  298. #381 Deletion of dependencies could fail in a multi-org environment
  299. #241 "status" is a free-text field when configuring a Trigger
  300. #358 Multi-column queries sometimes returning an empty set
  301. #383 OQL: negative integers not allowed (workaround: 0 - 1)
  302. #399 Copy/paste from iTop's CaseLog looses tabs
  303. #343 CKEditor (HTML Editor) not compatible with direct object creation on ExtKeys
  304. #350 Object edition form: validation does not tell which field has a problem
  305. #317 Edition of a Document - opens the second tab
  306. #730 Leaving temporary files when performing a backup of the data during installation