Skip to main content

Changelog

All notable changes to this project is documented in this file.

2024.3.0 - 2024-09-09

The hallmark changes introduced in 2024.3.0 are:

Company Grouping

Upgrade to PostgreSQL 16

This version includes upgrades for the SSH-client, supporting new ciphers while recursively re-negotiating otherwise deprecated ones to ensure backwards compatibility. It also solves a few issues with access 2.4 such as the lack of the "disconnection" attribute, the faulty error response format from the /orders endpoint, among other things.

Fixed

  • FIB-11: Monitoring labels do not create a monitoring job in prometheus when created by copy device
  • FIB-281: Access Billing export handler overwrites decimal separator from export method
  • FIB-294: Invalid Agreement state when saving an agreement after running an Operation
  • FIB-33: Attributes in search conditions causes product/extended LIST-requests to fail
  • FIB-357: Pagination dropdown list gets hidden under box
  • FIB-409: No indication that a SSH session has been disconnected by remote server
  • FIB-446: Changing Ticket-type name breaks Ticket widget on address
  • FIB-493: Behaviour when restarting agreements using ONAPI 2.4 MODIFY orders
  • FIB-504: Page crashes when pressing backspace on empty Flow-Field on Service
  • FIB-506: Exporting tickets fails with SQL error
  • FIB-507: Importing tickets fails with error parsing JSON
  • FIB-550: ONAPI 2.4 missing mandatory keys when opening single access
  • FIB-551: ONAPI 2.4 missing mandatory keys when listing all accesses
  • FIB-564: Order Events on address fetches orderlogs without condition values
  • FIB-610: Database connection not closed after performing UPDATE_AGREEMENT_SETTINGS
  • FIB-611: Issues with Python SSH client library
  • FIB-612: Python packages in globalshared are not refreshed after save
  • FIB-613: CHANGE_PRODUCT resets all settings to default even if they have been manually created during ADD_SERVICE
  • FIB-625: Alerts not closed correctly
  • FIB-630: Unable to login through SSH on newer devices in methods
  • FIB-641: Include installation and activation portals in release process
  • FIB-666: Remove plpython dependency
  • FIB-670: Fix initial import package path
  • FIB-679: Order requests in ON-API 2.4 does not always respond according to specification
  • FIB-683: Empty response from address/address/flowaccess
  • FIB-687: Invalid date i access
  • FIB-698: Pagination incorrectly displayed under catalogue/product
  • FIB-701: Attempting to update a scheduler.setting throws Invalid ID
  • FIB-708: Adressimport fungerar inte

2024.2.0 - 2024-06-14

Release 2024.2.0 marks a significant milestone. As mentioned in the changelog of the last release, we've now upgraded all of our components to Java version 17. We've moved to Elasticsearch 8, Python 3.11.

The result of this release might not be too visible to the end user beyond improved search functionality (you can now finally search for organizations and users) and the ability to utilize newer functionality in Python (like using Exception Groups to clean up your methods error handling) but it's a monumental step forward in terms of security of the platform and modernization of the stack.

In the coming releases, we'll maintain focus on fixing bugs and also delivering features that will enable you to import methods from git repositories and allow multiple network operators to share a Flow instance.

Added

  • FIB-318: Add support in DataModelFetcher for SECRET and SECRETJSON columns
  • FIB-538: Document how flow-cli hooks work in user guide

Changed

  • FIB-480: Upgrade JRE version to 17+
  • FIB-403: Upgrade EOL Alpine image in containers
  • FIB-404: Upgrade Python version in scheduler

Fixed

  • FIB-610: Database connection not closed after performing UPDATE_AGREEMENT_SETTINGS
  • FIB-611: Issues with Python SSH client library
  • FIB-555: User get permission denied when fetching code for views
  • FIB-12: Flow Access can not fetch access list if any population attribute is null
  • FIB-84: ON-API 2.4 calls to get one access does not return streetLittera values
  • FIB-496: Missing to the set Type on a Product Setting breaks opening accesses in Access/ONAPI.
  • FIB-305: Agreements are billed twice on the same day in billing exports when doing a product change or price item changes
  • FIB-534: Spelling error on import failure
  • FIB-536: Metabase migrations fails on v0.48.4
  • FIB-539: flow-cli installer fails to connect to remote database hosts
  • FIB-567: Method return data gets mixed up between concurrent runs
  • FIB-613: CHANGE_PRODUCT resets all settings to default even if they have been manually created during ADD_SERVICE
  • FIB-619: Access 2.3 Search Access undefined
  • FIB-620: Access 2.4 Cannot handle duplicate services
  • FIB-609: Flow Base Export attributes broken
  • FIB-456: Billing export method broken

