mopr 0.0.99__tar.gz → 0.0.111.dev167__tar.gz
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.
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.gitignore +2 -0
- mopr-0.0.111.dev167/AGENTS.md +72 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/BUILDING.md +8 -8
- {mopr-0.0.99 → mopr-0.0.111.dev167}/CHANGELOG.md +1072 -1
- mopr-0.0.111.dev167/CONTRIBUTING.md +640 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/PKG-INFO +10 -7
- {mopr-0.0.99 → mopr-0.0.111.dev167}/README.md +8 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/THIRD-PARTY-NOTICES.md +612 -611
- {mopr-0.0.99 → mopr-0.0.111.dev167}/_version.py +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/bits.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/cron.md +71 -41
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/cron.py +126 -73
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/cron_test.py +214 -54
- mopr-0.0.111.dev167/base/dotenv.md +70 -0
- mopr-0.0.111.dev167/base/dotenv.py +117 -0
- mopr-0.0.111.dev167/base/dotenv_test.py +73 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/environment.md +6 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/environment.py +1 -96
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/except.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/filesystem.md +8 -6
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/filesystem.py +41 -17
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/filesystem_test.py +38 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/language.md +6 -6
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/language.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/language_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/mmap.md +6 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/numeric.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/region.md +23 -11
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/region_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/singleton.py +4 -4
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/strings.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/time.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/time.py +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/timestamp.md +4 -4
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/types.md +14 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/types.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/README.md +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/macro/README.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/micro/README.md +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/micro/crc32_macos_arm64.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/micro/ringbuffer_macos_arm64.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/micro/wal_macos_arm64.md +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/regression/README.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/stability/README.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/conanfile.py +19 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/config/__init__.py +4 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/config/config.md +6 -4
- {mopr-0.0.99 → mopr-0.0.111.dev167}/config/config.py +20 -3
- mopr-0.0.111.dev167/data/README.md +29 -0
- mopr-0.0.111.dev167/data/adapter.md +304 -0
- mopr-0.0.111.dev167/data/adapter.py +1641 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/adapter_test.py +323 -27
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/cache.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/cache_test.py +9 -4
- mopr-0.0.111.dev167/data/contrib/README.md +24 -0
- mopr-0.0.111.dev167/data/contrib/__init__.py +26 -0
- mopr-0.0.111.dev167/data/contrib/forex/README.md +110 -0
- mopr-0.0.111.dev167/data/contrib/forex/bcd.md +119 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/bcd.py +17 -3
- mopr-0.0.111.dev167/data/contrib/forex/bceao.md +168 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/bceao.py +336 -81
- mopr-0.0.111.dev167/data/contrib/forex/bog.md +127 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/bog.py +143 -7
- mopr-0.0.111.dev167/data/contrib/forex/bsl.md +174 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/bsl.py +140 -32
- mopr-0.0.111.dev167/data/contrib/forex/datasource.md +91 -0
- mopr-0.0.111.dev167/data/contrib/forex/ecb.md +107 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/ecb.py +29 -8
- mopr-0.0.111.dev167/data/contrib/forex/fed.md +115 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/fed.py +11 -2
- mopr-0.0.111.dev167/data/contrib/forex/hkma.md +206 -0
- mopr-0.0.111.dev167/data/contrib/forex/hkma.py +711 -0
- mopr-0.0.111.dev167/data/contrib/forex/number.md +99 -0
- mopr-0.0.111.dev167/data/contrib/forex/official_source.md +117 -0
- mopr-0.0.111.dev167/data/contrib/forex/pboc.md +139 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/pboc.py +142 -215
- mopr-0.0.111.dev167/data/contrib/forex/quote.md +87 -0
- mopr-0.0.111.dev167/data/contrib/forex/quote.py +334 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/bog.csv +7542 -7542
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/embedded_resources.cpp +1 -1
- mopr-0.0.111.dev167/data/contrib/maintenance.md +207 -0
- mopr-0.0.111.dev167/data/contrib/maintenance.py +232 -0
- mopr-0.0.111.dev167/data/contrib/maintenance_test.py +259 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/datasource.py +1 -1
- mopr-0.0.111.dev167/data/finance.md +51 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/finance.py +7 -7
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/market.md +6 -6
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/market.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/README.md +11 -9
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/__init__.py +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/asset_class_cn.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/authority.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar.md +67 -37
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar.py +50 -1
- mopr-0.0.111.dev167/data/meta/calendar_announcements.py +83 -0
- mopr-0.0.111.dev167/data/meta/calendar_announcements_test.py +84 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_cfets.md +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_cfets.py +3 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_cfets_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_cn.md +34 -25
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_cn.py +2 -1
- mopr-0.0.111.dev167/data/meta/calendar_djf.py +64 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_djf_sle_test.py +81 -51
- mopr-0.0.111.dev167/data/meta/calendar_ecb_holidays.py +84 -0
- mopr-0.0.111.dev167/data/meta/calendar_ecb_holidays_test.py +90 -0
- mopr-0.0.111.dev167/data/meta/calendar_eur.py +60 -0
- mopr-0.0.111.dev167/data/meta/calendar_eur_test.py +108 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_forex.py +63 -44
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_forex_holidays.py +5 -6
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_forex_test.py +24 -22
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_ghs.py +22 -20
- mopr-0.0.111.dev167/data/meta/calendar_ghs_holidays.py +28 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_ghs_test.py +64 -22
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_hkd.py +0 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_seed.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_sle.py +16 -20
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_test.py +65 -1
- mopr-0.0.111.dev167/data/meta/calendar_usd.py +54 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/calendar_xof.py +0 -2
- mopr-0.0.111.dev167/data/meta/calendar_xof_holidays.py +46 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/exchange.md +62 -47
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/exchange.py +259 -146
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/frequency.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/fund.py +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/holiday.py +4 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/institution.py +6 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/instrument.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/instrument.py +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/layout.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/monetary.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/monetary.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/monetary_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/money.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/money.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/money_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/README.md +27 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_cny.h +3 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_eur.h +3 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_ghs.h +3 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_hkd.h +3 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_sle.h +3 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_usd.h +3 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_xof.h +3 -0
- mopr-0.0.111.dev167/data/meta/seeds/ecb_holidays.h +319 -0
- mopr-0.0.111.dev167/data/meta/seeds/ecb_holidays.json +223 -0
- mopr-0.0.111.dev167/data/meta/seeds/ghs_holidays.h +196 -0
- mopr-0.0.111.dev167/data/meta/seeds/ghs_holidays.json +129 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/monetary_list-one.h +3 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/monetary_list-one.xml +1955 -1955
- mopr-0.0.111.dev167/data/meta/seeds/xof_holidays.json +21 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/session.md +10 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/session.py +21 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/session_test.py +35 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/workday.md +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/workday_test.py +2 -1
- mopr-0.0.111.dev167/data/msn_quote_ids.json +68 -0
- mopr-0.0.111.dev167/data/msn_quotes.py +157 -0
- mopr-0.0.111.dev167/data/msn_quotes_test.py +132 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/schema/adjustment.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/status.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/README.md +19 -6
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/csv.md +5 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/csv.py +9 -8
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/yaml.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/__init__.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/connection_pool.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/connection_pool.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/endpoint.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/endpoint.py +1 -1
- mopr-0.0.111.dev167/io/http.md +163 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/http.py +36 -5
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/operation_handler.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/operation_handler.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/log/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/log/logger.md +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/log/logger.py +2 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/machine/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/main.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/__init__.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/asset_class.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/asset_class_instrument.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/asset_class_legacy.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/asset_class_nature.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/asset_class_tags.py +4 -4
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/asset_master.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/entities_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/mopr.egg-info/PKG-INFO +10 -7
- {mopr-0.0.99 → mopr-0.0.111.dev167}/mopr.egg-info/SOURCES.txt +41 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/mopr.egg-info/requires.txt +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/mopr.egg-info/scm_file_list.json +101 -0
- mopr-0.0.111.dev167/mopr.egg-info/scm_version.json +8 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/pyproject.toml +35 -19
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/__init__.py +2 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/once.md +9 -8
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/ringbuffer.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/scheduler.md +18 -10
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/README.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/credential_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/rbac_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/session_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/token_test.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/spec/README.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/spec/api.md +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/README.md +3 -3
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/__init__.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/storage.md +4 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/storage.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/storage_test.py +5 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/wal.md +16 -10
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/wal.py +36 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/storage/wal_test.py +51 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/bin2header.py +5 -2
- mopr-0.0.111.dev167/tools/crosscheck/__init__.py +20 -0
- mopr-0.0.111.dev167/tools/crosscheck/__main__.py +12 -0
- mopr-0.0.111.dev167/tools/crosscheck/cases.py +83 -0
- mopr-0.0.111.dev167/tools/crosscheck/cli.py +147 -0
- mopr-0.0.111.dev167/tools/crosscheck/runners.py +531 -0
- mopr-0.0.111.dev167/tools/ecb_holidays.py +154 -0
- mopr-0.0.111.dev167/tools/ecb_holidays_test.py +70 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/__init__.py +1 -2
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/handlers/python.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/python.py +11 -6
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/run_module.py +1 -1
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/vscode_sync/__init__.py +2 -4
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/vscode_sync/layers.py +1 -1
- mopr-0.0.99/AGENTS.md +0 -344
- mopr-0.0.99/CONTRIBUTING.md +0 -111
- mopr-0.0.99/data/README.md +0 -25
- mopr-0.0.99/data/adapter.md +0 -103
- mopr-0.0.99/data/adapter.py +0 -849
- mopr-0.0.99/data/contrib/__init__.py +0 -0
- mopr-0.0.99/data/contrib/forex/hkma.py +0 -328
- mopr-0.0.99/data/contrib/forex/quote.py +0 -132
- mopr-0.0.99/data/meta/calendar_djf.py +0 -20
- mopr-0.0.99/data/meta/calendar_eur.py +0 -19
- mopr-0.0.99/data/meta/calendar_ghs_holidays.py +0 -37
- mopr-0.0.99/data/meta/calendar_usd.py +0 -28
- mopr-0.0.99/data/meta/calendar_xof_holidays.py +0 -28
- mopr-0.0.99/io/http.md +0 -92
- mopr-0.0.99/mopr.egg-info/scm_version.json +0 -8
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.clang-format +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.clang-tidy +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.clangd +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.editorconfig +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.gitattributes +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.gitee/ISSUE_TEMPLATE/config.yml +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.gitee/ISSUE_TEMPLATE/proposal.yml +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.githooks/commit-msg +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.githooks/pre-commit +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.vscode-default/settings.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.vscode-default/tasks.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.vscode-macos/settings.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.vscode-macos/tasks.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.vscode-windows/launch.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.vscode-windows/settings.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/.vscode-windows/tasks.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/LICENSE +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/MANIFEST.in +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/bits_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/crc32.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/crc32.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/crc32_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/environment_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/mmap.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/mmap_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/numeric.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/numeric_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/region.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/singleton_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/strings.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/time_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/timestamp.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/timestamp_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/base/types_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/micro/csv_macos_arm64.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/micro/ringbuffer_windows_amd64.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/benchmark/micro/wal_windows_amd64.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/config/README.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/base.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/cache.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/datasource.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/number.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/official_source.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/README.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/embedded_resources.h +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/forex_cny_pboc.csv +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/forex_ghs_bog.csv +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/forex_ghs_bog_quotes.json +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/forex_hkd_hkma.csv +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/forex_usd_fed.csv +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/pboc_cny_1994_2005.csv +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/resources.S +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/contrib/forex/seeds/resources.rc +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/fund.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_cny.base +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_eur.base +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_ghs.base +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_hkd.base +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_sle.base +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_usd.base +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/seeds/calendar_xof.base +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/meta/workday.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/schema/README.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/schema/bar.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/schema/company.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/schema/dividend.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/schema/sector.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/data/schema/trade.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/README.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/generator.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/hlc.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/id.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/option.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/queue.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/state_store.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/distributed/id/tests.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/charsets.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/json.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/encoding/yaml.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/io/README.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/log/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/machine/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/machine/id.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/meta/entities.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/mopr.egg-info/dependency_links.txt +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/mopr.egg-info/entry_points.txt +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/mopr.egg-info/top_level.txt +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/once.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/once_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/ringbuffer.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/ringbuffer_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/scheduler.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/runtime/scheduler_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/audit/README.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/authorize.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/catalog.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/credential.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/errors.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/model.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/principal.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/session.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/spi.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/auth/token.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/security/compliance/README.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/setup.cfg +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/spec/behavior.md +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/__main__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/gen_seed_headers.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/__main__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/cli.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/fetch.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/handlers/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/handlers/cpp.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/handlers/go.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/handlers/java.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/handlers/rust.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/notices.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/report.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_audit/todo.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/__main__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/cli.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/core.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/__init__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/base.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/cpp.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/css.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/go.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/html.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/java.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/javascript.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/rust.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/typescript.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/handlers/vue.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/license_header/project_meta.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/vscode_sync/__main__.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/vscode_sync/cli.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/vscode_sync/jsonc.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/vscode_sync/jsonc_test.py +0 -0
- {mopr-0.0.99 → mopr-0.0.111.dev167}/tools/vscode_sync/layers_test.py +0 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# AGENTS.md — AI 助手入口
|
|
2
|
+
|
|
3
|
+
> **本仓库的规范源是 [CONTRIBUTING.md](CONTRIBUTING.md)**:规则、约定与判据全部在那里。
|
|
4
|
+
> 本文件只做三件事 —— 告诉 AI 该读什么、哪些线不能踩、改完怎么验。**与 CONTRIBUTING.md 冲突时
|
|
5
|
+
> 以后者为准**;本文件不复制细则,只给指针。
|
|
6
|
+
|
|
7
|
+
## 1. 开工前必读
|
|
8
|
+
|
|
9
|
+
按顺序读,读完再动手:
|
|
10
|
+
|
|
11
|
+
| 顺序 | 读什么 | 为什么 |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| 1 | [CONTRIBUTING.md](CONTRIBUTING.md) | 规范全集:语言角色、命名、注释、文档、测试、提交 |
|
|
14
|
+
| 2 | 目标模块的 `README.md` 与同名 `.md` | 该模块的口径、跨语言对照、已知缺口(`§5 TODO`) |
|
|
15
|
+
| 3 | **该语义的 Python 实现(spec)与 Python 用例** | 语义以此为准;不要拿其它语言的既有实现反推 spec |
|
|
16
|
+
|
|
17
|
+
## 2. 硬约束
|
|
18
|
+
|
|
19
|
+
| # | 约束 | 细则 |
|
|
20
|
+
| --- | --- | --- |
|
|
21
|
+
| 1 | **Python 是 spec**,语义、API、默认行为、失败约定一律以它为准;生产实现为 **C++ / Rust**(可互为替代),Go / Zig / Java 等为扩展 | [§2.3](CONTRIBUTING.md#23-语言角色与演进顺序) |
|
|
22
|
+
| 2 | **不自己造东西**:不造 Python 里没有的结构 / 函数名 / 逻辑;需要新能力先补 Python spec,再推广 | [§4.1](CONTRIBUTING.md#41-总纲snake_case-优先) |
|
|
23
|
+
| 3 | **读 spec 代码,不读注释猜**;怀疑 spec 有错时先跑 Python 验证,再与用户商定是否改 spec | [§2.3](CONTRIBUTING.md#23-语言角色与演进顺序) |
|
|
24
|
+
| 4 | **注释只说"是什么 / 怎么做 / 为什么这样"**,不写"本轮改了啥、上一版是什么" | [§5.1](CONTRIBUTING.md#51-注释只说是什么怎么做) |
|
|
25
|
+
| 5 | **通用能力先查 `base/`**,不写私有副本;缺就补 base | [§5.2](CONTRIBUTING.md#52-通用能力优先落-base) |
|
|
26
|
+
| 6 | **不擅自加开关**;调试开关一律 `debug_` 前缀 | [§5.3](CONTRIBUTING.md#53-调试开关) |
|
|
27
|
+
| 7 | **写盘必须幂等**:同一批输入跑多遍,产物一致 | [§5.4](CONTRIBUTING.md#54-重复触发与幂等) |
|
|
28
|
+
| 8 | **文档与代码同批**:新目录带 `README.md`,跨语言模块带同名 `.md` | [§6](CONTRIBUTING.md#6-文档规范) |
|
|
29
|
+
| 9 | **编码与行尾**:UTF-8 无 BOM、LF、末尾一个换行 | [§5.8](CONTRIBUTING.md#58-文件编码与行尾) |
|
|
30
|
+
| 10 | **不擅自 `git commit` / `push` / `rebase`**;提交信息按模板,Windows 下用 `-F` 传文件 | [§8](CONTRIBUTING.md#8-git-提交规范) |
|
|
31
|
+
| 11 | **对照表列序固定** `python → c++ → rust → go → zig → java`;前四门必须实现,`zig` / `java` 可选(缺失不影响状态) | [§2.3](CONTRIBUTING.md#23-语言角色与演进顺序) |
|
|
32
|
+
|
|
33
|
+
## 3. 主题索引
|
|
34
|
+
|
|
35
|
+
| 我要… | 去哪 |
|
|
36
|
+
| --- | --- |
|
|
37
|
+
| 查语言最低版本 / 编译器基线 | [§2](CONTRIBUTING.md#2-语言与版本基线) |
|
|
38
|
+
| 决定文件放哪、叫什么 | [§3](CONTRIBUTING.md#3-目录与多语言布局) |
|
|
39
|
+
| 定函数名 / 命名空间 / 头文件守卫宏 | [§4](CONTRIBUTING.md#4-命名与数据契约) |
|
|
40
|
+
| 定整型 / 浮点的跨语言名与宽度 | [§4.6](CONTRIBUTING.md#46-标量类型整型-浮点) |
|
|
41
|
+
| 写注释、判断该不该写某句 | [§5.1](CONTRIBUTING.md#51-注释只说是什么怎么做) |
|
|
42
|
+
| 找某个通用能力该不该落 `base/` | [§5.2](CONTRIBUTING.md#52-通用能力优先落-base) |
|
|
43
|
+
| 处理重复触发 / 幂等 | [§5.4](CONTRIBUTING.md#54-重复触发与幂等) |
|
|
44
|
+
| 跑 Python、写 import | [§5.5](CONTRIBUTING.md#55-python-包形态与导入) |
|
|
45
|
+
| 写 `#include` | [§5.6](CONTRIBUTING.md#56-c-头文件引用) |
|
|
46
|
+
| 处理字符串 | [§5.7](CONTRIBUTING.md#57-c-字符串处理复用) |
|
|
47
|
+
| 写模块文档 / 判"算不算完成" | [§6](CONTRIBUTING.md#6-文档规范) |
|
|
48
|
+
| 写测试 | [§7](CONTRIBUTING.md#7-测试规范) |
|
|
49
|
+
| 写提交信息 | [§8.1](CONTRIBUTING.md#81-提交信息) |
|
|
50
|
+
| 判断要不要立提案 | [§9](CONTRIBUTING.md#9-提案与验证工作流) |
|
|
51
|
+
| 构建 / 依赖 / 发布 | [BUILDING.md](BUILDING.md) |
|
|
52
|
+
|
|
53
|
+
## 4. 常用命令
|
|
54
|
+
|
|
55
|
+
| 目的 | 命令 |
|
|
56
|
+
| --- | --- |
|
|
57
|
+
| C++ 全量构建 | `cmake --build build/debug-dynamic --config Debug --target mopr_tests` |
|
|
58
|
+
| C++ 跑用例 | `./build/debug-dynamic/tests/Debug/mopr_tests.exe --gtest_filter="<Suite>.*"` |
|
|
59
|
+
| 联网用例(默认跳过) | 置 `MOPR_FOREX_ONLINE=1`,且只跑在临时 home 内 |
|
|
60
|
+
| Python 包化跑用例 | `python -m mopr.<模块>.<子模块>_test`(禁止 `pytest <目录>`) |
|
|
61
|
+
| 跨语言一致性对照 | `python -m tools.crosscheck`(用例见 `tests/fixtures/`) |
|
|
62
|
+
| 编码自查 | 见 [§5.8](CONTRIBUTING.md#58-文件编码与行尾) 的 PowerShell 片段 |
|
|
63
|
+
| 提交(Windows) | 写入 `.git/commit-msg.tmp` 后 `git commit -F .git/commit-msg.tmp` |
|
|
64
|
+
|
|
65
|
+
## 5. 交付前自检
|
|
66
|
+
|
|
67
|
+
1. **语义**:与 Python spec 逐值对拍过(不是"看起来一样");有差异先改实现,或与用户商定改 spec。
|
|
68
|
+
2. **构建与用例**:全量编译通过、相关用例通过;跳过项(在线 / 依赖外部数据)要能说明原因。
|
|
69
|
+
3. **注释**:没有"本轮 / 上一版 / 原来 / 曾经"这类变更叙事([§5.1](CONTRIBUTING.md#51-注释只说是什么怎么做))。
|
|
70
|
+
4. **文档**:目录 `README.md`、模块 `.md` 的路线图 / 功能表 / 测试 / TODO 与实际一致,无陈旧条目。
|
|
71
|
+
5. **编码**:UTF-8 无 BOM、LF、末尾换行([§5.8](CONTRIBUTING.md#58-文件编码与行尾))。
|
|
72
|
+
6. **提交信息**:符合 `type[language]:summary`,正文分条,无版本号 / 代理署名。
|
|
@@ -300,18 +300,18 @@ powershell -ExecutionPolicy Bypass -File .\refresh-clangd.ps1
|
|
|
300
300
|
|
|
301
301
|
> 注意:clangd 只是编辑器提示,**与编译结果无关**——构建始终以 VS preset / Build 按钮为准;若 clangd 报错而构建通过,以构建为准。
|
|
302
302
|
|
|
303
|
-
### 2.8 版本发布(
|
|
303
|
+
### 2.8 版本发布(auto-changelog)
|
|
304
304
|
|
|
305
|
-
mopr 的版本号不写死:CMake(`cmake/git_tag_info.cmake`)与 Conan(`conanfile.py` 的 `set_version`)均自动取 git 仓库最新 `v0.0.x` tag 作为构建版本;tag 与 CHANGELOG 由 **[
|
|
305
|
+
mopr 的版本号不写死:CMake(`cmake/git_tag_info.cmake`)与 Conan(`conanfile.py` 的 `set_version`)均自动取 git 仓库最新 `v0.0.x` tag 作为构建版本;tag 与 CHANGELOG 由 **[auto-changelog](https://github.com/quant1x/auto-changelog)** 统一生成,Agent 与协作者不手动打 tag(见 CONTRIBUTING.md)。
|
|
306
306
|
|
|
307
|
-
**安装
|
|
307
|
+
**安装 auto-changelog**(需要 Go 工具链,对应 mopr 的 Go 基线 1.27+):
|
|
308
308
|
|
|
309
309
|
```powershell
|
|
310
|
-
go install
|
|
310
|
+
go install github.com/quant1x/auto-changelog@latest
|
|
311
311
|
```
|
|
312
312
|
|
|
313
|
-
- 产物位于 `%USERPROFILE%\go\bin\
|
|
314
|
-
- 如需安装指定版本,将 `@latest` 替换为版本号即可,例如 `go install
|
|
313
|
+
- 产物位于 `%USERPROFILE%\go\bin\auto-changelog.exe`;若命令找不到,把该目录加入 PATH 后重开终端;
|
|
314
|
+
- 如需安装指定版本,将 `@latest` 替换为版本号即可,例如 `go install github.com/quant1x/auto-changelog@v1.4.3`。
|
|
315
315
|
|
|
316
316
|
**发布前刷新第三方声明**:conan 依赖变更后,先按 6「第三方声明与许可证归档」运行 `python -m tools.license_audit cpp`,确认无「缺失 / 待人工补录」输出;`THIRD-PARTY-NOTICES.md` 与 `third_party/licenses/` 随发布产物一并附带。
|
|
317
317
|
|
|
@@ -655,7 +655,7 @@ use mopr::distributed;
|
|
|
655
655
|
|
|
656
656
|
#### 3.5.2 安装
|
|
657
657
|
|
|
658
|
-
前置:Rust 工具链可用(`cargo --version` 不低于本仓基线 1.98.1+,见
|
|
658
|
+
前置:Rust 工具链可用(`cargo --version` 不低于本仓基线 1.98.1+,见 CONTRIBUTING.md)。三个外部工具都是 cargo 子命令插件,统一经 `cargo install` 编译安装到 `%USERPROFILE%\.cargo\bin`(rustup 通常已将该目录写入 PATH,新装后重开终端生效):
|
|
659
659
|
|
|
660
660
|
```powershell
|
|
661
661
|
cargo install --locked cargo-deny
|
|
@@ -792,7 +792,7 @@ mvn -Pbench -Dtest=ringbuffer_LMAXDisruptorBenchmark test # 只跑基准
|
|
|
792
792
|
|
|
793
793
|
| 约束 | 值 | 说明 |
|
|
794
794
|
| --- | --- | --- |
|
|
795
|
-
| Go 最低版本 | **1.27.0** | `go.mod` 已声明 `go 1.27.0`;本仓库 Go 基线 1.27+,与 README「语言与版本要求」、
|
|
795
|
+
| Go 最低版本 | **1.27.0** | `go.mod` 已声明 `go 1.27.0`;本仓库 Go 基线 1.27+,与 README「语言与版本要求」、CONTRIBUTING.md 一致 |
|
|
796
796
|
|
|
797
797
|
本机工具链版本用 `go version` 核对,应不低于 `go1.27.0`(当前验证环境:Windows + `go1.27.0`)。
|
|
798
798
|
|