├── .gitignore
├── COPYING.kiinfo
├── COPYING.liki
├── COPYING.linuxki
├── Dockerfile
├── GPL
├── README.md
├── bash_completion.d
└── kiinfo
├── cluster
├── cluster_collect
├── cluster_diskspace
├── cluster_install
├── cluster_remove
├── node_collect
├── node_install
└── node_remove
├── config
├── config
├── config.cmu
└── config.pdsh
├── documentation
├── BarrierWritesOracleASM.htm
├── LinuxKI_FAQ.pdf
├── LinuxKI_MasterClass.pdf
├── LinuxKI_QuickRefGuide.pdf
├── OracleLGWRwithXFS.htm
├── SAPDB2semget.htm
├── SemaphoreScaling.htm
├── TaskletIRQs.htm
├── UnterminatedIxgbe.htm
├── XfsDirectIOReadPerf.htm
├── add_random.htm
├── cache_bypass.htm
├── clocksource.htm
├── cpu_polling.htm
├── hugetlb_fault.htm
├── kstat_irqs.htm
├── kvm_pagefaults.htm
├── large_numa_node.htm
├── md_flush.htm
├── memblock_alloc.htm
├── multipath_bug.htm
├── numa_balancing.htm
├── numa_off.htm
├── oracle_colstats.htm
├── oracle_polling.htm
├── pcc_cpufreq.htm
├── power_vs_perf.htm
├── runq_delays.htm
├── sca_vuln.htm
├── sk_busy_loop.htm
├── sql_stats.htm
├── systemd_user.htm
└── tcp_timeouts.htm
├── experimental
├── D3
│ ├── d3.js
│ ├── d3.min.js
│ ├── d3.v2.js
│ ├── d3.v2.min.js
│ ├── d3.v3.js
│ ├── d3.v3.min.js
│ └── lib
│ │ ├── colorbrewer
│ │ ├── LICENSE
│ │ ├── colorbrewer.css
│ │ └── colorbrewer.js
│ │ ├── d3
│ │ ├── .gitignore
│ │ ├── .gitmodules
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── bin
│ │ │ ├── component
│ │ │ ├── locale
│ │ │ ├── start
│ │ │ └── uglify
│ │ ├── component.json
│ │ ├── d3.js
│ │ ├── d3.min.js
│ │ ├── globals.js
│ │ ├── index-browserify.js
│ │ ├── index.js
│ │ └── package.json
│ │ ├── divgrid.js
│ │ ├── firebugx.js
│ │ ├── jit
│ │ └── LICENSE
│ │ ├── jquery-1.11.2.js
│ │ ├── jquery-1.7.min.js
│ │ ├── jquery-ui-1.8.16.custom.min.js
│ │ ├── jquery.event.drag-2.2.js
│ │ ├── jquery.event.drop-2.2.js
│ │ ├── jquery.jsonp-2.4.min.js
│ │ ├── jquery.simulate.js
│ │ ├── jquery.sparkline.min.js
│ │ ├── mapper.js
│ │ ├── parcoord
│ │ ├── d3.parcoords.css
│ │ ├── d3.parcoords.js
│ │ └── style.css
│ │ ├── penner
│ │ └── LICENSE
│ │ ├── polymaps
│ │ └── LICENSE
│ │ ├── protovis
│ │ └── LICENSE
│ │ ├── qunit.css
│ │ ├── qunit.js
│ │ ├── science
│ │ ├── LICENSE
│ │ ├── science.js
│ │ ├── science.lin.js
│ │ ├── science.lin.min.js
│ │ ├── science.min.js
│ │ ├── science.stats.js
│ │ └── science.stats.min.js
│ │ ├── slickgrid
│ │ ├── .gitignore
│ │ ├── MIT-LICENSE.txt
│ │ ├── README.md
│ │ ├── controls
│ │ │ ├── slick.columnpicker.css
│ │ │ ├── slick.columnpicker.js
│ │ │ ├── slick.pager.css
│ │ │ └── slick.pager.js
│ │ ├── css
│ │ │ └── smoothness
│ │ │ │ ├── images
│ │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png
│ │ │ │ ├── ui-bg_flat_75_ffffff_40x100.png
│ │ │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png
│ │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png
│ │ │ │ ├── ui-bg_glass_75_dadada_1x400.png
│ │ │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png
│ │ │ │ ├── ui-bg_glass_95_fef1ec_1x400.png
│ │ │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png
│ │ │ │ ├── ui-icons_222222_256x240.png
│ │ │ │ ├── ui-icons_2e83ff_256x240.png
│ │ │ │ ├── ui-icons_454545_256x240.png
│ │ │ │ ├── ui-icons_888888_256x240.png
│ │ │ │ └── ui-icons_cd0a0a_256x240.png
│ │ │ │ └── jquery-ui-1.8.16.custom.css
│ │ ├── examples
│ │ │ ├── example-autotooltips.html
│ │ │ ├── example-checkbox-row-select.html
│ │ │ ├── example-colspan.html
│ │ │ ├── example-composite-editor-item-details.html
│ │ │ ├── example-custom-column-value-extractor.html
│ │ │ ├── example-explicit-initialization.html
│ │ │ ├── example-grouping.html
│ │ │ ├── example-header-row.html
│ │ │ ├── example-multi-column-sort.html
│ │ │ ├── example-optimizing-dataview.html
│ │ │ ├── example-plugin-headerbuttons.html
│ │ │ ├── example-plugin-headermenu.html
│ │ │ ├── example-spreadsheet.html
│ │ │ ├── example-totals-via-data-provider.html
│ │ │ ├── example1-simple.html
│ │ │ ├── example10-async-post-render.html
│ │ │ ├── example11-autoheight.html
│ │ │ ├── example12-fillbrowser.html
│ │ │ ├── example13-getItem-sorting.html
│ │ │ ├── example14-highlighting.html
│ │ │ ├── example2-formatters.html
│ │ │ ├── example3-editing.html
│ │ │ ├── example3a-compound-editors.html
│ │ │ ├── example3b-editing-with-undo.html
│ │ │ ├── example4-model.html
│ │ │ ├── example5-collapsing.html
│ │ │ ├── example6-ajax-loading.html
│ │ │ ├── example7-events.html
│ │ │ ├── example8-alternative-display.html
│ │ │ ├── example9-row-reordering.html
│ │ │ ├── examples.css
│ │ │ ├── index.html
│ │ │ ├── slick-default-theme.css
│ │ │ └── slick.compositeeditor.js
│ │ ├── images
│ │ │ ├── actions.gif
│ │ │ ├── ajax-loader-small.gif
│ │ │ ├── arrow_redo.png
│ │ │ ├── arrow_right_peppermint.png
│ │ │ ├── arrow_right_spearmint.png
│ │ │ ├── arrow_undo.png
│ │ │ ├── bullet_blue.png
│ │ │ ├── bullet_star.png
│ │ │ ├── bullet_toggle_minus.png
│ │ │ ├── bullet_toggle_plus.png
│ │ │ ├── calendar.gif
│ │ │ ├── collapse.gif
│ │ │ ├── comment_yellow.gif
│ │ │ ├── down.gif
│ │ │ ├── drag-handle.png
│ │ │ ├── editor-helper-bg.gif
│ │ │ ├── expand.gif
│ │ │ ├── header-bg.gif
│ │ │ ├── header-columns-bg.gif
│ │ │ ├── header-columns-over-bg.gif
│ │ │ ├── help.png
│ │ │ ├── info.gif
│ │ │ ├── listview.gif
│ │ │ ├── pencil.gif
│ │ │ ├── row-over-bg.gif
│ │ │ ├── sort-asc.gif
│ │ │ ├── sort-asc.png
│ │ │ ├── sort-desc.gif
│ │ │ ├── sort-desc.png
│ │ │ ├── stripes.png
│ │ │ ├── tag_red.png
│ │ │ ├── tick.png
│ │ │ ├── user_identity.gif
│ │ │ └── user_identity_plus.gif
│ │ ├── lib
│ │ │ ├── firebugx.js
│ │ │ ├── jquery-1.7.min.js
│ │ │ ├── jquery-ui-1.8.16.custom.min.js
│ │ │ ├── jquery.event.drag-2.2.js
│ │ │ ├── jquery.event.drop-2.2.js
│ │ │ ├── jquery.jsonp-2.4.min.js
│ │ │ ├── jquery.simulate.js
│ │ │ ├── jquery.sparkline.min.js
│ │ │ ├── qunit.css
│ │ │ └── qunit.js
│ │ ├── plugins
│ │ │ ├── slick.autotooltips.js
│ │ │ ├── slick.cellcopymanager.js
│ │ │ ├── slick.cellrangedecorator.js
│ │ │ ├── slick.cellrangeselector.js
│ │ │ ├── slick.cellselectionmodel.js
│ │ │ ├── slick.checkboxselectcolumn.js
│ │ │ ├── slick.headerbuttons.css
│ │ │ ├── slick.headerbuttons.js
│ │ │ ├── slick.headermenu.css
│ │ │ ├── slick.headermenu.js
│ │ │ ├── slick.rowmovemanager.js
│ │ │ └── slick.rowselectionmodel.js
│ │ ├── slick.core.js
│ │ ├── slick.dataview.js
│ │ ├── slick.editors.js
│ │ ├── slick.formatters.js
│ │ ├── slick.grid.css
│ │ ├── slick.grid.js
│ │ ├── slick.groupitemmetadataprovider.js
│ │ ├── slick.remotemodel.js
│ │ └── tests
│ │ │ ├── dataview
│ │ │ ├── dataview.js
│ │ │ └── index.html
│ │ │ ├── grid
│ │ │ ├── grid.js
│ │ │ └── index.html
│ │ │ ├── index.html
│ │ │ ├── model benchmarks.html
│ │ │ ├── plugins
│ │ │ ├── autotooltips.html
│ │ │ └── autotooltips.js
│ │ │ └── scrolling benchmarks.html
│ │ └── underscore-min.js
├── exp
└── vis
│ ├── cluster_network.html
│ ├── cluster_timeline.html
│ ├── d3_csv.sh
│ ├── futex_2_csv.sh
│ ├── futex_cpu_scatter.html
│ ├── futex_scatter.html
│ ├── kiall.pk
│ ├── kidsk.html
│ ├── kidsk_2_csv.sh
│ ├── kidsk_scatter.html
│ ├── kidsk_trace_view.php
│ ├── kifile.html
│ ├── kipid_awk_csv.sh
│ ├── kipid_io.html
│ ├── kipid_sched.html
│ ├── kirunq.html
│ ├── kitrc_extract.sh
│ ├── kivis.php
│ ├── kiwait.html
│ ├── network.html
│ ├── network3.html
│ ├── pid_detail.html
│ ├── pid_switch.awkpgm
│ ├── pid_switch.html
│ ├── pid_switch.sh
│ ├── pid_switch.sh.save
│ ├── pid_switch_msr.awkpgm
│ ├── pid_switch_steal.awkpgm
│ ├── pid_switch_steal_msr.awkpgm
│ ├── pid_timeline.html
│ ├── pid_wtree.html
│ ├── sample_network.csv
│ ├── server_network.html
│ ├── server_timeline.html
│ ├── socket.html
│ ├── timeline.html
│ └── timeline.php
├── images
├── linuxKI.jpg
├── linuxKI_lg.jpg
├── linuxKI_med.jpg
├── linuxKI_sm.jpg
├── linuxKI_square.jpg
├── linuxKI_square_lg.jpg
├── linuxKI_square_med.jpg
├── linuxKI_square_sm.jpg
├── linuxKI_wide.jpg
├── linuxKI_wide_lg.jpg
├── linuxKI_wide_med.jpg
├── linuxKI_wide_sm.jpg
├── winki_logo.jpg
└── winki_wide.jpg
├── man
├── man1
│ ├── kiall.1
│ ├── kiclean.1
│ ├── kiinfo-clparse.1
│ ├── kiinfo-dump.1
│ ├── kiinfo-kiall.1
│ ├── kiinfo-kidock.1
│ ├── kiinfo-kidsk.1
│ ├── kiinfo-kifile.1
│ ├── kiinfo-kifutex.1
│ ├── kiinfo-kipid.1
│ ├── kiinfo-kiprof.1
│ ├── kiinfo-kirunq.1
│ ├── kiinfo-kisock.1
│ ├── kiinfo-kitrace.1
│ ├── kiinfo-kiwait.1
│ ├── kiinfo-kparse.1
│ ├── kiinfo-likidump.1
│ ├── kiinfo-likimerge.1
│ ├── kiinfo-live.1
│ ├── kiinfo.1
│ ├── kivis-build.1
│ ├── kivis-start.1
│ ├── kivis-stop.1
│ └── runki.1
└── man7
│ └── linuxki.7
├── ppc64le
├── kiinfo-rhel7_8.ppc64le
├── kiinfo-rhel8.ppc64le
├── kiinfo-sles15.ppc64le
└── kiinfo-ubuntu18.ppc64le
├── rpms
├── linuxki-7.11-1.noarch.rpm
└── linuxki_7.11-1_all.deb
├── scripts
├── kiall
├── kiclean
├── kivis-build
├── kivis-start
├── kivis-stop
├── linuxki.sh
├── linuxki_install
├── linuxki_remove
├── module_prep
└── runki
├── src
├── kiinfo
│ ├── DiskIo.c
│ ├── DiskIo.h
│ ├── FileIo.c
│ ├── FileIo.h
│ ├── Image.c
│ ├── Image.h
│ ├── Makefile
│ ├── NetIp.c
│ ├── NetIp.h
│ ├── Pdb.c
│ ├── Pdb.h
│ ├── PerfInfo.c
│ ├── PerfInfo.h
│ ├── Process.c
│ ├── Process.h
│ ├── Provider.c
│ ├── Provider.h
│ ├── SysConfig.c
│ ├── SysConfig.h
│ ├── Thread.c
│ ├── Thread.h
│ ├── block.c
│ ├── block.h
│ ├── cache.c
│ ├── cache.h
│ ├── clear.c
│ ├── clmsgcat.h
│ ├── clparse.c
│ ├── clprint.c
│ ├── clprint.h
│ ├── conv.c
│ ├── conv.h
│ ├── custom_options.h
│ ├── developers.c
│ ├── developers.h
│ ├── docker.c
│ ├── dsk.c
│ ├── elf.c
│ ├── file.c
│ ├── firstpass.c
│ ├── futex.c
│ ├── futex.h
│ ├── globals.c
│ ├── globals.h
│ ├── hardclock.c
│ ├── hardclock.h
│ ├── hash.c
│ ├── hash.h
│ ├── hash2.c
│ ├── html.c
│ ├── html.h
│ ├── info.c
│ ├── info.h
│ ├── irq.c
│ ├── irq.h
│ ├── json.h
│ ├── kd_types.h
│ ├── ki_tool.h
│ ├── kiall.c
│ ├── kiinfo-rhel6.aarch64
│ ├── kiinfo-rhel7_8.ppc64le
│ ├── kiinfo-rhel8.ppc64le
│ ├── kiinfo-sles15.ppc64le
│ ├── kiinfo-ubuntu18.ppc64le
│ ├── kiinfo.c
│ ├── kiinfo.rhel6
│ ├── kparse.c
│ ├── kpmsgcat.h
│ ├── kprint.c
│ ├── kprint.h
│ ├── liki.h
│ ├── liki_extra.h
│ ├── liki_v1.h
│ ├── liki_v2.h
│ ├── liki_v3.h
│ ├── likid.c
│ ├── likiif.c
│ ├── likim.c
│ ├── likis.c
│ ├── live.c
│ ├── live.h
│ ├── msgcat.h
│ ├── option.c
│ ├── option_iface.h
│ ├── option_private.h
│ ├── oracle.c
│ ├── oracle.h
│ ├── parse.c
│ ├── pid.c
│ ├── power.c
│ ├── power.h
│ ├── prof.c
│ ├── read_etl.c
│ ├── read_tr.c
│ ├── rrt.c
│ ├── runq.c
│ ├── sched.c
│ ├── sched.h
│ ├── scsi.c
│ ├── scsi.h
│ ├── socket.c
│ ├── sort.c
│ ├── sort.h
│ ├── syscalls.c
│ ├── syscalls.h
│ ├── trace.c
│ ├── util.c
│ ├── vers.h
│ ├── vis.c
│ ├── vis.h
│ ├── wait.c
│ ├── winki.h
│ ├── winki_util.c
│ ├── winki_util.h
│ ├── workqueue.c
│ └── workqueue.h
└── liki
│ ├── Makefile
│ ├── liki.h
│ └── likit.c
└── winki
├── GetSQLServerInfo.ps1
├── convertpdb.cmd
├── ntstatus.txt
├── pdbdump.exe
├── runki.cmd
├── spin.sql
└── waits.sql
/.gitignore:
--------------------------------------------------------------------------------
1 | archive
2 | *.tgz
3 | modules
4 | aarch64
5 | experimental
6 | src/kiinfo.win
7 | src/kiinfo/kiinfo.aarch64
8 | src/kiinfo/kiinfo.rhel8
9 | src/kiinfo/kiinfo.sles15
10 | src/kiinfo/kiinfo.x86_64
11 | src/winki
12 | src/winki.beta
13 | .gitignore
14 |
--------------------------------------------------------------------------------
/COPYING.kiinfo:
--------------------------------------------------------------------------------
1 | Copyright (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP.
2 | Copyright (C) Copyright 2000-2014 Hewlett-Packard Development Company, L.P.
3 |
4 | This program (kiinfo) is free software: you can redistribute it and/or modify
5 | it under the terms of the GNU General Public License, version 2, as published
6 | by the Free Software Foundation.
7 |
8 | This program is distributed in the hope that it will be useful, but WITHOUT ANY
9 | WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 | PARTICULAR PURPOSE. See the GNU General Public License for more details.
11 |
12 | You should have received a copy of the GNU General Public License along with
13 | this program. If not, see .
14 |
--------------------------------------------------------------------------------
/COPYING.liki:
--------------------------------------------------------------------------------
1 | (C) Copyright 2015 Hewlett Packard Enterprise Development LP.
2 | (C) Copyright 2000-2014 Hewlett-Packard Development Company, L.P.
3 |
4 | This program (likit.ko) is free software; you can redistribute it and/or
5 | modify it under the terms of the GNU General Public License as published by
6 | the Free Software Foundation; either version 2 of the License, or (at your
7 | option) any later version.
8 |
9 | This program is distributed in the hope that it will be useful, but WITHOUT
10 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 | more details.
13 |
14 | You should have received a copy of the GNU General Public License along with
15 | this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
16 | Street, Fifth Floor Boston, MA 02110-1301, USA.
17 |
18 | NOTE: This copyright does *not* cover user programs that interact with this
19 | module using its regular interfaces - this is merely considered normal use of
20 | the module, and does *not* fall under the heading of "derived work", nor are
21 | these user programs to be considered derivative works of the module.
22 |
--------------------------------------------------------------------------------
/COPYING.linuxki:
--------------------------------------------------------------------------------
1 | Copyright (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP.
2 | Copyright (C) Copyright 2000-2014 Hewlett-Packard Development Company, L.P.
3 |
4 | This toolset (kiinfo, likit.ko, and supporting scripts) is free software:
5 | you can redistribute it and/or modify it under the terms of the GNU General
6 | Public License, version 2, as published by the Free Software Foundation.
7 |
8 | This toolset is distributed in the hope that it will be useful, but WITHOUT ANY
9 | WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 | PARTICULAR PURPOSE. See the GNU General Public License for more details.
11 |
12 | You should have received a copy of the GNU General Public License along with
13 | this program. If not, see .
14 |
--------------------------------------------------------------------------------
/Dockerfile:
--------------------------------------------------------------------------------
1 | # Licensed under GPL v2 or later
2 | #
3 | # See https://docs.docker.com/install/ for information on how to install Docker.
4 | #
5 | # After installing LinuxKI, build the container image:
6 | # docker build \
7 | # --tag linuxki \
8 | # --build-arg http_proxy=$http_proxy \
9 | # --build-arg https_proxy=$https_proxy \
10 | # --build-arg HTTP_PROXY=$HTTP_PROXY \
11 | # --build-arg HTTPS_PROXY=$HTTPS_PROXY \
12 | # /opt/linuxki
13 | #
14 | # When generating the LinuxKI reports with kiall, add the -V option to enable
15 | # visualisations in the reports when possible.
16 | #
17 | # After the LinuxKI reports have been generated, to see the results with the
18 | # visualizations, from the directory with the analysis results, run:
19 | # docker run \
20 | # --detach \
21 | # --name linuxki \
22 | # --publish-all \
23 | # --rm \
24 | # --volume $PWD:/var/www/html/linuxki \
25 | # linuxki
26 | #
27 | # port=$(docker inspect \
28 | # --format='{{(index (index .NetworkSettings.Ports "80/tcp") 0).HostPort}}' \
29 | # linuxki)
30 | # echo Server running on port $port
31 | #
32 | # html_file=$(find . -iname 'kp.*.html')
33 | # [[ $(echo $html_file | wc --words) -ne 1 ]] && unset html_file
34 | # xdg-open http://localhost:$port/linuxki/$html_file
35 | #
36 | # When finished looking at the results, run:
37 | # docker stop linuxki
38 |
39 | FROM centos:7
40 | LABEL maintainer="Christopher Voltz "
41 |
42 | RUN yum update -y
43 | RUN yum install -y yum-utils
44 | RUN yum install -y httpd mod_ssl
45 | RUN yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm && \
46 | yum-config-manager --enable remi-php72 && \
47 | yum install -y php php-opcache
48 | RUN yum install -y https://raw.githubusercontent.com/HewlettPackard/LinuxKI/master/rpms/linuxki-7.11-1.noarch.rpm
49 | RUN yum clean all -y && rm -rf /var/cache/yum
50 |
51 | RUN echo '' > /var/www/html/info.php
52 |
53 | EXPOSE 80
54 | EXPOSE 443
55 |
56 | CMD /usr/sbin/httpd -DFOREGROUND
57 |
--------------------------------------------------------------------------------
/cluster/cluster_diskspace:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | ##**************************************************************************
3 | # Copyright 2017 Hewlett Packard Enterprise Development LP.
4 | # This program is free software; you can redistribute it and/or modify
5 | # it under the terms of the GNU General Public License as published by
6 | # the Free Software Foundation; either version 2 of the License, or (at
7 | # your option) any later version. This program is distributed in the
8 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even
9 | # the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
10 | # PURPOSE. See the GNU General Public License for more details. You
11 | # should have received a copy of the GNU General Public License along
12 | # with this program; if not, write to the Free Software Foundation,
13 | # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
14 | #***************************************************************************
15 |
16 | if [ ! -f /opt/linuxki/config ]; then
17 | echo Linux KI Toolset config file /opt/linuxki/config not found. >&2
18 | echo Linux KI Toolset not properly installed... >&2
19 | exit 10
20 | fi
21 |
22 | . /opt/linuxki/config
23 |
24 | [ -z "$CMU_DATADIR" ] && echo "CMU_DATADIR not set in /opt/linuxki/config???" >&2 && exit 11
25 | [ -z "$NODE_STAGEDIR" ] && echo "NODE_STAGEDIR not set in /opt/linuxki/config???" >&2 && exit 12
26 |
27 | #
28 | # setup
29 | #
30 | [ -z "$WCOLL" ] && echo "WCOLL (file containing list of target hosts) not set???" >&2 && exit 14
31 | export WCOLL
32 |
33 | #
34 | # Display diskspace
35 | #
36 | echo ------------------------------------------------------
37 | echo CMU Head Node Data Repository $CMU_DATADIR:
38 | echo ------------------------------------------------------
39 |
40 | df -Ha $CMU_DATADIR
41 |
42 | echo " "
43 | echo ------------------------------------------------------
44 | echo Target Nodes Staging Area $NODE_STAGEDIR:
45 | echo ------------------------------------------------------
46 |
47 | $PDSH -S df -Ha $NODE_STAGEDIR | grep -v Filesystem | sort | uniq
48 |
--------------------------------------------------------------------------------
/cluster/cluster_install:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #**************************************************************************
3 | # Copyright 2017 Hewlett Packard Enterprise Development LP.
4 | # This program is free software; you can redistribute it and/or modify
5 | # it under the terms of the GNU General Public License as published by
6 | # the Free Software Foundation; either version 2 of the License, or (at
7 | # your option) any later version. This program is distributed in the
8 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even
9 | # the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
10 | # PURPOSE. See the GNU General Public License for more details. You
11 | # should have received a copy of the GNU General Public License along
12 | # with this program; if not, write to the Free Software Foundation,
13 | # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
14 | #***************************************************************************
15 |
16 | if [ ! -f /opt/linuxki/config ]; then
17 | echo Linux KI Toolset config file /opt/linuxki/config not found. >&2
18 | echo Linux KI Toolset not properly installed... >&2
19 | exit 10
20 | fi
21 |
22 | . /opt/linuxki/config
23 |
24 | [ -z "$CMU_DATADIR" ] && echo "CMU_DATADIR not set in config???" && exit 11
25 |
26 | #
27 | # setup
28 | #
29 | [ -z "$WCOLL" ] && echo "WCOLL (file containing list of target hosts) not set???" >&2 && exit 12
30 | export WCOLL
31 | TMPFILE=`mktemp`
32 |
33 | #
34 | # Copy preparation script to nodes
35 | #
36 | $PDCP -p /opt/linuxki/cluster/node_install /tmp/linuxki_node_install 2> $TMPFILE
37 | if [ $? -ne 0 ]; then
38 | echo " " >&2
39 | echo !!!Distribution of node installation script failed!!! >&2
40 | echo non-zero pdcp return code >&2
41 | cat $TMPFILE >&2
42 | rm -f $TMPFILE
43 | exit 14
44 | fi
45 | grep -q "exit code" $TMPFILE
46 | if [ $? -eq 0 ]; then
47 | echo " " >&2
48 | echo !!!Distribution of node installation script failed!!! >&2
49 | echo Most likely pdcp is not installed on target nodes. >&2
50 | cat $TMPFILE >&2
51 | rm -f $TMPFILE
52 | exit 15
53 | fi
54 |
55 | $PDCP -p /opt/linuxki/config /tmp/linuxki_config 2> $TMPFILE
56 | if [ $? -ne 0 ]; then
57 | echo " " >&2
58 | echo !!!Distribution of config script failed!!! >&2
59 | echo Could not copy the config file to target nodes. >&2
60 | echo non-zero pdcp return code >&2
61 | cat $TMPFILE >&2
62 | rm -f $TMPFILE
63 | exit 16
64 | fi
65 | grep -q "exit code" $TMPFILE
66 | if [ $? -eq 0 ]; then
67 | echo " " >&2
68 | echo !!!Distribution of config script failed!!! >&2
69 | echo Could not copy the config file to target nodes. >&2
70 | cat $TMPFILE >&2
71 | rm -f $TMPFILE
72 | exit 17
73 | fi
74 |
75 |
76 | #
77 | # run install script on nodes
78 | #
79 | $PDSH -S /tmp/linuxki_node_install
80 |
81 | rm -f $TMPFILE
82 |
83 | exit 0
84 |
--------------------------------------------------------------------------------
/cluster/cluster_remove:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #**************************************************************************
3 | # Copyright 2017 Hewlett Packard Enterprise Development LP.
4 | # This program is free software; you can redistribute it and/or modify
5 | # it under the terms of the GNU General Public License as published by
6 | # the Free Software Foundation; either version 2 of the License, or (at
7 | # your option) any later version. This program is distributed in the
8 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even
9 | # the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
10 | # PURPOSE. See the GNU General Public License for more details. You
11 | # should have received a copy of the GNU General Public License along
12 | # with this program; if not, write to the Free Software Foundation,
13 | # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
14 | #***************************************************************************
15 |
16 | if [ ! -f /opt/linuxki/config ]; then
17 | echo " " >&2
18 | echo Linux KI Toolset config file /opt/linuxki/config not found. >&2
19 | echo Linux KI Toolset not properly installed... >&2
20 | exit 10
21 | fi
22 |
23 | . /opt/linuxki/config
24 |
25 | #
26 | # setup
27 | #
28 | [ -z "$WCOLL" ] && echo "WCOLL (file containing list of target hosts) not set???" >&2 && exit 11
29 | export WCOLL
30 | TMPFILE=`mktemp`
31 |
32 | #
33 | # copy remove script to nodes
34 | #
35 | $PDCP -p /opt/linuxki/cluster/node_remove /tmp/linuxki_node_remove 2> $TMPFILE
36 | if [ ! $? -eq 0 ]; then
37 | echo " " >&2
38 | echo !!!Distribution of node uninstall script failed!!! >&2
39 | echo non-zero pdcp return code >&2
40 | cat $TMPFILE >&2
41 | exit 12
42 | fi
43 | grep -q "exit code" $TMPFILE
44 | if [ $? -eq 0 ]; then
45 | echo " " >&2
46 | echo !!!Distribution of node uninstall script failed!!! >&2
47 | echo Most likely pdcp is not installed on the target nodes. >&2
48 | cat $TMPFILE >&2
49 | exit 14
50 | fi
51 |
52 | #
53 | # run remove script on nodes
54 | #
55 | $PDSH -S /tmp/linuxki_node_remove
56 |
57 | rm -f $TMPFILE
58 |
59 | exit 0
60 |
--------------------------------------------------------------------------------
/cluster/node_remove:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #**************************************************************************
3 | # Copyright 2017 Hewlett Packard Enterprise Development LP.
4 | # This program is free software; you can redistribute it and/or modify
5 | # it under the terms of the GNU General Public License as published by
6 | # the Free Software Foundation; either version 2 of the License, or (at
7 | # your option) any later version. This program is distributed in the
8 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even
9 | # the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
10 | # PURPOSE. See the GNU General Public License for more details. You
11 | # should have received a copy of the GNU General Public License along
12 | # with this program; if not, write to the Free Software Foundation,
13 | # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
14 | #***************************************************************************
15 |
16 | CMU_HOST=`echo $SSH_CLIENT|awk '{print $1}'`
17 | CMU_CLIENT=`echo $SSH_CONNECTION|awk '{print $3}'`
18 |
19 | # if its a PDSH to the same CMU Host, then simply return
20 | # as there as there is nothing to install
21 | if [ $CMU_HOST == $CMU_CLIENT ]; then
22 | exit 0;
23 | fi
24 |
25 | date > /tmp/linuxki.last.run
26 | echo $0 >> /tmp/linuxki.last.run
27 | mount >> /tmp/linuxki.last.run
28 |
29 | echo --- Linux KI Toolset node uninstall starting...
30 |
31 | # Check for stale NFS mount point and remount if stale
32 | grep -q -e " /opt/linuxki " /etc/fstab
33 | if [ $? -eq 0 ]; then
34 | TMPFILE=`mktemp`
35 | ls /opt/linuxki/config > /dev/null 2> $TMPFILE
36 | grep -q Stale $TMPFILE && umount -f /opt/linuxki && mount /opt/linuxki
37 | rm -f $TMPFILE
38 | fi
39 |
40 | [ -f /opt/linuxki/config ] && . /opt/linuxki/config
41 |
42 | [ -z $CMU_DATADIR ] && CMU_DATADIR=/var/linuxki
43 |
44 | #
45 | # Remove NFS mounts from /etc/fstab
46 | # Its OK if one or more are not present
47 | #
48 | grep -q -e " /opt/linuxki " -e " $CMU_DATADIR " /etc/fstab
49 | if [ $? -eq 0 ]; then
50 | TMPFILE=`mktemp`
51 | grep -v -e " /opt/linuxki " -e " $CMU_DATADIR " -e "Linux KI" /etc/fstab > $TMPFILE
52 | mv $TMPFILE /etc/fstab
53 | chmod 644 /etc/fstab
54 | rm -f $TMPFILE
55 | fi
56 |
57 | #
58 | # if directories are NFS mounted, then unmount them
59 | #
60 | mount | grep " /opt/linuxki " | grep -q " nfs"
61 | if [ $? -eq 0 ]; then
62 | umount -f /opt/linuxki
63 | fi
64 |
65 | mount | grep " $CMU_DATADIR " | grep -q " nfs"
66 | if [ $? -eq 0 ]; then
67 | umount -f $CMU_DATADIR
68 | fi
69 |
70 | #
71 | # Remove module
72 | #
73 | modprobe -r -q likit
74 | rm -f /lib/modules/`uname -r`/misc/likit.ko 2>> /dev/null
75 | depmod
76 |
77 | rm -f /tmp/linuxki_node_remove
78 |
79 | date >> /tmp/linuxki.last.run
80 | echo --- Linux KI Toolset node uninstall complete!
81 | exit 0
82 |
--------------------------------------------------------------------------------
/documentation/LinuxKI_FAQ.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HewlettPackard/LinuxKI/8ed9acc09e85f66150cf40b0283f98ff12f0bd37/documentation/LinuxKI_FAQ.pdf
--------------------------------------------------------------------------------
/documentation/LinuxKI_MasterClass.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HewlettPackard/LinuxKI/8ed9acc09e85f66150cf40b0283f98ff12f0bd37/documentation/LinuxKI_MasterClass.pdf
--------------------------------------------------------------------------------
/documentation/LinuxKI_QuickRefGuide.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HewlettPackard/LinuxKI/8ed9acc09e85f66150cf40b0283f98ff12f0bd37/documentation/LinuxKI_QuickRefGuide.pdf
--------------------------------------------------------------------------------
/experimental/D3/lib/colorbrewer/LICENSE:
--------------------------------------------------------------------------------
1 | Apache-Style Software License for ColorBrewer software and ColorBrewer Color
2 | Schemes
3 |
4 | Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State
5 | University.
6 |
7 | Licensed under the Apache License, Version 2.0 (the "License"); you may not
8 | use this file except in compliance with the License. You may obtain a copy of
9 | the License at
10 |
11 | http://www.apache.org/licenses/LICENSE-2.0
12 |
13 | Unless required by applicable law or agreed to in writing, software
14 | distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
15 | WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
16 | License for the specific language governing permissions and limitations under
17 | the License.
18 |
19 | Redistribution and use in source and binary forms, with or without
20 | modification, are permitted provided that the following conditions are met:
21 |
22 | 1. Redistributions as source code must retain the above copyright notice, this
23 | list of conditions and the following disclaimer.
24 |
25 | 2. The end-user documentation included with the redistribution, if any, must
26 | include the following acknowledgment: "This product includes color
27 | specifications and designs developed by Cynthia Brewer
28 | (http://colorbrewer.org/)." Alternately, this acknowledgment may appear in the
29 | software itself, if and wherever such third-party acknowledgments normally
30 | appear.
31 |
32 | 4. The name "ColorBrewer" must not be used to endorse or promote products
33 | derived from this software without prior written permission. For written
34 | permission, please contact Cynthia Brewer at cbrewer@psu.edu.
35 |
36 | 5. Products derived from this software may not be called "ColorBrewer", nor
37 | may "ColorBrewer" appear in their name, without prior written permission of
38 | Cynthia Brewer.
39 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/.gitignore:
--------------------------------------------------------------------------------
1 | _site
2 | node_modules
3 | .DS_Store
4 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/.gitmodules:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HewlettPackard/LinuxKI/8ed9acc09e85f66150cf40b0283f98ff12f0bd37/experimental/D3/lib/d3/.gitmodules
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/.npmignore:
--------------------------------------------------------------------------------
1 | examples/
2 | test/
3 | lib/
4 | .DS_Store
5 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.10
4 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2013, Michael Bostock
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted provided that the following conditions are met:
6 |
7 | * Redistributions of source code must retain the above copyright notice, this
8 | list of conditions and the following disclaimer.
9 |
10 | * Redistributions in binary form must reproduce the above copyright notice,
11 | this list of conditions and the following disclaimer in the documentation
12 | and/or other materials provided with the distribution.
13 |
14 | * The name Michael Bostock may not be used to endorse or promote products
15 | derived from this software without specific prior written permission.
16 |
17 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20 | DISCLAIMED. IN NO EVENT SHALL MICHAEL BOSTOCK BE LIABLE FOR ANY DIRECT,
21 | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
22 | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
24 | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
25 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
26 | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/Makefile:
--------------------------------------------------------------------------------
1 | LOCALE ?= en_US
2 |
3 | GENERATED_FILES = \
4 | d3.js \
5 | d3.min.js \
6 | component.json
7 |
8 | all: $(GENERATED_FILES)
9 |
10 | .PHONY: clean all test
11 |
12 | test:
13 | @npm test
14 |
15 | benchmark: all
16 | @node test/geo/benchmark.js
17 |
18 | src/format/format-localized.js: bin/locale src/format/format-locale.js
19 | LC_NUMERIC=$(LOCALE) locale -ck LC_NUMERIC | bin/locale src/format/format-locale.js > $@
20 |
21 | src/time/format-localized.js: bin/locale src/time/format-locale.js
22 | LC_TIME=$(LOCALE) locale -ck LC_TIME | bin/locale src/time/format-locale.js > $@
23 |
24 | src/start.js: package.json bin/start
25 | bin/start > $@
26 |
27 | d3.js: $(shell node_modules/.bin/smash --list src/d3.js) package.json
28 | @rm -f $@
29 | node_modules/.bin/smash src/d3.js | node_modules/.bin/uglifyjs - -b indent-level=2 -o $@
30 | @chmod a-w $@
31 |
32 | d3.min.js: d3.js
33 | @rm -f $@
34 | bin/uglify $< > $@
35 |
36 | component.json: bin/component d3.js package.json
37 | @rm -f $@
38 | bin/component > $@
39 | @chmod a-w $@
40 |
41 | clean:
42 | rm -f -- $(GENERATED_FILES)
43 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/README.md:
--------------------------------------------------------------------------------
1 | # Data-Driven Documents
2 |
3 | **D3.js** is a JavaScript library for manipulating documents based on data. **D3** helps you bring data to life using HTML, SVG and CSS. D3’s emphasis on web standards gives you the full capabilities of modern browsers without tying yourself to a proprietary framework, combining powerful visualization components and a data-driven approach to DOM manipulation.
4 |
5 | Want to learn more? [See the wiki.](https://github.com/mbostock/d3/wiki)
6 |
7 | For examples, [see the gallery](https://github.com/mbostock/d3/wiki/Gallery) and [mbostock’s bl.ocks](http://bl.ocks.org/mbostock).
8 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/bin/component:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | console.log(JSON.stringify({
4 | "name": "d3",
5 | "version": require("../package.json").version,
6 | "main": "index-browserify.js",
7 | "scripts": ["index-browserify.js", "d3.js"]
8 | }, null, 2));
9 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/bin/locale:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | var fs = require("fs"),
4 | puts = require("util").puts,
5 | formats = {},
6 | kvRe = /=/,
7 | valueRe = /;/g,
8 | quotedRe = /"([^"]*?)"/g,
9 | data = [];
10 |
11 | process.stdin.resume();
12 | process.stdin.setEncoding("utf8");
13 | process.stdin.on("data", function(chunk) { data.push(chunk); });
14 | process.stdin.on("end", write);
15 |
16 | function write() {
17 | data.join("\n").split(/\n/g).forEach(function(line) {
18 | var i = line.match(kvRe);
19 | if (i && (i = i.index)) {
20 | var value = line.substring(i + 1).replace(quotedRe, "$1").split(valueRe);
21 | formats[line.substring(0, i)] = value;
22 | }
23 | });
24 |
25 | puts(fs.readFileSync(process.argv[2], "utf8").replace(/\{([^\}]+)\}/g, function(d, k) {
26 | d = formats[k];
27 | return k === "grouping"
28 | ? d === "127" || d === "0" ? null : "[" + d.map(Number).join(", ") + "]"
29 | : d == null ? null : d.length > 1 ? "[" + d.map(quote).join(", ") + "]" : quote(d[0]);
30 | }));
31 | }
32 |
33 | function quote(d) { return '"' + d + '"'; }
34 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/bin/start:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | console.log("d3 = (function(){\n var d3 = {version: " + JSON.stringify(require("../package.json").version) + "}; // semver");
4 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/bin/uglify:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | var fs = require("fs"),
4 | uglify = require("uglify-js");
5 |
6 | var filename = process.argv[2],
7 | toplevel = uglify.parse(fs.readFileSync(filename, "utf8"), {filename: filename}),
8 | output = uglify.OutputStream(),
9 | compressor = uglify.Compressor(true),
10 | warn = uglify.AST_Node.warn;
11 |
12 | uglify.AST_Node.warn = function(s, o) {
13 | if (o.msg === "Accidental global?" && o.name === "d3" && o.line === 1 && !o.col) return;
14 | warn.apply(this, arguments);
15 | };
16 |
17 | toplevel.figure_out_scope();
18 | toplevel.scope_warnings({
19 | undeclared: false,
20 | unreferenced: false,
21 | assign_to_global: true,
22 | func_arguments: false,
23 | nested_defuns: false,
24 | eval: false
25 | });
26 |
27 | toplevel = toplevel.transform(compressor);
28 |
29 | toplevel.figure_out_scope();
30 | toplevel.compute_char_frequency(true);
31 | toplevel.mangle_names(true);
32 | toplevel.print(output);
33 |
34 | require("util").print(output.get());
35 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "d3",
3 | "version": "3.1.10",
4 | "main": "index-browserify.js",
5 | "scripts": [
6 | "index-browserify.js",
7 | "d3.js"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/globals.js:
--------------------------------------------------------------------------------
1 | var document = global.document = require("jsdom").jsdom(""),
2 | window = global.window = document.createWindow();
3 |
4 | // https://github.com/chad3814/CSSStyleDeclaration/issues/3
5 | var CSSStyleDeclaration_prototype = window.CSSStyleDeclaration.prototype,
6 | CSSStyleDeclaration_setProperty = CSSStyleDeclaration_prototype.setProperty;
7 | CSSStyleDeclaration_prototype.setProperty = function(name, value, priority) {
8 | return CSSStyleDeclaration_setProperty.call(this, name + "", value == null ? null : value + "", priority == null ? null : priority + "");
9 | };
10 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/index-browserify.js:
--------------------------------------------------------------------------------
1 | require("./d3");
2 | module.exports = d3;
3 | (function () { delete this.d3; })(); // unset global
4 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/index.js:
--------------------------------------------------------------------------------
1 | var globals = ["document", "window", "d3"],
2 | globalValues = {};
3 |
4 | globals.forEach(function(g) {
5 | if (g in global) globalValues[g] = global[g];
6 | });
7 |
8 | require("./globals");
9 | require("./d3");
10 |
11 | module.exports = d3;
12 |
13 | globals.forEach(function(g) {
14 | if (g in globalValues) global[g] = globalValues[g];
15 | else delete global[g];
16 | });
17 |
--------------------------------------------------------------------------------
/experimental/D3/lib/d3/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "d3",
3 | "version": "3.1.10",
4 | "description": "A small, free JavaScript library for manipulating documents based on data.",
5 | "keywords": [
6 | "dom",
7 | "w3c",
8 | "visualization",
9 | "svg",
10 | "animation",
11 | "canvas"
12 | ],
13 | "homepage": "http://d3js.org",
14 | "author": {
15 | "name": "Mike Bostock",
16 | "url": "http://bost.ocks.org/mike"
17 | },
18 | "contributors": [
19 | {
20 | "name": "Jason Davies",
21 | "url": "http://jasondavies.com"
22 | }
23 | ],
24 | "repository": {
25 | "type": "git",
26 | "url": "https://github.com/mbostock/d3.git"
27 | },
28 | "main": "index.js",
29 | "browserify": "index-browserify.js",
30 | "jam": {
31 | "main": "d3.js",
32 | "shim": {
33 | "exports": "d3"
34 | }
35 | },
36 | "dependencies": {
37 | "jsdom": "~0.5.3"
38 | },
39 | "devDependencies": {
40 | "smash": "~0.0.8",
41 | "uglify-js": "git://github.com/mishoo/UglifyJS2.git#3bd7ca9961125b39dcd54d2182cb72bd1ca6006e",
42 | "vows": "0.7.x"
43 | },
44 | "scripts": {
45 | "test": "node_modules/.bin/vows"
46 | },
47 | "licenses": [
48 | {
49 | "type": "BSD",
50 | "url": "https://github.com/mbostock/d3/blob/master/LICENSE"
51 | }
52 | ]
53 | }
54 |
--------------------------------------------------------------------------------
/experimental/D3/lib/divgrid.js:
--------------------------------------------------------------------------------
1 | // http://bl.ocks.org/3687826
2 | d3.divgrid = function(config) {
3 | var columns = [];
4 |
5 | var dg = function(selection) {
6 | if (columns.length == 0) columns = d3.keys(selection.data()[0][0]);
7 |
8 | // header
9 | selection.selectAll(".header")
10 | .data([true])
11 | .enter().append("div")
12 | .attr("class", "header");
13 |
14 | var header = selection.select(".header")
15 | .selectAll(".cell")
16 | .data(columns);
17 |
18 | header.enter().append("div")
19 | .attr("class", function(d,i) { return "col-" + i; })
20 | .classed("cell", true);
21 |
22 | selection.selectAll(".header .cell")
23 | .text(function(d) { return d; });
24 |
25 | header.exit().remove();
26 |
27 | // rows
28 | var rows = selection.selectAll(".row")
29 | .data(function(d) { return d; })
30 |
31 | rows.enter().append("div")
32 | .attr("class", "row")
33 |
34 | rows.exit().remove();
35 |
36 | var cells = selection.selectAll(".row").selectAll(".cell")
37 | .data(function(d) { return columns.map(function(col){return d[col];}) })
38 |
39 | // cells
40 | cells.enter().append("div")
41 | .attr("class", function(d,i) { return "col-" + i; })
42 | .classed("cell", true)
43 |
44 | cells.exit().remove();
45 |
46 | selection.selectAll(".cell")
47 | .text(function(d) { return d; });
48 |
49 | return dg;
50 | };
51 |
52 | dg.columns = function(_) {
53 | if (!arguments.length) return columns;
54 | columns = _;
55 | return this;
56 | };
57 |
58 | return dg;
59 | };
60 |
--------------------------------------------------------------------------------
/experimental/D3/lib/firebugx.js:
--------------------------------------------------------------------------------
1 | if (typeof console === "undefined" || typeof console.log === "undefined") {
2 | var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
3 | "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
4 |
5 | window.console = {};
6 | for (var i = 0; i < names.length; ++i) {
7 | window.console[names[i]] = function() {}
8 | }
9 | }
--------------------------------------------------------------------------------
/experimental/D3/lib/jit/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2010, Nicolas Garcia Belmonte
2 | All rights reserved
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted provided that the following conditions are met:
6 |
7 | * Redistributions of source code must retain the above copyright notice, this
8 | list of conditions and the following disclaimer.
9 |
10 | * Redistributions in binary form must reproduce the above copyright notice,
11 | this list of conditions and the following disclaimer in the documentation
12 | and/or other materials provided with the distribution.
13 |
14 | * Neither the name of the organization nor the names of its contributors may
15 | be used to endorse or promote products derived from this software without
16 | specific prior written permission.
17 |
18 | THIS SOFTWARE IS PROVIDED BY NICOLAS GARCIA BELMONTE ``AS IS'' AND ANY EXPRESS
19 | OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20 | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
21 | EVENT SHALL NICOLAS GARCIA BELMONTE BE LIABLE FOR ANY DIRECT, INDIRECT,
22 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
25 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
26 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
27 | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 |
--------------------------------------------------------------------------------
/experimental/D3/lib/jquery.jsonp-2.4.min.js:
--------------------------------------------------------------------------------
1 | // jquery.jsonp 2.4.0 (c)2012 Julian Aubourg | MIT License
2 | // https://github.com/jaubourg/jquery-jsonp
3 | (function(e){function t(){}function n(e){C=[e]}function r(e,t,n){return e&&e.apply&&e.apply(t.context||t,n)}function i(e){return/\?/.test(e)?"&":"?"}function O(c){function Y(e){z++||(W(),j&&(T[I]={s:[e]}),D&&(e=D.apply(c,[e])),r(O,c,[e,b,c]),r(_,c,[c,b]))}function Z(e){z++||(W(),j&&e!=w&&(T[I]=e),r(M,c,[c,e]),r(_,c,[c,e]))}c=e.extend({},k,c);var O=c.success,M=c.error,_=c.complete,D=c.dataFilter,P=c.callbackParameter,H=c.callback,B=c.cache,j=c.pageCache,F=c.charset,I=c.url,q=c.data,R=c.timeout,U,z=0,W=t,X,V,J,K,Q,G;return S&&S(function(e){e.done(O).fail(M),O=e.resolve,M=e.reject}).promise(c),c.abort=function(){!(z++)&&W()},r(c.beforeSend,c,[c])===!1||z?c:(I=I||u,q=q?typeof q=="string"?q:e.param(q,c.traditional):u,I+=q?i(I)+q:u,P&&(I+=i(I)+encodeURIComponent(P)+"=?"),!B&&!j&&(I+=i(I)+"_"+(new Date).getTime()+"="),I=I.replace(/=\?(&|$)/,"="+H+"$1"),j&&(U=T[I])?U.s?Y(U.s[0]):Z(U):(E[H]=n,K=e(y)[0],K.id=l+N++,F&&(K[o]=F),L&&L.version()<11.6?(Q=e(y)[0]).text="document.getElementById('"+K.id+"')."+p+"()":K[s]=s,A&&(K.htmlFor=K.id,K.event=h),K[d]=K[p]=K[v]=function(e){if(!K[m]||!/i/.test(K[m])){try{K[h]&&K[h]()}catch(t){}e=C,C=0,e?Y(e[0]):Z(a)}},K.src=I,W=function(e){G&&clearTimeout(G),K[v]=K[d]=K[p]=null,x[g](K),Q&&x[g](Q)},x[f](K,J=x.firstChild),Q&&x[f](Q,J),G=R>0&&setTimeout(function(){Z(w)},R)),c)}var s="async",o="charset",u="",a="error",f="insertBefore",l="_jqjsp",c="on",h=c+"click",p=c+a,d=c+"load",v=c+"readystatechange",m="readyState",g="removeChild",y="
32 |
33 |
34 |
35 |
36 |
37 |
38 |
72 |