Releases: ApiLogicServer/ApiLogicServer-src
Date defaults, Windows Project Start Failure bug fix
This release is available via pip
and Docker.
Features
Join Support for the RowDictMapper
This provides simplified support for accessing join fields.
Important: Breaking Change
This change affects existing projects if you want to use it:
- Install the revised
RowDictMapper
: rebuild the sample project, and copy theintegration/system/RowDictMapper
to your project - Update your RowDictMapper classes as shown below -- the import statement, and the additional parameter on the
__init__
function.
from logic_bank.exec_row_logic.logic_row import LogicRow
class OrderShipping(RowDictMapper):
def __init__(self, logic_row: LogicRow = None):
LogicBank defaults for Date, DateTime
This version contains a new version of LogicBank that provides defaults for CURRENT_TIMESTAMP
.
Bug Fixes
This release addresses many issues. The first issue is critical, the others less so.
-
Windows projects fails to start with Config issue: a config issue in the Windows projects'
config
directory -
Behave Tests on Sample Apps show Optimistic Locking Failures: the Behave tests were improperly coded under the impression that checksum values are platform independent. This is an error in the test coding, not the Optimistic Locking functionality.
-
ApiLogicServer rebuild-from-database fails if no yaml exists: this is now fixed. If you have not altered your yaml, just delete it for a complete rebuild. (Formerly, you had to rename the merge file.)
Internal Issues
The following affect API Logic Server internal development, that is, building and testing API Logic Server.
- Build and Test platforms: many internal changes so that the Build and Test procedure runs on all 3 platforms. More info TBD.
Bug Fix for Sampi_AI
Fixes an issue in sample_ai, described here.
You do not need to re-install if you are not using this sample.
Docker $Path
This release fixes several doc formatting issues for samples, and issues 41 - Docker Path and 40.
Bug Fix - Name Collision
AI Sample
Tutorial Improvements
This release (pip docker) introduces changes to the Tutorial.
- The sample project is now created without customization
- The Tutorial reviews the un-customized sample
- Use this to get understand the level of initial automation for your own projects
- The Tutorial then shows a command to install the customizations, and reviews them
OptLocking Fix, cleanup
This release is available via pip, and docker. Changes summarized below.
Optimistic Locking Bug Fix
This release fixes an issue wherein the ignored
option was not honored.
Substantial cleanup of created project
This release introduces several changes to improve the structure of the created project:
- add
config
directory - moved root file
utils.py
->api/api_utils.py
- move
row_to_dict
fromutils
tointegration.system.RowDictMapper
Simplified startup, allocation bug fix
Released 1/7/2024 to pip and docker hub.
Simplified Getting Started
A number of changes designed to make getting started clear and easy:
- For VSCode users, the
venv
is now defaulted. - Fewer messages on
ApiLogicServer create
- For VSCode users, first project open suggests to click F5 to run
- The Sample / Tutorial allocation now has quick ways to find key customization examples by searching the sample for #als
Allocation Fix
A bug was fixed in allocation (and auditing).
Quoted Column Names, simpler venv
This release is available on pip and docker.
Quoted Column Names
Oracle testing has revealed the need for quoted column names. This is now supported with an ApiLogicServer create --quote
option.
For more information, click here.
Simplified venv
handling
By far, our most common support request is setting up the venv
. While this is a familiar standard for experienced Python users, new Python users encounter challenges.
This release defaults a project's venv
to the ApiLogicServer install venv
, for VSCode only. The result is:
- Create a project (e.g.,
ApiLogicServer create --project_name=ApiLogicProject --db_url=nw
- Open it in VSCode
- Press F5 to run
For more information, click here.
Application Integration, Bug Fix
10.0.1 fixes a minor bug that mistakenly required python 3.11. Release Notes for 10.00.00 are repeated below...
Application Integration
This release introduces a new suite of features for Application Integration:
- Ability to publish and consume Kafka Messages
- Services to convert dicts to SQLAlchemy rows, and vice version (eg, to create/consume Kafka json string payloads)
These are all demonstrated in this running demo, providing a simple way to explore this functionality.
Data Type Fixes
We have introduced a number of fixes for esoteric datatypes. Some fail in the Admin app, but all appear to work for the api.