taskjuggler 3.6.0 → 3.7.2

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.
Files changed (434) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG +69 -0
  3. data/Rakefile +4 -1
  4. data/data/css/tjreport.css +4 -0
  5. data/data/tjp.vim +9 -3
  6. data/examples/ProjectTemplate/template.tjp +10 -10
  7. data/examples/Tutorial/tutorial.tjp +4 -4
  8. data/lib/taskjuggler/Allocation.rb +1 -1
  9. data/lib/taskjuggler/AppConfig.rb +1 -1
  10. data/lib/taskjuggler/AttributeBase.rb +10 -4
  11. data/lib/taskjuggler/Attributes.rb +2 -2
  12. data/lib/taskjuggler/BatchProcessor.rb +69 -58
  13. data/lib/taskjuggler/FileList.rb +1 -1
  14. data/lib/taskjuggler/Interval.rb +10 -12
  15. data/lib/taskjuggler/Journal.rb +2 -2
  16. data/lib/taskjuggler/LogicalFunction.rb +1 -1
  17. data/lib/taskjuggler/LogicalOperation.rb +7 -4
  18. data/lib/taskjuggler/MessageHandler.rb +1 -2
  19. data/lib/taskjuggler/PTNProxy.rb +1 -1
  20. data/lib/taskjuggler/Project.rb +27 -22
  21. data/lib/taskjuggler/PropertyList.rb +7 -1
  22. data/lib/taskjuggler/PropertySet.rb +1 -1
  23. data/lib/taskjuggler/PropertyTreeNode.rb +5 -3
  24. data/lib/taskjuggler/Query.rb +3 -3
  25. data/lib/taskjuggler/RealFormat.rb +1 -1
  26. data/lib/taskjuggler/Resource.rb +2 -2
  27. data/lib/taskjuggler/ResourceScenario.rb +66 -6
  28. data/lib/taskjuggler/RichText/Snip.rb +1 -1
  29. data/lib/taskjuggler/RuntimeConfig.rb +2 -2
  30. data/lib/taskjuggler/Scoreboard.rb +5 -2
  31. data/lib/taskjuggler/SheetHandlerBase.rb +5 -4
  32. data/lib/taskjuggler/Shift.rb +2 -2
  33. data/lib/taskjuggler/ShiftAssignments.rb +1 -1
  34. data/lib/taskjuggler/StatusSheetReceiver.rb +2 -2
  35. data/lib/taskjuggler/StatusSheetSender.rb +1 -1
  36. data/lib/taskjuggler/TaskJuggler.rb +4 -4
  37. data/lib/taskjuggler/TaskScenario.rb +7 -2
  38. data/lib/taskjuggler/TextParser/Scanner.rb +4 -4
  39. data/lib/taskjuggler/TextParser.rb +1 -1
  40. data/lib/taskjuggler/TimeSheetReceiver.rb +2 -2
  41. data/lib/taskjuggler/TimeSheetSender.rb +1 -1
  42. data/lib/taskjuggler/TimeSheets.rb +5 -4
  43. data/lib/taskjuggler/Tj3AppBase.rb +23 -9
  44. data/lib/taskjuggler/Tj3Config.rb +5 -3
  45. data/lib/taskjuggler/TjpExample.rb +3 -1
  46. data/lib/taskjuggler/TjpSyntaxRules.rb +166 -133
  47. data/lib/taskjuggler/UTF8String.rb +3 -3
  48. data/lib/taskjuggler/WorkingHours.rb +3 -3
  49. data/lib/taskjuggler/XMLDocument.rb +1 -1
  50. data/lib/taskjuggler/XMLElement.rb +12 -1
  51. data/lib/taskjuggler/apps/Tj3.rb +3 -1
  52. data/lib/taskjuggler/apps/Tj3Client.rb +3 -2
  53. data/lib/taskjuggler/apps/Tj3Daemon.rb +5 -3
  54. data/lib/taskjuggler/apps/Tj3Man.rb +4 -2
  55. data/lib/taskjuggler/apps/Tj3SsReceiver.rb +3 -1
  56. data/lib/taskjuggler/apps/Tj3SsSender.rb +3 -1
  57. data/lib/taskjuggler/apps/Tj3TsReceiver.rb +3 -1
  58. data/lib/taskjuggler/apps/Tj3TsSender.rb +3 -1
  59. data/lib/taskjuggler/apps/Tj3TsSummary.rb +3 -1
  60. data/lib/taskjuggler/apps/Tj3WebD.rb +4 -2
  61. data/lib/taskjuggler/daemon/ProjectServer.rb +2 -2
  62. data/lib/taskjuggler/deep_copy.rb +1 -1
  63. data/lib/taskjuggler/reports/CSVFile.rb +4 -4
  64. data/lib/taskjuggler/reports/ChartPlotter.rb +1 -1
  65. data/lib/taskjuggler/reports/GanttChart.rb +8 -2
  66. data/lib/taskjuggler/reports/GanttHeader.rb +11 -1
  67. data/lib/taskjuggler/reports/GanttLine.rb +6 -0
  68. data/lib/taskjuggler/reports/ICalReport.rb +1 -1
  69. data/lib/taskjuggler/reports/MspXmlRE.rb +5 -3
  70. data/lib/taskjuggler/reports/Report.rb +6 -6
  71. data/lib/taskjuggler/reports/ReportTableCell.rb +1 -1
  72. data/lib/taskjuggler/reports/TableReport.rb +7 -12
  73. data/lib/taskjuggler/reports/TjpExportRE.rb +1 -5
  74. data/lib/taskjuggler/reports/TraceReport.rb +2 -2
  75. data/lib/taskjuggler/version.rb +1 -0
  76. data/man/tj3.1 +130 -0
  77. data/man/tj3client.1 +145 -0
  78. data/man/tj3d.1 +93 -0
  79. data/man/tj3man.1 +76 -0
  80. data/man/tj3ss_receiver.1 +86 -0
  81. data/man/tj3ss_sender.1 +100 -0
  82. data/man/tj3ts_receiver.1 +86 -0
  83. data/man/tj3ts_sender.1 +92 -0
  84. data/man/tj3ts_summary.1 +104 -0
  85. data/man/tj3webd.1 +86 -0
  86. data/manual/Day_To_Day_Juggling +8 -8
  87. data/manual/Installation +6 -6
  88. data/manual/List_Attributes +1 -1
  89. data/manual/Rich_Text_Attributes +6 -5
  90. data/manual/Software +6 -6
  91. data/manual/TaskJuggler_Internals +4 -4
  92. data/manual/The_TaskJuggler_Syntax +5 -5
  93. data/manual/Tutorial +13 -11
  94. data/manual/html/Day_To_Day_Juggling.html +9 -9
  95. data/manual/html/Getting_Started.html +2 -2
  96. data/manual/html/How_To_Contribute.html +2 -2
  97. data/manual/html/Installation.html +8 -8
  98. data/manual/html/Intro.html +2 -2
  99. data/manual/html/List_Attributes.html +3 -3
  100. data/manual/html/Reporting_Bugs.html +2 -2
  101. data/manual/html/Rich_Text_Attributes.html +5 -5
  102. data/manual/html/Software.html +7 -7
  103. data/manual/html/TaskJuggler_2x_Migration.html +2 -2
  104. data/manual/html/TaskJuggler_Internals.html +6 -6
  105. data/manual/html/The_TaskJuggler_Syntax.html +6 -6
  106. data/manual/html/Tutorial.html +17 -14
  107. data/manual/html/account.html +3 -3
  108. data/manual/html/account.task.html +2 -2
  109. data/manual/html/accountprefix.html +2 -2
  110. data/manual/html/accountreport.html +3 -3
  111. data/manual/html/accountroot.html +2 -2
  112. data/manual/html/active.html +3 -3
  113. data/manual/html/adopt.task.html +2 -2
  114. data/manual/html/aggregate.html +2 -2
  115. data/manual/html/alert.html +3 -3
  116. data/manual/html/alertlevels.html +2 -2
  117. data/manual/html/allocate.html +3 -3
  118. data/manual/html/alphabet.html +1 -1
  119. data/manual/html/alternative.html +2 -2
  120. data/manual/html/author.html +2 -2
  121. data/manual/html/auxdir.html +2 -2
  122. data/manual/html/auxdir.report.html +2 -2
  123. data/manual/html/balance.html +2 -2
  124. data/manual/html/booking.resource.html +4 -4
  125. data/manual/html/booking.task.html +4 -4
  126. data/manual/html/caption.html +2 -2
  127. data/manual/html/cellcolor.column.html +3 -3
  128. data/manual/html/celltext.column.html +3 -3
  129. data/manual/html/center.html +2 -2
  130. data/manual/html/charge.html +2 -2
  131. data/manual/html/chargeset.html +2 -2
  132. data/manual/html/columnid.html +21 -14
  133. data/manual/html/columns.html +2 -2
  134. data/manual/html/complete.html +2 -2
  135. data/manual/html/copyright.html +2 -2
  136. data/manual/html/credits.html +2 -2
  137. data/manual/html/css/tjreport.css +4 -0
  138. data/manual/html/currency.html +2 -2
  139. data/manual/html/currencyformat.html +3 -3
  140. data/manual/html/dailymax.html +2 -2
  141. data/manual/html/dailymin.html +3 -3
  142. data/manual/html/dailyworkinghours.html +2 -2
  143. data/manual/html/date.extend.html +2 -2
  144. data/manual/html/date.html +5 -5
  145. data/manual/html/definitions.html +4 -4
  146. data/manual/html/depends.html +4 -4
  147. data/manual/html/details.html +2 -2
  148. data/manual/html/disabled.html +2 -2
  149. data/manual/html/duration.html +2 -2
  150. data/manual/html/efficiency.html +3 -3
  151. data/manual/html/effort.html +2 -2
  152. data/manual/html/effortdone.html +2 -2
  153. data/manual/html/effortleft.html +2 -2
  154. data/manual/html/email.html +2 -2
  155. data/manual/html/enabled.html +2 -2
  156. data/manual/html/end.column.html +3 -3
  157. data/manual/html/end.html +4 -4
  158. data/manual/html/end.limit.html +2 -2
  159. data/manual/html/end.report.html +2 -2
  160. data/manual/html/end.timesheet.html +3 -3
  161. data/manual/html/endcredit.html +3 -3
  162. data/manual/html/epilog.html +2 -2
  163. data/manual/html/export.html +3 -3
  164. data/manual/html/extend.html +3 -3
  165. data/manual/html/fail.html +3 -3
  166. data/manual/html/fdl.html +2 -2
  167. data/manual/html/flags.account.html +2 -2
  168. data/manual/html/flags.html +2 -2
  169. data/manual/html/flags.journalentry.html +2 -2
  170. data/manual/html/flags.report.html +2 -2
  171. data/manual/html/flags.resource.html +2 -2
  172. data/manual/html/flags.statussheet.html +2 -2
  173. data/manual/html/flags.task.html +2 -2
  174. data/manual/html/flags.timesheet.html +2 -2
  175. data/manual/html/fontcolor.column.html +3 -3
  176. data/manual/html/footer.html +2 -2
  177. data/manual/html/formats.export.html +3 -3
  178. data/manual/html/formats.html +3 -3
  179. data/manual/html/functions.html +5 -5
  180. data/manual/html/gapduration.html +2 -2
  181. data/manual/html/gaplength.html +2 -2
  182. data/manual/html/halign.center.html +2 -2
  183. data/manual/html/halign.column.html +3 -3
  184. data/manual/html/halign.left.html +2 -2
  185. data/manual/html/halign.right.html +2 -2
  186. data/manual/html/hasalert.html +2 -2
  187. data/manual/html/header.html +2 -2
  188. data/manual/html/headline.html +2 -2
  189. data/manual/html/height.html +3 -3
  190. data/manual/html/hideaccount.html +3 -3
  191. data/manual/html/hidejournalentry.html +2 -2
  192. data/manual/html/hidereport.html +3 -3
  193. data/manual/html/hideresource.html +3 -3
  194. data/manual/html/hidetask.html +3 -3
  195. data/manual/html/icalreport.html +9 -3
  196. data/manual/html/include.macro.html +3 -3
  197. data/manual/html/include.project.html +3 -3
  198. data/manual/html/include.properties.html +3 -3
  199. data/manual/html/index.html +1 -1
  200. data/manual/html/inherit.extend.html +3 -3
  201. data/manual/html/interval1.html +3 -3
  202. data/manual/html/interval2.html +3 -3
  203. data/manual/html/interval3.html +2 -2
  204. data/manual/html/interval4.html +2 -2
  205. data/manual/html/isactive.html +2 -2
  206. data/manual/html/ischildof.html +2 -2
  207. data/manual/html/isdependencyof.html +2 -2
  208. data/manual/html/isdutyof.html +2 -2
  209. data/manual/html/isfeatureof.html +2 -2
  210. data/manual/html/isleaf.html +2 -2
  211. data/manual/html/ismilestone.html +2 -2
  212. data/manual/html/isongoing.html +3 -3
  213. data/manual/html/isresource.html +2 -2
  214. data/manual/html/isresponsibilityof.html +2 -2
  215. data/manual/html/istask.html +2 -2
  216. data/manual/html/isvalid.html +2 -2
  217. data/manual/html/journalattributes.html +2 -2
  218. data/manual/html/journalentry.html +3 -3
  219. data/manual/html/journalmode.html +3 -3
  220. data/manual/html/leaveallowance.html +3 -3
  221. data/manual/html/leaves.html +3 -3
  222. data/manual/html/left.html +2 -2
  223. data/manual/html/length.html +3 -3
  224. data/manual/html/limits.allocate.html +2 -2
  225. data/manual/html/limits.html +2 -2
  226. data/manual/html/limits.resource.html +2 -2
  227. data/manual/html/limits.task.html +2 -2
  228. data/manual/html/listitem.column.html +3 -3
  229. data/manual/html/listtype.column.html +2 -2
  230. data/manual/html/loadunit.html +2 -2
  231. data/manual/html/logicalexpression.html +4 -4
  232. data/manual/html/logicalflagexpression.html +4 -4
  233. data/manual/html/macro.html +4 -4
  234. data/manual/html/managers.html +2 -2
  235. data/manual/html/mandatory.html +4 -4
  236. data/manual/html/markdate.html +69 -0
  237. data/manual/html/maxend.html +4 -4
  238. data/manual/html/maximum.html +2 -2
  239. data/manual/html/maxstart.html +2 -2
  240. data/manual/html/milestone.html +3 -3
  241. data/manual/html/minend.html +2 -2
  242. data/manual/html/minimum.html +2 -2
  243. data/manual/html/minstart.html +2 -2
  244. data/manual/html/monthlymax.html +2 -2
  245. data/manual/html/monthlymin.html +3 -3
  246. data/manual/html/navbar.html +5 -1
  247. data/manual/html/navigator.html +2 -2
  248. data/manual/html/newtask.html +3 -3
  249. data/manual/html/nikureport.html +2 -2
  250. data/manual/html/note.task.html +4 -4
  251. data/manual/html/novevents.html +68 -0
  252. data/manual/html/now.html +4 -4
  253. data/manual/html/number.extend.html +2 -2
  254. data/manual/html/numberformat.html +2 -2
  255. data/manual/html/onend.html +2 -2
  256. data/manual/html/onstart.html +2 -2
  257. data/manual/html/opennodes.html +2 -2
  258. data/manual/html/outputdir.html +3 -3
  259. data/manual/html/overtime.booking.html +2 -2
  260. data/manual/html/period.column.html +2 -2
  261. data/manual/html/period.limit.html +2 -2
  262. data/manual/html/period.report.html +2 -2
  263. data/manual/html/period.task.html +2 -2
  264. data/manual/html/persistent.html +3 -3
  265. data/manual/html/precedes.html +5 -5
  266. data/manual/html/priority.html +4 -4
  267. data/manual/html/priority.timesheet.html +3 -3
  268. data/manual/html/project.html +4 -4
  269. data/manual/html/projectid.html +2 -2
  270. data/manual/html/projectid.task.html +3 -3
  271. data/manual/html/projectids.html +2 -2
  272. data/manual/html/projection.html +2 -2
  273. data/manual/html/prolog.html +2 -2
  274. data/manual/html/properties.html +3 -3
  275. data/manual/html/purge.html +2 -2
  276. data/manual/html/rate.html +2 -2
  277. data/manual/html/rate.resource.html +2 -2
  278. data/manual/html/rawhtmlhead.html +3 -3
  279. data/manual/html/reference.extend.html +2 -2
  280. data/manual/html/remaining.html +3 -3
  281. data/manual/html/replace.html +2 -2
  282. data/manual/html/reportprefix.html +2 -2
  283. data/manual/html/resource.html +3 -3
  284. data/manual/html/resourceattributes.html +2 -2
  285. data/manual/html/resourceprefix.html +2 -2
  286. data/manual/html/resourcereport.html +4 -4
  287. data/manual/html/resourceroot.html +3 -3
  288. data/manual/html/resources.limit.html +2 -2
  289. data/manual/html/responsible.html +2 -2
  290. data/manual/html/richtext.extend.html +2 -2
  291. data/manual/html/right.html +2 -2
  292. data/manual/html/rollupaccount.html +3 -3
  293. data/manual/html/rollupresource.html +3 -3
  294. data/manual/html/rolluptask.html +3 -3
  295. data/manual/html/scale.column.html +2 -2
  296. data/manual/html/scenario.html +3 -3
  297. data/manual/html/scenario.ical.html +3 -3
  298. data/manual/html/scenarios.export.html +2 -2
  299. data/manual/html/scenarios.html +2 -2
  300. data/manual/html/scenariospecific.extend.html +2 -2
  301. data/manual/html/scheduled.html +2 -2
  302. data/manual/html/scheduling.html +6 -6
  303. data/manual/html/schedulingmode.html +2 -2
  304. data/manual/html/select.html +4 -4
  305. data/manual/html/selfcontained.html +2 -2
  306. data/manual/html/shift.allocate.html +2 -2
  307. data/manual/html/shift.html +3 -3
  308. data/manual/html/shift.resource.html +4 -4
  309. data/manual/html/shift.task.html +2 -2
  310. data/manual/html/shift.timesheet.html +2 -2
  311. data/manual/html/shifts.allocate.html +2 -2
  312. data/manual/html/shifts.resource.html +2 -2
  313. data/manual/html/shifts.task.html +3 -3
  314. data/manual/html/shorttimeformat.html +3 -3
  315. data/manual/html/sloppy.booking.html +2 -2
  316. data/manual/html/sloppy.projection.html +2 -2
  317. data/manual/html/sortaccounts.html +2 -2
  318. data/manual/html/sortjournalentries.html +2 -2
  319. data/manual/html/sortresources.html +2 -2
  320. data/manual/html/sorttasks.html +2 -2
  321. data/manual/html/start.column.html +3 -3
  322. data/manual/html/start.html +4 -4
  323. data/manual/html/start.limit.html +2 -2
  324. data/manual/html/start.report.html +2 -2
  325. data/manual/html/startcredit.html +3 -3
  326. data/manual/html/status.statussheet.html +2 -2
  327. data/manual/html/status.timesheet.html +2 -2
  328. data/manual/html/statussheet.html +2 -2
  329. data/manual/html/statussheetreport.html +3 -3
  330. data/manual/html/strict.projection.html +2 -2
  331. data/manual/html/summary.html +2 -2
  332. data/manual/html/supplement.html +2 -2
  333. data/manual/html/supplement.resource.html +2 -2
  334. data/manual/html/supplement.task.html +2 -2
  335. data/manual/html/tagfile.html +3 -3
  336. data/manual/html/task.html +3 -3
  337. data/manual/html/task.statussheet.html +3 -3
  338. data/manual/html/task.timesheet.html +2 -2
  339. data/manual/html/taskattributes.html +2 -2
  340. data/manual/html/taskprefix.html +2 -2
  341. data/manual/html/taskreport.html +4 -4
  342. data/manual/html/taskroot.export.html +2 -2
  343. data/manual/html/taskroot.html +2 -2
  344. data/manual/html/text.extend.html +2 -2
  345. data/manual/html/textreport.html +4 -4
  346. data/manual/html/timeformat.html +3 -3
  347. data/manual/html/timeformat1.html +2 -2
  348. data/manual/html/timeformat2.html +2 -2
  349. data/manual/html/timeoff.nikureport.html +2 -2
  350. data/manual/html/timesheet.html +3 -3
  351. data/manual/html/timesheetreport.html +3 -3
  352. data/manual/html/timezone.export.html +2 -2
  353. data/manual/html/timezone.html +2 -2
  354. data/manual/html/timezone.report.html +2 -2
  355. data/manual/html/timezone.shift.html +2 -2
  356. data/manual/html/timingresolution.html +2 -2
  357. data/manual/html/title.column.html +2 -2
  358. data/manual/html/title.html +2 -2
  359. data/manual/html/toc.html +157 -143
  360. data/manual/html/tooltip.column.html +3 -3
  361. data/manual/html/tracereport.html +7 -7
  362. data/manual/html/trackingscenario.html +3 -3
  363. data/manual/html/treelevel.html +2 -2
  364. data/manual/html/vacation.html +2 -2
  365. data/manual/html/vacation.resource.html +2 -2
  366. data/manual/html/vacation.shift.html +2 -2
  367. data/manual/html/warn.html +4 -4
  368. data/manual/html/weeklymax.html +2 -2
  369. data/manual/html/weeklymin.html +3 -3
  370. data/manual/html/weekstartsmonday.html +2 -2
  371. data/manual/html/weekstartssunday.html +2 -2
  372. data/manual/html/width.column.html +2 -2
  373. data/manual/html/width.html +3 -3
  374. data/manual/html/work.html +3 -3
  375. data/manual/html/workinghours.project.html +3 -3
  376. data/manual/html/workinghours.resource.html +2 -2
  377. data/manual/html/workinghours.shift.html +2 -2
  378. data/manual/html/yearlyworkingdays.html +2 -2
  379. data/spec/ProjectBroker_spec.rb +6 -6
  380. data/spec/StatusSheets_spec.rb +1 -1
  381. data/spec/TimeSheets_spec.rb +1 -1
  382. data/spec/TraceReport_spec.rb +1 -1
  383. data/spec/support/DaemonControl.rb +2 -3
  384. data/taskjuggler.gemspec +7 -10
  385. data/tasks/changelog.rake +2 -0
  386. data/tasks/gem.rake +3 -1
  387. data/tasks/help2man.rake +18 -0
  388. data/tasks/kate.rake +2 -0
  389. data/tasks/manual.rake +3 -1
  390. data/tasks/test.rake +5 -0
  391. data/tasks/vim.rake +2 -0
  392. data/test/TestSuite/CSV-Reports/quotes.tjp +20 -0
  393. data/test/TestSuite/CSV-Reports/refs/quotes.csv +5 -0
  394. data/test/TestSuite/Export-Reports/refs/AccountReport.tjp +0 -1
  395. data/test/TestSuite/Export-Reports/refs/AdoptedTasks.tjp +0 -2
  396. data/test/TestSuite/Export-Reports/refs/AlertLevels.tjp +0 -1
  397. data/test/TestSuite/Export-Reports/refs/Allocate-1.tjp +0 -1
  398. data/test/TestSuite/Export-Reports/refs/AutoID.tjp +0 -1
  399. data/test/TestSuite/Export-Reports/refs/AutoMacros.tjp +0 -1
  400. data/test/TestSuite/Export-Reports/refs/Currencyformat.tjp +0 -1
  401. data/test/TestSuite/Export-Reports/refs/CustomAttributes.tjp +0 -2
  402. data/test/TestSuite/Export-Reports/refs/Depends1.tjp +0 -1
  403. data/test/TestSuite/Export-Reports/refs/Durations.tjp +0 -1
  404. data/test/TestSuite/Export-Reports/refs/Efficiency.tjp +0 -1
  405. data/test/TestSuite/Export-Reports/refs/Gap.tjp +0 -3
  406. data/test/TestSuite/Export-Reports/refs/Include.tjp +0 -1
  407. data/test/TestSuite/Export-Reports/refs/Journal.tjp +0 -1
  408. data/test/TestSuite/Export-Reports/refs/Macro-1.tjp +0 -1
  409. data/test/TestSuite/Export-Reports/refs/Macro-2.tjp +0 -2
  410. data/test/TestSuite/Export-Reports/refs/Macro-3.tjp +0 -1
  411. data/test/TestSuite/Export-Reports/refs/Manager.tjp +0 -1
  412. data/test/TestSuite/Export-Reports/refs/Milestone.tjp +0 -2
  413. data/test/TestSuite/Export-Reports/refs/Numberformat.tjp +0 -1
  414. data/test/TestSuite/Export-Reports/refs/Precedes1.tjp +0 -1
  415. data/test/TestSuite/Export-Reports/refs/Project.tjp +0 -1
  416. data/test/TestSuite/Export-Reports/refs/ProjectIDs.tjp +0 -3
  417. data/test/TestSuite/Export-Reports/refs/Reports.tjp +0 -1
  418. data/test/TestSuite/Export-Reports/refs/Resource.tjp +0 -1
  419. data/test/TestSuite/Export-Reports/refs/ResourceRoot.tjp +0 -1
  420. data/test/TestSuite/Export-Reports/refs/RollupResource.tjp +0 -1
  421. data/test/TestSuite/Export-Reports/refs/Scenario.tjp +0 -2
  422. data/test/TestSuite/Export-Reports/refs/Timezone.tjp +0 -1
  423. data/test/TestSuite/Export-Reports/refs/Vacation.tjp +0 -1
  424. data/test/TestSuite/Export-Reports/refs/navigator.tjp +0 -4
  425. data/test/TestSuite/Export-Reports/refs/template.tjp +0 -6
  426. data/test/TestSuite/Export-Reports/refs/textreport.tjp +0 -1
  427. data/test/TestSuite/Export-Reports/refs/tutorial.tjp +0 -8
  428. data/test/TestSuite/Syntax/Correct/Booking.tjp +1 -1
  429. data/test/TestSuite/Syntax/Correct/Currencyformat.tjp +1 -1
  430. data/test/TestSuite/Syntax/Correct/template.tjp +3 -3
  431. data/test/TestSuite/Syntax/Correct/tutorial.tjp +8 -3
  432. data/test/test_BatchProcessor.rb +6 -3
  433. data/test/test_ProjectFileScanner.rb +8 -8
  434. metadata +47 -11
