Comments (2)
Option 1. is where we are now, and it's beginning to suck.
Option 2 is plausible? My datasette-secrets
plugin failed on from datasette import Permission
- but maybe I could have that class in <1.0 without it doing anything useful, just so plugins can start using register_permissions()
? Bit messy though.
What's the minimal work I could do for option 3 to be worthwhile I wonder?
from datasette.
After browsing through 0.64.6...1.0a13 a bit I think a full forward-porting of the permissions work would be too hard. But having a Permission
class that can be imported and does nothing except for allow register_permissions()
to be called for 1.0a+ might be worthwhile.
The rest of the problem could then be solved in datasette-test
. Maybe something like this:
from datasette_test import Datasette
ds = Datasette(
plugin_config={"datasette-extract": "..."},
permissions={"manage-secrets": {"id": "admin"}}
)
Where that permissions=
thing uses config={"permissions": ...}
for Datasette 1.0a+ and some more complex plugin-based mechanism for <1.0
.
from datasette.
Related Issues (20)
- 'Datasette' object has no attribute 'table_metadata' HOT 6
- Database download missing content-length header and is sent chunked
- Run spell check against all of the documentation HOT 5
- Async example for track_event plugin hook HOT 1
- Test fail against Python 3.13-dev with a Pint error HOT 4
- 500 Error editing row with binary column using datasette-write-ui
- Canned queries don't appear in the app
- `json1` SQLite extension is not correctly detected in `versions.json`
- `Stable` documentation refers to `latest` demo instance
- get_metadata() plugin hook should support async await_me_maybe pattern HOT 2
- Datasette 1.0 rc tracking issue
- Usablity issue with need for root user
- Bug (in docs?): the "_internal" table on latest.datasette.io doesn't load HOT 1
- Consider adding a new plugin hook: "pre_query" or similar HOT 3
- Proposal - store metadata inside `internal.db` tables HOT 2
- Broken link in documention: fivethirtyeight.datasettes.com
- Fix font size on filter inputs
- base_url getting appended twice in redirects when applying filters?
- Accessibility: add a `lang` attribute to `html`
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 datasette.