Skip to content

Commit 66ba092

Browse files
authored
Merge branch 'main' into dependabot/pip/botocore-1.40.30
2 parents 07ff87c + 90164dc commit 66ba092

File tree

39 files changed

+233
-259
lines changed

39 files changed

+233
-259
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,12 @@ jobs:
4949
steps:
5050
- uses: actions/checkout@v5
5151
- name: Set up Python ${{ matrix.python-version }}
52-
uses: actions/setup-python@v5
52+
uses: actions/setup-python@v6
5353
with:
5454
python-version: ${{ matrix.python-version }}
5555
cache: 'pip'
5656
- name: Set up Node.js 16
57-
uses: actions/setup-node@v4
57+
uses: actions/setup-node@v5
5858
with:
5959
node-version: 16
6060
- name: Install dependencies

.github/workflows/lemur-publish-release-pypi.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
steps:
1515
- uses: actions/checkout@v5
1616
- name: Set up Python
17-
uses: actions/setup-python@v5
17+
uses: actions/setup-python@v6
1818
with:
1919
python-version: '3.x'
2020
- name: Autobump version

.readthedocs.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,13 @@ build:
2020
python: "3.11"
2121
jobs:
2222
pre_install:
23+
- grep -v "python-ldap" requirements.txt > tempreqs && mv tempreqs requirements.txt
2324
- grep -v "python-ldap" requirements-docs.txt > tempreqs && mv tempreqs requirements-docs.txt
2425

2526

2627
python:
2728
install:
28-
- requirements: requirements-docs.txt
29-
- method: setuptools
29+
- method: pip
3030
path: .
31+
extra_requirements:
32+
- docs

MANIFEST.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
include setup.py version.py package.json bower.json gulpfile.js README.rst MANIFEST.in LICENSE AUTHORS requirements*.txt
1+
include pyproject.toml package.json bower.json gulpfile.js README.rst MANIFEST.in LICENSE AUTHORS requirements*.txt
22
recursive-include lemur/plugins/lemur_email/templates *
33
recursive-include lemur/static *
44
global-exclude *~

build_backend.py

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
"""
2+
Custom build backend for Lemur that handles static asset building.
3+
This replaces the custom commands from the old setup.py.
4+
"""
5+
import os
6+
import subprocess
7+
import logging
8+
from setuptools import build_meta as _orig
9+
from setuptools.build_meta import *
10+
11+
12+
def build_wheel(wheel_directory, config_settings=None, metadata_directory=None):
13+
"""Build wheel with static assets."""
14+
_build_static()
15+
return _orig.build_wheel(wheel_directory, config_settings, metadata_directory)
16+
17+
18+
def build_sdist(sdist_directory, config_settings=None):
19+
"""Build source distribution with static assets."""
20+
_build_static()
21+
return _orig.build_sdist(sdist_directory, config_settings)
22+
23+
24+
def _build_static():
25+
"""Build static assets using npm and gulp."""
26+
root = os.path.dirname(os.path.abspath(__file__))
27+
28+
# Check if static assets already exist
29+
if os.path.exists(os.path.join(root, 'lemur/static/dist')):
30+
logging.info("Static assets already exist, skipping build")
31+
return
32+
33+
logging.info(f"Building static assets in {root}")
34+
35+
try:
36+
# Run npm install
37+
logging.info("Running npm install --quiet")
38+
subprocess.check_call(['npm', 'install', '--quiet'], cwd=root)
39+
40+
# Run gulp build
41+
logging.info("Running gulp build")
42+
subprocess.check_call([
43+
os.path.join(root, 'node_modules', '.bin', 'gulp'), 'build'
44+
], cwd=root)
45+
46+
# Run gulp package
47+
logging.info("Running gulp package")
48+
subprocess.check_call([
49+
os.path.join(root, 'node_modules', '.bin', 'gulp'), 'package'
50+
], cwd=root)
51+
52+
except subprocess.CalledProcessError as e:
53+
logging.warning(f"Unable to build static content: {e}")
54+
except Exception as e:
55+
logging.warning(f"Unexpected error building static content: {e}")

gulp/build.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
'use strict';
22

33
var gulp = require('gulp'),
4-
minifycss = require('gulp-minify-css'),
4+
cleanCSS = require('gulp-clean-css'),
55
concat = require('gulp-concat'),
66
less = require('gulp-less'),
77
gulpif = require('gulp-if'),
@@ -127,7 +127,7 @@ gulp.task('dev:styles', function () {
127127
})))
128128
.pipe(plumber())
129129
.pipe(concat('styles.css'))
130-
.pipe(minifycss())
130+
.pipe(cleanCSS())
131131
.pipe(autoprefixer('last 1 version'))
132132
.pipe(gulp.dest('.tmp/styles'))
133133
.pipe(size());

lemur/factory.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,7 @@ def install_plugins(app):
258258
from lemur.plugins import plugins
259259
from lemur.plugins.base import register
260260

261-
for ep in entry_points().get("lemur.plugins", []):
261+
for ep in entry_points(group="lemur.plugins"):
262262
try:
263263
plugin = ep.load()
264264
except Exception:

lemur/plugins/base/v1.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class IPlugin(local):
4545
title: Optional[str] = None
4646
slug: Optional[str] = None
4747
description: Optional[str] = None
48-
version = None
48+
version: Optional[str] = None
4949
author: Optional[str] = None
5050
author_url: Optional[str] = None
5151
resource_links = ()
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
try:
2-
VERSION = __import__("pkg_resources").get_distribution(__name__).version
2+
from importlib.metadata import version
3+
VERSION = version(__name__)
34
except Exception as e:
45
VERSION = "unknown"
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
"""Set the version information."""
22
try:
3-
VERSION = __import__("pkg_resources").get_distribution(__name__).version
3+
from importlib.metadata import version
4+
VERSION = version(__name__)
45
except Exception as e:
56
VERSION = "unknown"

0 commit comments

Comments
 (0)