From 8d21c1cdf5a96ae0038f7b3ef63b5fc920fb601e Mon Sep 17 00:00:00 2001 From: Bastien Gerard Date: Tue, 23 Jun 2026 23:01:12 +0200 Subject: [PATCH 1/3] Remove all mentions of mongoengine[dot]org as its unafiliated + fix RTD pipeline --- .github/workflows/github-actions.yml | 12 +++++++----- .readthedocs.yml | 2 +- CONTRIBUTING.rst | 2 +- README.rst | 7 +++++++ docs/changelog.rst | 2 +- docs/conf.py | 2 +- setup.py | 2 +- tests/document/test_dynamic.py | 2 +- tests/document/test_instance.py | 2 +- tests/document/test_json_serialisation.py | 2 +- tests/queryset/test_queryset.py | 2 +- 11 files changed, 23 insertions(+), 14 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 8c3e441e3..97b109a25 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -99,19 +99,21 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - name: Set up Python ${{ matrix.python-version }} + - name: Set up Python 3.10 uses: actions/setup-python@v6 with: - python-version: ${{ env.MAIN_PYTHON_VERSION }} + python-version: "3.10" check-latest: true - name: install python dep run: | - pip install -e . - pip install -r docs/requirements.txt + python -m pip install --upgrade --no-cache-dir pip setuptools + python -m pip install --upgrade --no-cache-dir sphinx + python -m pip install --exists-action=w --no-cache-dir -r docs/requirements.txt + python ./setup.py install --force - name: build doc run: | cd docs - make html-readthedocs + python -m sphinx -T -b html -d _build/doctrees -D language=en . _build/html build-dryrun: runs-on: ubuntu-latest diff --git a/.readthedocs.yml b/.readthedocs.yml index a913f8426..759203943 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -22,4 +22,4 @@ python: build: os: ubuntu-22.04 tools: - python: "3.9" + python: "3.10" diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index 887c5f019..678ef7654 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -95,7 +95,7 @@ Documentation ------------- To contribute to the `API documentation -`_ +`_ just make your changes to the inline documentation of the appropriate `source code `_ or `rst file `_ in a diff --git a/README.rst b/README.rst index db15293e2..b118499e8 100644 --- a/README.rst +++ b/README.rst @@ -25,6 +25,13 @@ MongoEngine .. image:: https://readthedocs.org/projects/mongoengine-odm/badge/?version=latest :target: https://readthedocs.org/projects/mongoengine-odm/builds/ +.. warning:: + + The official MongoEngine project is maintained on + `GitHub `_ and documented on + `ReadTheDocs `_. + ``mongoengine.org`` is unaffiliated with the MongoEngine project. + About ===== MongoEngine is a Python Object-Document Mapper for working with MongoDB. diff --git a/docs/changelog.rst b/docs/changelog.rst index ff2dd38c1..38604ac82 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -71,7 +71,7 @@ Changes in 0.27.0 - Added `mongo_client_class` optional parameter to connect() to allow to use an alternative mongo client than pymongo.MongoClient. Typically to support mock mongo libraries like mongomock, montydb, mongita #2729 - BREAKING CHANGE: connecting MongoEngine with mongomock should now use the new `mongo_client_class` - For more info, check https://docs.mongoengine.org/guide/mongomock.html + For more info, check https://mongoengine-odm.readthedocs.io/guide/mongomock.html - Fix DictField that always gets marked as changed #2606 - fix for Queryset.none() that has no effect on update/aggregate / first #2669 diff --git a/docs/conf.py b/docs/conf.py index 808deaa8b..d52ecb2be 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -100,7 +100,7 @@ # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. -html_theme_options = {"canonical_url": "http://docs.mongoengine.org/en/latest/"} +html_theme_options = {"canonical_url": "https://mongoengine-odm.readthedocs.io/"} # Add any paths that contain custom themes here, relative to this directory. html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] diff --git a/setup.py b/setup.py index 7af6b7272..7f551e9ca 100644 --- a/setup.py +++ b/setup.py @@ -60,7 +60,7 @@ def get_version(version_tuple): author_email="harry.marr@gmail.com", maintainer="Bastien Gerard", maintainer_email="bast.gerard@gmail.com", - url="http://mongoengine.org/", + url="https://mongoengine-odm.readthedocs.io/", download_url="https://github.com/MongoEngine/mongoengine/tarball/master", license="MIT", include_package_data=True, diff --git a/tests/document/test_dynamic.py b/tests/document/test_dynamic.py index 170b2ea3d..cf11798a7 100644 --- a/tests/document/test_dynamic.py +++ b/tests/document/test_dynamic.py @@ -211,7 +211,7 @@ class Doc(DynamicDocument): Doc.drop_collection() doc = Doc() - embedded_doc_1 = Embedded(content="http://mongoengine.org") + embedded_doc_1 = Embedded(content="https://mongoengine-odm.readthedocs.io/") embedded_doc_1.validate() embedded_doc_2 = Embedded(content="this is not a url") diff --git a/tests/document/test_instance.py b/tests/document/test_instance.py index 1d1c0c23d..cf1c2e61b 100644 --- a/tests/document/test_instance.py +++ b/tests/document/test_instance.py @@ -1499,7 +1499,7 @@ class Doc(Document): map_field = MapField(IntField(), default=lambda: {"simple": 1}) decimal_field = DecimalField(default=1.0) complex_datetime_field = ComplexDateTimeField(default=datetime.now) - url_field = URLField(default="http://mongoengine.org") + url_field = URLField(default="https://mongoengine-odm.readthedocs.io/") dynamic_field = DynamicField(default=1) generic_reference_field = GenericReferenceField( default=lambda: Simple().save() diff --git a/tests/document/test_json_serialisation.py b/tests/document/test_json_serialisation.py index 61298ab17..93f6729c3 100644 --- a/tests/document/test_json_serialisation.py +++ b/tests/document/test_json_serialisation.py @@ -79,7 +79,7 @@ class Doc(Document): map_field = MapField(IntField(), default=lambda: {"simple": 1}) decimal_field = DecimalField(default=1.0) complex_datetime_field = ComplexDateTimeField(default=datetime.now) - url_field = URLField(default="http://mongoengine.org") + url_field = URLField(default="https://mongoengine-odm.readthedocs.io/") dynamic_field = DynamicField(default=1) generic_reference_field = GenericReferenceField( default=lambda: Simple().save() diff --git a/tests/queryset/test_queryset.py b/tests/queryset/test_queryset.py index 8386249f2..7a553d126 100644 --- a/tests/queryset/test_queryset.py +++ b/tests/queryset/test_queryset.py @@ -5207,7 +5207,7 @@ class Doc(Document): map_field = MapField(IntField(), default=lambda: {"simple": 1}) decimal_field = DecimalField(default=1.0) complex_datetime_field = ComplexDateTimeField(default=datetime.datetime.now) - url_field = URLField(default="http://mongoengine.org") + url_field = URLField(default="https://mongoengine-odm.readthedocs.io/") dynamic_field = DynamicField(default=1) generic_reference_field = GenericReferenceField( default=lambda: Simple().save() From a937806182f62b9cff9a914edaa21f1ca286791c Mon Sep 17 00:00:00 2001 From: Bastien Gerard Date: Tue, 23 Jun 2026 23:20:47 +0200 Subject: [PATCH 2/3] Fix docs build --- .github/workflows/github-actions.yml | 6 +++--- .readthedocs.yml | 4 ++-- docs/Makefile | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 97b109a25..dae29bdd1 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -99,17 +99,17 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - name: Set up Python 3.10 + - name: Set up Python ${{ env.MAIN_PYTHON_VERSION }} uses: actions/setup-python@v6 with: - python-version: "3.10" + python-version: ${{ env.MAIN_PYTHON_VERSION }} check-latest: true - name: install python dep run: | python -m pip install --upgrade --no-cache-dir pip setuptools python -m pip install --upgrade --no-cache-dir sphinx python -m pip install --exists-action=w --no-cache-dir -r docs/requirements.txt - python ./setup.py install --force + python -m pip install --no-cache-dir . - name: build doc run: | cd docs diff --git a/.readthedocs.yml b/.readthedocs.yml index 759203943..1a50bfc07 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -15,11 +15,11 @@ python: - requirements: docs/requirements.txt # docs/conf.py is importing mongoengine # so mongoengine needs to be installed as well - - method: setuptools + - method: pip path: . # Specify the build environment build: os: ubuntu-22.04 tools: - python: "3.10" + python: "3.14" diff --git a/docs/Makefile b/docs/Makefile index 68149fe5a..e2ee4818e 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -36,7 +36,7 @@ html: @echo "Build finished. Check $(BUILDDIR)/html/index.html" html-readthedocs: - $(SPHINXBUILD) -T -E -b readthedocs $(ALLSPHINXOPTS) $(BUILDDIR)/html + python -m sphinx -T -b html -d $(BUILDDIR)/doctrees -D language=en . $(BUILDDIR)/html @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." @echo "Open in browser: file://`realpath $(BUILDDIR)/html/index.html`" From 995abeba1dcf9ac045515fa6ed4b88eb51946892 Mon Sep 17 00:00:00 2001 From: Bastien Gerard Date: Tue, 23 Jun 2026 23:31:30 +0200 Subject: [PATCH 3/3] Use makefile entry for doc build dryrun --- .github/workflows/github-actions.yml | 2 +- README.rst | 3 ++- docs/changelog.rst | 2 ++ docs/index.rst | 5 +++++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index dae29bdd1..c76e69fca 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -113,7 +113,7 @@ jobs: - name: build doc run: | cd docs - python -m sphinx -T -b html -d _build/doctrees -D language=en . _build/html + make html-readthedocs build-dryrun: runs-on: ubuntu-latest diff --git a/README.rst b/README.rst index b118499e8..c111addd4 100644 --- a/README.rst +++ b/README.rst @@ -30,7 +30,8 @@ MongoEngine The official MongoEngine project is maintained on `GitHub `_ and documented on `ReadTheDocs `_. - ``mongoengine.org`` is unaffiliated with the MongoEngine project. + ``mongoengine.org`` is no longer controlled by the MongoEngine project and + appears to be an expired domain takeover. About ===== diff --git a/docs/changelog.rst b/docs/changelog.rst index bd9803944..1d3f3a693 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -7,6 +7,8 @@ Changelog Development =========== - (Fill this out as you fix issues and develop your features). +- Add a warning that ``mongoengine.org`` is no longer controlled by the MongoEngine + project and appears to be an expired domain takeover. - Fix querying GenericReferenceField with __in operator #2886 - Fix Document.compare_indexes() not working correctly for text indexes on multiple fields #2612 - Add support for transaction through run_in_transaction (kudos to juannyG for this) #2569 diff --git a/docs/index.rst b/docs/index.rst index e550760ce..c6f596532 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -9,6 +9,11 @@ MongoDB. To install it, simply run $ python -m pip install -U mongoengine +.. warning:: + + ``mongoengine.org`` is no longer controlled by the MongoEngine project and + appears to be an expired domain takeover. + :doc:`tutorial` A quick tutorial building a tumblelog to get you up and running with MongoEngine.