Commit Graph

16 Commits

Author SHA1 Message Date
dependabot[bot]
eddc2d8371 chore(deps): bump peter-evans/create-pull-request from 6 to 7
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6 to 7.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v6...v7)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-26 20:50:41 +00:00
dependabot[bot]
276df19d48 build(deps): bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 06:55:23 +00:00
Feanil Patel
872174e28d build: Switch to ubuntu-latest for builds
This code does not have any dependencies that are specific to any specific
version of ubuntu.  So instead of testing on a specific version and then needing
to do work to keep the versions up-to-date, we switch to the ubuntu-latest
target which should be sufficient for testing purposes.

This work is being done as a part of https://github.com/openedx/platform-roadmap/issues/377

closes https://github.com/openedx/edx-platform/issues/35314
2024-09-23 10:00:14 -04:00
Feanil Patel
3660503d2d build: Update dispatch workflows to also run with 3.11 2024-06-11 11:30:22 -04:00
Kyle McCormick
a3bafb2ccd temp: build: compile python requirements with 3.8, not 3.11 (#34960)
We haven't quite dropped Py3.8 support yet, so we can't use these workflows if
they're compiling with 3.11:

* upgrade-one-python-dependency (upgrading a single, targeted dep)
* compile-python-requirements (recompiling all deps without upgrading)

So, we "downgrade" those workflows to use 3.8, for now. We should revert this
commit when we drop 3.8 support.

Note: The upgrade-python-requirements.yml workflow is still using 3.8, so this
commit will update the other workflows to match that one.
2024-06-10 15:50:06 -04:00
Emad Rad
6c5b98087e chore: cleanup
- rst heading definitions
- indirect hyperlinks and code-blocks added for better readability
- MarkDown warnings resolved
- Yaml style issues fixed
2024-06-03 22:18:27 +03:30
Irtaza Akram
e428dd4511 fix: update github actions & remove edx runner 2024-05-30 15:00:30 -04:00
Feanil Patel
4687dae487 build: Drop testing with Mongo 4.4 and Python 3.8 2024-05-14 09:25:18 -04:00
Feanil Patel
c66f28dcee fix: Add a trailing wildcard because we don't use an exact path.
We were seeing the following error:

```
  /usr/bin/git add -- requirements scripts/**/requirements
  fatal: pathspec 'scripts/**/requirements' did not match any files
```

Once we introduce wildcards, the whole path needs to be valid so adding
a trailing wildcard to catch all the relevant directories and files.
2024-05-07 12:32:40 -04:00
Feanil Patel
1d23fc1089 fix: Include script requirements in upgrade.
The `upgrade-one-python-dependency` workflow would fail if there were
changes in the scripts directory because they wouldn't get added to the
PR.  Update the list of `add-paths` for the workflow so that it doesn't
fail like this in the future.
2024-05-06 14:43:17 -04:00
Tim McCormack
afe93559b9 Revert "build: Python requirements upgrade and lxml build without binary (#34…" (#34661)
This reverts commit 52adce48d1 because we were getting this in the build pipeline:

```
WARNING: lxml 5.2.1 does not provide the extra 'html-clean'
ERROR: Exception:
Traceback (most recent call last):
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", line 173, in _main
    status = self.run(options, args)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_internal/cli/req_command.py", line 203, in wrapper
    return func(self, options, args)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_internal/commands/install.py", line 315, in run
    requirement_set = resolver.resolve(
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 94, in resolve
    result = self._result = resolver.resolve(
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_vendor/resolvelib/resolvers.py", line 472, in resolve
    state = resolution.resolve(requirements, max_rounds=max_rounds)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_vendor/resolvelib/resolvers.py", line 366, in resolve
    failure_causes = self._attempt_to_pin_criterion(name)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_vendor/resolvelib/resolvers.py", line 221, in _attempt_to_pin_criterion
    satisfied = all(
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_vendor/resolvelib/resolvers.py", line 222, in <genexpr>
    self._p.is_satisfied_by(requirement=r, candidate=candidate)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/provider.py", line 178, in is_satisfied_by
    return requirement.is_satisfied_by(candidate)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/requirements.py", line 84, in is_satisfied_by
    assert candidate.name == self.name, (
AssertionError: Internal issue: Candidate is not for this requirement lxml[html-clean,html-clean] vs lxml[html-clean]
WARNING: You are using pip version 21.2.1; however, version 24.0 is available.
You should consider upgrading via the '/edx/app/edxapp/venvs/edxapp/bin/python -m pip install --upgrade pip' command.
```
2024-04-29 21:06:45 +00:00
edX requirements bot
52adce48d1 build: Python requirements upgrade and lxml build without binary (#34655)
* build: build lxml without binary in requirements and CI workflows
---------
Co-authored-by: Usama Sadiq <usama.sadiq@arbisoft.com>
2024-04-29 23:48:57 +05:00
Tim McCormack
1552ea0762 Add compile-requirements GH workflow and update requirements README (#33126)
Adds a GH workflow that will run `make compile-requirements` and create
a PR for it and overhauls the requirements README with info on how to
use the new workflows.

README changes:

- Group the workflow/makefile info under a new heading
- Switch to imperative for headings
- Move "Upgrade all dependencies" to end of list (uncommon for people to
  actually need this command, I suspect)
- Add "Add a dependency"
- Preamble about .in and .txt files and Mac vs. Linux, as well as about forks

Also, some style fixes to upgrade-one-python-dependency GH workflow:

- Fix indentation in inputs block
- Remove "-workflow" from job name (probably copied from another workflow)
- Wrap a long line
2023-09-18 17:32:51 +00:00
Kira Miller
b9105a45d9 feat: upgrade github action to support pinned dependencies (#32619)
* fix: edx-enterprise downgrade

* fix: update script

* feat: upgrade action to support pinned dependecies

* Update .github/workflows/upgrade-one-python-dependency.yml

---------
2023-07-06 12:36:19 -06:00
Tim McCormack
2274b55ca0 feat: Add change-description field to upgrade-one-dep workflow (#32214)
This will allow people to optionally describe the dependency upgrade
without having to rewrite the auto-generated commit or edit the PR body.
(The PR body isn't even guaranteed to make it into the eventual merged
commit.)
2023-05-12 13:38:10 +00:00
Tim McCormack
b1f8b9339a build: Add upgrade-package Make target and workflow (#32131)
This adds a Make target that should simplify the common task of
upgrading a single dependency. Sometimes people manually edit the pin
files, which we would like to avoid; hopefully this will make it
easier for them to do the right thing.

The GitHub workflow should also make it easier for people on Mac to
recompile requirements in a Linux environment, reducing the number of
times spurious dependency changes show up in the pin files (due to
OS-dependent requirements.)

Also, separate upgrade/downgrade instructions and simplify the latter.
(Min constraints are rare and we usually move beyond them quickly.)
2023-04-27 13:44:47 +00:00