zeoflow / memo Goto Github PK
View Code? Open in Web Editor NEWAndroid processing and secured library for managing SharedPreferences as key-value elements efficiently and structurally.
License: Apache License 2.0
Android processing and secured library for managing SharedPreferences as key-value elements efficiently and structurally.
License: Apache License 2.0
Description: memo-annotation
module does not require memo
module
Expected behavior: to be removed
Source code:
memo-annotation/build.gradle:
dependencies {
// ---->
implementation project(":memo")
// <----
}
Is your feature request related to a problem? Please describe.
@MemoCompoundFunction to set values
Describe the solution you'd like
For the time being the @MemoCompoundFunction annotation can be used only for get methods
Description: Memo Error - Could not find Memo.memo-lib:memo:unspecified
Source code:
Code
Execution failed for task ':app:dataBindingMergeDependencyArtifactsDebug'.
> Could not resolve all files for configuration ':app:debugCompileClasspath'.
> Could not find Memo.memo-lib:memo:unspecified.
Required by:
project :app > com.zeoflow:memo-annotation:1.1.0
Is your feature request related to a problem? Please describe.
The methods that retrieves the entity's name should be camel lower case
Is your feature request related to a problem? Please describe.
Migrate to Java 11 and upgrade to gradle 7.0
Add Contributor @TeodorHMX1
Description: Remediation for Unsafe Encryption Mode Usage
This information is intended for developers with app(s) that contain encryption employing the less secure mode AES/ECB. Encrypting content using this weak mode can lead to weak ciphertexts, and potentially put user data at risk. Location(s) of the less secure encryption modes in your app can be found in the Play Console notification for your app.
https://support.google.com/faqs/answer/10046138
Description: LogInterceptor keeps printing in console by default
Expected behavior:
LogInterceptor getLogInterceptor()
{
if (logInterceptor == null)
{
//empty implementation
}
return logInterceptor;
}
Source code:
LogInterceptor getLogInterceptor()
{
if (logInterceptor == null)
{
// empty implementation ?? is not empty
logInterceptor = System.out::println;
}
return logInterceptor;
}
Description: memo-compiler
contains unused private methods - these emthods are not called from anywehere and they are PRIVATE
Expected behavior: delete them
Description:
java_vm_ext.cc:542] JNI DETECTED ERROR IN APPLICATION: JNI FindClass called with pending exception java.lang.NoSuchFieldError: no "J" field "mCtxPtr" in class "Lcom/facebook/crypto/cipher/NativeGCMCipher;" or its superclasses
java_vm_ext.cc:542] at java.lang.String java.lang.Runtime.nativeLoad(java.lang.String, java.lang.ClassLoader) (Runtime.java:-2)
java_vm_ext.cc:542] at void java.lang.Runtime.loadLibrary0(java.lang.ClassLoader, java.lang.String) (Runtime.java:1014)
java_vm_ext.cc:542] at void java.lang.System.loadLibrary(java.lang.String) (System.java:1669)
java_vm_ext.cc:542] at boolean c.b.b.k.c.b() (:50)
java_vm_ext.cc:542] at void c.b.b.k.c.a() (:39)
java_vm_ext.cc:542] at void com.facebook.crypto.cipher.NativeGCMCipher.e(byte[], byte[]) (:51)
java_vm_ext.cc:542] at java.io.OutputStream c.b.b.e.c(java.io.OutputStream, c.b.b.g, byte[]) (:43)
java_vm_ext.cc:542] at java.io.OutputStream c.b.b.c.e(java.io.OutputStream, c.b.b.g, byte[]) (:82)
java_vm_ext.cc:542] at byte[] c.b.b.c.b(byte[], c.b.b.g) (:119)
java_vm_ext.cc:542] at java.lang.String com.zeoflow.memo.b.b(java.lang.String, java.lang.String) (:57)
java_vm_ext.cc:542] at boolean com.zeoflow.memo.d.a(java.lang.String, java.lang.Object) (:50)
java_vm_ext.cc:542] at boolean com.zeoflow.memo.l.e(java.lang.String, java.lang.Object) (:54)
java_vm_ext.cc:542] at void com.wave.users.e.d.h(java.lang.String) (:97)
...
Description: AES Encryptor is not required inside the memo-annotation
library - it is included inside memo
Description: Generated classes conatins Generated by IStorage
Expected behavior: change to memo injector
Description: Generate MemoClass of type T
is not generated right
Description: Empty @KeyName
annotation should generate a field written in lower camel style
Description: Default value for memo's injector
Is your feature request related to a problem? Please describe.
Listeners components should have I before name
Describe the solution you'd like
for instance Listener
annotation should be IListener
Description: ShareType
enum should have either a relevant name or fix its values
Description: Not code-friendly keyName for generated values. For instance if I have a field named memoField
than the field will be generated as memo_field
Description: TypeConvertor Annotation is not required inside memo-annotation
Description: settings.gradle
hierarchy should be linear - ready for publishing
Get method should inherit the nonnull or nullable annotations
Is your feature request related to a problem? Please describe.
AutoGenerate class-ready for @Hilt
Is your feature request related to a problem? Please describe.
Create docs for the memo's injector
Describe the solution you'd like
Docs for how to use the memo-annotation
and memo-compiler
Description: Inside README parcelled is written for version
Is your feature request related to a problem? Please describe.
The @CompoundMethod
annotation should be used for retrieving values based on different fields
Description: Create docs for the memo-library
Is your feature request related to a problem? Please describe.
Issue template for docs
Is your feature request related to a problem? Please describe.
Relevant names for the generated files
Describe the solution you'd like
Description: @KeyName
is not a suitable name therefore it should be renamed to StoreKey
because this element represents the value that binds the element to the storage
Description:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.zeoowl.books, PID: 4497
java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.