Dawgie

Latest version: v1.4.4

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

Scan your dependencies

Page 1 of 4

1.4.4

1.4.3

What's Changed
* Issue 226: set to unique fifo by al-niessner in https://github.com/al-niessner/DAWGIE/pull/227
* Update config.yml by al-niessner in https://github.com/al-niessner/DAWGIE/pull/228
* Update Dockerfile.py by al-niessner in https://github.com/al-niessner/DAWGIE/pull/229
* 230: quick fix by al-niessner in https://github.com/al-niessner/DAWGIE/pull/231
* 232: sytle can be blank by al-niessner in https://github.com/al-niessner/DAWGIE/pull/233
* content fix by al-niessner in https://github.com/al-niessner/DAWGIE/pull/234
* 236: fix logging problem by al-niessner in https://github.com/al-niessner/DAWGIE/pull/238
* 235: add wall time by al-niessner in https://github.com/al-niessner/DAWGIE/pull/239
* 237: ignore trace for now by al-niessner in https://github.com/al-niessner/DAWGIE/pull/240
* 241: inter improvements by al-niessner in https://github.com/al-niessner/DAWGIE/pull/242
* 243: add `__repr__` to classes by al-niessner in https://github.com/al-niessner/DAWGIE/pull/244
* Issue 208: move to TLS by al-niessner in https://github.com/al-niessner/DAWGIE/pull/246
* Issue 248: complete exercise by al-niessner in https://github.com/al-niessner/DAWGIE/pull/249


**Full Changelog**: https://github.com/al-niessner/DAWGIE/compare/1.4.2...1.4.3

1.4.2

What's Changed
* Update model.py by gbryden in https://github.com/al-niessner/DAWGIE/pull/217
* Update post2shelve.py by al-niessner in https://github.com/al-niessner/DAWGIE/pull/218
* improve snapshot by al-niessner in https://github.com/al-niessner/DAWGIE/pull/220
* Issue 213: make db.reset() explicit by al-niessner in https://github.com/al-niessner/DAWGIE/pull/222
* 145: Fixes to promotion by al-niessner in https://github.com/al-niessner/DAWGIE/pull/223

New Contributors
* gbryden made their first contribution in https://github.com/al-niessner/DAWGIE/pull/217

**Full Changelog**: https://github.com/al-niessner/DAWGIE/compare/1.4.1...1.4.2

1.4.1

