python-flask-dev 0.0.1__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.
- python_flask_dev-0.0.1/PKG-INFO +201 -0
- python_flask_dev-0.0.1/README.md +184 -0
- python_flask_dev-0.0.1/pyproject.toml +35 -0
- python_flask_dev-0.0.1/setup.cfg +4 -0
- python_flask_dev-0.0.1/src/__init__.py +0 -0
- python_flask_dev-0.0.1/src/app.py +246 -0
- python_flask_dev-0.0.1/src/data/__init__.py +0 -0
- python_flask_dev-0.0.1/src/python_flask_dev/__init__.py +0 -0
- python_flask_dev-0.0.1/src/python_flask_dev/custom_exceptions.py +10 -0
- python_flask_dev-0.0.1/src/python_flask_dev/data_source.py +34 -0
- python_flask_dev-0.0.1/src/python_flask_dev/filtering_data.py +280 -0
- python_flask_dev-0.0.1/src/python_flask_dev/formatting_data.py +2 -0
- python_flask_dev-0.0.1/src/python_flask_dev/importing_modules.py +64 -0
- python_flask_dev-0.0.1/src/python_flask_dev/packaging/__init__.py +0 -0
- python_flask_dev-0.0.1/src/python_flask_dev/packaging/incremental_versioning.py +107 -0
- python_flask_dev-0.0.1/src/python_flask_dev/path_retrieval.py +11 -0
- python_flask_dev-0.0.1/src/python_flask_dev.egg-info/PKG-INFO +201 -0
- python_flask_dev-0.0.1/src/python_flask_dev.egg-info/SOURCES.txt +19 -0
- python_flask_dev-0.0.1/src/python_flask_dev.egg-info/dependency_links.txt +1 -0
- python_flask_dev-0.0.1/src/python_flask_dev.egg-info/requires.txt +5 -0
- python_flask_dev-0.0.1/src/python_flask_dev.egg-info/top_level.txt +6 -0
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: python-flask-dev
|
|
3
|
+
Version: 0.0.1
|
|
4
|
+
Summary: Package containing modules with 'helper' functions to support the development of Python Flask applications.
|
|
5
|
+
Author-email: Dani <daniasestan@gmail.com>
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
9
|
+
Classifier: Framework :: Flask
|
|
10
|
+
Requires-Python: >=3.12.3
|
|
11
|
+
Description-Content-Type: text/markdown
|
|
12
|
+
Requires-Dist: Flask==3.1.2
|
|
13
|
+
Requires-Dist: numpy==2.4.2
|
|
14
|
+
Requires-Dist: pandas==3.0.1
|
|
15
|
+
Requires-Dist: build==1.4.0
|
|
16
|
+
Requires-Dist: twine==6.2.0
|
|
17
|
+
|
|
18
|
+
## Python Flask Dev
|
|
19
|
+
|
|
20
|
+
## Table of contents
|
|
21
|
+
|
|
22
|
+
1. Project description
|
|
23
|
+
2. Project setup
|
|
24
|
+
3. Contributing guidelines
|
|
25
|
+
4. Project documentation
|
|
26
|
+
5. Links to support resources
|
|
27
|
+
6. Terms of use
|
|
28
|
+
|
|
29
|
+
## Project description
|
|
30
|
+
|
|
31
|
+
### What kind of software is this?
|
|
32
|
+
|
|
33
|
+
Package containing modules with 'helper' functions to support the development of Python Flask applications.
|
|
34
|
+
|
|
35
|
+
__________________
|
|
36
|
+
|
|
37
|
+
### Who can use this app?
|
|
38
|
+
|
|
39
|
+
Python Flask App Developer
|
|
40
|
+
|
|
41
|
+
__________________
|
|
42
|
+
|
|
43
|
+
### Project overview
|
|
44
|
+
|
|
45
|
+
Language(s): [Python](https://www.python.org/)
|
|
46
|
+
|
|
47
|
+
Framework(s): [Python Flask Framework](https://flask.palletsprojects.com/en/stable/)
|
|
48
|
+
|
|
49
|
+
Style guide(s):
|
|
50
|
+
[Python PEP 8](https://www.python.org/dev/peps/pep-0008)
|
|
51
|
+
|
|
52
|
+
## Project setup
|
|
53
|
+
|
|
54
|
+
### Pre-requisites
|
|
55
|
+
|
|
56
|
+
Before using {Project name}, install necessary pkgs:
|
|
57
|
+
|
|
58
|
+
* [PKG_NAME](https://www.python.org/downloads/)
|
|
59
|
+
* [...]
|
|
60
|
+
|
|
61
|
+
### Requirements
|
|
62
|
+
|
|
63
|
+
GitHub will automatically not push any tokens.
|
|
64
|
+
|
|
65
|
+
However, to commit any changes the .gitignore file must include any files that contain credentials.
|
|
66
|
+
|
|
67
|
+
If the Markdown Changelog Generator is used, it needs to include 'changelog_generator.toml' because it lists your GitHub repo's PAT (Personal Access Token).
|
|
68
|
+
|
|
69
|
+
#### Install Python Flask Dev
|
|
70
|
+
|
|
71
|
+
1. {Write the step here.}
|
|
72
|
+
|
|
73
|
+
{Explanatory text here}
|
|
74
|
+
|
|
75
|
+
{Optional: Include a code sample or screenshot that helps your users complete this step}
|
|
76
|
+
|
|
77
|
+
2. {Write the step here.}
|
|
78
|
+
|
|
79
|
+
a. {Substep 1}
|
|
80
|
+
|
|
81
|
+
b. {Substep 2}
|
|
82
|
+
|
|
83
|
+
#### Configure Python Flask Dev
|
|
84
|
+
|
|
85
|
+
1. {Write the step here.}
|
|
86
|
+
2. {Write the step here.}
|
|
87
|
+
|
|
88
|
+
#### Run Python Flask Dev
|
|
89
|
+
|
|
90
|
+
1. {Write the step here.}
|
|
91
|
+
2. {Write the step here.}
|
|
92
|
+
|
|
93
|
+
#### Troubleshoot Python Flask Dev
|
|
94
|
+
|
|
95
|
+
1. {Write the step here.}
|
|
96
|
+
2. {Write the step here.}
|
|
97
|
+
|
|
98
|
+
<table>
|
|
99
|
+
<tr>
|
|
100
|
+
<td>
|
|
101
|
+
Issue
|
|
102
|
+
</td>
|
|
103
|
+
<td>
|
|
104
|
+
Solution
|
|
105
|
+
</td>
|
|
106
|
+
</tr>
|
|
107
|
+
<tr>
|
|
108
|
+
<td>
|
|
109
|
+
{Describe the issue here}
|
|
110
|
+
</td>
|
|
111
|
+
<td>
|
|
112
|
+
{Write solution here}
|
|
113
|
+
</td>
|
|
114
|
+
</tr>
|
|
115
|
+
<tr>
|
|
116
|
+
<td>
|
|
117
|
+
{Describe the issue here}
|
|
118
|
+
</td>
|
|
119
|
+
<td>
|
|
120
|
+
{Write solution here}
|
|
121
|
+
</td>
|
|
122
|
+
</tr>
|
|
123
|
+
<tr>
|
|
124
|
+
<td>
|
|
125
|
+
{Describe the issue here}
|
|
126
|
+
</td>
|
|
127
|
+
<td>
|
|
128
|
+
{Write solution here}
|
|
129
|
+
</td>
|
|
130
|
+
</tr>
|
|
131
|
+
</table>
|
|
132
|
+
|
|
133
|
+
Other troubleshooting support:
|
|
134
|
+
|
|
135
|
+
* {Link to FAQs}
|
|
136
|
+
* {Link to runbooks}
|
|
137
|
+
* {Link to other relevant support information}
|
|
138
|
+
|
|
139
|
+
### Recommendations
|
|
140
|
+
|
|
141
|
+
* When working through a smaller project such as a program or a software application, a Changelog is recommended.
|
|
142
|
+
|
|
143
|
+
Changelog entries typically follow a basic format that includes information about the code that was added to enhance a project, removed for any purpose, and modified to resolve errors.
|
|
144
|
+
|
|
145
|
+
Changelog entries are entered in the CHANGELOG file once code is committed to the main branch:
|
|
146
|
+
|
|
147
|
+
### [VERSION #] - [TIMESTAMP]
|
|
148
|
+
|
|
149
|
+
#### [ADDED || REMOVED || FIXED]
|
|
150
|
+
|
|
151
|
+
\<DESCRIPTION\>
|
|
152
|
+
|
|
153
|
+
___
|
|
154
|
+
|
|
155
|
+
### Version Control Process
|
|
156
|
+
I. **Create a Feature Branch**
|
|
157
|
+
Any code updates for a version change -- [Major].[Minor].[Patch] -- should be on a separate branch, referred to as a 'feature' branch.
|
|
158
|
+
|
|
159
|
+
Once work on the branch is completed, a pull-request can be created to merge the branch into `dev`, a staging/pre-release branch, where those changes are tested.
|
|
160
|
+
|
|
161
|
+
Once the staging branch is tested, stable code can be merged into `main` a production/release branch.
|
|
162
|
+
|
|
163
|
+
________________
|
|
164
|
+
##### Maintaining repos
|
|
165
|
+
|
|
166
|
+
###### Branch Naming Conventions
|
|
167
|
+
|
|
168
|
+
`<VERSION-RELEASE-#>/<FEATURE_NAME>/<CONTRIBUTOR>`
|
|
169
|
+
|
|
170
|
+
- `<VERSION-RELEASE-#>`: Refer to [SemVer](https://semver.org/) for details
|
|
171
|
+
|
|
172
|
+
- `<FEATURE_NAME>`: Descriptive title for the feature
|
|
173
|
+
|
|
174
|
+
- `<CONTRIBUTOR>`: GitHub account name, e.g., https://github.com/<NAME>
|
|
175
|
+
|
|
176
|
+
IV. **Documenting changes**
|
|
177
|
+
|
|
178
|
+
Maintaining a CHANGELOG file is always recommended for a quick overview of how the project is progressing.
|
|
179
|
+
1. Checkout main locally.
|
|
180
|
+
2. From a terminal session, run the commands to use the GitHub ChangeLog Generator.
|
|
181
|
+
3. Commit the CHANGELOG file to the remote branch.
|
|
182
|
+
|
|
183
|
+
`changelog-generator-md`
|
|
184
|
+
|
|
185
|
+
## Project documentation
|
|
186
|
+
|
|
187
|
+
### Standard project docs are located in the `{PROJECT_ROOT}` folder.
|
|
188
|
+
|
|
189
|
+
- README
|
|
190
|
+
- LICENSE
|
|
191
|
+
- CHANGELOG
|
|
192
|
+
- Refer to the Project dependencies section of the README for more information on generating a CHANGELOG file
|
|
193
|
+
|
|
194
|
+
## Links
|
|
195
|
+
|
|
196
|
+
* [<LINK>](<URL>): <LINK_DESC>
|
|
197
|
+
* [...]
|
|
198
|
+
|
|
199
|
+
## Terms of use
|
|
200
|
+
|
|
201
|
+
Python Flask Dev is licensed under [MIT](https://commons.wikimedia.org/wiki/Template:X11)
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
## Python Flask Dev
|
|
2
|
+
|
|
3
|
+
## Table of contents
|
|
4
|
+
|
|
5
|
+
1. Project description
|
|
6
|
+
2. Project setup
|
|
7
|
+
3. Contributing guidelines
|
|
8
|
+
4. Project documentation
|
|
9
|
+
5. Links to support resources
|
|
10
|
+
6. Terms of use
|
|
11
|
+
|
|
12
|
+
## Project description
|
|
13
|
+
|
|
14
|
+
### What kind of software is this?
|
|
15
|
+
|
|
16
|
+
Package containing modules with 'helper' functions to support the development of Python Flask applications.
|
|
17
|
+
|
|
18
|
+
__________________
|
|
19
|
+
|
|
20
|
+
### Who can use this app?
|
|
21
|
+
|
|
22
|
+
Python Flask App Developer
|
|
23
|
+
|
|
24
|
+
__________________
|
|
25
|
+
|
|
26
|
+
### Project overview
|
|
27
|
+
|
|
28
|
+
Language(s): [Python](https://www.python.org/)
|
|
29
|
+
|
|
30
|
+
Framework(s): [Python Flask Framework](https://flask.palletsprojects.com/en/stable/)
|
|
31
|
+
|
|
32
|
+
Style guide(s):
|
|
33
|
+
[Python PEP 8](https://www.python.org/dev/peps/pep-0008)
|
|
34
|
+
|
|
35
|
+
## Project setup
|
|
36
|
+
|
|
37
|
+
### Pre-requisites
|
|
38
|
+
|
|
39
|
+
Before using {Project name}, install necessary pkgs:
|
|
40
|
+
|
|
41
|
+
* [PKG_NAME](https://www.python.org/downloads/)
|
|
42
|
+
* [...]
|
|
43
|
+
|
|
44
|
+
### Requirements
|
|
45
|
+
|
|
46
|
+
GitHub will automatically not push any tokens.
|
|
47
|
+
|
|
48
|
+
However, to commit any changes the .gitignore file must include any files that contain credentials.
|
|
49
|
+
|
|
50
|
+
If the Markdown Changelog Generator is used, it needs to include 'changelog_generator.toml' because it lists your GitHub repo's PAT (Personal Access Token).
|
|
51
|
+
|
|
52
|
+
#### Install Python Flask Dev
|
|
53
|
+
|
|
54
|
+
1. {Write the step here.}
|
|
55
|
+
|
|
56
|
+
{Explanatory text here}
|
|
57
|
+
|
|
58
|
+
{Optional: Include a code sample or screenshot that helps your users complete this step}
|
|
59
|
+
|
|
60
|
+
2. {Write the step here.}
|
|
61
|
+
|
|
62
|
+
a. {Substep 1}
|
|
63
|
+
|
|
64
|
+
b. {Substep 2}
|
|
65
|
+
|
|
66
|
+
#### Configure Python Flask Dev
|
|
67
|
+
|
|
68
|
+
1. {Write the step here.}
|
|
69
|
+
2. {Write the step here.}
|
|
70
|
+
|
|
71
|
+
#### Run Python Flask Dev
|
|
72
|
+
|
|
73
|
+
1. {Write the step here.}
|
|
74
|
+
2. {Write the step here.}
|
|
75
|
+
|
|
76
|
+
#### Troubleshoot Python Flask Dev
|
|
77
|
+
|
|
78
|
+
1. {Write the step here.}
|
|
79
|
+
2. {Write the step here.}
|
|
80
|
+
|
|
81
|
+
<table>
|
|
82
|
+
<tr>
|
|
83
|
+
<td>
|
|
84
|
+
Issue
|
|
85
|
+
</td>
|
|
86
|
+
<td>
|
|
87
|
+
Solution
|
|
88
|
+
</td>
|
|
89
|
+
</tr>
|
|
90
|
+
<tr>
|
|
91
|
+
<td>
|
|
92
|
+
{Describe the issue here}
|
|
93
|
+
</td>
|
|
94
|
+
<td>
|
|
95
|
+
{Write solution here}
|
|
96
|
+
</td>
|
|
97
|
+
</tr>
|
|
98
|
+
<tr>
|
|
99
|
+
<td>
|
|
100
|
+
{Describe the issue here}
|
|
101
|
+
</td>
|
|
102
|
+
<td>
|
|
103
|
+
{Write solution here}
|
|
104
|
+
</td>
|
|
105
|
+
</tr>
|
|
106
|
+
<tr>
|
|
107
|
+
<td>
|
|
108
|
+
{Describe the issue here}
|
|
109
|
+
</td>
|
|
110
|
+
<td>
|
|
111
|
+
{Write solution here}
|
|
112
|
+
</td>
|
|
113
|
+
</tr>
|
|
114
|
+
</table>
|
|
115
|
+
|
|
116
|
+
Other troubleshooting support:
|
|
117
|
+
|
|
118
|
+
* {Link to FAQs}
|
|
119
|
+
* {Link to runbooks}
|
|
120
|
+
* {Link to other relevant support information}
|
|
121
|
+
|
|
122
|
+
### Recommendations
|
|
123
|
+
|
|
124
|
+
* When working through a smaller project such as a program or a software application, a Changelog is recommended.
|
|
125
|
+
|
|
126
|
+
Changelog entries typically follow a basic format that includes information about the code that was added to enhance a project, removed for any purpose, and modified to resolve errors.
|
|
127
|
+
|
|
128
|
+
Changelog entries are entered in the CHANGELOG file once code is committed to the main branch:
|
|
129
|
+
|
|
130
|
+
### [VERSION #] - [TIMESTAMP]
|
|
131
|
+
|
|
132
|
+
#### [ADDED || REMOVED || FIXED]
|
|
133
|
+
|
|
134
|
+
\<DESCRIPTION\>
|
|
135
|
+
|
|
136
|
+
___
|
|
137
|
+
|
|
138
|
+
### Version Control Process
|
|
139
|
+
I. **Create a Feature Branch**
|
|
140
|
+
Any code updates for a version change -- [Major].[Minor].[Patch] -- should be on a separate branch, referred to as a 'feature' branch.
|
|
141
|
+
|
|
142
|
+
Once work on the branch is completed, a pull-request can be created to merge the branch into `dev`, a staging/pre-release branch, where those changes are tested.
|
|
143
|
+
|
|
144
|
+
Once the staging branch is tested, stable code can be merged into `main` a production/release branch.
|
|
145
|
+
|
|
146
|
+
________________
|
|
147
|
+
##### Maintaining repos
|
|
148
|
+
|
|
149
|
+
###### Branch Naming Conventions
|
|
150
|
+
|
|
151
|
+
`<VERSION-RELEASE-#>/<FEATURE_NAME>/<CONTRIBUTOR>`
|
|
152
|
+
|
|
153
|
+
- `<VERSION-RELEASE-#>`: Refer to [SemVer](https://semver.org/) for details
|
|
154
|
+
|
|
155
|
+
- `<FEATURE_NAME>`: Descriptive title for the feature
|
|
156
|
+
|
|
157
|
+
- `<CONTRIBUTOR>`: GitHub account name, e.g., https://github.com/<NAME>
|
|
158
|
+
|
|
159
|
+
IV. **Documenting changes**
|
|
160
|
+
|
|
161
|
+
Maintaining a CHANGELOG file is always recommended for a quick overview of how the project is progressing.
|
|
162
|
+
1. Checkout main locally.
|
|
163
|
+
2. From a terminal session, run the commands to use the GitHub ChangeLog Generator.
|
|
164
|
+
3. Commit the CHANGELOG file to the remote branch.
|
|
165
|
+
|
|
166
|
+
`changelog-generator-md`
|
|
167
|
+
|
|
168
|
+
## Project documentation
|
|
169
|
+
|
|
170
|
+
### Standard project docs are located in the `{PROJECT_ROOT}` folder.
|
|
171
|
+
|
|
172
|
+
- README
|
|
173
|
+
- LICENSE
|
|
174
|
+
- CHANGELOG
|
|
175
|
+
- Refer to the Project dependencies section of the README for more information on generating a CHANGELOG file
|
|
176
|
+
|
|
177
|
+
## Links
|
|
178
|
+
|
|
179
|
+
* [<LINK>](<URL>): <LINK_DESC>
|
|
180
|
+
* [...]
|
|
181
|
+
|
|
182
|
+
## Terms of use
|
|
183
|
+
|
|
184
|
+
Python Flask Dev is licensed under [MIT](https://commons.wikimedia.org/wiki/Template:X11)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "python-flask-dev"
|
|
3
|
+
version = "0.0.1"
|
|
4
|
+
authors = [
|
|
5
|
+
{ name = "Dani", email = "daniasestan@gmail.com" },
|
|
6
|
+
]
|
|
7
|
+
description = "Package containing modules with 'helper' functions to support the development of Python Flask applications."
|
|
8
|
+
readme = "README.md"
|
|
9
|
+
requires-python = ">=3.12.3"
|
|
10
|
+
classifiers = [
|
|
11
|
+
"Programming Language :: Python :: 3",
|
|
12
|
+
"Operating System :: POSIX :: Linux",
|
|
13
|
+
"Framework :: Flask",
|
|
14
|
+
]
|
|
15
|
+
license = "MIT"
|
|
16
|
+
license-files = [
|
|
17
|
+
"LICEN[CS]E*",
|
|
18
|
+
]
|
|
19
|
+
dependencies = [
|
|
20
|
+
"Flask==3.1.2",
|
|
21
|
+
"numpy==2.4.2",
|
|
22
|
+
"pandas==3.0.1",
|
|
23
|
+
"build==1.4.0",
|
|
24
|
+
"twine==6.2.0",
|
|
25
|
+
]
|
|
26
|
+
dynamic = []
|
|
27
|
+
|
|
28
|
+
[build-system]
|
|
29
|
+
requires = [
|
|
30
|
+
"setuptools >= 77.0.3",
|
|
31
|
+
]
|
|
32
|
+
build-backend = "setuptools.build_meta"
|
|
33
|
+
|
|
34
|
+
[tool.setuptools.package-dir]
|
|
35
|
+
"" = "src"
|
|
File without changes
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
from flask import Flask
|
|
2
|
+
from python_flask_dev.formatting_data import get_filtered_key_vals
|
|
3
|
+
# from data.users import get_users
|
|
4
|
+
app = Flask(__name__)
|
|
5
|
+
|
|
6
|
+
# sample_data = get_users()
|
|
7
|
+
sample_data = [
|
|
8
|
+
{
|
|
9
|
+
"id": 1,
|
|
10
|
+
"name": "Leanne Graham",
|
|
11
|
+
"username": "Bret",
|
|
12
|
+
"email": "Sincere@april.biz",
|
|
13
|
+
"address": {
|
|
14
|
+
"street": "Kulas Light",
|
|
15
|
+
"suite": "Apt. 556",
|
|
16
|
+
"city": "Gwenborough",
|
|
17
|
+
"zipcode": "92998-3874",
|
|
18
|
+
"geo": {
|
|
19
|
+
"lat": "-37.3159",
|
|
20
|
+
"lng": "81.1496"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"phone": "1-770-736-8031 x56442",
|
|
24
|
+
"website": "hildegard.org",
|
|
25
|
+
"company": {
|
|
26
|
+
"name": "Romaguera-Crona",
|
|
27
|
+
"catchPhrase": "Multi-layered client-server neural-net",
|
|
28
|
+
"bs": "harness real-time e-markets"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"id": 2,
|
|
33
|
+
"name": "Ervin Howell",
|
|
34
|
+
"username": "Antonette",
|
|
35
|
+
"email": "Shanna@melissa.tv",
|
|
36
|
+
"address": {
|
|
37
|
+
"street": "Victor Plains",
|
|
38
|
+
"suite": "Suite 879",
|
|
39
|
+
"city": "Wisokyburgh",
|
|
40
|
+
"zipcode": "90566-7771",
|
|
41
|
+
"geo": {
|
|
42
|
+
"lat": "-43.9509",
|
|
43
|
+
"lng": "-34.4618"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"phone": "010-692-6593 x09125",
|
|
47
|
+
"website": "anastasia.net",
|
|
48
|
+
"company": {
|
|
49
|
+
"name": "Deckow-Crist",
|
|
50
|
+
"catchPhrase": "Proactive didactic contingency",
|
|
51
|
+
"bs": "synergize scalable supply-chains"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"id": 3,
|
|
56
|
+
"name": "Clementine Bauch",
|
|
57
|
+
"username": "Samantha",
|
|
58
|
+
"email": "Nathan@yesenia.net",
|
|
59
|
+
"address": {
|
|
60
|
+
"street": "Douglas Extension",
|
|
61
|
+
"suite": "Suite 847",
|
|
62
|
+
"city": "McKenziehaven",
|
|
63
|
+
"zipcode": "59590-4157",
|
|
64
|
+
"geo": {
|
|
65
|
+
"lat": "-68.6102",
|
|
66
|
+
"lng": "-47.0653"
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"phone": "1-463-123-4447",
|
|
70
|
+
"website": "ramiro.info",
|
|
71
|
+
"company": {
|
|
72
|
+
"name": "Romaguera-Jacobson",
|
|
73
|
+
"catchPhrase": "Face to face bifurcated interface",
|
|
74
|
+
"bs": "e-enable strategic applications"
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"id": 4,
|
|
79
|
+
"name": "Patricia Lebsack",
|
|
80
|
+
"username": "Karianne",
|
|
81
|
+
"email": "Julianne.OConner@kory.org",
|
|
82
|
+
"address": {
|
|
83
|
+
"street": "Hoeger Mall",
|
|
84
|
+
"suite": "Apt. 692",
|
|
85
|
+
"city": "South Elvis",
|
|
86
|
+
"zipcode": "53919-4257",
|
|
87
|
+
"geo": {
|
|
88
|
+
"lat": "29.4572",
|
|
89
|
+
"lng": "-164.2990"
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"phone": "493-170-9623 x156",
|
|
93
|
+
"website": "kale.biz",
|
|
94
|
+
"company": {
|
|
95
|
+
"name": "Robel-Corkery",
|
|
96
|
+
"catchPhrase": "Multi-tiered zero tolerance productivity",
|
|
97
|
+
"bs": "transition cutting-edge web services"
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"id": 5,
|
|
102
|
+
"name": "Chelsey Dietrich",
|
|
103
|
+
"username": "Kamren",
|
|
104
|
+
"email": "Lucio_Hettinger@annie.ca",
|
|
105
|
+
"address": {
|
|
106
|
+
"street": "Skiles Walks",
|
|
107
|
+
"suite": "Suite 351",
|
|
108
|
+
"city": "Roscoeview",
|
|
109
|
+
"zipcode": "33263",
|
|
110
|
+
"geo": {
|
|
111
|
+
"lat": "-31.8129",
|
|
112
|
+
"lng": "62.5342"
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"phone": "(254)954-1289",
|
|
116
|
+
"website": "demarco.info",
|
|
117
|
+
"company": {
|
|
118
|
+
"name": "Keebler LLC",
|
|
119
|
+
"catchPhrase": "User-centric fault-tolerant solution",
|
|
120
|
+
"bs": "revolutionize end-to-end systems"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"id": 6,
|
|
125
|
+
"name": "Mrs. Dennis Schulist",
|
|
126
|
+
"username": "Leopoldo_Corkery",
|
|
127
|
+
"email": "Karley_Dach@jasper.info",
|
|
128
|
+
"address": {
|
|
129
|
+
"street": "Norberto Crossing",
|
|
130
|
+
"suite": "Apt. 950",
|
|
131
|
+
"city": "South Christy",
|
|
132
|
+
"zipcode": "23505-1337",
|
|
133
|
+
"geo": {
|
|
134
|
+
"lat": "-71.4197",
|
|
135
|
+
"lng": "71.7478"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"phone": "1-477-935-8478 x6430",
|
|
139
|
+
"website": "ola.org",
|
|
140
|
+
"company": {
|
|
141
|
+
"name": "Considine-Lockman",
|
|
142
|
+
"catchPhrase": "Synchronised bottom-line interface",
|
|
143
|
+
"bs": "e-enable innovative applications"
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"id": 7,
|
|
148
|
+
"name": "Kurtis Weissnat",
|
|
149
|
+
"username": "Elwyn.Skiles",
|
|
150
|
+
"email": "Telly.Hoeger@billy.biz",
|
|
151
|
+
"address": {
|
|
152
|
+
"street": "Rex Trail",
|
|
153
|
+
"suite": "Suite 280",
|
|
154
|
+
"city": "Howemouth",
|
|
155
|
+
"zipcode": "58804-1099",
|
|
156
|
+
"geo": {
|
|
157
|
+
"lat": "24.8918",
|
|
158
|
+
"lng": "21.8984"
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
"phone": "210.067.6132",
|
|
162
|
+
"website": "elvis.io",
|
|
163
|
+
"company": {
|
|
164
|
+
"name": "Johns Group",
|
|
165
|
+
"catchPhrase": "Configurable multimedia task-force",
|
|
166
|
+
"bs": "generate enterprise e-tailers"
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"id": 8,
|
|
171
|
+
"name": "Nicholas Runolfsdottir V",
|
|
172
|
+
"username": "Maxime_Nienow",
|
|
173
|
+
"email": "Sherwood@rosamond.me",
|
|
174
|
+
"address": {
|
|
175
|
+
"street": "Ellsworth Summit",
|
|
176
|
+
"suite": "Suite 729",
|
|
177
|
+
"city": "Aliyaview",
|
|
178
|
+
"zipcode": "45169",
|
|
179
|
+
"geo": {
|
|
180
|
+
"lat": "-14.3990",
|
|
181
|
+
"lng": "-120.7677"
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
"phone": "586.493.6943 x140",
|
|
185
|
+
"website": "jacynthe.com",
|
|
186
|
+
"company": {
|
|
187
|
+
"name": "Abernathy Group",
|
|
188
|
+
"catchPhrase": "Implemented secondary concept",
|
|
189
|
+
"bs": "e-enable extensible e-tailers"
|
|
190
|
+
}
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
"id": 9,
|
|
194
|
+
"name": "Glenna Reichert",
|
|
195
|
+
"username": "Delphine",
|
|
196
|
+
"email": "Chaim_McDermott@dana.io",
|
|
197
|
+
"address": {
|
|
198
|
+
"street": "Dayna Park",
|
|
199
|
+
"suite": "Suite 449",
|
|
200
|
+
"city": "Bartholomebury",
|
|
201
|
+
"zipcode": "76495-3109",
|
|
202
|
+
"geo": {
|
|
203
|
+
"lat": "24.6463",
|
|
204
|
+
"lng": "-168.8889"
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
"phone": "(775)976-6794 x41206",
|
|
208
|
+
"website": "conrad.com",
|
|
209
|
+
"company": {
|
|
210
|
+
"name": "Yost and Sons",
|
|
211
|
+
"catchPhrase": "Switchable contextually-based project",
|
|
212
|
+
"bs": "aggregate real-time technologies"
|
|
213
|
+
}
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
"id": 10,
|
|
217
|
+
"name": "Clementina DuBuque",
|
|
218
|
+
"username": "Moriah.Stanton",
|
|
219
|
+
"email": "Rey.Padberg@karina.biz",
|
|
220
|
+
"address": {
|
|
221
|
+
"street": "Kattie Turnpike",
|
|
222
|
+
"suite": "Suite 198",
|
|
223
|
+
"city": "Lebsackbury",
|
|
224
|
+
"zipcode": "31428-2261",
|
|
225
|
+
"geo": {
|
|
226
|
+
"lat": "-38.2386",
|
|
227
|
+
"lng": "57.2232"
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
"phone": "024-648-3804",
|
|
231
|
+
"website": "ambrose.net",
|
|
232
|
+
"company": {
|
|
233
|
+
"name": "Hoeger LLC",
|
|
234
|
+
"catchPhrase": "Centralized empowering task-force",
|
|
235
|
+
"bs": "target end-to-end models"
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
]
|
|
239
|
+
|
|
240
|
+
@app.route('/')
|
|
241
|
+
def hello_world(): # put application's code here
|
|
242
|
+
return 'Hello World!'
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
if __name__ == '__main__':
|
|
246
|
+
app.run()
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
class CustomError(Exception):
|
|
2
|
+
"""Exception raised for custom error in the application."""
|
|
3
|
+
# ATT this function doesn't accept printf for the message arg; a printf string needs to be assigned to a var
|
|
4
|
+
def __init__(self, message, error_code):
|
|
5
|
+
self.message = message
|
|
6
|
+
self.error_code = error_code
|
|
7
|
+
super().__init__(message)
|
|
8
|
+
|
|
9
|
+
def __str__(self):
|
|
10
|
+
return f"{self.message} (Error Code: {self.error_code})"
|