{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":476733712,"defaultBranch":"main","name":"bulletproofs-plus","ownerLogin":"tari-project","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-04-01T13:33:07.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/37560539?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1715097167.0","currentOid":""},"activityList":{"items":[{"before":"6979e8746c8ae5dc817a94e75a821ab7ee18ca5e","after":"0c92cfbe0cc6a8be866fe17c7744e0b8abc665da","ref":"refs/heads/main","pushedAt":"2024-05-07T15:51:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: new release v0.4.0 (#135)\n\nnew release","shortMessageHtmlLink":"chore: new release v0.4.0 (#135)"}},{"before":"3b294927a4ea4fd7daceb54dd71dff1e5fad5534","after":"6979e8746c8ae5dc817a94e75a821ab7ee18ca5e","ref":"refs/heads/main","pushedAt":"2024-05-07T14:54:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"ci: run more CI in parallel (#124)\n\nSplits out more CI jobs to run in parallel. This is an experiment to see\r\nif we get noticeably faster runs.","shortMessageHtmlLink":"ci: run more CI in parallel (#124)"}},{"before":"95fbf148178682ab5624164eb19fc15d7402eef8","after":"3b294927a4ea4fd7daceb54dd71dff1e5fad5534","ref":"refs/heads/main","pushedAt":"2024-05-07T12:04:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"test: check that the serialization constant is correct (#133)\n\nThis PR adds a test that the serialized element size constant is correct\r\nfor Ristretto.","shortMessageHtmlLink":"test: check that the serialization constant is correct (#133)"}},{"before":"8eea17f9cec2062766abfe7ed3a520dd5fb2a975","after":"95fbf148178682ab5624164eb19fc15d7402eef8","ref":"refs/heads/main","pushedAt":"2024-04-02T04:12:48.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"sdbondi","name":"Stan Bondi","path":"/sdbondi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1057902?s=80&v=4"},"commit":{"message":"chore: rename for maximum aggregation factor (#132)\n\nThe aggregation factor used in range parameters refers more specifically\r\nto the _maximum_ aggregation factor supported by the parameters. This PR\r\ndoes some renaming to make this more clear.\r\n\r\nCloses #130.","shortMessageHtmlLink":"chore: rename for maximum aggregation factor (#132)"}},{"before":"58409fae76b9fcc17761b51052a2b200b6939127","after":"8eea17f9cec2062766abfe7ed3a520dd5fb2a975","ref":"refs/heads/main","pushedAt":"2024-04-01T05:49:59.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"sdbondi","name":"Stan Bondi","path":"/sdbondi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1057902?s=80&v=4"},"commit":{"message":"chore: remove unnecessary lints (#131)\n\nRemoves unnecessary lints that were left over from previous work.","shortMessageHtmlLink":"chore: remove unnecessary lints (#131)"}},{"before":"6c4bfe01b1f835a669d8e58790c8e01051290294","after":"58409fae76b9fcc17761b51052a2b200b6939127","ref":"refs/heads/main","pushedAt":"2024-03-29T07:33:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"feat: remove partial precomputation (#129)\n\nPartial precomputation is the sole reason for maintaining a custom curve\r\nlibrary fork, which has proven to be a headache and limits compatibility\r\nwith other libraries.\r\n\r\nThis PR removes partial precomputation altogether. If you supply\r\nparameters with more inner-product generators than you need, padding is\r\nused. This incurs an efficiency hit, but only in this particular case.\r\nFor the use cases in the Tari ecosystem, this is not an issue.\r\n\r\nAs a result of this change, we also switch back to the latest version of\r\nthe upstream curve library and simplify some scalar exponentiation\r\noperations. The audit report is also updated to note the curve library\r\ndependency change.\r\n\r\nCloses #128. Closes #93. Closes #96.","shortMessageHtmlLink":"feat: remove partial precomputation (#129)"}},{"before":"2cdb1c66867f6fcff9c1d5dd4f3994322fe7bd48","after":"6c4bfe01b1f835a669d8e58790c8e01051290294","ref":"refs/heads/main","pushedAt":"2024-03-27T07:14:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"fix: reduce verification vector allocation (#127)\n\nBatch verification vectors are allocated in part using the expected\r\naggregation factor of each statement in the batch. However, this was\r\nbeing done using the aggregation factors corresponding to each\r\nstatement's associated generators, which may exceed the aggregation\r\nfactors actually used in the statements. The result was a possible\r\nover-allocation of these vectors.\r\n\r\nThis PR changes the allocation to use the actual aggregation factors.\r\n\r\nCloses #126.","shortMessageHtmlLink":"fix: reduce verification vector allocation (#127)"}},{"before":"e90298906f7709aa1ce913d8e4abb605d3279ed8","after":"2cdb1c66867f6fcff9c1d5dd4f3994322fe7bd48","ref":"refs/heads/main","pushedAt":"2024-03-06T06:07:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"test: add tests for `NullRng` (#123)\n\nAdds tests for `NullRng`.","shortMessageHtmlLink":"test: add tests for NullRng (#123)"}},{"before":"f9fec4d99ee377d9decde1360b0608e6d8a7ec7b","after":"e90298906f7709aa1ce913d8e4abb605d3279ed8","ref":"refs/heads/main","pushedAt":"2024-03-05T16:12:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"fix: update source coverage script (#122)\n\nThe workflow for source coverage sets the RUST_TOOLCHAIN envar, but\r\n`test_coverage.sh` was not respecting it.\r\n\r\nThis PR changes that and brings the coverage script in line with how\r\nit's done in, e.g. tari_cypto.","shortMessageHtmlLink":"fix: update source coverage script (#122)"}},{"before":"1c09d0029bb8d6ff5851112299d6bce30cb0b85a","after":null,"ref":"refs/heads/update-cov-script","pushedAt":"2024-03-05T16:12:26.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"}},{"before":null,"after":"1c09d0029bb8d6ff5851112299d6bce30cb0b85a","ref":"refs/heads/update-cov-script","pushedAt":"2024-03-05T16:08:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"fix: update source coverage script\n\nThe workflow for source coverage sets the RUST_TOOLCHAIN envar, but\n`test_coverage.sh` was not respecting it.\n\nThis PR changes that and brings the coverage script in line with how\nit's done in, e.g. tari_cypto.","shortMessageHtmlLink":"fix: update source coverage script"}},{"before":"23a535998536906a7b5f9cb0a1d2c98631fc73f3","after":null,"ref":"refs/heads/pin-nightly-on-cov","pushedAt":"2024-03-05T15:40:54.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"}},{"before":"1aa769490ba96ba8d56e102b5cf079ba091134a9","after":"f9fec4d99ee377d9decde1360b0608e6d8a7ec7b","ref":"refs/heads/main","pushedAt":"2024-03-05T15:40:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"fix: add missing dollar sign (#121)\n\nAdds missing $ in envar expansion","shortMessageHtmlLink":"fix: add missing dollar sign (#121)"}},{"before":null,"after":"23a535998536906a7b5f9cb0a1d2c98631fc73f3","ref":"refs/heads/pin-nightly-on-cov","pushedAt":"2024-03-05T15:40:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"fix: add missing dollar sign\n\nAdds missing $ in envar expansion","shortMessageHtmlLink":"fix: add missing dollar sign"}},{"before":"effad7d0fde2caaae0d2b48ac78da19fee312b4e","after":"1aa769490ba96ba8d56e102b5cf079ba091134a9","ref":"refs/heads/main","pushedAt":"2024-03-05T15:33:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"fix: pin nightly version on source cov workflow (#120)\n\nA bandaid over the issue of source coverage failing due to Dalek being a\r\nnaughty library again.\r\n\r\nClearly a temporary fix, since this will break again some thim in the\r\nfuture.","shortMessageHtmlLink":"fix: pin nightly version on source cov workflow (#120)"}},{"before":"70d1858367d1e308faed7b5011f35b526540e506","after":null,"ref":"refs/heads/pin-nightly-on-cov","pushedAt":"2024-03-05T15:33:32.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"}},{"before":"50547227800d2a77cff18e3d8a65488d441eaf38","after":"70d1858367d1e308faed7b5011f35b526540e506","ref":"refs/heads/pin-nightly-on-cov","pushedAt":"2024-03-05T15:32:55.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"fix: pin nightly version on source cov workflow\n\nA bandaid over the issue of source coverage failing due to Dalek being a\nnaughty library again.\n\nClearly a temporary fix, since this will break again some thim in the\nfuture.","shortMessageHtmlLink":"fix: pin nightly version on source cov workflow"}},{"before":null,"after":"50547227800d2a77cff18e3d8a65488d441eaf38","ref":"refs/heads/pin-nightly-on-cov","pushedAt":"2024-03-05T15:27:07.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"fix: pin nightly version on source cov workflow\n\nA bandaid over the issue of source coverage failing due to Dalek being a\nnaughty library again.\n\nClearly a temporary fix, since this will break again some thim in the\nfuture.","shortMessageHtmlLink":"fix: pin nightly version on source cov workflow"}},{"before":"6be2bda1dfe13b6e14ea14ac58e28250051640ef","after":"effad7d0fde2caaae0d2b48ac78da19fee312b4e","ref":"refs/heads/main","pushedAt":"2024-03-05T05:30:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"ci: move to stable toolchain (#113)\n\nThis PR moves all CI to the stable toolchain, with the single exception\r\nof formatting (which requires nightly). It does this by cleaning up the\r\n`rand` feature to use `rand_core::OsRng`, which lets the `no_std` build\r\nrun properly on stable.\r\n\r\nUnfortunately, there is no good way to do this while keeping\r\n`quickcheck` around. This was only used for very limited fuzz testing;\r\nwhile having any fuzz testing be part of CI is nice, its practical\r\nbenefit is likely minimal. Further, its functionality is available\r\nthrough the non-CI fuzzer.","shortMessageHtmlLink":"ci: move to stable toolchain (#113)"}},{"before":"ded62cab68d5ff2e766014aab8b9b59a4b2607f0","after":"6be2bda1dfe13b6e14ea14ac58e28250051640ef","ref":"refs/heads/main","pushedAt":"2024-03-05T05:30:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"feat!: use transcript composition (#115)\n\nThe library uses [Merlin](https://merlin.cool/) transcripts internally\r\nfor handling Fiat-Shamir operations. When generating and verifying a\r\nproof, the caller provides a label that is used to instantiate the\r\ntranscript.\r\n\r\nThis is not particularly idiomatic, because it requires a `&'static`\r\nlifetime for the label, it does not follow Merlin's design\r\nrecommendations, and it does not support transcript composition.\r\nComposition allows a single transcript to be used for multiple\r\nsub-protocols safely and flexibly.\r\n\r\nThis PR makes a breaking change in two ways to support this.\r\n\r\nFirst, it changes the public API to replace transcript labels with\r\nmutable references to Merlin transcripts. This means in particular that\r\nthe caller is responsible for the transcript: it either instantiates a\r\nnew transcript with a label of its choice, or passes along an existing\r\ntranscript for composition.\r\n\r\nSecond, it changes how domain separation is applied to the transcript.\r\nThe Merlin\r\n[documentation](https://merlin.cool/transcript/ops.html#initialization)\r\nrequires the use of a fixed domain separation message label `dom-sep`,\r\nand recommends its use in composition. The library currently uses a\r\n[different\r\ndesign](https://github.com/tari-project/bulletproofs-plus/blob/da71f7872f02a0e9d3000c316bb083181daa9942/src/transcripts.rs#L72)\r\nthat, while safe if transcripts are strictly internal, could cause\r\nissues during composition.\r\n\r\nIf it's desirable for existing proofs to verify, the domain separation\r\nchange can be reverted, but the documentation should be modified to\r\nindicate this nonstandard behavior.\r\n\r\nCloses #114.\r\n\r\nBREAKING CHANGE: Changes the prover and verifier APIs to replace\r\ntranscript labels with Merlin transcripts. Changes how domain separation\r\nis applied internally.","shortMessageHtmlLink":"feat!: use transcript composition (#115)"}},{"before":"8759a59a1feaa9b4ae99475e107e49f7a0ca8ff5","after":"ded62cab68d5ff2e766014aab8b9b59a4b2607f0","ref":"refs/heads/main","pushedAt":"2024-03-05T05:28:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"chore: arithmetic lint (#118)\n\nThe [Quarkslab\r\naudit](https://github.com/tari-project/bulletproofs-plus/blob/da71f7872f02a0e9d3000c316bb083181daa9942/docs/quarkslab-audit/README.md)\r\nof this library recommended the use of an arithmetic side-effect lint.\r\nThis was not done at the time due to difficulty getting the lint to work\r\nwith Ristretto types, which do not pose risk.\r\n\r\nThis PR adds the lint and makes necessary changes to account for it.\r\n\r\nCloses #117.","shortMessageHtmlLink":"chore: arithmetic lint (#118)"}},{"before":"da71f7872f02a0e9d3000c316bb083181daa9942","after":"8759a59a1feaa9b4ae99475e107e49f7a0ca8ff5","ref":"refs/heads/main","pushedAt":"2024-03-04T13:30:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"feat!: remove verifier RNG requirement (#116)\n\nThe verifier currently requires support for a random number generator,\r\neither provided by the caller or taken from `OsRng`. This is only to\r\nproduce weights used in the batch verification process; the weights do\r\nnot need to be cryptographically secure, but must not be known to the\r\nprover. \r\n\r\nThis PR uses `TranscriptRng` functionality to produce these weights\r\ndeterministically. It removes the need for the verifier to supply or\r\nsupport any random number generator.\r\n\r\nThis is technically a breaking change, since it removes\r\n`verify_batch_with_rng` from the public API; the existing `verify_batch`\r\nshould be used instead, and no longer requires the `rand` feature.\r\n\r\nCloses #110.\r\n\r\nBREAKING CHANGE: Removes `verify_batch_with_rng` from the public API. No\r\nlonger requires that `verify_batch` have the `rand` feature enabled.","shortMessageHtmlLink":"feat!: remove verifier RNG requirement (#116)"}},{"before":"854dd885859c5ef772e731d34dfe4de7f9cbe636","after":"da71f7872f02a0e9d3000c316bb083181daa9942","ref":"refs/heads/main","pushedAt":"2024-02-07T16:42:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"ci: pin nightly toolchain (#112)\n\nThis PR flips the script on #92 and pins the nightly toolchain. This is\r\nnecessary due to an [upstream\r\nissue](https://github.com/dalek-cryptography/curve25519-dalek/issues/618)\r\nthat now fails nightly CI.","shortMessageHtmlLink":"ci: pin nightly toolchain (#112)"}},{"before":"6f1aab69942f04ec6c81263d9e173fe06eb009e6","after":"854dd885859c5ef772e731d34dfe4de7f9cbe636","ref":"refs/heads/main","pushedAt":"2024-01-15T06:27:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"feat: move RNGs into `RangeProofTranscript` (#111)\n\nRecent work in #109 uses Merlin's `TranscriptRng` functionality to\r\nimprove the handling of random number generation, and also refactors\r\ntranscript operations for safer use through a `RangeProofTranscript`\r\nwrapper.\r\n\r\nA\r\n[suggestion](https://github.com/tari-project/bulletproofs-plus/pull/109#discussion_r1449861417)\r\nby @sdbondi recommends moving the `TranscriptRng` into\r\n`RangeProofTranscript` so the prover and verifier aren't responsible for\r\nit. This PR adds such a change.\r\n\r\nIt also updates `RangeProofTranscript` to hold a mutable reference to\r\nthe external random number generator. This ensures the prover and\r\nverifier can't accidentally use it instead of the `TranscriptRng`.","shortMessageHtmlLink":"feat: move RNGs into RangeProofTranscript (#111)"}},{"before":"bce16c4f8a7dbdc5cb7792ad2d99df495ad2e95c","after":"6f1aab69942f04ec6c81263d9e173fe06eb009e6","ref":"refs/heads/main","pushedAt":"2024-01-12T05:57:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"feat: use Merlin's `TranscriptRng` for random number generation","shortMessageHtmlLink":"feat: use Merlin's TranscriptRng for random number generation"}},{"before":"33abac4da4552d0ead0b150c2971781630ac21c8","after":"bce16c4f8a7dbdc5cb7792ad2d99df495ad2e95c","ref":"refs/heads/main","pushedAt":"2024-01-12T05:55:33.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"hansieodendaal","name":"Hansie Odendaal","path":"/hansieodendaal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/39146854?s=80&v=4"},"commit":{"message":"feat: support `no-std` environments (#107)\n\nThis PR makes the library friendly to `no-std` environments with supporting tests.","shortMessageHtmlLink":"feat: support no-std environments (#107)"}},{"before":"21601dbffce6b4d46c0fcd926034c21dff659b62","after":"33abac4da4552d0ead0b150c2971781630ac21c8","ref":"refs/heads/main","pushedAt":"2023-12-06T13:06:05.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"leet4tari","name":"C.Lee Taylor","path":"/leet4tari","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47312074?s=80&v=4"},"commit":{"message":"ci(fix): prevent code injection (#106)\n\nDescription\r\nUpdate pr_title workflow.\r\n\r\nMotivation and Context\r\nPrevent code injection.","shortMessageHtmlLink":"ci(fix): prevent code injection (#106)"}},{"before":"462ba72cfa1135ae8474ae023153bd6f2fc13a57","after":"21601dbffce6b4d46c0fcd926034c21dff659b62","ref":"refs/heads/main","pushedAt":"2023-12-06T09:29:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"feat: simplify dependencies (#105)\n\nIssue #104 recommends removing `rand` as a required dependency, as it\r\nhinders `no_std` support and reduces flexibility.\r\n\r\nThis PR updates dependencies in a few ways.\r\n\r\nIt introduces a default `rand` feature that requires `rand` as a\r\ndependency. If the `rand` feature is not enabled, the caller can instead\r\ncall new `RangeProof::prove_with_rng` and\r\n`RangeProof::verify_batch_with_rng` functions that require the caller to\r\nprovide its own cryptographically-secure random number generator whose\r\nquality is enforced by the `rand_core::CryptoRngCore` marker trait.\r\nSince the existing API is still present with the feature enabled,\r\nexisting uses of the library shouldn't need to make any changes.\r\n\r\nIt updates CI to make sure the library builds without `rand` enabled. In\r\nthis case, we don't run tests, since those require `rand`.\r\n\r\nIt also removes the unused `NonDebug` functionality, which simplifies\r\nthe dependency tree.\r\n\r\nFinally, it sets all other dependencies to their minimal feature set.\r\nThis will be useful as part of an eventual move to support `no_std`\r\ntargets.\r\n\r\nCloses #104.","shortMessageHtmlLink":"feat: simplify dependencies (#105)"}},{"before":"90165817c04254c349cd9cd4ff2fe6acc6aa6ddb","after":"462ba72cfa1135ae8474ae023153bd6f2fc13a57","ref":"refs/heads/main","pushedAt":"2023-10-31T17:56:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"CjS77","name":"Cayle Sharrock","path":"/CjS77","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7573551?s=80&v=4"},"commit":{"message":"docs: audit notes (#91)\n\nThis adds the Quarkslab audit report and a brief list of responses.","shortMessageHtmlLink":"docs: audit notes (#91)"}},{"before":"1f5c8a0cd1de5ec5c4322b5bbee11e1dd51fcf25","after":"90165817c04254c349cd9cd4ff2fe6acc6aa6ddb","ref":"refs/heads/main","pushedAt":"2023-10-26T05:27:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"SWvheerden","name":"SW van Heerden","path":"/SWvheerden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2579813?s=80&v=4"},"commit":{"message":"chore: cleanup and index removal (#95)\n\nRemoves more occurrences of vector indexing to reduce the risk of a\r\npanic. Does some additional cleanup. Adds a unit test to confirm\r\ncorrectness of one of the changes.","shortMessageHtmlLink":"chore: cleanup and index removal (#95)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEQ8KV6gA","startCursor":null,"endCursor":null}},"title":"Activity ยท tari-project/bulletproofs-plus"}