data/tasks/manual.rake CHANGED
@@ -2,10 +2,12 @@
2
2
 
3
3
  require 'taskjuggler/apps/Tj3Man'
4
4
 
5
+ CLOBBER.include "manual/html/"
6
+
5
7
  desc 'Generate User Manual'
6
8
  task :manual do
7
9
  htmldir = 'manual/html'
8
- rm_rf htmldir if File.exists? htmldir
10
+ rm_rf htmldir if File.exist? htmldir
9
11
  mkdir_p htmldir
10
12
  # Make sure we can run 'rake manual' from all subdirs.
11
13
  ENV['TASKJUGGLER_DATA_PATH'] =
data/tasks/test.rake CHANGED
@@ -2,6 +2,11 @@ $:.unshift File.join(File.dirname(__FILE__), '..', 'test')
2
2
 
3
3
  require 'rake/testtask'
4
4
 
5
+ CLEAN.include "test/TestSuite/Export-Reports/refs/Leave.tjp"
6
+ CLEAN.include "test/TestSuite/Export-Reports/refs/ListAttributes.tjp"
7
+ CLEAN.include "test/TestSuite/Export-Reports/refs/Macro-4.tjp"
8
+ CLEAN.include "test/TestSuite/Export-Reports/refs/TraceReport.tjp"
9
+
5
10
  # TEST TASK
