mirror of
https://github.com/inventree/inventree-website.git
synced 2025-09-18 17:11:27 +00:00
deploy: ec6eb8f0d3
This commit is contained in:
@@ -76,7 +76,7 @@
|
||||
|
||||
<a href="/matmair">Matthias Mair</a>
|
||||
</p>
|
||||
<p>A good starting-point for developing your own plugin is taking a look at the <a href="https://docs.inventree.org/en/stable/extend/plugins/">documentation</a>.</p>
|
||||
<p>A good starting-point for developing your own plugin is taking a look at the <a href="https://docs.inventree.org/en/stable/plugins/">documentation</a>.</p>
|
||||
|
||||
<p>You could also use one of the current plugins as a sample.</p>
|
||||
|
||||
|
@@ -114,17 +114,17 @@
|
||||
<li>Custom barcodes can now be assigned to <em>Supplier Part</em> instances</li>
|
||||
</ul>
|
||||
|
||||
<p>Read more about the updated barcode support in <a href="https://docs.inventree.org/en/stable/barcodes/barcodes/">the InvenTree documentation</a>.</p>
|
||||
<p>Read more about the updated barcode support in <a href="https://docs.inventree.org/en/stable/barcodes/">the InvenTree documentation</a>.</p>
|
||||
|
||||
<h3 id="builtin-plugins">Builtin Plugins</h3>
|
||||
|
||||
<p>As part of the ongoing improvements to the plugin system, InvenTree now features a number of “builtin” plugins. These plugins are always active (even if custom plugin support is disabled for the server) and provide core InvenTree functionality in a way which aligns with the operation of the plugin system. This is intended to streamline the way in which plugins are implemented, as core components of the code are now offloaded to the plugin with a simpler interface.</p>
|
||||
|
||||
<p>We have also made some significant improvements to the <a href="https://docs.inventree.org/en/stable/extend/plugins/">plugin system documentation</a>.</p>
|
||||
<p>We have also made some significant improvements to the <a href="https://docs.inventree.org/en/stable/plugins/">plugin system documentation</a>.</p>
|
||||
|
||||
<h3 id="validation-plugins">Validation Plugins</h3>
|
||||
|
||||
<p>A completely new type of plugin introduced in this release is the <a href="https://docs.inventree.org/en/stable/extend/plugins/validation/">validation plugin mixin</a>. This plugin allows users to implement custom validation methods for various database fields. In addition to allowing validation of field values against complex custom rules, this plugin allows automated generation of the “next value” for certain fields, such as serial numbers and batch codes.</p>
|
||||
<p>A completely new type of plugin introduced in this release is the <a href="https://docs.inventree.org/en/stable/plugins/mixins/validation/">validation plugin mixin</a>. This plugin allows users to implement custom validation methods for various database fields. In addition to allowing validation of field values against complex custom rules, this plugin allows automated generation of the “next value” for certain fields, such as serial numbers and batch codes.</p>
|
||||
|
||||
<h3 id="news-reader">News Reader</h3>
|
||||
|
||||
@@ -136,7 +136,7 @@
|
||||
|
||||
<h3 id="part-scheduling">Part Scheduling</h3>
|
||||
|
||||
<p>The <a href="https://docs.inventree.org/en/stable/part/scheduling/">Part Scheduling</a> functionality has received some updates in this release. If enabled, the <em>Part Scheduling</em> tab shows predicted future stock levels, based on incoming and outgoing orders.</p>
|
||||
<p>The Part Scheduling functionality has received some updates in this release. If enabled, the <em>Part Scheduling</em> tab shows predicted future stock levels, based on incoming and outgoing orders.</p>
|
||||
|
||||
<h3 id="supplier-part-pack-size">Supplier Part Pack Size</h3>
|
||||
|
||||
|
@@ -88,7 +88,7 @@
|
||||
|
||||
<h3 id="currency-conversion">Currency Conversion</h3>
|
||||
|
||||
<p>In a major improvement for currency support, conversion between different currencies is now performed “client side”. This means that data tables which contain money values with different currencies can now be added together - and in a computationally efficient manner. Currency exchange rate data is now made available via <a href="https://docs.inventree.org/en/stable/api/api/">the API</a> - paving the way for future feature development in this area.</p>
|
||||
<p>In a major improvement for currency support, conversion between different currencies is now performed “client side”. This means that data tables which contain money values with different currencies can now be added together - and in a computationally efficient manner. Currency exchange rate data is now made available via <a href="https://docs.inventree.org/en/stable/api/">the API</a> - paving the way for future feature development in this area.</p>
|
||||
|
||||
<h3 id="pricing-features">Pricing Features</h3>
|
||||
|
||||
|
@@ -84,7 +84,7 @@
|
||||
|
||||
<h3 id="return-orders">Return Orders</h3>
|
||||
|
||||
<p>The addition of <a href="https://docs.inventree.org/en/stable/order/return_order/">Return Orders</a> is a significant new feature, which allows users to easily process and manage returned items, whether they are due to customer refunds or defective products. With the ability to track the status of return orders and the associated inventory movements, businesses can better manage their inventory levels, reduce waste, and improve their customer service.</p>
|
||||
<p>The addition of <a href="https://docs.inventree.org/en/stable/sales/return_order/">Return Orders</a> is a significant new feature, which allows users to easily process and manage returned items, whether they are due to customer refunds or defective products. With the ability to track the status of return orders and the associated inventory movements, businesses can better manage their inventory levels, reduce waste, and improve their customer service.</p>
|
||||
|
||||
<h3 id="stocktake-reports">Stocktake Reports</h3>
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
|
||||
<p>InvenTree’s latest release includes improved report template functionality with better currency rendering support, enabling businesses to create professional and accurate reports. This feature allows for more detailed and customizable reports, including the ability to display currency symbols and automatically convert currency values to the appropriate format based on the user’s settings, saving time and effort.</p>
|
||||
|
||||
<p>Refer to the <a href="https://docs.inventree.org/en/stable/report/report/">reporting documentation</a> for further details.</p>
|
||||
<p>Refer to the <a href="https://docs.inventree.org/en/stable/report">reporting documentation</a> for further details.</p>
|
||||
|
||||
<h3 id="search-results">Search Results</h3>
|
||||
|
||||
|
@@ -97,7 +97,7 @@
|
||||
<p>For more information on this new feature, refer to the documentation:</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="https://docs.inventree.org/en/stable/part/part/#units-of-measure">Part units</a></li>
|
||||
<li><a href="https://docs.inventree.org/en/stable/part#units-of-measure">Part units</a></li>
|
||||
<li><a href="https://docs.inventree.org/en/stable/part/parameter/#parameter-units">Part parameter units</a></li>
|
||||
</ul>
|
||||
|
||||
@@ -105,7 +105,7 @@
|
||||
|
||||
<p>To streamline project management and order tracking, InvenTree now offers configurable project codes. These codes can be created and assigned to orders, providing a convenient way to organize and categorize your inventory based on specific projects. This enhancement enhances overall visibility and enables efficient project-based inventory management.</p>
|
||||
|
||||
<p>Read more about project code support <a href="https://docs.inventree.org/en/stable/order/project_codes/">in the documentation</a></p>
|
||||
<p>Read more about project code support <a href="https://docs.inventree.org/en/stable/concepts/project_codes/">in the documentation</a></p>
|
||||
|
||||
<h3 id="parameter-types">Parameter Types</h3>
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
|
||||
<h3 id="report-plugins">Report Plugins</h3>
|
||||
|
||||
<p>InvenTree introduces a new <a href="https://docs.inventree.org/en/stable/extend/plugins/report/">plugin mixin class</a> that allows for custom context variables to be injected into reports. This enhancement provides extensive customization options when generating reports, enabling you to include additional information relevant to your business processes. With improved report functionality, you can present inventory data in a more comprehensive and meaningful way.</p>
|
||||
<p>InvenTree introduces a new <a href="https://docs.inventree.org/en/stable/plugins/mixins/report/">plugin mixin class</a> that allows for custom context variables to be injected into reports. This enhancement provides extensive customization options when generating reports, enabling you to include additional information relevant to your business processes. With improved report functionality, you can present inventory data in a more comprehensive and meaningful way.</p>
|
||||
|
||||
<h3 id="build-orders-consume-stock">Build Orders Consume Stock</h3>
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
|
||||
<h3 id="scrap-build-order-outputs">Scrap Build Order Outputs</h3>
|
||||
|
||||
<p>InvenTree’s latest release introduces a valuable feature that allows users to <a href="https://docs.inventree.org/en/stable/build/output/#scrap-build-output">scrap partially completed or failed build outputs</a> while retaining traceability. In real-world manufacturing scenarios, it is common for builds to encounter challenges or errors, resulting in the need to discard certain outputs. With the new scrap build outputs functionality, you can easily identify and remove faulty or incomplete build outputs from your inventory. This feature ensures accurate stock tracking and maintains a clear audit trail, improving reliability and efficiency in your manufacturing processes.</p>
|
||||
<p>InvenTree’s latest release introduces a valuable feature that allows users to <a href="https://docs.inventree.org/en/stable/manufacturing/output/#scrap-build-output">scrap partially completed or failed build outputs</a> while retaining traceability. In real-world manufacturing scenarios, it is common for builds to encounter challenges or errors, resulting in the need to discard certain outputs. With the new scrap build outputs functionality, you can easily identify and remove faulty or incomplete build outputs from your inventory. This feature ensures accurate stock tracking and maintains a clear audit trail, improving reliability and efficiency in your manufacturing processes.</p>
|
||||
|
||||
<h3 id="image-uploads">Image Uploads</h3>
|
||||
|
||||
@@ -135,7 +135,7 @@
|
||||
|
||||
<h3 id="address-management">Address Management</h3>
|
||||
|
||||
<p>InvenTree now offers <a href="https://docs.inventree.org/en/stable/order/company/#addresses">increased support for address management</a> with a more complex address database model. This enhancement enables businesses to manage addresses more effectively, accommodating various scenarios such as multiple shipping locations, customer addresses, and supplier information. With improved address management, you can maintain accurate records and ensure smooth logistics operations.</p>
|
||||
<p>InvenTree now offers <a href="https://docs.inventree.org/en/stable/concepts/company/#addresses">increased support for address management</a> with a more complex address database model. This enhancement enables businesses to manage addresses more effectively, accommodating various scenarios such as multiple shipping locations, customer addresses, and supplier information. With improved address management, you can maintain accurate records and ensure smooth logistics operations.</p>
|
||||
|
||||
<h3 id="svg-support">SVG Support</h3>
|
||||
|
||||
|
@@ -152,7 +152,7 @@
|
||||
|
||||
<h3 id="enhanced-validation">Enhanced Validation</h3>
|
||||
|
||||
<p>Enhanced custom validation is implemented in <a href="https://github.com/inventree/InvenTree/pull/6410">PR 6410</a>. This addition allows for more comprehensive validation of models by integrated plugins. Refer to the <a href="https://docs.inventree.org/en/stable/extend/plugins/validation/">updated validation plugin docs</a> for more information.</p>
|
||||
<p>Enhanced custom validation is implemented in <a href="https://github.com/inventree/InvenTree/pull/6410">PR 6410</a>. This addition allows for more comprehensive validation of models by integrated plugins. Refer to the <a href="https://docs.inventree.org/en/stable/plugins/mixins/validation/">updated validation plugin docs</a> for more information.</p>
|
||||
|
||||
<h3 id="api-documentation">API Documentation</h3>
|
||||
|
||||
|
@@ -314,7 +314,7 @@ wget https://raw.githubusercontent.com/inventree/InvenTree/master/docker/Caddyfi
|
||||
|
||||
<h4 id="further-reading">Further Reading</h4>
|
||||
|
||||
<p>This tutorial is a simple guide to getting InvenTree up and running in a Docker container. For more advanced usage, you should read the <a href="https://docs.inventree.org/en/stable/start/intro/">InvenTree Setup Guide</a> guide, which provides a lot more detail about the InvenTree Docker setup.</p>
|
||||
<p>This tutorial is a simple guide to getting InvenTree up and running in a Docker container. For more advanced usage, you should read the <a href="https://docs.inventree.org/en/stable/start/">InvenTree Setup Guide</a> guide, which provides a lot more detail about the InvenTree Docker setup.</p>
|
||||
|
||||
<h4 id="project-sponsorship">Project Sponsorship</h4>
|
||||
|
||||
|
512
blog/2025/09/15/1.0.0.html
Normal file
512
blog/2025/09/15/1.0.0.html
Normal file
@@ -0,0 +1,512 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang=" en-US ">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<link rel="stylesheet" href="/assets/splide/css/splide.min.css">
|
||||
<link rel="stylesheet" href="/assets/index.css">
|
||||
<link rel="shortcut icon" type="image/png" href="/assets/icon/favicon.ico">
|
||||
|
||||
<script src="/assets/splide/js/splide.min.js"></script>
|
||||
|
||||
<!-- Fontawesome integration -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css">
|
||||
|
||||
<title>InvenTree - 1.0.0 Release</title>
|
||||
<meta itemprop="description" name="description"
|
||||
content="InvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of a..." />
|
||||
|
||||
<!-- Begin Jekyll SEO tag v2.8.0 -->
|
||||
<title>1.0.0 Release | InvenTree</title>
|
||||
<meta name="generator" content="Jekyll v4.3.3" />
|
||||
<meta property="og:title" content="1.0.0 Release" />
|
||||
<meta name="author" content="SchrodingersGat" />
|
||||
<meta property="og:locale" content="en_US" />
|
||||
<meta name="description" content="1.0.0 Release" />
|
||||
<meta property="og:description" content="1.0.0 Release" />
|
||||
<link rel="canonical" href="/blog/2025/09/15/1.0.0" />
|
||||
<meta property="og:url" content="/blog/2025/09/15/1.0.0" />
|
||||
<meta property="og:site_name" content="InvenTree" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="article:published_time" content="2025-09-15T00:00:00+00:00" />
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta property="twitter:title" content="1.0.0 Release" />
|
||||
<script type="application/ld+json">
|
||||
{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2025-09-15T00:00:00+00:00","datePublished":"2025-09-15T00:00:00+00:00","description":"1.0.0 Release","headline":"1.0.0 Release","mainEntityOfPage":{"@type":"WebPage","@id":"/blog/2025/09/15/1.0.0"},"url":"/blog/2025/09/15/1.0.0"}</script>
|
||||
<!-- End Jekyll SEO tag -->
|
||||
|
||||
</head>
|
||||
|
||||
<body class="flex flex-col antialiased cm-gray-1 min-h-screen">
|
||||
<div class="flex-none">
|
||||
<header class="cm-gray-2 body-font sticky top-0 z-50 bg-gradient-to-r from-white to-secondary">
|
||||
<div class="container mx-auto flex flex-wrap p-5 flex-row items-center">
|
||||
<a class="flex title-font font-medium items-center cm-gray-1 mb-0 mr-2" href="/">
|
||||
<img src="/assets/logo.png" alt="logo" height="32" width="32" class="h-8">
|
||||
<span class="ml-3 text-xl">InvenTree</span>
|
||||
</a>
|
||||
|
||||
<div class="flex-grow xs:flex-none"></div>
|
||||
|
||||
<nav class="md:mr-auto md:py-1 xs:ml-4 xs:pl-4 xs:border-l xs:border-gray-400 flex flex-wrap items-center text-base justify-center">
|
||||
<a class="mr-5 hover:cm-gray-1" href="/deploy.html">Deploy</a>
|
||||
<a class="mr-5 hover:cm-gray-1" href="https://docs.inventree.org/en/stable/">Docs</a>
|
||||
<a class="mr-5 hover:cm-gray-1" href="/blog">Blog</a>
|
||||
</nav>
|
||||
|
||||
|
||||
</div>
|
||||
</header> <header>
|
||||
|
||||
<a href="/blog" class="flex items-center m-5 text-xl hover:underline">
|
||||
<img class="w-6 h-6" alt="go back" src="/assets/back.svg">
|
||||
<span>Back</span>
|
||||
</a>
|
||||
|
||||
</header>
|
||||
|
||||
<article>
|
||||
<h1>1.0.0 Release</h1>
|
||||
<p>
|
||||
15 Sep 2025
|
||||
|
||||
|
||||
<a href="/schrodingersgat">Oliver</a>
|
||||
</p>
|
||||
<h2 id="100-release">1.0.0 Release</h2>
|
||||
|
||||
<p>The 1.0.0 release marks a major milestone for the InvenTree project. Not only does it represent an important step in the evolution of the software, but it also introduces a host of new features and improvements that enhance the user experience.</p>
|
||||
|
||||
<p>This release includes significant updates to the user interface, performance optimizations, and a range of new functionalities that have been requested by our community.</p>
|
||||
|
||||
<p>With <a href="https://github.com/inventree/InvenTree/pulls?q=is%3Apr+milestone%3A1.0.0+">over 600 closed issues</a>, this release is a testament to the hard work and dedication of our contributors. We are excited to see how these changes will benefit users and help them manage their inventories more effectively.</p>
|
||||
|
||||
<h3 id="changelog">Changelog</h3>
|
||||
|
||||
<p>For a full list of changes made in this release, please see the <a href="https://github.com/inventree/InvenTree/releases/tag/1.0.0">release notes on GitHub</a>. The major changes are documented below, but there are many other improvements and bug fixes that have been implemented as well.</p>
|
||||
|
||||
<p>You can also view a <a href="https://github.com/inventree/InvenTree/compare/0.17.0...1.0.0">full changelog between 0.17.0 and 1.0.0</a></p>
|
||||
|
||||
<p>Going forward, we will be tracking major project changes in an internal <a href="https://github.com/inventree/InvenTree/blob/master/CHANGELOG.md">CHANGELOG file</a> - this file will be updated with each release, and will provide an overview of the major changes made in each version. This file is in addition to the release notes which are provided by GitHub.</p>
|
||||
|
||||
<h3 id="update-procedure">Update Procedure</h3>
|
||||
|
||||
<p>To update to the latest version of InvenTree, please follow the updating instructions provided in the <a href="https://docs.inventree.org">InvenTree documentation</a>. Note that the particular update procedure may vary depending on your installation method.</p>
|
||||
|
||||
<h2 id="user-experience-survey">User Experience Survey</h2>
|
||||
|
||||
<p>In conjunction with the 1.0.0 release, we have launched a <a href="https://forms.gle/a7mFzqZj57FeS7ds9">user experience survey</a> to gather feedback from our community. This survey is designed to help us understand how users are utilizing InvenTree, what features they find most valuable, and where we can improve.</p>
|
||||
|
||||
<p>The survey is anonymous and should take no more than 10 minutes to complete. We encourage all users to participate, as your feedback is invaluable in shaping the future of InvenTree. Please consider taking the survey and sharing it with others who use InvenTree.</p>
|
||||
|
||||
<h2 id="breaking-changes">Breaking Changes</h2>
|
||||
|
||||
<p>As with any major release, there are some breaking changes that users should be aware of. These changes may require adjustments to existing installations, plugins, or customizations.</p>
|
||||
|
||||
<p>The most significant breaking changes are documented below, but users should also refer to the <a href="https://github.com/inventree/InvenTree/pulls?q=is%3Apr+milestone%3A1.0.0+label%3Abreaking">full list of breaking changes</a>.</p>
|
||||
|
||||
<h3 id="user-interface-overhaul">User Interface Overhaul</h3>
|
||||
|
||||
<p>By far the largest change introduced in this release is the new user interface. The UI has been completely refactored to use a modern javascript / React framework, which allows for a more responsive and dynamic user experience. This change not only improves the performance of the application but also makes it easier to maintain and extend in the future.</p>
|
||||
|
||||
<p>The new UI is now available at the <code class="language-plaintext highlighter-rouge">/web/</code> endpoint - and the old UI has been removed entirely.</p>
|
||||
|
||||
<p>Note that old URLs have been remapped to the new UI, so users should not experience any issues with bookmarks or links that point to the old interface.</p>
|
||||
|
||||
<p>The general “look and feel” of the InvenTree UI remains consistent with previous versions, but the underlying technology has been updated to provide a more robust and flexible foundation for future development.</p>
|
||||
|
||||
<p>While we have made every effort to ensure that the new UI is compatible with existing data and functionality, there may be some edge cases where users encounter issues. We encourage users to report any problems they encounter so that we can address them promptly. In particular, if there are any features that are missing or not functioning as expected, please let us know <a href="https://github.com/inventree/InvenTree/issues">via GitHub issues</a>.</p>
|
||||
|
||||
<h3 id="plugin-system-enhancements">Plugin System Enhancements</h3>
|
||||
|
||||
<p>The plugin system has received significat attention in this release. In particular, the plugin system now provides a mechanism for plugins to render their own user interface componenents within the new UI framework.</p>
|
||||
|
||||
<p>To this end, we have released an <a href="https://www.npmjs.com/package/@inventreedb/ui">npm package</a> that provides an interface layer for plugins looking to render custom components within the InvenTree UI.</p>
|
||||
|
||||
<p>Additionally, we now have a <a href="https://github.com/inventree/plugin-creator/">plugin creation tool</a> which allows users to quickly scaffold InvenTree plugins.</p>
|
||||
|
||||
<h3 id="machine-registry-enhancements">Machine Registry Enhancements</h3>
|
||||
|
||||
<p>The machine registry has <a href="https://github.com/inventree/InvenTree/pull/10150">received an overhaul</a> which introduces a breaking change for any plugins which implement custom machine registry functionality.</p>
|
||||
|
||||
<p>If you have implemented a custom machine registry plugin, you will need to update your plugin to work with the new machine registry system. In particular, the plugin must now implement a new <code class="language-plaintext highlighter-rouge">MachineDriverMixin</code> class, which provides a consistent interface for interacting with the machine registry.</p>
|
||||
|
||||
<h3 id="user-interface-plugins">User Interface Plugins</h3>
|
||||
|
||||
<p>This change may require some adjustments for users who have customized their InvenTree installation, particularly if they have created custom templates or plugins that rely on the old UI structure.</p>
|
||||
|
||||
<p>Any plugins which have not been updated to work with the new UI will not function correctly, and will need to be adjusted to work with the new interface. This is after we <a href="https://github.com/inventree/InvenTree/pull/8828">removed the old PanelMixin class</a>. This means that any plugins which inherit from the PanelMixin class will now throw an error when loaded.</p>
|
||||
|
||||
<p>The new UI plugin system provides a significant amount of <em>context</em> information to the plugins at render time. This means that plugins can now access information about the current user, the current page, and other relevant data when rendering their components.</p>
|
||||
|
||||
<p>Additionally, the plugins can access the API directly from the UI, allowing for more dynamic interactions and data retrieval, without the plugin needing to authenticate separately.</p>
|
||||
|
||||
<p>This plugin context system was introduced in <a href="https://github.com/inventree/InvenTree/pull/9439">#9439</a>, but further additions and improvements have been made in subsequent pull requests.</p>
|
||||
|
||||
<p>The <a href="https://www.npmjs.com/package/@inventreedb/ui">@inventreedb/ui</a> npm package provides full type definitions for the plugin context, making it easier for developers to create plugins that integrate seamlessly with the new UI.</p>
|
||||
|
||||
<p>Further, the npm package provieds a set of pre-defined react components which can be reused by plugins.</p>
|
||||
|
||||
<p>Scaffolding a UI plugin from scratch represents a significant amount of work, so we have created a <a href="https://github.com/inventree/plugin-creator/">plugin creation tool</a> which generates all of the necessary boilerplate code to get started quickly. This tool can be used to create a new plugin that is ready to be extended with custom functionality.</p>
|
||||
|
||||
<p>To integrate seamlessly with the UI, plugin developers should be aware that some <em>core</em> libraries (such as <em>react</em> / <em>mantine</em> / <em>lingui</em>) must be externalized, as they are already provided by the InvenTree UI. This means that plugins should not include their own versions of these libraries, as this can lead to conflicts and unexpected behavior.</p>
|
||||
|
||||
<p>Note that this is all handled automatically by the plugin creation tool, so developers should not need to worry about this unless they are creating plugins manually.</p>
|
||||
|
||||
<h3 id="notification-plugins">Notification Plugins</h3>
|
||||
|
||||
<p>We have changed the way that notification methods can be <a href="https://github.com/inventree/InvenTree/pull/9735">implented via plugins</a>. This change was made to ensure that custom notification methods were able to be loaded and unloaded correctly, and to provide a more consistent approach for implementing notification methods across different plugins.</p>
|
||||
|
||||
<p><em>However</em> - this change is <em>not</em> backwards compatible with existing plugins that implement notification methods. Plugin developers will need to update their plugins to use the new notification system in order to continue providing custom notification methods.</p>
|
||||
|
||||
<h3 id="builtin-plugins">Builtin Plugins</h3>
|
||||
|
||||
<p>The InvenTree project now includes a number of builtin plugins that provide additional functionality and features. These plugins are designed to work seamlessly with the new UI and provide a range of enhancements to the core InvenTree functionality.</p>
|
||||
|
||||
<p>Some of these plugins are <em>mandatory</em> - as they are required for the core functionality of InvenTree. These mandatory plugins are installed automatically when InvenTree is installed, and cannot be disabled.</p>
|
||||
|
||||
<h3 id="docker-changes">Docker Changes</h3>
|
||||
|
||||
<p>Our <a href="https://hub.docker.com/r/inventree/inventree">official docker image</a> is now based on a Debian image, rather than Alpine. <a href="https://github.com/inventree/InvenTree/pull/10227">This change</a> was made due to a number of limitations with the Alpine image. The move to a Debian image also brings the docker image closer to the other installation methods, and the devcontainer setup.</p>
|
||||
|
||||
<p>Functionally, the new docker image should behave identically to the old image, and users should not experience any issues when updating.</p>
|
||||
|
||||
<p>Additionally, we have updated the <a href="https://github.com/inventree/InvenTree/pull/9041">supported postgres version</a> in our docker image from version 13 to version 17.</p>
|
||||
|
||||
<p>For new installations, this should not cause any issues, as the docker image will automatically pull the latest version of postgres.</p>
|
||||
|
||||
<p>For existing installations, this will only make a difference if you wish to update your existing database. Note that our docker image will still support connection to older versions of postgres, so users can continue to use their existing database without any issues.</p>
|
||||
|
||||
<h3 id="api-changes">API Changes</h3>
|
||||
|
||||
<p>There have been a significant number of changes to the InvenTree API in this release, although the majority of these changes are backwards compatible.</p>
|
||||
|
||||
<p>All API changes are <a href="https://github.com/inventree/InvenTree/blob/master/src/backend/InvenTree/InvenTree/api_version.py">documented in the source code</a>, and users can refer to this file to see the specific changes that have been made.</p>
|
||||
|
||||
<p>Additionally, the <a href="https://docs.inventree.org/en/stable/api/schema/">API schema is documented</a> and provides a comprehensive overview of the available endpoints and their parameters.</p>
|
||||
|
||||
<h3 id="stock-item-creation">Stock Item Creation</h3>
|
||||
|
||||
<p>Creation of stock items via the API has been adjusted, to ensure that the return type is consistent. Now, the return type is always an array of items, even if only a single item is created. Refer to <a href="https://github.com/inventree/InvenTree/pull/9969">PR #9969</a> for more information on this change.</p>
|
||||
|
||||
<h3 id="auth-changes">Auth Changes</h3>
|
||||
|
||||
<p>We have refactored our authentication framework significantly, both to support the new UI and also to align with modern best practices.</p>
|
||||
|
||||
<p>These changes should not affect most users, as we have endeavored to maintain compatibility with existing authentication methods. However, users who have implemented custom authentication mechanisms may need to review their code to ensure compatibility with the new framework.</p>
|
||||
|
||||
<p>In particular we have updated our <a href="https://github.com/inventree/InvenTree/pull/6293">django-allauth framework</a> to align with changes to that library.</p>
|
||||
|
||||
<h3 id="bulk-update-mixin">Bulk Update Mixin</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/9313">PR #9313</a> we introduced a “BulkUpdateMixin” class which allows some API endpoints to support bulk updates. This mixin can be used to extend existing API endpoints to allow for bulk updates of objects, which can significantly improve performance when updating large datasets.</p>
|
||||
|
||||
<h3 id="part-scheduling">Part Scheduling</h3>
|
||||
|
||||
<p>The existing “Part Scheduling” feature has been removed in this release, and replaced with a plugin-based solution. This change was made to allow for greater flexibility and customization of the scheduling functionality, as well as to improve performance and maintainability.</p>
|
||||
|
||||
<p>Refer to the <a href="https://github.com/inventree/inventree-stock-forecasting">InvenTree Stock Forecasting plugin</a> to replace the old part scheduling functionality.</p>
|
||||
|
||||
<h3 id="part-stocktake">Part Stocktake</h3>
|
||||
|
||||
<p>The “Part Stocktake” feature has been refactored to make use of the new import/export framework. Prior to <code class="language-plaintext highlighter-rouge">1.0.0</code>, the concept of “stocktake” referred to two separate concepts:</p>
|
||||
|
||||
<ol>
|
||||
<li>The ability to provide a snapshot of the current stock levels for a part</li>
|
||||
<li>Record historical stock levels for a part</li>
|
||||
</ol>
|
||||
|
||||
<p>These are now split into two separate features:</p>
|
||||
|
||||
<h4 id="stocktake-export">Stocktake Export</h4>
|
||||
|
||||
<p>Exporting stocktake data is now handled by a provided export plugin, which integrates into the refactored data export framework. This means that the “stocktake” feature is no longer a separate exporter pathway. Refer to the InvenTree documentation for details on how to use the new stocktake export functionality.</p>
|
||||
|
||||
<h4 id="stock-history">Stock History</h4>
|
||||
|
||||
<p>The “Stock History” feature remains in place, and allows users to view the historical stock levels for a part. This feature provides a detailed view of how stock levels have changed over time, and can be useful for tracking inventory trends and identifying potential issues.</p>
|
||||
|
||||
<p>Refer to <a href="https://github.com/inventree/InvenTree/pull/10124">PR #10124</a> for further information on this change.</p>
|
||||
|
||||
<h3 id="auto-create-child-builds">Auto-Create Child Builds</h3>
|
||||
|
||||
<p>The “auto-creation of child builds” feature has been removed from the core functionality, as it was not configurable and too narrowly scoped to be useful for most users. This feature has been replaced with a more flexible plugin-based solution, which allows users to create custom logic for automatically creating child builds based on their specific requirements.</p>
|
||||
|
||||
<p>Refer to <a href="https://github.com/inventree/InvenTree/pull/9574">PR #9574</a> for more information.</p>
|
||||
|
||||
<h3 id="remove-django-import-export">Remove django-import-export</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/8685">#8685</a> we removed the <a href="https://django-import-export.readthedocs.io/en/latest/">django-import-export</a> framework, which is what was previously used for data import and export. This has been replaced with a <a href="https://github.com/inventree/InvenTree/issues/8686">custom API driven solution</a> which is more flexible and easier to use. Our new framework runs in the background worker, allowing for processing of large datasets without blocking the user interface (or causing the web server to timeout).</p>
|
||||
|
||||
<p>Our data import and export framework has been completely rewritten, and replaced with a custom API driven solution.</p>
|
||||
|
||||
<h3 id="stock-return">Stock Return</h3>
|
||||
|
||||
<p>The “Stock Return” functionality has been expanded to allow for stock to be returned after having been consumed by a build order. To facilitate this, the API has been refactored to allow for stock returns to be processed more efficiently, and the user interface has been updated to reflect these changes.</p>
|
||||
|
||||
<p>However this does represent a breaking change to the API, and users who have implemented custom logic for handling stock returns will need to update their code to accommodate the new API structure.</p>
|
||||
|
||||
<p>Refer to <a href="https://github.com/inventree/InvenTree/pull/10132">PR #10132</a> for more information on this change.</p>
|
||||
|
||||
<h2 id="new-features--improvements">New Features / Improvements</h2>
|
||||
|
||||
<p>There are a number of new features and improvements in this release, many of which have been requested by our community. Some of the most notable changes include:</p>
|
||||
|
||||
<h3 id="performance-improvements">Performance Improvements</h3>
|
||||
|
||||
<p>We have made significant performance improvements across the board, particularly in areas such as data loading and rendering. The new UI framework is designed to be more efficient, which should result in a smoother experience for users, especially when dealing with large datasets.</p>
|
||||
|
||||
<p>The API has also been optimized to reduce response times and improve overall performance.</p>
|
||||
|
||||
<h3 id="dashboard">Dashboard</h3>
|
||||
|
||||
<p>The new user interface now includes a customizable dashboard that allows users to add, remove, and rearrange widgets according to their preferences. This feature provides a more personalized experience and enables users to focus on the information that is most relevant to them.</p>
|
||||
|
||||
<p>This dashboard can be extended with custom widgets provided by plugins, allowing for even greater flexibility and customization.</p>
|
||||
|
||||
<h3 id="order-calendar-views">Order Calendar Views</h3>
|
||||
|
||||
<p>We have <a href="https://github.com/inventree/InvenTree/pull/8933">reimplemented calendar views</a> for purchase orders, sales orders, and build orders. These calendar views allow users to see their orders in a calendar format, making it easier to visualize and manage their order schedules.</p>
|
||||
|
||||
<h3 id="email-enhancements">Email Enhancements</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9608">PR #9608</a> enhances email support capabilities, including plugin support for sending and receiving emails.</p>
|
||||
|
||||
<h3 id="order-start-dates">Order Start Dates</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/8966">#PR 8966</a> we introduced a new “start date” field for purchase orders and sales orders. This field allows users to specify the date when the order is expected to start processing, which can be useful for planning and scheduling purposes. In <a href="https://github.com/inventree/InvenTree/pull/8915">#8915</a> the “start date” field was also added for build orders.</p>
|
||||
|
||||
<h3 id="reporting-printing">Reporting Printing</h3>
|
||||
|
||||
<p>Printing of reports and labels is now <a href="https://github.com/inventree/InvenTree/pull/9199">offloaded to the background worker</a>, allowing for more efficient processing of large reports without blocking the user interface. This change also introduces progress tracking for report generation, so users can see the status of their report as it is being generated.</p>
|
||||
|
||||
<p>Additionally, reports and labels can now be generated programatically from plugins, allowing for greater flexibility and customization of report generation.</p>
|
||||
|
||||
<h3 id="report-merging">Report Merging</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9532">PR #9532</a> introduces a new feature that allows users to merge multiple items into a single report. When generating reports against multiple items, users can now select to render the report as a single document, rather than generating separate reports for each item.</p>
|
||||
|
||||
<p>This is selected as an option against a particular report template. Note that it requires the report template to be designed to support merging, as not all templates will be suitable for this feature.</p>
|
||||
|
||||
<h3 id="part-parameter-tracking">Part Parameter Tracking</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/10023">PR #10023</a> tracks the user who last modified a part parameter, and when it was last modified. This change provides greater visibility into changes made to part parameters.</p>
|
||||
|
||||
<h3 id="external-build-orders">External Build Orders</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/9312">PR #9312</a> we introduced support for external build orders, allowing users to manage build orders that are fulfilled by external suppliers. This feature is particularly useful for users who need to manage builds that are outsourced to third-party manufacturers or suppliers.</p>
|
||||
|
||||
<p>Refer to the <a href="https://docs.inventree.org/en/latest/manufacturing/external/">InvenTree documentation</a> for further information.</p>
|
||||
|
||||
<h3 id="bom-enhancements">BOM Enhancements</h3>
|
||||
|
||||
<p>Added support for greater flexibility in managing Bills of Materials (BOMs) - refer to <a href="https://github.com/inventree/InvenTree/pull/10042">#10042</a> for details.</p>
|
||||
|
||||
<h3 id="build-order-consume">Build Order Consume</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/8191">PR #8191</a> adds the ability to partially consume stock against a build order, even if the build order is not yet complete. This feature allows users to consume stock as it allocated, rather than waiting for the entire build order to be completed. This provides users greater flexibility in managing their inventory and build orders, and can help to reduce delays in production.</p>
|
||||
|
||||
<h3 id="serial-number-navigation">Serial Number Navigation</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9505">PR #9505</a> adds the ability to navigate between serial numbers in the user interface.</p>
|
||||
|
||||
<h3 id="override-global-settings">Override Global Settings</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9718">PR #9718</a> introduces the ability to override global settings via system-level configuration. This allows system administrators to “lock down” certain settings, preventing users from changing them in the user interface. This is particularly useful for ensuring consistency across installations and preventing accidental changes to critical settings.</p>
|
||||
|
||||
<h3 id="override-plugins">Override Plugins</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/9718">PR #10094</a> we introduced the ability for system adminstrators to mark certain plugins as “mandatory” at the system configuration level. This means that these plugins cannot be disabled or uninstalled by users, ensuring that critical functionality remains available.</p>
|
||||
|
||||
<h2 id="bug-fixes">Bug Fixes</h2>
|
||||
|
||||
<p>There have been a <em>significant</em> number of bug fixes in this release, with over <a href="https://github.com/inventree/InvenTree/pulls?q=is%3Apr+milestone%3A1.0.0+label%3Abug+">150 tagged PRs</a>.</p>
|
||||
|
||||
<p>Note that many of these bug fixes are related to implementation of the new interface, and may not represent issues present in previous versions of the InvenTree software.</p>
|
||||
|
||||
<h2 id="contributing">Contributing</h2>
|
||||
|
||||
<p>As always, we would like to extend our heartfelt thanks to all of the contributors who have worked tirelessly to make this release possible. The InvenTree project is a community-driven effort, and it is only through the contributions of our users that we are able to continue improving and evolving the software.</p>
|
||||
|
||||
<p>There are now <a href="https://github.com/inventree/InvenTree/graphs/contributors">over 100 contributors</a> to the InvenTree project, and we are grateful for each and every one of you. Whether you have contributed code, reported bugs, provided feedback, or simply used the software, your support is invaluable to us.</p>
|
||||
|
||||
<h3 id="new-contributors">New Contributors</h3>
|
||||
|
||||
<p>The following developers made their first contributions to the InvenTree project in this release:</p>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="https://github.com/gunstr" class="user-mention">@gunstr</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9274</li>
|
||||
<li>
|
||||
<a href="https://github.com/reilly-callaway" class="user-mention">@reilly-callaway</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9575</li>
|
||||
<li>
|
||||
<a href="https://github.com/aluminum-ice" class="user-mention">@aluminum-ice</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9638</li>
|
||||
<li>
|
||||
<a href="https://github.com/cbenhagen" class="user-mention">@cbenhagen</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9641</li>
|
||||
<li>
|
||||
<a href="https://github.com/GoryMoon" class="user-mention">@GoryMoon</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9704</li>
|
||||
<li>
|
||||
<a href="https://github.com/willbicks" class="user-mention">@willbicks</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9655</li>
|
||||
<li>
|
||||
<a href="https://github.com/gitbock" class="user-mention">@gitbock</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9775</li>
|
||||
<li>
|
||||
<a href="https://github.com/RedEchidnaUK" class="user-mention">@RedEchidnaUK</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9400</li>
|
||||
<li>
|
||||
<a href="https://github.com/tristanle22" class="user-mention">@tristanle22</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9532</li>
|
||||
<li>
|
||||
<a href="https://github.com/sufyan-mukadam" class="user-mention">@sufyan-mukadam</a> made their first contribution in https://github.com/inventree/InvenTree/pull/9673</li>
|
||||
<li>
|
||||
<a href="https://github.com/the78mole" class="user-mention">@the78mole</a> made their first contribution in https://github.com/inventree/InvenTree/pull/10107</li>
|
||||
<li>
|
||||
<a href="https://github.com/daniil4udo" class="user-mention">@daniil4udo</a> made their first contribution in https://github.com/inventree/InvenTree/pull/10179</li>
|
||||
</ul>
|
||||
|
||||
<h3 id="translation">Translation</h3>
|
||||
|
||||
<p>Our <a href="https://crowdin.com/project/inventree">translation efforts</a> continue to grow, with coverage increasing across a wide range of languages. We are grateful to all of our translators who have contributed to making InvenTree accessible to users around the world.</p>
|
||||
|
||||
<p>If you are interested in contributing to the translation efforts, please visit our <a href="https://crowdin.com/project/inventree">Crowdin project</a> and join the community of translators.</p>
|
||||
|
||||
<h3 id="code-contributions">Code Contributions</h3>
|
||||
|
||||
<p>Check out our GitHub page for a list of outstanding issues and feature requests. If you are a developer, you can help to contribute to the project by submitting a pull request.</p>
|
||||
|
||||
<p>In particular, we are looking for assistance with frontend development, as we work to complete the new user interface and improve the overall UI/UX of the project.</p>
|
||||
|
||||
<h3 id="report-bugs">Report Bugs</h3>
|
||||
|
||||
<p>If you encounter a bug in InvenTree, please report it on our <a href="https://github.com/inventree/inventree/issues">GitHub issues page</a>. Please ensure that you provide as much information as possible to help us diagnose and fix the issue.</p>
|
||||
|
||||
<h3 id="documentation--technical-writing">Documentation / Technical Writing</h3>
|
||||
|
||||
<p>If you have experience with technical writing, you can help to improve the InvenTree documentation. We are always looking for help to improve the documentation and make it more accessible to new users.</p>
|
||||
|
||||
<h3 id="financial-support">Financial Support</h3>
|
||||
|
||||
<p>Sponsorships help to keep this project sustainable, and buys time for the core developers to commit to the project. A recurring or one off sponsorship is a great way to help InvenTree development to continue at full steam!</p>
|
||||
|
||||
<p>The work undertaken to keep InvenTree running is done by a very small group of core developers, who do so in their spare time (and are not sponsored by their employers to work on InvenTree). If you benefit from the InvenTree project, please consider contributing to maintain vibrant development of this software!</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="https://polar.sh/inventree">Polar.sh</a></li>
|
||||
<li><a href="https://github.com/sponsors/inventree">GitHub</a></li>
|
||||
</ul>
|
||||
|
||||
<p>If you are using InvenTree in a commercial setting, please consider sponsoring the project to help support ongoing development and maintenance. Your support is greatly appreciated and helps to ensure that InvenTree remains a viable and sustainable project for years to come.</p>
|
||||
|
||||
<p>If your company benefits from InvenTree, please consider a <a href="https://buy.polar.sh/polar_cl_d7lPAgS9jnW8NDOSWATqdz2gs3wUD1x5M5o7C2rPoAL">one time sponsorship</a> or a <a href="https://buy.polar.sh/polar_cl_UlGc3bUjwB7Vx89dhAY2iF3kUIVFBJC5mJyow4NlJa6">recurring sponsorship</a> to help support the project.</p>
|
||||
|
||||
<h2 id="future-plans">Future Plans</h2>
|
||||
|
||||
<p>Our focus over the last year has been on the new user interface, and we are excited to see it finally come to fruition in this release. However, there is still much work to be done, and we have a number of plans for future development.</p>
|
||||
|
||||
<p>Check out our <a href="https://github.com/inventree/inventree/issues/">GitHub issues page</a> for a list of outstanding issues and feature requests. We are always looking for help to improve the project, and we welcome contributions from the community.</p>
|
||||
|
||||
<p>You can also help by <a href="https://forms.gle/a7mFzqZj57FeS7ds9">completing the user survey</a> to provide feedback on your experience with InvenTree, and help us to prioritize future development efforts.</p>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
|
||||
<div class="flex-grow"></div>
|
||||
<div class="flex-none">
|
||||
<footer class="cm-gray-2 body-font">
|
||||
<div class="container px-5 pt-8 mx-auto flex md:flex-row md:flex-nowrap flex-wrap flex-col">
|
||||
<div class="w-64 flex-shrink-0 md:mx-0 mx-auto text-center md:text-left">
|
||||
<div class="flex title-font font-medium items-center md:justify-start justify-center cm-gray-1">
|
||||
<img src="/assets/logo.png" alt="logo" height="32" width="32" class="h-8">
|
||||
<span class="ml-3 text-xl">InvenTree</span>
|
||||
</div>
|
||||
<p class="mt-2 text-sm cm-gray-3">Intuitive Inventory Management</p>
|
||||
</div>
|
||||
|
||||
<div class="flex-grow flex flex-wrap md:pl-10 mb-1 md:mt-0 mt-10 md:text-left text-center md:justify-left justify-center">
|
||||
|
||||
|
||||
<div class="md:w-1/4 px-4">
|
||||
<h2 class="footer-categorie title-font">
|
||||
Quick
|
||||
</h2>
|
||||
<nav class="list-none mb-10"><ul>
|
||||
|
||||
<li><a href="/demo.html" class="footer-link">Demo</a></li>
|
||||
|
||||
<li><a href="/deploy.html" class="footer-link">Deploy</a></li>
|
||||
|
||||
<li><a href="https://docs.inventree.org/en/stable/" class="footer-link">Docs</a></li>
|
||||
|
||||
<li><a href="/news" class="footer-link">News</a></li>
|
||||
|
||||
<li><a href="/plugins" class="footer-link">Plugin List</a></li>
|
||||
|
||||
</ul></nav>
|
||||
</div>
|
||||
|
||||
<div class="md:w-1/4 px-4">
|
||||
<h2 class="footer-categorie title-font">
|
||||
<a href="/extend/">Ecosystem</a>
|
||||
</h2>
|
||||
<nav class="list-none mb-10"><ul>
|
||||
|
||||
<li><a href="/extend/api.html" class="footer-link">API</a></li>
|
||||
|
||||
<li><a href="/extend/app.html" class="footer-link">App</a></li>
|
||||
|
||||
<li><a href="/extend/plugin/" class="footer-link">Plugins</a></li>
|
||||
|
||||
<li><a href="/extend/integrate/" class="footer-link">Integrations</a></li>
|
||||
|
||||
</ul></nav>
|
||||
</div>
|
||||
|
||||
<div class="md:w-1/4 px-4">
|
||||
<h2 class="footer-categorie title-font">
|
||||
Sitemap
|
||||
</h2>
|
||||
<nav class="list-none mb-10"><ul>
|
||||
|
||||
<li><a href="/about/" class="footer-link">About</a></li>
|
||||
|
||||
<li><a href="/alternatives/" class="footer-link">Alternatives</a></li>
|
||||
|
||||
<li><a href="/blog" class="footer-link">Blog</a></li>
|
||||
|
||||
<li><a href="/contribute.html" class="footer-link">Contribute</a></li>
|
||||
|
||||
<li><a href="/support.html" class="footer-link">Support</a></li>
|
||||
|
||||
</ul></nav>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="bg-gray-100">
|
||||
<div class="container mx-auto py-4 px-5 flex flex-wrap flex-col sm:flex-row">
|
||||
<p class="cm-gray-2 text-sm text-center sm:text-left">© 2021-now InvenTree by<a href="https://github.com/inventree" rel="noopener" class="cm-gray-2 ml-1" target="_blank">@inventree</a>— website made with ♥ by<a href="https://github.com/matmair" rel="noopener" class="cm-gray-2 ml-1" target="_blank">@matmair</a></p>
|
||||
<span class="inline-flex sm:ml-auto sm:mt-0 mt-2 justify-center sm:justify-start">
|
||||
<span class="invisible"><a rel="me" href="https://chaos.social/@InvenTree">Mastodon</a></span>
|
||||
<a href="https://github.com/inventree/inventree" alt="github repo" class="ml-3 cm-gray-3">
|
||||
<img class="h-5 w-5" alt="GitHub logo" src="/assets/github.svg">
|
||||
</a>
|
||||
<a href="https://reddit.com/r/inventree" alt="Reddit" class="ml-3 cm-gray-3">
|
||||
<img class="h-5 w-5" alt="Reddit logo" src="/assets/reddit.svg">
|
||||
</a>
|
||||
<a href="https://twitter.com/inventreedb" alt="Twitter" class="ml-3 cm-gray-3">
|
||||
<img class="h-5 w-5" alt="Twitter logo" src="/assets/twitter.svg">
|
||||
</a>
|
||||
<a href="https://chaos.social/@InvenTree" rel="me" alt="Mastodon" class="ml-3 cm-gray-3">
|
||||
<img class="h-5 w-5" alt="Mastodon logo" src="/assets/mastodon.svg">
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
431
blog/feed.atom
431
blog/feed.atom
@@ -1,4 +1,321 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.3">Jekyll</generator><link href="/blog/feed.atom" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2025-09-13T01:07:43+00:00</updated><id>/blog/feed.atom</id><title type="html">InvenTree</title><subtitle>InvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.</subtitle><entry><title type="html">Machine Plugin Refactor</title><link href="/blog/2025/08/21/machine-refactor" rel="alternate" type="text/html" title="Machine Plugin Refactor" /><published>2025-08-21T00:00:00+00:00</published><updated>2025-08-21T00:00:00+00:00</updated><id>/blog/2025/08/21/machine-refactor</id><content type="html" xml:base="/blog/2025/08/21/machine-refactor"><![CDATA[<h2 id="machine-plugin-refactor">Machine Plugin Refactor</h2>
|
||||
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.3">Jekyll</generator><link href="/blog/feed.atom" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2025-09-15T02:52:55+00:00</updated><id>/blog/feed.atom</id><title type="html">InvenTree</title><subtitle>InvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.</subtitle><entry><title type="html">1.0.0 Release</title><link href="/blog/2025/09/15/1.0.0" rel="alternate" type="text/html" title="1.0.0 Release" /><published>2025-09-15T00:00:00+00:00</published><updated>2025-09-15T00:00:00+00:00</updated><id>/blog/2025/09/15/1.0.0</id><content type="html" xml:base="/blog/2025/09/15/1.0.0"><![CDATA[<h2 id="100-release">1.0.0 Release</h2>
|
||||
|
||||
<p>The 1.0.0 release marks a major milestone for the InvenTree project. Not only does it represent an important step in the evolution of the software, but it also introduces a host of new features and improvements that enhance the user experience.</p>
|
||||
|
||||
<p>This release includes significant updates to the user interface, performance optimizations, and a range of new functionalities that have been requested by our community.</p>
|
||||
|
||||
<p>With <a href="https://github.com/inventree/InvenTree/pulls?q=is%3Apr+milestone%3A1.0.0+">over 600 closed issues</a>, this release is a testament to the hard work and dedication of our contributors. We are excited to see how these changes will benefit users and help them manage their inventories more effectively.</p>
|
||||
|
||||
<h3 id="changelog">Changelog</h3>
|
||||
|
||||
<p>For a full list of changes made in this release, please see the <a href="https://github.com/inventree/InvenTree/releases/tag/1.0.0">release notes on GitHub</a>. The major changes are documented below, but there are many other improvements and bug fixes that have been implemented as well.</p>
|
||||
|
||||
<p>You can also view a <a href="https://github.com/inventree/InvenTree/compare/0.17.0...1.0.0">full changelog between 0.17.0 and 1.0.0</a></p>
|
||||
|
||||
<p>Going forward, we will be tracking major project changes in an internal <a href="https://github.com/inventree/InvenTree/blob/master/CHANGELOG.md">CHANGELOG file</a> - this file will be updated with each release, and will provide an overview of the major changes made in each version. This file is in addition to the release notes which are provided by GitHub.</p>
|
||||
|
||||
<h3 id="update-procedure">Update Procedure</h3>
|
||||
|
||||
<p>To update to the latest version of InvenTree, please follow the updating instructions provided in the <a href="https://docs.inventree.org">InvenTree documentation</a>. Note that the particular update procedure may vary depending on your installation method.</p>
|
||||
|
||||
<h2 id="user-experience-survey">User Experience Survey</h2>
|
||||
|
||||
<p>In conjunction with the 1.0.0 release, we have launched a <a href="https://forms.gle/a7mFzqZj57FeS7ds9">user experience survey</a> to gather feedback from our community. This survey is designed to help us understand how users are utilizing InvenTree, what features they find most valuable, and where we can improve.</p>
|
||||
|
||||
<p>The survey is anonymous and should take no more than 10 minutes to complete. We encourage all users to participate, as your feedback is invaluable in shaping the future of InvenTree. Please consider taking the survey and sharing it with others who use InvenTree.</p>
|
||||
|
||||
<h2 id="breaking-changes">Breaking Changes</h2>
|
||||
|
||||
<p>As with any major release, there are some breaking changes that users should be aware of. These changes may require adjustments to existing installations, plugins, or customizations.</p>
|
||||
|
||||
<p>The most significant breaking changes are documented below, but users should also refer to the <a href="https://github.com/inventree/InvenTree/pulls?q=is%3Apr+milestone%3A1.0.0+label%3Abreaking">full list of breaking changes</a>.</p>
|
||||
|
||||
<h3 id="user-interface-overhaul">User Interface Overhaul</h3>
|
||||
|
||||
<p>By far the largest change introduced in this release is the new user interface. The UI has been completely refactored to use a modern javascript / React framework, which allows for a more responsive and dynamic user experience. This change not only improves the performance of the application but also makes it easier to maintain and extend in the future.</p>
|
||||
|
||||
<p>The new UI is now available at the <code class="language-plaintext highlighter-rouge">/web/</code> endpoint - and the old UI has been removed entirely.</p>
|
||||
|
||||
<p>Note that old URLs have been remapped to the new UI, so users should not experience any issues with bookmarks or links that point to the old interface.</p>
|
||||
|
||||
<p>The general “look and feel” of the InvenTree UI remains consistent with previous versions, but the underlying technology has been updated to provide a more robust and flexible foundation for future development.</p>
|
||||
|
||||
<p>While we have made every effort to ensure that the new UI is compatible with existing data and functionality, there may be some edge cases where users encounter issues. We encourage users to report any problems they encounter so that we can address them promptly. In particular, if there are any features that are missing or not functioning as expected, please let us know <a href="https://github.com/inventree/InvenTree/issues">via GitHub issues</a>.</p>
|
||||
|
||||
<h3 id="plugin-system-enhancements">Plugin System Enhancements</h3>
|
||||
|
||||
<p>The plugin system has received significat attention in this release. In particular, the plugin system now provides a mechanism for plugins to render their own user interface componenents within the new UI framework.</p>
|
||||
|
||||
<p>To this end, we have released an <a href="https://www.npmjs.com/package/@inventreedb/ui">npm package</a> that provides an interface layer for plugins looking to render custom components within the InvenTree UI.</p>
|
||||
|
||||
<p>Additionally, we now have a <a href="https://github.com/inventree/plugin-creator/">plugin creation tool</a> which allows users to quickly scaffold InvenTree plugins.</p>
|
||||
|
||||
<h3 id="machine-registry-enhancements">Machine Registry Enhancements</h3>
|
||||
|
||||
<p>The machine registry has <a href="https://github.com/inventree/InvenTree/pull/10150">received an overhaul</a> which introduces a breaking change for any plugins which implement custom machine registry functionality.</p>
|
||||
|
||||
<p>If you have implemented a custom machine registry plugin, you will need to update your plugin to work with the new machine registry system. In particular, the plugin must now implement a new <code class="language-plaintext highlighter-rouge">MachineDriverMixin</code> class, which provides a consistent interface for interacting with the machine registry.</p>
|
||||
|
||||
<h3 id="user-interface-plugins">User Interface Plugins</h3>
|
||||
|
||||
<p>This change may require some adjustments for users who have customized their InvenTree installation, particularly if they have created custom templates or plugins that rely on the old UI structure.</p>
|
||||
|
||||
<p>Any plugins which have not been updated to work with the new UI will not function correctly, and will need to be adjusted to work with the new interface. This is after we <a href="https://github.com/inventree/InvenTree/pull/8828">removed the old PanelMixin class</a>. This means that any plugins which inherit from the PanelMixin class will now throw an error when loaded.</p>
|
||||
|
||||
<p>The new UI plugin system provides a significant amount of <em>context</em> information to the plugins at render time. This means that plugins can now access information about the current user, the current page, and other relevant data when rendering their components.</p>
|
||||
|
||||
<p>Additionally, the plugins can access the API directly from the UI, allowing for more dynamic interactions and data retrieval, without the plugin needing to authenticate separately.</p>
|
||||
|
||||
<p>This plugin context system was introduced in <a href="https://github.com/inventree/InvenTree/pull/9439">#9439</a>, but further additions and improvements have been made in subsequent pull requests.</p>
|
||||
|
||||
<p>The <a href="https://www.npmjs.com/package/@inventreedb/ui">@inventreedb/ui</a> npm package provides full type definitions for the plugin context, making it easier for developers to create plugins that integrate seamlessly with the new UI.</p>
|
||||
|
||||
<p>Further, the npm package provieds a set of pre-defined react components which can be reused by plugins.</p>
|
||||
|
||||
<p>Scaffolding a UI plugin from scratch represents a significant amount of work, so we have created a <a href="https://github.com/inventree/plugin-creator/">plugin creation tool</a> which generates all of the necessary boilerplate code to get started quickly. This tool can be used to create a new plugin that is ready to be extended with custom functionality.</p>
|
||||
|
||||
<p>To integrate seamlessly with the UI, plugin developers should be aware that some <em>core</em> libraries (such as <em>react</em> / <em>mantine</em> / <em>lingui</em>) must be externalized, as they are already provided by the InvenTree UI. This means that plugins should not include their own versions of these libraries, as this can lead to conflicts and unexpected behavior.</p>
|
||||
|
||||
<p>Note that this is all handled automatically by the plugin creation tool, so developers should not need to worry about this unless they are creating plugins manually.</p>
|
||||
|
||||
<h3 id="notification-plugins">Notification Plugins</h3>
|
||||
|
||||
<p>We have changed the way that notification methods can be <a href="https://github.com/inventree/InvenTree/pull/9735">implented via plugins</a>. This change was made to ensure that custom notification methods were able to be loaded and unloaded correctly, and to provide a more consistent approach for implementing notification methods across different plugins.</p>
|
||||
|
||||
<p><em>However</em> - this change is <em>not</em> backwards compatible with existing plugins that implement notification methods. Plugin developers will need to update their plugins to use the new notification system in order to continue providing custom notification methods.</p>
|
||||
|
||||
<h3 id="builtin-plugins">Builtin Plugins</h3>
|
||||
|
||||
<p>The InvenTree project now includes a number of builtin plugins that provide additional functionality and features. These plugins are designed to work seamlessly with the new UI and provide a range of enhancements to the core InvenTree functionality.</p>
|
||||
|
||||
<p>Some of these plugins are <em>mandatory</em> - as they are required for the core functionality of InvenTree. These mandatory plugins are installed automatically when InvenTree is installed, and cannot be disabled.</p>
|
||||
|
||||
<h3 id="docker-changes">Docker Changes</h3>
|
||||
|
||||
<p>Our <a href="https://hub.docker.com/r/inventree/inventree">official docker image</a> is now based on a Debian image, rather than Alpine. <a href="https://github.com/inventree/InvenTree/pull/10227">This change</a> was made due to a number of limitations with the Alpine image. The move to a Debian image also brings the docker image closer to the other installation methods, and the devcontainer setup.</p>
|
||||
|
||||
<p>Functionally, the new docker image should behave identically to the old image, and users should not experience any issues when updating.</p>
|
||||
|
||||
<p>Additionally, we have updated the <a href="https://github.com/inventree/InvenTree/pull/9041">supported postgres version</a> in our docker image from version 13 to version 17.</p>
|
||||
|
||||
<p>For new installations, this should not cause any issues, as the docker image will automatically pull the latest version of postgres.</p>
|
||||
|
||||
<p>For existing installations, this will only make a difference if you wish to update your existing database. Note that our docker image will still support connection to older versions of postgres, so users can continue to use their existing database without any issues.</p>
|
||||
|
||||
<h3 id="api-changes">API Changes</h3>
|
||||
|
||||
<p>There have been a significant number of changes to the InvenTree API in this release, although the majority of these changes are backwards compatible.</p>
|
||||
|
||||
<p>All API changes are <a href="https://github.com/inventree/InvenTree/blob/master/src/backend/InvenTree/InvenTree/api_version.py">documented in the source code</a>, and users can refer to this file to see the specific changes that have been made.</p>
|
||||
|
||||
<p>Additionally, the <a href="https://docs.inventree.org/en/stable/api/schema/">API schema is documented</a> and provides a comprehensive overview of the available endpoints and their parameters.</p>
|
||||
|
||||
<h3 id="stock-item-creation">Stock Item Creation</h3>
|
||||
|
||||
<p>Creation of stock items via the API has been adjusted, to ensure that the return type is consistent. Now, the return type is always an array of items, even if only a single item is created. Refer to <a href="https://github.com/inventree/InvenTree/pull/9969">PR #9969</a> for more information on this change.</p>
|
||||
|
||||
<h3 id="auth-changes">Auth Changes</h3>
|
||||
|
||||
<p>We have refactored our authentication framework significantly, both to support the new UI and also to align with modern best practices.</p>
|
||||
|
||||
<p>These changes should not affect most users, as we have endeavored to maintain compatibility with existing authentication methods. However, users who have implemented custom authentication mechanisms may need to review their code to ensure compatibility with the new framework.</p>
|
||||
|
||||
<p>In particular we have updated our <a href="https://github.com/inventree/InvenTree/pull/6293">django-allauth framework</a> to align with changes to that library.</p>
|
||||
|
||||
<h3 id="bulk-update-mixin">Bulk Update Mixin</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/9313">PR #9313</a> we introduced a “BulkUpdateMixin” class which allows some API endpoints to support bulk updates. This mixin can be used to extend existing API endpoints to allow for bulk updates of objects, which can significantly improve performance when updating large datasets.</p>
|
||||
|
||||
<h3 id="part-scheduling">Part Scheduling</h3>
|
||||
|
||||
<p>The existing “Part Scheduling” feature has been removed in this release, and replaced with a plugin-based solution. This change was made to allow for greater flexibility and customization of the scheduling functionality, as well as to improve performance and maintainability.</p>
|
||||
|
||||
<p>Refer to the <a href="https://github.com/inventree/inventree-stock-forecasting">InvenTree Stock Forecasting plugin</a> to replace the old part scheduling functionality.</p>
|
||||
|
||||
<h3 id="part-stocktake">Part Stocktake</h3>
|
||||
|
||||
<p>The “Part Stocktake” feature has been refactored to make use of the new import/export framework. Prior to <code class="language-plaintext highlighter-rouge">1.0.0</code>, the concept of “stocktake” referred to two separate concepts:</p>
|
||||
|
||||
<ol>
|
||||
<li>The ability to provide a snapshot of the current stock levels for a part</li>
|
||||
<li>Record historical stock levels for a part</li>
|
||||
</ol>
|
||||
|
||||
<p>These are now split into two separate features:</p>
|
||||
|
||||
<h4 id="stocktake-export">Stocktake Export</h4>
|
||||
|
||||
<p>Exporting stocktake data is now handled by a provided export plugin, which integrates into the refactored data export framework. This means that the “stocktake” feature is no longer a separate exporter pathway. Refer to the InvenTree documentation for details on how to use the new stocktake export functionality.</p>
|
||||
|
||||
<h4 id="stock-history">Stock History</h4>
|
||||
|
||||
<p>The “Stock History” feature remains in place, and allows users to view the historical stock levels for a part. This feature provides a detailed view of how stock levels have changed over time, and can be useful for tracking inventory trends and identifying potential issues.</p>
|
||||
|
||||
<p>Refer to <a href="https://github.com/inventree/InvenTree/pull/10124">PR #10124</a> for further information on this change.</p>
|
||||
|
||||
<h3 id="auto-create-child-builds">Auto-Create Child Builds</h3>
|
||||
|
||||
<p>The “auto-creation of child builds” feature has been removed from the core functionality, as it was not configurable and too narrowly scoped to be useful for most users. This feature has been replaced with a more flexible plugin-based solution, which allows users to create custom logic for automatically creating child builds based on their specific requirements.</p>
|
||||
|
||||
<p>Refer to <a href="https://github.com/inventree/InvenTree/pull/9574">PR #9574</a> for more information.</p>
|
||||
|
||||
<h3 id="remove-django-import-export">Remove django-import-export</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/8685">#8685</a> we removed the <a href="https://django-import-export.readthedocs.io/en/latest/">django-import-export</a> framework, which is what was previously used for data import and export. This has been replaced with a <a href="https://github.com/inventree/InvenTree/issues/8686">custom API driven solution</a> which is more flexible and easier to use. Our new framework runs in the background worker, allowing for processing of large datasets without blocking the user interface (or causing the web server to timeout).</p>
|
||||
|
||||
<p>Our data import and export framework has been completely rewritten, and replaced with a custom API driven solution.</p>
|
||||
|
||||
<h3 id="stock-return">Stock Return</h3>
|
||||
|
||||
<p>The “Stock Return” functionality has been expanded to allow for stock to be returned after having been consumed by a build order. To facilitate this, the API has been refactored to allow for stock returns to be processed more efficiently, and the user interface has been updated to reflect these changes.</p>
|
||||
|
||||
<p>However this does represent a breaking change to the API, and users who have implemented custom logic for handling stock returns will need to update their code to accommodate the new API structure.</p>
|
||||
|
||||
<p>Refer to <a href="https://github.com/inventree/InvenTree/pull/10132">PR #10132</a> for more information on this change.</p>
|
||||
|
||||
<h2 id="new-features--improvements">New Features / Improvements</h2>
|
||||
|
||||
<p>There are a number of new features and improvements in this release, many of which have been requested by our community. Some of the most notable changes include:</p>
|
||||
|
||||
<h3 id="performance-improvements">Performance Improvements</h3>
|
||||
|
||||
<p>We have made significant performance improvements across the board, particularly in areas such as data loading and rendering. The new UI framework is designed to be more efficient, which should result in a smoother experience for users, especially when dealing with large datasets.</p>
|
||||
|
||||
<p>The API has also been optimized to reduce response times and improve overall performance.</p>
|
||||
|
||||
<h3 id="dashboard">Dashboard</h3>
|
||||
|
||||
<p>The new user interface now includes a customizable dashboard that allows users to add, remove, and rearrange widgets according to their preferences. This feature provides a more personalized experience and enables users to focus on the information that is most relevant to them.</p>
|
||||
|
||||
<p>This dashboard can be extended with custom widgets provided by plugins, allowing for even greater flexibility and customization.</p>
|
||||
|
||||
<h3 id="order-calendar-views">Order Calendar Views</h3>
|
||||
|
||||
<p>We have <a href="https://github.com/inventree/InvenTree/pull/8933">reimplemented calendar views</a> for purchase orders, sales orders, and build orders. These calendar views allow users to see their orders in a calendar format, making it easier to visualize and manage their order schedules.</p>
|
||||
|
||||
<h3 id="email-enhancements">Email Enhancements</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9608">PR #9608</a> enhances email support capabilities, including plugin support for sending and receiving emails.</p>
|
||||
|
||||
<h3 id="order-start-dates">Order Start Dates</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/8966">#PR 8966</a> we introduced a new “start date” field for purchase orders and sales orders. This field allows users to specify the date when the order is expected to start processing, which can be useful for planning and scheduling purposes. In <a href="https://github.com/inventree/InvenTree/pull/8915">#8915</a> the “start date” field was also added for build orders.</p>
|
||||
|
||||
<h3 id="reporting-printing">Reporting Printing</h3>
|
||||
|
||||
<p>Printing of reports and labels is now <a href="https://github.com/inventree/InvenTree/pull/9199">offloaded to the background worker</a>, allowing for more efficient processing of large reports without blocking the user interface. This change also introduces progress tracking for report generation, so users can see the status of their report as it is being generated.</p>
|
||||
|
||||
<p>Additionally, reports and labels can now be generated programatically from plugins, allowing for greater flexibility and customization of report generation.</p>
|
||||
|
||||
<h3 id="report-merging">Report Merging</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9532">PR #9532</a> introduces a new feature that allows users to merge multiple items into a single report. When generating reports against multiple items, users can now select to render the report as a single document, rather than generating separate reports for each item.</p>
|
||||
|
||||
<p>This is selected as an option against a particular report template. Note that it requires the report template to be designed to support merging, as not all templates will be suitable for this feature.</p>
|
||||
|
||||
<h3 id="part-parameter-tracking">Part Parameter Tracking</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/10023">PR #10023</a> tracks the user who last modified a part parameter, and when it was last modified. This change provides greater visibility into changes made to part parameters.</p>
|
||||
|
||||
<h3 id="external-build-orders">External Build Orders</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/9312">PR #9312</a> we introduced support for external build orders, allowing users to manage build orders that are fulfilled by external suppliers. This feature is particularly useful for users who need to manage builds that are outsourced to third-party manufacturers or suppliers.</p>
|
||||
|
||||
<p>Refer to the <a href="https://docs.inventree.org/en/latest/manufacturing/external/">InvenTree documentation</a> for further information.</p>
|
||||
|
||||
<h3 id="bom-enhancements">BOM Enhancements</h3>
|
||||
|
||||
<p>Added support for greater flexibility in managing Bills of Materials (BOMs) - refer to <a href="https://github.com/inventree/InvenTree/pull/10042">#10042</a> for details.</p>
|
||||
|
||||
<h3 id="build-order-consume">Build Order Consume</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/8191">PR #8191</a> adds the ability to partially consume stock against a build order, even if the build order is not yet complete. This feature allows users to consume stock as it allocated, rather than waiting for the entire build order to be completed. This provides users greater flexibility in managing their inventory and build orders, and can help to reduce delays in production.</p>
|
||||
|
||||
<h3 id="serial-number-navigation">Serial Number Navigation</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9505">PR #9505</a> adds the ability to navigate between serial numbers in the user interface.</p>
|
||||
|
||||
<h3 id="override-global-settings">Override Global Settings</h3>
|
||||
|
||||
<p><a href="https://github.com/inventree/InvenTree/pull/9718">PR #9718</a> introduces the ability to override global settings via system-level configuration. This allows system administrators to “lock down” certain settings, preventing users from changing them in the user interface. This is particularly useful for ensuring consistency across installations and preventing accidental changes to critical settings.</p>
|
||||
|
||||
<h3 id="override-plugins">Override Plugins</h3>
|
||||
|
||||
<p>In <a href="https://github.com/inventree/InvenTree/pull/9718">PR #10094</a> we introduced the ability for system adminstrators to mark certain plugins as “mandatory” at the system configuration level. This means that these plugins cannot be disabled or uninstalled by users, ensuring that critical functionality remains available.</p>
|
||||
|
||||
<h2 id="bug-fixes">Bug Fixes</h2>
|
||||
|
||||
<p>There have been a <em>significant</em> number of bug fixes in this release, with over <a href="https://github.com/inventree/InvenTree/pulls?q=is%3Apr+milestone%3A1.0.0+label%3Abug+">150 tagged PRs</a>.</p>
|
||||
|
||||
<p>Note that many of these bug fixes are related to implementation of the new interface, and may not represent issues present in previous versions of the InvenTree software.</p>
|
||||
|
||||
<h2 id="contributing">Contributing</h2>
|
||||
|
||||
<p>As always, we would like to extend our heartfelt thanks to all of the contributors who have worked tirelessly to make this release possible. The InvenTree project is a community-driven effort, and it is only through the contributions of our users that we are able to continue improving and evolving the software.</p>
|
||||
|
||||
<p>There are now <a href="https://github.com/inventree/InvenTree/graphs/contributors">over 100 contributors</a> to the InvenTree project, and we are grateful for each and every one of you. Whether you have contributed code, reported bugs, provided feedback, or simply used the software, your support is invaluable to us.</p>
|
||||
|
||||
<h3 id="new-contributors">New Contributors</h3>
|
||||
|
||||
<p>The following developers made their first contributions to the InvenTree project in this release:</p>
|
||||
|
||||
<ul>
|
||||
<li>@gunstr made their first contribution in https://github.com/inventree/InvenTree/pull/9274</li>
|
||||
<li>@reilly-callaway made their first contribution in https://github.com/inventree/InvenTree/pull/9575</li>
|
||||
<li>@aluminum-ice made their first contribution in https://github.com/inventree/InvenTree/pull/9638</li>
|
||||
<li>@cbenhagen made their first contribution in https://github.com/inventree/InvenTree/pull/9641</li>
|
||||
<li>@GoryMoon made their first contribution in https://github.com/inventree/InvenTree/pull/9704</li>
|
||||
<li>@willbicks made their first contribution in https://github.com/inventree/InvenTree/pull/9655</li>
|
||||
<li>@gitbock made their first contribution in https://github.com/inventree/InvenTree/pull/9775</li>
|
||||
<li>@RedEchidnaUK made their first contribution in https://github.com/inventree/InvenTree/pull/9400</li>
|
||||
<li>@tristanle22 made their first contribution in https://github.com/inventree/InvenTree/pull/9532</li>
|
||||
<li>@sufyan-mukadam made their first contribution in https://github.com/inventree/InvenTree/pull/9673</li>
|
||||
<li>@the78mole made their first contribution in https://github.com/inventree/InvenTree/pull/10107</li>
|
||||
<li>@daniil4udo made their first contribution in https://github.com/inventree/InvenTree/pull/10179</li>
|
||||
</ul>
|
||||
|
||||
<h3 id="translation">Translation</h3>
|
||||
|
||||
<p>Our <a href="https://crowdin.com/project/inventree">translation efforts</a> continue to grow, with coverage increasing across a wide range of languages. We are grateful to all of our translators who have contributed to making InvenTree accessible to users around the world.</p>
|
||||
|
||||
<p>If you are interested in contributing to the translation efforts, please visit our <a href="https://crowdin.com/project/inventree">Crowdin project</a> and join the community of translators.</p>
|
||||
|
||||
<h3 id="code-contributions">Code Contributions</h3>
|
||||
|
||||
<p>Check out our GitHub page for a list of outstanding issues and feature requests. If you are a developer, you can help to contribute to the project by submitting a pull request.</p>
|
||||
|
||||
<p>In particular, we are looking for assistance with frontend development, as we work to complete the new user interface and improve the overall UI/UX of the project.</p>
|
||||
|
||||
<h3 id="report-bugs">Report Bugs</h3>
|
||||
|
||||
<p>If you encounter a bug in InvenTree, please report it on our <a href="https://github.com/inventree/inventree/issues">GitHub issues page</a>. Please ensure that you provide as much information as possible to help us diagnose and fix the issue.</p>
|
||||
|
||||
<h3 id="documentation--technical-writing">Documentation / Technical Writing</h3>
|
||||
|
||||
<p>If you have experience with technical writing, you can help to improve the InvenTree documentation. We are always looking for help to improve the documentation and make it more accessible to new users.</p>
|
||||
|
||||
<h3 id="financial-support">Financial Support</h3>
|
||||
|
||||
<p>Sponsorships help to keep this project sustainable, and buys time for the core developers to commit to the project. A recurring or one off sponsorship is a great way to help InvenTree development to continue at full steam!</p>
|
||||
|
||||
<p>The work undertaken to keep InvenTree running is done by a very small group of core developers, who do so in their spare time (and are not sponsored by their employers to work on InvenTree). If you benefit from the InvenTree project, please consider contributing to maintain vibrant development of this software!</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="https://polar.sh/inventree">Polar.sh</a></li>
|
||||
<li><a href="https://github.com/sponsors/inventree">GitHub</a></li>
|
||||
</ul>
|
||||
|
||||
<p>If you are using InvenTree in a commercial setting, please consider sponsoring the project to help support ongoing development and maintenance. Your support is greatly appreciated and helps to ensure that InvenTree remains a viable and sustainable project for years to come.</p>
|
||||
|
||||
<p>If your company benefits from InvenTree, please consider a <a href="https://buy.polar.sh/polar_cl_d7lPAgS9jnW8NDOSWATqdz2gs3wUD1x5M5o7C2rPoAL">one time sponsorship</a> or a <a href="https://buy.polar.sh/polar_cl_UlGc3bUjwB7Vx89dhAY2iF3kUIVFBJC5mJyow4NlJa6">recurring sponsorship</a> to help support the project.</p>
|
||||
|
||||
<h2 id="future-plans">Future Plans</h2>
|
||||
|
||||
<p>Our focus over the last year has been on the new user interface, and we are excited to see it finally come to fruition in this release. However, there is still much work to be done, and we have a number of plans for future development.</p>
|
||||
|
||||
<p>Check out our <a href="https://github.com/inventree/inventree/issues/">GitHub issues page</a> for a list of outstanding issues and feature requests. We are always looking for help to improve the project, and we welcome contributions from the community.</p>
|
||||
|
||||
<p>You can also help by <a href="https://forms.gle/a7mFzqZj57FeS7ds9">completing the user survey</a> to provide feedback on your experience with InvenTree, and help us to prioritize future development efforts.</p>]]></content><author><name>SchrodingersGat</name></author><summary type="html"><![CDATA[1.0.0 Release]]></summary></entry><entry><title type="html">Machine Plugin Refactor</title><link href="/blog/2025/08/21/machine-refactor" rel="alternate" type="text/html" title="Machine Plugin Refactor" /><published>2025-08-21T00:00:00+00:00</published><updated>2025-08-21T00:00:00+00:00</updated><id>/blog/2025/08/21/machine-refactor</id><content type="html" xml:base="/blog/2025/08/21/machine-refactor"><![CDATA[<h2 id="machine-plugin-refactor">Machine Plugin Refactor</h2>
|
||||
|
||||
<p>In preparation for the upcoming 1.0.0 release, we have made some <em>breaking</em> changes to the machine registry plugin system.</p>
|
||||
|
||||
@@ -409,114 +726,4 @@ Therefore 1.0 will be PUI only. The compiled javascript, CSS and html files will
|
||||
|
||||
<h2 id="security-policy">Security Policy</h2>
|
||||
|
||||
<p>We take security very seriously at InvenTree. If you identify a security vulnerability in the InvenTree codebase, please report it to us immediately. You can find more information on our <a href="https://github.com/inventree/InvenTree/blob/master/SECURITY.md">security policy</a>.</p>]]></content><author><name>SchrodingersGat</name></author><summary type="html"><![CDATA[The InvenTree team has just released version 0.15.2 which includes a patch for a critical security vulnerability.]]></summary></entry><entry><title type="html">0.15.0 Stable Release</title><link href="/blog/2024/05/14/0.15.0" rel="alternate" type="text/html" title="0.15.0 Stable Release" /><published>2024-05-14T00:00:00+00:00</published><updated>2024-05-14T00:00:00+00:00</updated><id>/blog/2024/05/14/0.15.0</id><content type="html" xml:base="/blog/2024/05/14/0.15.0"><![CDATA[<p>Development on InvenTree continues at a rapid pace, and we are pleased to announce the release of InvenTree version 0.15.0. With more than 300 commits since the <a href="/blog/2024/03/02/0.14.0">0.14.0 stable release</a>, this release includes a wide range of new features, bug fixes, and improvements.</p>
|
||||
|
||||
<h2 id="breaking-changes">Breaking Changes</h2>
|
||||
|
||||
<h3 id="code-restructure">Code Restructure</h3>
|
||||
|
||||
<p>The code structure has been refactored to improve maintainability and readability. As we work to refactor the entire frontend interface, there is a significant split between the backend code (Python) and the frontend code (React). This refactor has been a long time coming, and we are excited to see it finally merged into the main branch.</p>
|
||||
|
||||
<p>The code is now split into two main directories:</p>
|
||||
|
||||
<ul>
|
||||
<li><code class="language-plaintext highlighter-rouge">./src/backend/</code> contains all the server code (Python, Django)</li>
|
||||
<li><code class="language-plaintext highlighter-rouge">./src/frontend/</code> contains all the client code (JavaScript, React)</li>
|
||||
</ul>
|
||||
|
||||
<p>Additionally, we are working to improve the test coverage of the frontend code, and have added a number of new tests to ensure that the frontend code is as robust as possible.</p>
|
||||
|
||||
<p>You can read more about the code refactor in <a href="https://github.com/inventree/InvenTree/pull/5582">this PR</a>.</p>
|
||||
|
||||
<h2 id="security-patches">Security Patches</h2>
|
||||
|
||||
<p>A number of patches were applied to the InvenTree codebase to address security vulnerabilities. These updates were implemented as part of our ongoing commitment to security and privacy.</p>
|
||||
|
||||
<p>These patches include:</p>
|
||||
|
||||
<ul>
|
||||
<li>Add OSSF Scorecard - <a href="https://github.com/inventree/InvenTree/pull/6769">#6769</a></li>
|
||||
<li>Bump django from 4.2.10 to 4.2.11 - <a href="https://github.com/inventree/InvenTree/pull/6745">#6745</a></li>
|
||||
<li>Pin hashes in requirement files <a href="https://github.com/inventree/InvenTree/pull/7081">#7081</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="new-features">New Features</h2>
|
||||
|
||||
<p>A number of significant new features and enhancements have been added in this release. Some of these new features are described below:</p>
|
||||
|
||||
<h3 id="template-editor">Template Editor</h3>
|
||||
|
||||
<p>An interactive template editor (for editing report and label templates) has been added to the React frontend. This feature allows users to create and edit templates directly within the InvenTree interface, and also provides a live preview for label and report templates.</p>
|
||||
|
||||
<p>This presents a significant improvement over the previous template editing process, which required users to manually edit template files in an offline editor.</p>
|
||||
|
||||
<p>Full details can be found in <a href="https://github.com/inventree/InvenTree/pull/6541">this PR</a>.</p>
|
||||
|
||||
<h3 id="backup-and-restore-functionality">Backup and Restore Functionality</h3>
|
||||
|
||||
<p>Backup and restore functionality has been improved by adding new command line options for the <code class="language-plaintext highlighter-rouge">backup</code> and <code class="language-plaintext highlighter-rouge">restore</code> management commands. These commands allow users greater control when creating a backup of the InvenTree database, and restoring it at a later time.</p>
|
||||
|
||||
<h3 id="company-active-field">Company Active Field</h3>
|
||||
|
||||
<p>An “active” field has been added to the Company model. This field allows users to mark a company as “active” or “inactive”, which can be useful for managing company records in InvenTree.</p>
|
||||
|
||||
<p>Read more in <a href="https://github.com/inventree/InvenTree/pull/7024">this PR</a>.</p>
|
||||
|
||||
<h2 id="react-interface-development">React Interface Development</h2>
|
||||
|
||||
<p>Development of the new React interface continues steadily. This is our major focus now, and we are working to migrate all frontend code to React. From this point onwards, major bug fixes and security patches will still be applied to the old frontend, but new features will only be added to the React frontend.</p>
|
||||
|
||||
<p>We intend to depreciate the old frontend in the future, so we encourage all users to start using the new React interface as soon as possible.</p>
|
||||
|
||||
<h3 id="url-redirects">URL Redirects</h3>
|
||||
|
||||
<p>URL redirects have been implemented in the React frontend to ensure that users are redirected to the correct page when they navigate to a specific URL. This feature improves the user experience and ensures that users are always directed to the correct page.</p>
|
||||
|
||||
<p>Refer to <a href="https://github.com/inventree/InvenTree/pull/6872">this PR</a>.</p>
|
||||
|
||||
<h3 id="login-state-management">Login State Management</h3>
|
||||
|
||||
<p>Login management for the React frontend has received some significant updates in <a href="https://github.com/inventree/InvenTree/pull/7158">#7158</a>. This PR improves the login state management for the React frontend, and ensures that the login state is correctly maintained across the application.</p>
|
||||
|
||||
<h2 id="new-language-support">New Language Support</h2>
|
||||
|
||||
<p>We have added translation support for the following languages.</p>
|
||||
|
||||
<ul>
|
||||
<li>Add Latvian language in <a href="https://github.com/inventree/InvenTree/pull/6749">#6749</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="devops-changes">Devops Changes</h2>
|
||||
|
||||
<p>This release cycle has seen a focus on improving the development and testing process for InvenTree. We have updated our unit testing framework, improved our CI/CD pipeline, and made a number of other changes to improve the development process.</p>
|
||||
|
||||
<h3 id="code-coverage">Code Coverage</h3>
|
||||
|
||||
<p>We have moved our code coverage reporting to <a href="https://app.codecov.io/gh/inventree/InvenTree">codecov</a>. This change allows us to better track code coverage across the entire codebase, and ensure that we are maintaining a high level of test coverage.</p>
|
||||
|
||||
<h3 id="playwright-tests">Playwright Tests</h3>
|
||||
|
||||
<p>We now run Playwright tests in our CI pipeline. This allows us to test the frontend interface in a more automated way, and ensures that the frontend code is functioning correctly. As the React frontend makes heavy use of the InvenTree API, this testing also helps increase test coverage of the API and backend code.</p>
|
||||
|
||||
<h2 id="bug-fixes">Bug Fixes</h2>
|
||||
|
||||
<p>As always, a number of bug fixes have been implemented in this release. For a full list of the bugs squashed in this release, refer to <a href="https://github.com/inventree/InvenTree/pulls?q=is%3Apr+milestone%3A0.15.0+label%3Abug+">our GitHub page</a>.</p>
|
||||
|
||||
<h2 id="new-contributors">New Contributors</h2>
|
||||
|
||||
<p>Two new contributors have made their first contribution to the InvenTree project in this release:</p>
|
||||
|
||||
<ul>
|
||||
<li>@XanderLuciano made their first contribution in <a href="https://github.com/inventree/InvenTree/pull/6694">#6694</a></li>
|
||||
<li>@emmanuel-ferdman made their first contribution in <a href="https://github.com/inventree/InvenTree/pull/7019">#7019</a></li>
|
||||
</ul>
|
||||
|
||||
<p>As always, we welcome new contributors to the project! If you are interested in contributing to InvenTree, whether it be code, documentation, or translations, please get in touch!</p>
|
||||
|
||||
<h2 id="release-notes">Release Notes</h2>
|
||||
|
||||
<p>For a full list of changes, please see the <a href="https://github.com/inventree/InvenTree/releases/tag/0.15.0">release notes on GitHub</a>.</p>
|
||||
|
||||
<h2 id="deploying-inventree">Deploying InvenTree</h2>
|
||||
|
||||
<p>If you are new to the InvenTree project, there are multiple ways to deploy InvenTree for your own use. Please refer to the <a href="/deploy.html">deployment guide</a> for more information.</p>]]></content><author><name>SchrodingersGat</name></author><summary type="html"><![CDATA[Development on InvenTree continues at a rapid pace, and we are pleased to announce the release of InvenTree version 0.15.0. With more than 300 commits since the 0.14.0 stable release, this release includes a wide range of new features, bug fixes, and improvements.]]></summary></entry></feed>
|
||||
<p>We take security very seriously at InvenTree. If you identify a security vulnerability in the InvenTree codebase, please report it to us immediately. You can find more information on our <a href="https://github.com/inventree/InvenTree/blob/master/SECURITY.md">security policy</a>.</p>]]></content><author><name>SchrodingersGat</name></author><summary type="html"><![CDATA[The InvenTree team has just released version 0.15.2 which includes a patch for a critical security vulnerability.]]></summary></entry></feed>
|
Reference in New Issue
Block a user