Go to file
Oliver fd0a57c4a1
Improve deletion behaviour for InvenTreeTree model (#5806)
* Improve deletion behaviour for InvenTreeTree model

- Remove recursive call to function
- Handle database operations as bulk queries
- Ensure child nodes have their pathstring updated correctly
- Remove old @receiver hook
- Refactor StockLocation.delete method
- Refactor PartCategory.delete method
- Atomic transactions potentially problematic here

* Add docstring

* Fix method name

* Use bulk-update instead of recursive save when pathstring changes

* Improvements for tree delete method

- Handle case where item has already been deleted

* Raise exception rather than simply logging

* Update unit tests

* Improvements to unrelated unit test

* Fix urls.md

* Fix typo
2023-10-30 06:57:40 +11:00
.devcontainer Native LDAP support (#5226) 2023-10-05 07:52:36 +11:00
.devops Add azure pipelines (#4453) 2023-04-03 16:55:27 +10:00
.github Update sponsors.yml (#5794) 2023-10-27 14:06:57 +11:00
.vscode Add worker task to VS Code (#5605) 2023-10-01 21:06:34 +11:00
ci Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00
contrib Packages - force python 3.9 (#5206) 2023-08-06 21:50:38 +10:00
deploy fix endline 2022-05-20 13:35:07 +02:00
docker Plugin auto migrate (#5668) 2023-10-06 11:38:01 +11:00
docs Added context variables for address (#5807) 2023-10-29 22:07:21 +11:00
images/logo Export large version of the logo 2020-05-12 00:06:26 +10:00
InvenTree Improve deletion behaviour for InvenTreeTree model (#5806) 2023-10-30 06:57:40 +11:00
src/frontend [React] Tree navigation (#5800) 2023-10-28 00:35:52 +11:00
.deepsource.toml [PUI] Raise translation/language support to CUI level (#5749) 2023-10-27 20:25:02 +11:00
.djlintrc Replace mklint with djlint (#4746) 2023-05-02 20:03:52 +10:00
.eslintrc.yml Fix JS linting workflow (#4915) 2023-05-30 22:55:53 +10:00
.gitattributes fix endline 2022-05-20 13:35:07 +02:00
.gitignore React tweaks (#5300) 2023-07-21 09:46:44 +10:00
.pkgr.yml Packages - force python 3.9 (#5206) 2023-08-06 21:50:38 +10:00
.pre-commit-config.yaml Version bump (#5740) 2023-10-18 07:27:28 +11:00
backportrc.json Add workflow for backporting PRs (#4912) 2023-05-28 18:55:06 +10:00
CONTRIBUTING.md Add whitespace to fix markdown table rendering (#5675) 2023-10-07 15:41:10 +11:00
crowdin.yml P-UI: Adapt translation CI (#5299) 2023-07-21 09:00:37 +10:00
docker-compose.yml Remove container-name:s from Compose file (#5339) 2023-07-25 12:51:37 +10:00
docker.dev.env Plugin auto migrate (#5668) 2023-10-06 11:38:01 +11:00
Dockerfile Native LDAP support (#5226) 2023-10-05 07:52:36 +11:00
LICENSE Update LICENSE 2022-02-21 22:31:10 +11:00
package-lock.json [WIP] Mantine datatables (#5218) 2023-07-27 10:10:07 +10:00
package.json Version bump (#5740) 2023-10-18 07:27:28 +11:00
Procfile fix cli on 22.04 (#5204) 2023-07-09 08:40:27 +10:00
README.md Readme sponsors (#5789) 2023-10-26 17:35:18 +11:00
readthedocs.yml Update readthedocs (#5565) 2023-09-19 06:20:23 +10:00
RELEASE.md Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
requirements-dev.in Version bump (#5740) 2023-10-18 07:27:28 +11:00
requirements-dev.txt Version bump (#5740) 2023-10-18 07:27:28 +11:00
requirements.in Version bump (#5740) 2023-10-18 07:27:28 +11:00
requirements.txt Version bump (#5740) 2023-10-18 07:27:28 +11:00
runtime.txt Add package-based install method (#3743) 2022-10-16 10:14:18 +11:00
SECURITY.md Spelling fix: dates -> days (#3193) 2022-06-14 10:07:48 +10:00
setup.cfg Code style improvements (#4683) 2023-04-28 20:49:53 +10:00
tasks.py Api token updates (#5664) 2023-10-20 14:06:06 +11:00
yarn.lock Version bump (#5740) 2023-10-18 07:27:28 +11:00

InvenTree logo

InvenTree

Open Source Inventory Management System

License: MITGitHub tag (latest SemVer) CI Documentation Status Docker Build OpenSSF Best Practices Netlify Status DeepSource

Coveralls Crowdin GitHub commit activity Docker Pulls

GitHub Org's stars Twitter Follow Subreddit subscribers

View Demo · Documentation · Report Bug · Request Feature

🌟 About the Project

InvenTree is an open-source Inventory Management System which provides powerful low-level stock control and part tracking. The core of the InvenTree system is a Python/Django database backend which provides an admin interface (web-based) and a REST API for interaction with external interfaces and applications. A powerful plugin system provides support for custom applications and extensions.

Check out our website for more details.

🧭 Roadmap

Want to see what we are working on? Check out the roadmap tag and horizon milestone.

🛠️ Integration

InvenTree is designed to be extensible, and provides multiple options for integration with external applications or addition of custom plugins:

👾 Tech Stack

Server
Database
Client
DevOps

🧰 Deployment / Getting Started

There are several options to deploy InvenTree.

Single line install - read the docs for supported distros and details about the function:

wget -qO install.sh https://get.inventree.org && bash install.sh

Refer to the getting started guide for a full set of installation and setup instructions.

📱 Mobile App

InvenTree is supported by a companion mobile app which allows users access to stock control information and functionality.

👋 Contributing

Contributions are welcomed and encouraged. Please help to make this project even better! Refer to the contribution page.

📜 Translation

Native language translation of the InvenTree web application is community contributed via crowdin. Contributions are welcomed and encouraged.

💸 Sponsor

If you use InvenTree and find it to be useful, please consider sponsoring the project.

💎 Acknowledgements

We would like to acknowledge a few special projects:

Find a full list of used third-party libraries in our documentation.

❤️ Support

This project is supported by the following sponsors:

With ongoing resources provided by:

Deploys by Netlify Crowdin

⚠️ License

Distributed under the MIT License. See LICENSE.txt for more information.