Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Keep master up-to-date with latest documentation #101

Merged
merged 86 commits into from
Oct 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
6278596
Add main index file
jaapdejong15 Jun 30, 2023
01af3b1
update documentation deps
THinnerichs Sep 4, 2023
1cf808c
Update docs deployment
THinnerichs Sep 5, 2023
73243b9
Add Documentation deployment
THinnerichs Sep 5, 2023
73bdc41
Ignore docs/Manifest.toml
THinnerichs Sep 5, 2023
a109834
Use different Julia version for deployment
THinnerichs Sep 5, 2023
fd11bc3
Update devurl for dos
THinnerichs Sep 5, 2023
a8983f0
Update docs for contribution guide
THinnerichs Sep 5, 2023
0f45d09
Update landing page and started guide
THinnerichs Sep 5, 2023
404b159
Update Basics section
THinnerichs Sep 5, 2023
87c34df
Update getting started and install
THinnerichs Sep 21, 2023
262d914
Update getting started and install
THinnerichs Sep 21, 2023
6aa014a
HerbEvaluation -> HerbInterpret
THinnerichs Sep 28, 2023
ab89d2d
Update logo
THinnerichs Oct 29, 2023
8d30c3a
Add tutorials from HerbExamples
THinnerichs Nov 1, 2023
ac8b6e1
Fix typo in make.jl
THinnerichs Nov 1, 2023
cfa1add
Fixed get stated guide
THinnerichs Nov 30, 2023
29fee8a
added tutorial for search
Jan 18, 2024
36c5873
forgot a comma in make
Jan 18, 2024
dab81f1
included Pkg.add() to be able to run notebook from scratch
Jan 18, 2024
d64eb9d
fix typos, wording and clarify code examples
sourceCode4 Jan 19, 2024
9ce3189
Update docs fixing source links
THinnerichs Jan 19, 2024
cc821b3
Fix typo in make
THinnerichs Jan 19, 2024
3205f05
Update dependencies for documentation compilation
THinnerichs Jan 19, 2024
cd0da69
Update dependencies for documentation compilation 2
THinnerichs Jan 19, 2024
dd10769
Update update tests
THinnerichs Jan 19, 2024
7eaf180
updated tutorial md based on notebook
Jan 19, 2024
82965f5
Add HerbSpecification to doc deps
THinnerichs Feb 26, 2024
6c66e2b
Update getting started guide
THinnerichs Mar 14, 2024
4f3afc9
Update docs dependencies
ReubenJ Mar 15, 2024
86d0ac7
Remove Herb.jl from sidebar
THinnerichs Mar 15, 2024
d1afe3c
HerbData -> HerbSpecification; add push_preview; try latest Documente…
THinnerichs Apr 5, 2024
4746f6e
HerbData -> HerbSpecification
THinnerichs Apr 5, 2024
906d139
Fix typo in make.jl
THinnerichs Apr 5, 2024
dc9fe32
Ignore crossref issues
THinnerichs Apr 5, 2024
560a550
Add doctest ignore to doc deployment
THinnerichs Apr 5, 2024
0d9df3a
Fix broken reference.
pwochner Apr 11, 2024
0e8ee22
Merge pull request #62 from Herb-AI/documentation-ref-fixes
ReubenJ Apr 23, 2024
b6df4c1
Adds new tutorial on ASTs
pwochner May 1, 2024
732a9ce
Adds evaluation of programs on provided inputs. Fixes typos
pwochner May 8, 2024
33b94e4
Update tutorial text.
pwochner May 8, 2024
3215c0e
Add package descriptions
THinnerichs May 28, 2024
922c8f7
Add tutorial for constraints
Whebon Jul 3, 2024
e0d4c5f
added tutorial about interpreters
sebdumancic Jul 3, 2024
6684255
Simplify fizzbuzz function
pwochner Jul 4, 2024
1ff18d4
Top Down Iterator MarkDown
LoLo5689 Jul 4, 2024
28b6039
Return String in grammar instead of Dict.
pwochner Jul 4, 2024
1a8ebbf
fix
LoLo5689 Jul 4, 2024
5447cad
fixed saving issues
sebdumancic Jul 4, 2024
08bad73
Merge branch 'dev-doc-interpreters' into documentation
sebdumancic Jul 4, 2024
79b6916
Merge branch 'master' into documentation
THinnerichs Jul 4, 2024
63b163e
rename constraints guide, add to make.jl
THinnerichs Jul 4, 2024
331a048
Rename constraints guide
THinnerichs Jul 4, 2024
ccfec46
added automatic ipynb to md conversion for tutorials. Updated grammar…
Jul 4, 2024
4fab0cc
added markdown for interpreters tutorial
Jul 4, 2024
b8b65cd
Fixing docs build
THinnerichs Jul 5, 2024
22c4fb0
Fixing docs build
THinnerichs Jul 5, 2024
f7a0384
Fix makepath in conversion
THinnerichs Jul 5, 2024
b869d14
added more information
sebdumancic Jul 5, 2024
d214fb4
Fix makepath in notebook conversion 2
THinnerichs Jul 8, 2024
8d3f6d0
Fix make file to use compiled files
THinnerichs Jul 8, 2024
5b6e0e8
Merge branch 'documentation' into documentation-syntaxtree-tutorial
pwochner Jul 9, 2024
8985a95
Embed html of interpreter tutorial in md file. Increase html size.
pwochner Jul 9, 2024
3addeef
Revert "Embed html of interpreter tutorial in md file. Increase html …
pwochner Jul 9, 2024
aa76f0d
Merge branch 'documentation' into documentation
pwochner Jul 9, 2024
d132fc2
Update make.jl
pwochner Jul 9, 2024
bb62abd
Merge pull request #84 from LoLo5689/documentation
pwochner Jul 9, 2024
c970f0f
Increase size threshold for html.
pwochner Jul 9, 2024
db60a8a
Merge branch 'documentation' into documentation-syntaxtree-tutorial
pwochner Jul 9, 2024
8daed41
Merge pull request #68 from Herb-AI/documentation-syntaxtree-tutorial
pwochner Jul 9, 2024
0b8edc9
Bug fix in tutorial 'A more verbose getting started'
pwochner Jul 22, 2024
fd5d48c
Convert tutorials Verbose getting started and Getting started with Co…
pwochner Jul 23, 2024
115187a
Pluot notebook for AST tutorial
pwochner Jul 23, 2024
a067c52
Replace broken constraint. Replace cfgrammar with csgrammar.
pwochner Aug 27, 2024
9c054af
Pluto notebook for tutorial Defining Grammars.
pwochner Aug 28, 2024
d463fc6
Replace deprecated cfgrammar.
pwochner Aug 28, 2024
11faf5a
Fix broken code for parameters section of tutorial.
pwochner Sep 19, 2024
6b3f8e0
Improve tutorials.
pwochner Sep 20, 2024
f8b331d
Fix rightmost-first heuristic for BFSIterator. Add more explanations.…
pwochner Sep 26, 2024
661270e
Better way to use rightmost-heuristic. Improvements on tutorial text.
pwochner Sep 30, 2024
4e9ebd3
Deletes md/notbook files of tutorials that are replaced by Pluto note…
pwochner Sep 30, 2024
8609bb1
Change section headings for BFS/DFS.
pwochner Sep 30, 2024
27701f8
Defines priority function for DFS rightmost properly. Removes unneces…
pwochner Oct 3, 2024
0a24af5
Merge branch 'master' into documentation
ReubenJ Oct 3, 2024
1849415
Merge branch 'documentation' into documentation-ast-pluto
pwochner Oct 3, 2024
cf02c8e
Merge pull request #106 from Herb-AI/documentation-ast-pluto
pwochner Oct 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Documentation

