bare-script 5.1.1__tar.gz → 5.1.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. {bare_script-5.1.1/src/bare_script.egg-info → bare_script-5.1.3}/PKG-INFO +33 -16
  2. {bare_script-5.1.1 → bare_script-5.1.3}/README.md +23 -8
  3. bare_script-5.1.3/pyproject.toml +43 -0
  4. bare_script-5.1.3/setup.cfg +4 -0
  5. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/include_source.py +1289 -1283
  6. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/library.py +130 -32
  7. {bare_script-5.1.1 → bare_script-5.1.3/src/bare_script.egg-info}/PKG-INFO +33 -16
  8. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script.egg-info/SOURCES.txt +0 -1
  9. bare_script-5.1.1/pyproject.toml +0 -2
  10. bare_script-5.1.1/setup.cfg +0 -38
  11. {bare_script-5.1.1 → bare_script-5.1.3}/LICENSE +0 -0
  12. {bare_script-5.1.1 → bare_script-5.1.3}/setup.py +0 -0
  13. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/__init__.py +0 -0
  14. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/__main__.py +0 -0
  15. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/bare.py +0 -0
  16. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/include.py +0 -0
  17. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/options.py +0 -0
  18. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/runtime.py +0 -0
  19. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/runtime_c.c +0 -0
  20. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script/value.py +0 -0
  21. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script.egg-info/dependency_links.txt +0 -0
  22. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script.egg-info/entry_points.txt +0 -0
  23. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script.egg-info/requires.txt +0 -0
  24. {bare_script-5.1.1 → bare_script-5.1.3}/src/bare_script.egg-info/top_level.txt +0 -0
@@ -1,21 +1,23 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bare-script
3
- Version: 5.1.1
4
- Summary: bare-script
5
- Home-page: https://github.com/craigahobbs/bare-script
6
- Author: Craig A. Hobbs
7
- Author-email: craigahobbs@gmail.com
8
- License: MIT
9
- Keywords: bare-script
3
+ Version: 5.1.3
4
+ Summary: BareScript; a lightweight scripting and expression language
5
+ Author-email: "Craig A. Hobbs" <craigahobbs@gmail.com>
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/craigahobbs/bare-script-py
8
+ Keywords: expression,language,script
10
9
  Classifier: Development Status :: 5 - Production/Stable
10
+ Classifier: Environment :: Console
11
11
  Classifier: Intended Audience :: Developers
12
12
  Classifier: Operating System :: OS Independent
13
- Classifier: Programming Language :: Python :: 3.10
13
+ Classifier: Programming Language :: Python :: 3
14
14
  Classifier: Programming Language :: Python :: 3.11
15
15
  Classifier: Programming Language :: Python :: 3.12
16
16
  Classifier: Programming Language :: Python :: 3.13
17
17
  Classifier: Programming Language :: Python :: 3.14
18
+ Classifier: Programming Language :: Python :: 3.15
18
19
  Classifier: Topic :: Software Development :: Interpreters
20
+ Classifier: Topic :: Software Development :: Libraries
19
21
  Classifier: Topic :: Utilities
20
22
  Description-Content-Type: text/markdown
21
23
  License-File: LICENSE
