Преглед изворни кода

Draft of the readme for 2.0.2 beta

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@2958 a333f486-631f-4898-b8df-5754b55c2be0
romainq пре 11 година
родитељ
комит
a36be7a708
1 измењених фајлова са 145 додато и 142 уклоњено
  1. 145 142
      readme.txt

+ 145 - 142
readme.txt

@@ -1,4 +1,4 @@
-iTop - version 2.0.1 - 22-May-2013
+iTop - version 2.0.2-beta - 29-Oct-2013
 Readme file
 Readme file
 
 
 1.   ABOUT THIS RELEASE
 1.   ABOUT THIS RELEASE
@@ -6,16 +6,16 @@ Readme file
 2.1. Requirements
 2.1. Requirements
 2.2. Install procedure
 2.2. Install procedure
 2.3. CRON
 2.3. CRON
-2.4. Upgrading from 2.0.0
+2.4. Upgrading from 2.0.x
 2.5. Migration from 1.x versions
 2.5. Migration from 1.x versions
 3.   FEATURES
 3.   FEATURES
-3.1. Changes since 2.0.0
+3.1. Changes since 2.0.1
 3.2. Known limitations
 3.2. Known limitations
 3.3. Known issues
 3.3. Known issues
 
 
 1. ABOUT THIS RELEASE
 1. ABOUT THIS RELEASE
    ==================
    ==================
-Thank you for downloading the 16th packaged release of iTop.
+Thank you for downloading the 17th packaged release of iTop.
 This version is a maintenance release, with quite a few bug fixes and a few enhancements.
 This version is a maintenance release, with quite a few bug fixes and a few enhancements.
 
 
 The documentation about iTop is available as a Wiki: http://www.combodo.com/wiki
 The documentation about iTop is available as a Wiki: http://www.combodo.com/wiki
@@ -25,25 +25,22 @@ The source code of iTop can be found on SourceForge: https://sourceforge.net/p/i
 
 
 1.1 What's new?
 1.1 What's new?
     ---------------------------
     ---------------------------
-This version brings a number of bug fixes since 2.0.0 and a few enhancements, namely:
+This version brings a number of bug fixes since 2.0.1 and a few enhancements, namely:
 
 
-- CRON jobs are now scheduled according to their "periodicity", the status can be displayed using the "--status_only=1" flag
+- Modelization of VLANs on Subnet and Physical Interfaces
+- Brand new User Portal look and feel (no change in the behavior)
+- Forgot your password? Regain access to iTop without bothering an administrator
+- Automatic refresh of the lists in the dashboards, and for the shortcuts
+- Scalability: better support of large volumes of tickets, and in general with large volumes of data
 
 
-- A new REST/JSON web service API is available (documented at: http://www.combodo.com/wiki/doku.php?id=advancedtopics:rest_json)
+... and about 50 bug fixes!
 
 
-Users' Portal:
-- 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
-- Reopen and Close are done in a separate dialog box where the user will input requested data
-- On closed tickets, the user satisfaction and comments are displayed
-
-The Spanish and Japanese localizations have been reviewed and completed thanks to Miguel Turrubiates and Shoji Seki.
-
-... and about 80 bug fixes!
-
-1.2 Should I upgrade to 2.0.1?
+1.2 Should I upgrade to 2.0.2?
     -------------------------------
     -------------------------------
 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.
 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.
 
 
+Be aware that the User Portal appearance has significantly been changed.
+
 1.3 Special Thanks To:
 1.3 Special Thanks To:
     -----------------
     -----------------
 Bruno Bonfils for his guidance about LDAP and authentication.
 Bruno Bonfils for his guidance about LDAP and authentication.
@@ -125,15 +122,15 @@ The output will look as shown below:
 | ExecAsyncTask             | active  | 2013-03-28 10:32:27 | 2013-03-28 10:32:29 |     51 |   0.032 s |
 | ExecAsyncTask             | active  | 2013-03-28 10:32:27 | 2013-03-28 10:32:29 |     51 |   0.032 s |
 +---------------------------+---------+---------------------+---------------------+--------+-----------+
 +---------------------------+---------+---------------------+---------------------+--------+-----------+
 
 
-2.4. Upgrading from 2.0.0
+2.4. Upgrading from 2.0.x
      --------------------
      --------------------
-The version 2.0.1 if fully compatible with 2.0.0. Due to the new database table used for storing the
-definition of cron jobs, you must run the setup when upgrading.
+The version 2.0.2 if fully compatible with 2.0.0 and 2.0.1. Due to few database changes,
+you must run the setup when upgrading (whatever the original version).
 
 
 If the location of mysql binaries is in the "path", the setup proposes to perform a full backup
 If the location of mysql binaries is in the "path", the setup proposes to perform a full backup
 of iTop (database + configuration file) using mysqldump.
 of iTop (database + configuration file) using mysqldump.
 
 
-Here is how to upgrade, step by step, a 2.0.0 instance of iTop:
+Here is how to upgrade, step by step, a 2.0.x instance of iTop:
 
 
 1) Do NOT overwrite the files from the previous version. Expand the content of the "web" directory of
 1) Do NOT overwrite the files from the previous version. Expand the content of the "web" directory of
    the new package into a new directory on the web server.
    the new package into a new directory on the web server.
