Skip to content

Conversation

@ochui
Copy link
Member

@ochui ochui commented Nov 27, 2025

This pull request makes significant changes to modernize, rebrand, and simplify the project, transitioning from "SHARQ Server" to "Flowdacity Queue (FQ) Server". The update removes legacy configuration, CI/CD, and documentation files, introduces new build and test workflows using modern Python tooling, and updates naming and references throughout the codebase and documentation to reflect the new project identity. The main themes are project rebranding, CI/CD modernization, and cleanup of legacy/unused files.

Project rebranding and documentation updates:

  • Updated all references from "SHARQ" to "Flowdacity Queue (FQ)" or "fq", including in README.md, configuration files, and documentation links. Installation and usage instructions now reference fqserver and fq.conf instead of sharqserver and sharq.conf. [1] [2]
  • Changed the included configuration file in the package from sharq.conf to fq.conf in MANIFEST.in.

Modern Python tooling and CI/CD improvements:

  • Added a new GitHub Actions workflow (.github/workflows/test.yml) for running tests and collecting coverage using Python 3.12, uv, and pytest, with results uploaded to Codecov.
  • Specified Python 3.12 as the required version in .python-version.
  • Updated the Makefile to use modern Python build tools (uv, build, twine), improved test and publish targets, and added commands for managing a Redis container via Docker Compose.

Cleanup and removal of legacy/unused files:

  • Removed legacy CI/CD files including Jenkinsfile, ci/Dockerfile, ci/config.yml, and ci/entrypoint.sh. [1] [2] [3] [4]
  • Deleted old pre-commit and secrets scanning configuration files: .pre-commit-config.yaml, .secrets.baseline. [1] [2]
  • Removed outdated changelog and catalog files: CHANGELOG, and several catalog-*.yaml files. [1] [2] [3] [4] [5] [6] [7] [8]

New entrypoint for modern deployment:

  • Added a new asgi.py file as the ASGI application entrypoint for the FQ server, supporting modern Python async servers like Uvicorn and Hypercorn.

Replaces the previously included configuration file with an updated name,
ensuring the correct config is distributed with the package.
Replaces the legacy Flask/Gevent-based SharQ Server with an async implementation using Starlette and the Flowdacity Queue (FQ) core. Updates all references, configs, docs, and tests to reflect the new naming and async API. Modernizes project setup with pyproject.toml and removes obsolete files for Flask, Gunicorn, and uWSGI. Prepares the codebase for improved performance, extensibility, and Python 3.12 compatibility.
Moves queue initialization to the async startup hook, ensuring any asynchronous setup completes before background tasks begin. Updates configuration defaults for clarity and disables Redis clustering by default.
Modernizes the test suite to use async test clients and HTTPX for improved compatibility with async frameworks. Introduces a Makefile with common dev commands and adds explicit dev dependency groups for testing tools. Enhances local and CI development workflow by improving test isolation, coverage options, and environment reproducibility.
Sets the default job requeue limit to -1 to indicate no limit,
makes available classes explicit in the package, and deletes
an obsolete configuration file to reduce confusion and
maintenance overhead.
Introduces an automated workflow to run tests with coverage on pushes and pull requests.
Configures service dependencies and coverage upload to Codecov.
Improves project packaging and test configuration for consistency and maintainability.
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Enables containerized development and deployment using Docker and
docker-compose, including a base Python image, app and Redis services,
and unified configuration for consistent local and production setups.
Facilitates easier setup, orchestration, and environment management.
@ochui ochui merged commit fd175b3 into main Nov 27, 2025
3 checks passed
@ochui ochui deleted the migration branch November 27, 2025 22:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants