Commit Graph

691 Commits

Author SHA1 Message Date
Vitor Pamplona
0df07ddfcb - Adds support for https://github.com/nostr-protocol/nips/pull/1770
- Improves signer utils for testing
- Improves test cases for User metadata
2025-02-27 18:34:10 -05:00
Vitor Pamplona
b3dec691d7 losing up the probability to make tests pass 2025-02-25 18:16:20 -05:00
Vitor Pamplona
b40b37b6ac Adds the logged in user' posts to a user in the user's profile.
Refactors the user profile screen in many packages.
2025-02-25 18:09:04 -05:00
Vitor Pamplona
e6cd3a99c5 Fixes bug on saving Encrypted files on DMs.
Fixes bug when using partial downloads to display videos on DMs.
2025-02-25 16:43:15 -05:00
Vitor Pamplona
d5d289a834 Uses note.toEventUri to make sure the relay hint is correct
Avoids crash when adding an event to gallery without a relay hint.
2025-02-24 20:46:33 -05:00
Vitor Pamplona
a2d9f31a8a Assigning hints to NIPs until NIP-53
Speeding up Bech32 and Hex processing
Updating Boosts and Reposts to the new way of declaring tags
Renaming the SHA256 hash tag from NIP94 to not confuse with # hashtags
2025-02-24 17:09:08 -05:00
Vitor Pamplona
3790325a0f uses const val for faster MurMur 2025-02-22 16:19:01 -05:00
Vitor Pamplona
96f57b2c90 Fixes tag name on ImageTag 2025-02-22 16:18:46 -05:00
Vitor Pamplona
4b10dd58df It's slightly faster to reject params in one line than on many. 2025-02-22 16:17:10 -05:00
Vitor Pamplona
dc4240a8f5 Increasing the amount of addresses 2025-02-20 18:06:17 -05:00
Vitor Pamplona
3220d793b4 Using a linked set for the relayDB is faster to loop through on mightContain 2025-02-20 17:44:36 -05:00
Vitor Pamplona
84a52a1ce0 Speeding MurMur up
Adding more test cases
Mapping out memory used by filter
2025-02-20 17:10:24 -05:00
Vitor Pamplona
aaf86bf53e Adds a Bloom-based hint indexer with MurMur hash 2025-02-20 14:07:10 -05:00
Vitor Pamplona
94e0f4ed02 Performance improvements on the PoW miner 2025-02-18 20:44:24 -05:00
Vitor Pamplona
d47ec06b19 Deleting the experimental serializer test 2025-02-18 17:51:34 -05:00
Vitor Pamplona
9689acb5f3 Deletes experimental serializer on NIP-01
Moves classes to the appropriate packages on NIP-01
Adds a PoW miner to quartz.
Adds a PoW commit evaluator as a bytearray of the ID
2025-02-18 17:47:34 -05:00
Vitor Pamplona
bcb3838e85 Fixes isTagged for events 2025-02-18 12:04:39 -05:00
Vitor Pamplona
4fcf962c71 Fixes r-tag migration 2025-02-18 12:00:22 -05:00
Vitor Pamplona
2de4bb1adc Reverses ATag Generalization (It just made things more complicated) 2025-02-18 11:51:16 -05:00
Vitor Pamplona
9e1a2bb1e4 Removes the notion of generic Address references 2025-02-18 11:29:52 -05:00
Vitor Pamplona
9c35008fc4 Moves Sha256 to a pool of digests to double the hashing performance 2025-02-18 09:40:17 -05:00
Vitor Pamplona
6d9964a1cb Decoupling NIP01 methods from CryptoUtils
Decoupling Encryption and Decryptions from CryptoUtils
Decoupling live instances of JNI bindings for Secp and LibSodium from CryptoUtils
Decoupling key cache from CryptoUtils
Reorganizes NIP-04 to match new package structure
Adjusts test structures to match
2025-02-17 19:13:05 -05:00
Vitor Pamplona
7ad8b2ce46 Migrates LocalCache from being based on ATags to Addresses, removing the need to use memory space to store relay hints 2025-02-17 14:12:54 -05:00
Vitor Pamplona
08dd634eae Fixes crash when evaluating the isHex function for an emoji 2025-02-17 11:12:47 -05:00
Vitor Pamplona
67106e8a11 Renames PoW processor to parser 2025-02-16 11:53:23 -05:00
Vitor Pamplona
534f1ed8cd Adds Tim Bourma's test case 2025-02-14 16:28:56 -05:00
Vitor Pamplona
793b3fcd16 Renames PoW Parser to open space for the PoW creator 2025-02-14 16:28:40 -05:00
Vitor Pamplona
9c21a8a7da Massive refactoring of Quartz to:
- Define each tag in their own class.
- Allow extension functions to additional responsibilities to other classes
- Migrate from hardcoded tag filters in events to the Tag's parser and assemble functions.
- Migrate hardcoded event.create to builders that use extension functions
- Restructures threading infrastructure for NIP-10
- Decouple the event signing from the Event building functions via event templates
- Create classes to represent Tags and TagArrays and use extension functions to add domain-related methods to the tag array of each nip.
- Uses external functions on event template builders to better point to which functions and which tags can be used in which event kinds.
- Separates Event kinds in packages inside each nip.
- Improves support for NIP-89
- Correctly establishes which imeta params can be used in each nip (video, picture, files)
- Decouples the iMeta builder from any nip.
- Fixes mute list word and user removal when inserted from a different client.
- Migrates the Account class to avoiding having to build each Event inside of it
2025-02-13 17:39:13 -05:00
Vitor Pamplona
0f3b3c4b2d Adds support for NIP-73 2025-02-13 17:19:09 -05:00
Vitor Pamplona
5ee754c71a Allows the choice of limits on Count 2025-01-15 13:16:44 -05:00
Vitor Pamplona
c25d64558e - Normalizes the use of ETag
- Creates a BaseReplaceable event to avoid duplicates of empty d tags.
2025-01-15 11:48:01 -05:00
Vitor Pamplona
5a3c821da4 make sure the pow functions are static in java 2025-01-15 10:11:17 -05:00
Vitor Pamplona
b90aac496e Moves PoW tag to the new style of tag builders. 2025-01-15 10:10:10 -05:00
Vitor Pamplona
4b52cdb101 Updates NIP-14 subjects to the new style of extension functions 2025-01-15 10:09:52 -05:00
Vitor Pamplona
4a4f03c12b Refactor proxyTag function names 2025-01-15 09:56:15 -05:00
Vitor Pamplona
1f9aeddb57 Adds support for NIP-48 to Quartz 2025-01-15 09:17:32 -05:00
Vitor Pamplona
f3b049382e Renames Gossip to Rumor to match names on the NIP-59 2025-01-15 08:58:08 -05:00
Vitor Pamplona
d1c64a0d15 Removing additional dependencies in the base Event class 2025-01-15 08:53:13 -05:00
Vitor Pamplona
8e25271bd6 Improves the documentation of the TagArray functions 2025-01-15 08:39:41 -05:00
Vitor Pamplona
d19ae56afa - Migrates Zap splits, zapraisers, subject, alts and content warning to their own packages.
- Adds protected event tags
2025-01-14 19:35:16 -05:00
Vitor Pamplona
502d39c893 Generalizes the hashtag and index tag parser for the content as well as the way to pass params to build them on create. 2025-01-14 16:59:53 -05:00
Vitor Pamplona
4f774ae3c5 Simple refactoring to avoid empty challenges. 2025-01-14 16:58:16 -05:00
Vitor Pamplona
86a9fb2af5 Moves the relay structure to quartz 2025-01-14 12:09:25 -05:00
Vitor Pamplona
e36e49cc88 Breakes the Command and Message parsers out of the Relay class 2025-01-14 11:47:52 -05:00
Vitor Pamplona
e3e90229ce Separates Typed Relay class from a SimpleRelay class to prepare to move to Quartz 2025-01-13 19:15:20 -05:00
Vitor Pamplona
7f6b0ef7c2 Fixes package names for filters that moved to quartz 2025-01-13 13:03:22 -05:00
Vitor Pamplona
57fe3740fc Moves limits and Filters to quartz 2025-01-13 12:46:15 -05:00
Vitor Pamplona
b871954293 Moves NIP96 parsing test to Quartz 2025-01-13 12:23:57 -05:00
Vitor Pamplona
d66e8d4cde refactoring android tests to match refactoring of package names
moving some nip96 stuff to quartz
2025-01-13 12:20:02 -05:00
Vitor Pamplona
103210ade4 Moves pow test to pow package 2025-01-13 10:44:15 -05:00