Ploneintranet

Latest version: v1.2.72

Safety actively analyzes 629564 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 15 of 15

1.1.0a1

--------------------

* Merge pull request 39 from quaive/avatar-upload [Guido Stevens]
* Merge pull request 36 from quaive/32-search-ui [Guido Stevens]
* Merge pull request 52 from quaive/image-previews-class-fix [Guido Stevens]
* implement Image previews class fix by cornae in commit 0f31a22 [Alexander Pilz]
* Fix issue with autoload [Alessandro Pisa]
* remove leftover from previous implementation [Alessandro Pisa]
* Comment out review_state badge, it has to be replaced with the archived one [Alessandro Pisa]
* Comment out facetes numbers [Alessandro Pisa]
* Fix reset button not showing [Alessandro Pisa]
* Update user profile robot tests for the new design [Cillian de Róiste]
* Do not diplay facets headers if facet category has no items [Alessandro Pisa]
* Removed search options (postponed in 43) [Alessandro Pisa]
* Update the search UI to match prototype [Alessandro Pisa]
* Ignore virtualenv wheels [Alessandro Pisa]
* Merge pull request 42 from quaive/41_tests-transaction-clean [Philip Bauer]
* Missed a rename [Guido A.J. Stevens]
* Move anything that smells like a functional test onto a functional layer. [Guido A.J. Stevens]
* Merge pull request 38 from quaive/37-search-testfixture-cleanup [Philip Bauer]
* fix original typo, also [Guido A.J. Stevens]
* Update the theme [Cillian de Róiste]
* Merge branch 'master' into avatar-upload [Cillian de Róiste]
* Add robot tests for changing the user avatar [Cillian de Róiste]
* test isolation workarounds should not be needed anymore [Guido A.J. Stevens]
* Fold search.py into utilities.py and rename that to solr_search.py. [Guido A.J. Stevens]
* Move nearly all tests to proper functional fixtures [Guido A.J. Stevens]
* Rename search test classes and base module for readability. [Guido A.J. Stevens]
* No need to monkey a class method on self [Guido A.J. Stevens]
* also add the upload to the profile image pen [Cillian de Róiste]
* Absolute imports tell us where we are [Guido A.J. Stevens]
* What's the use of a superclass with only one subclass? [Guido A.J. Stevens]
* remove zcatalog IntegrationTestMixin [Guido A.J. Stevens]
* absolute import communicate where we are [Guido A.J. Stevens]
* remove solr IntegrationTestMixin [Guido A.J. Stevens]
* bump zc.buildout to get basic auth support [Guido A.J. Stevens]
* Provide "nuke from high orbit" Makefile target: all-clean [Guido A.J. Stevens]
* Back to development: 1.1.0a1 [Guido A.J. Stevens]
* store the new avatar directly in the user profile. Do not save it using the changeMemberPortrait() method of the membership tool first. [Claudio Kirchhoff]
* re-add import avatar view. [Claudio Kirchhoff]
* remove unused commit [Claudio Kirchhoff]
* Move and adapt code required to upload avatars from import-avatars view to personal_tools view. Pin version of plone.scale to 1.4.1 (fixes bug which breaks uploading avatars) [Claudio Kirchhoff]
* missing new files [Alexander Pilz]
* initial work to allow uploading avatar image [Alexander Pilz]

1.1.0a0