@@ -191,134 +188,142 @@ That's it.
 3. FEATURES
 3. FEATURES
    ========
    ========
 
 
-3.1. Changes since 2.0.0
+3.1. Changes since 2.0.1
      -------------------
      -------------------
 
 
-This maintenance version consists mostly in bug fixes. There are only two enhancements:
-- CRON jobs are now scheduled according to their "periodicity"
-- A new REST/JSON web service API is available (documented at: http://www.combodo.com/wiki/doku.php?id=advancedtopics:rest_json)
+This maintenance version consists in a mix of bug fixes and enhancements.
 
 
-Bug fixes from Trac:
+Enhancements
 --------------------
 --------------------
-#732 Change password: exit after building the page in case of wrong "old" password
-#729 Backup fails on Windows IIS
-#728 The ticket's title is now an (external) attribute of the link between a ticket and a CI.
-#727 Prevent a crash in cron.php
-#726 Missing string in german dictionary
-#725 Specify a port for mySQL server
-#722 Document preview disappeared since 2.0 (not in 1.x)
-#723 Cron locking is too restrictive
-#721 Unmet dependencies not detected
-#717 Prevent flicker of unstyled content: make the pane visible only when their content is ready... + watchdog in case of error.
-#715 Group by day -> month+day, group by month -> year+month, months are shown as a localized label
-#713 URL format reviewed:
-- more formats allowed by default
-- aligned between the wiki formatting and the URL attribute
-- configurable globally with 'url_validation_pattern'
-- can be defined at the attribute level with tag validation_pattern
-#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)
-#710 Query phrase book "fields list" is too small
-#708 Cosmetics for the english dictionary
-#707 Make sure that DOCTYPE is the first statement of the page
-#705 Typo in the english dictionary
-#704 Preserve the content of a "linkedset" when changing the initial state of the object being created !
-#703 HTML entities not escaped in history tab
-#702 Ignoring the class when looking up for a polymorphic ext key
-#701 Portal customization : enabled the calendar widget for input of a date+time type of attribute (it was only available for pure DATE attributes)
-#693 Portal user cannot choose services linked via customer contract
-#699 Change the path for incident icon
-#698 SeparatorPopupMenuItem was not working.
-#697 Properly export NULL dates in "spreadsheet" format.
-#696 The message "Please fill all mandatory fields" can now be localized (done in English, French and German).
-#694 A module can now add a menu under a menu from another module
-#692 Allow to set a default value for AttributeDuration (was forced to 0 anytime)
-#691 Notifications were not sent at all if some recicipients had an empty address
-#690 XML export broken
-#689 Logoff / Change Pwd buttons not visible in the portal if the window is too small: now allow line wrapping...
-#688 When the autocomplete is activated, and the allowed values depend on another value, then it is possible to set a wrong value
-#687 Label for attribute Person: "name" was always shown in English (Last Name)
-#684 CSV import / reconciliation using an enum does not take the translation into account
-#683 Allow installation on a DB which names begins with numbers
-#682 Order notifications (last first).
-#680 Setup failing to display the check report when DOM extension not enabled (php-xml not installed on redhat distributions)
-#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
-#677 Cosmetics in the german localization (and a few other languages): first header of the config mgmt overview
-#675 Error when drilling down on graph/pie/table with group by on a field that can be null (this case has been excluded)
-#674 request_type:servicerequest changed into service_request - added the DB update to allow an upgrade
-#674 Fix bug  TTO / TTR computation for Service request
-#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!)
-#670 Fix for an XSS vulnerability issue.
-#666 Add reconciliation key for Software
-#664 Could not login after upgrade of an iTop 1.x with a DB prefix
-#663 Fix for emptying a directory which contains broken symbolic links
-#661 and #662 Could not create a user request (or ?) as soon as the autocomplete feature gets active
-#660 Warning raised with ZendServer (with APC cache enabled) causing the setup to fail
-#659 Exception handling producing notices, hence causing confusion
-#657 JavaScript error when modifying UserLDAP object with Sync
-#638 Limit rack according to location for PDU
-#634 Detection of HTTPS not working with nginx (iTop always considering the current connection as being secure)
-#626 Fixed missing translation in dictionaries (Tickets: "relations", and Contacts overview / count)
-#383 support negative numbers in OQL
-     also added support for MySQL bitwise operators (&, |, ^, <<, >>) and hexadecimal numbers (up to 64-bit).
-
-
-Setup/installation fixes
-------------------------
-Compiler: typo preventing from setting the property 'min_autocomplete_chars' on an external key
-Better error reporting when loading a module fails.
-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)
-Data model alternate options were not properly checked when upgrading (especially when selecting ITIL tickets)
-Enable support of databases which name either is a reserved word or contains non-alphanumeric characters (i.e. itop-production).
-Added support for creating symbolic links via the toolkit
-Added more debug info in the setup.log about the detection of the previously installed modules
-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.
-New internal flag for generating the delta: needed => define if not exists
-Compiler: added the capability to redefine icons in xml
-New way to compile the dictionaries, allowing for incremental modification via XML, also allows the filtering of the languages to install
-Proper reset of APC cache upon compilation !
-Experimental support of icon uploads...
+- Modelization of VLANs on Subnet and Physical Interfaces
+- Brand new User Portal look and feel (no change in the behavior)
+- Forgot your password? Regain access to iTop without bothering an administrator
+- Automatic refresh of the lists in the dashboards, and for the shortcuts
+
+Usability
+--------------------
+Added buttons to check/uncheck all options at once in multi selects inside search forms.
+Better UI to manage direct linksets: added the ability to provide the "reverse query" by specifying a '<filter>' tag on AttributeLinkedSet.
+
+Scalability
+--------------------
+No time limit for long operations like: Bulk delete, CSV import (interactive) and Bulk modify
+Speedup the display of lists of tickets (large volumes)
+Speedup the display of object details (long history track) 
+For technical details: see tickets #783, #233 and #466
+
+JSON/REST API (new version: 1.1)
+--------------------------------
+#767 Reconciliations must be made on strict criteria
+#758 Key given in clear in the returned objects (incremented the API verion to 1.1)
++ core/create and core/update, allow to reset an external key (0)
 
 
 Data model fixes
 Data model fixes
 ----------------
 ----------------
