Release of Aksara Ra (4.2.5)

We make lot improvements related to API and it's security. Also adding the miscellaneous feature that will help you to build your own application without require third party dependencies. The validation callback will help you to maintain the validation without touching a validation config.

Bismillahirrahmanirrahiim...


It's a short update since the latest release of Aksara a while ago. That meant the release will often scheduled until the stability is implemented cross-platform. Since the user that using Aksara is not yet expanded, we have difficult to do the unit testing. So we need your contribution to write down the issue you found for being corrected.

If you using older version of Aksara, we recommend you to make and update by running your updater instantly or simply reinstall the Aksara and paste down your created module.

Below is the update notes for this release. 

Bug Fixed:
  1. Unable to operate the batch delete,
    In the previous version of Aksara you will not able to delete multiple data because delete command is designed using chaining method as mentioned below;
  2. Unable to delete the data when using chaining method,
    It's happened when you using chaining method to delete the data, meant the operation such "->where(x, y)->delete(z)" will not work. Solved in this release;
  3. Permission: Correct the privilege that not push any method even it's exists;
  4. Basic Module: Updating the group query that throw error when ONLY_FULL_GROUP_BY variable in SQL_MODE were enabled,
    This common problem caused when you are enable the ONLY_FULL_GROUP_BY (as the default enabled variable in MySQL v.5.7 above). Since our development device are disabled this variable, we don't recognize that there's a basic module will throw the error related to this. Has been solved for this release.
Changes:
  1. Main Helper: change the "exception" with "message",
    Not mandatory but we follow the standard API structure;
  2. Core System: Change the method restriction referrer, from model to self class,
    The restricted method is following the method that referred to the model, so we change the referrer to the Aksara Core, since the modules will be extended to it;
  3. Model: Change the missing statement;
  4. Javascript: Change the response template based on status code response (see New Feature point 1),
    We used to make all responses with status code 200, that it's not so good if you manage the API call. This release change the response header to follow the code that sets as response, so it's basically make an API call more natural.
Improvements:
  1. Cleaner Module: Replace the exception to popup information;
  2. Updater Module: Replace the exception to popup information;
  3. API Debugger: Merge the response to single event;
  4. Router: Checking the method that will be used if controller and method has identical name but the method is presented in class;
  5. Add the memory limit for document creation;
  6. Separate the option popup for logged and non-logged user;
  7. Model: Add the table existence checker before executing the query;
  8. Login view improvements;
  9. Correcting the "asset_loader" function to load the assets that included in theme folder;
  10. Change the theme property to following the given configuration, both front-end and back-end;
  11. Add new phrase on first app boot.
New Features:
  1. Main Helper: Add the response code (status code) within response header. Now the status code response are following the code sets from request (see the Changes point 4 for details);
  2. Core System: Add the access token checker (used to match the device that doesn't support cookie storage) on API Request Handshake,
    You will be able to make any request that require the permission from device that doesn't support cookie storage. The access token will be used to check if current device is matched with session from back end;
  3. Authentication: Add the Access Token to the response made through API,
    You will be able to use the access token after successfully signing in an using the response access token to request the module that require permissions;
  4. Updater: Add the ability to merge the remote and local dependencies if custom dependency already installed,
    Don't worry about your custom installed dependencies. Aksara will merge your installed dependencies so you will not have to rewrite them;
  5. Miscellaneous: Add the QR Code, Barcode and Shortlink generator;
  6. Add sprintf function to javascript;
  7. Validation: Add the best practice to use the callback validation (referred to CI3) to use the rules from the method that presented in same controller,
    You will be able to make a callback for validation. So you will not require to write your custom rules to the validation config.
Deprecated:
  1. Exception: Remove status code 206 and replaced with 200 instead, use "popup" parameter to separate the modal and static content;
  2. Removing the color of Privilege Management to keep the consistency;
  3. Removing Midtrans and JSON Machine from the dependencies since it's not being used by the default existing modules.


These are the list of updates we implemented on this release version. We always waiting for the participation of users to report any errors that may be found so that we can fix them in the next release version. Your contributions and suggestions are very helpful for us in this development.

release callback validation api msql_mode qrcode barcode