@@ -52,6 +54,15 @@ confident that BareScript will execute the same regardless of the underlying run
52
54
  - [Source code](https://github.com/craigahobbs/bare-script-py)
53
55
 
54
56
 
57
+ ## Installation
58
+
59
+ Install the bare-script package with pip — it includes the `bare` command-line interface:
60
+
61
+ ```
62
+ pip install bare-script
63
+ ```
64
+
65
+
55
66
  ## Executing BareScript Scripts
56
67
 
57
68
  To execute a BareScript script, parse the script using the
@@ -60,7 +71,7 @@ function. Then execute the script using the
60
71
  [execute_script](https://craigahobbs.github.io/bare-script-py/scripts.html#execute-script)
61
72
  function. For example:
62
73
 
63
- ``` python
74
+ ```python
64
75
  from bare_script import barescript_parse_script, execute_script
65
76
 
66
77
  # Parse the script
@@ -96,7 +107,7 @@ of the
96
107
  [arrayLength](https://craigahobbs.github.io/bare-script-py/library/#var.vGroup='array'&arraylength)
97
108
  functions.
98
109
 
99
- ``` python
110
+ ```python
100
111
  import urllib.request
101
112
 
102
113
  from bare_script import barescript_parse_script, execute_script, fetch_http
@@ -117,7 +128,7 @@ print(execute_script(script, {'fetchFn': fetch_http}))
117
128
  This outputs:
118
129
 
119
130
  ```
120
- The BareScript Library has 108 builtin functions
131
+ The BareScript Library has 100 builtin functions
121
132
  ```
122
133
 
123
134
 
@@ -137,7 +148,7 @@ a set of built-in, spreadsheet-like functions.
137
148
 
138
149
  For example:
139
150
 
140
- ``` python
151
+ ```python
141
152
  from bare_script import barescript_parse_expression, evaluate_expression
142
153
 
143
154
  # Parse the expression
@@ -169,7 +180,7 @@ exported by the
169
180
  Each stub function executes its corresponding include library function using the BareScript
170
181
  runtime. For example:
171
182
 
172
- ``` python
183
+ ```python
173
184
  from bare_script.include import markdown_parse, markdown_title
174
185
 
175
186
  # Parse the Markdown text
@@ -199,7 +210,7 @@ files use the ".bare" file extension.
199
210
  bare script.bare
200
211
  ```
201
212
 
202
- **Note:** In the BareScript CLI, import statements and the
213
+ **Note:** In the BareScript CLI, include statements and the
203
214
  [systemFetch](https://craigahobbs.github.io/bare-script-py/library/#var.vGroup='system'&systemfetch)
204
215
  function read non-URL paths from the local file system.
205
216
  [systemFetch](https://craigahobbs.github.io/bare-script-py/library/#var.vGroup='system'&systemfetch)
@@ -217,7 +228,7 @@ dynamically rendering Markdown text, drawing SVG images, etc. For example:
217
228
 
218
229
  This is a Markdown document with embedded BareScript:
219
230
 
220
- ``` markdown-script
231
+ ```markdown-script
221
232
  markdownPrint('Hello, Markdown!')
222
233
  ```
223
234
  ~~~
@@ -300,11 +311,17 @@ pip install markdown-up
300
311
  markdown-up ticTacToe.md
301
312
  ```
302
313
 
303
- The BareScript library is also documented as single-page Markdown, which can be fetched directly
314
+ The BareScript documentation is also published as plain Markdown, which can be fetched directly
304
315
  into an assistant's context alongside `SKILL.md`:
305
316
 
317
+ - [The BareScript Language](https://craigahobbs.github.io/bare-script-py/language/README.md)
306
318
  - [The BareScript Library](https://craigahobbs.github.io/bare-script-py/library/barescript-library.md)
307
319
  - [The BareScript Library Models](https://craigahobbs.github.io/bare-script-py/library/barescript-library-model.md)
320
+ - [The BareScript Expression Library](https://craigahobbs.github.io/bare-script-py/library/barescript-expression-library.md)
321
+ - [The BareScript Runtime Model](https://craigahobbs.github.io/bare-script-py/model/barescript-model.md)
322
+
323
+ `SKILL.md` itself is published at <https://craigahobbs.github.io/bare-script-py/SKILL.md>, and
324
+ <https://craigahobbs.github.io/bare-script-py/llms.txt> indexes all of the fetchable documentation.
308
325
 
309
326
 
310
327
  ## Development
@@ -28,6 +28,15 @@ confident that BareScript will execute the same regardless of the underlying run
28
28
  - [Source code](https://github.com/craigahobbs/bare-script-py)
29
29
 
30
30
 
31
+ ## Installation
32
+
33
+ Install the bare-script package with pip — it includes the `bare` command-line interface:
34
+
35
+ ```
36
+ pip install bare-script
37
+ ```
38
+
39
+
31
40
  ## Executing BareScript Scripts
32
41
 
33
42
  To execute a BareScript script, parse the script using the
@@ -36,7 +45,7 @@ function. Then execute the script using the
36
45
  [execute_script](https://craigahobbs.github.io/bare-script-py/scripts.html#execute-script)
37
46
  function. For example:
38
47
 
39
- ``` python
48
+ ```python
40
49
  from bare_script import barescript_parse_script, execute_script
41
50
 
42
51
  # Parse the script
@@ -72,7 +81,7 @@ of the
72
81
  [arrayLength](https://craigahobbs.github.io/bare-script-py/library/#var.vGroup='array'&arraylength)
73
82
  functions.
74
83
 
75
- ``` python
84
+ ```python
76
85
  import urllib.request
77
86
 
78
87
  from bare_script import barescript_parse_script, execute_script, fetch_http
@@ -93,7 +102,7 @@ print(execute_script(script, {'fetchFn': fetch_http}))
93
102
  This outputs:
94
103
 
95
104
  ```
96
- The BareScript Library has 108 builtin functions
105
+ The BareScript Library has 100 builtin functions
97
106
  ```
98
107
 
99
108
 
@@ -113,7 +122,7 @@ a set of built-in, spreadsheet-like functions.
113
122
 
114
123
  For example:
115
124
 
116
- ``` python
125
+ ```python
117
126
  from bare_script import barescript_parse_expression, evaluate_expression
118
127
 
119
128
  # Parse the expression
@@ -145,7 +154,7 @@ exported by the
145
154
  Each stub function executes its corresponding include library function using the BareScript
146
155
  runtime. For example:
147
156
 
148
- ``` python
157
+ ```python
149
158
  from bare_script.include import markdown_parse, markdown_title
150
159
 
151
160
  # Parse the Markdown text
@@ -175,7 +184,7 @@ files use the ".bare" file extension.
175
184
  bare script.bare
176
185
  ```
177
186
 
178
- **Note:** In the BareScript CLI, import statements and the
187
+ **Note:** In the BareScript CLI, include statements and the
179
188
  [systemFetch](https://craigahobbs.github.io/bare-script-py/library/#var.vGroup='system'&systemfetch)
180
189
  function read non-URL paths from the local file system.
181
190
  [systemFetch](https://craigahobbs.github.io/bare-script-py/library/#var.vGroup='system'&systemfetch)
@@ -193,7 +202,7 @@ dynamically rendering Markdown text, drawing SVG images, etc. For example:
193
202
 
194
203
  This is a Markdown document with embedded BareScript:
195
204
 
196
- ``` markdown-script
205
+ ```markdown-script
197
206
  markdownPrint('Hello, Markdown!')
198
207
  ```
199
208
  ~~~
@@ -276,11 +285,17 @@ pip install markdown-up
276
285
  markdown-up ticTacToe.md
277
286
  ```
278
287
 
279
- The BareScript library is also documented as single-page Markdown, which can be fetched directly
288
+ The BareScript documentation is also published as plain Markdown, which can be fetched directly
280
289
  into an assistant's context alongside `SKILL.md`:
281
290
 
291
+ - [The BareScript Language](https://craigahobbs.github.io/bare-script-py/language/README.md)
282
292
  - [The BareScript Library](https://craigahobbs.github.io/bare-script-py/library/barescript-library.md)
283
293
  - [The BareScript Library Models](https://craigahobbs.github.io/bare-script-py/library/barescript-library-model.md)
294
+ - [The BareScript Expression Library](https://craigahobbs.github.io/bare-script-py/library/barescript-expression-library.md)
295
+ - [The BareScript Runtime Model](https://craigahobbs.github.io/bare-script-py/model/barescript-model.md)
296
+
297
+ `SKILL.md` itself is published at <https://craigahobbs.github.io/bare-script-py/SKILL.md>, and
298
+ <https://craigahobbs.github.io/bare-script-py/llms.txt> indexes all of the fetchable documentation.
284
299
 
285
300
 
286
301
  ## Development
@@ -0,0 +1,43 @@
1
+ [build-system]
2
+ requires = ["setuptools"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "bare-script"
7
+ version = "5.1.3"
8
+ description = "BareScript; a lightweight scripting and expression language"
9
+ readme = "README.md"
10
+ license = "MIT"
11
+ keywords = ["expression", "language", "script"]
12
+ authors = [
13
+ {name = "Craig A. Hobbs", email = "craigahobbs@gmail.com"}
14
+ ]
15
+ classifiers = [
16
+ "Development Status :: 5 - Production/Stable",
17
+ "Environment :: Console",
18
+ "Intended Audience :: Developers",
19
+ "Operating System :: OS Independent",
20
+ "Programming Language :: Python :: 3",
21
+ "Programming Language :: Python :: 3.11",
22
+ "Programming Language :: Python :: 3.12",
23
+ "Programming Language :: Python :: 3.13",
24
+ "Programming Language :: Python :: 3.14",
25
+ "Programming Language :: Python :: 3.15",
26
+ "Topic :: Software Development :: Interpreters",
27
+ "Topic :: Software Development :: Libraries",
28
+ "Topic :: Utilities"
29
+ ]
30
+ dependencies = [
31
+ "urllib3 >= 2.5.0"
32
+ ]
33
+
34
+ [project.urls]
35
+ Homepage = "https://github.com/craigahobbs/bare-script-py"
36
+
37
+ [project.scripts]
38
+ bare = "bare_script.bare:main"
39
+
40
+ [tool.setuptools]
41
+ include-package-data = false
42
+ package-dir = {"" = "src"}
43
+ packages = ["bare_script"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+