6
11
  desc 'Run all unit tests in the test directory'
7
12
  Rake::TestTask.new(:unittest) do |t|
data/tasks/vim.rake CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  require 'taskjuggler/VimSyntax'
4
4
 
5
+ CLOBBER.include "data/tjp.vim"
6
+
5
7
  desc 'Generate vim.tjp Vim syntax file'
6
8
  task :vim do
7
9
  TaskJuggler::VimSyntax.new.generate('data/tjp.vim')
@@ -0,0 +1,20 @@
1
+ project "targets" "1.0" 2007-12-16 +3m {
2
+ timezone 'UTC'
3
+ }
4
+
5
+ task t1 "T1"
6
+ task t2 "T2" {
7
+ depends !t1
8
+ }
9
+ task t3 "T3" {
10
+ depends !t1
11
+ }
12
+ task t4 "T4 with \"quotes\"" {
13
+ depends !t3
14
+ }
15
+
16
+ taskreport '.' {
17
+ formats csv
18
+ columns name, targets
19
+ }
20
+
@@ -0,0 +1,5 @@
1
+ "Name";"Targets"
2
+ "T1";"T2 (t2) 2007-12-16, T4 with ""quotes"" (t4) 2007-12-16"
3
+ "T2";""
4
+ "T3";"T4 with ""quotes"" (t4) 2007-12-16"
5
+ "T4 with ""quotes""";""
@@ -45,7 +45,6 @@ task _Task_1 "Products" {
45
45
  task _Task_6 "Final Payment" {
46
46
  depends _Task_1.mf
47
47
  start 2012-10-22-17:00-+0000
48
- milestone
49
48
  scheduled
50
49
  }
51
50
  }
