semvec/pypi-packages huggingface dataset:
wlalign 1.0.1
A Python package that implements the WL-align algorithm that solves the graph alignment problem
Requires Python: >=3

# WL-align

[![pipeline status](https://gitlab.inria.fr/cobcom/wlalign/badges/master/pipeline.svg)](https://gitlab.inria.fr/cobcom/wlalign/-/commits/master)
[![coverage report](https://gitlab.inria.fr/cobcom/wlalign/badges/master/coverage.svg)](https://gitlab.inria.fr/cobcom/wlalign/-/commits/master)  
[![Documentation Status](https://readthedocs.org/projects/wl-align/badge/?version=latest)](https://wl-align.readthedocs.io/en/latest/?badge=latest)


`wlalign` is a pure Python package that implements the graph-alignment routine 
based on the generalization of the Weisfeiler-Lehman algorithm proposed in 
our [Network Neuroscience paper](https://doi.org/10.1162/netn_a_00199).

The software provides the ``wlalign`` Python module, which includes all the
**functions and tools that are necessary for computing network alignments and 
similarity**.
In particular, specific functions are devoted to:

* Computing the **graph Jaccard index** of **similarity** between two weighted 
graphs.
* Solving the **graph alignment problem** with **WL-align**.

The package is [available at Pypi](https://pypi.org/project/wlalign/)
and can be easily installed from the command line.

```bash
    pip install wlalign
```

Talon is a free software released under [MIT license](LICENSE).

Documentation
-------------
The documentation of WL-align is available on
[Read the Docs](https://wl-align.readthedocs.io).

Getting help
------------
The preferred way to get assistance in running code that uses ``wlalign`` is
through the issue system of the
[Gitlab repository](https://gitlab.inria.fr/cobcom/wlalign) where the 
source code is available.
Developers and maintainers frequently check newly opened issues and will be
happy to help you.


Contributing guidelines
-----------------------
The development happens in the ``devel`` branch of the
[Gitlab repository](https://gitlab.inria.fr/cobcom/wlalign) while the
``master`` is kept for the stable releases only.
We will consider only merge requests towards the ``devel`` branch.


How to cite
-----------
If you publish works using WL-align, please cite us as follows:

>Matteo Frigo, Emilio Cruciani, David Coudert, Rachid Deriche, Emanuele Natale,
Samuel Deslauriers-Gauthier; Network alignment and similarity reveal 
atlas-based topological differences in structural connectomes. Network 
Neuroscience 2021; doi: https://doi.org/10.1162/netn_a_00199


Funding
-------
The development of WL-align was funded by the European Research Council (ERC)
under the European Union’s Horizon 2020 research and innovation program (ERC
Advanced Grant agreement No 694665: [CoBCoM - Computational Brain Connectivity
Mapping](https://project.inria.fr/cobcom/) ).

<img src="doc/source/img/logo_erc_eu.jpg" alt="logo ERC" width="800"/>
observattr 21.6.1
Observable class attributes in pure Python

# ObservAttr: Observable Attributes
Pure Python implementation of observable class instance attributes (or a sort of reactive variables). It uses a descriptor that returns a proxy object which can be observed. 

The proxy object defines all public methods of the underlying object, and notifies subscribers after method calls. Callables can be subscribed to the proxy object and are notified with the underlying object as argument.

The descriptor instantiates the proxy object after instantiating an instance of the parent class. So it is not an observable class attribute, but an observable instance attribute. For immutable types (e.g. Number), the `__set__` implementation copies the observers and returns a new proxy upon variable assignment. No change of type is allowed upon new descriptor variable assignment.

## Usage
```
from observattr import ObservableAttribute
```
Declare as class attribute with no type specified:
```
class Example:
    # This instantiates the descriptor for this class
    observable = ObservableAttribute()

    def __init__(self, anything, subscribed_function):
        # This calls the __set__ method of the descriptor:
        # - The descriptor instantiates 'hidden' proxy self._observable with 'anything' as the underlying object
        # - type(anything) is now the fixed type of self.observable
        self.observable = anything
        self.observable.subscribe(subscribed_function)
```
Declare as class attribute with a fixed specified type:
```
class Example:
    # This instantiates the descriptor for this class
    observable = ObservableAttribute(list)

    def __init__(self, value, subscribed_function):
        # This calls the __get__ method of the descriptor:
        # - The descriptor instantiates 'hidden' proxy self._observable with 'list()' as the underlying object
        self.observable.append(value)
        self.observable.subscribe(subscribed_function)
```
wagtail-xliff-translation 1.0.4
Export Wagtail content to XLIFF and back
Requires Python: >=3.6

# wagtail-xliff-translation

_Wagtail XLIFF Translation_ is a Wagtail library for converting a Wagtail website to XLIFF (XML Localization Interchange File Format) and back.
It allows translators to work with -XLIFF based- translation software.

Exporting and importing a sub-tree, or a single page is supported.

## Explanation

After successfully adding this package, new routes will be available (e.g. /admin/pages/<page_id>/xliff/download) and pages will have two extra buttons:

![Image extra buttons](wagtail_xliff_translation/test_app/data/images/image_extra_buttons.png)

Pressing the download button will open the following page, where you can generate and download the XLIFF file:

![Image download page](wagtail_xliff_translation/test_app/data/images/image_download_page.png)

This will generate an XLIFF file in the following format (page used only has a title):

```xml
<?xml version="1.0" encoding="utf-8"?>
<xliff srcLang="en-us" trgLang="fr" version="2.0"
    xmlns="urn:oasis:names:tc:xliff:document:2.0"
    xmlns:mda="urn:oasis:names:tc:xliff:metadata:2.0"
    xmlns:slr="urn:oasis:names:tc:xliff:sizerestriction:2.0">
    <file id="4_test_app_pagewithrichtext">
        <mda:metadata>
            <mda:metaGroup category="object_nesting">
                <mda:meta type="child">no</mda:meta>
            </mda:metaGroup>
        </mda:metadata>
        <unit canResegment="no" id="title" name="title" slr:sizeRestriction="255" translate="yes" type="local:CharField">
            <segment>
                <source>A simple page</source>
                <target></target>
            </segment>
        </unit>
        <unit canResegment="no" id="slug" name="slug" slr:sizeRestriction="255" translate="yes" type="local:SlugField">
            <segment>
                <source>a-simple-page</source>
                <target></target>
            </segment>
        </unit>
    </file>
</xliff>

```

<b>Note: the source tags contain the content of the original page, the target tags is where the translations go.</b>

Finally, this package provides an upload page with several options:

![Image upload page](wagtail_xliff_translation/test_app/data/images/image_upload_page.png)

Uploading can result in errors, for example when the XLIFF file is missing content in the target tags. Wagtail page validation is also done and can also result in errors.

## Editors

The XLIFF file is formatted in such a way it works with XLIFF editors as well, for example [Poedit](https://poedit.net/).

![Image poedit](wagtail_xliff_translation/test_app/data/images/screenshot_poedit.png)

## Documentation

https://fourdigits.github.io/wagtail-xliff-translation/

## Powered by Four Digits

We love code: https://fourdigits.nl/en/