arnelify-server


Namearnelify-server JSON
Version 0.6.6 PyPI version JSON
download
home_pagehttps://github.com/arnelify/arnelify-server-python
SummaryMinimalistic dynamic library which is a powerful http-server written in C and C++.
upload_time2025-02-13 06:48:16
maintainerNone
docs_urlNone
authorArnelify
requires_pythonNone
licenseNone
keywords arnelify arnelify-server-python arnelify-server
VCS
bugtrack_url
requirements cffi Nuitka setuptools wheel twine
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <img src="https://static.wikia.nocookie.net/arnelify/images/c/c8/Arnelify-logo-2024.png/revision/latest?cb=20240701012515" style="width:336px;" alt="Arnelify Logo" />

![Arnelify Server for Python](https://img.shields.io/badge/Arnelify%20Server%20for%20Python-0.6.6-yellow) ![C++](https://img.shields.io/badge/C++-2b-red) ![G++](https://img.shields.io/badge/G++-14.2.0-blue) ![Python](https://img.shields.io/badge/Python-3.11.2-blue) ![Nuitka](https://img.shields.io/badge/Nuitka-2.6.4-blue)

## ๐Ÿš€ About
**Arnelifyยฎ Server for Python** - is a minimalistic dynamic library which is a powerful http-server written in C and C++.

## ๐Ÿ“‹ Minimal Requirements
> Important: It's strongly recommended to use in a container that has been built from the gcc v14.2.0 image.
* CPU: Apple M1 / Intel Core i7 / AMD Ryzen 7
* OS: Debian 11 / MacOS 15 / Windows 10 with <a href="https://learn.microsoft.com/en-us/windows/wsl/install">WSL2</a>.
* RAM: 4 GB

## ๐Ÿ“ฆ Installation
Installing via pip:
```
pip install arnelify-server
```
## ๐ŸŽ‰ Usage
Compile library for AMD64:
```
make build_amd64
```
Compile library for ARM64:
```
make build_arm64
```
Compile & Run test:
```
make test_nuitka
```
Run test:
```
make test
```
## ๐Ÿ“š Code Examples
Configure the C/C++ IntelliSense plugin for VSCode (optional).
```
Clang_format_fallback = Google
```

IncludePath for VSCode (optional):
```
"includePath": [
  "/opt/homebrew/Cellar/jsoncpp/1.9.6/include/json",
  "${workspaceFolder}/src/cpp",
  "${workspaceFolder}/src"
],
```
You can find code examples <a href="https://github.com/arnelify/arnelify-server-python/blob/main/tests/index.py">here</a>.

| **Option**|**Description**|
|-|-|
| **SERVER_ALLOW_EMPTY_FILES**| If this option is enabled, the server will not reject empty files.|
| **SERVER_BLOCK_SIZE_KB**| The size of the allocated memory used for processing large packets.|
| **SERVER_CHARSET**| Defines the encoding that the server will recommend to all client applications.|
| **SERVER_GZIP**| If this option is enabled, the server will use GZIP compression if the client application supports it. This setting increases CPU resource consumption. The server will not use compression if the data size exceeds the value of **SERVER_BLOCK_SIZE_KB**.|
| **SERVER_KEEP_EXTENSIONS**| If this option is enabled, file extensions will be preserved.|
| **SERVER_MAX_FIELDS**| Defines the maximum number of fields in the received form.|
| **SERVER_MAX_FIELDS_SIZE_TOTAL_MB**| Defines the maximum total size of all fields in the form. This option does not include file sizes.|
| **SERVER_MAX_FILES**| Defines the maximum number of files in the form.|
| **SERVER_MAX_FILES_SIZE_TOTAL_MB** | Defines the maximum total size of all files in the form.|
| **SERVER_MAX_FILE_SIZE_MB**| Defines the maximum size of a single file in the form.|
| **SERVER_PORT**| Defines which port the server will listen on.|
| **SERVER_QUEUE_LIMIT**| Defines the maximum size of the queue on the client socket.|
| **SERVER_UPLOAD_DIR**| Specifies the upload directory for storage.|

## โš–๏ธ MIT License
This software is licensed under the <a href="https://github.com/arnelify/arnelify-server-python/blob/main/LICENSE">MIT License</a>. The original author's name, logo, and the original name of the software must be included in all copies or substantial portions of the software.

## ๐Ÿ› ๏ธ Contributing
Join us to help improve this software, fix bugs or implement new functionality. Active participation will help keep the software up-to-date, reliable, and aligned with the needs of its users.

## โญ Release Notes
Version 0.6.6 - Minimalistic dynamic library

We are excited to introduce the Arnelify Server dynamic library for Python! Please note that this version is raw and still in active development.

Change log:

* Minimalistic dynamic library
* Block processing in "on-the-fly" mode
* GZIP support
* Boost and Magic libraries have been removed
* Significant refactoring and optimizations

Please use this version with caution, as it may contain bugs and unfinished features. We are actively working on improving and expanding the server's capabilities, and we welcome your feedback and suggestions.

## ๐Ÿ”— Mentioned

* <a href="https://github.com/arnelify/arnelify-pod-cpp">Arnelify POD for C++</a>
* <a href="https://github.com/arnelify/arnelify-pod-python">Arnelify POD for Python</a>
* <a href="https://github.com/arnelify/arnelify-pod-node">Arnelify POD for NodeJS</a>
* <a href="https://github.com/arnelify/arnelify-react-native">Arnelify React Native</a>

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/arnelify/arnelify-server-python",
    "name": "arnelify-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "arnelify arnelify-server-python arnelify-server",
    "author": "Arnelify",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/05/dd/b525ad9f2e29ccbc82a241da0ec727c0f17fb20923f670fcf0f4db466636/arnelify-server-0.6.6.tar.gz",
    "platform": null,
    "description": "<img src=\"https://static.wikia.nocookie.net/arnelify/images/c/c8/Arnelify-logo-2024.png/revision/latest?cb=20240701012515\" style=\"width:336px;\" alt=\"Arnelify Logo\" />\n\n![Arnelify Server for Python](https://img.shields.io/badge/Arnelify%20Server%20for%20Python-0.6.6-yellow) ![C++](https://img.shields.io/badge/C++-2b-red) ![G++](https://img.shields.io/badge/G++-14.2.0-blue) ![Python](https://img.shields.io/badge/Python-3.11.2-blue) ![Nuitka](https://img.shields.io/badge/Nuitka-2.6.4-blue)\n\n## \ud83d\ude80 About\n**Arnelify\u00ae Server for Python** - is a minimalistic dynamic library which is a powerful http-server written in C and C++.\n\n## \ud83d\udccb Minimal Requirements\n> Important: It's strongly recommended to use in a container that has been built from the gcc v14.2.0 image.\n* CPU: Apple M1 / Intel Core i7 / AMD Ryzen 7\n* OS: Debian 11 / MacOS 15 / Windows 10 with <a href=\"https://learn.microsoft.com/en-us/windows/wsl/install\">WSL2</a>.\n* RAM: 4 GB\n\n## \ud83d\udce6 Installation\nInstalling via pip:\n```\npip install arnelify-server\n```\n## \ud83c\udf89 Usage\nCompile library for AMD64:\n```\nmake build_amd64\n```\nCompile library for ARM64:\n```\nmake build_arm64\n```\nCompile & Run test:\n```\nmake test_nuitka\n```\nRun test:\n```\nmake test\n```\n## \ud83d\udcda Code Examples\nConfigure the C/C++ IntelliSense plugin for VSCode (optional).\n```\nClang_format_fallback = Google\n```\n\nIncludePath for VSCode (optional):\n```\n\"includePath\": [\n  \"/opt/homebrew/Cellar/jsoncpp/1.9.6/include/json\",\n  \"${workspaceFolder}/src/cpp\",\n  \"${workspaceFolder}/src\"\n],\n```\nYou can find code examples <a href=\"https://github.com/arnelify/arnelify-server-python/blob/main/tests/index.py\">here</a>.\n\n| **Option**|**Description**|\n|-|-|\n| **SERVER_ALLOW_EMPTY_FILES**| If this option is enabled, the server will not reject empty files.|\n| **SERVER_BLOCK_SIZE_KB**| The size of the allocated memory used for processing large packets.|\n| **SERVER_CHARSET**| Defines the encoding that the server will recommend to all client applications.|\n| **SERVER_GZIP**| If this option is enabled, the server will use GZIP compression if the client application supports it. This setting increases CPU resource consumption. The server will not use compression if the data size exceeds the value of **SERVER_BLOCK_SIZE_KB**.|\n| **SERVER_KEEP_EXTENSIONS**| If this option is enabled, file extensions will be preserved.|\n| **SERVER_MAX_FIELDS**| Defines the maximum number of fields in the received form.|\n| **SERVER_MAX_FIELDS_SIZE_TOTAL_MB**| Defines the maximum total size of all fields in the form. This option does not include file sizes.|\n| **SERVER_MAX_FILES**| Defines the maximum number of files in the form.|\n| **SERVER_MAX_FILES_SIZE_TOTAL_MB** | Defines the maximum total size of all files in the form.|\n| **SERVER_MAX_FILE_SIZE_MB**| Defines the maximum size of a single file in the form.|\n| **SERVER_PORT**| Defines which port the server will listen on.|\n| **SERVER_QUEUE_LIMIT**| Defines the maximum size of the queue on the client socket.|\n| **SERVER_UPLOAD_DIR**| Specifies the upload directory for storage.|\n\n## \u2696\ufe0f MIT License\nThis software is licensed under the <a href=\"https://github.com/arnelify/arnelify-server-python/blob/main/LICENSE\">MIT License</a>. The original author's name, logo, and the original name of the software must be included in all copies or substantial portions of the software.\n\n## \ud83d\udee0\ufe0f Contributing\nJoin us to help improve this software, fix bugs or implement new functionality. Active participation will help keep the software up-to-date, reliable, and aligned with the needs of its users.\n\n## \u2b50 Release Notes\nVersion 0.6.6 - Minimalistic dynamic library\n\nWe are excited to introduce the Arnelify Server dynamic library for Python! Please note that this version is raw and still in active development.\n\nChange log:\n\n* Minimalistic dynamic library\n* Block processing in \"on-the-fly\" mode\n* GZIP support\n* Boost and Magic libraries have been removed\n* Significant refactoring and optimizations\n\nPlease use this version with caution, as it may contain bugs and unfinished features. We are actively working on improving and expanding the server's capabilities, and we welcome your feedback and suggestions.\n\n## \ud83d\udd17 Mentioned\n\n* <a href=\"https://github.com/arnelify/arnelify-pod-cpp\">Arnelify POD for C++</a>\n* <a href=\"https://github.com/arnelify/arnelify-pod-python\">Arnelify POD for Python</a>\n* <a href=\"https://github.com/arnelify/arnelify-pod-node\">Arnelify POD for NodeJS</a>\n* <a href=\"https://github.com/arnelify/arnelify-react-native\">Arnelify React Native</a>\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Minimalistic dynamic library which is a powerful http-server written in C and C++.",
    "version": "0.6.6",
    "project_urls": {
        "Homepage": "https://github.com/arnelify/arnelify-server-python"
    },
    "split_keywords": [
        "arnelify",
        "arnelify-server-python",
        "arnelify-server"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a3711d0c45690b4a016e17ea21cda94b13855d93e68294c0eed1c5ac9f42a99d",
                "md5": "9eb08bf2138934ff697f93cbead000c5",
                "sha256": "12aa5c29b9f7ea7c9d6b0b2764cea2e05d845fd94d675e0960cf8975fac7448a"
            },
            "downloads": -1,
            "filename": "arnelify_server-0.6.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9eb08bf2138934ff697f93cbead000c5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 232411,
            "upload_time": "2025-02-13T06:48:14",
            "upload_time_iso_8601": "2025-02-13T06:48:14.676010Z",
            "url": "https://files.pythonhosted.org/packages/a3/71/1d0c45690b4a016e17ea21cda94b13855d93e68294c0eed1c5ac9f42a99d/arnelify_server-0.6.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "05ddb525ad9f2e29ccbc82a241da0ec727c0f17fb20923f670fcf0f4db466636",
                "md5": "aa14295b34f9f8349ed7a46efbfe3276",
                "sha256": "b579f597eb0eb682d1bdb3f0eb4889285f66e735b40b45cd163635a3612d2475"
            },
            "downloads": -1,
            "filename": "arnelify-server-0.6.6.tar.gz",
            "has_sig": false,
            "md5_digest": "aa14295b34f9f8349ed7a46efbfe3276",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 231561,
            "upload_time": "2025-02-13T06:48:16",
            "upload_time_iso_8601": "2025-02-13T06:48:16.508677Z",
            "url": "https://files.pythonhosted.org/packages/05/dd/b525ad9f2e29ccbc82a241da0ec727c0f17fb20923f670fcf0f4db466636/arnelify-server-0.6.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-13 06:48:16",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "arnelify",
    "github_project": "arnelify-server-python",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "cffi",
            "specs": []
        },
        {
            "name": "Nuitka",
            "specs": []
        },
        {
            "name": "setuptools",
            "specs": []
        },
        {
            "name": "wheel",
            "specs": []
        },
        {
            "name": "twine",
            "specs": []
        }
    ],
    "lcname": "arnelify-server"
}
        
Elapsed time: 1.24650s