2024.1.1 - 2024-05-16

The 2024.1.1 release finalizes the improvements made in the 2024.1.0 release by further stabilizing and increasing the security of the scheduler through a complete rewrite of the method execution process.

With the scheduler now more stable and secure, we can look forward to the upcoming 2024.2.0 release, which will include upgrades to modernize versions of Python, Elasticsearch, and Java.

Beyond that, there have been some minor changes and fixes to the CLI.

Changed

  • flow-cli: Use deepstream image hosted by Bitvis.
  • flow-cli: Pin metabase to version 0.47.4.

Fixed

  • flow-cli: Exclude template hooks from being sourced.
  • FIB-567: Complete re-write of the method execution in flow-scheduler.
  • FIB-610: Solved database connection pool exhaustion in product.

2024.1.0 - 2024-02-05

This release contains several fixes to access and the ON-API behavior making the life as a service provider easier. The 2023.5.0 release had a broken flow-scheduler service due to the use of Python's subinterpreter C-API through JEP. Many of the bundled Python dependencies are not designed with subinterpreters in mind. The 2023.5.0 release attempted to fix this by using JEP's shared modules concept, but this was not enough. This release is instead moving away from using subinterpreters entirely and instead uses a shared interpreter. Isolation between methods are a bit different with this approach and all our tests that reproduced the issues in the past release are now passing.

This release is the last release that will support Python 3.7 and Java 8. We are currently working on upgrading all our base images, used Java version, Python version to 3.11 and Elasticsearch version to 8.0. This will be a major improvement for Flow and is a step in our work to modernize the stack.

The move to Elasticsearch 8.0 might introduce breaking changes for some Flow users who have custom Elasticsearch queries. The API should largely be the same, but we recommend advanced users to read the following migration guides already now: Elasticsearch 7.0 migration guide and Elasticsearch 8.0 migration guide.

Added

  • flow-cli: Add docker_login_hook

Changed

  • FIB-488: Use SharedInterpreter instead of SubInterpreter
  • FIB-54: Null spReference in Ticket in Access is now treated as empty string
  • FIB-36: Option82 string searched for regardless if it is on a SAP lag/pw format or not
  • FIB-444: Allow passing ticket creator null

Fixed

  • FIB-84: Check if fieldmatch was made on streetLittera which is correct otherwise streetLitteral
  • FIB-388: 'createdBy' is set by the attribute if exist otherwise the creating user.
  • FIB-439: Send correct response when trying to activate a non-existing service.
  • FIB-407: Fix OrdersHandler getOrders sql order_id and adds test for order event translation
  • FIB-425: Port speed columns to be able to handle 10 Gbps
  • FIB-479: Request to inventory/device/discovery failing when device already has ports.
  • FIB-384: Throws exception when port do not exists when using inventory/device/port
  • FIB-308: Add trailing slash to api documentation
  • FIB-424: LIST for endpoint address/address/extended includes Labels, Outlets and Agreements.
  • FIB-84: Check littera for both null and empty string
  • FIB-388: 'createdBy' is not ignored anymore when creating tickets via ON-API.
  • FIB-484: Added Flow log to failed external logins
  • FIB-485: Able to display address and agreement in Access when agreement setting is null.
  • FIB-401: SUSPEND operation scheduled wrongly when using ON-Api 2.4
  • FIB-57: A valid response when activating order fails.
  • FIB-328: Correctly map Interval values when loading from SQL.

2023.5.0 - 2023-11-23

This release marks the first release of the Fiber Flow project using Bitvis ABs infrastructure. Many hours of work has been put into this release to get a completely new integration pipeline in place, including a higher level of automation, testing and quality assurance than ever before. Content wise, the release is somewhat modest, but the quality assurance and automation is a huge step forward for the project and will allow for a much more rapid development going forward.

