Commit Graph

  • 6992c64179 Banner master shockrah 2023-05-06 21:00:20 -0700
  • 6d51f5ae61 * Implementing change to fix duplicate key entries in jwt table shockrah 2021-09-23 10:40:34 -0700
  • 25692b6b92 * UserConfig now stores no numbers(all strings) This is to avoid type coercion and loss of precision shockrah 2021-09-23 10:31:59 -0700
  • 68198cd300 * Fixing EventEmitter import + More safety checks in Cache.update_channels shockrah 2021-09-23 10:31:19 -0700
  • 3472e4d7c7 - Removing unused code * Fixing issue with json integers being mis represented shockrah 2021-09-23 10:30:41 -0700
  • be0dc39042 + Tsconfig with some semi strict rules Keeping the config lenient for now because more changes have to happen first shockrah 2021-09-23 10:30:08 -0700
  • 33b8bcd180 * Updating tslib and wslib shockrah 2021-09-23 10:29:31 -0700
  • 3cf77300b6 + Readme * Fixing message field name to reflect its actualy key name type -> content_type shockrah 2021-08-28 14:23:27 -0700
  • fcd48a36a1 + More comprehensive overview section shockrah 2021-07-05 17:07:41 -0700
  • a69ad24a45 + Badge structure docs Also this is a new pattern but I'm going to start actually using those anchor tags to self link to other places in the page. shockrah 2021-07-01 21:09:26 -0700
  • 995717afb3 * Fixing bad stage target in build-wiki job shockrah 2021-06-14 21:42:29 -0700
  • aed1737782 + Docs for badge rtc events Describes what kind of data to expect from RTC events shockrah 2021-06-14 21:38:56 -0700
  • 55c2e6d960 Merge branch 'wiki' of gitlab.com:shockrah/freechat into wiki shockrah 2021-06-14 19:02:33 -0700
  • 1cd2186541 Merge branch 'master' of gitlab.com:shockrah/freechat shockrah 2021-06-14 13:10:49 -0700
  • 93ad507e4e * Exposing rtc::notify to avoid single use functions This also avoid sthe issue of rustc not inling these functions leaving us with more jump than we need shockrah 2021-06-12 23:07:25 -0700
  • 634461c591 + First pass of rtc notifications * Some tests need to happen in order to ensure correct behavior shockrah 2021-06-12 23:06:40 -0700
  • 0e607eac1d -* Removing ugle tuple indexing with some cleaner binds shockrah 2021-06-07 23:55:12 -0700
  • b289f5c811 * Fixing /badge/update/name parameters for basic test Basically we weren't sending the right data to prompt a 200 response shockrah 2021-06-07 23:53:49 -0700
  • d3eddce81f * Fixing typo which broke test behavior shockrah 2021-06-07 22:47:44 -0700
  • ecb55fa4fe * /badge/update/perms {perms} param is now {badge_perms} This makes the parameter follow the naming convention of badge_* shockrah 2021-06-07 22:38:39 -0700
  • fa89088094 + Adding new badges tests ! Test bot is once again a massive disaster but at least it scales well /shrug Should probably refactor test bot to be moar straight forward or something idk shockrah 2021-06-07 22:33:53 -0700
  • b7c7b8b5e8 * Moving a cloned channel into rtc:channel_create call shockrah 2021-06-07 19:37:16 -0700
  • 0e6168a961 + Adding API handlers for /badge/update/* routes * Fixing permissions for routes The /badge/update routes all share the same perms for now shockrah 2021-05-30 19:54:20 -0700
  • 1884580bf8 * Simplified badge structure + Adding driver code for backend update methods This is basically all the dblib code required for the differing /badge/update/* api handlers to use shockrah 2021-05-30 19:49:48 -0700
  • e754b18687 + Adding hooks for /badge/update/* routes ! /badge/update/* routes have been split into */name|color|perms shockrah 2021-05-30 19:35:14 -0700
  • 2d1f9a37db + First pass of db backend and API handlers for badges module shockrah 2021-05-29 19:13:13 -0700
  • 4352c840ac + Adding Badges API route hooks ! POST /badge/new ! DELETE /badge/delete ! PUT /badge/update ! GET /badge/list shockrah 2021-05-29 19:06:43 -0700
  • 37eeb3877c - Removing rtc parts for th pure api testing This does mean we're going to have to rebuild for API + RTC testing but its ok because the two are wholey different feature sets anway shockrah 2021-05-29 14:35:13 -0700
  • 4c0888a263 * /message/recent no longer uses unwraps This should make it way safer shockrah 2021-05-29 14:23:47 -0700
  • 32dbbe11eb * Fixing /channel/create response body Now it always returns a json structure where before only the rtc branch was doing this. shockrah 2021-05-29 14:22:24 -0700
  • 928c6336d3 * Fixing some of the /message/send API hits by including all required match branches shockrah 2021-05-27 23:17:47 -0700
  • 0b34c25477 * Fixing broken /channels/create due to updated channel structure The badges_id field has proved to bubble up some issues with updating deep structures Basically this just means that feature branches for deep features like this are a good idea shockrah 2021-05-26 12:14:43 -0700
  • 990ad347f7 * Change join route to just /join shockrah 2021-05-26 12:08:55 -0700
  • 03f6624943 * Default values for badge_ids in channels & members shockrah 2021-05-20 16:44:30 -0700
  • a2f8cfb09d + Adding badge_ids to db-lib backend With this frontend points now return proper data structures which of course contain badge_id vectors shockrah 2021-05-20 16:44:08 -0700
  • fc24ad3430 * Badges now have an optional permissions field * New struct changes integrating badge system shockrah 2021-05-17 16:04:26 -0700
  • 36dbc8dd1e + Badges introduction to database schemas + Adding some default empty list values where applicable neighbors now has a default value of '[]' to enforce the "empty list" constraint on that field shockrah 2021-05-17 15:50:53 -0700
  • e5e0875037 * Moving rtc calls to build under rtc feature flag - Marking additional goal met on roadmap shockrah 2021-05-17 14:49:01 -0700
  • 4e737d4292 + Seperating slim & rtc builds in makefile shockrah 2021-05-17 14:44:56 -0700
  • 37c9b88196 ! Clearer contributing guide shockrah 2021-05-14 01:31:56 +0000
  • 1edab53778 * Fixing issue where a rougue popd broke the whole job shockrah 2021-05-12 16:19:41 -0700
  • f952b91a32 - Removing broken build job build-json-api Issue seemed to be that artifacts were not being preserved properly. This was causing failures in test stages where it was basicallly impossible to debug "real" issues shockrah 2021-05-12 16:04:58 -0700
  • 7ae975e7c1 ! Finsihed goal on roadmap ! Finished docs on new update from roadmap /neighbors/ api is now fully doc'd however we still need some rtc integration shockrah 2021-05-12 15:00:39 -0700
  • cfbee6d887 ! This merge denotes the MVP completion for the backend decentralization endpoints shockrah 2021-05-12 14:27:34 -0700
  • c25e8047cf + Finishing up more tests for the /neighbors routes For now this sub api is at an mvp stage so it should be fine to move onto new features after this point for now. shockrah 2021-05-12 14:22:14 -0700
  • 24b5f11b13 * Better logging in meta module(more logging tags) shockrah 2021-05-12 14:14:30 -0700
  • fbcf16b735 + Adding /neighbor/remove route api code and db-lib code This patch has not yet been tested but will be in the coming patches shockrah 2021-05-12 14:07:38 -0700
  • e94c720332 + More comprehensive testing on /neighbor/update The cases that actually matter should be covered now so I'm confident with this endpoint's behavior ! A preliminary db::neighbors::get is done to cover the 404 case Basically if a bad url is used in the request we should 404 the update as there won't be anything relevant to update shockrah 2021-05-12 13:05:52 -0700
  • 8bff61ab71 * Fixed issue where put requests weren't firing with the optional body parameter This also "fixes" the /neighbor/update route conveniently enough, which had much better behavior than expected before. shockrah 2021-05-12 13:02:42 -0700
  • a0d60c0568 - Pointless permissions check /message/send handler Auth module literally does this for us see: auth::valid_perms shockrah 2021-05-11 17:27:04 -0700
  • a941165ea5 + adding /neighbor/update route to dispatch ! This route needs way more testing as its currently failing the prelim test listed right now shockrah 2021-05-11 17:25:51 -0700
  • 1ca17ec6e0 * /neighbor/add handler now uses body for neighbor structure data This chage is basically required due to the ridiculuous number of parameters that needed to be passed. Also more POC for showing how serde_json's result type can be used to safely parse http bodies shockrah 2021-05-11 17:23:15 -0700
  • 666894af0e + Debug to Neighbor struct * add_neighbor now takes a moved Neighbor param instead of the fields individually This should make it a easier for both front & backend to parse what's happening. It also let's us leveraege serde_json a bit more shockrah 2021-05-11 17:18:17 -0700
  • 664b837f13 + More tests for /neighbor routes ! put /neighbor/update is failing due to a failure to parse the body correctly on thebackend Further investigation is required shockrah 2021-05-11 17:16:50 -0700
  • b4c55b72ea - Removing unused .env file diesel still requires this however the --database-url flag is there to alleviate this issue + make test now cleans up fake png images from the cwd This is more for comfort reall shockrah 2021-05-11 17:14:22 -0700
  • 45540ddd25 * Better failure logging in failed requests shockrah 2021-05-11 15:22:56 -0700
  • b810a5abba * Fixing message body unwrap to safer unwrap_or shockrah 2021-05-11 13:52:07 -0700
  • f1b1581588 + db::neighbors::get and db::neighbors::update shockrah 2021-05-11 13:45:41 -0700
  • 83f846640c - Removing unused .env files Opting now for config.json files as they better interoperability between node and rust shockrah 2021-05-10 15:58:57 -0700
  • 96bdd70cd5 + MOre comprehensive logs from subprocess in create_admin shockrah 2021-05-10 13:59:10 -0700
  • a448273bf2 Merging roadmap to master early for clarity sake shockrah 2021-05-09 23:20:47 -0700
  • ee5d9fb248 + Better formatting in hyper compact code + Adding ADD_NEIGHBOR permissions flag shockrah 2021-05-09 23:16:43 -0700
  • b3c27b86ce * Fixing some json serialization/parsing weirdness in the meta::BASIC_CONFIG initialization This is part of a bigger change to stop using environment variables around as state as its mega cheese shockrah 2021-05-09 23:15:09 -0700
  • adc5b261e8 + ADD_NEIGHBOR route now supported in API backend ! Requiring a special event in the RTC server docs for this change shockrah 2021-05-09 23:14:02 -0700
  • c443b9bb07 + More tests for the /neighbor/add and /neighbor/list routes These are baseline tests however a new /neighbor/remove & /neighbor/edit route should be edited before I call this done on the roadmap. Also some more intense testing around these current routes is required. Mostly because the expectation that JSON is being sent to us in /neighbor/add It could be worth the effort to send this data as json in the body ! Currently parameters are sent via the query string is in line with how most routes behave For this route is just feels weird dealing with al the issues with json in the query string shockrah 2021-05-09 23:11:51 -0700
  • a79195076d * Changin public_url & public_ws_url to shorter url & wsurl respectively There's also some miscellaneous changes that don't fit anywhere in this patch (mostly dev qol of roadmap updates) shockrah 2021-05-09 23:08:55 -0700
  • efac097645 Merge branch 'master' into decentralize shockrah 2021-05-09 13:56:49 -0700
  • bb55832064 + Adding roadmap * Hopefully fixing pipeline script Cargo kept trying to rebuild everything so hopefully the new change forces a usage of artifacts that _should_ be there shockrahwow 2021-05-08 21:28:43 -0700
  • e8348918c4 + More qol like better __str__ methods everywhere + More error handling in case shit goes wrong Basically handling more cases where some initial test could result in the whole script exiting with code(1) Not really that big of a deal since most tests after _that_ point will fail anyway but the fix has revealed issues in the auth code magically so I'm keeping up with the new idea that initial tests should have every resultant case validated to avoid weird behavior shockrah 2021-05-08 02:07:32 -0700
  • cdb956a85c Minor changes lumped together shockrah 2021-05-08 02:03:58 -0700
  • 1c366611d9 + Server tags are now stored in json format(still in the environment variable mind you Lazy static initialization still allocates once per run so the above is jank but fine(mostly) [] Should probably come up with a cleaner way of passing this data around The above is very low on the priority list of things to do shockrah 2021-05-08 01:59:31 -0700
  • c850d42ce1 + Jwt tables - SEE NOTE ! wat - because have to do maintain permissions on a per request level we have to do this check for permissions at what is basically every level, this does mean we have to hit the database for a lot of routes however there is a check that requests go through in order to avoid hitting the database whenever possible shockrah 2021-05-08 01:29:44 -0700
  • 9a22713080 + Testing /invite/join + Testing /meta + Testing /neighbors/list shockrah 2021-05-06 17:12:49 -0700
  • 34115477ab + Mostly adding quality of life changes in this patch with the mock client These changes will make it easier to read through verbose logs with some tactful colors (yellow) shockrah 2021-05-06 17:03:24 -0700
  • 181b1cadc4 + Exposing serde_json to db-lib lyaer This dep was already there but just being used (as we're using serde). Now we can use it at the db layer which makes neighbor struct creation easier * Cargo locks are being updated to reflect new dependancy changes These changes actually reduce the dependancy count overall + Adding a very simple table to hold all the neighbors that an instance may want to reference At some point we may want to support vanity join urls and this would be a good place to reference those There would also need to be a way for admins to add/edit/remove vanity urls but that's for another patch shockrah 2021-05-06 13:29:32 -0700
  • a628d56e25 - Removing dotenv from required dependancies + Leveraging serde_json to use a config.json This lets us use the same config for both the json-api and the rtc-server without adding dependancies shockrah 2021-05-05 15:50:39 -0700
  • 5d0f02507b - Removing build-keys job Was basically pointless since it's literally just two commands shockrah 2021-05-03 13:30:52 -0700
  • f094ab49de * Adding some safey into the mock-client tester so that it doesn't just explode in pipelines shockrah 2021-05-03 13:24:24 -0700
  • 7c8bc8b4fc - Removing warning ! Increasing wait time on client mock script to avoid firing too early shockrah 2021-05-01 19:16:18 -0700
  • 11d1652467 * Fixing push/popd path typo * Removing export command from cargo-unit-test job This was causing the job to fail so the env vars have been moved to live under the ci file's job-level variables key shockrah 2021-05-01 17:13:32 -0700
  • f845f1e1ec + Adding missing args to build-sh script call shockrah 2021-05-01 16:56:25 -0700
  • 1dcdbbaec4 Setting env variables for cargo test job shockrah 2021-05-01 16:52:33 -0700
  • 1cf95f1f27 * Fixed issue with npm build that was supposed to be npm install shockrah 2021-05-01 16:28:59 -0700
  • 4218bc396a - Removing changes tracker for now ! Even though this mains we're going to cargo build a lot more than normal it also means pipeline status won't be fucked for no reason(hopefully) shockrah 2021-05-01 16:16:08 -0700
  • 5498766c1e + Adding in script to setup python package requirements * Also I've updated the docker image that this pipeline uses as it didn't have node and pip installed for some reason Link to relevant docker image: https://hub.docker.com/r/shockrah/fc-pipeline shockrah 2021-05-01 15:46:17 -0700
  • 1805023afd * Changing target docker to pipeline docker image * Increasing expries_in flags to be 30 minutes from 15 + Adding build-keys job which builds hmac keys + build-rtc-server: simple build job * Moving cargo-test-json-api (unit tests) to the bottom with the other tests shockrah 2021-05-01 15:10:18 -0700
  • f6e6c59837 * Fixing privileges issue in db user shockrah 2021-04-29 22:15:32 -0700
  • db67caab96 * Fixing issue where the proper db isn't selected shockrah 2021-04-29 22:01:19 -0700
  • 4b47eca257 * Fixing pathing on migrations directory * Moving all sql logs to their own log file to avoid cluttering stdout with things that aren't relevant to the immediate goal here shockrah 2021-04-29 21:49:36 -0700
  • 85660e2fc9 - Removing old scripts that aren't useful to anyone but myself + Adding new bootstrapping script for Docker testing pipeline This build-database script is what is going to setup things like our tables for us so that we can actually run our test queries shockrah 2021-04-29 21:32:43 -0700
  • 44bfed1351 * Moving script to /scripts/ shockrah 2021-04-27 13:41:20 -0700
  • 32eb669f96 * messages.recent_messages now uses the /message/recent This should be more clear in its intentions and basically gives the behavior you expect when looking at this method shockrah 2021-04-27 13:40:12 -0700
  • e0d5b8b5f7 + Adding back the test script so its ready for ci shockrah 2021-04-27 13:28:15 -0700
  • 34426038d9 * Fixing busted invite test in api client tester + Adding some more invite status checks + Adding a verbose invite usage check for sanity reasons shockrah 2021-04-27 13:27:39 -0700
  • 2a1881db20 + Adding commandline parameter parser for specifying wss-hmac and api-hmac The respective flags are -w|--wss-hmac and -H|--hmac Default values are wss-hmac.secre hmac.secrett respectively shockrah 2021-04-27 13:24:59 -0700
  • 61a3f1d4f5 + Adding first pass of a pair of invite endpoint tests shockrah 2021-04-26 02:01:04 -0700
  • c9658ad5b4 + Adding command line flag [-H/--hmac] to specify hmac file path This is really just for testing purposes since the files tend to be in awkward to reach path shockrah 2021-04-26 01:58:18 -0700
  • 1ee2f1a321 + Adding argparse to dependancy list shockrah 2021-04-26 01:34:29 -0700
  • 225a874f5d Ignoring secret hmac files shockrah 2021-04-25 12:40:53 -0700
  • 90b584eaa2 * Fixing /invites/join as it was returning the wrong struct data 🤦 Secret value given to user was literally the encrypted secret because I forgot to rebind it shockrah 2021-04-25 12:40:08 -0700