Files
code_examples_server/design/notes.txt
2018-06-01 21:58:32 -04:00

83 lines
2.2 KiB
Plaintext

Notes just for myself
# launch a shell
./manage.py shell
########
# Todo #
########
Frontend
* nicer display when an example was not found
* grab the bits that are currently served by CDNs
Backend
* cleanup the status of imported/invisible files (exclude yaml, project)
* implement the "check" button
Production
* integrate Yannick's examples
* run a server at AdaCore
#################
# Curl commands #
#################
Add -u <login>:<password> when using authentication
# check a program
curl -H 'Accept: application/json; indent=4' http://127.0.0.1:8000/check_program/ --data "{\"program\": \"hello\"}" --header "Content-Type:application/json"
# get the examples
curl -H 'Accept: application/json; indent=4' http://127.0.0.1:8000/examples/ --header "Content-Type:application/json"
#############################
# Import Yannick's examples #
#############################
# TODO: add a facility to do this (see better method below)
# Setup:
cd resources ; git clone https://github.com/AdaCore/Compile_And_Prove_Demo.git
# Import:
./manage.py fill_examples --remove_all
list="hello_world absolute_value bitwise_swap saturate_angle sensor_average strings communications landing_procedure"
for a in $list; do ./manage.py fill_examples --dir=resources/Compile_And_Prove_Demo/examples/$a ; done
################################################
# Import Yannick's examples: The Better Method #
################################################
./manage.py fill_examples --remove_all
./manage.py fill_exmaples --conf=resources/test_conf.yaml
#############
# editor.js #
#############
You can pass your own files to an inline editor using sub-divs
that have the class "file" and their basename specified in the
corresponding attribute, like so:
<div example_editor="SPARK Main"
example_server="http://localhost:8000"
inline="true">
<div class="file" basename="main.ads">
with ada.text_io;
package main is
procedure foo;
end main;
</div>
<div class="file" basename="main.adb">
with ada.text_io;
package body main is
end main2;
</div>
</div>