Skip to content

Commit ba76a76

Browse files
authored
Merge pull request #16 from champ96k/release/v0.04
release/v0.04 on pub.dev
2 parents e314a97 + 023f77d commit ba76a76

22 files changed

Lines changed: 244 additions & 46 deletions

.flutter-plugins-dependencies

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"path_provider_foundation","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]}],"android":[{"name":"path_provider_android","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_android-2.2.10/","native_build":true,"dependencies":[]}],"macos":[{"name":"path_provider_foundation","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/","native_build":false,"dependencies":[]}],"windows":[{"name":"path_provider_windows","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/","native_build":false,"dependencies":[]}],"web":[]},"dependencyGraph":[{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]}],"date_created":"2025-05-28 01:55:42.240198","version":"3.22.2"}
1+
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"path_provider_foundation","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]}],"android":[{"name":"path_provider_android","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_android-2.2.10/","native_build":true,"dependencies":[]}],"macos":[{"name":"path_provider_foundation","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/","native_build":false,"dependencies":[]}],"windows":[{"name":"path_provider_windows","path":"/Users/tusharnikam/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/","native_build":false,"dependencies":[]}],"web":[]},"dependencyGraph":[{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]}],"date_created":"2025-05-28 03:14:50.941691","version":"3.22.2"}

.gitignore

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,5 +27,6 @@ migrate_working_dir/
2727
.dart_tool/
2828
build/
2929

30-
# Local Netlify folder
31-
.netlify
30+
# Netlify
31+
documentation/.netlify/netlify.toml
32+
documentation/.netlify/state.json

.pubignore

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Miscellaneous
2+
*.class
3+
*.log
4+
*.pyc
5+
*.swp
6+
.DS_Store
7+
.atom/
8+
.buildlog/
9+
.history
10+
.svn/
11+
migrate_working_dir/
12+
13+
# IntelliJ related
14+
*.iml
15+
*.ipr
16+
*.iws
17+
.idea/
18+
19+
# Flutter/Dart/Pub related
20+
.dart_tool/
21+
build/
22+
.git/
23+
.gitignore
24+
.pubignore
25+
26+
# Documentation related
27+
# Exclude Netlify state files but keep the configuration
28+
documentation/.netlify/state.json

CHANGELOG.md

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,39 @@
11
# Changelog
22

3-
## 0.0.1
3+
## 0.0.4
44

5-
- Initial release of QuantaDB
6-
- Implemented LSM-Tree based storage engine
7-
- Added basic CRUD operations
8-
- Added support for Flutter integration
9-
- Included code generation capabilities
5+
### Features
6+
- Added support for automatic schema migrations
7+
- Improved builder configuration for better code generation
8+
- Enhanced documentation coverage for public API
9+
10+
### Dependencies
11+
- Updated analyzer to support version 7.x
12+
- Updated source_gen to support version 2.x
13+
- Updated other dependencies to their latest stable versions
14+
15+
### Bug Fixes
16+
- Fixed builder configuration issues
17+
- Resolved dependency constraint warnings
18+
- Improved error handling in migration builder
19+
20+
## 0.0.3
21+
22+
### Features
23+
- Initial public release
24+
- Basic LSM-Tree implementation
25+
- Code generation support
26+
- Schema versioning
27+
- Encryption support
1028

1129
## 0.0.2
1230

1331
- Readme updated
1432

15-
## 0.0.3
33+
## 0.0.1
1634

17-
- Documentation added
18-
- Improve pub score
35+
- Initial release of QuantaDB
36+
- Implemented LSM-Tree based storage engine
37+
- Added basic CRUD operations
38+
- Added support for Flutter integration
39+
- Included code generation capabilities

README.md

Lines changed: 54 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ Add this to your package's `pubspec.yaml` file:
111111

