@bananapus/ownable-v6 0.0.25 → 0.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bananapus/ownable-v6",
3
- "version": "0.0.25",
3
+ "version": "0.0.27",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -19,8 +19,8 @@
19
19
  "node": ">=20.0.0"
20
20
  },
21
21
  "dependencies": {
22
- "@bananapus/core-v6": "^0.0.54",
23
- "@bananapus/permission-ids-v6": "^0.0.25",
22
+ "@bananapus/core-v6": "^0.0.57",
23
+ "@bananapus/permission-ids-v6": "^0.0.26",
24
24
  "@openzeppelin/contracts": "5.6.1"
25
25
  },
26
26
  "scripts": {
@@ -31,10 +31,6 @@ abstract contract JBOwnableOverrides is Context, JBPermissioned, IJBOwnable {
31
31
  /// @param projectCount The current number of minted projects.
32
32
  error JBOwnableOverrides_ProjectDoesNotExist(uint256 projectId, uint256 projectCount);
33
33
 
34
- /// @notice Thrown when project-based ownership is requested without a `JBProjects` contract.
35
- /// @param projectId The project owner ID that requires a non-zero `JBProjects` contract.
36
- error JBOwnableOverrides_ZeroAddressProjectsWithProjectOwner(uint256 projectId);
37
-
38
34
  //*********************************************************************//
39
35
  // ---------------- public immutable stored properties --------------- //
40
36
  //*********************************************************************//
@@ -70,8 +66,9 @@ abstract contract JBOwnableOverrides is Context, JBPermissioned, IJBOwnable {
70
66
  /// revert until that project is created, leaving the contract unusable. Deployers must ensure that the referenced
71
67
  /// project is minted before or atomically with this contract's deployment — this is a deployment trust
72
68
  /// assumption.
73
- /// @param permissions A contract storing permissions.
74
- /// @param projects Mints ERC-721s that represent project ownership and transfers.
69
+ /// @param permissions A contract storing permissions. Assumed to be a valid deployment-time dependency.
70
+ /// @param projects Mints ERC-721s that represent project ownership and transfers. Assumed to be a valid
71
+ /// deployment-time dependency.
75
72
  /// @param initialOwner The owner if the `initialProjectIdOwner` is 0 (until ownership is transferred).
76
73
  /// @param initialProjectIdOwner The ID of the Juicebox project whose owner is this contract's owner (until
77
74
  /// ownership is transferred).
@@ -85,13 +82,6 @@ abstract contract JBOwnableOverrides is Context, JBPermissioned, IJBOwnable {
85
82
  {
86
83
  PROJECTS = projects;
87
84
 
88
- // If using project-based ownership, the PROJECTS contract must be provided.
89
- // Deploying with projects=address(0) and a non-zero projectId would permanently disable
90
- // ownership resolution, as all ownerOf() calls would revert on the zero address.
91
- if (initialProjectIdOwner != 0 && address(projects) == address(0)) {
92
- revert JBOwnableOverrides_ZeroAddressProjectsWithProjectOwner({projectId: initialProjectIdOwner});
93
- }
94
-
95
85
  // We force the inheriting contract to set an owner, as there is a low chance someone will use `JBOwnable` to
96
86
  // create an unowned contract.
97
87
  // It's more likely both were accidentally set to `0`. If you really want an unowned contract, set the owner to