The recent updates to the project include significant integrations and enhancements, primarily focusing on an integrated and automated approach to static code analysis, vulnerability scanning, and automated integration testing, which will greatly improve code quality and continuous integration processes. Function wise, the flow-scheduler has been updated with out-of-the-box support for scipy and numpy and also includes stability fixes for Python libraries using the Python C-API.

From here, the project will focus on moving the project to a more modern and up to date stack, including a move to a more modern frontend framework, and a move to a more modern backend framework. The project will also focus on improving the overall quality of the codebase, and improving the overall user experience, including multi language support, and a more modern and intuitive user interface. The approach in which methods are created and managed will also be revised to allow for a more robust life-cycle of methods.

Added

  • Hooks & example docker login hook to flow-cli
  • Made disabling IPv6 optional in flow-cli
  • Make docker registry configurable in flow-cli
  • SonarCloud integration
  • Bitbucket pipelines integration
  • Annotation processor for plugin discovery, resolving an issue with logging
  • CSS build process improvements

Changed

  • Error codes in various services
  • Issuer to hex value auth.identifier value if set
  • Order Events widget sortable. Changed default sorting to timestamp desc.
  • Pin flow-framework version, update release cycle
  • Lowered Z-index for service toggle button
  • Docker and pipeline configurations to be more generic
  • Change Product operation and related SQL updates
  • Saving of empty code blocks are now prohibited

Fixed

  • TicketController and TicketCommentController does not log CREATE and UPDATE operations
  • Old agreement settings not removed during product change, leaving duplicates
  • GUI scrollbar always visible even though there is nothing to scroll
  • Methods using requests/charset_normalizer fails
  • Endpoint catalogue/operationoutlet is not registered in Auth, unable to assign rights for it on a role
  • Folder expansion for method search
  • Malformed links to products when administrating services
  • Key error causing rendering issues
  • Missing ProductSetting.value insert
  • Stacktrace visibility for non-developers

Removed

  • Jenkinsfile and related configurations
  • Findbugs plugin
  • Unnecessary imports and outdated configurations

2023.2 - 2023-06-09

This release primarily focuses on security enhancements and bug fixes to ensure the stability and reliability of the system. While no major problems were encountered, this changelog will adhere to our policy of not disclosing specific details regarding security-related fixes.

2023.1 - 2023-05-30

This release prepares Method loading from file system, adds support for importing interface methods and adds support for importing events from file system. This is the foundation for the ability to import and maintain methods from git repositories.

Notable bug fixes:

Resolves the infamous OrderLog issue where the status of deleted order couldn't be retrieved. Some undisclosed security issues have been fixed.

Added

  • Add ability to fetch relation extended persons based on relation id and parameters on customer address relations
  • Add addresses to customer token
  • Add javascript libraries for creating views in Flow.
  • Add repository-s3 plugin for elastic search backups
  • Add import of interface methods
  • Add description to role, product and product group
  • Add developer namespace
  • Add boolean input type to FlowForm

Changed

  • Allow multiple types on indices in flow-search
  • Change JDBC version to 42.2.1
  • Check if monitoring is enabled before starting device status timer
  • Clean up intermediate directory to avoid getting old dependencies
  • Close connections on openObject exception in device/extended
  • Fetch health check as singleton to not register multiple RPC endpoints
  • Exclude fields from triggering restart-operation on MODIFY-orders
  • Security updates for Access
  • Read which packages to import from scheduler config
  • Import events from file system
  • Ability to import method repository into Flow
  • Move own user configuration to auth/profile
  • Only add provider once, not once per role
  • Set updated when validating token, only keep token alive if it's used at least once a week
  • Only load Agreements if Flow-Product is expected to exist
  • Mock order from OrderLog if no operation is available to generate order from (deactivate)
  • Moved TOTP endpoint to profile and updated methods to reflect changes in 2FA management
  • Create API spec and endpoint for customer agreements
  • List facilities based on utilities/outlets
  • Unable to search by option82 accesses with non numeric accessId in Access

Fixed

  • Fix so that Option82 doesn't crash when accessId is not a number
  • Fix Large configuration files makes the Flow client timeout
  • Fix Delete function should return deleted data
  • Fix that inventory/software/label create does not throw expected error
  • Fix that inventory/model/software create returns wrongly formatted json
  • Blank request to CREATE address/outlet creates an invalid outlet