--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="JAVA_MODULE" version="4">
+ <component name="NewModuleRootManager">
+ <output url="file://$USER_HOME$/Ariadne/developer/scratchpad" />
+ <output-test url="file://$USER_HOME$/Ariadne/developer/test" />
+ <exclude-output />
+ <content url="file://$USER_HOME$/Ariadne/developer">
+ <sourceFolder url="file://$USER_HOME$/Ariadne/developer/javac" isTestSource="false" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ </component>
+</module>
\ No newline at end of file
--- /dev/null
+
+--------------------------------------------------------------------------------
+Nomenclature
+
+IntelliJ paths. It always displays absolute path names. I was using
+ $PROJECT_DIR$ as a variable standing for the project directory, but ran into
+ problems with it so since then I use `~/Ariadne/...` or use the
+ browser to select paths. The browser seems to start either at /home or at /
+ rather than at the project.
+
+project directory - the directory with the .git file in it. Called $REPO_HOME in
+ RT scripts. Called $PROJECT_DIR$ (doesn't seem to be reliable) in IntelliJ
+ file paths.
+
+module directory - for RT projects examples include `~/Ariadne/developer'
+ `~/Ariadne/tester`. These are independent build environments.
+
+ Careful, if Intellij scans directories it will not hesitate to pull things
+ from `tool_shared`/third_party or wherever else it finds things, and it will
+ make a big mess.
+
+--------------------------------------------------------------------------------
+To install ItelliJ
+
+ Download the tar file from
+ `https://www.jetbrains.com/idea/download/?section=linux`
+ into the
+ `$REPO_HOME/tool_shared/third_party/upstream`
+ directory.
+
+ Expand it into
+ `$REPO_HOME/tool_shared/third_party`
+
+ cd into the expanded directory, into `bin`, then `chmod u+x` and run `idea_inst`.
+
+ set the env path to include
+ `$REPO_HOME/tool_shared/third_party/idea-IC*/bin`
+
+ The executable is called `idea`.
+
+ Consider setting a desktop short cut. Consider instead installing it in your
+ own bin directory. Easily done, just move the directory created by the tar
+ file expansion there.
+
+ I prefer a user mode install, as there is no reason this tool should need
+ admin privileges.
+
+--------------------------------------------------------------------------------
+Startup
+
+ ./tool_shared/third_party/idea-IC-243.21565.193/bin/idea &
+
+ Shows: Welcome screen
+ select "Open" as Ariadne already exists
+
+ Shows: Open File or Project Browser
+ In top dialog box put full path to project directory.
+
+ Hit [OK] at the bottom. Unlikely, but might be scrolled off the bottom of the screen.
+
+ Shows: main window
+ Appears after hitting OK from the "Open File or Project" [ok].
+
+ Has a tool bar at the top. There is a double meat hamburger menu icon
+ at the left. Hitting this will replace the top bar with a vertical
+ menu for drop down menus.
+
+ Careful, after the hamburger icon is pressed, the first drop down
+ menu instantly appears. Slide over to get the other drop downs.
+
+ Careful, there is a Linux bug where the drop down menu will stay
+ on top no matter what widow or what virtual desktop a person is on.
+ Go to the application window and hit <escape> to make it go away.
+
+ Under tool bar:
+ Far left is an icon bar. Then a file browser. And then a big box
+ describing hot keys.
+
+--------------------------------------------------------------------------------
+Configuration
+
+** If you cloned the Ariadne project, you should already have the configuration
+so you can stop here.
+
+-------------
+Setup Project
+Hamburger icon -> File dop-down --> Project Structure --> Project
+
+ select project SDK from disk:
+ ~/Ariadne/tool_shared/third_party/jdk-11
+
+-------------
+Setup Modules
+
+ Hamburger icon -> File dop-down --> Project Structure --> Modules
+
+ Shows: "Project Structure" dialog
+
+ Hit the '+' option that shows at the top of the second panel.
+
+ New Module.
+
+ Dialog pop-up
+
+ Name: developer
+
+ Location: (browse to the developer directory)
+
+ alternatively enter the full path, ~/Ariadne, e.g.
+
+ $PROJECT_DIR$ instead of, ~/Ariadne, worked when
+ entering the first module, but not the second.
+
+ Dependencies:
+ Select the "Project SDK" from the drop down.
+
+ Careful, the module won't be made until hitting [Create] at the bottom.
+
+ As far as I can tell you can't get this panel again, rather delete and add
+ a new module if you need to change the entries.
+
+ Shows: "Project Structure" dialog, again, now the third panel with information about the
+ developer module.
+ Third panel shows three choices: [Source] [Paths] [Dependencies]
+
+ [Sources] is already selected.
+
+ With Sources there are two panels.
+
+ In second panel, on right side, the module root should show at the top.
+ Under if it lists any sources, use the button at the far right of the
+ listing to x it out.
+
+ The first panel now shows a file browser for the module.
+
+ Select the `javac` directory with a single click. Then, and only
+ after, look immediately the directory lists and click on [Sources]
+
+ "Source Folders" will now appear in the second panel. The
+ javac folder will be listed.
+
+ hit: [apply] at the bottom (or the form will reset to defaults next time)
+
+
+ Slide over to [Paths]
+ Copmiler Output
+ select [Use Module Compile Output Path]
+ Output Path: $PROJECT_DIR$/developer/scratchpad
+ Test Path: $PROJECT_DIR$/developer/test
+
+ leave the exclude output checkbox, that means to exclude from repo
+ and from indexing for search
+
+ hit: [apply] at the bottom
+
+-------------
+Run/Debug
+
+
+-------------
+External Tools
+
+
--- /dev/null
+#!/usr/bin/env bash
+
+# Centralized environment executor. Typically used by IDEs to run developer/tool
+# or tester/tool commands in the correct environment. Shell users are encouraged
+# to source the appropriate environment file into their shell instead of
+# running commands through this executor.
+
+if [ "$#" -lt 2 ]; then
+ echo "Usage: $0 <environment> <command> [args...]"
+ echo "Example: $0 developer make"
+ exit 1
+fi
+
+# extract the environment and the command
+environment=$1
+shift
+command=$1
+shift
+command_args="$@"
+
+# Determine the path to the environment script based on the environment
+case "$environment" in
+ developer)
+ env_script="env_developer"
+ ;;
+ tester)
+ env_script="env_tester"
+ ;;
+ *)
+ echo "Error: Unknown environment '$environment'. Supported environments are: developer, tester."
+ exit 1
+ ;;
+esac
+
+# check if the environment script exists and is readable
+if [ ! -f "$env_script" ] || [ ! -r "$env_script" ]; then
+ echo "Error: Environment script '$env_script' not found or not readable."
+ exit 1
+fi
+
+source "$env_script"
+exec "$command" "$command_args"
-*
-!/.gitignore
+/Test_File_0$TestSuite.class
+/Test_File_0.class
+/Test_Graph_0$TestSuite.class
+/Test_Graph_0.class
+/Test_LabelList_0$TestSuite.class
+/Test_LabelList_0.class
+/Test_Label_0$TestSuite.class
+/Test_Label_0.class
+/Test_NodeList_0$TestSuite.class
+/Test_NodeList_0.class
+/Test_Node_0$TestSuite.class
+/Test_Node_0.class
+/Test_TokenSet_0$TestSuite.class
+/Test_TokenSet_0.class
+/Test_Token_0$TestSuite.class
+/Test_Token_0.class
+/Test_Util_0$TestSuite.class
+/Test_Util_0.class
--- /dev/null
+
+2024-12-02T14:07:27.503122Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Message:
+Test logic error: com.sun.proxy.$Proxy0.path_find_cycle(com.ReasoningTechnology.Ariadne.Ariadne_LabelList)
+
+2024-12-02T14:07:27.518989Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Stream: stdout
+Output:
+path_find_cycle_0 method called
+
+
+2024-12-03T02:55:02.549923Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Message:
+Test logic error: com.sun.proxy.$Proxy0.path_find_cycle(com.ReasoningTechnology.Ariadne.Ariadne_LabelList)
+
+2024-12-03T02:55:02.563364Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Stream: stdout
+Output:
+path_find_cycle_0 method called
+
+
+2024-12-03T02:57:35.562470Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Message:
+Test logic error: com.sun.proxy.$Proxy0.path_find_cycle(com.ReasoningTechnology.Ariadne.Ariadne_LabelList)
+
+2024-12-03T02:57:35.574133Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Stream: stdout
+Output:
+path_find_cycle_0 method called
+
+++ /dev/null
-
-class TestGraph{
-
- static def get_node_map(){
- return [
- 'title': [
- type: 'symbol'
- ,neighbor: []
- ,build: {
- println "TestGraph for test1"
- }
- ]]
- }
-
- // Static method to define the function list
- static def get_node_f_list(){
- return []
- }
-}
-
-// LocalWords: TestGraph
+++ /dev/null
-
-if [ -z "$ENV_TESTER" ]; then
- echo "env_test0:: script can only be run in the tester environment"
- env_error=true
-fi
-
-export CLASSPATH=\
-"$REPO_HOME"/release_candidate\
-:"$REPO_HOME"/tester/test1\
-:$CLASSPATH
-
+++ /dev/null
-#!/bin/env bash
-
-# smoke test, and yes, there was a lot of smoke
-
-source env_test
-
-echo "test 0 will complain there are no build targets"
-build TestGraph
-echo ""
-
-echo "test 1 will print the graph title"
-build TestGraph title
-echo ""
-
-echo "test complete"
-
+++ /dev/null
-2024-10-06T07:23:25Z[]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer§
-> repo Ariadne
-REPO_HOME /var/user_data/Thomas-developer/Ariadne
-PROJECT Ariadne
-/var/user_data/Thomas-developer/Ariadne/executor/env_base complete
-/var/user_data/Thomas-developer/Ariadne/developer/executor/env_build complete
-/var/user_data/Thomas-developer/Ariadne/executor/env_dev complete
-
-2024-10-06T07:23:34Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
-> ls
-. .. deprecated document executor groovy groovyc scratch_pad
-
-2024-10-06T07:23:37Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
-> ls groovy
-. .. build
-
-2024-10-06T07:23:40Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
-> ls groovyc
-. .. AriadneGraph.groovy
-
-2024-10-06T07:23:44Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
-> make.sh
-
-2024-10-06T07:23:53Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
-> ls groovy
-. .. build
-
-2024-10-06T07:23:56Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
-> ls groovyc/
- .
- ..
-'AriadneGraph$_all_DAG_DF_closure7.class'
-'AriadneGraph$_all_DAG_DF_closure8.class'
-'AriadneGraph$_all_DAG_DF_closure9.class'
-'AriadneGraph$_good_dependency_q_closure10.class'
-'AriadneGraph$_mark_node_form_closure3.class'
-'AriadneGraph$_markup_graph_f_descend_closure4.class'
-'AriadneGraph$_markup_graph_f_descend_closure5.class'
-'AriadneGraph$_markup_graph_f_descend_closure6.class'
-'AriadneGraph$_newer_than_all_closure11.class'
-'AriadneGraph$_run_build_scripts_f_closure12.class'
-'AriadneGraph$_run_build_scripts_f_closure13.class'
-'AriadneGraph$_run_build_scripts_f_closure14.class'
-'AriadneGraph$_wellformed_q_closure1.class'
-'AriadneGraph$_wellformed_q_closure2.class'
- AriadneGraph.class
- AriadneGraph.groovy
-
-2024-10-06T07:23:59Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
-> release
-Installed build to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r,ug+x
-Installed AriadneGraph.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_wellformed_q_closure1.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_wellformed_q_closure2.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_mark_node_form_closure3.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_markup_graph_f_descend_closure4.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_markup_graph_f_descend_closure5.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_markup_graph_f_descend_closure6.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_all_DAG_DF_closure7.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_all_DAG_DF_closure8.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_all_DAG_DF_closure9.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_good_dependency_q_closure10.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_newer_than_all_closure11.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_run_build_scripts_f_closure12.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_run_build_scripts_f_closure13.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-Installed AriadneGraph$_run_build_scripts_f_closure14.class to /var/user_data/Thomas-developer/Ariadne/release_candidate with permissions ug+r
-
-2024-10-06T07:24:08Z[Ariadne]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/developer§
->
+++ /dev/null
-2024-10-06T07:25:26Z[]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer§
-> cd Ariadne
-
-2024-10-06T07:25:41Z[]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne§
-> source executor/env_tester
-REPO_HOME /var/user_data/Thomas-developer/Ariadne
-PROJECT Ariadne
-/var/user_data/Thomas-developer/Ariadne/executor/env_base complete
-executor/env_tester complete
-
-2024-10-06T07:25:49Z[Ariadne_TESTER]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/tester§
-> cd test1
-
-2024-10-06T07:25:55Z[Ariadne_TESTER]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/tester/test1§
-> ls
-. .. env_test TestGraph.groovy test.sh
-
-2024-10-06T07:25:56Z[Ariadne_TESTER]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/tester/test1§
-> make.sh
-
-2024-10-06T07:26:28Z[Ariadne_TESTER]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/tester/test1§
-> ./test.sh
-test 0 will complain there are no build targets
-Summary: Building targets for graph 'TestGraph.class'
-No build targets specified. Please provide root node labels to build.
-
-test 1 will print the graph title
-Summary: Building targets for graph 'TestGraph.class'
-Building targets: title
-build:: loaded TestGraph.class
-node_map: [title:[type:symbol, neighbor:[], build:TestGraph$_get_node_map_closure1@3fae596]]
-node_f_list: []
-run_build_script:: Checking if graph is well formed.
-lookup::node: [type:symbol, neighbor:[], build:TestGraph$_get_node_map_closure1@3fae596, label:title]
-mark_node_form::node: [type:symbol, neighbor:[], build:TestGraph$_get_node_map_closure1@3fae596, label:title]
-Graph is not well-formed. Expect build problems. Errors:
- - all_wellformed
-run_build_scripts_f:: running ...
-all_DAG_DF::
-lookup::node: [type:symbol, neighbor:[], build:TestGraph$_get_node_map_closure1@3fae596, label:title, mark:[wellformed]]
-run_build_scripts_f:: Running build script for title
-TestGraph for test1
-
-test complete
-
-2024-10-06T07:26:37Z[Ariadne_TESTER]
-Thomas-developer@Blossac§/var/user_data/Thomas-developer/Ariadne/tester/test1§
->
Output:
path_find_cycle_0 method called
+
+2024-12-02T14:13:43.621612Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Message:
+Test logic error: com.sun.proxy.$Proxy0.path_find_cycle(com.ReasoningTechnology.Ariadne.Ariadne_LabelList)
+
+2024-12-02T14:13:43.635546Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Stream: stdout
+Output:
+path_find_cycle_0 method called
+
+
+2024-12-02T14:19:11.142646Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Message:
+Test logic error: com.sun.proxy.$Proxy0.path_find_cycle(com.ReasoningTechnology.Ariadne.Ariadne_LabelList)
+
+2024-12-02T14:19:11.154358Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Stream: stdout
+Output:
+path_find_cycle_0 method called
+
+
+2024-12-02T14:19:52.526559Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Message:
+Test logic error: com.sun.proxy.$Proxy0.path_find_cycle(com.ReasoningTechnology.Ariadne.Ariadne_LabelList)
+
+2024-12-02T14:19:52.538420Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Stream: stdout
+Output:
+path_find_cycle_0 method called
+
+
+2024-12-03T02:59:57.307803Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Message:
+Test logic error: com.sun.proxy.$Proxy0.path_find_cycle(com.ReasoningTechnology.Ariadne.Ariadne_LabelList)
+
+2024-12-03T02:59:57.319918Z -----------------------------------------------------------
+Test: path_find_cycle_0
+Stream: stdout
+Output:
+path_find_cycle_0 method called
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="JAVA_MODULE" version="4">
+ <component name="NewModuleRootManager">
+ <output url="file://$MODULE_DIR$/scratchpad" />
+ <output-test url="file://$MODULE_DIR$/test" />
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/javac" isTestSource="false" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ </component>
+</module>
\ No newline at end of file