@@ -37,67 +37,35 @@ easy and flexible use of [ArangoDB] in applications.
37
37
38
38
** Status: Experimental**
39
39
40
- This project is under heavy development. There is no released version yet.
40
+ The first usable version is released. Yuppie!
41
41
42
- The plans are to provide:
42
+ For details about this first version and how to use the Rincon ArangoDB driver
43
+ see the [ README] ( rincon/README.md ) in the [ rincon] crates subdirectory.
43
44
44
- * A typesafe low level driver API for the [ ArangoDB REST API ] . (WIP)
45
- * Convenience 'Session'-API on top of the driver API. (WIP)
46
- * API to compose [ AQL ] queries in a typesafe manner. (PLANNED)
45
+ The project is continuously evolving. There may be breaking changes in upcoming
46
+ releases. All changes will be documented in the [ CHANGELOG.md ] ( CHANGELOG.md ) .
47
+ Breaking changes will be marked as such.
47
48
48
- Currently I am working on the driver API for the REST API. There are a lot
49
- methods in the REST API which require a lot of coding. Therefore I have
50
- split the implementation into 2 milestones. The details about the planned
51
- milestones and progress is documented in
52
- [ docs/arangodb_rest_api_methods.md] ( docs/arangodb_rest_api_methods.md )
49
+ If you are interested in using this Rincon ArangoDB driver I would be happy to
50
+ receive feedback and here what everyone is thinking about it. Especially if
51
+ you have ideas about improving usability of the driver.
53
52
54
- ## Ideas
53
+ Please file an issue on Github for every idea you have, the difficulties you are
54
+ facing and naturally for all bugs you find.
55
55
56
- In this section ideas for this project are collected. The provided code
57
- snippets shall illustrate the ideas. This does not mean that they are
58
- implemented yet or will be implemented in exact that way. So don't
59
- expect that any code snippet provided here will compile or work yet.
56
+ You may also use the Gitter channel to ask questions and discuss things.
60
57
61
- #### Typesafe and low level driver API for the REST API of ArangoDB
58
+ ## What's next?
62
59
63
- e.g. something like
60
+ There is still lot of work todo. The next planned steps are:
64
61
65
- ```
66
- let method = CreateCollection::with_name("my_collection");
67
- let result = connection.execute(method);
68
- ```
62
+ * Implement more operation of the [ ArangoDB REST API] . Details about the
63
+ planned and ready operations can be found in
64
+ [ docs/arangodb_rest_api_methods.md] ( docs/arangodb_rest_api_methods.md )
69
65
70
- #### Session API on top of the driver API
66
+ * Implement the asynchronous session API ( ` rincon_session_async ` )
71
67
72
- e.g. something like
73
-
74
- ```
75
- let session = datasource.create_session();
76
- let database = session.use_database("my_database");
77
- let collection = database.create_collection("my_new_collection");
78
- collection.add_document(..);
79
- let document = collection.get_document(..);
80
- ```
81
-
82
- The main purpose of the session shall be:
83
- * no need to specify the database and collection on each and every request.
84
- * reuse of connections to the database, e.g. from a connection pool, for
85
- speed and efficient use of resources.
86
- * convenient API for transaction handling
87
- * efficient execution of batches of operations.
88
-
89
- #### API to compose AQL queries in a typesafe manner
90
-
91
- e.g. something like
92
-
93
- ```
94
- let query = Aql::for(customers)
95
- .filter(|c| c.age == 42)
96
- .limit(10)
97
- .return(|c| (c.name, c.age, c.city))
98
- ;
99
- let results = query.results(session);
100
- ```
68
+ * Work on the documentation
101
69
102
70
## Multiple Crates
103
71
0 commit comments