Comments (6)
Types of errors probably look a lot like http errors, since it uses a lot of web concepts
- Authorization (401): incorrect rights / signature
- Not found (404): (part of) resource could not be resolved
- Internal error (500)
from atomic-server.
AppError in Atomic-Server is pretty bad. It has some unused fields, unnecessary logic. Feels very unfinished. But perhaps it's better to fix that after fixing Atomic-Lib errors, since that's where pretty much all server errors will be coming from.
from atomic-server.
Current errors are often too verbose, and I don't have a decent strategy of solving this. Example:
Failed setting propval for 'https://example.com/birthDate' because property 'https://atomicdata.dev/datatypes/Datatype' could not be found. Failed getting property https://atomicdata.dev/datatypes/Datatype. Could not fetch url 'https://atomicdata.dev/datatypes/Datatype'. Status: 500
I currently use map_err
+ format!
a lot to create long chained strings of errors. This is better than throwing information away, but I need a strategy to keep the messages shorter.
from atomic-server.
Also, I'd like to standardize these Errors even higher. Maybe introduce an Error class, and maybe give Error types resolvable, persistent IDs. At least I want front-end apps to be more aware of error types. Authentication errors might render a different component, etc.
from atomic-server.
I think We'll need Error Resources, which can be properly parsed and shown in the front-end. Maybe this will need to be a new Error type. Or maybe all we need is a different handler in server. Not sure what's the best approach here.
from atomic-server.
We now really need accurate status codes, because the front-end needs to know why requests have failed (authorization => retry when there's a new agent signed in).
from atomic-server.
Related Issues (20)
- Add JS CLI docs to docs
- Creating relations between classes in ontology editor can be simplified
- Auto-renew TLS requires reboot, takes too long HOT 2
- CSS weird long content in LineRow
- Explore replacing @tomic/cli with generating packages on the server HOT 1
- Docs improvements
- Drive not properly saved after accepting invite
- Add `Website` Class and View (replaces `ArguSite`) HOT 2
- Move localstorage logic from @tomic/react to databrowser
- File resource doesn't support CJK file name HOT 2
- CI should fail if E2E fails
- Support for non-tag resource arrays in Tables
- URL encoding bug: "Incorrect signature" when creating resources with special characters in URL
- Forms - submit-only view
- Sidebar shifts a few pixels when navigating
- New Version Changelog Screen HOT 1
- Regular pipeline should not update docks / push things
- browser+test fails in CI HOT 1
- CLI tool to update/create hardcoded json-ad data from ontologies
- Chinese / Japanese / Korean tokenizer support for search / tantivy HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from atomic-server.