112112
```yaml
113113
dependencies:
114-
quanta_db: ^0.0.3
114+
quanta_db: ^0.0.4
115115
```
116116
117117
2. **Install it**
@@ -170,6 +170,59 @@ void main() async {
170170
- Data is stored using a custom binary serialization format (DartBson).
171171
- Directory management is handled automatically for different platforms, ensuring secure storage locations.
172172

173+
## Features in Detail
174+
175+
### Automatic Schema Migrations
176+
177+
QuantaDB automatically handles schema changes:
178+
179+
```dart
180+
@QuantaEntity()
181+
class User {
182+
final String id;
183+
final String name;
184+
final String email;
185+
// Add new fields as needed
186+
final String? phone; // New field
187+
}
188+
```
189+
190+
The migration will be generated automatically when you run:
191+
192+
```bash
193+
dart run build_runner build
194+
```
195+
196+
### Encryption
197+
198+
Secure sensitive data with field-level encryption:
199+
200+
```dart
201+
@QuantaEntity()
202+
class User {
203+
@QuantaEncrypted()
204+
final String password;
205+
}
206+
```
207+
208+
### Reactive Fields
209+
210+
Get real-time updates for specific fields:
211+
212+
```dart
213+
@QuantaEntity()
214+
class User {
215+
@QuantaReactive()
216+
final DateTime lastLogin;
217+
}
218+
219+
// Watch for changes
220+
final stream = userDao.watchLastLogin(user);
221+
await for (final lastLogin in stream) {
222+
print('User logged in at: $lastLogin');
223+
}
224+
```
225+
173226
## Contributing
174227

175228
We welcome contributions! Please see the [CONTRIBUTING.md](https://github.com/champ96k/quanta_db/blob/master/CONTRIBUTING.md) for details.

build.yaml

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,15 @@ targets:
1010
exclude:
1111
- lib/annotations/**.dart
1212
- lib/src/generator/**.dart
13-
quanta_db:
14-
options:
15-
generate_migrations: true
13+
quanta_db|migration_builder:
14+
enabled: true
15+
generate_for:
16+
include:
17+
- lib/**.dart
18+
- example/**.dart
19+
exclude:
20+
- lib/annotations/**.dart
21+
- lib/src/generator/**.dart
1622

1723
builders:
1824
quanta_generator:
@@ -22,10 +28,10 @@ builders:
2228
auto_apply: root_package
2329
build_to: source
2430
required_inputs: [".dart"]
25-
runs_before: ["build_web_compilers|entrypoint"]
26-
quanta_db:
31+
runs_before: ["build_web_compilers|entrypoint"]
32+
migration_builder:
2733
import: "package:quanta_db/src/builders/migration_builder.dart"
28-
builder_factories: ["MigrationBuilder"]
34+
builder_factories: ["migrationBuilder"]
2935
build_extensions: {".dart": [".migration.dart"]}
3036
auto_apply: root_package
3137
build_to: source

documentation/blog/quantadb-beta-announcement.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Adding QuantaDB to your project is straightforward:
5959

6060
```yaml
6161
dependencies:
62-
quanta_db: ^0.0.2
62+
quanta_db: ^0.0.4
6363
```
6464
6565
Basic usage example:

documentation/docs/installation.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ To start using QuantaDB, add the dependency to your `pubspec.yaml` file:
88

99
```yaml
1010
dependencies:
11-
quanta_db: ^0.0.2 # Use the latest version
11+
quanta_db: ^0.0.4 # Use the latest version
1212
```
1313
1414
Then, run `dart pub get` or `flutter pub get`.
@@ -17,4 +17,4 @@ Import the package in your Dart code:
1717

1818
```dart
1919
import 'package:quanta_db/quanta_db.dart';
20-
```
20+
```

documentation/docs/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ To start using QuantaDB, add the dependency to your `pubspec.yaml` file:
4141

4242
```yaml
4343
dependencies:
44-
quanta_db: ^0.0.2 # Use the latest version
44+
quanta_db: ^0.0.4 # Use the latest version
4545
```
4646
4747
Then, run `dart pub get` or `flutter pub get`.

example/database_benchmark/pubspec.lock

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,18 @@ packages:
55
dependency: transitive
66
description:
77
name: _fe_analyzer_shared
8-
sha256: ae92f5d747aee634b87f89d9946000c2de774be1d6ac3e58268224348cd0101a
8+
sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7"
99
url: "https://pub.dev"
1010
source: hosted
11-
version: "61.0.0"
11+
version: "67.0.0"
1212
analyzer:
1313
dependency: transitive
1414
description:
1515
name: analyzer
16-
sha256: ea3d8652bda62982addfd92fdc2d0214e5f82e43325104990d4f4c4a2a313562
16+
sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d"
1717
url: "https://pub.dev"
1818
source: hosted
19-
version: "5.13.0"
19+
version: "6.4.1"
2020
args:
2121
dependency: transitive
2222
description:
@@ -513,7 +513,7 @@ packages:
513513
path: "../.."
514514
relative: true
515515
source: path
516-
version: "0.0.1"
516+
version: "0.0.3"
517517
shelf:
518518
dependency: transitive
519519
description:

0 commit comments

Comments
 (0)