squirrels 0.5.0b4__py3-none-any.whl → 0.5.1__py3-none-any.whl
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.
Potentially problematic release.
This version of squirrels might be problematic. Click here for more details.
- squirrels/__init__.py +2 -0
- squirrels/_api_routes/auth.py +83 -74
- squirrels/_api_routes/base.py +58 -41
- squirrels/_api_routes/dashboards.py +37 -21
- squirrels/_api_routes/data_management.py +72 -27
- squirrels/_api_routes/datasets.py +107 -84
- squirrels/_api_routes/oauth2.py +11 -13
- squirrels/_api_routes/project.py +71 -33
- squirrels/_api_server.py +130 -63
- squirrels/_arguments/run_time_args.py +9 -9
- squirrels/_auth.py +117 -162
- squirrels/_command_line.py +68 -32
- squirrels/_compile_prompts.py +147 -0
- squirrels/_connection_set.py +11 -2
- squirrels/_constants.py +22 -8
- squirrels/_data_sources.py +38 -32
- squirrels/_dataset_types.py +2 -4
- squirrels/_initializer.py +1 -1
- squirrels/_logging.py +117 -0
- squirrels/_manifest.py +125 -58
- squirrels/_model_builder.py +10 -54
- squirrels/_models.py +224 -108
- squirrels/_package_data/base_project/.env +15 -4
- squirrels/_package_data/base_project/.env.example +14 -3
- squirrels/_package_data/base_project/connections.yml +4 -3
- squirrels/_package_data/base_project/dashboards/dashboard_example.py +2 -2
- squirrels/_package_data/base_project/dashboards/dashboard_example.yml +4 -4
- squirrels/_package_data/base_project/duckdb_init.sql +1 -0
- squirrels/_package_data/base_project/models/dbviews/dbview_example.sql +7 -2
- squirrels/_package_data/base_project/models/dbviews/dbview_example.yml +16 -10
- squirrels/_package_data/base_project/models/federates/federate_example.py +22 -15
- squirrels/_package_data/base_project/models/federates/federate_example.sql +3 -7
- squirrels/_package_data/base_project/models/federates/federate_example.yml +1 -1
- squirrels/_package_data/base_project/models/sources.yml +5 -6
- squirrels/_package_data/base_project/parameters.yml +24 -38
- squirrels/_package_data/base_project/pyconfigs/connections.py +5 -1
- squirrels/_package_data/base_project/pyconfigs/context.py +23 -12
- squirrels/_package_data/base_project/pyconfigs/parameters.py +68 -33
- squirrels/_package_data/base_project/pyconfigs/user.py +11 -18
- squirrels/_package_data/base_project/seeds/seed_categories.yml +1 -1
- squirrels/_package_data/base_project/seeds/seed_subcategories.yml +1 -1
- squirrels/_package_data/base_project/squirrels.yml.j2 +18 -28
- squirrels/_package_data/templates/squirrels_studio.html +20 -0
- squirrels/_parameter_configs.py +43 -22
- squirrels/_parameter_options.py +1 -1
- squirrels/_parameter_sets.py +8 -10
- squirrels/_project.py +351 -234
- squirrels/_request_context.py +33 -0
- squirrels/_schemas/auth_models.py +32 -9
- squirrels/_schemas/query_param_models.py +9 -1
- squirrels/_schemas/response_models.py +36 -10
- squirrels/_seeds.py +1 -1
- squirrels/_sources.py +23 -19
- squirrels/_utils.py +83 -35
- squirrels/_version.py +1 -1
- squirrels/arguments.py +5 -0
- squirrels/auth.py +4 -1
- squirrels/connections.py +2 -0
- squirrels/dashboards.py +3 -1
- squirrels/data_sources.py +6 -0
- squirrels/parameter_options.py +5 -0
- squirrels/parameters.py +5 -0
- squirrels/types.py +6 -1
- {squirrels-0.5.0b4.dist-info → squirrels-0.5.1.dist-info}/METADATA +28 -13
- squirrels-0.5.1.dist-info/RECORD +98 -0
- squirrels-0.5.0b4.dist-info/RECORD +0 -94
- {squirrels-0.5.0b4.dist-info → squirrels-0.5.1.dist-info}/WHEEL +0 -0
- {squirrels-0.5.0b4.dist-info → squirrels-0.5.1.dist-info}/entry_points.txt +0 -0
- {squirrels-0.5.0b4.dist-info → squirrels-0.5.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: squirrels
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.1
|
|
4
4
|
Summary: Squirrels - API Framework for Data Analytics
|
|
5
5
|
Project-URL: Homepage, https://squirrels-analytics.github.io
|
|
6
6
|
Project-URL: Repository, https://github.com/squirrels-analytics/squirrels
|
|
@@ -15,8 +15,8 @@ Classifier: Typing :: Typed
|
|
|
15
15
|
Requires-Python: ~=3.10
|
|
16
16
|
Requires-Dist: authlib<2,>=1.5.2
|
|
17
17
|
Requires-Dist: bcrypt<5,>=4.0.1
|
|
18
|
-
Requires-Dist: cachetools
|
|
19
|
-
Requires-Dist: duckdb<2,>=1.
|
|
18
|
+
Requires-Dist: cachetools>=5.3.2
|
|
19
|
+
Requires-Dist: duckdb<2,>=1.4.0
|
|
20
20
|
Requires-Dist: fastapi<1,>=0.112.1
|
|
21
21
|
Requires-Dist: gitpython<4,>=3.1.41
|
|
22
22
|
Requires-Dist: inquirer<4,>=3.2.1
|
|
@@ -24,8 +24,7 @@ Requires-Dist: itsdangerous<3,>=2.2.0
|
|
|
24
24
|
Requires-Dist: jinja2<4,>=3.1.3
|
|
25
25
|
Requires-Dist: libpass<2,>=1.9.0
|
|
26
26
|
Requires-Dist: matplotlib<4,>=3.8.3
|
|
27
|
-
Requires-Dist: mcp>=1.
|
|
28
|
-
Requires-Dist: networkx<4,>=3.2.1
|
|
27
|
+
Requires-Dist: mcp>=1.13.1
|
|
29
28
|
Requires-Dist: pandas<3,>=2.1.4
|
|
30
29
|
Requires-Dist: polars<2,>=1.14.0
|
|
31
30
|
Requires-Dist: pyarrow>=19.0.1
|
|
@@ -51,22 +50,38 @@ Squirrels is an API framework that lets you create REST APIs for dynamic data an
|
|
|
51
50
|
|
|
52
51
|
- [Main Features](#main-features)
|
|
53
52
|
- [License](#license)
|
|
54
|
-
- [Contributing to
|
|
53
|
+
- [Contributing to Squirrels](#contributing-to-squirrels)
|
|
55
54
|
- [Setup](#setup)
|
|
56
55
|
- [Testing](#testing)
|
|
57
56
|
- [Project Structure](#project-structure)
|
|
58
57
|
|
|
59
58
|
## Main Features
|
|
60
59
|
|
|
61
|
-
Here are a few of the things that
|
|
60
|
+
Here are a few of the things that Squirrels can do:
|
|
62
61
|
|
|
63
62
|
- Connect to any database by specifying its SQLAlchemy url (in `squirrels.yml`) or by using its native connector library in python (in `connections.py`).
|
|
64
63
|
- Configure API routes for datasets (in `squirrels.yml`) without writing code.
|
|
65
64
|
- Configure parameter widgets (types include single-select, multi-select, date, number, etc.) for your datasets (in `parameters.py`).
|
|
66
|
-
- Use
|
|
65
|
+
- Use SQL templates (templated with Jinja, like dbt) or python functions (that return a Python dataframe in polars or pandas) to define dynamic query logic based on parameter selections.
|
|
67
66
|
- Query multiple databases and join the results together in a final view in one API endpoint/dataset!
|
|
68
|
-
- Test your API endpoints with Squirrels Studio or by a command line that generates rendered sql queries and results (for a given set of parameter selections).
|
|
67
|
+
- Test your API endpoints with Squirrels Studio or by a command line that generates rendered sql queries and results as files (for a given set of parameter selections).
|
|
69
68
|
- Define User model (in `user.py`) and authorize privacy scope per dataset (in `squirrels.yml`). The user's attributes can even be used in your query logic!
|
|
69
|
+
- Serve dataset metadata and results to AI agents via MCP (Model Context Protocol)
|
|
70
|
+
|
|
71
|
+
## Quick Start
|
|
72
|
+
|
|
73
|
+
In a new virtual environment, install `squirrels`. Then, in your project directory, activate the virtual environment and run the following commands:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
sqrl new --use-defaults --curr-dir
|
|
77
|
+
sqrl build
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
To run the API server, simply run:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
sqrl run
|
|
84
|
+
```
|
|
70
85
|
|
|
71
86
|
## License
|
|
72
87
|
|
|
@@ -74,9 +89,9 @@ Squirrels is released under the Apache 2.0 license.
|
|
|
74
89
|
|
|
75
90
|
See the file LICENSE for more details.
|
|
76
91
|
|
|
77
|
-
## Contributing to
|
|
92
|
+
## Contributing to Squirrels
|
|
78
93
|
|
|
79
|
-
The sections below describe how to set up your local environment for
|
|
94
|
+
The sections below describe how to set up your local environment for Squirrels development and run unit tests. A high level overview of the project structure is also provided.
|
|
80
95
|
|
|
81
96
|
### Setup
|
|
82
97
|
|
|
@@ -94,7 +109,7 @@ And activate the virtual environment with:
|
|
|
94
109
|
source .venv/bin/activate
|
|
95
110
|
```
|
|
96
111
|
|
|
97
|
-
To confirm that the setup worked, run the following to show the help page for all
|
|
112
|
+
To confirm that the setup worked, run the following to show the help page for all Squirrels CLI commands:
|
|
98
113
|
|
|
99
114
|
```bash
|
|
100
115
|
sqrl -h
|
|
@@ -108,6 +123,6 @@ Run `uv run pytest`. Or if you have the virtual environment activated, simply ru
|
|
|
108
123
|
|
|
109
124
|
From the root of the git repo, the source code can be found in the `squirrels` folder and unit tests can be found in the `tests` folder.
|
|
110
125
|
|
|
111
|
-
To understand what a specific
|
|
126
|
+
To understand what a specific Squirrels command is doing, start from the `_command_line.py` file as your entry point.
|
|
112
127
|
|
|
113
128
|
The library version is maintained in both the `pyproject.toml` and the `squirrels/_version.py` files.
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
dateutils/__init__.py,sha256=dq4VSlJ5ztaDPdvYBRAvXSyanT_CZif3I4O0YVmWfa8,277
|
|
2
|
+
dateutils/_enums.py,sha256=WBrnLqta_iMMhGMEn24cCO1Vlr7bST0E8oEfAL3z0P8,373
|
|
3
|
+
dateutils/_implementation.py,sha256=PVJAdNolDdTpCZXwvokKoMIZzTSNpCUvZlVLWpMeSho,15173
|
|
4
|
+
dateutils/types.py,sha256=xcRwBoftQi-uHM1tlVTW5xgN84qdrqCo5tQT7A34S8Y,124
|
|
5
|
+
squirrels/__init__.py,sha256=nvzVVd5yHYbpQAfyKdQGDMxZpW7wVq3uUlpg4Urc_ws,320
|
|
6
|
+
squirrels/_api_server.py,sha256=f1Dh3hOqtU8ycMuXWY5s77kYw6O-PaWqQPPR4JMho_0,17965
|
|
7
|
+
squirrels/_auth.py,sha256=wR49uT3mU-4PlgLcZqPgYjSbtwVYHm-2QyclApTiHLU,43532
|
|
8
|
+
squirrels/_command_line.py,sha256=wTJr_WahULV8iZwUyhJIiNTGFd0YByprpo9DBDyczpU,12797
|
|
9
|
+
squirrels/_compile_prompts.py,sha256=XIbRciSXak6NuDD4KedeDoUV5YSHvctQGk6HMxKchBw,5562
|
|
10
|
+
squirrels/_connection_set.py,sha256=qSNcFdEKRcgZyr9OEqAuoIZBk-DY_C_aL_F7OE9GDK4,4457
|
|
11
|
+
squirrels/_constants.py,sha256=SuAaceUN95BLdOt500A8fUx88dvwm-v-WBj3v87z4qM,4035
|
|
12
|
+
squirrels/_dashboards.py,sha256=FF6KG-GXohR5Hp-BMYRwEZ2hUQ_jbkFpcK5epwoD64w,4891
|
|
13
|
+
squirrels/_data_sources.py,sha256=jiTzYsECny4KBnalzuHYy6wQo4YXubJesDLH_a1M3dc,26433
|
|
14
|
+
squirrels/_dataset_types.py,sha256=J9nhLVZ1eOk_qfqjEXRaXQTB9sqyZcE_iUad0NNstgU,2742
|
|
15
|
+
squirrels/_exceptions.py,sha256=-hfDZoV-JhvuNRAERTFg-5NFjr0uNk4i9ogNgJfAyyc,1171
|
|
16
|
+
squirrels/_initializer.py,sha256=9BDMGVbZLdRnV9erzqw1FvpKBlWRk8-uiSsl9UioxJ0,14249
|
|
17
|
+
squirrels/_logging.py,sha256=dhFLZKde7iobSWSMwIBsbO_77tB0TYuDTpABRouAWkw,4142
|
|
18
|
+
squirrels/_manifest.py,sha256=S4TicbPm5-4u9gEocbeO1dKb8CgTV8rsR5RERFjpkU0,12779
|
|
19
|
+
squirrels/_model_builder.py,sha256=gOAcN_C0dfAvBe9YTM3QpdiA_2VeatRSHsALp2OVdJA,2844
|
|
20
|
+
squirrels/_model_configs.py,sha256=eJne5L-QLv42s7uodUOOASMRn1NbzGbiBmwMllkO5C4,3303
|
|
21
|
+
squirrels/_model_queries.py,sha256=2fl07feHtzddBpiXUWGfNBYeoN_EZ7K5mAz2Jc-vCvs,1087
|
|
22
|
+
squirrels/_models.py,sha256=Nq0klbCDRcDF2KL0XlAZopqkSUpv0jaJQPlz3H255DM,54711
|
|
23
|
+
squirrels/_package_loader.py,sha256=xcIur5Z38OWd-OVjsueFstVV567zlkK9UBnLS4NawJY,1158
|
|
24
|
+
squirrels/_parameter_configs.py,sha256=K7p_pIobT-gPZ99ewzLKV1aUzhnmfbGO7WjuzgjhDM8,24867
|
|
25
|
+
squirrels/_parameter_options.py,sha256=HatFFPyHrZo2ct3BS-FCHPzNqcIst4dVh14SgkhhFyw,16874
|
|
26
|
+
squirrels/_parameter_sets.py,sha256=hwzgC4sm6KMIASGlaLlhg-UheH5p0qIKU483pZRLRBU,10275
|
|
27
|
+
squirrels/_parameters.py,sha256=Ta929_a-b8r1miDKXT_SZtHT_d8jJ2W5ABvkXL7k074,76372
|
|
28
|
+
squirrels/_project.py,sha256=7ePxfCF6BTwsbE0i4XQRBm-OxvyAIYG7V36JG1Nyol8,37103
|
|
29
|
+
squirrels/_py_module.py,sha256=NW86sv1oYWh8oMqgGh2oIUwuFcLXoq3cwEuKRxPfEwY,2683
|
|
30
|
+
squirrels/_request_context.py,sha256=5FBxIQJ_Ki0sekZC_XrzS4GIegqoJuPnalQhGBsm-kQ,964
|
|
31
|
+
squirrels/_seeds.py,sha256=Q6ihhou5PBfdH2mKhWEkDOfpdi1CmftUtv8Yz3S18dg,2216
|
|
32
|
+
squirrels/_sources.py,sha256=3tgI5FtMDzFtWBiHa2vF3x4Qaj5Pnu6hK_xSGBAcORI,5102
|
|
33
|
+
squirrels/_utils.py,sha256=5jhZ1UvK1ZR7IJno0TEVL3p6F9Sfx7osBU3Rqf9C2oI,14894
|
|
34
|
+
squirrels/_version.py,sha256=4vCxnO9GT2Qn6oB5htQ_xPhxVh7TjOfYjzjZs11aM5s,105
|
|
35
|
+
squirrels/arguments.py,sha256=6rWDwv8jbimBUYv4peE2kEuFzOQ4jn9Tr_QXUmEj0_o,324
|
|
36
|
+
squirrels/auth.py,sha256=oX5-0QT4aKiUSyImKkLtPLYoki1SVNgaU3KBQzIizP4,193
|
|
37
|
+
squirrels/connections.py,sha256=FVK0se1LUAzsapPZYlWc1q6jTJ6hiU2RuYinBEvZ5a0,122
|
|
38
|
+
squirrels/dashboards.py,sha256=egYWL7jV9hvyxZ0vFziQb4q3sKDLfE_TNJN5niQbzX4,98
|
|
39
|
+
squirrels/data_sources.py,sha256=P3VIGWqspXLlxKUTDXc5u5eJ2yQoo4rvy9RGEb_OIbQ,347
|
|
40
|
+
squirrels/parameter_options.py,sha256=5ucgTWvdwefurMrk7xiJhmRn6fbBXXOhQdH7Mbnm-1I,382
|
|
41
|
+
squirrels/parameters.py,sha256=TJcsjtj0Kg0F69I5Zk7r0uDJC7p8duk3gtjXjcQPE40,366
|
|
42
|
+
squirrels/types.py,sha256=O4SMn9mqeV3wSEr_RIT1CKjumbqcbmZ6wk0tnXcxYHQ,437
|
|
43
|
+
squirrels/_api_routes/__init__.py,sha256=-oGMDfM5Qo7NDiwpjHt8BKVZNNZ4798-NZCJzYCUdbc,106
|
|
44
|
+
squirrels/_api_routes/auth.py,sha256=AvQbvyjrgEgN0kWPuBs8rgfJpsDL9ETFQbeFJ9S6qVw,15206
|
|
45
|
+
squirrels/_api_routes/base.py,sha256=oAIe3JXCeUwEcnPVAhwv5TFtaGhaA-eCfteJI0oj1G0,8260
|
|
46
|
+
squirrels/_api_routes/dashboards.py,sha256=BzSpidoQHyBoPk9igMbalVbnYiCSPbyfda9TW1QxyBw,9281
|
|
47
|
+
squirrels/_api_routes/data_management.py,sha256=03GeaT4m4aKXFO-qvAH7XiFFNJVYimpBvR-p617Qxa0,8752
|
|
48
|
+
squirrels/_api_routes/datasets.py,sha256=U8a1O8S7TeOO8QWPYEGXMdW1P9lqeRuFFGN7eYgApx8,15612
|
|
49
|
+
squirrels/_api_routes/oauth2.py,sha256=JXx5svIz0gVt6SHFOG-Ql9QcoJIizQ5IVFPPnZ5V1Bg,14827
|
|
50
|
+
squirrels/_api_routes/project.py,sha256=alH0IwyPe2-tctrTwok30BSogVAR2o7GX-lZRz261Ww,14140
|
|
51
|
+
squirrels/_arguments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
52
|
+
squirrels/_arguments/init_time_args.py,sha256=Y5gVbrU_yd1r5JtAChcL1xTpfz0i8gwNtZMe5QBT2mc,3511
|
|
53
|
+
squirrels/_arguments/run_time_args.py,sha256=bnibUxUHnLvKR1tlri0WCuqRnYKXi0mJ8R_rhIDEil0,5100
|
|
54
|
+
squirrels/_package_data/base_project/.env,sha256=KfUwxOG5KFicU1E-FkP8EyQRvAx5tAqXbZwtZxBPf08,1619
|
|
55
|
+
squirrels/_package_data/base_project/.env.example,sha256=XPqYRUVCim1MnPU8iJe5y_sRpp9HObDrJk7NFd-SSao,1656
|
|
56
|
+
squirrels/_package_data/base_project/connections.yml,sha256=eBIbTQqyp5FlxDs0HyQ_NuE2Nx87EW53Qp1Y_c1ygv0,1093
|
|
57
|
+
squirrels/_package_data/base_project/duckdb_init.sql,sha256=PYUiQZajja-TG7EU1__PoiyDajgngEil4Lxenv5FWT0,284
|
|
58
|
+
squirrels/_package_data/base_project/gitignore,sha256=B9OEkQ_j9fZGA2IAyVUvXeylxpya-AUwzLzqzMN4Bfc,155
|
|
59
|
+
squirrels/_package_data/base_project/parameters.yml,sha256=--N_u3vA2tnT4uDxnkgxSs135i37N9N01gnYjD2jMRY,6741
|
|
60
|
+
squirrels/_package_data/base_project/squirrels.yml.j2,sha256=MRJ130wNarGRQKXqBip9-OHVFVrsvqB1OghcU_ObcV0,1862
|
|
61
|
+
squirrels/_package_data/base_project/assets/expenses.db,sha256=aO0QdApW9ad8LRc73MW1o3eimryzmOAH5vz9Vc3dWK0,77824
|
|
62
|
+
squirrels/_package_data/base_project/assets/weather.db,sha256=dsHPO36gQdZ4ULAA726Hg3jp8a1dCdig1DhrGg8wTeg,86016
|
|
63
|
+
squirrels/_package_data/base_project/dashboards/dashboard_example.py,sha256=c2B81GIlp7uGVplT5LFK9S2g06HRXjL6BfKu-XgeOfc,1621
|
|
64
|
+
squirrels/_package_data/base_project/dashboards/dashboard_example.yml,sha256=qeJRKZwhEcpjs52DsBnjzTWV5TsChI2XAkzL8Oz43zA,485
|
|
65
|
+
squirrels/_package_data/base_project/docker/.dockerignore,sha256=IN0ZmxwLdmYlw6I2ziTdzXkTbZWCUyV4kfUI9_lDz-A,201
|
|
66
|
+
squirrels/_package_data/base_project/docker/Dockerfile,sha256=DBOfPajd7ikNr1Qg08TcQmQmWDYamlxoDv7u6FSWElE,470
|
|
67
|
+
squirrels/_package_data/base_project/docker/compose.yml,sha256=xMAjfJeNVv49ypMGxR8bG27P5JSbPTNMR7UeGTHGyeA,105
|
|
68
|
+
squirrels/_package_data/base_project/macros/macros_example.sql,sha256=kJMAxL9ihCd-ULPOfHkqt8TDIMcH6QAOFFw89VplGL0,508
|
|
69
|
+
squirrels/_package_data/base_project/models/sources.yml,sha256=axBHFoJtWjAcklZyibrr7zhyDRATxi9r_bGjI09Kulk,1816
|
|
70
|
+
squirrels/_package_data/base_project/models/builds/build_example.py,sha256=QqNicirKK_JXn44QGrp48Ods5iGfAnoD_PZN5u-YLzQ,1022
|
|
71
|
+
squirrels/_package_data/base_project/models/builds/build_example.sql,sha256=52tqAIzFWJgX13CP4HNeBd5BFy7Z929Z0XxfLgGKthM,508
|
|
72
|
+
squirrels/_package_data/base_project/models/builds/build_example.yml,sha256=kUd6j5u8qU6UD294AowPBHFOb8yYDA_dxWlCIBrPl90,1407
|
|
73
|
+
squirrels/_package_data/base_project/models/dbviews/dbview_example.sql,sha256=DXBdikZayi7XJrE3a4_PFgFZwT1hBzpnOp89858IGPE,369
|
|
74
|
+
squirrels/_package_data/base_project/models/dbviews/dbview_example.yml,sha256=V2OWPN9TZ5yWB49SPcDMCzfz-zPhJ8RyQ08APF_P6xQ,1191
|
|
75
|
+
squirrels/_package_data/base_project/models/federates/federate_example.py,sha256=xwquVszyMEEDaxUKsNQs9aA0x8FhSPnl7lvut9fQyeE,1969
|
|
76
|
+
squirrels/_package_data/base_project/models/federates/federate_example.sql,sha256=9eTJfTSWAMV8lGtQ0Bg4A_Wpv0w1LRIf5fMx6OIZ7Uk,674
|
|
77
|
+
squirrels/_package_data/base_project/models/federates/federate_example.yml,sha256=kxdgua47AWjvXPyLbpj4qS8Fmwj4A8RurKnzX-geHNU,2310
|
|
78
|
+
squirrels/_package_data/base_project/pyconfigs/connections.py,sha256=XQ8PEVEF05jpWCMEowO_oWAW0QMeGKanwnJmKIZ7tDw,633
|
|
79
|
+
squirrels/_package_data/base_project/pyconfigs/context.py,sha256=QinFkAryLqrbtSDzA360pgRA-U9koRgeRizJwo6Tv94,4305
|
|
80
|
+
squirrels/_package_data/base_project/pyconfigs/parameters.py,sha256=-UlrCcuW2NqlNlEnYttQ-S09Lq5IpNkAVP5FNR2e33g,4794
|
|
81
|
+
squirrels/_package_data/base_project/pyconfigs/user.py,sha256=wstsSgx1FYIMHtovESxvya1FJnDnSTIM0hYM7JcVSHk,1770
|
|
82
|
+
squirrels/_package_data/base_project/seeds/seed_categories.csv,sha256=jppjf1nOIxy7-bi5lJn5CVqmnLfJHHq0ABgp6UqbXnw,104
|
|
83
|
+
squirrels/_package_data/base_project/seeds/seed_categories.yml,sha256=UM2gIrwHU2qogKdQqeqP6s4QfE7fEzUsPr7HjqlX7ow,425
|
|
84
|
+
squirrels/_package_data/base_project/seeds/seed_subcategories.csv,sha256=Tta1oIgnc2nukNMDlUkIErRKNH_8YT5EPp1A2kQKcow,327
|
|
85
|
+
squirrels/_package_data/base_project/seeds/seed_subcategories.yml,sha256=fqXzZfVIQIlrVjW83K3epnVYFvF0X2Kiqe3KpvHgI5c,573
|
|
86
|
+
squirrels/_package_data/base_project/tmp/.gitignore,sha256=XImoqcWvJY0C0L_TWCx1ljvqU7qh9fUTJmK4ACCmNFI,13
|
|
87
|
+
squirrels/_package_data/templates/dataset_results.html,sha256=Y-1xtw4ZzHcoW1vfWR1amnFJqFUMvwJDY3eeY7bfKJw,2793
|
|
88
|
+
squirrels/_package_data/templates/oauth_login.html,sha256=LmR7zbjFUYxWIhB9nhIkoGDmqUgEtSXCqo0pKrWqwXw,7108
|
|
89
|
+
squirrels/_package_data/templates/squirrels_studio.html,sha256=M0X3DP5dLRNvO6aJYSasbjWa4NbpsicrxAWV8Ephkyw,785
|
|
90
|
+
squirrels/_schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
91
|
+
squirrels/_schemas/auth_models.py,sha256=PEDr3jPmaQo7tigjhjyQZ6BYWafbzMUX-jZdo3jRtMU,6392
|
|
92
|
+
squirrels/_schemas/query_param_models.py,sha256=y9ZYa2QLS_1tKN7ODSR0DBOWU-M6cz4niAq5qAAklok,4488
|
|
93
|
+
squirrels/_schemas/response_models.py,sha256=3OVelx3DZmmze7RKmCFzukvHt1nIiLWfmzxSoCNpY50,15218
|
|
94
|
+
squirrels-0.5.1.dist-info/METADATA,sha256=yLjuyu8i3LaaiaYYotMvNw4-CPxBbledjrdkDx4Czp8,4838
|
|
95
|
+
squirrels-0.5.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
96
|
+
squirrels-0.5.1.dist-info/entry_points.txt,sha256=i6vgjhJ3o_cdSFYofFcNY9DFMPr4MIcuwnkskSTXfJc,95
|
|
97
|
+
squirrels-0.5.1.dist-info/licenses/LICENSE,sha256=qqERuumQtQVsMrEXvJHuecJvV2sLxbleEubd_Zk8dY8,11338
|
|
98
|
+
squirrels-0.5.1.dist-info/RECORD,,
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
dateutils/__init__.py,sha256=dq4VSlJ5ztaDPdvYBRAvXSyanT_CZif3I4O0YVmWfa8,277
|
|
2
|
-
dateutils/_enums.py,sha256=WBrnLqta_iMMhGMEn24cCO1Vlr7bST0E8oEfAL3z0P8,373
|
|
3
|
-
dateutils/_implementation.py,sha256=PVJAdNolDdTpCZXwvokKoMIZzTSNpCUvZlVLWpMeSho,15173
|
|
4
|
-
dateutils/types.py,sha256=xcRwBoftQi-uHM1tlVTW5xgN84qdrqCo5tQT7A34S8Y,124
|
|
5
|
-
squirrels/__init__.py,sha256=O9QBS0WHdmWM7SUCTnEk1VU8ElnJKKrFHGAEd8W5CkM,288
|
|
6
|
-
squirrels/_api_server.py,sha256=y-GW7e7vKgeZsL50Md9dwsc7WR5Oe3Mu-yAZOK96_wE,14071
|
|
7
|
-
squirrels/_auth.py,sha256=3VWbB4-mMEqUp3YL1-T6R-kOswZ4xx29H0SSSlp2ezM,45592
|
|
8
|
-
squirrels/_command_line.py,sha256=ZB7cTJabWiYEV6tFi1l87M-w468LJ-DV7TNgQ_bqFbY,11151
|
|
9
|
-
squirrels/_connection_set.py,sha256=-krmn3RJkPOmh6oP3t8PhGhInyQ2pLu5HulYDi-aUrI,4008
|
|
10
|
-
squirrels/_constants.py,sha256=6sBvx5ijWgLz4KJGZo-VZ8NPZvw1aVROsYxA6ac2pZ8,3337
|
|
11
|
-
squirrels/_dashboards.py,sha256=FF6KG-GXohR5Hp-BMYRwEZ2hUQ_jbkFpcK5epwoD64w,4891
|
|
12
|
-
squirrels/_data_sources.py,sha256=W1aUAHkkjPpBRjZGBrc9RJIxEwICfnzB8HAyknCoZ3E,25988
|
|
13
|
-
squirrels/_dataset_types.py,sha256=wZvvRs4U1Hva_iyoFosAAu76S1yfv1Cd5SX3UMIw2PA,2838
|
|
14
|
-
squirrels/_exceptions.py,sha256=-hfDZoV-JhvuNRAERTFg-5NFjr0uNk4i9ogNgJfAyyc,1171
|
|
15
|
-
squirrels/_initializer.py,sha256=bJ0AeFIHYIYVT6o_kw5oWQJ9Qm4-n1RVNk3iYi2qbH0,14270
|
|
16
|
-
squirrels/_manifest.py,sha256=ag902b0SNbra6XrBzkaKizmJGwRgFKPjEjtnkJgfFio,10232
|
|
17
|
-
squirrels/_model_builder.py,sha256=5aLL_DxOv_wgJc3ml26q3hZSpmzkbniBC34Dh-f2ML4,5096
|
|
18
|
-
squirrels/_model_configs.py,sha256=eJne5L-QLv42s7uodUOOASMRn1NbzGbiBmwMllkO5C4,3303
|
|
19
|
-
squirrels/_model_queries.py,sha256=2fl07feHtzddBpiXUWGfNBYeoN_EZ7K5mAz2Jc-vCvs,1087
|
|
20
|
-
squirrels/_models.py,sha256=_oudu_szkcBSAXYloxAd2LV2-gbTY6d8-E1kQuc89c0,50017
|
|
21
|
-
squirrels/_package_loader.py,sha256=xcIur5Z38OWd-OVjsueFstVV567zlkK9UBnLS4NawJY,1158
|
|
22
|
-
squirrels/_parameter_configs.py,sha256=wxF51hMOewtf5SZgo6dEHa3vzU81vXN4LNmIK0UK9po,23981
|
|
23
|
-
squirrels/_parameter_options.py,sha256=cWYKNoBUopHq6VfaeBu-nN2V0_IY3OgYpmYhKODNCew,16956
|
|
24
|
-
squirrels/_parameter_sets.py,sha256=xTiwDBT3LONILHlitA12J2b9CS4NU6-S1IQSILT2v8A,10315
|
|
25
|
-
squirrels/_parameters.py,sha256=Ta929_a-b8r1miDKXT_SZtHT_d8jJ2W5ABvkXL7k074,76372
|
|
26
|
-
squirrels/_project.py,sha256=y6r_ppujlSbxboS52zSIKfyzRo1kC1eQ9nkdYcHJc30,30391
|
|
27
|
-
squirrels/_py_module.py,sha256=NW86sv1oYWh8oMqgGh2oIUwuFcLXoq3cwEuKRxPfEwY,2683
|
|
28
|
-
squirrels/_seeds.py,sha256=yyIYp4bn9Sg6lhgvsOYIJQHIpPbvLNsyGHVfswEyVd8,2225
|
|
29
|
-
squirrels/_sources.py,sha256=j5mY_EtA5cxoHwtk8RwTVHO74hleik2lS7mF9gVnG_A,4840
|
|
30
|
-
squirrels/_utils.py,sha256=yZ7pyWUZxCkAtOZO00QAN9kRM9KNpIUwERnnaiXCpxg,13552
|
|
31
|
-
squirrels/_version.py,sha256=M8aFbJ4vlAi3Sk9b7leRuEfkNBjkkX5S_F9lA4h8GK4,105
|
|
32
|
-
squirrels/arguments.py,sha256=s8Ud0ahdgyMO9jO_qV9uYzJ3rCApAeRKpNKCz_EfQjI,181
|
|
33
|
-
squirrels/auth.py,sha256=GNalDnQo4I1ONSYUGWwAxhJmgEwLYy688Fby-ksvnHk,54
|
|
34
|
-
squirrels/connections.py,sha256=dpjR00DjLiPfF0iz9HfL9PyjWYtYQq67zk2LyT2bnhg,64
|
|
35
|
-
squirrels/dashboards.py,sha256=UA-mksRXtL5dyzewoGTnR5bz26KzvrVgKsIpNIPkLe0,52
|
|
36
|
-
squirrels/data_sources.py,sha256=6a4E1m-Zcx-o2SERwKJiz8n6LFsI2CQ5MbmDwKhVq1o,170
|
|
37
|
-
squirrels/parameter_options.py,sha256=TmvoESS1BSPx-73bNzo6W0bSztj7-ye0_vssmii0cBk,205
|
|
38
|
-
squirrels/parameters.py,sha256=7Go5jetD3J7NDrkk2a_7ExxJv0mT4rwo1B9sAkuxPPg,195
|
|
39
|
-
squirrels/types.py,sha256=snP-ZLW_YY1TCCPVQTcDQMQvU6159yMRL-Hou9L7QJU,282
|
|
40
|
-
squirrels/_api_routes/__init__.py,sha256=-oGMDfM5Qo7NDiwpjHt8BKVZNNZ4798-NZCJzYCUdbc,106
|
|
41
|
-
squirrels/_api_routes/auth.py,sha256=BzThmdxugavFDW_RF2LNpPf8Z4fQcxrHL52TLPrsj54,13917
|
|
42
|
-
squirrels/_api_routes/base.py,sha256=7H4SzhBJ-yWtC70kjzZneW_ZkejVzwTSnMlunSBt8ig,7067
|
|
43
|
-
squirrels/_api_routes/dashboards.py,sha256=tasnHUmgkm-ZcpEviRoCiNtR9TgY6xjBZac7SkyEJBg,8097
|
|
44
|
-
squirrels/_api_routes/data_management.py,sha256=Gr6JVFpMaFhlQCUICGxuDNWrz4BGPydrMou0elBg5tU,5347
|
|
45
|
-
squirrels/_api_routes/datasets.py,sha256=Xcf-sTI8Noe06Tc-Nm5tJt4Y94ljl8ZXSxVrTOrN9gw,13592
|
|
46
|
-
squirrels/_api_routes/oauth2.py,sha256=1Q0mgbOw39iOGKy_Wwuuxi_Iw5rRCXhZPKc_CXYsBH4,14855
|
|
47
|
-
squirrels/_api_routes/project.py,sha256=gEtfDa1RyjxGEcUZTnNZSgQbLeIb5wUv2n65fZd6d40,11546
|
|
48
|
-
squirrels/_arguments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
49
|
-
squirrels/_arguments/init_time_args.py,sha256=Y5gVbrU_yd1r5JtAChcL1xTpfz0i8gwNtZMe5QBT2mc,3511
|
|
50
|
-
squirrels/_arguments/run_time_args.py,sha256=Izh7nxifrzEmMCY41vzz8TWBJ5cSAHuXkjPRZRx6mHM,5016
|
|
51
|
-
squirrels/_package_data/base_project/.env,sha256=CX13teP-pc3ymHIg9oERWcSGvxvMWRDOylLmI1Oiqpg,1105
|
|
52
|
-
squirrels/_package_data/base_project/.env.example,sha256=eN9fIwZF0CbK5mz0zJ4xsZ2I2MwY7Tj6f1ZsudfJKkA,1157
|
|
53
|
-
squirrels/_package_data/base_project/connections.yml,sha256=qZxh7OuI2xqf2cFKwpMo5TONrJXGVzQ7YfcWh4Go7Oo,1011
|
|
54
|
-
squirrels/_package_data/base_project/duckdb_init.sql,sha256=iwKDoHbKhOEMe-Pu_sX5a9OauCgqxfZLD70S7RduBrE,196
|
|
55
|
-
squirrels/_package_data/base_project/gitignore,sha256=B9OEkQ_j9fZGA2IAyVUvXeylxpya-AUwzLzqzMN4Bfc,155
|
|
56
|
-
squirrels/_package_data/base_project/parameters.yml,sha256=lws8lblJjyC6apNP-5fhvxlShTKs6UqBzvl3dO_0Zw8,6908
|
|
57
|
-
squirrels/_package_data/base_project/squirrels.yml.j2,sha256=j3X3w-rQNP25rSo9Nye8roOUJV98etlpqfsD_zHwxTo,2673
|
|
58
|
-
squirrels/_package_data/base_project/assets/expenses.db,sha256=aO0QdApW9ad8LRc73MW1o3eimryzmOAH5vz9Vc3dWK0,77824
|
|
59
|
-
squirrels/_package_data/base_project/assets/weather.db,sha256=dsHPO36gQdZ4ULAA726Hg3jp8a1dCdig1DhrGg8wTeg,86016
|
|
60
|
-
squirrels/_package_data/base_project/dashboards/dashboard_example.py,sha256=jd6Sjs69QK4zBJlRnKaloati1cU5Oby1Pzg9bUxY0ZY,1637
|
|
61
|
-
squirrels/_package_data/base_project/dashboards/dashboard_example.yml,sha256=fIm56M3J1eWp9_zDcc5R04pSLbHgdjm2X3XZgpB0SaQ,417
|
|
62
|
-
squirrels/_package_data/base_project/docker/.dockerignore,sha256=IN0ZmxwLdmYlw6I2ziTdzXkTbZWCUyV4kfUI9_lDz-A,201
|
|
63
|
-
squirrels/_package_data/base_project/docker/Dockerfile,sha256=DBOfPajd7ikNr1Qg08TcQmQmWDYamlxoDv7u6FSWElE,470
|
|
64
|
-
squirrels/_package_data/base_project/docker/compose.yml,sha256=xMAjfJeNVv49ypMGxR8bG27P5JSbPTNMR7UeGTHGyeA,105
|
|
65
|
-
squirrels/_package_data/base_project/macros/macros_example.sql,sha256=kJMAxL9ihCd-ULPOfHkqt8TDIMcH6QAOFFw89VplGL0,508
|
|
66
|
-
squirrels/_package_data/base_project/models/sources.yml,sha256=Miujhj5QRnbN1Q6BkQyeyX8FZAROPDPLWzVgdsdZy9o,1890
|
|
67
|
-
squirrels/_package_data/base_project/models/builds/build_example.py,sha256=QqNicirKK_JXn44QGrp48Ods5iGfAnoD_PZN5u-YLzQ,1022
|
|
68
|
-
squirrels/_package_data/base_project/models/builds/build_example.sql,sha256=52tqAIzFWJgX13CP4HNeBd5BFy7Z929Z0XxfLgGKthM,508
|
|
69
|
-
squirrels/_package_data/base_project/models/builds/build_example.yml,sha256=kUd6j5u8qU6UD294AowPBHFOb8yYDA_dxWlCIBrPl90,1407
|
|
70
|
-
squirrels/_package_data/base_project/models/dbviews/dbview_example.sql,sha256=RMET1ni2qeEFysxy3lSFHQOxYkfMHvs6G3JUzPhfklU,268
|
|
71
|
-
squirrels/_package_data/base_project/models/dbviews/dbview_example.yml,sha256=BFTGdBe7OcyNWKjBh7IhWgmfFgG3nT4toCR3XG5ZgLI,947
|
|
72
|
-
squirrels/_package_data/base_project/models/federates/federate_example.py,sha256=c3fJvY9ChSSt-Mg-ddwwOwUmnTzQ1_qfYldLTOduC7s,1544
|
|
73
|
-
squirrels/_package_data/base_project/models/federates/federate_example.sql,sha256=Otda657dASjQUGk5Wbh2P18gcSBIpk8d3VDrgD6vBvA,674
|
|
74
|
-
squirrels/_package_data/base_project/models/federates/federate_example.yml,sha256=FpSVZV7xNSH5iUAXMkyd_jynFxWryutz5Izlgsq3aP0,2279
|
|
75
|
-
squirrels/_package_data/base_project/pyconfigs/connections.py,sha256=IRL9D2HG9pdwp12S896b0Q-hKnFfVck8we1q5sifX10,601
|
|
76
|
-
squirrels/_package_data/base_project/pyconfigs/context.py,sha256=8zsQ0tf0EhfeRDPwK7ANNaJWAubT3AYVCzcdaOz0xwY,3670
|
|
77
|
-
squirrels/_package_data/base_project/pyconfigs/parameters.py,sha256=VEHGP8UsoV7KQQAQB-K_6ciTOLZwO6h7OgW2Q4QJk5I,4496
|
|
78
|
-
squirrels/_package_data/base_project/pyconfigs/user.py,sha256=5gRP_I5C2-z-gTaNt0F9yqk0yLzu6xrS0pdGvb8ZET4,2030
|
|
79
|
-
squirrels/_package_data/base_project/seeds/seed_categories.csv,sha256=jppjf1nOIxy7-bi5lJn5CVqmnLfJHHq0ABgp6UqbXnw,104
|
|
80
|
-
squirrels/_package_data/base_project/seeds/seed_categories.yml,sha256=NZ4BVvYYCEq6OnjRLrE_WOMhYsW0BQhRPWOgUchzdp4,435
|
|
81
|
-
squirrels/_package_data/base_project/seeds/seed_subcategories.csv,sha256=Tta1oIgnc2nukNMDlUkIErRKNH_8YT5EPp1A2kQKcow,327
|
|
82
|
-
squirrels/_package_data/base_project/seeds/seed_subcategories.yml,sha256=QTgw8Eld-p6Kntf53FyXyn7-7vKYI7IOJVu-Lr-FHCY,583
|
|
83
|
-
squirrels/_package_data/base_project/tmp/.gitignore,sha256=XImoqcWvJY0C0L_TWCx1ljvqU7qh9fUTJmK4ACCmNFI,13
|
|
84
|
-
squirrels/_package_data/templates/dataset_results.html,sha256=Y-1xtw4ZzHcoW1vfWR1amnFJqFUMvwJDY3eeY7bfKJw,2793
|
|
85
|
-
squirrels/_package_data/templates/oauth_login.html,sha256=LmR7zbjFUYxWIhB9nhIkoGDmqUgEtSXCqo0pKrWqwXw,7108
|
|
86
|
-
squirrels/_schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
87
|
-
squirrels/_schemas/auth_models.py,sha256=3EpMtGip5iPfA4ixWBa5ipOy9LrQafC047nc1Mhjz3w,5625
|
|
88
|
-
squirrels/_schemas/query_param_models.py,sha256=zPfvr2kHEhGqbFDDs4oGsy8zYt-acwO0mfq1ELIpEI8,4094
|
|
89
|
-
squirrels/_schemas/response_models.py,sha256=lvz37EPPDkj6ZNb8ZprnCgpmFHrZA4Xg-04MVxBqfLg,13616
|
|
90
|
-
squirrels-0.5.0b4.dist-info/METADATA,sha256=QCKmfVXmjXUPl2qya_8KIyolw072cgjrWt61LYOXZYc,4496
|
|
91
|
-
squirrels-0.5.0b4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
92
|
-
squirrels-0.5.0b4.dist-info/entry_points.txt,sha256=i6vgjhJ3o_cdSFYofFcNY9DFMPr4MIcuwnkskSTXfJc,95
|
|
93
|
-
squirrels-0.5.0b4.dist-info/licenses/LICENSE,sha256=qqERuumQtQVsMrEXvJHuecJvV2sLxbleEubd_Zk8dY8,11338
|
|
94
|
-
squirrels-0.5.0b4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|