MongoSK icon

MongoSK -----

The MongoDB database management addon for Skript.




In accordance with MongoSK's release logic, this version includes versions 2.2.1 and 2.2.2 as well as some not yet released modifications that have been tested by several users. So make way for MongoSK 2.3.0! After a year without a new stable version, here is a new one that introduces a lot of new features. Let's start:

Highlighted additions
✨ Introduce embedded value beta expression
I've been asked for this phrase a lot, so here it is! It is sometimes redundant to extract a document from a document from a document etc... and undertake several data manipulations on several lines. To remedy this, this expression will only ask you the path (MongoSK specific syntax, be careful) as follows: foo.bar, foo[0].bar or foo.bar[2] for example.

✨ Introduce sections support with new Skript's API and support legacy sections
Skript has recently released an API to create sections in a cleaner way directly integrated with Skript. However, this change has resulted in addons being required to use their new system. So I've been working to make sure that versions that are compatible with this change use it, but I've also been working to keep backwards compatibility for versions that don't use Skript's new API. To summarize, no changes are introduced by this release, only section support for recent versions of Skript.

✨ Introduce mongo keys / values expressions
Also requested by many users, these expressions simply allow you to retrieve all the keys or values of a document. Practical, isn't it?

✨ Introduce beta distinct query
The distinct query is useful when you want to retrieve a specific field from each document in a given collection. For example, if you have documents with a [code single]name[/code] field, you can use this expression to retrieve all the [code single]name[/code] fields of the documents in the collection. ⚠️ This expression does not accept constructed queries, only the basic find query is currently supported.

Full Changelog: https://github.com/Romitou/MongoSK/compare/2.2.0...2.3.0

I remind you that MongoSK has a Discord community on which you can exchange with other MongoSK users and contributors to get help and give us your opinions and what you would like to have in the addon!

That's it for today. Enjoy!
----------, Jun 23, 2022

In the continuity of the versioning cycle of MongoSK, consisting in using the patch versions of beta releases as and when features are added, the previous beta versions have proven to be stable. It's time to release MongoSK 2.2.0. Let's see what's new.

Major changes

- Fix query execution of advanced queries
- Fix the server expression that did not support color codes properly
- Add support for Skript 2.6+
- Add support for MC 1.8+
- Add ability to disable codecs:

As you know, MongoSK comes with codecs, which allow users to easily store information not supported by MongoDB. For example: locations, players, dates, etc. It is now possible for advanced users who know what they are doing to disable some codecs so that they are no longer operational. Here is how to do it if you want to disable the date and player codecs for example:
Code (Text):
skript-adapters:
    # ...
    # The list of codec names that you do not want to be activated. One per line, starting with a hyphen.
    disabled:
    - date
    - player
- Add easy configuration of timeouts:

It is now possible to easily customize the timeout of the Mongo driver operations! As you know, the default timeouts are 30 seconds, which means that the main server thread will be blocked for 30 seconds (if your request is not executed asynchronously). From now on, the default timeout is set to 10 seconds, and can be customized in the MongoSK configuration as follows:
Code (Text):
# The timeouts represent the maximum time to wait before the action is completed.
# If the action is not completed before the time defined below, it will be aborted.
# Timeouts are expressed in milliseconds. It is not recommended to define a timeout greater than 10000 milliseconds.
timeouts:
    # The connection timeout to your server.
    connect: 10000
    # The timeout for reading the data received from the server.
    read: 10000
For more information about some of the changes, see the 2.0.1 & 2.0.2 releases. That's it for today. Enjoy!
----------, Jun 25, 2021

MC 1.8 support
This version brings the modification of the Maven repository of the Mongo driver, now hosted by myself. The reason is that some issues have been fixed on my fork, adding support among others for 1.8 servers! This modified version of the driver does not use SLF4J anymore, which was not present on these servers.

Skript 2.6 compatibility fix
The second fix brings full compatibility with Skript 2.6. The effect sections have been fixed, and should no longer display warnings in the console.

That's all for today. Have fun!
----------, Jun 21, 2021

The previous patch versions (2.0.1, 2.0.2 & 2.0.3) proved to be stable and without bugs, so here is a minor version (2.1.0)! This new version also brings some new features:

✨ Features

- Update Mongo driver from version 4.2.2 to 4.3.0-beta1
- Remove severe logging when a field does not exist in a document
- Add an is empty document condition
- Add an has value document condition
- Add an has key document condition
- Add Mongo sections!

As you know, the creation of simple documents can sometimes be long and boring, because of the many lines that sometimes seem unnecessary.
To create a simple document representing the JSON object below, you can now use a new syntax!

Code (Text):
{
  "simpleField": "Hello!",
  "nestedObject": {
   "number": 100,
   "boolean": false
  }
}
Code (Text):
set {_nested} to a new mongo document with:
  mongo "number": 100
  mongo "boolean": false
set {_doc} to a new mongo document with:
  mongo "simpleField": "Hello!"
  mongo "nestedObject": {_nested}
broadcast {_doc}'s mongo json
These new syntaxes are all prefixed with mongo to ensure they do not conflict with other addons.
As a reminder, they are currently in beta, and their patterns may be changed if there are problems.

That's it for today, enjoy!
----------, Apr 25, 2021

Thank you all for your feedback on MongoSK 2.0.0. Thanks to you, some issues have been solved. Let's review them:

Bugs
- Mongo document lists not being deserialized
- Fixing some codecs
- Severe error when a field is not present in a document

For this update, no additions have been made, while we receive feedback on the stability of this first v2 version. New features will be added soon.
----------, Mar 10, 2021

Resource Information
Author:
----------
Total Downloads: 439
First Release: Mar 7, 2021
Last Update: Jun 23, 2022
Category: ---------------
All-Time Rating:
2 ratings
Find more info at github.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings