Comments (4)
Thanks for pointing this out.
You are right, the getBook(String location, String name)
api has been added later after establishing initial API design.
The whole API design is outdated for now and should be redone but that would cause backward compatibility issue with preview version. I don't think developers will be willing to update the code to migrate for the new major version of Paper DB since the library if used, used primary in legacy projects.
from paper.
since the library if used, used primary in legacy projects.
Why do you say that? I just found this library and I've been looking like crazy for something simple that doesn't require "annotations, factory methods, mandatory class extensions etc". I just finished trying to implement kryo5 myself, and couldn't get it to not need a whole list of classes and then still have issues, tried Moshi too, and a few others. This is the first thing I found that just works. So is it old? Is there something better? Why is this mostly in legacy project? Should I not use it in a brand new project?
from paper.
You are right, the library just works and it's okay to use for the new projects as well. Although I don't provide much support and updates these days.
The good replacement for Paper could be Jetpack Datastore. I recall being impressed with this library at some point but haven't used myself in any production code https://developer.android.com/topic/libraries/architecture/datastore.
from paper.
I'm using Datastore, unfortunately it's picky, I ended up needing to use the Proto version of it and items need to be very explicitly defined with it. I looked to this because I wanted a simple 1 liner ability to file cache chunks of data.
My only concern with your library is Java 17. Android Studio keeps pestering me to upgrade to Gradle 8.0, but with Kotlin that led to all sorts of annoying issues and this warning and after reading about it, and trying to work around it all, I just gave up and stayed at Grade 7.5. But it seems there's a push to move everything to Java 17. So I figure the next time I try when a more stable version is out, the issues I saw on this plugin with Java 17 could eventually be an issue as the workaround of a custom serializer seems to entirely negate the point of using this plugin. So hopefully when that becomes the norm, maybe you'll find a chance to fix that bit 😅
from paper.
Related Issues (20)
- Migrate Immediately!! HOT 1
- IllegalAccessException since AGP 7.0.2 everytime when Paper.book().read(key, defaultValue) is called after Paper.book().write(key, value) HOT 9
- minifyEnabled is true and shrinkResources is true getting below error HOT 4
- minifyEnabled true is crashing the application when read operation is done after write HOT 3
- Read operation crashes the app when app uses gradle plugin 7.0.2 HOT 2
- Whenever app is updated or uninstalled the paper db data gets reset or deleted HOT 1
- Paper Db deserialization Issue On App Update HOT 4
- Compatibility test for 2.7.2 HOT 2
- Issue in android 12 HOT 1
- As a User I want to join back a Group PTT call or an Emergency Call so that I can get back with my callees
- Paper DB Encryption HOT 1
- Couldn't read/deserialize file /data/~/files/io.paperdb/~.pt for table ~ HOT 3
- How is the serialization working for everything ? HOT 1
- Serialization is broken for Java 8 Date Time classes with api desugaring HOT 1
- [ASK] How can view the contents of a PT file HOT 1
- Java 17 causes "InaccessibleObjectException" for ArraysAsListSerializer HOT 5
- Convert pt file to csv or display database content HOT 1
- Gradle 8 + R8 optimization result to an empty DB (or unreadable)
- Couldn't read/deserialize file /data/user/0/"
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 paper.