@@ -10,12 +10,10 @@ projectids prj
10
10
 
11
11
  task t1 "T1" {
12
12
  start 2011-03-05-00:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  task t2 "T2" {
17
16
  start 2011-03-05-00:00-+0000
18
- milestone
19
17
  scheduled
20
18
  }
21
19
  task t3 "T3" {
@@ -15,7 +15,6 @@ projectids prj
15
15
 
16
16
  task _Task_1 "Holiday Season" {
17
17
  start 2011-11-24-00:00-+0000
18
- milestone
19
18
  scheduled
20
19
  }
21
20
  supplement task _Task_1 {
@@ -25,7 +25,6 @@ task t1 "Task 1" {
25
25
  }
26
26
  task m1 "Milestone 1" {
27
27
  start 2003-06-05-06:00-+0000
28
- milestone
29
28
  scheduled
30
29
  }
31
30
  }
@@ -32,7 +32,6 @@ resource _Resource_1 "Foo" {
32
32
  task _Task_1 "Foo" {
33
33
  task _Task_2 "Bar" {
34
34
  start 2009-10-04-00:00-+0000
35
- milestone
36
35
  scheduled
37
36
  }
38
37
  }
@@ -10,7 +10,6 @@ projectids prj
10
10
 
11
11
  task items "Project breakdown" {
12
12
  start 2006-09-22-00:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  supplement task items {
@@ -10,7 +10,6 @@ projectids prj
10
10
 
11
11
  task t "Task" {
12
12
  start 2007-01-01-00:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  supplement task t {
@@ -38,9 +38,7 @@ resource _Resource_1 "R"
38
38
 
39
39
  task _Task_1 "T" {
40
40
  start 2013-04-24-00:00-+0000
41
- milestone
42
41
  scheduled
43
- two:milestone
44
42
  }
45
43
  supplement task _Task_1 {
46
44
  Claim "A '''big''' statement."
@@ -11,7 +11,6 @@ projectids prj
11
11
  task foo1 "foo1" {
12
12
  task foo2 "foo2" {
13
13
  start 2007-12-04-07:00-+0000
14
- milestone
15
14
  scheduled
16
15
  }
17
16
  task foo3 "foo3" {
@@ -18,7 +18,6 @@ task t "Enclosing" {
18
18
  }
19
19
  task intervalTask "Interval Task" {
20
20
  start 2007-06-17-06:00-+0000
21
- milestone
22
21
  scheduled
23
22
  }
24
23
  task lengthTask "Length Task" {
@@ -14,7 +14,6 @@ resource confRoom "Conference Room"
14
14
 
15
15
  task t "An important date" {
16
16
  start 2007-07-21-06:00-+0000
17
- milestone
18
17
  scheduled
19
18
  }
20
19
  supplement task t {
@@ -10,19 +10,16 @@ projectids prj
10
10
 
11
11
  task t1 "Task 1" {
12
12
  start 2005-05-29-06:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  task t2 "Task 2" {
17
16
  depends t1
18
17
  start 2005-06-03-06:00-+0000
19
- milestone
20
18
  scheduled
21
19
  }
22
20
  task t3 "Task 3" {
23
21
  depends t1
24
22
  start 2005-06-03-23:00-+0000
25
- milestone
26
23
  scheduled
27
24
  }
28
25
  supplement task t1 {
@@ -14,7 +14,6 @@ resource _Resource_4 "R2"
14
14
 
15
15
  task _Task_1 "Foo" {
16
16
  start 2010-02-26-00:00-+0000
17
- milestone
18
17
  scheduled
19
18
  }
20
19
  supplement task _Task_1 {
@@ -11,7 +11,6 @@ resource tux "Tux"
11
11
 
12
12
  task t1 "Task1" {
13
13
  start 2009-05-05-06:00-+0000
14
- milestone
15
14
  scheduled
16
15
  }
17
16
  supplement task t1 {
@@ -12,7 +12,6 @@ resource tux2 "Tux2"
12
12
 
13
13
  task t1 "Task1" {
14
14
  start 2008-01-18-00:00-+0000
15
- milestone
16
15
  scheduled
17
16
  }
18
17
  task t2 "Task2" {
@@ -10,12 +10,10 @@ projectids prj
10
10
 
11
11
  task _Task_1 " Crème brûlée Prepare " {
12
12
  start 2010-04-28-00:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  task _Task_2 "task" {
17
16
  start 2010-04-28-00:00-+0000
18
- milestone
19
17
  scheduled
20
18
  }
21
19
  supplement task _Task_1 {
@@ -10,7 +10,6 @@ projectids foo600
10
10
 
11
11
  task _Task_1 "foo" {
12
12
  start 2009-12-01-00:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  supplement task _Task_1 {
@@ -23,7 +23,6 @@ resource _Resource_1 "The Company" {
23
23
 
24
24
  task _Task_1 "T" {
25
25
  start 2010-04-03-00:00-+0000
26
- milestone
27
26
  scheduled
28
27
  }
29
28
  supplement task _Task_1 {
@@ -10,12 +10,10 @@ projectids prj
10
10
 
11
11
  task project_start "Project Start" {
12
12
  start 2005-07-15-06:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  task deadline "Important Deadline" {
17
16
  start 2005-07-20-06:00-+0000
18
- milestone
19
17
  scheduled
20
18
  }
21
19
  supplement task project_start {
@@ -10,7 +10,6 @@ projectids prj
10
10
 
11
11
  task t "Task" {
12
12
  start 2000-01-01-00:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  supplement task t {
@@ -11,7 +11,6 @@ projectids prj
11
11
  task foo1 "foo1" {
12
12
  task foo2 "foo2" {
13
13
  start 2003-12-04-07:00-+0000
14
- milestone
15
14
  scheduled
16
15
  }
17
16
  task foo3 "foo3" {
@@ -10,7 +10,6 @@ projectids prj
10
10
 
11
11
  task t "Task" {
12
12
  start 2007-01-01-07:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  supplement task t {
@@ -10,17 +10,14 @@ projectids prj, prj1, prj2
10
10
 
11
11
  task t1 "Task 1" {
12
12
  start 2006-08-22-06:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  task t2 "Task 2" {
17
16
  start 2006-08-22-06:00-+0000
18
- milestone
19
17
  scheduled
20
18
  }
21
19
  task t3 "Task 3" {
22
20
  start 2006-08-22-06:00-+0000
23
- milestone
24
21
  scheduled
25
22
  }
26
23
  supplement task t1 {
@@ -30,7 +30,6 @@ task t2 "FooTask2" {
30
30
  }
31
31
  task t3 "FooTask3" {
32
32
  start 2000-01-01-07:00-+0000
33
- milestone
34
33
  scheduled
35
34
  }
36
35
  supplement task t1 {
@@ -15,7 +15,6 @@ resource team "A team" {
15
15
 
16
16
  task t "An important date" {
17
17
  start 2005-06-10-06:00-+0000
18
- milestone
19
18
  scheduled
20
19
  }
21
20
  supplement task t {
@@ -19,7 +19,6 @@ resource r5 "R5"
19
19
 
20
20
  task _Task_1 "T" {
21
21
  start 2010-11-10-00:00-+0000
22
- milestone
23
22
  scheduled
24
23
  }
25
24
  supplement task _Task_1 {
@@ -19,7 +19,6 @@ resource r5 "R5"
19
19
 
20
20
  task _Task_1 "T" {
21
21
  start 2010-11-10-00:00-+0000
22
- milestone
23
22
  scheduled
24
23
  }
25
24
  supplement task _Task_1 {
@@ -16,10 +16,8 @@ projectids prj
16
16
 
17
17
  task t "Task" {
18
18
  start 2007-05-29-06:00-+0000
19
- milestone
20
19
  scheduled
21
20
  actual:start 2007-06-03-06:00-+0000
22
- actual:milestone
23
21
  }
24
22
  supplement task t {
25
23
  priority 500
@@ -10,7 +10,6 @@ projectids tz
10
10
 
11
11
  task item "Project" {
12
12
  start 2005-06-06-09:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  supplement task item {
@@ -16,7 +16,6 @@ resource tuxus "Tuxus"
16
16
 
17
17
  task t "An important date" {
18
18
  start 2005-07-22-06:00-+0000
19
- milestone
20
19
  scheduled
21
20
  }
22
21
  supplement task t {
@@ -11,24 +11,20 @@ projectids prj
11
11
  task foo "Foo" {
12
12
  task _Task_2 "Foo 1" {
13
13
  start 2011-12-12-00:00-+0000
14
- milestone
15
14
  scheduled
16
15
  }
17
16
  task _Task_3 "Foo 2" {
18
17
  start 2011-12-12-00:00-+0000
19
- milestone
20
18
  scheduled
21
19
  }
22
20
  }
23
21
  task bar "Bar" {
24
22
  task _Task_5 "Bar 1" {
25
23
  start 2011-12-12-00:00-+0000
26
- milestone
27
24
  scheduled
28
25
  }
29
26
  task _Task_6 "Bar 2" {
30
27
  start 2011-12-12-00:00-+0000
31
- milestone
32
28
  scheduled
33
29
  }
34
30
  }
@@ -18,12 +18,10 @@ task project "Project" {
18
18
  task wp1 "Workpackage 1" {
19
19
  task t1 "Task 1" {
20
20
  start 2011-11-11-05:00-+0000
21
- milestone
22
21
  scheduled
23
22
  }
24
23
  task t2 "Task 2" {
25
24
  start 2011-11-11-05:00-+0000
26
- milestone
27
25
  scheduled
28
26
  }
29
27
  }
@@ -31,12 +29,10 @@ task project "Project" {
31
29
  depends project.wp1
32
30
  task t1 "Task 1" {
33
31
  start 2011-11-11-05:00-+0000
34
- milestone
35
32
  scheduled
36
33
  }
37
34
  task t2 "Task 2" {
38
35
  start 2011-11-11-05:00-+0000
39
- milestone
40
36
  scheduled
41
37
  }
42
38
  }
@@ -44,13 +40,11 @@ task project "Project" {
44
40
  task _Task_9 "Item 1" {
45
41
  depends project.wp1
46
42
  start 2011-11-11-05:00-+0000
47
- milestone
48
43
  scheduled
49
44
  }
50
45
  task _Task_10 "Item 2" {
51
46
  depends project.wp2
52
47
  start 2011-11-11-05:00-+0000
53
- milestone
54
48
  scheduled
55
49
  }
56
50
  }
@@ -10,7 +10,6 @@ projectids prj
10
10
 
11
11
  task _Task_1 "Foo" {
12
12
  start 2011-12-11-00:00-+0000
13
- milestone
14
13
  scheduled
15
14
  }
16
15
  supplement task _Task_1 {
@@ -104,34 +104,26 @@ task AcSo "Accounting Software" {
104
104
  task deliveries "Milestones" {
105
105
  task start "Project start" {
106
106
  start 2002-01-16-00:00-+0000
107
- milestone
108
107
  scheduled
109
108
  delayed:start 2002-01-19-23:00-+0000
110
- delayed:milestone
111
109
  }
112
110
  task prev "Technology Preview" {
113
111
  depends AcSo.software.backend
114
112
  start 2002-02-28-14:00-+0000
115
- milestone
116
113
  scheduled
117
114
  delayed:start 2002-03-05-14:00-+0000
118
- delayed:milestone
119
115
  }
120
116
  task beta "Beta version" {
121
117
  depends AcSo.test.alpha
122
118
  start 2002-04-03-10:00-+0000
123
- milestone
124
119
  scheduled
125
120
  delayed:start 2002-04-11-09:00-+0000
126
- delayed:milestone
127
121
  }
128
122
  task done "Ship Product to Customer" {
129
123
  depends AcSo.test.beta, AcSo.manual
130
124
  start 2002-04-18-13:00-+0000
131
- milestone
132
125
  scheduled
133
126
  delayed:start 2002-04-26-12:00-+0000
134
- delayed:milestone
135
127
  }
136
128
  }
137
129
  }
@@ -20,7 +20,7 @@ supplement resource tux {
20
20
  2007-01-09-13:00 +4h
21
21
  # This is a common mistake. With standard working hours, this will
22
22
  # yield a zero time booking! The interval is midnight to 8am. So
23
- # it's outside of the working hours and 'sloppy 2' surpresses the
23
+ # it's outside of the working hours and 'sloppy 2' suppresses the
24
24
  # warning.
25
25
  booking test 2007-01-11 +8h { sloppy 2 }
26
26
  # Use 'overtime' to book off-hour slots. This booking will book the
@@ -1,7 +1,7 @@
1
1
  project prj "Project" "1.0" 2007-01-01 - 2007-03-01 {
2
2
  timezone "Europe/Berlin"
3
3
  # German currency format: e. g. -10.000,20 5.014,11
4
- numberformat "-" "" "." "," 2
4
+ currencyformat "-" "" "." "," 2
5
5
 
6
6
  # US currency format: e. g. (10,000.20) 5,014.11
7
7
  currencyformat "(" ")" "," "." 2
@@ -242,9 +242,9 @@ taskreport overview "" {
242
242
  # Macro to set the background color of a cell according to the alert
243
243
  # level of the task.
244
244
  macro AlertColor [
245
- cellcolor plan.alert = 0 "#00D000" # green
246
- cellcolor plan.alert = 1 "#D0D000" # yellow
247
- cellcolor plan.alert = 2 "#D00000" # red
245
+ cellcolor plan.alert = 0 "#90FF90" # green
246
+ cellcolor plan.alert = 1 "#FFFF90" # yellow
247
+ cellcolor plan.alert = 2 "#FF9090" # red
248
248
  ]
249
249
 
250
250
  taskreport status "" {
@@ -33,6 +33,11 @@ project acso "Accounting Software" 2002-01-16 +4m {
33
33
  # *** EXAMPLE: now +
34
34
  now 2002-03-05-13:00
35
35
  # *** EXAMPLE: now -
36
+ # The date that is used to show additional line on a Gannt chart
37
+ # and can be specified by the user.
38
+ # *** EXAMPLE: markdate +
39
+ markdate 2002-08-07-03:00
40
+ # *** EXAMPLE: markdate -
36
41
  # The currency for all money values is the Euro.
37
42
  # *** EXAMPLE: currency +
38
43
  currency "USD"
@@ -559,9 +564,9 @@ taskreport overview "" {
559
564
  # Macro to set the background color of a cell according to the alert
560
565
  # level of the task.
561
566
  macro AlertColor [
562
- cellcolor plan.alert = 0 "#00D000" # green
563
- cellcolor plan.alert = 1 "#D0D000" # yellow
564
- cellcolor plan.alert = 2 "#D00000" # red
567
+ cellcolor plan.alert = 0 "#90FF90" # green
568
+ cellcolor plan.alert = 1 "#FFFF90" # yellow
569
+ cellcolor plan.alert = 2 "#FF9090" # red
565
570
  ]
566
571
 
567
572
  taskreport status "" {
@@ -32,6 +32,10 @@ class TestProject < Test::Unit::TestCase
32
32
  @t.kill
33
33
  end
34
34
 
35
+ def test_basic
36
+ doRun(1, 1) { sleep 0.1 }
37
+ end
38
+
35
39
  def test_simple
36
40
  doRun(1, 1) { sleep 0.1 }
37
41
  doRun(1, 2) { sleep 0.1 }
@@ -63,7 +67,6 @@ class TestProject < Test::Unit::TestCase
63
67
  @cnt = 0
64
68
  lock = Monitor.new
65
69
  bp.wait do |j|
66
- puts "Signal error" if j.retVal.signaled?
67
70
  postprocess(j)
68
71
  lock.synchronize { @cnt += 1 }
69
72
  end
@@ -75,12 +78,12 @@ class TestProject < Test::Unit::TestCase
75
78
  yield
76
79
  $stderr.puts "Error #{n}" if n % 2 == 0
77
80
  puts "Job #{n} finished"
81
+ # Return the job ID as return value
78
82
  n
79
83
  end
80
84
 
81
85
  def postprocess(job)
82
- assert_equal(job.retVal.exitstatus, job.jobId, 'JobID mismatch')
83
- assert_equal(job.retVal.pid, job.pid, 'PID mismatch')
86
+ assert_equal(job.retVal, job.jobId, 'PID mismatch')
84
87
  assert_equal("job #{job.jobId}", job.tag)
85
88
  text = <<"EOT"
86
89
  Job #{job.jobId} started
@@ -56,7 +56,7 @@ EOT
56
56
  [:LITERAL, '-', 6],
57
57
  [:LITERAL, '$', 6],
58
58
  [:MACRO, 'A Macro', 6],
59
- [:TIME, time(15, 23), 7],
59
+ [:TIME, mktime(15, 23), 7],
60
60
  [:STRING, 'A string', 7],
61
61
  [:STRING, "It's a string", 8],
62
62
  [:STRING, "A\nmult\"i line\nstring", 9],
@@ -101,12 +101,12 @@ EOT
101
101
  24:00
102
102
  EOT
103
103
  ref = [
104
- [:TIME, time(0, 0), 1],
105
- [:TIME, time(0, 0), 2],
106
- [:TIME, time(1, 0), 3],
107
- [:TIME, time(11, 59), 4],
108
- [:TIME, time(12, 1), 5],
109
- [:TIME, time(24, 0), 6],
104
+ [:TIME, mktime(0, 0), 1],
105
+ [:TIME, mktime(0, 0), 2],
106
+ [:TIME, mktime(1, 0), 3],
107
+ [:TIME, mktime(11, 59), 4],
108
+ [:TIME, mktime(12, 1), 5],
109
+ [:TIME, mktime(24, 0), 6],
110
110
  [:eof, '<END>', 7]
111
111
  ]
112
112
 
@@ -172,7 +172,7 @@ EOT
172
172
 
173
173
  private
174
174
 
175
- def time(h, m)
175
+ def mktime(h, m)
176
176
  (h * 60 + m) * 60
177
177
  end
178
178