Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.0.0 #22

Merged
merged 53 commits into from
Feb 2, 2022
Merged

2.0.0 #22

merged 53 commits into from
Feb 2, 2022

Conversation

beatonma
Copy link
Owner

@beatonma beatonma commented Feb 2, 2022

Important changes

Things to be aware of

  • Minor changes to /get API response format - see CHANGELOG.md for details.
  • MentionableMixin now raises ImplementionRequired exception if either of get_absolute_url or all_text are not overridden - previously failed quietly with a log message.
  • New {% webmention_endpoint %} template tag
    • include in HTML <head> to aid endpoint discoverability.
    • Endpoint is already discoverable via HTTP headers by WebmentionHeadMiddleware but different implementations of the Webmention spec may only check for one or the other.

Other

  • Improved documentation.
  • Significant refactoring of tests to improve readability.

GriceTurrble and others added 30 commits January 24, 2022 16:31
Also adding a doc with an upgrade guide for users that may be on 1.3 with existing migrations,
which this update will replace.
Added short version of the manual upgrade guide, and adjusted the guide
to a simpler process. Now instead of having users migrate to `0001`,
we have them go to `zero` and then `--fake` migrations back up to latest
after upgrades. This is a cleaner process overall and allows for some
flexibility in case someone is following the guide at a later date,
when/if there are actual changes to concrete models in `mentions` app.
…-q4xr-rc97-m4xx)

Upgrading from `celery` 4.x to 5.x has breaking changes! Please read the [celery documentation](https://docs.celeryproject.org/en/stable/history/whatsnew-5.0.html#upgrading-from-celery-4-x) for details on how to migrate.
`psycopg2` is required if your project uses postgres as its database backend, but that is none of `django-wm`'s business.
Removed references to URL django-wm.dev as it is no longer used for this project.
Reducing verbosity/improve readability of tests.
Version updated from 1.4 (not used) to 2.0.
…duplicates.

Previously returned a list which might include duplicates resulting in duplicate
webmention submissions for a single update of the object.
HCard serialization moved from HCard.as_json to utils.serialize_hcard.
- Missing HCard is now serialized as null instead of an empty dict.
Created WebmentionTestCase base class to handle common tearDown() logic after tests are run.
- Removed "status" field from JsonResponse
- If target is not found, JsonResponse is returned with 404 HTTP status code.
Keep track of attempted submissions vs successful submissions for more useful logging.
…ng mentions.

This was always required in the concrete class implementation for proper lookup
of incoming mentions but was omitted from the mixin. Any concrete classes that
already implement the slug field should be unaffected.
…lass implementations.

MentionableMixin.get_absolute_url and MentionableMixin.all_text now raise ImplementationRequired exceptions if they are not overridden.
These methods are required for outgoing mentions to work correctly.
…adability.

- Removed some confusing 'helper' functions
- Replaced weird runtime `constants` values with `testfunc` functions instead.
- Clearer testfunc names with docstring descriptions.
…adability.

- Removed some confusing 'helper' functions
- Replaced weird runtime `constants` values with `testfunc` functions instead.
- Clearer testfunc names with docstring descriptions.
- Reduced verbosity of mocking decorations.
- Randomised target website URLs at test runtime to ensure correct mocking behaviour.
Moved EndpointDiscoveryTests to separate file.
Moved MockResponse to tests.__init__
Simplified README.md now consists of an overview of the library with links to docs for installation and upgrades.

Added CHANGELOG.md
…project from

`project_urls` as PyPi shows this as the source link for the main project.
The link is still included in the README.
Replaced minimum >= versions with compatible ~= versions.
Replaced minimum >= versions with compatible ~= versions.
Nosetests is no longer maintained and breaks with Python 3.10, but it's nice
to have pretty-printed tests results on older versions. When running on
Python 3.10 or later we now default to the default Django test runner.
@beatonma beatonma merged commit 52075b3 into master Feb 2, 2022
@beatonma beatonma deleted the 2.0.0 branch February 3, 2022 10:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Running makemigrations creates migration files in installed package directory
2 participants