licant


Namelicant JSON
Version 1.15.0 PyPI version JSON
download
home_pagehttps://github.com/mirmik/licant
Summarylicant make system
upload_time2023-04-17 08:30:56
maintainer
docs_urlNone
authorSorokin Nikolay
requires_python
licenseMIT
keywords testing make
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Licant

Licant is designed to build small modular projects with a complex dependency tree.

What is it?
-----------
Initially Likant was written as a system for assembling code for projects on microcontrollers.

The core of the Lycant system is a make-like assembly tree solver written in python.

But, the main feature of Licant in the system of modules.
The Likant paradigm consists in the description of a project by a set of modules that link to each other. Connecting the module automatically tightens the connection of dependent modules.

Modules can have several implementations, which allows flexible configuration of the project. (For example, you can change the initialization code of the microcontroller or the implementation of the input-output system simply by replacing the implementation of the corresponding module).

One of the goals of the project is to work with submodules located in remote directories. The library subsystem allows a project to refer to modules located in remote directories, which allows several projects to use the same code.

Installing
----------

```sh
python3 -m pip install licant
```

HelloWorld
----------
```python
#!/usr/bin/env python

import licant.make as lmake
import licant

lmake.source("a.txt")
lmake.copy(tgt = "build/b.txt", src = "a.txt")
lmake.copy(tgt = "build/c.txt", src = "build/b.txt")

print("licant targets list:" + str(licant.default_core().targets))

licant.ex(default = "build/c.txt")
```

Example projects
----------------
[https://github.com/mirmik/nos](https://github.com/mirmik/nos)  
[https://github.com/mirmik/igris](https://github.com/mirmik/igris)  
[https://github.com/mirmik/genos](https://github.com/mirmik/genos)  



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mirmik/licant",
    "name": "licant",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "testing,make",
    "author": "Sorokin Nikolay",
    "author_email": "mirmikns@yandex.ru",
    "download_url": "https://files.pythonhosted.org/packages/04/58/be05fc0d880bd33e4c1bd626e1828c744b02a73c28a860f6c75a72d1133a/licant-1.15.0.tar.gz",
    "platform": null,
    "description": "# Licant\n\nLicant is designed to build small modular projects with a complex dependency tree.\n\nWhat is it?\n-----------\nInitially Likant was written as a system for assembling code for projects on microcontrollers.\n\nThe core of the Lycant system is a make-like assembly tree solver written in python.\n\nBut, the main feature of Licant in the system of modules.\nThe Likant paradigm consists in the description of a project by a set of modules that link to each other. Connecting the module automatically tightens the connection of dependent modules.\n\nModules can have several implementations, which allows flexible configuration of the project. (For example, you can change the initialization code of the microcontroller or the implementation of the input-output system simply by replacing the implementation of the corresponding module).\n\nOne of the goals of the project is to work with submodules located in remote directories. The library subsystem allows a project to refer to modules located in remote directories, which allows several projects to use the same code.\n\nInstalling\n----------\n\n```sh\npython3 -m pip install licant\n```\n\nHelloWorld\n----------\n```python\n#!/usr/bin/env python\n\nimport licant.make as lmake\nimport licant\n\nlmake.source(\"a.txt\")\nlmake.copy(tgt = \"build/b.txt\", src = \"a.txt\")\nlmake.copy(tgt = \"build/c.txt\", src = \"build/b.txt\")\n\nprint(\"licant targets list:\" + str(licant.default_core().targets))\n\nlicant.ex(default = \"build/c.txt\")\n```\n\nExample projects\n----------------\n[https://github.com/mirmik/nos](https://github.com/mirmik/nos)  \n[https://github.com/mirmik/igris](https://github.com/mirmik/igris)  \n[https://github.com/mirmik/genos](https://github.com/mirmik/genos)  \n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "licant make system",
    "version": "1.15.0",
    "split_keywords": [
        "testing",
        "make"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7909e35168abcd3db1ec264a19fc2614d578b0a82190cfb52436f4df81f00747",
                "md5": "132f4aff4a7e7e8a35b5ae0c7f653e74",
                "sha256": "b82b853efa55cf61e4bd40bbf88627d62aa4057504ee523900f9264121430ff0"
            },
            "downloads": -1,
            "filename": "licant-1.15.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "132f4aff4a7e7e8a35b5ae0c7f653e74",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 29174,
            "upload_time": "2023-04-17T08:30:54",
            "upload_time_iso_8601": "2023-04-17T08:30:54.456378Z",
            "url": "https://files.pythonhosted.org/packages/79/09/e35168abcd3db1ec264a19fc2614d578b0a82190cfb52436f4df81f00747/licant-1.15.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0458be05fc0d880bd33e4c1bd626e1828c744b02a73c28a860f6c75a72d1133a",
                "md5": "efb149dd95b98c888f40560773626176",
                "sha256": "8c57ad25585f966d38805c4bff06e77cc440bb739c9e4da9be664a9ee86106f5"
            },
            "downloads": -1,
            "filename": "licant-1.15.0.tar.gz",
            "has_sig": false,
            "md5_digest": "efb149dd95b98c888f40560773626176",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 25304,
            "upload_time": "2023-04-17T08:30:56",
            "upload_time_iso_8601": "2023-04-17T08:30:56.320711Z",
            "url": "https://files.pythonhosted.org/packages/04/58/be05fc0d880bd33e4c1bd626e1828c744b02a73c28a860f6c75a72d1133a/licant-1.15.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-17 08:30:56",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "mirmik",
    "github_project": "licant",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "licant"
}
        
Elapsed time: 0.06983s