vexy / fridge Goto Github PK
View Code? Open in Web Editor NEWHandle your structs like a boss ๐งโโ๏ธ
License: MIT License
Handle your structs like a boss ๐งโโ๏ธ
License: MIT License
Rework and better expose FridgeErrors
model.
This might be useful during
README link leading to Playground is broken.
Implement Fridge[storage_id]
as a "shortcut" for unfreezing.
What happens when a model gets updated?
It seems that Fridge fails to unfreeze existing data into a new structure. I see two cases here:
One idea is to catch errors on load and then try to import data by first loading them into a generic dictionary/map (whatever is available on swift) and then manually importing data into the new, extended structure. This process could also give a mapping callback that could be used in case of modified fields (e.g. (fieldName, oldValue) -> newValue
)
Add a method that async returns raw data from a given endpoint.
Follow this workflow to get more details:
https://github.com/vexy/Fridge/runs/5401079443?check_suite_focus=true
Provide a method for saving/retreiving hashed transformation of given struct.
Merge or combine the tests.
There's no real difference in functional testing.
Close the classes for public use
Create simple Playground file demonstrating basic usage example.
Add method that pushes an object using provided URLRequest
Got this warnings while building:
'NIOAtomic' is deprecated: please use ManagedAtomic from https://github.com/apple/swift-atomics instead
Implement separate operation queue for background I/O
operations.
Add new or update existing code examples.
Demonstrate few Xcode example projects and the way how Fridge
can be used:
Clmn
app as usage exampleMake sure async operations are performed on proper thread.
Adjust workflow files not to fail on tests
Remove Xcode files/folder and keep using only Package.swift
.
Bump package dependencies to their latest versions.
Make sure that inline code documentation matches desired functionality.
Add another method that allows the users to get (an array perhaps) of [String]
identifiers.
Freezer
Fridge/Sources/Fridge/Freezer.swift
Lines 61 to 64 in 96a663b
BSONConverter
Fridge/Sources/Fridge/BSONConverter.swift
Lines 25 to 27 in 96a663b
Fridge/Sources/Fridge/BSONConverter.swift
Lines 32 to 34 in 96a663b
Provide better support for Array
types.
Update documentation before each public release.
Add a method that can push
(send) given object to a certain URL
.
Object must confirm to Codable.
If the passed object fails to be parsed to JSON
the method will throw.
Add a public method that allows changing field value of an already frozen struct
without the need for unfreezing.
New value should be present at next unfreeze attempt.
eg:
try Fridge.adjust(FrozenStruct.Self, field: \.field1, value: 10)
Expand freezing
to system Cache
folder as an additional option.
Instead of providing String
based key
, allow freezing and grabbing structs that conform to Identifiable
.
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.