Creating this issue to track the hierarchy of issues to resolve before we have a first stable beta release.
Finalize API's
#2954682: Change @param int $stockEvent to $stock_event_id in StockEventsInterface
schema
#2852300: Save currency code with unit_cost for transactions
cron
#2844010: Refactor Cron / Queue to handle all purchasable entities
#2781865: Use Cron to total Product location level
UX, other stuff
#2959438: Use commerce EntityTrait plugin to attach the stock level field
#2931754: Split the SimpleStockLevelWidget in three widgets
#2738807: Stabilize the stock level computed field implementation
#2955308: Refactor the StockEvents implementation
#2949569: Consider refactoring the stock level field to allow for initializing the stock level before a product variation is saved
#2847529: StockAvailabilityManager is only checking the default variation availability
#2848264: Implement admin permission to restrict access to Stock admin page(s)
#2882350: composer.json should require any version of commerce
#2858391: Add Support for multiple stores & clean up locations store relationship
Issues that needs a review and some decisions
#2846451: Finalize the stock Transaction API - non of the changes proved essential for the API so any changes will be considered for a V2.
#2858391: Add Support for multiple stores & clean up locations store relationship
#2955308: Refactor the StockEvents implementation
#2841519: Make Transaction and TransactionMetadata Drupal entities
Comments
Comment #2
harings_rob commentedAdding some more information:
https://github.com/drupalcommerce/commerce/pull/593 is a pull request for https://www.drupal.org/node/2710107 and what I believe is currently the most blocking issue.
The api above (availability manager) solves partial points of the list below:
1) Validating availability at specific points (add to cart, enter checkout, confirm checkout)
2) Deny VS adjust (prevent checkout / decrease quantity)
3) When checking add to cart availability, taking into account the quantity of items in the cart (and what the UX/behavior should be)
4) General validation of allowed quantities ("only in groups of 5", min/max)
Point 4 could potentially go into a contrib module (as this is an edge case).
This issue is to be done from both commerce and commerce_shipping perspective.
If anyone has more information please link issues or add comments.
Comment #3
harings_rob commentedComment #4
harings_rob commentedAdding another related issue
Comment #5
harings_rob commentedCurrently we use 2 issues to make this work:
#2710107 -> Availability manager in commerce
#2847529 -> The fact that it only checks the default variation
This gives a *stable* stock implementation in the current commerce dev version.
Comment #6
guy_schneerson commentedThanks @harings_rob
Below is a list of issues on my radar (all need review, i will add state notes in bold as I go through). we should get @olafkarsten to feedback as he has been a great help and has a few PRs that need attention.
schema
==============================
#2623008 - Stock for D8: finalize Schema - High priority
#2852300 - Save currency code with unit_cost for transactions - a subset of #2623008 with a PR#23
cron
======
#2844010 - Refactor Cron / Queue to handle all purchasable entities - I think this can wait
#2781865 - Use Cron to total Product location level - Needs Testing
#2783289 - Improvements and configuration for Cron jobs - low priority
other
===========
#2955308 PR #49 - Refactor the StockEvents implementation
#2738807 - Stabilize the stock level computed field implementation
#2848264 - Implement admin permission to restrict access to Stock admin page(s)
#2882350 - composer.json should require any version of commerce
#2858391 - Add Support for multiple stores & clean up locations store relationship
Comment #7
guy_schneerson commentedLooks like the availability manager will not be ready soon, so we are going to have to implement the UI enforcement ourselves. See #2699611: [meta] Provide configurable stock transaction enforcement in UI
Comment #8
olafkarsten commentedUpdated the issue summary with a list of open issues that needs to be solved before a beta / or RC candidate.
#2783289: Improvments and configuration for Cron jobs don't block beta. We can do that anytime later
We need to decide, if we want transactions as entities.
#2841519: Make Transaction and TransactionMetadata Drupal entities
Relevant Bug, but a not a blocker as long as the default store works. That should be the 90% use case.
#2943618: SimpleStockLevelWidget does not work for items from non-default store
Comment #9
olafkarsten commentedremove #2847518: Return only items to stock that was actually removed from the list
Comment #10
olafkarsten commentedNeeds an update. Hope I can do that at the end of the Sprint.
Comment #11
guy_schneerson commentedthe remaining 2 issues are not show stoppers. If anyone knows of any issue that needs resolving before a full release. please let us know.
Note: we will have a beta/CR before we have a full release
Comment #12
guy_schneerson commented