[214: problem with shelve comm link (215)](https://github.com/al-niessner/DAWGIE/commit/6ab77215123cb1434ba33d10678e54e21df09023)
*Author*: al-niessner
*Date*: Tue, 22 Aug 2023 13:18:12 -0700
* cleaned up shelve

Added a unit test for the work that could be done with mock items. Then did some debugging in-situ with a live pipeline and made other fixes that are missed with the mock items.
[issue 199: verify promotion and shelve work in real life (212)](https://github.com/al-niessner/DAWGIE/commit/f5cd6d755d1699efdce98d708cd6d281c8db6058)
*Author*: al-niessner
*Date*: Wed, 2 Aug 2023 21:32:16 -0700
* clean up

Missed a skip unit test that flushed out a couple more fixes to shelve. There is also a hidden function in the db API that needs to be fixed. It is noted on 213
[fixes for it to work (211)](https://github.com/al-niessner/DAWGIE/commit/a8e485bb62858d566e0edaf27b1bcaaba250a867)
*Author*: al-niessner
*Date*: Fri, 28 Jul 2023 17:50:18 -0700

[Issue 206: fix foreman layoff (209)](https://github.com/al-niessner/DAWGIE/commit/b6e57aa63760fa39770a7bf11397cbb2cafc84d4)
*Author*: al-niessner
*Date*: Thu, 27 Jul 2023 18:39:19 -0700
* allow dispatch to que jobs for later

[Issue 206: scheduler/farm/workers not getting things done (207)](https://github.com/al-niessner/DAWGIE/commit/8766ed86f35f712a5acbea5743f666d5a421ecdc)
*Author*: al-niessner
*Date*: Mon, 17 Jul 2023 08:34:58 -0700
* allow chaining of check without network

The CI tests always failed if it could not update github. Changed that to fail on report content so can be chained nicely on the CLI without a network connection to github.com.

* add a snapshot capability

added a snapshot module to the dawgie.pl to build a dictionary that represents that moment in time. It grabs internal state from dawgie.context, dawgie.pl.state (fsm), dawgie.pl.farm, and dawgie.pl.schedule. It is really only helpful for debugging. Tested that items could be JSON serialized and the appear to be. Ready to move to ops for needed testing.

The updates include the implementation of the new endpoint /app/snapshot.
[update comments](https://github.com/al-niessner/DAWGIE/commit/2695dfa2cca595c16e05b186716bf5527cb34220)
*Author*: Al Niessner
*Date*: Wed, 28 Jun 2023 14:20:21 -0700

1.4.0

[Issue 194: updates to scheduler and testing of it (205)](https://github.com/al-niessner/DAWGIE/commit/d6dbabeae5275c22eda87a40703f9577deba2d88)
*Author*: al-niessner
*Date*: Wed, 28 Jun 2023 13:11:38 -0700
* first steps in fix

Improved documentation so the next time this code is looked at or reviewed,
it can go faster. It works out since what it does is no longer in my head and
this documentation represents what I found difficult to decipher.

* make all test runnable independently

Having to wait for all the tests to run was slowing down development. Wrapped it into this branch because this work is required sooner rather than later.

* fixed previous test that caused the problem

Turns out that promotion engine tests set something that caused this test to fail. Implemented a tearDownClass() to undo what it set. Fixed the tests when they all run.

[add default value to help (202)](https://github.com/al-niessner/DAWGIE/commit/ab0c935eb4737da626819ddef0cf4aad172335b8)
*Author*: al-niessner
*Date*: Wed, 3 May 2023 20:51:19 -0700
Co-authored-by: Al Niessner <Al.Niessnerxxx.xxx>
[stronger check for true (201)](https://github.com/al-niessner/DAWGIE/commit/2e53276c50600e4fee8c4132177a656db9f65edb)
*Author*: al-niessner
*Date*: Wed, 3 May 2023 17:29:35 -0700

[add more context to the error message (200)](https://github.com/al-niessner/DAWGIE/commit/0f7eae94137d48f4cc2ccd507bdfc18cbecf6ef0)
*Author*: al-niessner
*Date*: Wed, 3 May 2023 16:12:16 -0700

[Issue 189: redo shelf to shelve (193)](https://github.com/al-niessner/DAWGIE/commit/0041df5950ec5c965b72489acbc54907b44b52b0)
*Author*: al-niessner
*Date*: Wed, 3 May 2023 15:45:29 -0700
* rewriting shelf

Changed a bunch of names (not all) from shelf to shelve while doing the rewrite just to make it match. It makes it much nicer in understanding the mapping of databases.

Cleaned up post2shelve to use the new shelve tables that account for versions.

Still had a bit of shelf laying about that testing found. Cleaned it up and changed some of the test harness to fit the new shelve.

The bulk of the changes came when the unit tests started running. It was here that most of the type changes and the whole concept of the db changes worked itself out.
[renamed redirect to retarget (192)](https://github.com/al-niessner/DAWGIE/commit/3f55e9151547aba03cb00c6288648043ee9ca320)
*Author*: al-niessner
*Date*: Mon, 19 Dec 2022 08:43:59 -0800
* renamed redirect to retarget

Fixed 190 as well since it was in the same location and easy.

Renamed the functions and checked that all connections still work. However, updating the past items still needs to be done.

* retarget implementation for postgres

Did the simplest/hardest all at once. Create duplicate target entries for upstream items by simply walking the prime table. It is a little lazy and it does the latest rid for a task and algorithm. If state vectors and values are well behaved as in defined at algorithm instantiation like they are supposed to be then this shortcut is sufficient.

Leaving shelf for when it is made to really behave like postgres.

* informational updates

Cleaned up error and log message. Changed the look of retarget() names.
[Update __init__.py](https://github.com/al-niessner/DAWGIE/commit/ee6a4e2f3c502d35535d0af95bd72c27978f084f)
*Author*: al-niessner
*Date*: Thu, 13 Oct 2022 14:01:57 -0700

[issue_186: maybe fix timelines (188)](https://github.com/al-niessner/DAWGIE/commit/fe889944d02b3720297425133b069e4e7a7b762f)
*Author*: al-niessner
*Date*: Thu, 13 Oct 2022 13:14:05 -0700
* maybe fix timelines

Could not exactly replicate the error in the log file but found a simple error and repaired it. Given how algorithm and sv PKs work, it is necessary to allow multiples and then work with the latest in the database (largest primary table PK).

* fixed timelines

The notebook page was running with the older psycopg2 which worked. Moved to the correct psycopg (3.1.9) and duplicated the error. Corrected it code using fetchall() as it now returns a list of tuples.
[Issue 185: infinite recursion (187)](https://github.com/al-niessner/DAWGIE/commit/5df9aff2210baa4cf1a943f120254d089c4ee9bc)
*Author*: al-niessner
*Date*: Fri, 7 Oct 2022 14:34:29 -0700
* change to show problem

* fix for infinite recursion

[Issue 183: extend interface (184)](https://github.com/al-niessner/DAWGIE/commit/557b52453e70e7476d0ecb0bf5ec498579f89fbe)
*Author*: al-niessner
*Date*: Fri, 7 Oct 2022 12:37:16 -0700
* add two helper functions to the API

It should be simple to add new targets. It is simple to use an Analyzer to compute all of the desireable targets. It is not easy to have that target added to the database without doing some dawgie gymnastics. Added dawgie.db.add() to remove these gymnastics from the AE.

The idea of sub-targets has come up. In the view of the AE some targets may have sub processing channels that are better shown with sub-target names like A(b) where A is the primary target and b is the sub-target. In this sense, algorihm foo() now works on sub targets A(b) and A(c) independently and in parallel rather than sequentially.

* add two helper functions to the API

It should be simple to add new targets. It is simple to use an Analyzer to compute all of the desireable targets. It is not easy to have that target added to the database without doing some dawgie gymnastics. Added dawgie.db.add() to remove these gymnastics from the AE.

The idea of sub-targets has come up. In the view of the AE some targets may have sub processing channels that are better shown with sub-target names like A(b) where A is the primary target and b is the sub-target. In this sense, algorihm foo() now works on sub targets A(b) and A(c) independently and in parallel rather than sequentially.

* update testing

The change in dawgie.db requires testing to show that any implementation for it works as expected.

* implementation of dawgie.db.add()

Post dawgie.db.post and dawgie.db.shelf required updating. Both have implementations and the postgres has been tested.

[repair dawgie.db.post.trace() (182)](https://github.com/al-niessner/DAWGIE/commit/32e3ce209095337c154b000b3573ba8ff08114be)
*Author*: al-niessner
*Date*: Fri, 19 Aug 2022 16:47:49 -0700
The original code simply found the max for each of the different version values (design, impl, bugfix). The function needs to compute the max in a cascading for such that bugfix.max() is constrained by impl.max() which is then constrained by design.max() so that 1.1.7, 1.9.3 and 2.4.1 returns 2.4.1 and not 2.9.7. The latter is what the prefix code was doing and now the former is correctly returned with these changes.
[handle as info() not error() (180)](https://github.com/al-niessner/DAWGIE/commit/981d5ef72b7c80f7738d25c0df5dd304ee1fae2b)
*Author*: al-niessner
*Date*: Fri, 19 Aug 2022 16:21:23 -0700
Changed the logging from exception() to info() because these are allowed exceptions that allow a success status despite no output being generated. It means there is a data error but nothing that a stack trace helps with at least.

1.3.3

[issue 176: find actual cause (177)](https://github.com/al-niessner/DAWGIE/commit/2486987ace6e7903598a6b330d16e72e17269f59)
*Author*: al-niessner
*Date*: Thu, 18 Aug 2022 15:55:58 -0700
* fix two bugs

.ci/Dockerfile.py needs to use latest pydot that keeps up pyparsing changes

Test/test_10.py fixes a hidden dependency that test 2 ran already and set dawgie.context.fsm.

* cleaned up some testing

Seems with latest ubuntu and dawgie dependencies, some tests needed cleaned up after updating pydot.

Wrote a report for the compliance testing (check 5) too.

* update to latest psycopg

While it appears not to be necessary, updated to latest psycopg because psycopg2 seems to be at the end of it development. It did not fix the underlying problem with test 13 not did upgrading to latest postgres. Still, the changes are in a positive direction so keeping them.

* testing and db interface fixed

Seems there where some hidden problems with the db but not sure what caused the change to make them break suddnely.

Update the testdata.py because one of the string formats whas changed but forgot the f at the front of the string. That fixed all of the strange reductions in keys and such.

Update the post.py because either psycopg and/or psycopg2 both changed and what is returned is different than what it used to be. Anyway, all of test_13 is passing again.

* found the root cause (finally)

Can transition to Archiving from either Updating or Running. If from Updating, then the database is close. If from Running the database is open. Since Archiving needs the database open for the dawgie.tools.trace to run but closed for dawgie.db.archive(), Archiving needed to manage the open state of the database. Upgraded dawgie.db.reopen() to hint at its state when reopen() is called. This allows Archiving to set the database open state appropriately upon completion. This too was tricky because the trigger to exit Archving is called in _archive_done() not in _archive(). Therefore resetting the database open state has to be done in _archive_done() to avoid a race condition.
[Update post2shelve.py (179)](https://github.com/al-niessner/DAWGIE/commit/932ffbaedf8bdd182384a7f8134deb1d7beb3f61)
*Author*: al-niessner
*Date*: Thu, 11 Aug 2022 13:21:32 -0700

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.