Go to file
Adrian Brzeziński 70369ec672 fix on demand creation 2024-08-06 17:03:01 +02:00
.github CI: upgrade node version 2024-07-10 09:14:42 +02:00
anchor-tests chore: fix typos (#778) 2023-11-23 08:59:19 +01:00
audits add audit report for v0.24.0 (#941) 2024-04-15 09:10:48 +02:00
bin Liquidator: hide program log 2024-07-29 20:05:01 +02:00
cd add deployment config for sb-on-demand-crank, fix BN import 2024-06-28 14:52:58 +01:00
docs Add doc generation job (#450) 2023-02-13 08:29:50 +01:00
lib Merge branch 'main' into deploy 2024-07-29 11:08:58 +02:00
migrations Update package.json build steps and move js scripts out of src folder (#470) 2023-02-22 08:36:59 +01:00
programs Liquidator: fix an arithmetic error in client side health computation (#986) 2024-08-05 15:33:18 +02:00
py
scripts deploy -> dev (#759) 2023-10-19 10:03:07 +02:00
ts/client fix on demand creation 2024-08-06 17:03:01 +02:00
.dockerignore Update to solana 1.16.14 and anchor 0.28.0 (#718) 2023-10-05 10:56:45 +02:00
.env.sample
.eslintignore
.eslintrc.json format 2024-07-29 12:19:31 +02:00
.gitignore ts: sb on demand oracles part 2 2024-06-27 13:11:22 +02:00
.mocharc.json Fix mocha runner 2023-02-22 11:19:03 +01:00
.prettierignore
Anchor.toml Don't compile the margin-trade fixture all the time 2022-12-08 20:48:44 +01:00
CHANGELOG.md Program: update CHANGELOG 2024-07-17 10:41:53 +02:00
Cargo.lock Merge branch 'main' into deploy 2024-07-29 11:08:58 +02:00
Cargo.toml Program: add support for pyth v2 account (#980) 2024-07-17 10:21:38 +02:00
DEVELOPING.md Enable self-trading protection (#533) 2023-05-15 10:40:41 +02:00
Dockerfile Clients: log git commit info at start time - try to fix for CI (#968) 2024-05-28 15:10:47 +02:00
FAQ-DEV.md separate file, editing 2023-11-07 09:02:07 +01:00
HOW-TO-RELEASE.md
LICENSE License: Mark instructions GPLv3 and everything else MIT (#454) 2023-02-15 08:42:07 +01:00
Procfile Spot based token rebalancer (#541) 2023-04-19 18:15:39 +02:00
Program
README.md separate file, editing 2023-11-07 09:02:07 +01:00
RELEASING.md Program: regenerate IDL and bump version to v0.24.2 2024-07-17 10:46:02 +02:00
SECURITY.md add security policy and on-chain metadata (#361) 2023-01-04 18:13:29 +00:00
eslint.config.mjs bump eslint 2024-07-29 12:09:15 +02:00
fix-npm-tag.sh add script to rename tag added by npm 2023-02-01 13:49:31 +01:00
idl-fixup.sh Update Cargo.lock and IDL after merge 2023-07-11 10:39:06 +02:00
mango_v4.json Program: regenerate IDL and bump version to v0.24.2 2024-07-17 10:46:02 +02:00
package.json more prep for sb on demand 2024-07-30 11:02:42 +02:00
release-to-devnet.sh some improvements to debug scripts 2024-07-24 08:39:40 +02:00
run-anchor-tests.sh Update anchor to v0.27.0, stop using submodule (#582) 2023-05-12 13:54:53 +02:00
rust-toolchain.toml Update to solana 1.16.14 and anchor 0.28.0 (#718) 2023-10-05 10:56:45 +02:00
tsconfig.cjs.json Ts keeper (backup for rust keeper) (#546) 2023-04-19 17:42:13 +02:00
tsconfig.esm.json make consistent 2023-03-14 13:14:45 +01:00
tsconfig.json reset 2024-07-09 09:44:08 +02:00
tsconfig.types.json v0.9.1 2023-03-13 14:29:47 -04:00
update-local-idl.sh Update anchor to v0.27.0, stop using submodule (#582) 2023-05-12 13:54:53 +02:00
yarn.lock more prep for sb on demand 2024-07-30 11:02:42 +02:00

README.md

work in progress

License

See the LICENSE file.

The majority of this repo is MIT licensed, but some parts needed for compiling the solana program are under GPL.

All GPL code is gated behind the enable-gpl feature. If you use the mango-v4 crate as a dependency with the client or cpi features, you use only MIT parts of it.

The intention is for you to be able to depend on the mango-v4 crate for building closed-source tools and integrations, including other solana programs that call into the mango program.

But deriving a solana program with similar functionality to the mango program from this codebase would require the changes and improvements to stay publicly available under GPL.

Development

See DEVELOPING.md and FAQ-DEV.md

Dependencies

  • rust version 1.69.0
  • solana-cli 1.16.7
  • anchor-cli 0.28.0
  • npm 8.1.2
  • node v16.13.1

Deployments

  • devnet: 4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg
  • mainnet-beta: 4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg
  • primary mango group on mainnet-beta: 78b8f4cGCwmZ9ysPFMWLaLTkkaYnUjwMJYStWe5RTSSX

Release

For program deployment, see RELEASING.md.

Here are steps followed while performing a npm package release note: the UI currently uses code directly from github, pointing to the ts-client branch

  • use yarn publish to release a new package, ensure compatibility with program release to mainnet-beta
  • fix the tag auto added by yarn to match our internal convention, see script fix-npm-tag.sh, tags should look like this e.g.npm-v0.0.1, note: the npm package version/tag should not necessarily match the latest program deployment