Comments (7)
I started a micropython port here: https://github.com/ahmadmicro/tinydb
from tinydb.
The ujson I meant there is this one: https://github.com/esnme/ultrajson.
I think in principle TinyDB could run on MicroPython, but I assume that it would require a little bit of porting work as I'm currently using the re
, os
, contextlib
, abc
, os
, warnings
and sys
Python modules.
from tinydb.
@pfalcon Is there any interest in having this ported to MicroPython?
from tinydb.
Thanks for clarification! MicroPython comes with a subset of stdlib, https://github.com/micropython/micropython-lib , and some of the modules you list already there (but likely subset of functionality is implemented), while some, like abc, aren't yet there. I just started writing my own simple file-based ORM, https://github.com/pfalcon/filedb , but then decided to do a quick search to make sure I don't duplicate effort, and was surprised by that line in tinydb. Well, I guess at this stage it makes more sense to continue working on filedb, as it's intended to run in the most minimal environments, but I'll keep in mind tinydb if something more advanced will be required. So, let me close this.
from tinydb.
I'm searching around and started using TinyDB for another project. I think this would actually be useful in MicroPython. I'd be interested to see if you have the time to port this!
from tinydb.
Hey @milkshakespoon, currently I don't have time to maintain a port. I've looked into this a little and MicroPython is incompatible with the current TinyDB codebase in a few regards (metaclasses not supported, collections.Mapping
doesn't recognize dicts). So basically the only way to make it work would be to create a fork. If anyone wants to create one and maintain such a fork, I'll gladly link to it in the extensions list, but I'm afraid I can't do more.
from tinydb.
Hey @milkshakespoon, currently I don't have time to maintain a port. I've looked into this a little and MicroPython is incompatible with the current TinyDB codebase in a few regards (metaclasses not supported,
collections.Mapping
doesn't recognize dicts). So basically the only way to make it work would be to create a fork. If anyone wants to create one and maintain such a fork, I'll gladly link to it in the extensions list, but I'm afraid I can't do more.
Thanks for the response. Be awesome if someone does that! Unfortunately my coding skills are no where near good enough to create something like this.
from tinydb.
Related Issues (20)
- Info on Concurrency HOT 7
- Argument of type "QueryInstance" cannot be assigned to parameter "cond" of type "QueryLike" HOT 2
- Separate File Per Record
- Database corruption when access_mode="a+" and using collection.remove() HOT 1
- Adding query limit 😄
- Empty table does not persist HOT 1
- Modifying documents returned by `search` modifies the query cache
- Can't use lists/dicts as arguments to `Query.test`
- how to flush Tables with CachingMiddleware(JSONStorage)) HOT 2
- de-serialization Query() statement for search is there a way not use eval HOT 3
- Data Corruption vulnerability on TinyDB version 4.7.1 HOT 5
- Does tinyDB support multi-thread/process access ? HOT 2
- TinyDB 4.8.0 issue HOT 2
- -1073741571 (0xC00000FD) something interesting occured. HOT 2
- Are there any option to persist query caches? HOT 1
- Json decoder error when reading DB from multiple processes HOT 2
- Broken link in documentation.
- is there any way to speed up deletion HOT 1
- Document ID and existing unique value in the document HOT 1
- Search documents that do not have a specific key
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 tinydb.