-Correction to display IP address field for:
-  Physical Device
-  Network Device
-  Server
-  Storage System
-  NAS
-  Tape Library
-  SAN switch
-Fix an issue that prevented the creation of Logical Interfaces
-Add reconciliation keys for SLT in order to allow import for SLT having the same name
-Remove wrong dependency to service_id on parent_request_id (for ITIL tickets)
-Fixed typos in the sample data for the service subcategories
-Make icons transparent...
-All the overloads of DisplayBareProperties must return an array (otherwise a warning is issued and field validation will not work as expected)
-The ticket class must be abstract!
-Add "Employee number" to the list of possible reconciliation keys for the class Person.
-Missing localized label for some problem management menus, when the Known Error Management module is installed without the Problem Management module
+Add VLANs on Subnet and Physical Interfaces
+#800 No need to track that last update has changed each time the ticket gets updated (common to all types of tickets)
+Prevent Support agent to create ticket for obsolete Services and Service sub categories
+Remove duplicate display of attribute service provider
+#792 Duplicate entries in the parent/child tickets when updating the case log and applying a stimulus (e.g. Close the WO) at the same time.
+#805 Make sure tickets are named on their id (concurrent access was not taken into account)
+#804 tickets' highlighting is now based on the computation performed by the stopwatch, in order to support non 24x7 working hours
+#754 Prevent UserRequests to have themselves set as Parent Request (and same for Incidents)
+Modify Sample data for Service categories to set them to status "production" by default
+#768 Avoid to select obsolete service and service sub categories in the portal
+#789 Add up to 12 Digit for a IPInterface
+#755 Prevent modification of CIs and Contacts list for UserRequest and Incidents
+#742 Allow portal user to modify a ticket when it is pending
+#739 Prevent Support Agents from settings a UserRequest to status "Pending"
+#751 Check that class Logical Volume exists when checking dependencies of a Server + Add attribute Subnet name on Subnet element
+Moved definition of the delivery model of an organization from itop-config-mgmt to itop-service-mgmt module.
+New pattern accepting the new global Top Level Domains (gTLD)
+Allow "Support Agents" to put an Incident in "Pending" state.
+#747: protects against the non-existence of the UserRequest class (which is not always installed).
 
 
 
 
 Miscellaneous fixes
 Miscellaneous fixes
 -------------------
 -------------------
