diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..c44e609d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,43 @@ +--- +name: Bug Report +about: Report a bug to help us improve +title: '[Bug]: ' +labels: 'bug' +assignees: '' + +--- + +**Checked for duplicates** + +> Have you checked for duplicate issue tickets? + +- Ex. Yes - I've already checked +- Ex. No - I haven't checked + +**Describe the bug** + +> A clear and concise description of what the bug is. Plain-text snippets preferred but screenshots welcome. + +Ex. When I did [...] action, I noticed [...] + +**What did you expect?** + +> A clear and concise description of what you expect to happen + +Ex. I expected [...] + +**Reproducible steps** + +> How would we reproduce this bug? Please walk us through it step by step. Plain-text snippets preferred but screenshots welcome. + +1. +2. +3. + +**What is your environment?** + +> Include any computer hardware, operating system, framework, browser, time-of-day or other contextual information related to your issue + +- Ex. Version of this software [e.g. vX.Y.Z] +- Ex. Operating System: [e.g. MacOSX with Docker Desktop vX.Y] +- ... diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..0b74a7aa --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,34 @@ +--- +name: New Feature +about: Suggest a new feature for us to implement +title: '[New Feature]: ' +labels: 'enhancement' +assignees: '' + +--- + +**Checked for duplicates** + +> Have you checked for duplicate issue tickets? + +- Ex. Yes - I've already checked +- Ex. No - I haven't checked + +**Alternatives considered** + +> Have you considered alternative solutions to your feature request? + +- Ex. Yes - and alternatives don't suffice +- Ex. No - I haven't considered + +**Related problems** + +> Is your feature request related to any problems? Please help us understand if so, including linking to any other issue tickets. + +Ex. I'm frustrated when [...] happens as documented in issue-XYZ + +**Describe the feature request** + +> A clear and concise description of your request. + +Ex. I need or want [...] diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..8ef73bbc --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,13 @@ +## Purpose +- Clear, easy-to-understand sentences outlining the purpose of the PR +## Proposed Changes +- [ADD] ... +- [CHANGE] ... +- [FIX] ... +## Issues +- Links to relevant issues +- Example: issue-XYZ +## Testing +- Provide some proof you've tested your changes +- Example: test results available at ... +- Example: tested on operating system ... diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ba3493c..fb130d61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,337 +1,13 @@ # Changelog -All notable changes to this project will be documented in this file. +All notable changes to this project will be documented in this file. -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). +## [X.Y.Z](https://github.com/NASA-AMMOS//releases/tag/X.Y.Z) - 2023-MM-DD -## [2.4.1](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.4.0...2.4.1) +### Added -### Commits +- -- Fix RST formatting issues that were breaking PyPI [`011b63b`](https://github.com/NASA-AMMOS/AIT-GUI/commit/011b63bdb62426def957c6c49febbe08d436ea9d) - -## [2.4.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.3.2-rc1...2.4.0) - 2023-07-26 - -### Merged - -- Issue #253 - Add ait-example to poetry scripts [`#255`](https://github.com/NASA-AMMOS/AIT-GUI/pull/255) -- Issue #252 - Drop setup.py [`#254`](https://github.com/NASA-AMMOS/AIT-GUI/pull/254) -- Issue #241 - Add linters and dev tools to match Core [`#250`](https://github.com/NASA-AMMOS/AIT-GUI/pull/250) -- Issue #245 - Drop ait/__init__.py [`#246`](https://github.com/NASA-AMMOS/AIT-GUI/pull/246) -- Issue #247 - Pin greenlet version [`#248`](https://github.com/NASA-AMMOS/AIT-GUI/pull/248) -- Issue #243 - Add RTD build status badge to README [`#244`](https://github.com/NASA-AMMOS/AIT-GUI/pull/244) -- Add poetry and pre-commit [`#235`](https://github.com/NASA-AMMOS/AIT-GUI/pull/235) -- Issue #62 - Add badge to show total number of fields that are out of limit in a tab [`#236`](https://github.com/NASA-AMMOS/AIT-GUI/pull/236) -- Issue #121 - Add help text popover for command arguments [`#234`](https://github.com/NASA-AMMOS/AIT-GUI/pull/234) - -### Fixed - -- Issue #247 - Pin greenlet version [`#247`](https://github.com/NASA-AMMOS/AIT-GUI/issues/247) - -### Commits - -- UI static artifact updates for 2.4.0 release [`ac6091f`](https://github.com/NASA-AMMOS/AIT-GUI/commit/ac6091fe7deb3dfa922099e25b3e5a8d59b0839c) -- Update Python version bounds to match Core [`e6981cc`](https://github.com/NASA-AMMOS/AIT-GUI/commit/e6981cca077a67f42c2d1009cf83a95414d496d4) -- Poetry lock file update post dev dependency updates [`6430481`](https://github.com/NASA-AMMOS/AIT-GUI/commit/64304815875ddfc3d838ae19708bb5d3c7fe74a4) -- Add poetry and pre-comit. Also fix related linter issues. [`517d3da`](https://github.com/NASA-AMMOS/AIT-GUI/commit/517d3dada1436e4c57b7203472b43cfbc5f65e58) -- Issue #241 - Linter compliance updates [`cf6865e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/cf6865eed78d92e533f3af17a47bb16587d13b19) -- Bump sphinx dependency version for docs build debug [`8ee8d90`](https://github.com/NASA-AMMOS/AIT-GUI/commit/8ee8d9093473fe9f58c51fe97746ba42ed990d49) -- Issue #241 - Add linters and checks to match Core [`cd00594`](https://github.com/NASA-AMMOS/AIT-GUI/commit/cd005944a0bfab12d3d76192bd0a1410accc2cbb) -- Prep for 2.4.0 release [`246ba43`](https://github.com/NASA-AMMOS/AIT-GUI/commit/246ba43b4d0affc9c761aeb09c70bf5e29a53c96) -- gitignore updates [`752a262`](https://github.com/NASA-AMMOS/AIT-GUI/commit/752a262729d49883ee2bef879518a2c12e0f840e) -- Issue #241 - Add tox config and update gitignore [`a35a02e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a35a02e68fc7384ab286ff681db07747a2fc859a) -- Issue #241 - Update README with dev tool related updates [`2be208c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/2be208cb840eb2a574dd85a99eaf9abc31125545) -- Ignore some spurious mypy errors [`7fdd86f`](https://github.com/NASA-AMMOS/AIT-GUI/commit/7fdd86f63aca275ba1a17d6703b04b13993c7527) -- Update RTD config for broken build debug [`16b2d9e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/16b2d9ef32840559bab0be0c4165c41b9cafbb7e) -- Add explicit sphinx-js dependency for RTD build debug [`7bfe6e2`](https://github.com/NASA-AMMOS/AIT-GUI/commit/7bfe6e223e07358badfac8fbdf2f1b89b19a0c0a) -- Issue #231 - Update requires poetry core version [`b6caa64`](https://github.com/NASA-AMMOS/AIT-GUI/commit/b6caa643494a8d5934817a52f5facaa6f3452e49) - -## [2.3.2-rc1](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.3.1...2.3.2-rc1) - 2022-04-13 - -### Merged - -- Fix typo that makes call to log method that doesn't exist [`#218`](https://github.com/NASA-AMMOS/AIT-GUI/pull/218) -- Issue #216 - Add Python3.7 dependency to setup.py [`#217`](https://github.com/NASA-AMMOS/AIT-GUI/pull/217) - -### Commits - -- Prep for 2.3.2-rc1 release [`e4e8f82`](https://github.com/NASA-AMMOS/AIT-GUI/commit/e4e8f827a8d1e9fce1c902f525261536f28a6fc9) -- Fixed Typo [`30c38dc`](https://github.com/NASA-AMMOS/AIT-GUI/commit/30c38dcadc1b27f2c337d7b0d7b9709ab9ebdac6) - -## [2.3.1](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.3.0...2.3.1) - 2021-03-10 - -### Merged - -- Issue #200 - Properly decode received log messages in GUI plugin [`#201`](https://github.com/NASA-AMMOS/AIT-GUI/pull/201) - -### Fixed - -- Issue #200 - Properly decode received log messages in GUI plugin [`#200`](https://github.com/NASA-AMMOS/AIT-GUI/issues/200) - -### Commits - -- Prep for 2.3.1 release [`a01898e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a01898e81834266ef9b7a1582295df4349c64601) - -## [2.3.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.2.2...2.3.0) - 2021-03-10 - -### Merged - -- Issue #198 - Address stagnant DN to EU value issue [`#199`](https://github.com/NASA-AMMOS/AIT-GUI/pull/199) -- Issue #194 - Fix improperly initialized 'dntoeu' packet states [`#195`](https://github.com/NASA-AMMOS/AIT-GUI/pull/195) -- Issue #192 - Update Plugin data handling to match Core changes [`#193`](https://github.com/NASA-AMMOS/AIT-GUI/pull/193) -- Issue #196 - Fix UI Time64 decode handling of 0 value [`#197`](https://github.com/NASA-AMMOS/AIT-GUI/pull/197) - -### Fixed - -- Issue #198 - Address stagnant DN to EU value issue [`#198`](https://github.com/NASA-AMMOS/AIT-GUI/issues/198) -- Issue #194 - Fix improperly initialized 'dntoeu' packet states [`#194`](https://github.com/NASA-AMMOS/AIT-GUI/issues/194) -- Issue #196 - Fix UI Time64 decode handling of 0 value [`#196`](https://github.com/NASA-AMMOS/AIT-GUI/issues/196) - -### Commits - -- Prep for 2.3.0 release [`7c8be23`](https://github.com/NASA-AMMOS/AIT-GUI/commit/7c8be235f896ec5d4a9085dea4af420100823e25) - -## [2.2.2](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.2.1...2.2.2) - 2021-02-01 - -### Merged - -- Issue #189 - Update diff handling of complex types and human readable values [`#191`](https://github.com/NASA-AMMOS/AIT-GUI/pull/191) - -### Commits - -- Issue #189 and #190 - Fix data formatting with new data diffing [`138ccec`](https://github.com/NASA-AMMOS/AIT-GUI/commit/138ccecd152cd8214535690dedeaa408522f6d92) -- Issue #189 - Update backend handling of Complex types when diffing [`2d2f36c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/2d2f36ce090d222ad00427220c7cf4dd01b14995) -- Prep for 2.2.2 release [`6a71964`](https://github.com/NASA-AMMOS/AIT-GUI/commit/6a71964ad0bcafcbb9629ad9cdda94f3ab4e4819) - -## [2.2.1](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.2.0...2.2.1) - 2021-01-20 - -### Merged - -- Issue #187 - Fix broken Search component [`#188`](https://github.com/NASA-AMMOS/AIT-GUI/pull/188) -- Issue #185 - Fix broken field formatting [`#186`](https://github.com/NASA-AMMOS/AIT-GUI/pull/186) -- Issue #183 - Minor typo fix in static directory warn [`#184`](https://github.com/NASA-AMMOS/AIT-GUI/pull/184) -- Issue #181 - Drop old notification test scripts [`#182`](https://github.com/NASA-AMMOS/AIT-GUI/pull/182) - -### Commits - -- Prep for 2.2.1 [`0af0c88`](https://github.com/NASA-AMMOS/AIT-GUI/commit/0af0c88a01a10004cb961c9adb1c68184a142cdb) - -## [2.2.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.1.0...2.2.0) - 2020-12-16 - -### Merged - -- Issue #138 - Update GUI static file configuration parameters [`#178`](https://github.com/NASA-AMMOS/AIT-GUI/pull/178) -- Issue #171 - Add derived telemetry values [`#172`](https://github.com/NASA-AMMOS/AIT-GUI/pull/172) -- Issue #173 - Update GUI refresh handler [`#174`](https://github.com/NASA-AMMOS/AIT-GUI/pull/174) -- Issue #105_kkallas - Rework of Backend/Frontend telemetry processing [`#170`](https://github.com/NASA-AMMOS/AIT-GUI/pull/170) - -### Commits - -- Implement counter method for checking packet delta order on frontend (#105) [`62b97e4`](https://github.com/NASA-AMMOS/AIT-GUI/commit/62b97e41e93a5bba21e68d56c26f5fd1c7002e56) -- Remove packet class from frontend (#105) [`11855c9`](https://github.com/NASA-AMMOS/AIT-GUI/commit/11855c9988b909a82c1caf564ca9e2c29cc59962) -- Upate GUI static files to latest [`c7bea1d`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c7bea1dbdffc917b52ced227101d66f11b1df407) -- Prep for 2.2.0 release [`a0c8d77`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a0c8d77935c1fbd8ec90034d9c3e447c975934a5) -- Issue #105 - Send packet as JSON to frontend [`ebd3d67`](https://github.com/NASA-AMMOS/AIT-GUI/commit/ebd3d67a67c31d071a43370680f783b932f8115d) -- Modularize getting packet definition and name (#105) [`7fddbf8`](https://github.com/NASA-AMMOS/AIT-GUI/commit/7fddbf8b6de6df77106f70405a554002ab0e3139) -- Remove initial packet conversion to JSON to save time (#105) [`aa28077`](https://github.com/NASA-AMMOS/AIT-GUI/commit/aa2807788c05e0a301d362428069221f7bf4f5b1) -- Request full packet from backend on page refresh [`8841588`](https://github.com/NASA-AMMOS/AIT-GUI/commit/8841588c87bfe9dd07e8f90976c4c624874ad2e6) -- Send new dntoeu values from backend to frontend (#105) [`df28e93`](https://github.com/NASA-AMMOS/AIT-GUI/commit/df28e936623e5c98fb1dd112df12bd315f61b686) -- Make counters session dependent (#105) [`52a614f`](https://github.com/NASA-AMMOS/AIT-GUI/commit/52a614f33782217d9d86d229f39da8c2e6a61b6d) -- Update dntoeu plot option (#105) [`7f7b35c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/7f7b35caf4846cb1d0d92aacd8bee6904c8c0e40) -- Add delta to current packet state before emitting event (#105) [`c5887fb`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c5887fb618b21b4c54de0604c1d8f5bdfcd9906e) -- Add dntoeu plot option [`7aa9c54`](https://github.com/NASA-AMMOS/AIT-GUI/commit/7aa9c54ac1118dcd60f3a5b62979fe03961fe675) -- Issue #105 - Store last packet on backend; send only changes to front end [`1f930d4`](https://github.com/NASA-AMMOS/AIT-GUI/commit/1f930d41b6afc8674c33c807e8e894d328c76f8b) -- Update backend endpoint for returning latest packet states (#105) [`96d223d`](https://github.com/NASA-AMMOS/AIT-GUI/commit/96d223d487a527f150ee2d1dd75b4f3d853b1ec8) -- Add tracking of dntoeu states on frontend (#105) [`2bde078`](https://github.com/NASA-AMMOS/AIT-GUI/commit/2bde0783f3cd6f05bd1bc1675ec0561ce44d5fcb) -- Issue #138 - set HTMLRoot.User to Static [`54d8fa9`](https://github.com/NASA-AMMOS/AIT-GUI/commit/54d8fa9a74af41e368f76c495cad606852b6c805) -- Update uttlity method (#105) [`d8c568f`](https://github.com/NASA-AMMOS/AIT-GUI/commit/d8c568f54642f6a9e711ac77808b3bbe60bc7ca6) -- Get latest packet state from backend on frontend initialization (#105) [`7740371`](https://github.com/NASA-AMMOS/AIT-GUI/commit/7740371a9bf1d626a3b807d9e3d06d17033b1cfb) -- Store deltas in queue per session (#105) [`9175608`](https://github.com/NASA-AMMOS/AIT-GUI/commit/9175608c1e261197e7902359c34689640bdf0551) -- Issue #138 - make AITGUIPlugin to call HTMLRoot [`a949935`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a949935d6bff428d90afc9bb614f0fd2204ca2f3) -- Add getPacket utility method [`21c8c91`](https://github.com/NASA-AMMOS/AIT-GUI/commit/21c8c91fab6f0e7165b059bc2a20bd55b91a6658) -- Add packet defn data structure to avoid loop on every call (#105) [`c0e0515`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c0e05159d071d2ad498b011db759c41c542c04f8) -- Add tracking of dntoeus on backend (#105) [`05e4171`](https://github.com/NASA-AMMOS/AIT-GUI/commit/05e41715b404d986bdb4ff331d30365c8d4e70df) -- Update getPacket utility method (#105) [`658ccea`](https://github.com/NASA-AMMOS/AIT-GUI/commit/658cceaadb78033c4b39128730029eef77d637ce) -- Issue #105 - Update highcharts plot function for JSON formatted packet [`9f48361`](https://github.com/NASA-AMMOS/AIT-GUI/commit/9f4836191143d145e61f862b0a6c741cc6efa058) -- Encode datetimes as ISO formatted strings for sending to frontend (#105) [`ab010e2`](https://github.com/NASA-AMMOS/AIT-GUI/commit/ab010e28949c9b63b6cc5b8376716bfd2c0f7121) -- Add max 32 bit int as max packet counter (#105) [`58d6801`](https://github.com/NASA-AMMOS/AIT-GUI/commit/58d6801eaa81537259dedd0f7b8977b1631c0a17) -- Update dict.iteritems to dict.items (#169) [`a437eec`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a437eec55c61ff448a31849751e054a20c59cd40) -- Deep copy packet state for inserting into ait.packets so fields update (#105) [`e277c42`](https://github.com/NASA-AMMOS/AIT-GUI/commit/e277c42fdd6939c2bdb6c7ed0c6f453c3bff37d7) -- Issue #138 - pull static file location from config.yaml [`3e63f04`](https://github.com/NASA-AMMOS/AIT-GUI/commit/3e63f04ff43d87c5ddd53c9a184e67ebcfe61486) -- Remove unecessary changes (debug prints, etc.) (#105) [`1e7be37`](https://github.com/NASA-AMMOS/AIT-GUI/commit/1e7be377e34a80ed6d297aeb7833c6406001d227) -- Use new function for getting pkt defn in openmct endpoint (#105) [`a074583`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a07458364d5270807667d382f701af6fcdfb7254) -- Use getPacket utility method [`610d47a`](https://github.com/NASA-AMMOS/AIT-GUI/commit/610d47ad8e065358bbb737b34dfbcb18aeaf01ac) -- Check if field exists in dntoeu (#105) [`dd52c2a`](https://github.com/NASA-AMMOS/AIT-GUI/commit/dd52c2adbf04ade3ada58101a7bb818f441e7f65) -- Apply getPacket utility method (#105) [`4a5bf0e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/4a5bf0e2ced13d8231afcd2049af44bc718a0b43) -- add log info [`28bc4e6`](https://github.com/NASA-AMMOS/AIT-GUI/commit/28bc4e6662e9adb17e8376cc202881aa62578062) -- Add digitsAfterDecimal option to legend (#105) [`b89e233`](https://github.com/NASA-AMMOS/AIT-GUI/commit/b89e233c9aade6cbb5ade28ca905fa3df0fc1b50) -- Issue #138 - add static directory config setup example [`66dfe59`](https://github.com/NASA-AMMOS/AIT-GUI/commit/66dfe5953e5bb4b19834bcf6388eae82a81b5cd9) -- Issue #138 - change Static to HTMLRoot.Static [`476c62e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/476c62ed281a5e946f8b0e848de5bbe793bbcc24) -- Remove spaces [`c2007a1`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c2007a1eaa1c39d3e9ecbd1102756c307cd87a19) -- Fix bug in adding delta to packet state on frontend (#105) [`3b7ce2d`](https://github.com/NASA-AMMOS/AIT-GUI/commit/3b7ce2dab385904e7afda212b35361281ceb921f) -- Issue #138 - remove pass [`a6a5ab0`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a6a5ab03dcf51b7fdf195b874c3506b19b394233) - -## [2.1.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/2.0.0...2.1.0) - 2020-05-11 - -### Merged - -- Issue #167 - Post release cleanup [`#168`](https://github.com/NASA-AMMOS/AIT-GUI/pull/168) - -### Commits - -- Preparation for 2.1.0 release [`2f4f262`](https://github.com/NASA-AMMOS/AIT-GUI/commit/2f4f262cbdc4501e47ffa4390ef0aa88ec7d72c4) - -## [2.0.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/1.4.0...2.0.0) - 2020-04-28 - -### Merged - -- Issue #164 - Update CmdAPI instantiation to match Core API changes [`#165`](https://github.com/NASA-AMMOS/AIT-GUI/pull/165) -- Issue #162 - Playback plugin update [`#163`](https://github.com/NASA-AMMOS/AIT-GUI/pull/163) -- Update Travis build icon [`#159`](https://github.com/NASA-AMMOS/AIT-GUI/pull/159) -- Issue #156 - Update RTD Python version and fix doc build issues [`#157`](https://github.com/NASA-AMMOS/AIT-GUI/pull/157) -- Issue #128 - Request playback range from backend every minute [`#147`](https://github.com/NASA-AMMOS/AIT-GUI/pull/147) -- Issue #153 - Update core version requirement [`#154`](https://github.com/NASA-AMMOS/AIT-GUI/pull/154) -- Issue #145 - Implement python 3 support [`#146`](https://github.com/NASA-AMMOS/AIT-GUI/pull/146) -- Make end time match expected format (#143) [`#144`](https://github.com/NASA-AMMOS/AIT-GUI/pull/144) -- Issue #142 - Update references to AIT-Core plugins and handlers [`#148`](https://github.com/NASA-AMMOS/AIT-GUI/pull/148) -- Issue #49 - Fix config and server bootup documentation examples [`#137`](https://github.com/NASA-AMMOS/AIT-GUI/pull/137) -- Issue #135 - Default plugins to empty list if missing from config [`#136`](https://github.com/NASA-AMMOS/AIT-GUI/pull/136) -- Issue #133 - Fix typos on port and host parameter sets [`#134`](https://github.com/NASA-AMMOS/AIT-GUI/pull/134) -- Issue #123 - Add 'user guide' to example index file [`#125`](https://github.com/NASA-AMMOS/AIT-GUI/pull/125) -- Issue #129 - Add error handling for playback module datastore connection [`#130`](https://github.com/NASA-AMMOS/AIT-GUI/pull/130) -- Issue #126 - Gracefully fail when database connection can't be made for playback [`#127`](https://github.com/NASA-AMMOS/AIT-GUI/pull/127) -- Issue #110 - Made GUI port optionally configurable [`#120`](https://github.com/NASA-AMMOS/AIT-GUI/pull/120) -- Issue #131 - Add plot-range documentation to Plot component [`#132`](https://github.com/NASA-AMMOS/AIT-GUI/pull/132) -- Issue #109 - Removed call to old config get method [`#124`](https://github.com/NASA-AMMOS/AIT-GUI/pull/124) -- Issue #107 - Add a component to playback historical telemetry data [`#112`](https://github.com/NASA-AMMOS/AIT-GUI/pull/112) -- Issue #75 - Adding GUI plugin to init file [`#104`](https://github.com/NASA-AMMOS/AIT-GUI/pull/104) - -### Commits - -- Issue #107 - Added available time ranges, querying, playback, playback controls, timeline animation [`fbf22ab`](https://github.com/NASA-AMMOS/AIT-GUI/commit/fbf22ab41714f039ccc12511be650500ce58d6c6) -- Issue #107 - Improved time efficiency and added documentation [`6f17a7c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/6f17a7c7d88c50075773a080724fe1d258d6203f) -- Prep for 2.0.0 [`c8bfd0d`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c8bfd0d727482a0dbc6792b8cb25e4c68b4034c6) -- Issue #107 - Implemented data sending with slider, created more accurate timer [`344cfbe`](https://github.com/NASA-AMMOS/AIT-GUI/commit/344cfbe60284b40057e525e71bb49e75a229a5f9) -- Issue #107 - Condensed playback component and moved it to lower navigation bar [`3274cb3`](https://github.com/NASA-AMMOS/AIT-GUI/commit/3274cb35dc8fbc1ebe6e82af3b0545eaf75fc627) -- Issue #107 - Changed playback to use existing socket instead of forcing connections to open and close [`f560e82`](https://github.com/NASA-AMMOS/AIT-GUI/commit/f560e828f51b5402554c0806db7e9b1ffda2b51c) -- Issue #75 - Telemetry processing updates and cleanup [`2524008`](https://github.com/NASA-AMMOS/AIT-GUI/commit/2524008bc9b3e75ab781620ca516babbad998535) -- Issue #107 - Added playback LED indicator, plot clearing, and start/stop of realtime GUI display [`b309aa6`](https://github.com/NASA-AMMOS/AIT-GUI/commit/b309aa6a110611d6ec43a543abf539482d84bf42) -- Issue #107 - Changed timeline animation to slider [`0b25b0a`](https://github.com/NASA-AMMOS/AIT-GUI/commit/0b25b0a04e295c03742a891d85f3e27aba1e0ac9) -- Issue #107 - Changed playback events to start on first click of play instead of query [`2e944b3`](https://github.com/NASA-AMMOS/AIT-GUI/commit/2e944b37b9cbf9a62ee2dae6d8729e50eff5f6d4) -- Update build artifacts to latest [`b42924c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/b42924c76c8ca0795e49ac752a201df80c210938) -- Issue #107 - Added current time display to timeline [`1e0c2b3`](https://github.com/NASA-AMMOS/AIT-GUI/commit/1e0c2b33d2ef1c404d95fdfba4a3cf62f6189de3) -- Issue #107 - More dynamic timeline control buttons and better styling [`d05547f`](https://github.com/NASA-AMMOS/AIT-GUI/commit/d05547f8d661108a4308bbe32df18606bed47f09) -- Issue #126 - Update playback server endpoints with graceful failure [`dcecb64`](https://github.com/NASA-AMMOS/AIT-GUI/commit/dcecb6427d2a140a3c5e260d572c76e337b549c7) -- Issue #75 - Add check for log and telem stream name attributes [`c976e52`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c976e5259fe14f398b8e410e9bd9a15520593a3d) -- Issue #107 - Fixed excessive page updating and switched to more accurate timer [`f6fbdb6`](https://github.com/NASA-AMMOS/AIT-GUI/commit/f6fbdb6bec2e0338c83dcd55038b69a9e450ca88) -- Request range from backend every minute (#128) [`f65eae9`](https://github.com/NASA-AMMOS/AIT-GUI/commit/f65eae9bfebd1183bb0751b08a5325489c3cd6ba) -- Issue #126 - Add warning message to Playback component if disabled [`923cf61`](https://github.com/NASA-AMMOS/AIT-GUI/commit/923cf611013ec5f4b80ba938aeb6c6698036f5bd) -- Issue #110 - Changed AIT gui kwargs to attributes [`d7c57f2`](https://github.com/NASA-AMMOS/AIT-GUI/commit/d7c57f2860e03372e9f351ae6c92b3823f776899) -- Fixed pickle import and print statements [`ca8f1d3`](https://github.com/NASA-AMMOS/AIT-GUI/commit/ca8f1d3ddb2364627935e412633a6b6f2eb3aba2) -- Add error handling for failed connection to database (#129) [`46fbd83`](https://github.com/NASA-AMMOS/AIT-GUI/commit/46fbd83ac7dc8dfd1cf342c49ed55b1870992d3c) -- Issue #110 - Use getadder for GUI init port & host [`0d61967`](https://github.com/NASA-AMMOS/AIT-GUI/commit/0d61967f43f5dae8063f242825873496d44c4cff) -- Update rounding of playback time to nearest second (#143) [`ee776a8`](https://github.com/NASA-AMMOS/AIT-GUI/commit/ee776a8e13652569b6db61e91cd82f6b4e42e8a1) -- Issue #107 - Changed playback query to pack according to tlm dictionary [`dca83b5`](https://github.com/NASA-AMMOS/AIT-GUI/commit/dca83b506fd9c3f4b143529f9c8fbbb1d1dbed3c) -- Always round playback end time up; update start time string split (#143) [`9e3c3a9`](https://github.com/NASA-AMMOS/AIT-GUI/commit/9e3c3a9372d88d364f6be7e672c43ede7f33cefc) -- Issue #110 - Moved gui port kwarg to plugin init [`39d0e4b`](https://github.com/NASA-AMMOS/AIT-GUI/commit/39d0e4bd6b81ff678813ce2ba4e2758ff7b5e9b5) -- Issue #156 - Update Python version in RTD config [`0bd531a`](https://github.com/NASA-AMMOS/AIT-GUI/commit/0bd531ae6a6a579ca86fb3684b30ab851d7eced8) -- Issue #75 - Update docs to reflect removal of ait-gui command [`6a71566`](https://github.com/NASA-AMMOS/AIT-GUI/commit/6a715660b34759d3e93c89e50eebfd48de8a4284) -- change to variable [`9a74122`](https://github.com/NASA-AMMOS/AIT-GUI/commit/9a74122ac0efca472f5b3f4b871804d7aa92ff03) -- Issue #162 - clean up [`61ba037`](https://github.com/NASA-AMMOS/AIT-GUI/commit/61ba037fd634180cfbc73b2040b40b5afbcc0a28) -- Decode command name bytes before running json dumps [`d424c8e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/d424c8e6c61b7bc2036e4959d8eb1b2af38dd1fd) -- Update readthedocs build to pull latest core code for build [`689000c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/689000c849717dacf548a059ccea0ee2dc612374) -- Updated core version requirement for py3 support [`5b117f3`](https://github.com/NASA-AMMOS/AIT-GUI/commit/5b117f34436e8c49b22f9a42523ed0e310fe1243) -- Update reference to DataArchive plugin (#142) [`bff6cd7`](https://github.com/NASA-AMMOS/AIT-GUI/commit/bff6cd7b97c305a8f2efe401e0369aa8d1d6eef4) -- Updated urllib.unquote to urllib.parse.unquote [`c049679`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c049679b031ba665dd563df252a8b7e85b1ebdaa) -- Issue #110 - Fixed typo in host and port [`a96cb98`](https://github.com/NASA-AMMOS/AIT-GUI/commit/a96cb98d7981423673a383bdd7e180145b7d8907) -- Added eval to transform incoming tlm msg from byte string to actual bytes [`ae9d351`](https://github.com/NASA-AMMOS/AIT-GUI/commit/ae9d351ce7dfdcc1c4e7f203ddd2d8b713de3c14) - -## [1.4.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/1.3.0...1.4.0) - 2019-03-12 - -### Merged - -- Issue #102 - Remove fsevents dependency and fix mithril-query version [`#103`](https://github.com/NASA-AMMOS/AIT-GUI/pull/103) -- Issue #92: Update monitoring with notification throttling [`#93`](https://github.com/NASA-AMMOS/AIT-GUI/pull/93) -- Issue #61 - Adding tool tip to fieldname [`#97`](https://github.com/NASA-AMMOS/AIT-GUI/pull/97) -- Issue #88 - Add support for integration with OpenMCT [`#89`](https://github.com/NASA-AMMOS/AIT-GUI/pull/89) - -### Commits - -- Issue #92 - Adding script for testing new notification options [`051593f`](https://github.com/NASA-AMMOS/AIT-GUI/commit/051593fc53e92d0e07bb3a3362b9494d80927eeb) -- Builds for 1.4.0 release [`c39b35e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c39b35e5c1eebbe4f4a761519344711d37f40ab8) -- Update CHANGELOG [`4572213`](https://github.com/NASA-AMMOS/AIT-GUI/commit/45722136557af3f362e120b981b092f607d17a66) -- Issue #92 - Refactoring and adding -default flag to script for testing default notif config options [`80b911e`](https://github.com/NASA-AMMOS/AIT-GUI/commit/80b911ecac311feb321ca4e2f9d770e6ae2baebb) -- Issue #92 - Update limit monitoring with checks for lowering repeat notifications [`9c43ca8`](https://github.com/NASA-AMMOS/AIT-GUI/commit/9c43ca825d5564b0e7f35d9a248af79bad12e191) -- Issue #92: Update monitoring with notitication throttling [`f9066bf`](https://github.com/NASA-AMMOS/AIT-GUI/commit/f9066bf42296bcb04810cdbf31c2f3c5c4793ae2) -- Issue #92 - Changing print statements to log.info [`449ce34`](https://github.com/NASA-AMMOS/AIT-GUI/commit/449ce34b2a551e8b8b1c630e60e9bbb7206b1c06) -- Issue #92 - Small refactoring of enable_monitoring function [`6dc359a`](https://github.com/NASA-AMMOS/AIT-GUI/commit/6dc359adf7cf2ea1bc7099a17b97c8c2a46db6e2) -- Issue #92 - Allow for frequency notification option to not be specified [`b16b90c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/b16b90c3b03d3dc36ceb4bf00cc2dfcd6388baed) -- Preparation for 1.4.0 release [`58e093f`](https://github.com/NASA-AMMOS/AIT-GUI/commit/58e093f0fff15c9a4e72137b17bd31652c20d1d2) -- Issue #61 - Updating solution for backward compatibility [`1037630`](https://github.com/NASA-AMMOS/AIT-GUI/commit/10376304ea1f4e5f06823433c81ad469da72c050) -- Issue #92 - Setting better default notif option values. [`6359e8b`](https://github.com/NASA-AMMOS/AIT-GUI/commit/6359e8bc673a1e9542118f26e4ade645cf8128e2) -- Issue #92 - Update limit monitoring with checks for lowering repeat notifications [`f71570b`](https://github.com/NASA-AMMOS/AIT-GUI/commit/f71570b383171177109891dc7f3c43fc3fe641b1) -- Updates to CHANGELOG [`db7b5db`](https://github.com/NASA-AMMOS/AIT-GUI/commit/db7b5db984883b934aae95961e8e703203633309) -- Issue #92 - Updating comments on expected notifications [`ab1c39c`](https://github.com/NASA-AMMOS/AIT-GUI/commit/ab1c39c7ad0aef93ad5567e5fdfa9d21a90dbd70) - -## [1.3.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/1.2.0...1.3.0) - 2018-11-08 - -### Merged - -- Issue #72 - Adding try/catch for errors in parsing plot config element [`#96`](https://github.com/NASA-AMMOS/AIT-GUI/pull/96) -- Issue #94 - Clock format toggling doesn't rotate through options as expected [`#95`](https://github.com/NASA-AMMOS/AIT-GUI/pull/95) -- Issue #90: EVR handling for limit monitoring [`#91`](https://github.com/NASA-AMMOS/AIT-GUI/pull/91) - -### Commits - -- Preparation for 1.3.0 release [`093cccc`](https://github.com/NASA-AMMOS/AIT-GUI/commit/093cccc78383c30c9e551e6904815f8b792edc9d) -- Issue #90: Enable EVR monitoring in addition to fields [`c1af8f0`](https://github.com/NASA-AMMOS/AIT-GUI/commit/c1af8f00e9746ea1e6e4f93bdc16e32dedf9e5c6) - -## [1.2.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/1.1.0...1.2.0) - 2018-09-11 - -### Merged - -- Issue #85 - Add support for EVR message formatting [`#86`](https://github.com/NASA-AMMOS/AIT-GUI/pull/86) -- Issue #84 - Fix greenlet exception raise bug in telem monitoring code [`#87`](https://github.com/NASA-AMMOS/AIT-GUI/pull/87) -- Issue #82 - Add commands without subsystem to default subsystem group [`#83`](https://github.com/NASA-AMMOS/AIT-GUI/pull/83) - -### Commits - -- Prep for 1.2.0 release [`2a73b49`](https://github.com/NASA-AMMOS/AIT-GUI/commit/2a73b49954beb0671c189fdccb1c1fb8c19658c7) - -## [1.1.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/1.0.0...1.1.0) - 2018-07-16 - -### Merged - -- Issue #79 and #80 - Data archiving and better interrupt handling [`#81`](https://github.com/NASA-AMMOS/AIT-GUI/pull/81) -- Issue #76 - Remove greenlet exception raise bug in limit monitoring [`#77`](https://github.com/NASA-AMMOS/AIT-GUI/pull/77) -- Issue #73 - Component docstring cleanup [`#74`](https://github.com/NASA-AMMOS/AIT-GUI/pull/74) -- Issue #47 - Add GUI widget docs [`#71`](https://github.com/NASA-AMMOS/AIT-GUI/pull/71) -- Issue #68 - Update Sinon package version so npm ci works [`#69`](https://github.com/NASA-AMMOS/AIT-GUI/pull/69) -- Issue #40 - Fix missing CHANGELOG releases [`#41`](https://github.com/NASA-AMMOS/AIT-GUI/pull/41) -- Issue #42 - Remove contributing guide from Sphinx docs [`#44`](https://github.com/NASA-AMMOS/AIT-GUI/pull/44) -- Issue #43 - Update README with default contributing/community info [`#45`](https://github.com/NASA-AMMOS/AIT-GUI/pull/45) - -### Commits - -- Issue #47 - Add UI component documentation to sphinx docs [`6d28cb3`](https://github.com/NASA-AMMOS/AIT-GUI/commit/6d28cb3347bdb2d70d47f8dc0195e29bdfb6477a) -- Preparation for 1.1.0 release [`46d0100`](https://github.com/NASA-AMMOS/AIT-GUI/commit/46d01000cec1b209941569645c2231acb1cb4a2c) -- Issue #78 - Include timestamp in out of limit notification [`fbcb8b6`](https://github.com/NASA-AMMOS/AIT-GUI/commit/fbcb8b6b95016e1eb0b6faf32909475044a3b331) - -## [1.0.0](https://github.com/NASA-AMMOS/AIT-GUI/compare/0.24.0...1.0.0) - 2018-05-08 - -### Merged - -- Issue #25 - Update Plot time label and Search time handling [`#30`](https://github.com/NASA-AMMOS/AIT-GUI/pull/30) -- Issue #26 - Switch BLISS naming to AIT [`#39`](https://github.com/NASA-AMMOS/AIT-GUI/pull/39) -- Issue #37 - Remove doc upgrade script [`#38`](https://github.com/NASA-AMMOS/AIT-GUI/pull/38) -- Issue #16 - Prepare to publish AIT GUI to Pypi [`#36`](https://github.com/NASA-AMMOS/AIT-GUI/pull/36) -- Issue #33 and #34 - Add build badges to README [`#35`](https://github.com/NASA-AMMOS/AIT-GUI/pull/35) -- Issue #31 - Add CODEOWNERS file [`#32`](https://github.com/NASA-AMMOS/AIT-GUI/pull/32) -- Issue #28 - Setup Travis CI build [`#29`](https://github.com/NASA-AMMOS/AIT-GUI/pull/29) - -### Commits - -- Prep for 1.0.0 release [`f9935e1`](https://github.com/NASA-AMMOS/AIT-GUI/commit/f9935e19c8c5596afda54e380f17c1b776e88dbd) diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..211738d9 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,135 @@ + +# Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the overall + community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or advances of + any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email address, + without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community administrators responsible for enforcement at +[@NikJPL (Aniwat.Nik.Sheurpukdi@jpl.nasa.gov)](https://github.com/NikJPL), +[@snnjpl (Shawn.N.Nguyen@jpl.nasa.gov)](https://github.com/snnjpl) or +[@sharimayer — Configuration Manager](https://github.com/sharimayer). +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series of +actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or permanent +ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within the +community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.1, available at +[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]. + +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder][Mozilla CoC]. + +For answers to common questions about this code of conduct, see the FAQ at +[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at +[https://www.contributor-covenant.org/translations][translations]. + +[homepage]: https://www.contributor-covenant.org +[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html +[Mozilla CoC]: https://github.com/mozilla/diversity +[FAQ]: https://www.contributor-covenant.org/faq +[translations]: https://www.contributor-covenant.org/translations diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..0a586e76 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,329 @@ +# Contributing to AIT-GUI + +Thanks for taking the time to consider contributing! We very much appreciate your time and effort. This document outlines the many ways you can contribute to our project, and provides detailed guidance on best practices. We look forward to your help! + +## Prerequisites + +Before you begin contributing to our project, it'll be a good idea to ensure you've satisfied the below pre-requisites. + +### License + +Our project has our licensing terms, including rules governing redistribution, documented in our [LICENSE](LICENSE) file. Please take a look at that file and ensure you understand the terms. This will impact how we, or others, use your contributions. + +### Code of Conduct + +Our Code of Conduct helps facilitate a positive interaction environment for everyone involved with the team, and provides guidance on what to do if you experience problematic behavior. Read more in our [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md), and make sure you agree to its terms. + +### Developer Environment + +For patch contributions, see our [Developer Documentation](https://github.com/NASA-AMMOS/AIT-GUI/wiki) for more details on how to set up your local environment, to best contribute to our project. + +At a minimum however to submit patches (if using Git), you'll want to ensure you have: +1. An account on the Version Control System our project uses (i.e. GitHub). +2. The Version Control System client (i.e. Git) installed on your local machine. +3. The ability to edit, build, and test our project on your local machine. Again, see our [README.md](README.md) or detailed developer guide for more details + +### Communication Channels + +Before contributing changes to our project, it's a great idea to be familiar with our communication channels and to socialize your potential contributions to get feedback early. This will help give you context for your contributions, no matter their form. + +Our communication channels are: +- [Issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) - a regularly monitored area to report issues with our software or propose changes +- [Discussion board](https://github.com/NASA-AMMOS/AIT-GUI/discussions) - a permanently archived place to hold conversations related to our project, and to propose as well as show+tell topics to the contributor team. This resource can be searched for old discussions. + +## Our Development Process + +Our project integrates contributions from many people, and so we'd like to outline a process you can use to visualize how your contributions may be integrated if you provide something. + +```mermaid +flowchart TD + repo_proj[(Our Repository)]-->|Fork|repo_fork[(Your Forked Repository)] + repo_fork-->|Make|patch(Your Changes) + patch-->|Submit|pr(Pull Request) + pr==>|Approved|repo_proj + pr-->|Changes Requested|repo_fork +``` + +### Fork our Repository + +Forking our repository, as opposed to directly committing to a branch is the preferred way to propose changes. + +See [this GitHub guide](https://docs.github.com/en/get-started/quickstart/fork-a-repo) on forking for information specific to GitHub.com + +#### Find or File an Issue + +Make sure people are aware you're working on a patch! Check out our [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) and find an open issue you'd like to work against, or alternatively file a new issue and mention you're working on a patch. + +#### Choose the Right Branch to Fork + +Our project typically has the following branches available, make sure to fork either the default branch or a branch someone else already tagged with a particular issue ticket you're working with. +- `main` — release branch +- `develop` — optional default branch, used primarily for new code development + +### Make your Modifications + +Within your local development environment, this is the stage at which you'll propose your changes, and commit those changes back to version control. See the [README.md](README.md) or development guide for more specifics on what you'll need as prerequisites to setup your local development environment. + +#### Commit Messages + +Commit messages to version control should reference a ticket in their title / summary line: + +``` +Issue #248 - Show an example commit message title +``` + +This makes sure that tickets are updated on GitHub with references to commits that are related to them. + +Commit should always be atomic. Keep solutions isolated whenever possible. Filler commits such as "clean up white space" or "fix typo" should be merged together before making a pull request, and significant sub-feature branches should be [rebased](https://www.youtube.com/results?search_query=git+rebase) to preserve commit history. Please ensure your commit history is clean and meaningful! + +### Submit a Pull Request + +Pull requests are the core way our project will receive your patch contributions. Navigate to your branch on your own fork within the version control system, and submit a pull request or submit the patch text to our project. + +Please make sure to provide a meaningful text description to your pull requests, whenever submitted. Our pull-request template will be auto-generated for you when you create your pull-request. See the template [here](.github/PULL_REQUEST_TEMPLATE.md). + +**Working on your first Pull Request?** See guide: [How to Contribute to an Open Source Project on GitHub](https://kcd.im/pull-request) + +### Reviewing your Pull Request + +Reviewing pull-requests, or any kinds of proposed patch changes, is an art. That being said, we follow the following best practices: +- **Intent** - is the purpose of your pull-request clearly stated? +- **Solution** - is your pull-request doing what you want it to? +- **Correctness** - is your pull-request doing what you want it to *correctly*? +- **Small Patches** - is your patch of a level of complexity and brevity that it can actually be reviewed by a human being? Or is does it involve too much content for one pull request? +- **Coding best practices** - are you following best practices in the coding / contribution language being used? +- **Readability** - is your patch readable, and ultimately maintainable, by others? +- **Reproducibility** - is your patch reproducible by others? +- **Tests** - do you have or have conducted meaningful tests? + +## Ways to Contribute + +### ⚠️ Issue Tickets + +> *Do you like to talk about new features, changes, requests?* + +Issue tickets are a very simple way to get involved in our project. It also helps new contributors get an understanding of the project more comprehensively. This is a great place to get started with the project if you're not sure where to start. + +See our list of issues at: https://github.com/NASA-AMMOS/AIT-GUI/issues + +#### Cleaning up Duplicate Issues + +Often we receive duplicate issues that can confuse project members on *which* issue ticket to hold conversations upon. + +Here's how you can help: +1. Scan the list of *open* issue tickets for duplicate titles, or internal wording +2. If you find duplicates, copy / paste the below message on the conversation thread of the issue ticket *that has less participants* involved + +``` +This is a duplicate issue. Please migrate conversations over to [issue-XYZ](hyperlink to issue) +``` + +#### Good First Issues + +Issue tickets can vary in complexity, and issues labeled with `good first issue` labels are often a great way to get started with the project as a newcomer. + +Take a look at our [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues), and filter by `good first issue` for issues that are low-complexity, and that will help you get familiar with our issue tracking and patch submission process. + +#### Suggesting New Issue Labels + +Labels within our [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) are a great way to quickly sort through tickets. The project may not yet have labels to cover the full variety of issue tickets. Take a look through our list of issues, and if you notice a set of issue tickets that seem similar but are not categorized with an existing label, go ahead submit a request within one of the issues you've looked at with the following text: + +``` +I've noticed several other issues that are of the same category as this issue. Shall we make a new label for these types of issues? +``` + +#### Submitting Bug Issues + +Resolving bugs is a priority for our project. We welcome bug reports. However, please make sure to do the following prior to submitting a bug report: +- **Check for duplicates** - there may be a bug report already describing your issue, so check the [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) first. + +Here's some guidance on submitting a bug issue: +1. Navigate to our [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) and file a new issue +2. Select a bug template (if available) for your issue + 1. Fill out the template fields to the best of your ability, including output snippets or screenshots where applicable +3. Follow the general guidelines below for extra information about your bug + 1. Include a code snippet if you have it showcasing the bug + 2. Provide reproducible steps of how to recreate the bug + 3. If the bug triggers an exception or error message, include the *full message* or *stacktrace* + 4. Provide information about your operating system and the version of our project you're using + +#### Submitting New Feature Issues + +We welcome new feature requests to help grow our project. However, please make sure to do the following prior to submitting a new feature request: +- **Check for duplicates** - there may be a new feature issue already describing your issue, so check the [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) first +- **Consider alternatives** - is your feature really needed? Or is there a feature within our project or with a third-party that may help you achieve what you want? + +Here's some guidance on submitting a new feature issue: +1. Navigate to our [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) and file a new issue +2. Select a new feature template (if available) for your issue + 1. Fill out the template fields to the best of your ability + +#### Submitting Security Vulnerability Issues + +Security vulnerabilities should **not** be filed to the regular issue tracking system. + +Report your security vulnerabilities to (see contact links): [@jl-0](https://github.com/jl-0) or [@sharimayer](https://github.com/sharimayer) + +Please be sure to: +* Indicate the severity of the vulnerability +* Provide any workarounds, if you know them +* Provide return-contact information to follow-up with you if needed + +#### Reviewing Pull Requests + +Reviewing others' contributions is a great way to learn about best practices in both contributions as well as software. + +Take a look at our [pull requests tracking system](https://github.com/NASA-AMMOS/AIT-GUI/pulls), and try the following options for providing a review: +1. Read the code / patch associated with the pull-request, and take note of any coding, bug, or documentation issues if found +2. Try to recreate the pull-request patch on your local machine, and report if it has issues with your system in particular +3. Scan over suggested feedback from other contributors, and provide feedback if necessary + +### 💻 Code + +⚠️ It's **highly** advised that you take a look at our [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) before considering any code contributions. Here's some guidelines: +1. Check if any duplicate issues exist that cover your code contribution idea / task, and add comments to those tickets with your thoughts. +2. If no duplicates exist, create a new issue ticket and get a conversation started before making code changes using our [communication channels](#communication-channels). + +Once you have a solid issue ticket in hand and are ready to work on code, you'll want to: +1. Ensure you have development [prerequisites](#prerequisites) cleared. +2. Have your [development environment](#developer-environment) set up properly. +3. Go through our [development process](#our-development-process), including proposing changes to our project. + +Some guidelines for code-specific contributions: +- **Do your homework** - read-up on necessary documentation, like `README.md`s, developer documentation, and pre-existing code to see the intention and context necessary to make your contribution a success. It's important to _communicate_ what you're working on through our project [communication channels](#communication-channels) and get buy-in from frequent contributors - this will help the project be more receptive to your contributions! +- **Ask questions** - its important to ask questions while you work on your contributions, to check-in with frequent contributors on the style and the set of expectations to make your code contribution work well with pre-existing project code. Use our [communication channels](#communication-channels) +- **Keep positive** - code contributions, by their nature, have direct impacts on the output and functionality of the project. Keep a positive spirit as your code is reviewed, and take it in stride if core contributors take time to review, give you suggestions for your code or respectfully decline your contribution. This is all part of the process for quality open source development. +- **Comments** - include *useful* comments throughout your code that explain the intention of a code block, not a step-by-step analysis. See our [inline code documentation](#inline-code-documentation) section for specifics. + + +### 📖 Documentation + +Documentation is the core way our users and contributors learn about the project. We place a high value on the quality, thoroughness, and readability of our documentation. Writing or editing documentation is an excellent way to contribute to our project without performing active coding. + +⚠️ It's **highly** advised that you take a look at our [issue-tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) before considering any documentation contributions. Here's some guidelines: +1. Check if any duplicate issues exist that cover your documentation contribution idea / task, and add comments to those tickets with your thoughts. +2. If no duplicates exist, create a new issue ticket and get a conversation started before making documentation changes. + +Some guidelines for documentation best practices (summarized from Google's [excellent documentation guide](https://google.github.io/styleguide/docguide/best_practices.html)): +- **Minimum viable docs** - don't do less documentation than your users / developers need, but also don't do more +- **Changed code = changed docs** - if your code has changed, remember to update your documentation +- **Delete old docs** - continually clean your documentation tree, and remove outdated docs regularly + +#### Documentation Organization + +The overall structure of our project documentation is as follows: +- Source-controlled documentation + - [README.md](README.md) - top-level information about how to run, build, and contribute to the project + - [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) - best practices and guidance on how to work well with other people in the project, and suggestions on dealing with interpersonal issues + - [CONTRIBUTING.md](CONTRIBUTING.md) - guidance on contributing to the project + - `*.java`, `*.py`, `*.sh`, etc. - inline documentation available inside code files +- Hosted documentation + - [Wiki Main-page](https://github.com/NASA-AMMOS/AIT-GUI/wiki) +- Discussion Boards + - [Discussions](https://github.com/NASA-AMMOS/AIT-GUI/discussions) + + + +For directions on contributing to our source-controlled documentation: +1. Ensure you have development [prerequisites](#prerequisites) cleared. +2. Have your [development environment](#developer-environment) set up properly. +3. Go through our [development process](#our-development-process), including proposing changes to our project. + + + +#### Writing Style + +To ensure documentation is readable and consistent by newcomers and experts alike, here are some suggestions on writing style for English: +- Use gender neutral pronouns (they/their/them) instead of he/she/his/her +- Avoid qualifiers that minimize the difficulty of a task at hand, e.g. avoid words like “easily”, “simply”, “just”, “merely”, “straightforward”, etc. Readers' expertise may not match your own, and qualifying complexity may deter some readers if the task does not match their level of experience. That being said, if a particular task is difficult or complex, do mention that. + +#### Common Wording + +Below are some commonly used words you'll want to leverage in your documentation contributions: +- **AMMOS** - Advanced Multi-Mission Operations System tool set. AMMOS is also the eponymous organization that sponsors this repository. +- **Docker** - Containerization service used to perform automated build, release and deployment. +- **GitHub** - one word, and capitalization of the 'G' and the 'H' +- **GitHub Actions** - Continuous Integration (CI) services that facilitate build automation + +#### Inline Code Documentation + +For language-specific guidance on code documentation, including style guides, see [Google's list of language style guides](https://google.github.io/styleguide/) for a variety of languages. + +Additionally, take a look at Google's recommendations on [inline code documentation](https://google.github.io/styleguide/docguide/best_practices.html#documentation-is-the-story-of-your-code) for best practices. + +#### Media + +Media, such as images, videos, sound files, etc., are an excellent way to explain documentation to a wider audience more easily. Include media in your contributions as often as possible. + +When including media into our version-control system, it is recommended to use formats such as: +- Diagrams: [Mermaid](https://mermaid-js.github.io/mermaid/#/) format +- Images: JPEG format +- Videos: H264 MPEG format +- Sounds: MP3 format + + +### ❓ Questions + +Answering questions is an excellent way to learn more about our project, as well as get better known in our project community. + +Here are just a few ways you can help answer questions for our project: +- Answer open questions in our [discussion forum](https://github.com/NASA-AMMOS/AIT-GUI/discussions) +- Answer open questions mentioned in our [issue tracking system](https://github.com/NASA-AMMOS/AIT-GUI/issues) + + +When answering questions, keep the following in mind: +- Be polite and friendly. See our [Code of Conduct](CODE_OF_CONDUCT.md) recommendations as you interact with others in the team. +- Repeat the specific question you are answering, followed by your suggestion. +- If suggesting code, repeat the line of code that needs to be altered, followed by your alteration +- Include any post-steps or checks to verify your answer can be reproduced + +### 🎨 Design + +Design files can help to guide new features and new areas of expansion for our project. We welcome these kinds of contributions. + +Here are just a few ways you can help provide design recommendations for our project: +- Create visual mockups or diagrams to increase usability of our project applications. This can apply to user interfaces, documentation structuring, or even code architecture diagrams. +- Conduct user research to understand user needs better. Save your findings within spreadsheets that the project team / contributors can review. +- Create art, such as logos or icons, to support the user experience for the project + +Each of the above can be contributed directly to repository code, and you should use our [development process](#our-development-process) to contribute your additions. + +### 🎟️ Meetups + +A great way to contribute towards our project goals is to socialize and encourage people to meet and learn more about each other. Consider ideas like: +- Propose workshops or meetups regarding some topic within our project +- Help point project contributors and community members to conferences and publications where they may socialize their unique innovations +- Schedule in-person or virtual happy-hours to help create a more social atmosphere within the project community + +For the above ideas, use our [communication channels](#communication-channels) to propose get-togethers. + diff --git a/LICENSE.txt b/LICENSE similarity index 100% rename from LICENSE.txt rename to LICENSE