* Merge remote-tracking branch 'quaive/master' [Guido A.J. Stevens]
* Merge branch 'release-1.0.x' [Guido A.J. Stevens]
* Merge pull request 35 from quaive/34-fix-unindexing-problem [Guido Stevens]
* overwrite default indexer for getObjPositionInParent, so that we can add a try-except block. Reason: during unindexing (in the solr code), fetching the position of an obj that is in the process of being deleted will fail, see 34 [Wolfgang Thomas]
* Merge pull request 31 from quaive/add-csrf-token-to-paste [Guido Stevens]
* Due to the recent change how the bulk actions work, the csrf token was not passed anymore and thus the paste failed. This readds the token [Alexander Pilz]
* Merge pull request 30 from quaive/translation-support [Guido Stevens]
* fix changed order [Alexander Pilz]
* translation fixes [Alexander Pilz]
* Merge pull request 28 from quaive/library-fix-order [Guido Stevens]
* Merge branch 'master' into library-fix-order In the conflicted src/ploneintranet/docconv/client/handlers.py I picked the version from master, since its effect is equivalent to my solution [Wolfgang Thomas]
* Merge pull request 26 from quaive/ikath-docconv [Guido Stevens]
* bump version [Guido A.J. Stevens]
* When the library content is displayed, the order of the items must be kept [Wolfgang Thomas]
* If items get re-arranged inside the library, make sure the object position in parent gets reindexed [Wolfgang Thomas]
* We also need to index getObjPositionInParent in solr [Wolfgang Thomas]
* In the current version of plone.app.content (3.0.20) there's a bug in the code that creates an `ordering` object: the acquisition context gets removed. This means 1) in our event handler content_edited_in_workspace (docconv), the obj does not have a REQUEST object, but only a string 2) other event handlers that act on IContainerModifiedEvent (sent out after content gets rearranged) cannot perform any operations that require acquisition context I have submitted a PR for this bug: https://github.com/plone/plone.app.content/pull/81 Until it gets merged, with a new release of p.a.content, we need this monkey patch. Therefore, I place all patch-related changes into this single commit, so that we can easily revert it later. [Wolfgang Thomas]
* in testing we load the async layer, but in the profile we don't. I think we should [Alexander Pilz]
* run async tests in async mode on gitlab [Guido A.J. Stevens]
* Don't just skip the test [Guido A.J. Stevens]
* Merge pull request 27 from quaive/fix-path-depth [Guido Stevens]
* Revert "move code that uses path_depth into block dealing with path" [Guido A.J. Stevens]
* move code that uses path_depth into block dealing with path [Wolfgang Thomas]
* Fix library view: for computing the current sections and their children, only look one level deep, instead of listing all contents ad infinitum [Wolfgang Thomas]
* Fix computation of path_depth. We DO NOT want to count the length of the path string, we want to count the number of path elements (including the root). Example: /Plone/library has a depth of 3 [Wolfgang Thomas]
* deactivate test until we figure out how to run the tests with ASYNC_ENABLED==True [Alexander Pilz]
* add the async generation code to pi.async [Alexander Pilz]
* Translation statements [Alexander Pilz]
* restrain image size in stream to a scale [Alexander Pilz]
* cleanup package dependencies [Alexander Pilz]
* also copy icons [Alexander Pilz]
* fix test. If we have an image, use the scale image url, not the docconv one [Alexander Pilz]
* Don't convert attachments async just yet, we can't do that properly atm [Alexander Pilz]
* api support for docconv methods [Alexander Pilz]
* Prepare to be able to make docconv asynchronously [Alexander Pilz]
* fix build icon [Alexander Pilz]
* Merge pull request 22 from quaive/gitlab-ci [Alexander Pilz]
* Schedule longest-running partial job first for fastest total-job completion in case of runner contention. [Guido A.J. Stevens]
* Traced Heisenbugs to test leakage via solr. We don't have proper solr teardown now AND mixing solr and non-solr layers breaks. Hence disabling solr robot tests until there's a better solution. [Guido A.J. Stevens]
* re-use buildout cache for gyst [Guido A.J. Stevens]
* streamline gitlab run [Guido A.J. Stevens]
* no celery without scripts [Guido A.J. Stevens]
* no need for HOME with modern docker [Guido A.J. Stevens]
* oops we do need to build solr [Guido A.J. Stevens]
* optimize ci runner [Guido A.J. Stevens]
* Try to work around pat-select and robot flakiness. This ought to be worse not better, go figure. [Guido A.J. Stevens]
* skip coverage [Guido A.J. Stevens]
* run two partial runners in parallel [Guido A.J. Stevens]
* gitlab chokes on bracket notation for test [Guido A.J. Stevens]
* add coverage output to gitlab-ci runs [Guido A.J. Stevens]
* adjust jenkins.cfg to changes in base.cfg [Guido A.J. Stevens]
* enable full proto dev stack in docker [Guido A.J. Stevens]
* async fixed. run full test suite now [Guido A.J. Stevens]
* avoid non-zero exit code on test run [Guido A.J. Stevens]
* plone.async does not exist [Guido A.J. Stevens]
* properly set environment var [Guido A.J. Stevens]
* allow gitlab-ci to start celery test worker as root (does not impact outside of tests, and only applies when tests are run as root) [Guido A.J. Stevens]
* introduce hanging process to enable inspection [Guido A.J. Stevens]
* celery tracing [Guido A.J. Stevens]
* add debugging on celery setup [Guido A.J. Stevens]
* oOo.. [Guido A.J. Stevens]
* UTF-8 fixes, zoom in on async failure [Guido A.J. Stevens]
* add static code analysis [Guido A.J. Stevens]
* ssh agent not needed [Guido A.J. Stevens]
* Enable gitlab-ci integration [Guido A.J. Stevens]
* Make base.cfg and solr.cfg suitable as mixins for client projects [Guido A.J. Stevens]
* re-use quaive/ploneintranet-base image [Guido A.J. Stevens]
* Merge pull request 20 from quaive/solr_error_logging [Alexander Pilz]
* Merge pull request 21 from quaive/fix-diazo-template-for-workspaces [Alexander Pilz]
* Merge pull request 24 from quaive/solr-testfixture-fixes [Alexander Pilz]
* add solr purge also to test setup, in case the previous teardown got borked [Guido A.J. Stevens]
* Merge pull request 23 from quaive/fix-catalog-fix-for-divisions [Guido Stevens]
* have custom indexers to prevent indexing is_division and division on objects within a workspace. Without this, content items would be shown as divisions after the catalog refactoring [Alexander Pilz]
* this change requires an update of the diazo theme [Alexander Pilz]
* Use the empty-workspace template so that the inline styles from proto are properly included [Alexander Pilz]
* Merge pull request 18 from quaive/bulk-actions [Wolfgang Thomas]
* verbose query error logging [Guido A.J. Stevens]
* Bulk Actions: update the JavaScript bundle [Cillian de Róiste]
* Merge pull request 9 from quaive/library_tag_permissions [Wolfgang Thomas]
* Reduce col width from 100 to 79 [Cillian de Róiste]
* Update the bundle [Cillian de Róiste]
* re-ran i18n sync and added 1 translation in DE [Wolfgang Thomas]
* Merge pull request 16 from quaive/feature/13270-hide-external-editor-button-if-not-permitted [Wolfgang Thomas]
* re-enable the commented out override, which the workspace tests rely on [Wolfgang Thomas]
* Merge branch 'master' into feature/13270-hide-external-editor-button-if-not-permitted [Wolfgang Thomas]
* Add missing title attribute and its i18n statement [Wolfgang Thomas]
* Merge pull request 17 from quaive/solr-sync [Wolfgang Thomas]
* Fix robot tests for new bulk actions implementation [Cillian de Róiste]
* Add cut, copy and paste bulk actions [Cillian de Róiste]
* silence maintenance log in tests [Guido A.J. Stevens]
* move solr-maintenance into ./solr and bring under test [Guido A.J. Stevens]
* Fix flake8 errors [Guido A.J. Stevens]
* A port of the wonderful maintenance code of collective.solr, working with scorched [Guido A.J. Stevens]
* Work around weird robot test isolation problem. [Guido A.J. Stevens]
* Merge pull request 12 from quaive/division-support [Wolfgang Thomas]
* Merge pull request 19 from quaive/async_celery_fixture_robust [Wolfgang Thomas]
* Wait until celery is up and running before executing tests [Guido A.J. Stevens]
* Add bulk send functionality [Cillian de Róiste]
* Refactor division test to avoid solr dependency. (And since it does transaction.commit() its a functional testcase) [Guido A.J. Stevens]
* Fix solr-based suite testcontent fixture. Now also the library tag view test works. NB there is no proper solr rollback so use only for readonly tests. [Guido A.J. Stevens]
* remove solr testing fixture from this PR, not needed. Instead they will be merged as part of library fixes 9 [Guido A.J. Stevens]
* Replace unorthodox solr dependency with zcatalog implementation. [Guido A.J. Stevens]
* Add robot coverage on workspace division grouping [Guido A.J. Stevens]
* Use pat-shopping-cart for bulk deletion [Cillian de Róiste]
* no need to set too tight individual timeouts in the robot tests [Wolfgang Thomas]
* remove empty line that I added by accident [Claudio Kirchhoff]
* change i18n domain from ploneintranet.workspace back to ploneintranet [Claudio Kirchhoff]
* Only display the "open in external editor" icon if user has permission to edit [Claudio Kirchhoff]
* Merge pull request 13 from quaive/set-library-contenttypes-as-contains_objects [Alexander Pilz]
* Merge branch 'master' into division-support [Alexander Pilz]
* Merge pull request 14 from quaive/switch-prototype-to-quaive [Alexander Pilz]
* Create registry record ploneintranet.workspace.externaleditor_always_activated, set to "False" by default. Override isActivated...() methods of the externalEditorEnabled view so that they always return "True" if the value of said record is "True" [Claudio Kirchhoff]
* no need for the sphinx egg anymore [Alexander Pilz]
* Comment out unused override [Claudio Kirchhoff]
* Switch the prototype repo to quaive [Cillian de Róiste]
* set library contenttypes as contains_objects for tinyMCE [Claudio Kirchhoff]
* When adding workspaces, a user can assign it to a division. He can select the divisions he is allowed to see. [Alexander Pilz]
* bump to trigger jenkins [Alexander Pilz]
* also add the new fields to zcatalog as tests still rely on that [Alexander Pilz]
* add a space to retrigger building solr config [Alexander Pilz]
* Fix issue with sidebar saving [Alexander Pilz]
* workspace overview grouping support [Alexander Pilz]
* interim commit [Alexander Pilz]
* gitignore .gem [Guido A.J. Stevens]
* add some "wait until element is visible" statements to make robot tests more robust [Wolfgang Thomas]
* When the root of the library is viewed, we have the actual object in our hands, not a search result [Wolfgang Thomas]
* use solr fixture in library robot tests (WIP testcontent incomplete) [Guido A.J. Stevens]
* generalize powersearch and use solr as catalog replacement in library - This fixes a bug where pages raised Unauthorized when their parent was not traversable - Ported all other uses of restrictedTraverse and objectValues to use solr query to prevent future bugs - This now provides a prototype for a generic catalog query replacement using solr [Guido A.J. Stevens]
* Document solr call flow and expose query logging [Guido A.J. Stevens]
* more accuracy in jenkins config output [Wolfgang Thomas]
* set ROBOTSUITE_LOGLEVEL to ERROR, in an attempt to get better readable robot_log [Wolfgang Thomas]
* Update Changelog, mainly to test the jenkins build trigger [Alexander Pilz]
* Merge pull request 11 from quaive/pr-test [Alexander Pilz]
* Merge branch 'master' into pr-test [Alexander Pilz]
* updating Changes. Mainly to test PR request builder [Alexander Pilz]

