Spaces:
Runtime error
Runtime error
Anooj
commited on
Commit
•
5df657d
1
Parent(s):
a5173d1
move app code here
Browse files- Dockerfile +20 -208
- Manifest.toml +621 -0
- Project.toml +12 -0
- app.jl +44 -0
- src/ImpCatcher.jl +7 -0
- src/simulate.jl +59 -0
Dockerfile
CHANGED
@@ -1,208 +1,20 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
# ipython latest (pip)
|
22 |
-
# ipykernel latest (pip)
|
23 |
-
# ipywidgets latest (pip)
|
24 |
-
# gradient latest (pip)
|
25 |
-
# Cython latest (pip)
|
26 |
-
# tqdm latest (pip)
|
27 |
-
# gdown latest (pip)
|
28 |
-
# xgboost latest (pip)
|
29 |
-
# pillow latest (pip)
|
30 |
-
# seaborn latest (pip)
|
31 |
-
# SQLAlchemy latest (pip)
|
32 |
-
# spacy latest (pip)
|
33 |
-
# nltk latest (pip)
|
34 |
-
# jsonify latest (pip)
|
35 |
-
# boto3 latest (pip)
|
36 |
-
# transformers latest (pip)
|
37 |
-
# sentence-transformers latest (pip)
|
38 |
-
# opencv-python latest (pip)
|
39 |
-
# JAX latest (pip)
|
40 |
-
# JAXlib latest (pip)
|
41 |
-
# ==================================================================
|
42 |
-
|
43 |
-
# Ubuntu 20.04, CUDA Toolkit 11.2, CUDNN 8
|
44 |
-
## Check with Josh about the driver interactions here <-
|
45 |
-
|
46 |
-
FROM nvcr.io/nvidia/cuda:11.2.1-cudnn8-devel-ubuntu20.04 as devtools
|
47 |
-
ENV LANG C.UTF-8
|
48 |
-
|
49 |
-
# Setting shell to bash
|
50 |
-
ENV SHELL=/bin/bash
|
51 |
-
SHELL ["/bin/bash", "-c"]
|
52 |
-
|
53 |
-
RUN APT_INSTALL="apt-get install -y --no-install-recommends" && \
|
54 |
-
PIP_INSTALL="python3 -m pip --no-cache-dir install --upgrade" && \
|
55 |
-
GIT_CLONE="git clone --depth 10" && \
|
56 |
-
|
57 |
-
rm -rf /var/lib/apt/lists/* \
|
58 |
-
/etc/apt/sources.list.d/cuda.list \
|
59 |
-
/etc/apt/sources.list.d/nvidia-ml.list && \
|
60 |
-
|
61 |
-
apt-get update && \
|
62 |
-
|
63 |
-
# ==================================================================
|
64 |
-
# tools
|
65 |
-
# ------------------------------------------------------------------
|
66 |
-
|
67 |
-
sed -e '\|/usr/share/man|s|^#*|#|g' -i /etc/dpkg/dpkg.cfg.d/excludes && \
|
68 |
-
|
69 |
-
DEBIAN_FRONTEND=noninteractive $APT_INSTALL \
|
70 |
-
build-essential \
|
71 |
-
apt-utils \
|
72 |
-
ca-certificates \
|
73 |
-
wget \
|
74 |
-
rsync \
|
75 |
-
git \
|
76 |
-
vim \
|
77 |
-
libssl-dev \
|
78 |
-
curl \
|
79 |
-
openssh-client \
|
80 |
-
unzip \
|
81 |
-
unrar \
|
82 |
-
zip \
|
83 |
-
awscli \
|
84 |
-
csvkit \
|
85 |
-
emacs \
|
86 |
-
joe \
|
87 |
-
jq \
|
88 |
-
dialog \
|
89 |
-
man-db \
|
90 |
-
manpages \
|
91 |
-
manpages-dev \
|
92 |
-
manpages-posix \
|
93 |
-
manpages-posix-dev \
|
94 |
-
nano \
|
95 |
-
iputils-ping \
|
96 |
-
sudo \
|
97 |
-
ffmpeg \
|
98 |
-
libsm6 \
|
99 |
-
libxext6 \
|
100 |
-
&& \
|
101 |
-
|
102 |
-
rm -f /usr/bin/man && \
|
103 |
-
dpkg-divert --quiet --remove --rename /usr/bin/man && \
|
104 |
-
rm -f /usr/share/man/man1/sh.1.gz && \
|
105 |
-
dpkg-divert --quiet --remove --rename /usr/share/man/man1/sh.1.gz && \
|
106 |
-
|
107 |
-
#$GIT_CLONE https://github.com/Kitware/CMake ~/cmake && \
|
108 |
-
#cd ~/cmake && \
|
109 |
-
#./bootstrap && \
|
110 |
-
#make -j"$(nproc)" install && \
|
111 |
-
|
112 |
-
# ==================================================================
|
113 |
-
# Python
|
114 |
-
# ------------------------------------------------------------------
|
115 |
-
|
116 |
-
# Installing python3.9
|
117 |
-
DEBIAN_FRONTEND=noninteractive \
|
118 |
-
$APT_INSTALL software-properties-common && \
|
119 |
-
add-apt-repository ppa:deadsnakes/ppa -y && \
|
120 |
-
|
121 |
-
DEBIAN_FRONTEND=noninteractive $APT_INSTALL \
|
122 |
-
python3.9 \
|
123 |
-
python3.9-dev \
|
124 |
-
python3-distutils-extra \
|
125 |
-
&& \
|
126 |
-
|
127 |
-
# Installing pip
|
128 |
-
wget -O ~/get-pip.py \
|
129 |
-
https://bootstrap.pypa.io/get-pip.py && \
|
130 |
-
python3.9 ~/get-pip.py && \
|
131 |
-
|
132 |
-
# Add symlink so python and python3 commands use same
|
133 |
-
# python3.9 executable
|
134 |
-
ln -s /usr/bin/python3.9 /usr/local/bin/python3 && \
|
135 |
-
ln -s /usr/bin/python3.9 /usr/local/bin/python && \
|
136 |
-
|
137 |
-
# Intalling Python packages
|
138 |
-
$PIP_INSTALL \
|
139 |
-
numpy \
|
140 |
-
scipy \
|
141 |
-
pandas \
|
142 |
-
cloudpickle \
|
143 |
-
scikit-image \
|
144 |
-
scikit-learn \
|
145 |
-
matplotlib \
|
146 |
-
ipython \
|
147 |
-
ipykernel \
|
148 |
-
ipywidgets \
|
149 |
-
gradient \
|
150 |
-
Cython \
|
151 |
-
tqdm \
|
152 |
-
gdown \
|
153 |
-
xgboost \
|
154 |
-
pillow \
|
155 |
-
seaborn \
|
156 |
-
SQLAlchemy \
|
157 |
-
spacy \
|
158 |
-
nltk \
|
159 |
-
jsonify \
|
160 |
-
boto3 \
|
161 |
-
transformers \
|
162 |
-
sentence-transformers \
|
163 |
-
datasets \
|
164 |
-
opencv-python \
|
165 |
-
&& \
|
166 |
-
|
167 |
-
|
168 |
-
# ==================================================================
|
169 |
-
# boost
|
170 |
-
# ------------------------------------------------------------------
|
171 |
-
|
172 |
-
DEBIAN_FRONTEND=noninteractive $APT_INSTALL \
|
173 |
-
libboost-all-dev \
|
174 |
-
&& \
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
# ==================================================================
|
179 |
-
# Conda
|
180 |
-
# ------------------------------------------------------------------
|
181 |
-
|
182 |
-
# wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && \
|
183 |
-
# /bin/bash ~/miniconda.sh -b -p /opt/conda && \
|
184 |
-
|
185 |
-
|
186 |
-
# ==================================================================
|
187 |
-
# Config & Cleanup
|
188 |
-
# ------------------------------------------------------------------
|
189 |
-
|
190 |
-
ldconfig && \
|
191 |
-
apt-get clean && \
|
192 |
-
apt-get autoremove && \
|
193 |
-
rm -rf /var/lib/apt/lists/* /tmp/* ~/* && \
|
194 |
-
|
195 |
-
#===================================================================
|
196 |
-
# Install Julia and CUDA tooling
|
197 |
-
#-------------------------------------------------------------------
|
198 |
-
wget -q 'https://julialang-s3.julialang.org/bin/linux/x64/1.7/julia-1.7.2-linux-x86_64.tar.gz' \
|
199 |
-
-O /tmp/julia.tar.gz && \
|
200 |
-
tar -x -f /tmp/julia.tar.gz -C /usr/local --strip-components 1 && \
|
201 |
-
rm /tmp/julia.tar.gz && \
|
202 |
-
|
203 |
-
julia -e 'using Pkg; Pkg.add("IJulia"); Pkg.precompile();' && \
|
204 |
-
julia -e 'Pkg.add(["BenchmarkTools", "CUDA"]);using BenchmarkTools, CUDA; has_cuda_gpu() ? print("The GPU device is:", CUDA.device())) : print("no cuda")' && \
|
205 |
-
|
206 |
-
echo 'Done'
|
207 |
-
EXPOSE 8888 6006
|
208 |
-
|
|
|
1 |
+
FROM julia:1.8
|
2 |
+
|
3 |
+
RUN useradd --create-home --shell /bin/bash genie
|
4 |
+
RUN mkdir /home/genie/app
|
5 |
+
COPY . /home/genie/app
|
6 |
+
WORKDIR /home/genie/app
|
7 |
+
RUN chown -R genie:genie /home/
|
8 |
+
USER genie
|
9 |
+
|
10 |
+
EXPOSE 8000
|
11 |
+
EXPOSE 80
|
12 |
+
ENV JULIA_DEPOT_PATH "/home/genie/.julia"
|
13 |
+
ENV GENIE_ENV "dev"
|
14 |
+
ENV GENIE_HOST "0.0.0.0"
|
15 |
+
ENV PORT "8000"
|
16 |
+
ENV WSPORT "8000"
|
17 |
+
|
18 |
+
RUN julia -e 'using Pkg; Pkg.activate("."); Pkg.add("Stipple"); Pkg.precompile()'
|
19 |
+
|
20 |
+
ENTRYPOINT julia --project -e 'using Pkg; Pkg.instantiate(); using Genie; Genie.loadapp(); up(async=false);;'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Manifest.toml
ADDED
@@ -0,0 +1,621 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# This file is machine-generated - editing it directly is not advised
|
2 |
+
|
3 |
+
julia_version = "1.7.3"
|
4 |
+
manifest_format = "2.0"
|
5 |
+
|
6 |
+
[[deps.ArgParse]]
|
7 |
+
deps = ["Logging", "TextWrap"]
|
8 |
+
git-tree-sha1 = "3102bce13da501c9104df33549f511cd25264d7d"
|
9 |
+
uuid = "c7e460c6-2fb9-53a9-8c5b-16f535851c63"
|
10 |
+
version = "1.1.4"
|
11 |
+
|
12 |
+
[[deps.ArgTools]]
|
13 |
+
uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f"
|
14 |
+
|
15 |
+
[[deps.Artifacts]]
|
16 |
+
uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33"
|
17 |
+
|
18 |
+
[[deps.Base64]]
|
19 |
+
uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f"
|
20 |
+
|
21 |
+
[[deps.CSTParser]]
|
22 |
+
deps = ["Tokenize"]
|
23 |
+
git-tree-sha1 = "3ddd48d200eb8ddf9cb3e0189fc059fd49b97c1f"
|
24 |
+
uuid = "00ebfdb7-1f24-5e51-bd34-a7502290713f"
|
25 |
+
version = "3.3.6"
|
26 |
+
|
27 |
+
[[deps.Chess]]
|
28 |
+
deps = ["Crayons", "Dates", "DefaultApplication", "Hiccup", "JSON", "Printf", "Random", "Revise", "SQLite", "StaticArrays", "StatsBase", "UUIDs"]
|
29 |
+
git-tree-sha1 = "25dd5d7d76a48dade714e68361b50926a0cd77c9"
|
30 |
+
repo-rev = "master"
|
31 |
+
repo-url = "https://github.com/anoojpatel/Chess.jl.git"
|
32 |
+
uuid = "717200cc-f167-4fd3-b4bf-b5e480529844"
|
33 |
+
version = "0.3.0"
|
34 |
+
|
35 |
+
[[deps.CodeTracking]]
|
36 |
+
deps = ["InteractiveUtils", "UUIDs"]
|
37 |
+
git-tree-sha1 = "3bf60ba2fae10e10f70d53c070424e40a820dac2"
|
38 |
+
uuid = "da1fd8a2-8d9e-5ec2-8556-3022fb5608a2"
|
39 |
+
version = "1.1.2"
|
40 |
+
|
41 |
+
[[deps.ColorTypes]]
|
42 |
+
deps = ["FixedPointNumbers", "Random"]
|
43 |
+
git-tree-sha1 = "eb7f0f8307f71fac7c606984ea5fb2817275d6e4"
|
44 |
+
uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f"
|
45 |
+
version = "0.11.4"
|
46 |
+
|
47 |
+
[[deps.Colors]]
|
48 |
+
deps = ["ColorTypes", "FixedPointNumbers", "Reexport"]
|
49 |
+
git-tree-sha1 = "fc08e5930ee9a4e03f84bfb5211cb54e7769758a"
|
50 |
+
uuid = "5ae59095-9a9b-59fe-a467-6f913c188581"
|
51 |
+
version = "0.12.10"
|
52 |
+
|
53 |
+
[[deps.CommonMark]]
|
54 |
+
deps = ["Crayons", "JSON", "URIs"]
|
55 |
+
git-tree-sha1 = "86cce6fd164c26bad346cc51ca736e692c9f553c"
|
56 |
+
uuid = "a80b9123-70ca-4bc0-993e-6e3bcb318db6"
|
57 |
+
version = "0.8.7"
|
58 |
+
|
59 |
+
[[deps.Compat]]
|
60 |
+
deps = ["Dates", "LinearAlgebra", "UUIDs"]
|
61 |
+
git-tree-sha1 = "00a2cccc7f098ff3b66806862d275ca3db9e6e5a"
|
62 |
+
uuid = "34da2185-b29b-5c13-b0c7-acf172513d20"
|
63 |
+
version = "4.5.0"
|
64 |
+
|
65 |
+
[[deps.CompilerSupportLibraries_jll]]
|
66 |
+
deps = ["Artifacts", "Libdl"]
|
67 |
+
uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae"
|
68 |
+
|
69 |
+
[[deps.Crayons]]
|
70 |
+
git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15"
|
71 |
+
uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f"
|
72 |
+
version = "4.1.1"
|
73 |
+
|
74 |
+
[[deps.DBInterface]]
|
75 |
+
git-tree-sha1 = "9b0dc525a052b9269ccc5f7f04d5b3639c65bca5"
|
76 |
+
uuid = "a10d1c49-ce27-4219-8d33-6db1a4562965"
|
77 |
+
version = "2.5.0"
|
78 |
+
|
79 |
+
[[deps.DataAPI]]
|
80 |
+
git-tree-sha1 = "e8119c1a33d267e16108be441a287a6981ba1630"
|
81 |
+
uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a"
|
82 |
+
version = "1.14.0"
|
83 |
+
|
84 |
+
[[deps.DataFrames]]
|
85 |
+
deps = ["Compat", "DataAPI", "Future", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrettyTables", "Printf", "REPL", "Random", "Reexport", "SnoopPrecompile", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"]
|
86 |
+
git-tree-sha1 = "d4f69885afa5e6149d0cab3818491565cf41446d"
|
87 |
+
uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
|
88 |
+
version = "1.4.4"
|
89 |
+
|
90 |
+
[[deps.DataStructures]]
|
91 |
+
deps = ["Compat", "InteractiveUtils", "OrderedCollections"]
|
92 |
+
git-tree-sha1 = "d1fff3a548102f48987a52a2e0d114fa97d730f0"
|
93 |
+
uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
|
94 |
+
version = "0.18.13"
|
95 |
+
|
96 |
+
[[deps.DataValueInterfaces]]
|
97 |
+
git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6"
|
98 |
+
uuid = "e2d170a0-9d28-54be-80f0-106bbe20a464"
|
99 |
+
version = "1.0.0"
|
100 |
+
|
101 |
+
[[deps.Dates]]
|
102 |
+
deps = ["Printf"]
|
103 |
+
uuid = "ade2ca70-3891-5945-98fb-dc099432e06a"
|
104 |
+
|
105 |
+
[[deps.DefaultApplication]]
|
106 |
+
deps = ["InteractiveUtils"]
|
107 |
+
git-tree-sha1 = "c0dfa5a35710a193d83f03124356eef3386688fc"
|
108 |
+
uuid = "3f0dd361-4fe0-5fc6-8523-80b14ec94d85"
|
109 |
+
version = "1.1.0"
|
110 |
+
|
111 |
+
[[deps.Distributed]]
|
112 |
+
deps = ["Random", "Serialization", "Sockets"]
|
113 |
+
uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b"
|
114 |
+
|
115 |
+
[[deps.Downloads]]
|
116 |
+
deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"]
|
117 |
+
uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6"
|
118 |
+
|
119 |
+
[[deps.EzXML]]
|
120 |
+
deps = ["Printf", "XML2_jll"]
|
121 |
+
git-tree-sha1 = "0fa3b52a04a4e210aeb1626def9c90df3ae65268"
|
122 |
+
uuid = "8f5d6c58-4d21-5cfd-889c-e3ad7ee6a615"
|
123 |
+
version = "1.1.0"
|
124 |
+
|
125 |
+
[[deps.FilePathsBase]]
|
126 |
+
deps = ["Compat", "Dates", "Mmap", "Printf", "Test", "UUIDs"]
|
127 |
+
git-tree-sha1 = "e27c4ebe80e8699540f2d6c805cc12203b614f12"
|
128 |
+
uuid = "48062228-2e41-5def-b9a4-89aafe57970f"
|
129 |
+
version = "0.9.20"
|
130 |
+
|
131 |
+
[[deps.FileWatching]]
|
132 |
+
uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee"
|
133 |
+
|
134 |
+
[[deps.FixedPointNumbers]]
|
135 |
+
deps = ["Statistics"]
|
136 |
+
git-tree-sha1 = "335bfdceacc84c5cdf16aadc768aa5ddfc5383cc"
|
137 |
+
uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93"
|
138 |
+
version = "0.8.4"
|
139 |
+
|
140 |
+
[[deps.Formatting]]
|
141 |
+
deps = ["Printf"]
|
142 |
+
git-tree-sha1 = "8339d61043228fdd3eb658d86c926cb282ae72a8"
|
143 |
+
uuid = "59287772-0a20-5a39-b81b-1366585eb4c0"
|
144 |
+
version = "0.4.2"
|
145 |
+
|
146 |
+
[[deps.Future]]
|
147 |
+
deps = ["Random"]
|
148 |
+
uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820"
|
149 |
+
|
150 |
+
[[deps.GMP_jll]]
|
151 |
+
deps = ["Artifacts", "Libdl"]
|
152 |
+
uuid = "781609d7-10c4-51f6-84f2-b8444358ff6d"
|
153 |
+
|
154 |
+
[[deps.Genie]]
|
155 |
+
deps = ["ArgParse", "Dates", "Distributed", "EzXML", "FilePathsBase", "HTTP", "HttpCommon", "Inflector", "JSON3", "JuliaFormatter", "Logging", "Markdown", "MbedTLS", "Millboard", "Nettle", "OrderedCollections", "Pkg", "REPL", "Random", "Reexport", "Revise", "SHA", "Serialization", "Sockets", "UUIDs", "Unicode", "VersionCheck", "YAML"]
|
156 |
+
git-tree-sha1 = "17b5015f7cb712e92c44bc2809cb5498520cf98a"
|
157 |
+
uuid = "c43c736e-a2d1-11e8-161f-af95117fbd1e"
|
158 |
+
version = "4.20.1"
|
159 |
+
|
160 |
+
[[deps.Glob]]
|
161 |
+
git-tree-sha1 = "4df9f7e06108728ebf00a0a11edee4b29a482bb2"
|
162 |
+
uuid = "c27321d9-0574-5035-807b-f59d2c89b15c"
|
163 |
+
version = "1.3.0"
|
164 |
+
|
165 |
+
[[deps.HTTP]]
|
166 |
+
deps = ["Base64", "Dates", "IniFile", "Logging", "MbedTLS", "NetworkOptions", "Sockets", "URIs"]
|
167 |
+
git-tree-sha1 = "0fa77022fe4b511826b39c894c90daf5fce3334a"
|
168 |
+
uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3"
|
169 |
+
version = "0.9.17"
|
170 |
+
|
171 |
+
[[deps.Hiccup]]
|
172 |
+
deps = ["MacroTools", "Test"]
|
173 |
+
git-tree-sha1 = "6187bb2d5fcbb2007c39e7ac53308b0d371124bd"
|
174 |
+
uuid = "9fb69e20-1954-56bb-a84f-559cc56a8ff7"
|
175 |
+
version = "0.2.2"
|
176 |
+
|
177 |
+
[[deps.HttpCommon]]
|
178 |
+
deps = ["Dates", "Nullables", "Test", "URIParser"]
|
179 |
+
git-tree-sha1 = "46313284237aa6ca67a6bce6d6fbd323d19cff59"
|
180 |
+
uuid = "77172c1b-203f-54ac-aa54-3f1198fe9f90"
|
181 |
+
version = "0.5.0"
|
182 |
+
|
183 |
+
[[deps.Inflector]]
|
184 |
+
deps = ["Unicode"]
|
185 |
+
git-tree-sha1 = "8555b54ddf27806b070ce1d1cf623e1feb13750c"
|
186 |
+
uuid = "6d011eab-0732-4556-8808-e463c76bf3b6"
|
187 |
+
version = "1.0.1"
|
188 |
+
|
189 |
+
[[deps.IniFile]]
|
190 |
+
git-tree-sha1 = "f550e6e32074c939295eb5ea6de31849ac2c9625"
|
191 |
+
uuid = "83e8ac13-25f8-5344-8a64-a9f2b223428f"
|
192 |
+
version = "0.5.1"
|
193 |
+
|
194 |
+
[[deps.InlineStrings]]
|
195 |
+
deps = ["Parsers"]
|
196 |
+
git-tree-sha1 = "0cf92ec945125946352f3d46c96976ab972bde6f"
|
197 |
+
uuid = "842dd82b-1e85-43dc-bf29-5d0ee9dffc48"
|
198 |
+
version = "1.3.2"
|
199 |
+
|
200 |
+
[[deps.InteractiveUtils]]
|
201 |
+
deps = ["Markdown"]
|
202 |
+
uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
|
203 |
+
|
204 |
+
[[deps.InvertedIndices]]
|
205 |
+
git-tree-sha1 = "82aec7a3dd64f4d9584659dc0b62ef7db2ef3e19"
|
206 |
+
uuid = "41ab1584-1d38-5bbf-9106-f11c6c58b48f"
|
207 |
+
version = "1.2.0"
|
208 |
+
|
209 |
+
[[deps.IteratorInterfaceExtensions]]
|
210 |
+
git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856"
|
211 |
+
uuid = "82899510-4779-5014-852e-03e436cf321d"
|
212 |
+
version = "1.0.0"
|
213 |
+
|
214 |
+
[[deps.JLLWrappers]]
|
215 |
+
deps = ["Preferences"]
|
216 |
+
git-tree-sha1 = "abc9885a7ca2052a736a600f7fa66209f96506e1"
|
217 |
+
uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210"
|
218 |
+
version = "1.4.1"
|
219 |
+
|
220 |
+
[[deps.JSON]]
|
221 |
+
deps = ["Dates", "Mmap", "Parsers", "Unicode"]
|
222 |
+
git-tree-sha1 = "3c837543ddb02250ef42f4738347454f95079d4e"
|
223 |
+
uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
|
224 |
+
version = "0.21.3"
|
225 |
+
|
226 |
+
[[deps.JSON3]]
|
227 |
+
deps = ["Dates", "Mmap", "Parsers", "SnoopPrecompile", "StructTypes", "UUIDs"]
|
228 |
+
git-tree-sha1 = "84b10656a41ef564c39d2d477d7236966d2b5683"
|
229 |
+
uuid = "0f8b85d8-7281-11e9-16c2-39a750bddbf1"
|
230 |
+
version = "1.12.0"
|
231 |
+
|
232 |
+
[[deps.JuliaFormatter]]
|
233 |
+
deps = ["CSTParser", "CommonMark", "DataStructures", "Glob", "Pkg", "Tokenize"]
|
234 |
+
git-tree-sha1 = "447f5702b5271d99f064e924061bc05e26f52c4c"
|
235 |
+
uuid = "98e50ef6-434e-11e9-1051-2b60c6c9e899"
|
236 |
+
version = "1.0.18"
|
237 |
+
|
238 |
+
[[deps.JuliaInterpreter]]
|
239 |
+
deps = ["CodeTracking", "InteractiveUtils", "Random", "UUIDs"]
|
240 |
+
git-tree-sha1 = "3236cad4ac05408090221fc259f678d913176055"
|
241 |
+
uuid = "aa1ae85d-cabe-5617-a682-6adf51b2e16a"
|
242 |
+
version = "0.9.19"
|
243 |
+
|
244 |
+
[[deps.LaTeXStrings]]
|
245 |
+
git-tree-sha1 = "f2355693d6778a178ade15952b7ac47a4ff97996"
|
246 |
+
uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f"
|
247 |
+
version = "1.3.0"
|
248 |
+
|
249 |
+
[[deps.LibCURL]]
|
250 |
+
deps = ["LibCURL_jll", "MozillaCACerts_jll"]
|
251 |
+
uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21"
|
252 |
+
|
253 |
+
[[deps.LibCURL_jll]]
|
254 |
+
deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"]
|
255 |
+
uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0"
|
256 |
+
|
257 |
+
[[deps.LibGit2]]
|
258 |
+
deps = ["Base64", "NetworkOptions", "Printf", "SHA"]
|
259 |
+
uuid = "76f85450-5226-5b5a-8eaa-529ad045b433"
|
260 |
+
|
261 |
+
[[deps.LibSSH2_jll]]
|
262 |
+
deps = ["Artifacts", "Libdl", "MbedTLS_jll"]
|
263 |
+
uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8"
|
264 |
+
|
265 |
+
[[deps.Libdl]]
|
266 |
+
uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
|
267 |
+
|
268 |
+
[[deps.Libiconv_jll]]
|
269 |
+
deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"]
|
270 |
+
git-tree-sha1 = "c7cb1f5d892775ba13767a87c7ada0b980ea0a71"
|
271 |
+
uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531"
|
272 |
+
version = "1.16.1+2"
|
273 |
+
|
274 |
+
[[deps.LinearAlgebra]]
|
275 |
+
deps = ["Libdl", "libblastrampoline_jll"]
|
276 |
+
uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
|
277 |
+
|
278 |
+
[[deps.Logging]]
|
279 |
+
uuid = "56ddb016-857b-54e1-b83d-db4d58db5568"
|
280 |
+
|
281 |
+
[[deps.LoweredCodeUtils]]
|
282 |
+
deps = ["JuliaInterpreter"]
|
283 |
+
git-tree-sha1 = "dedbebe234e06e1ddad435f5c6f4b85cd8ce55f7"
|
284 |
+
uuid = "6f1432cf-f94c-5a45-995e-cdbf5db27b0b"
|
285 |
+
version = "2.2.2"
|
286 |
+
|
287 |
+
[[deps.MacroTools]]
|
288 |
+
deps = ["Markdown", "Random"]
|
289 |
+
git-tree-sha1 = "42324d08725e200c23d4dfb549e0d5d89dede2d2"
|
290 |
+
uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09"
|
291 |
+
version = "0.5.10"
|
292 |
+
|
293 |
+
[[deps.Markdown]]
|
294 |
+
deps = ["Base64"]
|
295 |
+
uuid = "d6f4376e-aef5-505a-96c1-9c027394607a"
|
296 |
+
|
297 |
+
[[deps.MbedTLS]]
|
298 |
+
deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "Random", "Sockets"]
|
299 |
+
git-tree-sha1 = "03a9b9718f5682ecb107ac9f7308991db4ce395b"
|
300 |
+
uuid = "739be429-bea8-5141-9913-cc70e7f3736d"
|
301 |
+
version = "1.1.7"
|
302 |
+
|
303 |
+
[[deps.MbedTLS_jll]]
|
304 |
+
deps = ["Artifacts", "Libdl"]
|
305 |
+
uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1"
|
306 |
+
|
307 |
+
[[deps.Millboard]]
|
308 |
+
git-tree-sha1 = "ea6a5b7e56e76d8051023faaa11d91d1d881dac3"
|
309 |
+
uuid = "39ec1447-df44-5f4c-beaa-866f30b4d3b2"
|
310 |
+
version = "0.2.5"
|
311 |
+
|
312 |
+
[[deps.Missings]]
|
313 |
+
deps = ["DataAPI"]
|
314 |
+
git-tree-sha1 = "f8c673ccc215eb50fcadb285f522420e29e69e1c"
|
315 |
+
uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28"
|
316 |
+
version = "0.4.5"
|
317 |
+
|
318 |
+
[[deps.Mixers]]
|
319 |
+
deps = ["MacroTools"]
|
320 |
+
git-tree-sha1 = "58ec7ac60dad6e8ca4553225251dfd380e3930dd"
|
321 |
+
uuid = "2a8e4939-dab8-5edc-8f64-72a8776f13de"
|
322 |
+
version = "0.1.2"
|
323 |
+
|
324 |
+
[[deps.Mmap]]
|
325 |
+
uuid = "a63ad114-7e13-5084-954f-fe012c677804"
|
326 |
+
|
327 |
+
[[deps.MozillaCACerts_jll]]
|
328 |
+
uuid = "14a3606d-f60d-562e-9121-12d972cd8159"
|
329 |
+
|
330 |
+
[[deps.Nettle]]
|
331 |
+
deps = ["Libdl", "Nettle_jll"]
|
332 |
+
git-tree-sha1 = "6fa48cbae828267848ee32c1bb31d1652e210d7d"
|
333 |
+
uuid = "49dea1ee-f6fa-5aa6-9a11-8816cee7d4b9"
|
334 |
+
version = "1.0.0"
|
335 |
+
|
336 |
+
[[deps.Nettle_jll]]
|
337 |
+
deps = ["Artifacts", "GMP_jll", "JLLWrappers", "Libdl", "Pkg"]
|
338 |
+
git-tree-sha1 = "eca63e3847dad608cfa6a3329b95ef674c7160b4"
|
339 |
+
uuid = "4c82536e-c426-54e4-b420-14f461c4ed8b"
|
340 |
+
version = "3.7.2+0"
|
341 |
+
|
342 |
+
[[deps.NetworkOptions]]
|
343 |
+
uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908"
|
344 |
+
|
345 |
+
[[deps.Nullables]]
|
346 |
+
git-tree-sha1 = "8f87854cc8f3685a60689d8edecaa29d2251979b"
|
347 |
+
uuid = "4d1e1d77-625e-5b40-9113-a560ec7a8ecd"
|
348 |
+
version = "1.0.0"
|
349 |
+
|
350 |
+
[[deps.Observables]]
|
351 |
+
git-tree-sha1 = "fe29afdef3d0c4a8286128d4e45cc50621b1e43d"
|
352 |
+
uuid = "510215fc-4207-5dde-b226-833fc4488ee2"
|
353 |
+
version = "0.4.0"
|
354 |
+
|
355 |
+
[[deps.OpenBLAS_jll]]
|
356 |
+
deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"]
|
357 |
+
uuid = "4536629a-c528-5b80-bd46-f80d51c5b363"
|
358 |
+
|
359 |
+
[[deps.OrderedCollections]]
|
360 |
+
git-tree-sha1 = "85f8e6578bf1f9ee0d11e7bb1b1456435479d47c"
|
361 |
+
uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
|
362 |
+
version = "1.4.1"
|
363 |
+
|
364 |
+
[[deps.Parameters]]
|
365 |
+
deps = ["OrderedCollections", "UnPack"]
|
366 |
+
git-tree-sha1 = "34c0e9ad262e5f7fc75b10a9952ca7692cfc5fbe"
|
367 |
+
uuid = "d96e819e-fc66-5662-9728-84c9c7592b0a"
|
368 |
+
version = "0.12.3"
|
369 |
+
|
370 |
+
[[deps.Parsers]]
|
371 |
+
deps = ["Dates", "SnoopPrecompile"]
|
372 |
+
git-tree-sha1 = "6466e524967496866901a78fca3f2e9ea445a559"
|
373 |
+
uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0"
|
374 |
+
version = "2.5.2"
|
375 |
+
|
376 |
+
[[deps.Pkg]]
|
377 |
+
deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"]
|
378 |
+
uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
|
379 |
+
|
380 |
+
[[deps.PooledArrays]]
|
381 |
+
deps = ["DataAPI", "Future"]
|
382 |
+
git-tree-sha1 = "a6062fe4063cdafe78f4a0a81cfffb89721b30e7"
|
383 |
+
uuid = "2dfb63ee-cc39-5dd5-95bd-886bf059d720"
|
384 |
+
version = "1.4.2"
|
385 |
+
|
386 |
+
[[deps.Preferences]]
|
387 |
+
deps = ["TOML"]
|
388 |
+
git-tree-sha1 = "47e5f437cc0e7ef2ce8406ce1e7e24d44915f88d"
|
389 |
+
uuid = "21216c6a-2e73-6563-6e65-726566657250"
|
390 |
+
version = "1.3.0"
|
391 |
+
|
392 |
+
[[deps.PrettyTables]]
|
393 |
+
deps = ["Crayons", "Formatting", "LaTeXStrings", "Markdown", "Reexport", "StringManipulation", "Tables"]
|
394 |
+
git-tree-sha1 = "96f6db03ab535bdb901300f88335257b0018689d"
|
395 |
+
uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d"
|
396 |
+
version = "2.2.2"
|
397 |
+
|
398 |
+
[[deps.Printf]]
|
399 |
+
deps = ["Unicode"]
|
400 |
+
uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7"
|
401 |
+
|
402 |
+
[[deps.ProgressMeter]]
|
403 |
+
deps = ["Distributed", "Printf"]
|
404 |
+
git-tree-sha1 = "d7a7aef8f8f2d537104f170139553b14dfe39fe9"
|
405 |
+
uuid = "92933f4c-e287-5a05-a399-4b506db050ca"
|
406 |
+
version = "1.7.2"
|
407 |
+
|
408 |
+
[[deps.REPL]]
|
409 |
+
deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"]
|
410 |
+
uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb"
|
411 |
+
|
412 |
+
[[deps.Random]]
|
413 |
+
deps = ["SHA", "Serialization"]
|
414 |
+
uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
|
415 |
+
|
416 |
+
[[deps.Reexport]]
|
417 |
+
git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b"
|
418 |
+
uuid = "189a3867-3050-52da-a836-e630ba90ab69"
|
419 |
+
version = "1.2.2"
|
420 |
+
|
421 |
+
[[deps.Requires]]
|
422 |
+
deps = ["UUIDs"]
|
423 |
+
git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7"
|
424 |
+
uuid = "ae029012-a4dd-5104-9daa-d747884805df"
|
425 |
+
version = "1.3.0"
|
426 |
+
|
427 |
+
[[deps.Revise]]
|
428 |
+
deps = ["CodeTracking", "Distributed", "FileWatching", "JuliaInterpreter", "LibGit2", "LoweredCodeUtils", "OrderedCollections", "Pkg", "REPL", "Requires", "UUIDs", "Unicode"]
|
429 |
+
git-tree-sha1 = "dad726963ecea2d8a81e26286f625aee09a91b7c"
|
430 |
+
uuid = "295af30f-e4ad-537b-8983-00126c2a3abe"
|
431 |
+
version = "3.4.0"
|
432 |
+
|
433 |
+
[[deps.SHA]]
|
434 |
+
uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce"
|
435 |
+
|
436 |
+
[[deps.SQLite]]
|
437 |
+
deps = ["DBInterface", "Random", "SQLite_jll", "Serialization", "Tables", "WeakRefStrings"]
|
438 |
+
git-tree-sha1 = "eb9a473c9b191ced349d04efa612ec9f39c087ea"
|
439 |
+
uuid = "0aa819cd-b072-5ff4-a722-6bc24af294d9"
|
440 |
+
version = "1.6.0"
|
441 |
+
|
442 |
+
[[deps.SQLite_jll]]
|
443 |
+
deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Zlib_jll"]
|
444 |
+
git-tree-sha1 = "2c761a91fb503e94bd0130fcf4352166c3c555bc"
|
445 |
+
uuid = "76ed43ae-9a5d-5a62-8c75-30186b810ce8"
|
446 |
+
version = "3.40.0+1"
|
447 |
+
|
448 |
+
[[deps.Scratch]]
|
449 |
+
deps = ["Dates"]
|
450 |
+
git-tree-sha1 = "f94f779c94e58bf9ea243e77a37e16d9de9126bd"
|
451 |
+
uuid = "6c6a2e73-6563-6170-7368-637461726353"
|
452 |
+
version = "1.1.1"
|
453 |
+
|
454 |
+
[[deps.Serialization]]
|
455 |
+
uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b"
|
456 |
+
|
457 |
+
[[deps.SnoopPrecompile]]
|
458 |
+
git-tree-sha1 = "f604441450a3c0569830946e5b33b78c928e1a85"
|
459 |
+
uuid = "66db9d55-30c0-4569-8b51-7e840670fc0c"
|
460 |
+
version = "1.0.1"
|
461 |
+
|
462 |
+
[[deps.Sockets]]
|
463 |
+
uuid = "6462fe0b-24de-5631-8697-dd941f90decc"
|
464 |
+
|
465 |
+
[[deps.SortingAlgorithms]]
|
466 |
+
deps = ["DataStructures"]
|
467 |
+
git-tree-sha1 = "f6cb12bae7c2ecff6c4986f28defff8741747a9b"
|
468 |
+
uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c"
|
469 |
+
version = "0.3.2"
|
470 |
+
|
471 |
+
[[deps.SparseArrays]]
|
472 |
+
deps = ["LinearAlgebra", "Random"]
|
473 |
+
uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
|
474 |
+
|
475 |
+
[[deps.StaticArrays]]
|
476 |
+
deps = ["LinearAlgebra", "Random", "Statistics"]
|
477 |
+
git-tree-sha1 = "da4cf579416c81994afd6322365d00916c79b8ae"
|
478 |
+
uuid = "90137ffa-7385-5640-81b9-e52037218182"
|
479 |
+
version = "0.12.5"
|
480 |
+
|
481 |
+
[[deps.Statistics]]
|
482 |
+
deps = ["LinearAlgebra", "SparseArrays"]
|
483 |
+
uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
|
484 |
+
|
485 |
+
[[deps.StatsBase]]
|
486 |
+
deps = ["DataAPI", "DataStructures", "LinearAlgebra", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics"]
|
487 |
+
git-tree-sha1 = "7bab7d4eb46b225b35179632852b595a3162cb61"
|
488 |
+
uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91"
|
489 |
+
version = "0.33.2"
|
490 |
+
|
491 |
+
[[deps.Stipple]]
|
492 |
+
deps = ["FilePathsBase", "Genie", "JSON3", "Logging", "Mixers", "Observables", "OrderedCollections", "Parameters", "Pkg", "Random", "Reexport", "Requires", "StructTypes"]
|
493 |
+
git-tree-sha1 = "f05e4baaedaa96fe385e9bc85c8d7c8b8a44c981"
|
494 |
+
uuid = "4acbeb90-81a0-11ea-1966-bdaff8155998"
|
495 |
+
version = "0.24.5"
|
496 |
+
|
497 |
+
[[deps.StippleUI]]
|
498 |
+
deps = ["Colors", "DataFrames", "Dates", "Genie", "Stipple"]
|
499 |
+
git-tree-sha1 = "4de2d03e2befc013c0ccc3a8878f67960d083cda"
|
500 |
+
uuid = "a3c5d34a-b254-4859-a8fa-b86abb7e84a3"
|
501 |
+
version = "0.19.4"
|
502 |
+
|
503 |
+
[[deps.StringEncodings]]
|
504 |
+
deps = ["Libiconv_jll"]
|
505 |
+
git-tree-sha1 = "50ccd5ddb00d19392577902f0079267a72c5ab04"
|
506 |
+
uuid = "69024149-9ee7-55f6-a4c4-859efe599b68"
|
507 |
+
version = "0.3.5"
|
508 |
+
|
509 |
+
[[deps.StringManipulation]]
|
510 |
+
git-tree-sha1 = "46da2434b41f41ac3594ee9816ce5541c6096123"
|
511 |
+
uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e"
|
512 |
+
version = "0.3.0"
|
513 |
+
|
514 |
+
[[deps.StructTypes]]
|
515 |
+
deps = ["Dates", "UUIDs"]
|
516 |
+
git-tree-sha1 = "ca4bccb03acf9faaf4137a9abc1881ed1841aa70"
|
517 |
+
uuid = "856f2bd8-1eba-4b0a-8007-ebc267875bd4"
|
518 |
+
version = "1.10.0"
|
519 |
+
|
520 |
+
[[deps.TOML]]
|
521 |
+
deps = ["Dates"]
|
522 |
+
uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76"
|
523 |
+
|
524 |
+
[[deps.TableTraits]]
|
525 |
+
deps = ["IteratorInterfaceExtensions"]
|
526 |
+
git-tree-sha1 = "c06b2f539df1c6efa794486abfb6ed2022561a39"
|
527 |
+
uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c"
|
528 |
+
version = "1.0.1"
|
529 |
+
|
530 |
+
[[deps.Tables]]
|
531 |
+
deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "OrderedCollections", "TableTraits", "Test"]
|
532 |
+
git-tree-sha1 = "c79322d36826aa2f4fd8ecfa96ddb47b174ac78d"
|
533 |
+
uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
|
534 |
+
version = "1.10.0"
|
535 |
+
|
536 |
+
[[deps.Tar]]
|
537 |
+
deps = ["ArgTools", "SHA"]
|
538 |
+
uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e"
|
539 |
+
|
540 |
+
[[deps.Test]]
|
541 |
+
deps = ["InteractiveUtils", "Logging", "Random", "Serialization"]
|
542 |
+
uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
|
543 |
+
|
544 |
+
[[deps.TextWrap]]
|
545 |
+
git-tree-sha1 = "9250ef9b01b66667380cf3275b3f7488d0e25faf"
|
546 |
+
uuid = "b718987f-49a8-5099-9789-dcd902bef87d"
|
547 |
+
version = "1.0.1"
|
548 |
+
|
549 |
+
[[deps.Tokenize]]
|
550 |
+
git-tree-sha1 = "90538bf898832b6ebd900fa40f223e695970e3a5"
|
551 |
+
uuid = "0796e94c-ce3b-5d07-9a54-7f471281c624"
|
552 |
+
version = "0.5.25"
|
553 |
+
|
554 |
+
[[deps.URIParser]]
|
555 |
+
deps = ["Unicode"]
|
556 |
+
git-tree-sha1 = "53a9f49546b8d2dd2e688d216421d050c9a31d0d"
|
557 |
+
uuid = "30578b45-9adc-5946-b283-645ec420af67"
|
558 |
+
version = "0.4.1"
|
559 |
+
|
560 |
+
[[deps.URIs]]
|
561 |
+
git-tree-sha1 = "ac00576f90d8a259f2c9d823e91d1de3fd44d348"
|
562 |
+
uuid = "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4"
|
563 |
+
version = "1.4.1"
|
564 |
+
|
565 |
+
[[deps.UUIDs]]
|
566 |
+
deps = ["Random", "SHA"]
|
567 |
+
uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"
|
568 |
+
|
569 |
+
[[deps.UnPack]]
|
570 |
+
git-tree-sha1 = "387c1f73762231e86e0c9c5443ce3b4a0a9a0c2b"
|
571 |
+
uuid = "3a884ed6-31ef-47d7-9d2a-63182c4928ed"
|
572 |
+
version = "1.0.2"
|
573 |
+
|
574 |
+
[[deps.Unicode]]
|
575 |
+
uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5"
|
576 |
+
|
577 |
+
[[deps.UrlDownload]]
|
578 |
+
deps = ["HTTP", "ProgressMeter"]
|
579 |
+
git-tree-sha1 = "758aeefcf0bfdd04cd88e6e3bc9feb9e8c7d6d70"
|
580 |
+
uuid = "856ac37a-3032-4c1c-9122-f86d88358c8b"
|
581 |
+
version = "1.0.1"
|
582 |
+
|
583 |
+
[[deps.VersionCheck]]
|
584 |
+
deps = ["Dates", "JSON3", "Logging", "Pkg", "Random", "Scratch", "UrlDownload"]
|
585 |
+
git-tree-sha1 = "89ef2431dd59344ebaf052d0737205854ded0c62"
|
586 |
+
uuid = "a637dc6b-bca1-447e-a4fa-35264c9d0580"
|
587 |
+
version = "0.2.0"
|
588 |
+
|
589 |
+
[[deps.WeakRefStrings]]
|
590 |
+
deps = ["DataAPI", "InlineStrings", "Parsers"]
|
591 |
+
git-tree-sha1 = "b1be2855ed9ed8eac54e5caff2afcdb442d52c23"
|
592 |
+
uuid = "ea10d353-3f73-51f8-a26c-33c1cb351aa5"
|
593 |
+
version = "1.4.2"
|
594 |
+
|
595 |
+
[[deps.XML2_jll]]
|
596 |
+
deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "Zlib_jll"]
|
597 |
+
git-tree-sha1 = "93c41695bc1c08c46c5899f4fe06d6ead504bb73"
|
598 |
+
uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a"
|
599 |
+
version = "2.10.3+0"
|
600 |
+
|
601 |
+
[[deps.YAML]]
|
602 |
+
deps = ["Base64", "Dates", "Printf", "StringEncodings"]
|
603 |
+
git-tree-sha1 = "dbc7f1c0012a69486af79c8bcdb31be820670ba2"
|
604 |
+
uuid = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6"
|
605 |
+
version = "0.4.8"
|
606 |
+
|
607 |
+
[[deps.Zlib_jll]]
|
608 |
+
deps = ["Libdl"]
|
609 |
+
uuid = "83775a58-1f1d-513f-b197-d71354ab007a"
|
610 |
+
|
611 |
+
[[deps.libblastrampoline_jll]]
|
612 |
+
deps = ["Artifacts", "Libdl", "OpenBLAS_jll"]
|
613 |
+
uuid = "8e850b90-86db-534c-a0d3-1478176c7d93"
|
614 |
+
|
615 |
+
[[deps.nghttp2_jll]]
|
616 |
+
deps = ["Artifacts", "Libdl"]
|
617 |
+
uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d"
|
618 |
+
|
619 |
+
[[deps.p7zip_jll]]
|
620 |
+
deps = ["Artifacts", "Libdl"]
|
621 |
+
uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0"
|
Project.toml
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
name = "ImpCatcher"
|
2 |
+
uuid = "c9a3c23d-7231-4c2f-9461-fb0bef4b6fc1"
|
3 |
+
authors = ["Anooj Patel <1996anoojpatel@gmail.com>"]
|
4 |
+
version = "0.1.0"
|
5 |
+
|
6 |
+
[deps]
|
7 |
+
Chess = "717200cc-f167-4fd3-b4bf-b5e480529844"
|
8 |
+
Genie = "c43c736e-a2d1-11e8-161f-af95117fbd1e"
|
9 |
+
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
|
10 |
+
StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91"
|
11 |
+
Stipple = "4acbeb90-81a0-11ea-1966-bdaff8155998"
|
12 |
+
StippleUI = "a3c5d34a-b254-4859-a8fa-b86abb7e84a3"
|
app.jl
ADDED
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
using Genie.Renderer.Html, Stipple, StippleUI
|
2 |
+
|
3 |
+
@reactive mutable struct Model <: ReactiveModel
|
4 |
+
process::R{Bool} = false
|
5 |
+
output::R{String} = ""
|
6 |
+
input::R{String} = ""
|
7 |
+
end
|
8 |
+
|
9 |
+
function handlers(model)
|
10 |
+
on(model.process) do _
|
11 |
+
if (model.process[])
|
12 |
+
model.output[] = model.input[] |> reverse
|
13 |
+
model.process[] = false
|
14 |
+
end
|
15 |
+
end
|
16 |
+
|
17 |
+
model
|
18 |
+
end
|
19 |
+
|
20 |
+
function ui(model)
|
21 |
+
page(model, class="container", [
|
22 |
+
p([
|
23 |
+
"Input "
|
24 |
+
input("", @bind(:input), @on("keyup.enter", "process = true"))
|
25 |
+
])
|
26 |
+
|
27 |
+
p([
|
28 |
+
button("Action!", @click("process = true"))
|
29 |
+
])
|
30 |
+
|
31 |
+
p([
|
32 |
+
"Output: "
|
33 |
+
span("", @text(:output))
|
34 |
+
])
|
35 |
+
]
|
36 |
+
)
|
37 |
+
end
|
38 |
+
|
39 |
+
route("/") do
|
40 |
+
model = Model |> init |> handlers
|
41 |
+
html(ui(model), context = @__MODULE__)
|
42 |
+
end
|
43 |
+
|
44 |
+
#Genie.isrunning(:webserver) || up()
|
src/ImpCatcher.jl
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
module ImpCatcher
|
2 |
+
|
3 |
+
using Chess
|
4 |
+
|
5 |
+
include("simulate.jl")
|
6 |
+
|
7 |
+
end # module
|
src/simulate.jl
ADDED
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
using Random
|
2 |
+
using StatsBase
|
3 |
+
|
4 |
+
"""
|
5 |
+
simluate_rollout(b::Board, policy, side [rng=MersenneTwister(420))
|
6 |
+
|
7 |
+
Simulate one rollout of a simulation based on the given `Chess.board` state.
|
8 |
+
|
9 |
+
Policy is a function, given the board and `MoveList`, returns an `AbstractArray` of probability
|
10 |
+
weights for each `Move` in `Move`List` based on index.
|
11 |
+
"""
|
12 |
+
function simulate_rollout(b::Board, policy, side; rng = MersenneTwister(420))::Tuple{Board, Int64}
|
13 |
+
#pprint(b) # Debugging
|
14 |
+
movelist = MoveList(200)
|
15 |
+
num_sim_moves = 0
|
16 |
+
while !isterminal(b) # TODO Use `matein1` possibly to trim leaf nodes in sims?
|
17 |
+
moves(b, movelist)
|
18 |
+
policy_weights = ProbabilityWeights(policy(b, movelist))
|
19 |
+
#pprint(b)
|
20 |
+
#println(movelist, policy_weights)
|
21 |
+
domove!(b, sample(movelist, policy_weights))
|
22 |
+
recycle!(movelist)
|
23 |
+
num_sim_moves += 1
|
24 |
+
end
|
25 |
+
return b, num_sim_moves
|
26 |
+
end
|
27 |
+
|
28 |
+
"""
|
29 |
+
CESPF(b::Board, movelist::MoveList)
|
30 |
+
Utilizes `Chess.jl`'s `see()` function to simulate (C)apture / (E)scape (S)tronger (P)iece
|
31 |
+
(F)irst heuristic in simulation/rollout policy. We use Chess weights set in `see` function to get weight for which
|
32 |
+
move we prefer to take.
|
33 |
+
"""
|
34 |
+
function CESPF(b::Board, movelist::MoveList)
|
35 |
+
unnorm_policy_weights = map(x -> see(b, x), movelist)
|
36 |
+
# Center raw centipawn values to 1 to then normalize
|
37 |
+
centered_policy_weights = (1 + abs(min(unnorm_policy_weights...))) .+
|
38 |
+
unnorm_policy_weights
|
39 |
+
return centered_policy_weights / sum(centered_policy_weights)
|
40 |
+
end
|
41 |
+
|
42 |
+
"""
|
43 |
+
CESPF_greedy(b::Board, movelist::MoveList)
|
44 |
+
Utilizes `Chess.jl`'s `see()` function to simulate (C)apture / (E)scape (S)tronger (P)iece
|
45 |
+
(F)irst heuristic in simulation/rollout policy. We use Chess weights set in `see` function to get weight for which
|
46 |
+
move we prefer to take. This is greedy, and will set only the maximal valued policies to a non-zero
|
47 |
+
probability
|
48 |
+
"""
|
49 |
+
function CESPF_greedy(b::Board, movelist::MoveList)
|
50 |
+
unnorm_policy_weights = map(x -> see(b, x), movelist)
|
51 |
+
policy_weights = zeros(length(unnorm_policy_weights))
|
52 |
+
max_idxs = findall(unnorm_policy_weights .== maximum(unnorm_policy_weights))
|
53 |
+
for max_idx in max_idxs
|
54 |
+
policy_weights[max_idx] = 1.0 / length(max_idxs)
|
55 |
+
end
|
56 |
+
return policy_weights
|
57 |
+
end
|
58 |
+
|
59 |
+
|