Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/static-assets-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ jobs:

- name: Install Full Python Deps for Collection
run: |
pip install -r requirements/edx/base.txt -e .
pip install -e .

- name: Check Assets Collection
env:
Expand Down
15 changes: 4 additions & 11 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.PHONY: base-requirements check-types clean \
compile-requirements detect_changed_source_translations dev-requirements \
docs extract_translations \
guides help lint-imports local-requirements migrate migrate-lms migrate-cms \
guides help lint-imports migrate migrate-lms migrate-cms \
pre-requirements pull pull_xblock_translations pull_translations push_translations \
requirements shell swagger \
technical-docs test-requirements ubuntu-requirements upgrade-package upgrade
Expand Down Expand Up @@ -67,23 +67,16 @@ detect_changed_source_translations: ## check if translation files are up-to-date
pre-requirements: ## install Python requirements for running pip-tools
pip install -r requirements/pip-tools.txt

local-requirements:
# edx-platform installs some Python projects from within the edx-platform repo itself.
pip install -e .

dev-requirements: pre-requirements
@# The "$(wildcard..)" is to include private.txt if it exists, and make no mention
@# of it if it does not. Shell wildcarding can't do that with default options.
pip-sync requirements/edx/development.txt $(wildcard requirements/edx/private.txt)
make local-requirements
pip install -e '.[development]' $(wildcard requirements/edx/private.txt)

base-requirements: pre-requirements
pip-sync requirements/edx/base.txt
make local-requirements
pip install -e '.'

test-requirements: pre-requirements
pip-sync --pip-args="--exists-action=w" requirements/edx/testing.txt
make local-requirements
pip install -e '.[testing]'

requirements: dev-requirements ## install development environment requirements

Expand Down
4 changes: 2 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -103,8 +103,8 @@ Language Packages:

* Backend application:

- ``pip install -r requirements/edx/base.txt`` (production)
- ``pip install -r requirements/edx/development.txt`` (development)
- ``pip install -e '.'`` (production)
- ``pip install -e '.[dev]'`` (development)

Some Python packages have system dependencies. For example, installing these packages on Debian or Ubuntu will require first running ``sudo apt install python3-dev default-libmysqlclient-dev build-essential pkg-config`` to satisfy the requirements of the ``mysqlclient`` Python package.

Expand Down
2 changes: 1 addition & 1 deletion docs/references/static-assets.rst
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ skip this section.
First, ensure you have a Python enironment with all edx-platform dependencies
installed::

pip install -r requirements/edx/base.txt -e .
pip install -e .

Next, download localized versions of edx-platform assets. Under the hood, this
command uses the `Open edX Atlas`_ tool, which manages aggregated translations
Expand Down
12 changes: 10 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,21 @@ build-backend = "setuptools.build_meta"

[project]
name = "openedx-platform"
version = "0.13"
version = "0.14"
requires-python = ">=3.12"
dependencies = ["setuptools"]
dynamic = ["dependencies", "optional-dependencies"]

[tool.setuptools]
packages = ["cms", "common", "lms", "openedx", "xmodule"]

[tool.setuptools.dynamic]
dependencies = { file = ["requirements/edx/base.txt"] }

[tool.setuptools.dynamic.optional-dependencies]
development = { file = ["requirements/edx/development.txt"] }
testing = { file = ["requirements/edx/testing.txt"] }
dos = { file = ["requirements/edx/doc.txt"] }

[tool.setuptools.package-data]
xmodule = ["js/module/*"]

Expand Down
2 changes: 1 addition & 1 deletion scripts/watch_sass.sh
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ fi
if ! type watchmedo 1>/dev/null 2>&1 ; then
error "command not found: watchmedo"
log "The \`watchdog\` Python package is probably not installed. You can install it with:"
log " pip install -r requirements/edx/development.txt"
log " pip install -e '.[dev]'"
exit 1
fi

Expand Down
Loading