on:
push:
branches:
- documentation # update to match your development branch (master, main, dev, trunk, ...)
tags: '*'
pull_request:

jobs:
build:
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade jupyterlab nbconvert
- uses: julia-actions/setup-julia@v1
with:
version: '1'
- name: Install dependencies
run: julia --project=docs/ -e '
using Pkg;
Pkg.develop(PackageSpec(path=pwd()));
Pkg.develop("HerbCore");
Pkg.develop("HerbData");
Pkg.develop("HerbGrammar");
Pkg.develop("HerbInterpret");
Pkg.develop("HerbConstraints");
Pkg.develop("HerbSearch");
Pkg.instantiate()'
- name: Build and deploy
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # If authenticating with GitHub Actions token
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} # If authenticating with SSH deploy key
run: julia --project=docs/ docs/make.jl
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ deps/src/
# Build artifacts for creating documentation generated by the Documenter package
docs/build/
docs/site/
docs/Manifest.toml

# File generated by Pkg, the package manager, based on a corresponding Project.toml
# It records a fixed state of all packages used by the project. As such, it should not be
Expand Down
19 changes: 19 additions & 0 deletions docs/Project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
[deps]
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
DocumenterTools = "35a29f4d-8980-5a13-9543-d66fff28ecb8"
Herb = "c09c6b7f-4f63-49de-90d9-97a3563c0f4a"
HerbConstraints = "1fa96474-3206-4513-b4fa-23913f296dfc"
HerbCore = "2b23ba43-8213-43cb-b5ea-38c12b45bd45"
HerbData = "495a3ad3-8034-41b3-a087-aacf2fd71098"
HerbGrammar = "4ef9e186-2fe5-4b24-8de7-9f7291f24af7"
HerbInterpret = "5bbddadd-02c5-4713-84b8-97364418cca7"
HerbSearch = "3008d8e8-f9aa-438a-92ed-26e9c7b4829f"
HerbSpecification = "6d54aada-062f-46d8-85cf-a1ceaf058a06"
Pluto = "c3e4b0f8-55cb-11ea-2926-15256bba5781"
PlutoSliderServer = "2fc8631c-6f24-4c5b-bca7-cbb509c42db4"
PlutoStaticHTML = "359b1769-a58e-495b-9770-312e911026ad"
PlutoUI = "7f904dfe-b85e-4ff6-b463-dae2292396a8"
PyCall = "438e738f-606a-5dbb-bf0a-cddfbfd45ab0"

