# Proposed new UAVCAN repo and pypi distribution

**URL:** <https://forum.opencyphal.org/t/proposed-new-uavcan-repo-and-pypi-distribution/370>\
**Category:** Development & Maintenance\
**Created:** [February 25, 2019, 6:31am UTC](https://forum.opencyphal.org/t/proposed-new-uavcan-repo-and-pypi-distribution/370 "2019-02-25T06:31:21Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![pavel.kirienko](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/pavel.kirienko/32/9_2.png) [@pavel.kirienko](https://forum.opencyphal.org/u/pavel.kirienko)\
**Post date:** [February 25, 2019, 8:54am UTC](https://forum.opencyphal.org/t/proposed-new-uavcan-repo-and-pypi-distribution/370/2 "2019-02-25T08:54:19Z")

</div>

> [@scottdixon](#):
>
> While wiring up hpp generation in my branch of libuavcan I kept trying to keep the repo focused on the c++ source but ended up writing as much build logic and configuration to manage the python “dsdl\_compiler”.

Are we certain this is not partly because of the decision to use Jinja2 as an external dependency? Without Jinja, the transpiler could be external-dependency-free, would it not be?

I am observing that you’ve chosen to refer to PyDSDL via PyPI rather than including it as a git submodule. Why? The submodule-based approach would allow you to freeze a particular version of the library and avoid many hassles with dependency management.

Also, how do we reconcile such separation with [Libuavcan repo diet](https://forum.opencyphal.org/t/libuavcan-repo-diet/344)?

---

_[View the full topic](https://forum.opencyphal.org/t/proposed-new-uavcan-repo-and-pypi-distribution/370)._
