taskjuggler 0.1.1 → 0.2.0
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.
- data/CHANGELOG +37 -5
- data/README.rdoc +4 -2
- data/benchmarks/UTF-8-Strings.rb +58 -0
- data/benchmarks/css/tjmanual.css +0 -1
- data/benchmarks/htmltaskreport-1.html +47702 -0
- data/benchmarks/htmltaskreport-2.html +23345 -0
- data/benchmarks/htmltaskreport-3.html +23265 -0
- data/benchmarks/htmltaskreport-4.html +22135 -0
- data/benchmarks/profile.clt +36082 -0
- data/benchmarks/tj3.profile +0 -0
- data/benchmarks/tj3.profile.grind +6185 -0
- data/benchmarks/tj3.profile.symbols +432 -0
- data/benchmarks/tj3.profile.txt +448 -0
- data/data/tjp.vim +689 -0
- data/doc/AppConfig.html +26 -2
- data/doc/CHANGELOG.html +60 -8
- data/doc/COPYING.html +26 -2
- data/doc/Diff/Hunk.html +26 -2
- data/doc/Diff.html +26 -2
- data/doc/Diffable.html +26 -2
- data/doc/DiffableString.html +26 -2
- data/doc/Object.html +26 -104
- data/doc/README_rdoc.html +39 -7
- data/doc/RuntimeConfig.html +26 -2
- data/doc/String.html +26 -2
- data/doc/TaskJuggler/Account.html +27 -3
- data/doc/TaskJuggler/AccountAttribute.html +30 -6
- data/doc/TaskJuggler/AccountScenario.html +28 -4
- data/doc/TaskJuggler/Allocation.html +33 -9
- data/doc/TaskJuggler/AllocationAttribute.html +31 -7
- data/doc/TaskJuggler/AttributeBase.html +162 -111
- data/doc/TaskJuggler/AttributeDefinition.html +26 -2
- data/doc/TaskJuggler/AttributeOverwrite.html +26 -2
- data/doc/TaskJuggler/BatchProcessor.html +26 -2
- data/doc/TaskJuggler/Booking.html +29 -5
- data/doc/TaskJuggler/BookingListAttribute.html +29 -5
- data/doc/TaskJuggler/BooleanAttribute.html +30 -6
- data/doc/TaskJuggler/CSVFile.html +26 -2
- data/doc/TaskJuggler/CellSettingPattern.html +26 -2
- data/doc/TaskJuggler/CellSettingPatternList.html +26 -2
- data/doc/TaskJuggler/Charge.html +30 -6
- data/doc/TaskJuggler/ChargeListAttribute.html +29 -5
- data/doc/TaskJuggler/ChargeSet.html +26 -2
- data/doc/TaskJuggler/ChargeSetListAttribute.html +30 -6
- data/doc/TaskJuggler/CollisionDetector.html +26 -2
- data/doc/TaskJuggler/ColumnListAttribute.html +28 -4
- data/doc/TaskJuggler/ColumnTable.html +26 -2
- data/doc/TaskJuggler/Daemon.html +26 -2
- data/doc/TaskJuggler/DataCache.html +26 -2
- data/doc/TaskJuggler/DataCacheEntry.html +26 -2
- data/doc/TaskJuggler/DateAttribute.html +30 -6
- data/doc/TaskJuggler/DefinitionListAttribute.html +28 -4
- data/doc/TaskJuggler/DependencyListAttribute.html +30 -6
- data/doc/TaskJuggler/DurationAttribute.html +31 -7
- data/doc/TaskJuggler/FileList.html +26 -2
- data/doc/TaskJuggler/FileRecord.html +26 -2
- data/doc/TaskJuggler/FixnumAttribute.html +28 -4
- data/doc/TaskJuggler/FlagListAttribute.html +30 -6
- data/doc/TaskJuggler/FloatAttribute.html +29 -5
- data/doc/TaskJuggler/FormatListAttribute.html +29 -5
- data/doc/TaskJuggler/GanttChart.html +26 -2
- data/doc/TaskJuggler/GanttContainer.html +26 -2
- data/doc/TaskJuggler/GanttHeader.html +26 -2
- data/doc/TaskJuggler/GanttHeaderScaleItem.html +26 -2
- data/doc/TaskJuggler/GanttLine.html +27 -3
- data/doc/TaskJuggler/GanttLoadStack.html +26 -2
- data/doc/TaskJuggler/GanttMilestone.html +26 -2
- data/doc/TaskJuggler/GanttRouter.html +26 -2
- data/doc/TaskJuggler/GanttTaskBar.html +26 -2
- data/doc/TaskJuggler/HTMLDocument.html +26 -2
- data/doc/TaskJuggler/HTMLElements.html +623 -0
- data/doc/TaskJuggler/HTMLGraphics.html +26 -2
- data/doc/TaskJuggler/ICalReport.html +864 -0
- data/doc/TaskJuggler/ICalendar/Component.html +969 -0
- data/doc/TaskJuggler/ICalendar/Event.html +742 -0
- data/doc/TaskJuggler/ICalendar/Journal.html +722 -0
- data/doc/TaskJuggler/ICalendar/Person.html +633 -0
- data/doc/TaskJuggler/ICalendar/Todo.html +789 -0
- data/doc/TaskJuggler/ICalendar.html +1035 -0
- data/doc/TaskJuggler/Interval.html +99 -172
- data/doc/TaskJuggler/IntervalList.html +31 -7
- data/doc/TaskJuggler/JobInfo.html +26 -2
- data/doc/TaskJuggler/Journal.html +26 -2
- data/doc/TaskJuggler/JournalEntry.html +26 -2
- data/doc/TaskJuggler/JournalEntryList.html +26 -2
- data/doc/TaskJuggler/KeywordArray.html +26 -2
- data/doc/TaskJuggler/KeywordDocumentation.html +26 -2
- data/doc/TaskJuggler/Limits/Limit.html +124 -49
- data/doc/TaskJuggler/Limits.html +139 -156
- data/doc/TaskJuggler/LimitsAttribute.html +39 -14
- data/doc/TaskJuggler/ListAttributeBase.html +35 -11
- data/doc/TaskJuggler/Log.html +26 -2
- data/doc/TaskJuggler/LogFile.html +26 -2
- data/doc/TaskJuggler/LogicalAttribute.html +26 -2
- data/doc/TaskJuggler/LogicalExpression.html +26 -2
- data/doc/TaskJuggler/LogicalExpressionAttribute.html +35 -11
- data/doc/TaskJuggler/LogicalExpressionListAttribute.html +35 -11
- data/doc/TaskJuggler/LogicalFlag.html +26 -2
- data/doc/TaskJuggler/LogicalFunction.html +28 -4
- data/doc/TaskJuggler/LogicalOperation.html +26 -2
- data/doc/TaskJuggler/ManagerResponsibilities.html +26 -2
- data/doc/TaskJuggler/ManagerStatusRecord.html +26 -2
- data/doc/TaskJuggler/Message.html +26 -2
- data/doc/TaskJuggler/MessageHandler.html +108 -62
- data/doc/TaskJuggler/Navigator.html +26 -2
- data/doc/TaskJuggler/NavigatorElement.html +26 -2
- data/doc/TaskJuggler/NikuProject.html +26 -2
- data/doc/TaskJuggler/NikuReport.html +27 -3
- data/doc/TaskJuggler/NikuResource.html +26 -2
- data/doc/TaskJuggler/NodeListAttribute.html +31 -7
- data/doc/TaskJuggler/PlaceHolderCell.html +26 -2
- data/doc/TaskJuggler/ProcessIntercom.html +26 -2
- data/doc/TaskJuggler/ProcessIntercomIface.html +26 -2
- data/doc/TaskJuggler/Project.html +1236 -973
- data/doc/TaskJuggler/ProjectBroker.html +26 -2
- data/doc/TaskJuggler/ProjectBrokerIface.html +26 -2
- data/doc/TaskJuggler/ProjectFileParser.html +29 -4
- data/doc/TaskJuggler/ProjectFileScanner.html +56 -31
- data/doc/TaskJuggler/ProjectRecord.html +26 -2
- data/doc/TaskJuggler/ProjectServer.html +26 -2
- data/doc/TaskJuggler/ProjectServerIface.html +26 -2
- data/doc/TaskJuggler/PropertyAttribute.html +35 -11
- data/doc/TaskJuggler/PropertyList.html +26 -2
- data/doc/TaskJuggler/PropertySet.html +126 -106
- data/doc/TaskJuggler/PropertyTreeNode.html +595 -551
- data/doc/TaskJuggler/Query.html +127 -100
- data/doc/TaskJuggler/RTFHandlers.html +26 -2
- data/doc/TaskJuggler/RTFNavigator.html +26 -2
- data/doc/TaskJuggler/RTFQuery.html +28 -4
- data/doc/TaskJuggler/RTFReport.html +26 -2
- data/doc/TaskJuggler/RTFReportLink.html +26 -2
- data/doc/TaskJuggler/RTFWithQuerySupport.html +26 -2
- data/doc/TaskJuggler/RealFormat.html +26 -2
- data/doc/TaskJuggler/RealFormatAttribute.html +31 -7
- data/doc/TaskJuggler/ReferenceAttribute.html +58 -34
- data/doc/TaskJuggler/Report.html +427 -284
- data/doc/TaskJuggler/ReportBase.html +28 -102
- data/doc/TaskJuggler/ReportContext.html +26 -2
- data/doc/TaskJuggler/ReportScenario.html +633 -0
- data/doc/TaskJuggler/ReportServer.html +26 -2
- data/doc/TaskJuggler/ReportServerIface.html +26 -2
- data/doc/TaskJuggler/ReportServerRecord.html +26 -2
- data/doc/TaskJuggler/ReportServlet.html +26 -2
- data/doc/TaskJuggler/ReportTable.html +26 -2
- data/doc/TaskJuggler/ReportTableCell.html +26 -2
- data/doc/TaskJuggler/ReportTableColumn.html +26 -2
- data/doc/TaskJuggler/ReportTableLegend.html +26 -2
- data/doc/TaskJuggler/ReportTableLine.html +26 -2
- data/doc/TaskJuggler/Resource.html +225 -163
- data/doc/TaskJuggler/ResourceListAttribute.html +71 -47
- data/doc/TaskJuggler/ResourceListRE.html +26 -2
- data/doc/TaskJuggler/ResourceScenario.html +645 -603
- data/doc/TaskJuggler/RichText.html +26 -2
- data/doc/TaskJuggler/RichTextAttribute.html +53 -29
- data/doc/TaskJuggler/RichTextDocument.html +26 -2
- data/doc/TaskJuggler/RichTextElement.html +26 -2
- data/doc/TaskJuggler/RichTextFunctionExample.html +26 -2
- data/doc/TaskJuggler/RichTextFunctionHandler.html +26 -2
- data/doc/TaskJuggler/RichTextImage.html +26 -2
- data/doc/TaskJuggler/RichTextIntermediate.html +29 -5
- data/doc/TaskJuggler/RichTextParser.html +26 -2
- data/doc/TaskJuggler/RichTextScanner.html +26 -2
- data/doc/TaskJuggler/RichTextSnip.html +26 -2
- data/doc/TaskJuggler/RichTextSyntaxRules.html +26 -2
- data/doc/TaskJuggler/Scenario.html +26 -2
- data/doc/TaskJuggler/ScenarioData.html +95 -28
- data/doc/TaskJuggler/ScenarioListAttribute.html +39 -15
- data/doc/TaskJuggler/Scoreboard.html +137 -73
- data/doc/TaskJuggler/ScoreboardInterval.html +1116 -0
- data/doc/TaskJuggler/SheetHandlerBase.html +26 -2
- data/doc/TaskJuggler/SheetReceiver.html +26 -2
- data/doc/TaskJuggler/SheetSender.html +26 -2
- data/doc/TaskJuggler/Shift.html +27 -3
- data/doc/TaskJuggler/ShiftAssignment.html +27 -3
- data/doc/TaskJuggler/ShiftAssignments.html +174 -149
- data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +41 -16
- data/doc/TaskJuggler/ShiftScenario.html +26 -2
- data/doc/TaskJuggler/SimpleQueryExpander.html +26 -2
- data/doc/TaskJuggler/SortListAttribute.html +35 -11
- data/doc/TaskJuggler/StatusSheetReceiver.html +26 -2
- data/doc/TaskJuggler/StatusSheetReport.html +26 -2
- data/doc/TaskJuggler/StatusSheetSender.html +26 -2
- data/doc/TaskJuggler/StdIoWrapper.html +26 -2
- data/doc/TaskJuggler/StringAttribute.html +39 -15
- data/doc/TaskJuggler/SymbolAttribute.html +35 -11
- data/doc/TaskJuggler/SyntaxReference.html +26 -2
- data/doc/TaskJuggler/TOCEntry.html +26 -2
- data/doc/TaskJuggler/TSResourceRecord.html +26 -2
- data/doc/TaskJuggler/TSTaskRecord.html +26 -2
- data/doc/TaskJuggler/TableColumnDefinition.html +26 -2
- data/doc/TaskJuggler/TableOfContents.html +26 -2
- data/doc/TaskJuggler/TableReport.html +239 -214
- data/doc/TaskJuggler/TagFile/TagFileEntry.html +841 -0
- data/doc/TaskJuggler/TagFile.html +817 -0
- data/doc/TaskJuggler/Task.html +27 -3
- data/doc/TaskJuggler/TaskDepListAttribute.html +47 -23
- data/doc/TaskJuggler/TaskDependency.html +26 -2
- data/doc/TaskJuggler/TaskListAttribute.html +47 -23
- data/doc/TaskJuggler/TaskListRE.html +26 -2
- data/doc/TaskJuggler/TaskScenario.html +2235 -2178
- data/doc/TaskJuggler/TernarySearchTree.html +26 -2
- data/doc/TaskJuggler/TextFormatter.html +26 -2
- data/doc/TaskJuggler/TextParser/Macro.html +26 -2
- data/doc/TaskJuggler/TextParser/MacroTable.html +26 -2
- data/doc/TaskJuggler/TextParser/Pattern.html +26 -2
- data/doc/TaskJuggler/TextParser/Rule.html +26 -2
- data/doc/TaskJuggler/TextParser/Scanner/BufferStreamHandle.html +32 -8
- data/doc/TaskJuggler/TextParser/Scanner/FileStreamHandle.html +39 -15
- data/doc/TaskJuggler/TextParser/Scanner/MacroStackEntry.html +26 -2
- data/doc/TaskJuggler/TextParser/Scanner/StreamHandle.html +119 -86
- data/doc/TaskJuggler/TextParser/Scanner.html +317 -291
- data/doc/TaskJuggler/TextParser/SourceFileInfo.html +26 -2
- data/doc/TaskJuggler/TextParser/StackElement.html +26 -2
- data/doc/TaskJuggler/TextParser/State.html +26 -2
- data/doc/TaskJuggler/TextParser/StateTransition.html +26 -2
- data/doc/TaskJuggler/TextParser/TextParserResultArray.html +26 -2
- data/doc/TaskJuggler/TextParser/TokenDoc.html +26 -2
- data/doc/TaskJuggler/TextParser.html +85 -61
- data/doc/TaskJuggler/TextReport.html +26 -2
- data/doc/TaskJuggler/TimeInterval.html +841 -0
- data/doc/TaskJuggler/{IntervalListAttribute.html → TimeIntervalListAttribute.html} +33 -9
- data/doc/TaskJuggler/TimeSheet.html +26 -2
- data/doc/TaskJuggler/TimeSheetReceiver.html +26 -2
- data/doc/TaskJuggler/TimeSheetRecord.html +27 -3
- data/doc/TaskJuggler/TimeSheetReport.html +29 -5
- data/doc/TaskJuggler/TimeSheetSender.html +26 -2
- data/doc/TaskJuggler/TimeSheetSummary.html +26 -2
- data/doc/TaskJuggler/TimeSheets.html +26 -2
- data/doc/TaskJuggler/Tj3.html +150 -111
- data/doc/TaskJuggler/Tj3AppBase.html +26 -2
- data/doc/TaskJuggler/Tj3Client.html +26 -2
- data/doc/TaskJuggler/Tj3Daemon.html +26 -2
- data/doc/TaskJuggler/Tj3Man.html +26 -2
- data/doc/TaskJuggler/Tj3SheetAppBase.html +26 -2
- data/doc/TaskJuggler/Tj3SsReceiver.html +26 -2
- data/doc/TaskJuggler/Tj3SsSender.html +26 -2
- data/doc/TaskJuggler/Tj3TsReceiver.html +26 -2
- data/doc/TaskJuggler/Tj3TsSender.html +26 -2
- data/doc/TaskJuggler/Tj3TsSummary.html +26 -2
- data/doc/TaskJuggler/TjException.html +26 -2
- data/doc/TaskJuggler/TjRuntimeError.html +26 -2
- data/doc/TaskJuggler/TjTime.html +539 -477
- data/doc/TaskJuggler/TjpExample.html +26 -2
- data/doc/TaskJuggler/TjpExportRE.html +240 -161
- data/doc/TaskJuggler/TjpSyntaxRules.html +4236 -3844
- data/doc/TaskJuggler/URLParameter.html +26 -2
- data/doc/TaskJuggler/UserManual.html +26 -2
- data/doc/TaskJuggler/VimSyntax.html +31 -7
- data/doc/TaskJuggler/WebServer.html +26 -2
- data/doc/TaskJuggler/WelcomePage.html +26 -2
- data/doc/TaskJuggler/WorkingHours.html +227 -152
- data/doc/TaskJuggler/WorkingHoursAttribute.html +62 -38
- data/doc/TaskJuggler/XMLBlob.html +26 -2
- data/doc/TaskJuggler/XMLComment.html +26 -2
- data/doc/TaskJuggler/XMLDocument.html +26 -2
- data/doc/TaskJuggler/XMLElement.html +26 -2
- data/doc/TaskJuggler/XMLNamedText.html +26 -2
- data/doc/TaskJuggler/XMLText.html +26 -2
- data/doc/TaskJuggler.html +486 -427
- data/doc/index.html +801 -659
- data/doc/lib/taskjuggler/AccountScenario_rb.html +1 -1
- data/doc/lib/taskjuggler/Account_rb.html +1 -1
- data/doc/lib/taskjuggler/AlgorithmDiff_rb.html +1 -1
- data/doc/lib/taskjuggler/Allocation_rb.html +1 -1
- data/doc/lib/taskjuggler/AppConfig_rb.html +1 -1
- data/doc/lib/taskjuggler/AttributeBase_rb.html +1 -1
- data/doc/lib/taskjuggler/AttributeDefinition_rb.html +1 -1
- data/doc/lib/taskjuggler/Attributes_rb.html +1 -1
- data/doc/lib/taskjuggler/BatchProcessor_rb.html +1 -1
- data/doc/lib/taskjuggler/Booking_rb.html +1 -1
- data/doc/lib/taskjuggler/ChargeSet_rb.html +1 -1
- data/doc/lib/taskjuggler/Charge_rb.html +1 -1
- data/doc/lib/taskjuggler/DataCache_rb.html +1 -1
- data/doc/lib/taskjuggler/FileList_rb.html +1 -1
- data/doc/lib/taskjuggler/HTMLDocument_rb.html +1 -1
- data/doc/lib/{ruby-signal-bug_rb.html → taskjuggler/HTMLElements_rb.html} +9 -9
- data/doc/lib/{exchangebug_rb.html → taskjuggler/ICalendar_rb.html} +9 -9
- data/doc/lib/taskjuggler/IntervalList_rb.html +1 -1
- data/doc/lib/taskjuggler/Interval_rb.html +1 -1
- data/doc/lib/taskjuggler/Journal_rb.html +1 -1
- data/doc/lib/taskjuggler/KeywordArray_rb.html +1 -1
- data/doc/lib/taskjuggler/KeywordDocumentation_rb.html +1 -1
- data/doc/lib/taskjuggler/Limits_rb.html +1 -1
- data/doc/lib/taskjuggler/LogFile_rb.html +1 -1
- data/doc/lib/taskjuggler/Log_rb.html +1 -1
- data/doc/lib/taskjuggler/LogicalExpression_rb.html +1 -1
- data/doc/lib/taskjuggler/LogicalFunction_rb.html +1 -1
- data/doc/lib/taskjuggler/LogicalOperation_rb.html +1 -1
- data/doc/lib/taskjuggler/MessageHandler_rb.html +1 -1
- data/doc/lib/taskjuggler/ProjectFileParser_rb.html +1 -1
- data/doc/lib/taskjuggler/ProjectFileScanner_rb.html +1 -1
- data/doc/lib/taskjuggler/Project_rb.html +1 -1
- data/doc/lib/taskjuggler/PropertyList_rb.html +1 -1
- data/doc/lib/taskjuggler/PropertySet_rb.html +1 -1
- data/doc/lib/taskjuggler/PropertyTreeNode_rb.html +1 -1
- data/doc/lib/taskjuggler/Query_rb.html +1 -1
- data/doc/lib/taskjuggler/RealFormat_rb.html +1 -1
- data/doc/lib/taskjuggler/ResourceScenario_rb.html +1 -1
- data/doc/lib/taskjuggler/Resource_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/Document_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/Element_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/FunctionExample_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/FunctionHandler_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/Parser_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/RTFHandlers_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/RTFNavigator_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/RTFQuery_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/RTFReportLink_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/RTFReport_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/RTFWithQuerySupport_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/Scanner_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/Snip_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/SyntaxRules_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/TOCEntry_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText/TableOfContents_rb.html +1 -1
- data/doc/lib/taskjuggler/RichText_rb.html +1 -1
- data/doc/lib/taskjuggler/RuntimeConfig_rb.html +1 -1
- data/doc/lib/taskjuggler/ScenarioData_rb.html +1 -1
- data/doc/lib/taskjuggler/Scenario_rb.html +1 -1
- data/doc/lib/taskjuggler/Scoreboard_rb.html +1 -1
- data/doc/lib/taskjuggler/SheetHandlerBase_rb.html +1 -1
- data/doc/lib/taskjuggler/SheetReceiver_rb.html +1 -1
- data/doc/lib/taskjuggler/SheetSender_rb.html +1 -1
- data/doc/lib/taskjuggler/ShiftAssignments_rb.html +1 -1
- data/doc/lib/taskjuggler/ShiftScenario_rb.html +1 -1
- data/doc/lib/taskjuggler/Shift_rb.html +1 -1
- data/doc/lib/taskjuggler/SimpleQueryExpander_rb.html +1 -1
- data/doc/lib/taskjuggler/StatusSheetReceiver_rb.html +1 -1
- data/doc/lib/taskjuggler/StatusSheetSender_rb.html +1 -1
- data/doc/lib/taskjuggler/StdIoWrapper_rb.html +1 -1
- data/doc/lib/taskjuggler/SyntaxReference_rb.html +1 -1
- data/doc/lib/taskjuggler/TableColumnDefinition_rb.html +1 -1
- data/doc/lib/taskjuggler/TaskDependency_rb.html +1 -1
- data/doc/lib/taskjuggler/TaskJuggler_rb.html +1 -1
- data/doc/lib/taskjuggler/TaskScenario_rb.html +1 -1
- data/doc/lib/taskjuggler/Task_rb.html +1 -1
- data/doc/lib/taskjuggler/TernarySearchTree_rb.html +1 -1
- data/doc/lib/taskjuggler/TextFormatter_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/MacroTable_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/Pattern_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/Rule_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/Scanner_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/SourceFileInfo_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/StackElement_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/State_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser/TokenDoc_rb.html +1 -1
- data/doc/lib/taskjuggler/TextParser_rb.html +1 -1
- data/doc/lib/taskjuggler/TimeSheetReceiver_rb.html +1 -1
- data/doc/lib/taskjuggler/TimeSheetSender_rb.html +1 -1
- data/doc/lib/taskjuggler/TimeSheetSummary_rb.html +1 -1
- data/doc/lib/taskjuggler/TimeSheets_rb.html +1 -1
- data/doc/lib/taskjuggler/Tj3AppBase_rb.html +1 -1
- data/doc/lib/taskjuggler/Tj3Config_rb.html +1 -1
- data/doc/lib/taskjuggler/Tj3SheetAppBase_rb.html +1 -1
- data/doc/lib/taskjuggler/TjException_rb.html +1 -1
- data/doc/lib/taskjuggler/TjTime_rb.html +1 -1
- data/doc/lib/taskjuggler/TjpExample_rb.html +1 -1
- data/doc/lib/taskjuggler/TjpSyntaxRules_rb.html +1 -1
- data/doc/lib/taskjuggler/URLParameter_rb.html +1 -1
- data/doc/lib/taskjuggler/UTF8String_rb.html +1 -1
- data/doc/lib/taskjuggler/UserManual_rb.html +1 -1
- data/doc/lib/taskjuggler/VimSyntax_rb.html +1 -1
- data/doc/lib/taskjuggler/WorkingHours_rb.html +1 -1
- data/doc/lib/taskjuggler/XMLDocument_rb.html +1 -1
- data/doc/lib/taskjuggler/XMLElement_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3Client_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3Daemon_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3Man_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3SsReceiver_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3SsSender_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3TsReceiver_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3TsSender_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3TsSummary_rb.html +1 -1
- data/doc/lib/taskjuggler/apps/Tj3_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/Daemon_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/ProcessIntercom_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/ProjectBroker_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/ProjectServer_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/ReportServer_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/ReportServlet_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/WebServer_rb.html +1 -1
- data/doc/lib/taskjuggler/daemon/WelcomePage_rb.html +1 -1
- data/doc/lib/taskjuggler/deep_copy_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/CSVFile_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/CollisionDetector_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ColumnTable_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttChart_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttContainer_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttHeaderScaleItem_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttHeader_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttLine_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttLoadStack_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttMilestone_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttRouter_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/GanttTaskBar_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/HTMLGraphics_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ICalReport_rb.html +71 -0
- data/doc/lib/taskjuggler/reports/Navigator_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/NikuReport_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ReportBase_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ReportContext_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ReportTableCell_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ReportTableColumn_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ReportTableLegend_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ReportTableLine_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/ReportTable_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/Report_rb.html +5 -1
- data/doc/lib/taskjuggler/reports/ResourceListRE_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/StatusSheetReport_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/TableReport_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/TagFile_rb.html +71 -0
- data/doc/lib/taskjuggler/reports/TaskListRE_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/TextReport_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/TimeSheetReport_rb.html +1 -1
- data/doc/lib/taskjuggler/reports/TjpExportRE_rb.html +1 -1
- data/doc/lib/tj3_rb.html +1 -1
- data/doc/lib/tj3client_rb.html +1 -1
- data/doc/lib/tj3d_rb.html +1 -1
- data/doc/lib/tj3man_rb.html +1 -1
- data/doc/lib/tj3ss_receiver_rb.html +1 -1
- data/doc/lib/tj3ss_sender_rb.html +1 -1
- data/doc/lib/tj3ts_receiver_rb.html +1 -1
- data/doc/lib/tj3ts_sender_rb.html +1 -1
- data/doc/lib/tj3ts_summary_rb.html +1 -1
- data/lib/taskjuggler/Account.rb +1 -1
- data/lib/taskjuggler/AccountScenario.rb +1 -1
- data/lib/taskjuggler/Allocation.rb +5 -5
- data/lib/taskjuggler/AttributeBase.rb +30 -22
- data/lib/taskjuggler/Attributes.rb +80 -78
- data/lib/taskjuggler/Booking.rb +2 -2
- data/lib/taskjuggler/Charge.rb +3 -3
- data/lib/taskjuggler/ICalendar.rb +251 -0
- data/lib/taskjuggler/Interval.rb +215 -53
- data/lib/taskjuggler/IntervalList.rb +5 -5
- data/lib/taskjuggler/Limits.rb +79 -69
- data/lib/taskjuggler/LogicalFunction.rb +2 -2
- data/lib/taskjuggler/MessageHandler.rb +11 -6
- data/lib/taskjuggler/Project.rb +208 -95
- data/lib/taskjuggler/ProjectFileParser.rb +2 -2
- data/lib/taskjuggler/ProjectFileScanner.rb +7 -6
- data/lib/taskjuggler/PropertySet.rb +1 -5
- data/lib/taskjuggler/PropertyTreeNode.rb +21 -16
- data/lib/taskjuggler/Query.rb +10 -7
- data/lib/taskjuggler/Resource.rb +6 -1
- data/lib/taskjuggler/ResourceScenario.rb +85 -69
- data/lib/taskjuggler/RichText/RTFQuery.rb +2 -2
- data/lib/taskjuggler/ScenarioData.rb +11 -1
- data/lib/taskjuggler/Scoreboard.rb +8 -1
- data/lib/taskjuggler/Shift.rb +1 -1
- data/lib/taskjuggler/ShiftAssignments.rb +22 -20
- data/lib/taskjuggler/Task.rb +1 -1
- data/lib/taskjuggler/TaskJuggler.rb +65 -51
- data/lib/taskjuggler/TaskScenario.rb +486 -419
- data/lib/taskjuggler/TextParser/Scanner.rb +22 -11
- data/lib/taskjuggler/TimeSheets.rb +1 -1
- data/lib/taskjuggler/Tj3Config.rb +1 -1
- data/lib/taskjuggler/TjTime.rb +7 -3
- data/lib/taskjuggler/TjpSyntaxRules.rb +157 -23
- data/lib/taskjuggler/VimSyntax.rb +18 -0
- data/lib/taskjuggler/WorkingHours.rb +20 -4
- data/lib/taskjuggler/apps/Tj3.rb +16 -1
- data/lib/taskjuggler/reports/GanttLine.rb +1 -1
- data/lib/taskjuggler/reports/ICalReport.rb +136 -0
- data/lib/taskjuggler/reports/NikuReport.rb +1 -1
- data/lib/taskjuggler/reports/Report.rb +59 -0
- data/lib/taskjuggler/reports/ReportBase.rb +2 -67
- data/lib/taskjuggler/reports/TableReport.rb +9 -8
- data/lib/taskjuggler/reports/TagFile.rb +120 -0
- data/lib/taskjuggler/reports/TimeSheetReport.rb +3 -3
- data/lib/taskjuggler/reports/TjpExportRE.rb +33 -9
- data/manual/Installation +126 -0
- data/spec/ICalendar_spec.rb +45 -0
- data/spec/IntervalList_spec.rb +11 -11
- data/tasks/changelog.rake +150 -60
- data/tasks/gem.rake +1 -0
- data/tasks/vim.rake +2 -2
- data/test/TestSuite/Export-Reports/refs/Booking.tjp +1 -1
- data/test/TestSuite/Export-Reports/refs/CompletedWork.tji.tjp +40 -0
- data/test/TestSuite/Export-Reports/refs/Macro-2.tjp +10 -1
- data/test/TestSuite/Export-Reports/refs/TaskPrefix.tjp +1 -1
- data/test/TestSuite/HTML-Reports/Alerts.html +160 -412
- data/test/TestSuite/HTML-Reports/CellText.html +758 -0
- data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
- data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
- data/test/TestSuite/HTML-Reports/LogicalFunctions.html +245 -0
- data/test/TestSuite/HTML-Reports/Query.html +31 -0
- data/test/TestSuite/HTML-Reports/css/tjmanual.css +0 -20
- data/test/TestSuite/HTML-Reports/css/tjreport.css +6 -7
- data/test/TestSuite/HTML-Reports/depArrows.html +851 -0
- data/test/TestSuite/HTML-Reports/profile.html +37581 -0
- data/test/TestSuite/{Scheduler/Correct → HTML-Reports/scripts}/scripts/wz_tooltip.js +20 -20
- data/test/TestSuite/Scheduler/Correct/Booking.tjp +3 -3
- data/test/TestSuite/Scheduler/Correct/Duration.tjp +3 -3
- data/test/TestSuite/Scheduler/Errors/R.html +113 -0
- data/test/TestSuite/Scheduler/Errors/allocate_no_assigned.tjp +15 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/css/tjmanual.css +0 -1
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/css/tjreport.css +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/details.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/flag-green.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/flag-red.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/flag-yellow.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/resource.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/resourcegroup.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/task.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/taskgroup.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/trend-down.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/trend-flat.png +0 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/icons/trend-up.png +0 -0
- data/test/TestSuite/Scheduler/Errors/overbooked_duration.tjp +11 -0
- data/test/TestSuite/Scheduler/Errors/overbooked_effort.tjp +11 -0
- data/test/TestSuite/Scheduler/Errors/overbooked_length.tjp +13 -0
- data/test/TestSuite/{ReportGenerator/Correct → Scheduler/Errors}/scripts/wz_tooltip.js +0 -0
- data/test/TestSuite/StatusSheets/dev2.tji +22 -0
- data/test/TestSuite/Syntax/Correct/CompletedWork.tji.tjp +38 -0
- data/test/TestSuite/Syntax/Correct/Macro-2.tjp +5 -2
- data/test/TestSuite/Syntax/Errors/scenario_after_tracking.tjp +8 -0
- data/test/TestSuite/TimeSheets/resrep.tji +7 -0
- data/test/TestSuite/TimeSheets/ts.tji +351 -0
- data/test/TestSuite/TimeSheets/tsdef.tji +2 -0
- data/test/test_Limits.rb +38 -30
- data/test/test_Scheduler.rb +2 -2
- data/test/test_ShiftAssignments.rb +8 -8
- data/test/test_WorkingHours.rb +4 -4
- metadata +1015 -1005
- data/lib/exchangebug.rb +0 -42
- data/lib/ruby-signal-bug.rb +0 -55
- data/test/TestSuite/Export-Reports/refs/DST.tjp +0 -60
- data/test/TestSuite/Export-Reports/refs/ReleasePlan.tjp +0 -80
- data/test/TestSuite/HTML-Reports/TimeSheet.html +0 -79
- data/test/TestSuite/HTML-Reports/reference.html +0 -51
- data/test/TestSuite/ReportGenerator/Correct/Alerts-1.csv +0 -412
- data/test/TestSuite/ReportGenerator/Correct/Alerts-1.html +0 -680
- data/test/TestSuite/ReportGenerator/Correct/DependencyList.csv +0 -4
- data/test/TestSuite/ReportGenerator/Correct/DependencyList.tjp +0 -25
- data/test/TestSuite/ReportGenerator/Correct/Journal-1.csv +0 -8
- data/test/TestSuite/ReportGenerator/Correct/Journal-2.csv +0 -8
- data/test/TestSuite/ReportGenerator/Correct/Journal-3.html +0 -28
- data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions2.csv +0 -3
- data/test/TestSuite/ReportGenerator/Correct/opennodes-1.csv +0 -2
- data/test/TestSuite/ReportGenerator/Correct/opennodes.csv +0 -2
- data/test/TestSuite/ReportGenerator/Correct/opennodes.tjp +0 -26
- data/test/TestSuite/ReportGenerator/Correct/refs/opennodes-1.csv +0 -2
- data/test/TestSuite/Scheduler/' +0 -23
- data/test/TestSuite/Scheduler/Correct/css/tjmanual.css +0 -86
- data/test/TestSuite/Scheduler/Correct/css/tjreport.css +0 -413
- data/test/TestSuite/Scheduler/Correct/icons/details.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/flag-green.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/flag-red.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/flag-yellow.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/resource.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/resourcegroup.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/task.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/taskgroup.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/trend-down.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/trend-flat.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/trend-up.png +0 -0
- data/test/TestSuite/StatusSheetTemplates/project.tji +0 -35
- data/test/TestSuite/StatusSheetTemplates/project.tjp +0 -56
- data/test/TestSuite/StatusSheets/TimeSheets/2002-03-01/resource1_2002-03-01.tji +0 -0
- data/test/TestSuite/Syntax/Correct/DST.tjp +0 -11
- data/test/TestSuite/Syntax/Correct/ReleasePlan.tjp +0 -32
- data/test/TestSuite/TimeSheets/receiver.log.mod +0 -1056
- data/test/TestSuite/TimeSheets/uu.txt +0 -29
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
# The status headline should be no more than 60 characters and may
|
|
2
|
+
# not be empty! The status summary is optional and should be no
|
|
3
|
+
# longer than one or two sentences of plain text. The details section
|
|
4
|
+
# is also optional has no length limitation. You can use simple
|
|
5
|
+
# markup in this section. It is recommended that you provide at
|
|
6
|
+
# least a summary or a details section.
|
|
7
|
+
# See http://www.taskjuggler.org/tj3/manual/timesheet.html for details.
|
|
8
|
+
timesheet boss 2002-01-16-00:00-+0100 - 2002-05-17-17:00-+0200 {
|
|
9
|
+
|
|
10
|
+
# Vacation time: 1.1506849315068493%
|
|
11
|
+
|
|
12
|
+
# There were no planned tasks assignements for this period!
|
|
13
|
+
|
|
14
|
+
# If you had unplanned tasks, uncomment and fill out the
|
|
15
|
+
# following lines:
|
|
16
|
+
# newtask new.task.id "A task title" {
|
|
17
|
+
# work X%
|
|
18
|
+
# remaining Y.Yd
|
|
19
|
+
# }
|
|
20
|
+
|
|
21
|
+
# You can use the following section to report personal notes.
|
|
22
|
+
# status green "A headline" {
|
|
23
|
+
# summary -8<-
|
|
24
|
+
# Uncomment and put one or two sentences here!
|
|
25
|
+
# ->8-
|
|
26
|
+
# details -8<-
|
|
27
|
+
# Uncomment and put markup text here.
|
|
28
|
+
# ->8-
|
|
29
|
+
# }
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
timesheet dev1 2002-01-16-00:00-+0100 - 2002-05-17-17:00-+0200 {
|
|
33
|
+
|
|
34
|
+
# Vacation time: 1.1506849315068493%
|
|
35
|
+
|
|
36
|
+
# Task: Specification
|
|
37
|
+
task AcSo.spec {
|
|
38
|
+
work 7.767123287671233%
|
|
39
|
+
remaining 0.0d
|
|
40
|
+
status green "Your headline here!" {
|
|
41
|
+
# summary -8<-
|
|
42
|
+
# Uncomment and put one or two sentences here!
|
|
43
|
+
# ->8-
|
|
44
|
+
# details -8<-
|
|
45
|
+
# Uncomment and put markup text here.
|
|
46
|
+
# ->8-
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
# Task: Database coupling
|
|
51
|
+
task AcSo.software.database {
|
|
52
|
+
work 11.506849315068495%
|
|
53
|
+
remaining 0.0d
|
|
54
|
+
status green "Your headline here!" {
|
|
55
|
+
# summary -8<-
|
|
56
|
+
# Uncomment and put one or two sentences here!
|
|
57
|
+
# ->8-
|
|
58
|
+
# details -8<-
|
|
59
|
+
# Uncomment and put markup text here.
|
|
60
|
+
# ->8-
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
# Task: Back-End Functions
|
|
65
|
+
task AcSo.software.backend {
|
|
66
|
+
work 17.26027397260274%
|
|
67
|
+
remaining 0.0d
|
|
68
|
+
status green "Your headline here!" {
|
|
69
|
+
# summary -8<-
|
|
70
|
+
# Uncomment and put one or two sentences here!
|
|
71
|
+
# ->8-
|
|
72
|
+
# details -8<-
|
|
73
|
+
# Uncomment and put markup text here.
|
|
74
|
+
# ->8-
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
# Task: Beta Test
|
|
79
|
+
task AcSo.test.beta {
|
|
80
|
+
work 13.08904109589041%
|
|
81
|
+
remaining 0.0d
|
|
82
|
+
status green "Your headline here!" {
|
|
83
|
+
# summary -8<-
|
|
84
|
+
# Uncomment and put one or two sentences here!
|
|
85
|
+
# ->8-
|
|
86
|
+
# details -8<-
|
|
87
|
+
# Uncomment and put markup text here.
|
|
88
|
+
# ->8-
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
# If you had unplanned tasks, uncomment and fill out the
|
|
93
|
+
# following lines:
|
|
94
|
+
# newtask new.task.id "A task title" {
|
|
95
|
+
# work X%
|
|
96
|
+
# remaining Y.Yd
|
|
97
|
+
# }
|
|
98
|
+
|
|
99
|
+
# You can use the following section to report personal notes.
|
|
100
|
+
# status green "A headline" {
|
|
101
|
+
# summary -8<-
|
|
102
|
+
# Uncomment and put one or two sentences here!
|
|
103
|
+
# ->8-
|
|
104
|
+
# details -8<-
|
|
105
|
+
# Uncomment and put markup text here.
|
|
106
|
+
# ->8-
|
|
107
|
+
# }
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
timesheet dev2 2002-01-16-00:00-+0100 - 2002-05-17-17:00-+0200 {
|
|
111
|
+
|
|
112
|
+
# Vacation time: 1.1506849315068493%
|
|
113
|
+
|
|
114
|
+
# Task: Specification
|
|
115
|
+
task AcSo.spec {
|
|
116
|
+
work 7.767123287671233%
|
|
117
|
+
remaining 0.0d
|
|
118
|
+
status green "Your headline here!" {
|
|
119
|
+
# summary -8<-
|
|
120
|
+
# Uncomment and put one or two sentences here!
|
|
121
|
+
# ->8-
|
|
122
|
+
# details -8<-
|
|
123
|
+
# Uncomment and put markup text here.
|
|
124
|
+
# ->8-
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
# Task: Database coupling
|
|
129
|
+
task AcSo.software.database {
|
|
130
|
+
work 11.506849315068495%
|
|
131
|
+
remaining 0.0d
|
|
132
|
+
status green "Your headline here!" {
|
|
133
|
+
# summary -8<-
|
|
134
|
+
# Uncomment and put one or two sentences here!
|
|
135
|
+
# ->8-
|
|
136
|
+
# details -8<-
|
|
137
|
+
# Uncomment and put markup text here.
|
|
138
|
+
# ->8-
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
# Task: Graphical User Interface
|
|
143
|
+
task AcSo.software.gui {
|
|
144
|
+
work 20.136986301369863%
|
|
145
|
+
remaining 0.0d
|
|
146
|
+
status green "Your headline here!" {
|
|
147
|
+
# summary -8<-
|
|
148
|
+
# Uncomment and put one or two sentences here!
|
|
149
|
+
# ->8-
|
|
150
|
+
# details -8<-
|
|
151
|
+
# Uncomment and put markup text here.
|
|
152
|
+
# ->8-
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
# Task: Back-End Functions
|
|
157
|
+
task AcSo.software.backend {
|
|
158
|
+
work 17.26027397260274%
|
|
159
|
+
remaining 0.0d
|
|
160
|
+
status green "Your headline here!" {
|
|
161
|
+
# summary -8<-
|
|
162
|
+
# Uncomment and put one or two sentences here!
|
|
163
|
+
# ->8-
|
|
164
|
+
# details -8<-
|
|
165
|
+
# Uncomment and put markup text here.
|
|
166
|
+
# ->8-
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
# Task: Alpha Test
|
|
171
|
+
task AcSo.test.alpha {
|
|
172
|
+
work 3.1643835616438363%
|
|
173
|
+
remaining 0.0d
|
|
174
|
+
status green "Your headline here!" {
|
|
175
|
+
# summary -8<-
|
|
176
|
+
# Uncomment and put one or two sentences here!
|
|
177
|
+
# ->8-
|
|
178
|
+
# details -8<-
|
|
179
|
+
# Uncomment and put markup text here.
|
|
180
|
+
# ->8-
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
# If you had unplanned tasks, uncomment and fill out the
|
|
185
|
+
# following lines:
|
|
186
|
+
# newtask new.task.id "A task title" {
|
|
187
|
+
# work X%
|
|
188
|
+
# remaining Y.Yd
|
|
189
|
+
# }
|
|
190
|
+
|
|
191
|
+
# You can use the following section to report personal notes.
|
|
192
|
+
# status green "A headline" {
|
|
193
|
+
# summary -8<-
|
|
194
|
+
# Uncomment and put one or two sentences here!
|
|
195
|
+
# ->8-
|
|
196
|
+
# details -8<-
|
|
197
|
+
# Uncomment and put markup text here.
|
|
198
|
+
# ->8-
|
|
199
|
+
# }
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
timesheet dev3 2002-01-16-00:00-+0100 - 2002-05-17-17:00-+0200 {
|
|
203
|
+
|
|
204
|
+
# Vacation time: 3.4520547945205484%
|
|
205
|
+
|
|
206
|
+
# Task: Specification
|
|
207
|
+
task AcSo.spec {
|
|
208
|
+
work 7.767123287671233%
|
|
209
|
+
remaining 0.0d
|
|
210
|
+
status green "Your headline here!" {
|
|
211
|
+
# summary -8<-
|
|
212
|
+
# Uncomment and put one or two sentences here!
|
|
213
|
+
# ->8-
|
|
214
|
+
# details -8<-
|
|
215
|
+
# Uncomment and put markup text here.
|
|
216
|
+
# ->8-
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
# Task: Graphical User Interface
|
|
221
|
+
task AcSo.software.gui {
|
|
222
|
+
work 20.136986301369863%
|
|
223
|
+
remaining 0.0d
|
|
224
|
+
status green "Your headline here!" {
|
|
225
|
+
# summary -8<-
|
|
226
|
+
# Uncomment and put one or two sentences here!
|
|
227
|
+
# ->8-
|
|
228
|
+
# details -8<-
|
|
229
|
+
# Uncomment and put markup text here.
|
|
230
|
+
# ->8-
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
# Task: Manual
|
|
235
|
+
task AcSo.manual {
|
|
236
|
+
work 23.732876712328768%
|
|
237
|
+
remaining 0.0d
|
|
238
|
+
status green "Your headline here!" {
|
|
239
|
+
# summary -8<-
|
|
240
|
+
# Uncomment and put one or two sentences here!
|
|
241
|
+
# ->8-
|
|
242
|
+
# details -8<-
|
|
243
|
+
# Uncomment and put markup text here.
|
|
244
|
+
# ->8-
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
# If you had unplanned tasks, uncomment and fill out the
|
|
249
|
+
# following lines:
|
|
250
|
+
# newtask new.task.id "A task title" {
|
|
251
|
+
# work X%
|
|
252
|
+
# remaining Y.Yd
|
|
253
|
+
# }
|
|
254
|
+
|
|
255
|
+
# You can use the following section to report personal notes.
|
|
256
|
+
# status green "A headline" {
|
|
257
|
+
# summary -8<-
|
|
258
|
+
# Uncomment and put one or two sentences here!
|
|
259
|
+
# ->8-
|
|
260
|
+
# details -8<-
|
|
261
|
+
# Uncomment and put markup text here.
|
|
262
|
+
# ->8-
|
|
263
|
+
# }
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
timesheet test 2002-01-16-00:00-+0100 - 2002-05-17-17:00-+0200 {
|
|
267
|
+
|
|
268
|
+
# Vacation time: 1.1506849315068493%
|
|
269
|
+
|
|
270
|
+
# Task: Alpha Test
|
|
271
|
+
task AcSo.test.alpha {
|
|
272
|
+
work 2.589041095890411%
|
|
273
|
+
remaining 0.0d
|
|
274
|
+
status green "Your headline here!" {
|
|
275
|
+
# summary -8<-
|
|
276
|
+
# Uncomment and put one or two sentences here!
|
|
277
|
+
# ->8-
|
|
278
|
+
# details -8<-
|
|
279
|
+
# Uncomment and put markup text here.
|
|
280
|
+
# ->8-
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
# Task: Beta Test
|
|
285
|
+
task AcSo.test.beta {
|
|
286
|
+
work 9.924657534246577%
|
|
287
|
+
remaining 0.0d
|
|
288
|
+
status green "Your headline here!" {
|
|
289
|
+
# summary -8<-
|
|
290
|
+
# Uncomment and put one or two sentences here!
|
|
291
|
+
# ->8-
|
|
292
|
+
# details -8<-
|
|
293
|
+
# Uncomment and put markup text here.
|
|
294
|
+
# ->8-
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
# If you had unplanned tasks, uncomment and fill out the
|
|
299
|
+
# following lines:
|
|
300
|
+
# newtask new.task.id "A task title" {
|
|
301
|
+
# work X%
|
|
302
|
+
# remaining Y.Yd
|
|
303
|
+
# }
|
|
304
|
+
|
|
305
|
+
# You can use the following section to report personal notes.
|
|
306
|
+
# status green "A headline" {
|
|
307
|
+
# summary -8<-
|
|
308
|
+
# Uncomment and put one or two sentences here!
|
|
309
|
+
# ->8-
|
|
310
|
+
# details -8<-
|
|
311
|
+
# Uncomment and put markup text here.
|
|
312
|
+
# ->8-
|
|
313
|
+
# }
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
timesheet doc 2002-01-16-00:00-+0100 - 2002-05-17-17:00-+0200 {
|
|
317
|
+
|
|
318
|
+
# Vacation time: 6.904109589041097%
|
|
319
|
+
|
|
320
|
+
# Task: Manual
|
|
321
|
+
task AcSo.manual {
|
|
322
|
+
work 33.801369863013704%
|
|
323
|
+
remaining 0.0d
|
|
324
|
+
status green "Your headline here!" {
|
|
325
|
+
# summary -8<-
|
|
326
|
+
# Uncomment and put one or two sentences here!
|
|
327
|
+
# ->8-
|
|
328
|
+
# details -8<-
|
|
329
|
+
# Uncomment and put markup text here.
|
|
330
|
+
# ->8-
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
# If you had unplanned tasks, uncomment and fill out the
|
|
335
|
+
# following lines:
|
|
336
|
+
# newtask new.task.id "A task title" {
|
|
337
|
+
# work X%
|
|
338
|
+
# remaining Y.Yd
|
|
339
|
+
# }
|
|
340
|
+
|
|
341
|
+
# You can use the following section to report personal notes.
|
|
342
|
+
# status green "A headline" {
|
|
343
|
+
# summary -8<-
|
|
344
|
+
# Uncomment and put one or two sentences here!
|
|
345
|
+
# ->8-
|
|
346
|
+
# details -8<-
|
|
347
|
+
# Uncomment and put markup text here.
|
|
348
|
+
# ->8-
|
|
349
|
+
# }
|
|
350
|
+
}
|
|
351
|
+
|
data/test/test_Limits.rb
CHANGED
|
@@ -54,17 +54,19 @@ class TestLimits < Test::Unit::TestCase
|
|
|
54
54
|
def test_inc
|
|
55
55
|
l = Limits.new
|
|
56
56
|
l.setProject(@p)
|
|
57
|
-
l.setLimit('weeklymax', 2,
|
|
58
|
-
|
|
57
|
+
l.setLimit('weeklymax', 2,
|
|
58
|
+
ScoreboardInterval.new(@p['start'], @p['scheduleGranularity'],
|
|
59
|
+
TjTime.new('2009-02-10'),
|
|
60
|
+
TjTime.new('2009-02-15')))
|
|
59
61
|
# Outside of limit interval, should be ignored
|
|
60
|
-
l.inc(
|
|
61
|
-
l.inc(
|
|
62
|
+
l.inc(-1)
|
|
63
|
+
l.inc(100000)
|
|
62
64
|
assert(l.ok?)
|
|
63
65
|
# Inside the calendar week interval
|
|
64
|
-
l.inc(
|
|
66
|
+
l.inc(dateToIdx('2009-02-09-10:00'))
|
|
65
67
|
assert(l.ok?)
|
|
66
68
|
# The inc will exceed the weekly limit
|
|
67
|
-
l.inc(
|
|
69
|
+
l.inc(dateToIdx('2009-02-09-11:00'))
|
|
68
70
|
assert(!l.ok?)
|
|
69
71
|
end
|
|
70
72
|
|
|
@@ -73,17 +75,17 @@ class TestLimits < Test::Unit::TestCase
|
|
|
73
75
|
l.setProject(@p)
|
|
74
76
|
l.setLimit('dailymax', 4)
|
|
75
77
|
assert_equal(l.limits.length, 1, 'setLimits() failed')
|
|
76
|
-
l.inc(
|
|
78
|
+
l.inc(dateToIdx('2009-02-01-10:00'))
|
|
77
79
|
assert(l.ok?)
|
|
78
|
-
l.inc(
|
|
80
|
+
l.inc(dateToIdx('2009-02-01-11:00'))
|
|
79
81
|
assert(l.ok?)
|
|
80
|
-
l.inc(
|
|
82
|
+
l.inc(dateToIdx('2009-02-01-12:00'))
|
|
81
83
|
assert(l.ok?)
|
|
82
|
-
l.inc(
|
|
84
|
+
l.inc(dateToIdx('2009-02-01-13:00'))
|
|
83
85
|
assert(!l.ok?)
|
|
84
|
-
assert(l.ok?(
|
|
85
|
-
assert(!l.ok?(
|
|
86
|
-
assert(l.ok?(
|
|
86
|
+
assert(l.ok?(dateToIdx('2009-01-31')))
|
|
87
|
+
assert(!l.ok?(dateToIdx('2009-02-01')))
|
|
88
|
+
assert(l.ok?(dateToIdx('2009-02-01'), false))
|
|
87
89
|
end
|
|
88
90
|
|
|
89
91
|
def test_with_resource_1
|
|
@@ -92,13 +94,13 @@ class TestLimits < Test::Unit::TestCase
|
|
|
92
94
|
l.setLimit('dailymax', 4)
|
|
93
95
|
r = Resource.new(@p, 'r', 'R', nil)
|
|
94
96
|
l.setLimit('dailymax', 5, nil, r)
|
|
95
|
-
l.inc(
|
|
97
|
+
l.inc(dateToIdx('2009-02-01-10:00'))
|
|
96
98
|
assert(l.ok?)
|
|
97
|
-
l.inc(
|
|
99
|
+
l.inc(dateToIdx('2009-02-01-11:00'))
|
|
98
100
|
assert(l.ok?)
|
|
99
|
-
l.inc(
|
|
101
|
+
l.inc(dateToIdx('2009-02-01-12:00'))
|
|
100
102
|
assert(l.ok?)
|
|
101
|
-
l.inc(
|
|
103
|
+
l.inc(dateToIdx('2009-02-01-13:00'))
|
|
102
104
|
assert(!l.ok?)
|
|
103
105
|
assert(l.ok?(nil, true, r))
|
|
104
106
|
end
|
|
@@ -109,16 +111,16 @@ class TestLimits < Test::Unit::TestCase
|
|
|
109
111
|
l.setLimit('dailymax', 5)
|
|
110
112
|
r = Resource.new(@p, 'r', 'R', nil)
|
|
111
113
|
l.setLimit('dailymax', 1, nil, r)
|
|
112
|
-
l.inc(
|
|
114
|
+
l.inc(dateToIdx('2009-02-01-10:00'))
|
|
113
115
|
assert(l.ok?)
|
|
114
|
-
l.inc(
|
|
116
|
+
l.inc(dateToIdx('2009-02-01-11:00'))
|
|
115
117
|
assert(l.ok?)
|
|
116
|
-
l.inc(
|
|
118
|
+
l.inc(dateToIdx('2009-02-01-12:00'))
|
|
117
119
|
assert(l.ok?)
|
|
118
|
-
l.inc(
|
|
120
|
+
l.inc(dateToIdx('2009-02-01-13:00'))
|
|
119
121
|
assert(l.ok?)
|
|
120
122
|
assert(l.ok?(nil, true, r))
|
|
121
|
-
l.inc(
|
|
123
|
+
l.inc(dateToIdx('2009-02-01-14:00'), r)
|
|
122
124
|
assert(!l.ok?)
|
|
123
125
|
assert(!l.ok?(nil, true, r))
|
|
124
126
|
end
|
|
@@ -129,13 +131,13 @@ class TestLimits < Test::Unit::TestCase
|
|
|
129
131
|
l.setLimit('dailymax', 5)
|
|
130
132
|
r = Resource.new(@p, 'r', 'R', nil)
|
|
131
133
|
l.setLimit('dailymax', 3, nil, r)
|
|
132
|
-
l.inc(
|
|
134
|
+
l.inc(dateToIdx('2009-02-01-10:00'), r)
|
|
133
135
|
assert(l.ok?)
|
|
134
|
-
l.inc(
|
|
136
|
+
l.inc(dateToIdx('2009-02-01-11:00'))
|
|
135
137
|
assert(l.ok?)
|
|
136
|
-
l.inc(
|
|
138
|
+
l.inc(dateToIdx('2009-02-01-12:00'), r)
|
|
137
139
|
assert(l.ok?)
|
|
138
|
-
l.inc(
|
|
140
|
+
l.inc(dateToIdx('2009-02-01-13:00'), r)
|
|
139
141
|
assert(l.ok?)
|
|
140
142
|
assert(!l.ok?(nil, true, r))
|
|
141
143
|
end
|
|
@@ -146,18 +148,24 @@ class TestLimits < Test::Unit::TestCase
|
|
|
146
148
|
l.setLimit('dailymax', 2)
|
|
147
149
|
r = Resource.new(@p, 'r', 'R', nil)
|
|
148
150
|
l.setLimit('dailymax', 3, nil, r)
|
|
149
|
-
l.inc(
|
|
151
|
+
l.inc(dateToIdx('2009-02-01-10:00'), r)
|
|
150
152
|
assert(l.ok?)
|
|
151
|
-
l.inc(
|
|
153
|
+
l.inc(dateToIdx('2009-02-01-11:00'))
|
|
152
154
|
assert(!l.ok?)
|
|
153
|
-
l.inc(
|
|
155
|
+
l.inc(dateToIdx('2009-02-01-12:00'), r)
|
|
154
156
|
assert(!l.ok?)
|
|
155
157
|
assert(l.ok?(nil, true, r))
|
|
156
|
-
l.inc(
|
|
158
|
+
l.inc(dateToIdx('2009-02-01-13:00'), r)
|
|
157
159
|
assert(!l.ok?)
|
|
158
160
|
assert(!l.ok?(nil, true, r))
|
|
159
161
|
end
|
|
160
162
|
|
|
163
|
+
private
|
|
164
|
+
|
|
165
|
+
def dateToIdx(date)
|
|
166
|
+
@p.dateToIdx(TjTime.new(date))
|
|
167
|
+
end
|
|
168
|
+
|
|
161
169
|
end
|
|
162
170
|
|
|
163
171
|
end
|
data/test/test_Scheduler.rb
CHANGED
|
@@ -39,10 +39,10 @@ class TestScheduler < Test::Unit::TestCase
|
|
|
39
39
|
path = File.dirname(__FILE__) + '/'
|
|
40
40
|
Dir.glob(path + 'TestSuite/Scheduler/Correct/*.tjp').each do |f|
|
|
41
41
|
ENV['TZ'] = 'Europe/Berlin'
|
|
42
|
-
tj = TaskJuggler.new(
|
|
42
|
+
tj = TaskJuggler.new(false)
|
|
43
43
|
assert(tj.parse([ f ]), "Parser failed for #{f}")
|
|
44
44
|
assert(tj.schedule, "Scheduler failed for #{f}")
|
|
45
|
-
|
|
45
|
+
checkMessages(tj, f)
|
|
46
46
|
end
|
|
47
47
|
end
|
|
48
48
|
|
|
@@ -39,8 +39,8 @@ class TestPropertySet < Test::Unit::TestCase
|
|
|
39
39
|
sas1.project = @p
|
|
40
40
|
assert_equal(0, TaskJuggler::ShiftAssignments.scoreboards.length)
|
|
41
41
|
sas1.addAssignment(sa1 = TaskJuggler::ShiftAssignment.new(@s1,
|
|
42
|
-
TaskJuggler::
|
|
43
|
-
|
|
42
|
+
TaskJuggler::TimeInterval.new(TaskJuggler::TjTime.new('2008-08-01'),
|
|
43
|
+
TaskJuggler::TjTime.new('2008-08-05'))))
|
|
44
44
|
assert_equal(1, TaskJuggler::ShiftAssignments.scoreboards.length)
|
|
45
45
|
|
|
46
46
|
# Call finalizer directly to check for runtime errors that would otherwise
|
|
@@ -54,22 +54,22 @@ class TestPropertySet < Test::Unit::TestCase
|
|
|
54
54
|
sas1.project = @p
|
|
55
55
|
assert_equal(0, TaskJuggler::ShiftAssignments.scoreboards.length)
|
|
56
56
|
sas1.addAssignment(TaskJuggler::ShiftAssignment.new(@s1,
|
|
57
|
-
TaskJuggler::
|
|
58
|
-
|
|
57
|
+
TaskJuggler::TimeInterval.new(TaskJuggler::TjTime.new('2008-08-01'),
|
|
58
|
+
TaskJuggler::TjTime.new('2008-08-05'))))
|
|
59
59
|
|
|
60
60
|
sas2 = TaskJuggler::ShiftAssignments.new
|
|
61
61
|
sas2.project = @p
|
|
62
62
|
sas2.addAssignment(TaskJuggler::ShiftAssignment.new(@s1,
|
|
63
|
-
TaskJuggler::
|
|
64
|
-
|
|
63
|
+
TaskJuggler::TimeInterval.new(TaskJuggler::TjTime.new('2008-08-01'),
|
|
64
|
+
TaskJuggler::TjTime.new('2008-08-05'))))
|
|
65
65
|
|
|
66
66
|
assert_equal(1, TaskJuggler::ShiftAssignments.scoreboards.length)
|
|
67
67
|
|
|
68
68
|
sas3 = TaskJuggler::ShiftAssignments.new
|
|
69
69
|
sas3.project = @p
|
|
70
70
|
sas3.addAssignment(TaskJuggler::ShiftAssignment.new(@s2,
|
|
71
|
-
TaskJuggler::
|
|
72
|
-
|
|
71
|
+
TaskJuggler::TimeInterval.new(TaskJuggler::TjTime.new('2008-08-01'),
|
|
72
|
+
TaskJuggler::TjTime.new('2008-08-05'))))
|
|
73
73
|
|
|
74
74
|
assert_equal(2, TaskJuggler::ShiftAssignments.scoreboards.length)
|
|
75
75
|
|
data/test/test_WorkingHours.rb
CHANGED
|
@@ -165,8 +165,8 @@ class TestLimits < Test::Unit::TestCase
|
|
|
165
165
|
[ '2010-09-20-17:00', '2010-09-21-10:00' ]
|
|
166
166
|
]
|
|
167
167
|
workTimes.each do |iv|
|
|
168
|
-
assert(!wh.timeOff?(
|
|
169
|
-
|
|
168
|
+
assert(!wh.timeOff?(TimeInterval.new(TjTime.new(iv[0]),
|
|
169
|
+
TjTime.new(iv[1]))),
|
|
170
170
|
"Work time interval #{iv[0]} - #{iv[1]} failed")
|
|
171
171
|
end
|
|
172
172
|
|
|
@@ -178,8 +178,8 @@ class TestLimits < Test::Unit::TestCase
|
|
|
178
178
|
]
|
|
179
179
|
|
|
180
180
|
offTimes.each do |iv|
|
|
181
|
-
assert(wh.timeOff?(
|
|
182
|
-
|
|
181
|
+
assert(wh.timeOff?(TimeInterval.new(TjTime.new(iv[0]),
|
|
182
|
+
TjTime.new(iv[1]))),
|
|
183
183
|
"Off time interval #{iv[0]} - #{iv[1]} failed")
|
|
184
184
|
end
|
|
185
185
|
end
|