1.0.0

------------------

* Prepare release 1.0.0 [Guido A.J. Stevens]
* Merge pull request 7 from quaive/Plone5.0.2 [Alexander Pilz]
* build status [Alexander Pilz]
* badge [Alexander Pilz]
* Merge branch 'master' into Plone5.0.2 [Alexander Pilz]
* remove unnecessary extra login [Alexander Pilz]
* add another wait to fix test [Alexander Pilz]
* fixing the select issue also for tags [Alexander Pilz]
* more robustness for robot tests [Wolfgang Thomas]
* forgot to switch this test back to Firefox [Alexander Pilz]
* template fix to make the FF fix also apply to the stream user picker [Alexander Pilz]
* change diazo rule which would copy meta from plone into theme twice [Alexander Pilz]
* Switch back to Firefox. Chrome has issues not terminating in tests [Alexander Pilz]
* include FF fix for 209 that changed member picker behaviour [Alexander Pilz]
* Even more "wait until element is visible" statements to make robot tests more reliable [Wolfgang Thomas]
* attempt to make some robot tests even more robust [Wolfgang Thomas]
* make sure that after clicking the link to open the "Functions" menu, we wait until said menu is actually loaded before we attempt to interact with it [Wolfgang Thomas]
* Revert "Another test that uploads files" [Wolfgang Thomas]
* try to get rid of chromium test failure "path is not canonical" See https://bugs.chromium.org/p/chromedriver/issues/detail?id=261 [Wolfgang Thomas]
* Revert "Firefox for posting files" [Wolfgang Thomas]
* Another test that uploads files [Alexander Pilz]
* Firefox for posting files [Alexander Pilz]
* testfix [Alexander Pilz]
* forgot one to move to chrome [Alexander Pilz]
* move to chrome webdriver [Alexander Pilz]
* Fix robot test speed issue [Guido A.J. Stevens]
* switch to chromedriver [Guido A.J. Stevens]
* Try chromedriver [Alexander Pilz]
* Make robot tests more robust for very quick processors [Wolfgang Thomas]
* Attempt to not log warnings in jenkins [Alexander Pilz]
* Refactor the "tagging" tests to get rid of test isolaton problems [Wolfgang Thomas]
* properly close the item created notification to not hide the changed one [Alexander Pilz]
* list all test failures [Guido A.J. Stevens]
* template fixes [Alexander Pilz]
* new selenium and robot libs [Alexander Pilz]
* dedicated test away from the common 8080 for jenkins [Alexander Pilz]
* Merge pull request 10 from quaive/sidebar-fixes [Guido Stevens]
* no more quaive, long live plone intranet [Alexander Pilz]
* This fixes styling errors in the sidebar where tags breaking in two lines were cut off, the creator wasn't shown if it had no name and the folders weren't represented as in proto [Alexander Pilz]
* remove duplicate [Philip Bauer]
* bump dependencies that seem safe to update [Philip Bauer]
* add plone.versioncheck and update ignores [Philip Bauer]
* update to Plone 5.0.2 [Philip Bauer]
* Merge pull request 8 from quaive/also-regenerate-previews-in-cms [Guido Stevens]
* Also regenerate previews when file object is changed in cms [Alexander Pilz]
* Merge pull request 6 from quaive/c2q_20160212 [Alexander Pilz]
* ignore /lib/ not ./lib/ see https://github.com/ploneintranet/ploneintranet/commit/c2b46d6bb2e77ba824dea2ff53a1fa2316a131e5 [Guido A.J. Stevens]
* Merge branch 'community-master' into c2q_20160212 [Guido A.J. Stevens]
* update docker Makefile [Guido A.J. Stevens]
* Merge pull request 5 from quaive/import-avatars [Alexander Pilz]
* port avatar import utility view from ikath [Guido A.J. Stevens]
* Merge pull request 886 from ploneintranet/maurits-sort-contributors [Wolfgang Thomas]
* Sorted contributors. Keep the Matts together. :-) [Maurits van Rees]
* Nuked trailing white space from CONTRIBUTORS.rst. [Maurits van Rees]
* Merge pull request 4 from quaive/stream-following [Alessandro Pisa]
* add robot coverage on stream filtering [Guido A.J. Stevens]
* show filter menu only on dashboard (not workspace or profile streams) [Guido A.J. Stevens]
* base implementation of stream explore/following switch [Guido A.J. Stevens]
* add .dockerignore speedup and wily host fixes [Guido A.J. Stevens]
* Merge pull request 885 from ploneintranet/fix-workspace-tests-872 [Alexander Pilz]
* Fix workspace tile tests [Matthew Sital-Singh]
* Workspace tests now rely on pi.search [Matthew Sital-Singh]
* Merge pull request 871 from ploneintranet/power-search-library [Alexander Pilz]
* Merge pull request 872 from ploneintranet/solr-for-workspaces [Alexander Pilz]
* Merge pull request 877 from ploneintranet/only-update-specified-fields [Alexander Pilz]
* Merge pull request 882 from ploneintranet/search-partial-updates-workaround [Alexander Pilz]
* Workaround for scorched's lack of support for partial updates. [Matt Russell]
* fix broken test [Claudio Kirchhoff]
* fix broken test in workspace.robot [Claudio Kirchhoff]
* ignore ./lib instead of just lib [Claudio Kirchhoff]
* fix bronken tests [Claudio Kirchhoff]
* dexterity_update: only update fields in request.form [Cillian de Róiste]
* Merge pull request 865 from ploneintranet/853-comment-ordering-fix [Matthew Sital-Singh]
* Update tests as comments are rendered in reverse by default [Matthew Sital-Singh]
* also don't fetch object here [Alexander Pilz]
* Actually reindex every time, we are creating. Otherwise adding a workspace with title only would not get it indexed. [Alexander Pilz]
* don't batch on workspaces overview. We have the search here [Alexander Pilz]
* Change workspace overview to use solr [Alexander Pilz]
* Merge pull request 861 from ploneintranet/power-search [Guido Stevens]
* Sort tag views abc fixes 862. NB users may not see the sort because of the masonry layout. [Guido A.J. Stevens]
* Switch to specific keyword arguments in library search [Matthew Sital-Singh]
* Apply the tags faceting correctly [Matthew Sital-Singh]
* enable power search for library tags view WIP [Guido A.J. Stevens]
* Merge pull request 869 from ploneintranet/search-spelling-truncation-fix [Matthew Sital-Singh]
* Fixes 852. [Matt Russell]
* Consume generator and reverse reults [Ben Cole]
* Remove "reverse" argument from lonkeysortreverse [Ben Cole]
* Add missing OS-level bcrypt predependency [Guido A.J. Stevens]
* Implements request in 629 [Matt Russell]
* Merge pull request 860 from ploneintranet/848-clickable-preview-and-attachment-title [Adam Forsythe-Cheasley]
* Make preview image and attachment title clickable [Ben Cole]
* Merge pull request 813 from ploneintranet/fix-case-creation-date [Matthew Sital-Singh]
* Merge pull request 809 from ploneintranet/fix-mimetype-empty [Matthew Sital-Singh]
* Merge pull request 838 from ploneintranet/590-older-items [Matthew Sital-Singh]
* Merge pull request 821 from ploneintranet/userprofile-fixes [Alexander Pilz]
* Bio and job title are optional [Matthew Sital-Singh]
* Changed msgid [Alessandro Pisa]
* Merge pull request 834 from witekdev/master [Matthew Sital-Singh]
* Update quickstart.rst [witek]
* Map custom user edit page to the pi.theme [Matthew Sital-Singh]
* Merge pull request 830 from ploneintranet/translate-follow-button-titles [Alexander Pilz]
* Merge pull request 822 from ploneintranet/image-picker [Alexander Pilz]
* Merge pull request 826 from ploneintranet/unicode-tag-search [Alexander Pilz]
* Merge pull request 825 from ploneintranet/translate-notifications [Alexander Pilz]
* Fix title test [Alexander Pilz]
* toggle_follow: add translation for button titles [Cillian de Róiste]
* Merge branch 'master' into image-picker [Alexander Pilz]
* Fix another robot path bug due to markup update. [JC Brand]
* Merge pull request 827 from ploneintranet/remove-pat-validate [Alexander Pilz]
* Small CSS tweak to work around webkit bug. [JC Brand]
* Updated JS bundle. Completely removes pat-validate and parsley [JC Brand]
* Fix element path after markup update (due to proto). [JC Brand]
* Robot fix after markup has been changed (due to proto). [JC Brand]
* Updated JS bundle. Contains a parser fix. [JC Brand]
* Search: fix unicode tag filter [Cillian de Róiste]
* Updated bundle. Fixes inject bug. [JC Brand]
* Fix hanging indent. [JC Brand]
* Ran `make diazo` to update the static files. [JC Brand]
* Update markup to look like proto [JC Brand]
* Update markup. [JC Brand]
* Updated JS bundle [JC Brand]
* Add a new view panel-image-picker used by Raptor. [JC Brand]
* Update pat-raptor markup to match proto. [JC Brand]
* Translate notifications for content modification [Cillian de Róiste]
* Explicit test for password storage [Matthew Sital-Singh]
* Move global members group handling to a subscriber [Matthew Sital-Singh]
* Make sure we set passwords via the behaviour [Matthew Sital-Singh]
* Enforce bcrypt passwords (using >=1.1.0 of dexterity.membrane) [Matthew Sital-Singh]
* Merge pull request 817 from ploneintranet/event-add-form [Alexander Pilz]
* add_event.pt: use pat-validation, not pat-validate [Cillian de Róiste]
* event-add-form: update robot keywords [Cillian de Róiste]
* add_event: sync with proto, add i18nattrs, fix title validation [Cillian de Róiste]
* Case bugfix: set the creation_date to now() [Cillian de Róiste]
* make sure we never return an empty mimetype. Guessmimetype doesn't return a default [Alexander Pilz]

1.0b1

------------------

Public beta testing release of *Venus*, our first production release cycle.
49 contributors, ~6800 commits, 835 tests, 87% test coverage.

0.1

----------------

*Mercury* Technology Preview release.
49 contributors, 4581 commits, 520 tests, 89% test coverage.

...

Page 15 of 15

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.