https://github.com/diracgrid/dirac-webapp-packaging
Build tools for compiling javascript sources in DIRAC WebApp packages
https://github.com/diracgrid/dirac-webapp-packaging
Last synced: 3 months ago
JSON representation
Build tools for compiling javascript sources in DIRAC WebApp packages
- Host: GitHub
- URL: https://github.com/diracgrid/dirac-webapp-packaging
- Owner: DIRACGrid
- License: gpl-3.0
- Created: 2021-06-28T13:55:15.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-06-29T04:46:02.000Z (over 4 years ago)
- Last Synced: 2025-02-15T17:39:08.479Z (12 months ago)
- Language: Python
- Size: 17.6 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
.. -*- mode: rst -*-
dirac-webapp-packaging
======================
.. image:: https://badge.fury.io/py/dirac-webapp-packaging.svg
:target: https://badge.fury.io/py/dirac-webapp-packaging
Build tools for compiling javascript sources in DIRAC WebApp packages.
Usage
~~~~~
These instructions assume you are using a ``setup.cfg`` file to use ``setuptools`` to build your package with versioning being handled by ``setuptools-scm``.
In order to use this to automatically compile javascript sources as part of wheel generation the ``pyproject.toml``:
.. code-block:: toml
[build-system]
requires = ["dirac_webapp_packaging~=1.0", "WebAppDIRAC ~=4.3.0a0", "setuptools_scm[toml]>=3.4"]
build-backend = "setuptools.build_meta"
[tool.setuptools_scm]
# Avoid letting setuptools_scm use old style tags (i.e. vXrYpZ)
git_describe_command = "git describe --dirty --tags --long --match *[0-9]* --exclude v[0-9]r* --exclude v[0-9][0-9]r*"
and, assuming your other metadata is in a ``setup.cfg``, create a ``setup.py`` file containing:
.. code-block:: python
from dirac_webapp_packaging import extjs_cmdclass
from setuptools import setup
setup(cmdclass=extjs_cmdclass)
If you are building an extension to any of the pages in WebAppDIRAC ``pyproject.toml`` file the ``requires`` section under ``build-system`` must be modified slightly:
.. code-block:: toml
[build-system]
# NOTE: Make sure to keep the runtime requirement in setup.cfg in sync with this version
requires = ["dirac_webapp_packaging~=1.0", "WebAppDIRAC ~=4.3.0a0", "setuptools_scm[toml]>=3.4"]
Additionally the ``dirac`` ``extension_metadata`` entrypoint should be modified to declare the static resources:
.. code-block:: python
import importlib.resources
def extension_metadata():
return {
"priority": NNN,
"web_resources": {
"static": [importlib.resources.files(PKG_NAME) / "WebApp" / "static"],
}
}
Changelog
~~~~~~~~~
1.0.1
^^^^^
* Switch back to using ``package_data`` instead of ``data_files`` for distributing assets
1.0.0
^^^^^
* Initial release