[compat]
Documenter = "1"
15 changes: 15 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Documentation of Herb.jl

This documentation was created using [Documenter.jl](https://documenter.juliadocs.org/stable/man/guide/).

## Writing documentation

The majority of the documentation of automatically generated from the respective docstrings of each sub-package.
There are some pages that were added manually and can be edited likewise. New pages can 1. easily be written in markdown and 2. added to the site-tree by editing `docs/make.jl`.

## Compiling the documentation
Compiling is automatically triggered whenever pushing to this branch. If you want to run the documentation locally run `julia --project=. make.jl` in this directory.

## Help!

If help is needed reach out to [THinnerichs](https://github.com/thinnerichs).
78 changes: 78 additions & 0 deletions docs/make.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
using Documenter

using Pluto, PlutoSliderServer

using Herb

using HerbConstraints
using HerbSearch
using HerbGrammar
using HerbInterpret
using HerbCore
using HerbSpecification

# Create md file for tutorial that embeds html file
basedir = joinpath(@__DIR__, "src", "tutorials")
html_files = filter!(f -> occursin(r"\.html$", f), readdir(basedir)) # assumes all html file in directory are tutorials

for f in html_files
html_path = joinpath(basedir, f)
filename = replace(f, ".html" => "")
md_path = joinpath(basedir, "$filename.md")
content = """
# Tutorial $filename

<iframe src="$html_path" width="100%" height="600px"></iframe>
"""
open(md_path, "w") do file
write(
file,
content
)
end
end


makedocs(
modules=[HerbConstraints, HerbSearch, HerbGrammar, HerbSpecification, HerbInterpret, HerbCore],
authors="PONYs",
sitename="Herb.jl",
pages=[
"Basics" => [
"index.md",
"install.md",
"get_started.md",
"concepts.md"
],
"Tutorials" => [
"A more verbose getting started with Herb.jl" => "tutorials/getting_started_with_herb.md",
"Defining Grammars in Herb.jl" => "tutorials/defining_grammars.md",
"Advanced Search Procedures" => "tutorials/advanced_search.md",
"Top Down Iterator" => "tutorials/TopDown.md",
"Getting started with Constraints" => "tutorials/getting_started_with_constraints.md",
"Working with custom interpreters" => "tutorials/working_with_interpreters.md",
"Abstract Syntax Trees" => "tutorials/abstract_syntax_trees.md",
],
"Sub-Modules" => [
"HerbCore.jl" => "HerbCore/index.md",
"HerbGrammar.jl" => "HerbGrammar/index.md",
"HerbSpecification.jl" => "HerbSpecification/index.md",
"HerbInterpret.jl" => "HerbInterpret/index.md",
"HerbConstraints.jl" => "HerbConstraints/index.md",
"HerbSearch.jl" => "HerbSearch/index.md",
],
],
format=Documenter.HTML(
sidebar_sitename=false,
size_threshold=512000,
),
warnonly=[:missing_docs, :cross_references, :doctest]
)

deploydocs(;
repo="github.com/Herb-AI/Herb.jl.git",
devbranch="documentation",
# devurl="dev",
push_preview=true
)

15 changes: 15 additions & 0 deletions docs/src/HerbConstraints/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# [HerbConstraints.jl Documentation](@id HerbConstraints_docs)

```@meta
CurrentModule=HerbConstraints
```

```@autodocs
Modules = [HerbConstraints]
Order = [:type, :const, :macro, :function]
```

## Index

```@index
```
15 changes: 15 additions & 0 deletions docs/src/HerbCore/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# [HerbCore.jl Documentation](@id HerbCore_docs)

```@meta
CurrentModule=HerbCore
```

```@autodocs
Modules = [HerbCore]
Order = [:type, :const, :macro, :function]
```

## Index

```@index
```
15 changes: 15 additions & 0 deletions docs/src/HerbGrammar/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# [HerbGrammar.jl Documentation](@id HerbGrammar_docs)

```@meta
CurrentModule=HerbGrammar
```

```@autodocs
Modules = [HerbGrammar]
Order = [:type, :const, :macro, :function]
```

## Index

```@index
```
15 changes: 15 additions & 0 deletions docs/src/HerbInterpret/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# [HerbInterpret.jl Documentation](@id HerbInterpret_docs)

```@meta
CurrentModule=HerbInterpret
```

```@autodocs
Modules = [HerbInterpret]
Order = [:type, :const, :macro, :function]
```

## Index

```@index
```
27 changes: 27 additions & 0 deletions docs/src/HerbSearch/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# [HerbSearch.jl Documentation](@id HerbSearch_docs)

```@meta
CurrentModule=HerbSearch
```

```@autodocs
Modules = [HerbSearch]
Order = [:type, :const, :macro, :function]
```

The HerbSearch package takes care of all operations related to searching for the desired program. This includes
- the functionality to sample a certain program given a grammar,
- the implementation of several heuristic functions,
- searching for a program that satisfies the specification, and
- implementations of several search algorithms in terms of how they enumerate the search space
- Breadth-First Search
- Depth-First Search
- Metropolis Hastings
- Very Large Scale Neighbourhood Search
- Simulated Annealing
- Genetic Search

## Index

```@index
```
15 changes: 15 additions & 0 deletions docs/src/HerbSpecification/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# [HerbSpecification.jl Documentation](@id HerbSpecification_docs)

```@meta
CurrentModule=HerbSpecification
```

```@autodocs
Modules = [HerbSpecification]
Order = [:type, :const, :macro, :function]
```

## Index

```@index
```
Binary file added docs/src/assets/herb.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading