##// END OF EJS Templates
hgweb: implement json-graph...
av6 -
r35390:b963750b default
parent child Browse files
Show More
@@ -0,0 +1,5 b''
1 \{
2 "node": {node|json},
3 "changeset_count": {changesets|json},
4 "changesets": [{join(nodes%graphentry, ", ")}]
5 }
@@ -42,6 +42,7 b''
42 <Directory Id="templates.jsondir" Name="json">
42 <Directory Id="templates.jsondir" Name="json">
43 <Component Id="templates.json" Guid="$(var.templates.json.guid)" Win64='$(var.IsX64)'>
43 <Component Id="templates.json" Guid="$(var.templates.json.guid)" Win64='$(var.IsX64)'>
44 <File Id="json.changelist.tmpl" Name="changelist.tmpl" KeyPath="yes" />
44 <File Id="json.changelist.tmpl" Name="changelist.tmpl" KeyPath="yes" />
45 <File Id="json.graph.tmpl" Name="graph.tmpl" />
45 <File Id="json.map" Name="map" />
46 <File Id="json.map" Name="map" />
46 </Component>
47 </Component>
47 </Directory>
48 </Directory>
@@ -1277,7 +1277,7 b' def graph(web, req, tmpl):'
1277 return tmpl('graph', rev=rev, symrev=symrev, revcount=revcount,
1277 return tmpl('graph', rev=rev, symrev=symrev, revcount=revcount,
1278 uprev=uprev,
1278 uprev=uprev,
1279 lessvars=lessvars, morevars=morevars, downrev=downrev,
1279 lessvars=lessvars, morevars=morevars, downrev=downrev,
1280 cols=cols, rows=rows,
1280 cols=cols, rows=rows, changesets=count,
1281 canvaswidth=(cols + 1) * bg_height,
1281 canvaswidth=(cols + 1) * bg_height,
1282 truecanvasheight=rows * bg_height,
1282 truecanvasheight=rows * bg_height,
1283 canvasheight=canvasheight, bg_height=bg_height,
1283 canvasheight=canvasheight, bg_height=bg_height,
@@ -25,6 +25,7 b" searchentry = '{changelistentry}'"
25 # number of entries.
25 # number of entries.
26 changelog = changelist.tmpl
26 changelog = changelist.tmpl
27 shortlog = changelist.tmpl
27 shortlog = changelist.tmpl
28 graph = graph.tmpl
28 changelistentry = '\{
29 changelistentry = '\{
29 "node": {node|json},
30 "node": {node|json},
30 "date": {date|json},
31 "date": {date|json},
@@ -37,6 +38,22 b" changelistentry = '\\{"
37 "parents": [{if(allparents, join(allparents%changesetparent, ", "),
38 "parents": [{if(allparents, join(allparents%changesetparent, ", "),
38 join(parent%changesetparent, ", "))}]
39 join(parent%changesetparent, ", "))}]
39 }'
40 }'
41 graphentry = '\{
42 "node": {node|json},
43 "date": {date|json},
44 "desc": {desc|utf8|json},
45 "branch": {if(branch, branch%changesetbranch, "default"|json)},
46 "bookmarks": [{join(bookmarks%changelistentryname, ", ")}],
47 "tags": [{join(tags%changelistentryname, ", ")}],
48 "user": {author|utf8|json},
49 "phase": {phase|json},
50 "col": {col|json},
51 "row": {row|json},
52 "color": {color|json},
53 "edges": {edges|json},
54 "parents": [{if(allparents, join(allparents%changesetparent, ", "),
55 join(parent%changesetparent, ", "))}]
56 }'
40 changelistentryname = '{name|utf8|json}'
57 changelistentryname = '{name|utf8|json}'
41 changeset = '\{
58 changeset = '\{
42 "node": {node|json},
59 "node": {node|json},
@@ -198,7 +215,6 b" fileannotation = '\\{"
198 filelog = '\{
215 filelog = '\{
199 "entries": [{join(entries%changelistentry, ", ")}]
216 "entries": [{join(entries%changelistentry, ", ")}]
200 }'
217 }'
201 graph = '"not yet implemented"'
202 helptopics = '\{
218 helptopics = '\{
203 "topics": [{join(topics%helptopicentry, ", ")}],
219 "topics": [{join(topics%helptopicentry, ", ")}],
204 "earlycommands": [{join(earlycommands%helptopicentry, ", ")}],
220 "earlycommands": [{join(earlycommands%helptopicentry, ", ")}],
@@ -1335,7 +1335,356 b' graph/ shows information that can be use'
1335 $ request json-graph
1335 $ request json-graph
1336 200 Script output follows
1336 200 Script output follows
1337
1337
1338 "not yet implemented"
1338 {
1339 "changeset_count": 10,
1340 "changesets": [
1341 {
1342 "bookmarks": [],
1343 "branch": "default",
1344 "col": 0,
1345 "color": 1,
1346 "date": [
1347 0.0,
1348 0
1349 ],
1350 "desc": "merge test-branch into default",
1351 "edges": [
1352 {
1353 "bcolor": "",
1354 "col": 0,
1355 "color": 1,
1356 "nextcol": 0,
1357 "width": -1
1358 },
1359 {
1360 "bcolor": "",
1361 "col": 0,
1362 "color": 1,
1363 "nextcol": 1,
1364 "width": -1
1365 }
1366 ],
1367 "node": "cc725e08502a79dd1eda913760fbe06ed7a9abc7",
1368 "parents": [
1369 "ceed296fe500c3fac9541e31dad860cb49c89e45",
1370 "ed66c30e87eb65337c05a4229efaa5f1d5285a90"
1371 ],
1372 "phase": "draft",
1373 "row": 0,
1374 "tags": [
1375 "tip"
1376 ],
1377 "user": "test"
1378 },
1379 {
1380 "bookmarks": [],
1381 "branch": "test-branch",
1382 "col": 1,
1383 "color": 2,
1384 "date": [
1385 0.0,
1386 0
1387 ],
1388 "desc": "another commit in test-branch",
1389 "edges": [
1390 {
1391 "bcolor": "",
1392 "col": 0,
1393 "color": 1,
1394 "nextcol": 0,
1395 "width": -1
1396 },
1397 {
1398 "bcolor": "",
1399 "col": 1,
1400 "color": 2,
1401 "nextcol": 1,
1402 "width": -1
1403 }
1404 ],
1405 "node": "ed66c30e87eb65337c05a4229efaa5f1d5285a90",
1406 "parents": [
1407 "6ab967a8ab3489227a83f80e920faa039a71819f"
1408 ],
1409 "phase": "draft",
1410 "row": 1,
1411 "tags": [],
1412 "user": "test"
1413 },
1414 {
1415 "bookmarks": [],
1416 "branch": "test-branch",
1417 "col": 1,
1418 "color": 2,
1419 "date": [
1420 0.0,
1421 0
1422 ],
1423 "desc": "create test branch",
1424 "edges": [
1425 {
1426 "bcolor": "",
1427 "col": 0,
1428 "color": 1,
1429 "nextcol": 0,
1430 "width": -1
1431 },
1432 {
1433 "bcolor": "",
1434 "col": 1,
1435 "color": 2,
1436 "nextcol": 1,
1437 "width": -1
1438 }
1439 ],
1440 "node": "6ab967a8ab3489227a83f80e920faa039a71819f",
1441 "parents": [
1442 "06e557f3edf66faa1ccaba5dd8c203c21cc79f1e"
1443 ],
1444 "phase": "draft",
1445 "row": 2,
1446 "tags": [],
1447 "user": "test"
1448 },
1449 {
1450 "bookmarks": [
1451 "bookmark2"
1452 ],
1453 "branch": "default",
1454 "col": 0,
1455 "color": 1,
1456 "date": [
1457 0.0,
1458 0
1459 ],
1460 "desc": "create tag2",
1461 "edges": [
1462 {
1463 "bcolor": "",
1464 "col": 0,
1465 "color": 1,
1466 "nextcol": 0,
1467 "width": -1
1468 },
1469 {
1470 "bcolor": "",
1471 "col": 1,
1472 "color": 2,
1473 "nextcol": 1,
1474 "width": -1
1475 }
1476 ],
1477 "node": "ceed296fe500c3fac9541e31dad860cb49c89e45",
1478 "parents": [
1479 "f2890a05fea49bfaf9fb27ed5490894eba32da78"
1480 ],
1481 "phase": "draft",
1482 "row": 3,
1483 "tags": [],
1484 "user": "test"
1485 },
1486 {
1487 "bookmarks": [],
1488 "branch": "default",
1489 "col": 0,
1490 "color": 1,
1491 "date": [
1492 0.0,
1493 0
1494 ],
1495 "desc": "another commit to da/foo",
1496 "edges": [
1497 {
1498 "bcolor": "",
1499 "col": 0,
1500 "color": 1,
1501 "nextcol": 0,
1502 "width": -1
1503 },
1504 {
1505 "bcolor": "",
1506 "col": 1,
1507 "color": 2,
1508 "nextcol": 1,
1509 "width": -1
1510 }
1511 ],
1512 "node": "f2890a05fea49bfaf9fb27ed5490894eba32da78",
1513 "parents": [
1514 "93a8ce14f89156426b7fa981af8042da53f03aa0"
1515 ],
1516 "phase": "draft",
1517 "row": 4,
1518 "tags": [
1519 "tag2"
1520 ],
1521 "user": "test"
1522 },
1523 {
1524 "bookmarks": [],
1525 "branch": "default",
1526 "col": 0,
1527 "color": 1,
1528 "date": [
1529 0.0,
1530 0
1531 ],
1532 "desc": "create tag",
1533 "edges": [
1534 {
1535 "bcolor": "",
1536 "col": 0,
1537 "color": 1,
1538 "nextcol": 0,
1539 "width": -1
1540 },
1541 {
1542 "bcolor": "",
1543 "col": 1,
1544 "color": 2,
1545 "nextcol": 1,
1546 "width": -1
1547 }
1548 ],
1549 "node": "93a8ce14f89156426b7fa981af8042da53f03aa0",
1550 "parents": [
1551 "78896eb0e102174ce9278438a95e12543e4367a7"
1552 ],
1553 "phase": "public",
1554 "row": 5,
1555 "tags": [],
1556 "user": "test"
1557 },
1558 {
1559 "bookmarks": [],
1560 "branch": "default",
1561 "col": 0,
1562 "color": 1,
1563 "date": [
1564 0.0,
1565 0
1566 ],
1567 "desc": "move foo",
1568 "edges": [
1569 {
1570 "bcolor": "",
1571 "col": 0,
1572 "color": 1,
1573 "nextcol": 0,
1574 "width": -1
1575 },
1576 {
1577 "bcolor": "",
1578 "col": 1,
1579 "color": 2,
1580 "nextcol": 1,
1581 "width": -1
1582 }
1583 ],
1584 "node": "78896eb0e102174ce9278438a95e12543e4367a7",
1585 "parents": [
1586 "8d7c456572acf3557e8ed8a07286b10c408bcec5"
1587 ],
1588 "phase": "public",
1589 "row": 6,
1590 "tags": [
1591 "tag1"
1592 ],
1593 "user": "test"
1594 },
1595 {
1596 "bookmarks": [
1597 "bookmark1"
1598 ],
1599 "branch": "default",
1600 "col": 0,
1601 "color": 1,
1602 "date": [
1603 0.0,
1604 0
1605 ],
1606 "desc": "modify da/foo",
1607 "edges": [
1608 {
1609 "bcolor": "",
1610 "col": 0,
1611 "color": 1,
1612 "nextcol": 0,
1613 "width": -1
1614 },
1615 {
1616 "bcolor": "",
1617 "col": 1,
1618 "color": 2,
1619 "nextcol": 1,
1620 "width": -1
1621 }
1622 ],
1623 "node": "8d7c456572acf3557e8ed8a07286b10c408bcec5",
1624 "parents": [
1625 "f8bbb9024b10f93cdbb8d940337398291d40dea8"
1626 ],
1627 "phase": "public",
1628 "row": 7,
1629 "tags": [],
1630 "user": "test"
1631 },
1632 {
1633 "bookmarks": [],
1634 "branch": "default",
1635 "col": 0,
1636 "color": 1,
1637 "date": [
1638 0.0,
1639 0
1640 ],
1641 "desc": "modify foo",
1642 "edges": [
1643 {
1644 "bcolor": "",
1645 "col": 0,
1646 "color": 1,
1647 "nextcol": 0,
1648 "width": -1
1649 },
1650 {
1651 "bcolor": "",
1652 "col": 1,
1653 "color": 2,
1654 "nextcol": 0,
1655 "width": -1
1656 }
1657 ],
1658 "node": "f8bbb9024b10f93cdbb8d940337398291d40dea8",
1659 "parents": [
1660 "06e557f3edf66faa1ccaba5dd8c203c21cc79f1e"
1661 ],
1662 "phase": "public",
1663 "row": 8,
1664 "tags": [],
1665 "user": "test"
1666 },
1667 {
1668 "bookmarks": [],
1669 "branch": "default",
1670 "col": 0,
1671 "color": 2,
1672 "date": [
1673 0.0,
1674 0
1675 ],
1676 "desc": "initial",
1677 "edges": [],
1678 "node": "06e557f3edf66faa1ccaba5dd8c203c21cc79f1e",
1679 "parents": [],
1680 "phase": "public",
1681 "row": 9,
1682 "tags": [],
1683 "user": "test"
1684 }
1685 ],
1686 "node": "cc725e08502a79dd1eda913760fbe06ed7a9abc7"
1687 }
1339
1688
1340 help/ shows help topics
1689 help/ shows help topics
1341
1690
General Comments 0
You need to be logged in to leave comments. Login now