fw-gear


Namefw-gear JSON
Version 0.2.1 PyPI version JSON
download
home_pageNone
SummaryFlywheel Gear Tools
upload_time2024-10-22 21:07:51
maintainerNone
docs_urlNone
authorFlywheel
requires_python<4.0,>=3.8
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # FW Gear

**fw-gear** is a python package maintained by
[Flywheel](https://flywheel.io) It provides a set of modules for facilitating Flywheel
gears development.

## Installation

```bash
pip install fw-gear
```

## Documentation

The documentation for the **fw-gear** can be found
[here](https://flywheel-io.gitlab.io/scientific-solutions/lib/fw-gear/specs/).

## Contributing

### Building

The dependency and virtual environment manager for the gear toolkit is [poetry](https://python-poetry.org/).

```bash
poetry install
```

or

```bash
poetry install -E all
```

to install with extras.

### Testing, Linting, Building doc

Linting, Testing and Documentation building are all done using `pre-commit`.

After installing poetry, the `pre-commit` command will be installed.
Make sure pre-commit hooks are installed by running
either `poetry run pre-commit install` or from within
the poetry shell `pre-commit install`.
After hooks are installed, they will
automatically be run on each `git commit`, they can all be skipped by
running `git commit --no-verify` or
specific hooks can be skipped by setting
the environmental variable, ex. `SKIP=test:pre-commit:pytest git commit`.

Individual hooks can also be run independently.
For example, to build sphinx-doc, you can
run `pre-commit run publish:doc:test`,
or to run black on all
files: `pre-commit run test:flywheel-lint -a`.
For a list of all hooks, view the [pre-commit-config](./.pre-commit-config.yaml).

### Managing dependencies

To add new dependencies to this repo, please use [poetry](https://python-poetry.org/)
and to follow the below steps:

```bash
# Install my-package:
poetry add my-package
# or install my-package as part of the required packages for development (e.g. pytest):
poetry add my-package --dev
# Sync poetry.lock
poetry lock
```

### Building and releasing

#### Local building

To build the project locally and verify if the build was successful, you can run

```bash
poetry build --format wheel
twine check dist/*.whl
```

#### Versioning and project information

The `pyproject.toml` file has replaced the usual `setup.py` in this
repository and contains information on contributers, maintainers,
project description, project URLs, and project version.
In order to change any information on the project,
it must be changed in the `pyproject.toml`, file.
Documentation for this file can be
found [here](https://python-poetry.org/docs/pyproject/),
and information on dependency version specification
syntax can be found [here](https://python-poetry.org/docs/dependency-specification/)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "fw-gear",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "Flywheel",
    "author_email": "support@flywheel.io",
    "download_url": null,
    "platform": null,
    "description": "# FW Gear\n\n**fw-gear** is a python package maintained by\n[Flywheel](https://flywheel.io) It provides a set of modules for facilitating Flywheel\ngears development.\n\n## Installation\n\n```bash\npip install fw-gear\n```\n\n## Documentation\n\nThe documentation for the **fw-gear** can be found\n[here](https://flywheel-io.gitlab.io/scientific-solutions/lib/fw-gear/specs/).\n\n## Contributing\n\n### Building\n\nThe dependency and virtual environment manager for the gear toolkit is [poetry](https://python-poetry.org/).\n\n```bash\npoetry install\n```\n\nor\n\n```bash\npoetry install -E all\n```\n\nto install with extras.\n\n### Testing, Linting, Building doc\n\nLinting, Testing and Documentation building are all done using `pre-commit`.\n\nAfter installing poetry, the `pre-commit` command will be installed.\nMake sure pre-commit hooks are installed by running\neither `poetry run pre-commit install` or from within\nthe poetry shell `pre-commit install`.\nAfter hooks are installed, they will\nautomatically be run on each `git commit`, they can all be skipped by\nrunning `git commit --no-verify` or\nspecific hooks can be skipped by setting\nthe environmental variable, ex. `SKIP=test:pre-commit:pytest git commit`.\n\nIndividual hooks can also be run independently.\nFor example, to build sphinx-doc, you can\nrun `pre-commit run publish:doc:test`,\nor to run black on all\nfiles: `pre-commit run test:flywheel-lint -a`.\nFor a list of all hooks, view the [pre-commit-config](./.pre-commit-config.yaml).\n\n### Managing dependencies\n\nTo add new dependencies to this repo, please use [poetry](https://python-poetry.org/)\nand to follow the below steps:\n\n```bash\n# Install my-package:\npoetry add my-package\n# or install my-package as part of the required packages for development (e.g. pytest):\npoetry add my-package --dev\n# Sync poetry.lock\npoetry lock\n```\n\n### Building and releasing\n\n#### Local building\n\nTo build the project locally and verify if the build was successful, you can run\n\n```bash\npoetry build --format wheel\ntwine check dist/*.whl\n```\n\n#### Versioning and project information\n\nThe `pyproject.toml` file has replaced the usual `setup.py` in this\nrepository and contains information on contributers, maintainers,\nproject description, project URLs, and project version.\nIn order to change any information on the project,\nit must be changed in the `pyproject.toml`, file.\nDocumentation for this file can be\nfound [here](https://python-poetry.org/docs/pyproject/),\nand information on dependency version specification\nsyntax can be found [here](https://python-poetry.org/docs/dependency-specification/)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Flywheel Gear Tools",
    "version": "0.2.1",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7d0c519edc5003290e213c1c4808730b1f9fdf92d74d89af6c2db276bdf1ec94",
                "md5": "fac47bae929566ddaf7c54c18aedebb0",
                "sha256": "e1ad24bfdc89127657c681ed87b6e3f1926671631531157058c7644052a7d7c6"
            },
            "downloads": -1,
            "filename": "fw_gear-0.2.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fac47bae929566ddaf7c54c18aedebb0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.8",
            "size": 35579,
            "upload_time": "2024-10-22T21:07:51",
            "upload_time_iso_8601": "2024-10-22T21:07:51.694595Z",
            "url": "https://files.pythonhosted.org/packages/7d/0c/519edc5003290e213c1c4808730b1f9fdf92d74d89af6c2db276bdf1ec94/fw_gear-0.2.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-22 21:07:51",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "fw-gear"
}
        
Elapsed time: 0.41211s