semvec/pypi-packages huggingface dataset:
release-by-changelog 0.2.3
Release a new version of a software based on CHANGELOG.md file.
Requires Python: >=3.11

# Release by Changelog

[![Pipeline](https://lab.frogg.it/swepy/release-by-changelog/badges/main/pipeline.svg)](https://lab.frogg.it/swepy/release-by-changelog/-/pipelines?ref=main)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)


Release a new version of a software based on CHANGELOG.md file.

Detect the latest version in the CHANGELOG.md file and create a new release in the 
repository. 

Release by Changelog rely on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) 
format and [Semantic Versioning](https://semver.org/spec/v2.0.0.html), following those 
two norms is required.

## Installation

```bash
pip install --upgrade pip
pip install release-by-changelog
```

## Usage

In a Gitlab CI pipeline, you can use the following command to release a new version of
your software based on the CHANGELOG.md file.

```bash
release-by-changelog
```

It's recommended to add a `rules` section to run this command only on the default 
branch.

Here is an example of a `.gitlab-ci.yml` file using `release-by-changelog`:

```yaml
release:
    stage: deploy
    script:
        - pip install release-by-changelog 
        - release-by-changelog
    rules:
        -   if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
```

`release-by-changelog` will read the CHANGELOG.md file and create a new tag based on the
latest version found in the file. The release will be pushed to the repository. 

`release-by-changelog` rely on the following predefined CI/CD variables to authenticate 
with the GitLab API:

- `CI_PROJECT_ID`: Used to identify the project,
- `CI_COMMIT_SHA`: Used to identify the reference,
- `CI_JOB_TOKEN`: Used to authenticate with the GitLab API.
- `CI_SERVER_HOST`: Used to identify the GitLab host.

### Local usage

You can also use this command locally to release a new version of your software.

```bash
release-by-changelog --token <token> <project> <ref>
```

* project: Path or id on host. [required]
* ref: Can be a branch, tag, or commit SHA. [required]

The token is required to authenticate with the GitLab API.
You can authenticate with the GitLab API in several ways:

- [OAuth 2.0 tokens](https://docs.gitlab.com/ee/api/rest/#oauth-20-tokens)
- [Personal access tokens](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html)
- [Project access tokens](https://docs.gitlab.com/ee/user/project/settings/project_access_tokens.html)
- [Group access tokens](https://docs.gitlab.com/ee/user/group/settings/group_access_tokens.html)

### Using environment variables

You can also use environment variables to avoid passing the token each time. A token
passed as an argument will always take precedence over the environment variable.

```bash
export PRIVATE_TOKEN=<token>
release-by-changelog <project> <ref>
```
docx2latex 0.0.4
convert docx file to html code including latex linear equation
Requires Python: >=3.6

# docx2latex
Having function for convert docx to html and include feature of reading latex linear equations or Math equations


## Installation

Install using pip:
`pip install docx2latex`

## Usage

Import the `Document` class from `docx2latex`:


#Having two function 
- get_html_code() 
- get_text()

```python
from docx2latex import Document


docx_file_path = 'myfile.docx'
obj = Document(docx_file_path)
raw_data = obj.get_html_code()
print(raw_data)
decision-tree-morfist 0.4.0
Multi-target Random Forest implementation that can mix both classification and regression tasks.
Requires Python: >=3.8

# morfist: mixed-output-rf
Multi-target Random Forest implementation that can mix both classification and regression tasks.

Morfist implements the Random Forest algorithm (Breiman, 2001)
with support for mixed-task multi-task learning, i.e., it is possible to train the model on any number
of classification tasks and regression tasks, simultaneously. Morfist's mixed multi-task learning implementation follows that proposed by Linusson (2013). 

* [Breiman, L. (2001). Random forests. Machine learning, 45(1), 5-32](https://link.springer.com/article/10.1023%2FA%3A1010933404324).
* [Linusson, H. (2013). Multi-output random forests](https://pdfs.semanticscholar.org/4219/f87ed41c558d43cf78f63976cf87bcd7ebb0.pdf).

## Installation

With pip:
```
pip install decision-tree-morfist
```
With conda:
```
conda install -c systemallica decision-tree-morfist
```
## Usage

### Initialising the model

- Similarly to a scikit-learn [RandomForestClassifier](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html), a MixedRandomForest can be initialised in this way:
```
from morfist import MixedRandomForest

mrf = MixedRandomForest(
    n_estimators=n_trees,
    min_samples_leaf=1,
    classification_targets=[0]
)
```

For more info on the possible parameters, visit the [documentation](https://systemallica.github.io/morfist/).

### Training the model

- Once the model is initialised, it can be fitted like this:
    ```
    mrf.fit(X, y)
    ```
    Where X are the training examples and Y are their respective labels(if they are categorical) or values(if they are numerical)

### Prediction

- The model can be now used to predict new instances.
    - Class/value:
    ```
    mrf.predict(x)
    ```
    - Probability:
    ```
    mrf.predict_proba(x)
    ``` 
 
## Run/Build locally
To run the project, you need [Poetry](https://python-poetry.org). Once installed:

1. Clone the repository.
2. Run `poetry install`.
3. The development environment is ready. You can test it by running `pytest`.

## TODO:
* Speed up the learning algorithm implementation (morfist is currently **much** slower than the Random Forest implementation available in scikit-learn)