-Preserve POSted parameters on the login web page (useful when the session expires)
-More readable edition for AttributeDuration
-Properly record history of Hierarchical Keys
-Fix for supporting the CSV export of big audit results.
-Fix for making iUIPageExtension usable !
-Fixed transparent background issues on the icons at the top-right of the main iTop page...
-Allow printing lists fully expanded without the "pager" navigation. Also try to completely hide the main menu on the left when printing.
-Properly serialize Emails with binary Attachments. Previously asynchronous emails with binary attachements were not working (they were queued but never sent).
-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
-User rights:
-- 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)
-- 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
-Prevent logoff problems depending on PHP's session.cache_limiter setting...
-- Enhancement: support for "target" in PopupMenuItems.. which was ignored before
-Fix for reconciliation by id (Advanced Mode) -reintegrated from branch 2.0
-Silently discard unknown attributes in object templates (in case some modules have not been installed)
-Fix the auto-resize (fit) of the dialog's content when picking up a value using the magnifier button on an external key.
-Cleanup of the log output. No need for such verbosity now that we are approaching the release.
+Localization: French and german (#562 and #760) have been reviewed.
+Compiler 
+- added "constants"
+- added brand management
+- safe compilation (works in a temporary directory, on success then move it into env-production)
+- possibility to introduce a delta (not in a module) at compile time
+- allow to set the flags enable_class/enable_action etc. for a TemplateMenuNode (already taken into account at runtime)
+- added indexes
+Added a demo mode (config: demo_mode = true). In that mode, logins get read-only (even for admins)
+#785 Share the results of a query phrase (preview of the results in the query details page -iif it has NO parameter)
+#783 Added the placeholder $this->xxx_list$ for emailing (names separated by a new line, truncated to 100 items)
+Reviewed the instrumentation to help in tuning the performance (added a message in the admin banner when logging is active + measure the impact of object reloads)
+#771: better display for "edit in place".
+#795 Issue when using the actual (id) value of an external key as a reconciliation field
+#741 Complete localization of the CSV import confirmation dialog
+#790 Only report as installed the modules from the previous installation, not all previous installations.
+#738 Adding a space at the end of the mailto: URL to make it better recognized by mail clients (namely Outlook)
+#791 Protect against single quotes in localized strings...
+#777 mandatory fields that are external keys are now displayed with a star before the arrow: ExtkeyName*->ReconciliationField. In import the old syntax is supported as well.
+#769 Title of pies and charts are not consistent with the title of other dashlets
+#794 Could not export the field friendlyname in format 'spreadsheet'
+#793 provide the default '=' and '!=' operators for all types of Computed Fields.
+#773 Display boolean values from the stop watches as yes/no (localized, like enums) + took the opportunity to enable the export in spreadsheet format
+#762 Remove wrong fields approval_date approval_comments  for  a Routine change
+Retrofit the useful DoPostRequest function which was used (and defined) in several extensions.
+Added support of different (sub)classes of notifications in the "Notifications" tab on an object.
+Fix for properly computing the default choices in case of upgrade...
+#745 Default menu is not computed correctly (depends on the customizations made to the menu -> order of declaration)
+The login web page must NOT be cached by the web browsers
+#774 Sort the enums in the selection drop-down box (search forms) -initially based on the declaration order
+#782: preview (as a tooltip) for image attachments.
+#784 Data sync: display the attribute code (as well as its label in the user language)
+#781 Plain text dashlet shown on one single line
+#779 It is possible to record a wrong OQL in the phrase book, but then it cannot be edited anymore!
+Internal: failed authentication to return error 401 instead of prompting the end-user (to be exploited by the ajax calls)
+Logoff: display the message in the user language (used to be 100% english)
+Generalized the option tracking_level to any kind of attributes. Defaults to 'all', can be set to 'none' to disable the change tracking on a single attribute (LinkSets still have the same allowed values: none, list, details and all).
+Protect the deletion of objects with very long friendly names
+Cosmetics on the login web page
+Allow for comparisons of the module's versions in the expression of dependencies. For example one can now say "itop-config-mgmt/>=2.0.2" for a dependency.
+Internal- ModelFactory: needed / define_if_not_exists were not equivalent
+#763 Could not use "configure this list" once a stop watch has been added to the list, which is a pitty because such attributes are not aimed at being displayed in lists!
+Fixed bug (wrong DB charset after invoking AnalyzeInstallation!)
+Load structural data for all selected modules indepently of:
+- the load of sample data
+- first install or upgrade
+Management of environments: the banner must be injected by the mean of iPageUIExtension
+Module installation information always loaded within the meta model
+Make the logo transparent (background removal)
+CRON:
+- report that CRON is already running BEFORE saying that the DB is read-only (re-entrance during an operation done in the background)
+- protection against re-entrance now relies on a bullet-proof mutex. Also added the option 'debug=1' to output the call stack in case an exception occurs (not always because of passwords being shown in the call stack)
+- reschedule at startup IIF the task is inactive or it is planned in the future
+- exit gracefully if iTop not yet installed
+- handle tasks scheduled at given date/time (as opposed to a task being executed more or less continuously).
+New mechanism: a module page can be accessed by the mean of a canonical URL (utils::GetAbsoluteUrlModulePage to build the proper URL)
+#752 Notifications sent several times (or too late) when MySQL is hosted on another server
+Setup: Source dir recorded with a trailing backslash under windows
+Restored the original behavior of itop-sla-computation (if present, then it becomes the default working hour computer)
+Improved the error reporting for the backup (in case mysqldump fails with a single error, then the error is displayed directly)
+New verb "AfterDatabaseSetup" for performing installation tasks after the completion of the DB creation (+predefined objects & admin account)
+#746 allow adding an AttributeBlob with is_null_allowed = true to an existing Data Model. (same issue fixed also for AttributeOneWayPassword).
+Properly handle nested forms in "PropertySheet" and "read-only" mode
+Bug fix: validation was broken when the first fields were not Ok.
+Export the content of the CaseLogs in "spreadsheet" format, with some tricks to preserve the formatting in Excel.
+Forms enhancements:
+- The current value of a field is automatically excluded from the forbidden values
+- Several levels of subforms can be nested, even when displaying as a property sheet
+- Sortables fields re-implemented based on a widget.
+- Specify forbidden values + message to explain the issue(toolip) (fiwed a bug on the previous implementation, causing a javascript error, hence a stopper regression due to missing event binds)
+- Dialog: specify an introduction message
+Protect against non existing reconciliation keys...
+Completed the move of dashboards from separate definition files (e.g. overview.xml) into data model files (8 dashboards were concerned on the model 2.x, 6 for the model 1.x)
+Re-position the popup menu each time the button is clicked, in case the button was moved...
+Make sure that tabs (and tab panels) are properly identified
+Removed the use of the obsolete $.browser property, since we don't care about IE 7 anyway.
+Upgrade to jQuery 1.10 and jQuery UI 1.10
+OQL normalization and dashlets have been made independent from the class MetaModel (adjusted the API)
+Added OQL normalization unit tests (to be run on a standard installation)
+#736 Could not delete objects unless you are authorized to bulk delete
+#734 Fixed a regression on reconciliation keys during CSV import.
 
 
 
 
 3.2. Known limitations (https://sourceforge.net/apps/trac/itop/report/3)
 3.2. Known limitations (https://sourceforge.net/apps/trac/itop/report/3)
@@ -327,7 +332,7 @@ Cleanup of the log output. No need for such verbosity now that we are approachin
 
 
 Suhosin can interfere with iTop. More information can be found here: http://www.combodo.com/wiki/doku.php?id=admin:suhosin
 Suhosin can interfere with iTop. More information can be found here: http://www.combodo.com/wiki/doku.php?id=admin:suhosin
 Internet Explorer 6 is not supported (neither IE7 nor IE8 in compatibility mode)
 Internet Explorer 6 is not supported (neither IE7 nor IE8 in compatibility mode)
-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)
+Tested with IE8 and IE9, Firefox 3.6 up to Firefox 24 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)
 
 
 
 
 3.3. Known issues (https://sourceforge.net/apps/trac/itop/report/3)
 3.3. Known issues (https://sourceforge.net/apps/trac/itop/report/3)
@@ -345,9 +350,7 @@ Tested with IE8 and IE9, Firefox 3.6 up to Firefox 16 and Chrome. Be aware that
 #381 	Deletion of dependencies could fail in a multi-org environment
 #381 	Deletion of dependencies could fail in a multi-org environment
 #241 	"status" is a free-text field when configuring a Trigger
 #241 	"status" is a free-text field when configuring a Trigger
 #358 	Multi-column queries sometimes returning an empty set
 #358 	Multi-column queries sometimes returning an empty set
-#383 	OQL: negative integers not allowed (workaround: 0 - 1)
 #399 	Copy/paste from iTop's CaseLog looses tabs
 #399 	Copy/paste from iTop's CaseLog looses tabs
 #343 	CKEditor (HTML Editor) not compatible with direct object creation on ExtKeys
 #343 	CKEditor (HTML Editor) not compatible with direct object creation on ExtKeys
 #350 	Object edition form: validation does not tell which field has a problem
 #350 	Object edition form: validation does not tell which field has a problem
-#317 	Edition of a Document - opens the second tab
-#730    Leaving temporary files when performing a backup of the data during installation
+#730  Leaving temporary files when performing a backup of the data during installation