Weird slowness scolling text in the console

When outputting text from PowerShell on a Dell XPS 15, the rendering speed is amazingly slow.
I have not come across this on any other machine.
Attached a short windows performance recording of this.
conhost.exe (1608) and pwsh.exe (19432) are the relevant processes.
STAFFANX15.03-30-2018.11-25-22.zip
Hopefully someone more well versed in this domain can help figure out what is going on.

It's caused by conhost.exe excessively hammering the registry to query the following two values:
HKCU\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell\TabletMode
HKCU\Software\Microsoft\Windows\DWM\ColorPrevalence

Having previously reported this issue through Feedback Hub (to no avail), let me offer my observations from debugging this issue:

It's not specific to Dell's XPS series - I've been able to reproduce on any Windows 10 installation from version 1703 and up
It only occurs when the console application writes output that causes the console to scroll
It only occurs when the console application in question is in foreground/focus
Each reg value mentioned above is queried 6 times, per scroll!!!

An easy way of show the resulting difference in speed is to compare to anything piped to Out-String:
$WindowHeight = $Host.UI.RawUI.WindowSize.Height
Clear-Host
$StopWatch = [Diagnostics.Stopwatch]::StartNew()
&{
    1..($WindowHeight * 2)|ForEach-Object{
        Write-Output "test"
    }
}
$MultiString = $StopWatch.Elapsed
Clear-Host
$StopWatch = [Diagnostics.Stopwatch]::StartNew()
&{
    1..($WindowHeight * 2)|ForEach-Object{
        Write-Output "test"
    }
} | Out-String
$SingleString = $StopWatch.Elapsed

Even though we add overhead from Out-String, and the number of lines that the console host eventually need to write to the screen buffer are exactly the same, you'll find that the $MultiString measurement is significantly larger that $SingleString, presumably because the former caused the console host to scroll $WindowsHeight where as the latter only had to cause a single scroll.

So I've definitely noticed this from time to time on my own laptop, which is an HP something or other - though it's definitely not something I've found to be consistently reproducible.
I also know that conhost isn't the one doing this - at least not directly. From the sounds of it, DWM is getting involved during our paint and slowing us down, but I wouldn't have the faintest cule how to start debugging that.
@bitcrazed anyone on the DWM, or composition, or something team that we can forward this issue to to have them take a look?

It is not obviously DWM.

It is correlated to font size. Almost grinds to a halt with font size set to 36.

Interestingly enough, I updated my Win10 Pro 1709 Friday night, and now (build 10.0.16299.309) conhost.exe is no longer querying the registry keys mentioned above, but DWM queries this value:
HKCU\Software\Microsoft\Windows\DWM\ColorPrevalence

10 times per scroll. Still digging

@bitcrazed Any news?

@powercode - Okay, we have some suspicions as to what's happening here (thanks CD for your help with this 😀)
Could we ask:

What is the size & resolution of your screen?  15.6" @ 3200 x 1800?
What DPI scaling factor are you using?
What is the font face & size of your affected Console(s)?
Does this problem disappear if you decrease your Console font size to ~12pt when running at 200% DPI?

BTW - MANY thanks for capturing traces - they've been ENORMOUSLY helpful!

Resolution 3840x2160.
Scaling 250. Both the recommended setup.
I have tried different fonts but have note stumbled upon any that worked, but have not on the other hand made exhaustive tests.
Wow! Setting the resolution scaling to 200% improves perf  a lot.
Duration         CommandLine
--------         -----------
00:00:15.4034821 ls -recurse   # 250%, 36 pt
00:00:03.1567607 ls -recurse   # 200%, 36 pt
00:00:00.2825821 ls -recurse   # 200%, 12 pt

Ahhhh! Okay … you MAY find things improve if you scale back to ~200% scaling and keep your font < 20pt., though not guarantees.
I found the dev owner yesterday and he was literally working on fix for this issue that surfaced elsewhere but is the same root cause!
Re. XPerf/WPA - I KNOW, RIGHT!! I was talking with aforementioned dev and was recalling how hard it was, back in the dark ages, to diagnose issues like these without the benefit of detailed perf traces!!
Thank goodness for progress ;)

Yes! Thank goodness for progress, and @randomascii, for his incredibly helpful blog posts on analysing the data. Learned so much from him! Huge props!

I'm always glad to hear when my blog posts are useful.

Any update?

Just checked with the engineer who worked on this: The specific issue you're seeing has been mitigated which should result in you no longer seeing it's effect. A more comprehensive fix is on the backlog and will be triaged into a future release.
To test / confirm, you'll need to install a recent RS5 Insider build, or wait until RS5 ships later this year. Once you do get onto RS5, please update this thread with your findings and close this issue if it's resolved.
Many thanks again for filing and your help in diagnosing this issue.

Installed RS5 - Issue still present.
11 seconds to dir a folder with fondsize 36. 1.8 on size 14. Both horribly slow.

STAFFANX15.08-12-2018.21-38-27.etl.7z.zip
Uploaded trace. It's a 7z archive with an added zip extension to allow the upload.

Thanks. Will take a look.

Hey @Powercode - any chance you could share repro steps - we'd like to see, trace, and measure the perf issue you're seeing.

Start powershell.
Set font size to 36.
Run ls.
Still on a computer with high resolution (3840x2160) and scaling on 200%.

Hey @powercode. I've been doing some repro'ing on my SP4 with an external 4K 28" screen:

Font @ 18pt, Console @ 81x25 chars
Font @ 36pt, Console @ 81x25 chars

Command:  dir C:\Windows\System32\ -recurse
Command:  dir C:\Windows\System32\ -recurse

Start:   12:50:21.47
Start:   12:52:04.63

End:     12:50:23.52
End:     12:52:09.44

Elapsed: 00:00:02.05
Elapsed: 00:00:04.81

With the font set at 36pt, there is indeed a marked slow-down, but remember:

Console currently uses GDI to draw text which uses your CPU to render text glyphs
GDI generates and caches glyphs, and then BLITs them onto the screen
The larger the glyph, the fewer can be cached
At 18pt, the client area is 1053x675. At 36pt, the client area is 2025x1350 and the resulting glyphs are 4x bigger ... that's a lot of LARGE bitmaps to BLIT
And since scrolling often results in significant text changes between render loops, the entire client area can end up being "dirtied", resulting in the full Console client area having to be fully re-rendered each time! 2025x1350 x 4bytes each pixel == 10MB per frame x 60 fps == 656MB/s we have to force from your CPU to the GPU's frame buffer every second!.

That's a lot of data by anyone's measure, and it makes one's machine do a lot of work:

Now, can we go faster? HELLS YEAH! 😜
The GDI team recently improved their glyph caching mechanism, with more improvements planned for future releases, but increased the Glyph Cache buffer to mitigate the above factors until those improvements can be made.
Also, Console plans on replacing our GDI renderer to DirectWrite at some point in the future which should eliminate this issue anyhow.
Also we have some other tricks up our sleeves that we hope will noticeably improve text rendering perf, esp. while scrolling. Bear with us ;)
I'll leave this issue open for now, and we'll update it when we have any solid perf improvements to share.

Hi, understood that there is a lot of graphics to push around on 4k.  However, what about the issue mentioned above with querying the registry 10x per scroll?  Might be an easy fix to cache that value:
HKCU\Software\Microsoft\Windows\DWM\ColorPrevalence

People were drawing full screen graphics on 1 MHz Motorola 6502 CPU 3 decades ago without dedicated graphics hardware, this is how far modern programmers have fallen.

If you're talking about the Commodore VIC 20 or Commodore 64, they did have dedicated graphics hardware chips, such as the MOS 6567.  They were also drawing at something like 160x200 resolution, with 4-bit colour, using an 8x8 font with no anti-aliasing, no back-buffering, no virtualization of memory, no consideration for security, no concept of "processes" or "threads", no constant stream of interrupts coming from connected devices, no API layer or "drivers" to abstract away the hardware, with no ability to protect against or recover from crashes....
I mean, it's really not comparable at all.
Also keep in mind that the number of cores your computer has isn't pertinent to how quickly a single thread of operation will run, especially in the case you're presenting here.  Drawing the console isn't multi-threaded. 😊

@warrenrumak
I happen to know which chips were used in computers of that era. Most they could do was simple stuff, scanline tricks, scrolling and hardware sprites. The first real blitter co-processor with programmable minterms which could do arbitrary composition of raster images using DMA that I am aware of in personal computers was in Commodore Amiga.
Commodore 64 to which I was referring had 320x200 pixels screen resolution while the area being redrawn in my example is 162x18 pixels (and I am being generous here by selecting wider area than the actual 8 hex-digit counter):

Commodore's MC 6502 also had interrupts to service (vblank, keyboard, joysticks, floppy, sound, etc) and it somehow managed to offer decent single-task experience.
On the other hand, you are telling me that (mostly idle) i7-6700K running at 4 GHz with 32 GB of (mostly unused) ultra-low latency DDR4 3200 MHz RAM, 3.2 GB/sec NVMe SSD and watercooled NVIDIA 1080 Ti clocked at almost 2 GHz is supposed to struggle with (a single-task of) redrawing of 162x18 pixels because of?
Security? Interrupts? High-level software abstractions? You might have as well mentioned Santa Claus stuck in the chimney.
TL;DR -- There are plenty of choices for hardware acceleration of drawing on a modern PC under supposedly modern OS like Windows 10. There are plenty of performance analyzers (Intel's VTune just to name one) and to me it seems none of those methods and tools were actually used to produce the actual code. Please next time put the blame where it belongs.

Alright gentlemen, enough with the pissing contest :) I think the answer is clear: @bitcrazed explained above that the glyph rendering is being done by GDI/GDI+, an ancient CPU-bound renderer with its roots in the original NT. Yes, there was hardware acceleration added during the win7/2008r2 ERA, but clearly this isn't enough anymore. The technological successors to GDI and GDI+ are Direct2D and DirectWrite (mentioned above), which also arrived with win7/2008r2. Whenever this happens, who knows...

@oising
Are you suggesting that some other, faster and more modern renderer was used in Windows XP, Windows 7, and Windows 8.1?
Because in those OSes everything is still working as intended (i.e. the console application is not being slowed down more than 25 times).
Is Microsoft's official answer to reporting a serious performance regression in a subsystem used every day by developers and admins who are managing and maintaining your user base really "yeah we are aware of it but whether we will fix it and when, who knows"?
That's a rhetorical question, don't bother.

Are you suggesting that some other, faster and more modern renderer was used in Windows XP, Windows 7, and Windows 8.1?
Because in those OSes everything is still working as intended (i.e. the console application is not being slowed down more than 25 times).

These versions of Windows also have numerous bugs and missing features with their console implementation.  Can't go full-screen, can't display the full Unicode character set, can't resize while retaining line-wraps, can't use the full range of VT-100 codes, can't remote the console to another machine..... the list goes on and on.
 If you haven't read it yet, you should: https://blogs.msdn.microsoft.com/commandline/2018/07/20/windows-command-line-inside-the-windows-console/
I understand that it's fun to be snotty on the Internet, Igor... but I think you'll find it's a lot easier to understand an observed performance regression in Windows 10's console when you contextualize it within the vast amount of dev work the team is putting in to modernize this part of Windows.

Believe these problems and complaints are caused by the development strategy chosen for this project.  (Almost) everyone loves the new work you've done, but no one wants to deal with new bugs or performance regressions in a component that is entrenched and hasn't been touched in twenty-ish years (until recently).
With some hindsight it's probably better to revert console back to legacy and start fresh on a DirectX/Unicode first, Posix PTY model, modern replacement.  This is likely possible without throwing out much work.  For example the bridges built to run console apps over ssh, ConPTY, and ANSI parsing should continue to be used, perhaps in a different context.
This strategy should make more folks happy.  End users that won't have to deal with new bugs in the old stuff, as well as developers who won't have to step around eggshells in the new stuff.

With some hindsight it's probably better to revert console back to legacy and start fresh on a modern DirectX/Unicode/Fonts first, Posix PTY model, replacement. This is likely possible without throwing out much work. For example the bridges built to run console apps over ssh, ConPTY, and ANSI parsing should continue to be used, perhaps in a different context.
This strategy should make more folks happy. End users that won't have to deal with new bugs in the old stuff, as well as developers who won't have to step around eggshells in the new stuff. Trying to do both in a single code-base makes things harder for everyone.

If you need the pre-Windows 10 console for compatibility reasons, choose it in Properties.

ANSICON (and colorama etc.) already exist and are free. So why not leave the past in the past?

They have.  Don't struggle with this, Mike.  Again, if your mythical "twenty year old stuff" doesn't work with the new Windows 10 console, by all means, use the old console, link in ANSICON, and keep relying on monkeypatching GetProcAddress (euughhhh).

@warrenrumak, obviously they haven't or this bug wouldn't exist.

The console is a very polarizing Windows component--everybody has an opinion on how we should run the team, where we should make our investments, and what we should put on our roadmap. We can't do everything, but we also can't do nothing and remain technologically relevant in 2018. The v1/legacy console is representative of this polarization. Please bear with us as we try to improve the state of the art for everybody.
As always, thanks for reporting this. We'll definitely be triaging this with the rest of our bug fixes. In the meantime, however, please keep the discourse civil.


feat(AppShell): add runtime parser

The Angular DI is dropped in this implementation for achieving minimal bundle size.
Code example:
var ngShellParser;

const SHELL_PARSER_CACHE_NAME = 'bar';
const APP_SHELL_URL = 'shell.html';
const NO_RENDER_CSS_SELECTOR = '[no-render]';
const ROUTE_DEFINITIONS = [
      '/bar.html',
      '/index.html',
      '/profile/:id'
    ];

self.addEventListener('install', function (event) {
  const parser = System.import('app-shell/index')
        .then(module => {
          ngShellParser = module.shellParserFactory({
            SHELL_PARSER_CACHE_NAME,
            APP_SHELL_URL,
            NO_RENDER_CSS_SELECTOR,
            ROUTE_DEFINITIONS
          });
          return ngShellParser;
        })
        .then(() => ngShellParser.fetchDoc())
        .then(res => ngShellParser.parseDoc(res))
        .then(strippedResponse => {
          return caches.open(SHELL_PARSER_CACHE_NAME)
            .then(cache => {
              return cache.put(APP_SHELL_URL, strippedResponse);
            });
        })
        .catch(e => {
          console.error(e);
        });
  event.waitUntil(parser);
});

self.addEventListener('fetch', function(event) {
  event.respondWith(
    ngShellParser.match(event.request)
      .then(response => {
        if (response) return response;
        return caches.match(event.request)
          .then(function(response) {
            if (response) {
              return response;
            }
            return fetch(event.request);
          })
      })
  );
});

I reviewed it as well as I could, with the limitations of how much information I can keep in my mind at one time. I added a couple of nits. You can go ahead and merge once those comments are taken care of.
Some follow-ups after this PR:

Add e2e tests using the tooling @alxhub is adding in #61
Case-sensitive-capable parser
Add a quick recipe showing how to use this, inside a new folder at the root of the project, mobile-toolkit/cookbook/parse-app-shell-from-universal.md. Eventually, we'll have a cookbook on mobile.angular.io based on recipes in this folder.

Everything is fixed.

I added some updates about the case sensitivity of the parser https://github.com/angular/mobile-toolkit/issues/60.


Merge release branch into master

to: @ryandeivert
cc: @airbnb/streamalert-maintainers
size: large
Background
In preparation for an upcoming backwards-incompatible release (v2.0.0), we experimented with a separate release branch. However, it proved to be time-consuming to manage bug fixes on master and big features on release and our own internal version and syncing the 3 disparate versions.
(It didn't help that I was doing rebase instead of merge, which muddied the commit history.)
Instead, @ryandeivert has created a stable tag which allow users to easily clone the latest stable release and all development going forward will continue on master.
This is NOT the v2 release, we're just merging the branch early.
Changes

Merge release-2.0.0 into master

Re-usable Lambda Terraform module
Consolidated alert processor
Alerts Dynamo table
SNS/SQS output support
Required Athena function
Faster/simpler deploy process

NOTE: This will be squashed into a single commit in the master branch
Testing

release was already up-to-date with master, so there are no merge conflicts
release has been tested with a live test
CI

Coverage decreased (-0.1%) to 95.665% when pulling 3233f42274575f076640be08bde82517a4100e26 on release-2.0.0 into 9c558428e038067fa2d33256f0641083962ce7e6 on master.

🚢


Codeowners file

Please add a Codeowners file to this project with the appropriate trusted reviewers as per the org standard. Thanks!

Resolved by #4


Straightly convert jupyter format python code from/to HTML5

If the jupyter python script can be straight forward export as an HTML5, it's really convenient to show our codes to the others and build the documents. However, current extension have not supported this feature. As the consequence we have to use Pandoc to do so. It makes my workflow not consistent as what I expect.

Just to be clear do you want to:
a) Go from 'ipynb' files to html5?
or
b) Go from 'py' files with cells to html5?

I wish that this extension can go from .py files to html5.

Seconded. This would be a great feature and enable literate programming easily in VS Code.
It's a bit like pweave but that is AFAIK primarily a markdown document with chunks of python, whereas the interactive window cells (#%%) in VS Code are python first. I personally find prefer it this way around.


[$500] Chat - Started & pinned chat via 1st device isn't shown in LHN after getting online with 2nd device

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.24-0
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:
Prerequisites: Login with same account to 2 different devices ( in example mWeb and web)

In the main testing device (mWeb), Navigate to Settings > Preferences
Disable the internet connection in the device
Change the Priority mode in the device from Most recent to Focus
Navigate to LHN
In the second device (Web) start a chat with another account and pin the chat
In the main testing device (mWeb), enable internet connection
Observe Priority now Focus on both devices
Verify if the pinned chat by the second device (Web) exists in LHN of the first device (mWeb)

Expected Result:
Started and pinned chat via first device should be shown in LHN after getting online at least after refreshing the page
Actual Result:
Only Concierge chat is shown in LHN. Started and pinned chat via first device is not shown (even after refreshing the page) in LHN after getting online with second device unless start the chat again
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[x] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/93399543/a9ba7adc-42d1-411c-9b2f-2c820e833c9c
https://github.com/Expensify/App/assets/93399543/a43065d7-8735-4cc5-852a-fedb3e072f69
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01f40cfcafa5fe9ef7
Upwork Job ID:<PHONE_NUMBER>344273408
Last Price Increase: 2024-01-11

This looks like a backend issue
We have GetMissingOnyxMessages API for receiving missed onyx updates, but this API returns data as the below figure

I'm not sure why this type of data is returned. All those data shouldn't be in onyxData?

I understand the bug report, however I'm not sure if it's internal or external in terms of the scope of the problem. If it relates to onyx data, that should be internal and we should return pinned chats the same between devices like web vs mobile (assuming it's the same account logged into either).

@pecanoro do you agree with @s-alves10 in terms of this GH being switched to internal? I could use the opinion of someone more familiar with the backend code here!

It's working fine for me, but I still find it pretty odd we are sending the updates outside onyxData. I am going to check internally in Slack.

@MelvinBot I just commented, relax with the Overdue


Update visual-studio to <IP_ADDRESS>

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Thank you for the contribution. It was merged directly as e8157d0e9bb5a8103e069014a33b205e29c9bbf9. Your contribution is still credited to you.


update interceptor error code

Coverage increased (+10.1%) to 64.185% when pulling 0b958085c76105e1d31a4576bfdc36811e899d06 on wy65701436:update-ins into c68514bfb7665d1ce7cf5c183bd55e307edd7e8c on vmware:master.

Coverage decreased (-22.6%) to 31.456% when pulling 0e9ba6f3512f282678a77044ad35da5d3a98133e on wy65701436:update-ins into c68514bfb7665d1ce7cf5c183bd55e307edd7e8c on vmware:master.

Coverage decreased (-0.006%) to 54.06% when pulling de65793d9673dd9576e03c30b08c10822eecdde4 on wy65701436:update-ins into c68514bfb7665d1ce7cf5c183bd55e307edd7e8c on vmware:master.

Coverage decreased (-0.006%) to 54.06% when pulling 5addfc4574c7b0241a5533cab483808714d7ddd6 on wy65701436:update-ins into c68514bfb7665d1ce7cf5c183bd55e307edd7e8c on vmware:master.


Revert gross thread handling to creation in main with proc_list

actually its kinda useful since networking requires multiple threads


Running GAN example with placeholder for data.train, data.train.label instead of queue runner

@tf.sg_train_func
def alt_train(sess, opt):
    x_batch, x_label_batch = train_generator.next()
    l_disc = sess.run([loss_disc, train_disc], {x: x_batch, x_label: x_label_batch})[0]  # training discriminator
    l_gen = sess.run([loss_gen, train_gen], {x: x_batch, x_label: x_label_batch})[0]  # training generator
    return np.mean(l_disc) + np.mean(l_gen)

This causes some problems in the function: sugartensor.sg_train.sg_train_func(func)
Specifically, because it is required for x_label and x_label_batch to be passed when calling sess.run() calls to sess.run() like this: sugartensor/sg_train.py#L331 fail.
The error thrown: InvalidArgumentError (see above for traceback): You must feed a value for placeholder tensor 'Placeholder' with dtype float          [[Node: Placeholder = Placeholder[dtype=DT_FLOAT, shape=[], _device="/job:localhost/replica:0/task:0/cpu:0"]()]]
My temporary workaround is just to comment out sugartensor/sg_train.py#L331

@mjdietzx  Thanks for your information.  I'll check this and think about placeholder instead of queue runner.


Tests fail after the first run

I got very confused by the tests that were always passing in CI, but failing in my local dev environment.
After trying a variety of ideas, it turns out that the first test run after pruning all docker images and containers passes, but subsequent ones fail with:
self = <app.crud.crud_user.CRUDUser object at 0x7f6dddde08d0>, db_session = <sqlalchemy.orm.scoping.scoped_session object at 0x7f6dddac4f10>

    def update(
        self, db_session: Session, *, db_obj: ModelType, obj_in: UpdateSchemaType
    ) -> ModelType:
        obj_data = jsonable_encoder(db_obj)
>       update_data = obj_in.dict(skip_defaults=True)
E       AttributeError: 'User' object has no attribute 'dict'

app/app/crud/base.py:44: AttributeError

in two tests: test_get_users_normal_user_me and test_create_user_by_normal_user.
To reproduce, simply run the tests twice in a row from a fresh install. The first run will pass, the second one will fail.
To "reset" the tests, docker-compose exec db psql -U postgres and \c app then delete from public.user where id>1; and the tests will pass again.
I suspect this might have to do with some dependency that changed its api at some point, and the change didn't get caught in CI because this code path is not actually tested.

Yeah, that does seem like a problem. 100% line coverage isn't incredibly important, but most code paths should probably be. Here's a coverage report I just ran on my pydantic_basesettings branch:
----------- coverage: platform linux, python 3.7.6-final-0 -----------
Name                                Stmts   Miss  Cover   Missing
-----------------------------------------------------------------
app/api/api_v1/api.py                   7      7     0%   1-9
app/api/api_v1/endpoints/items.py      45     45     0%   1-104
app/api/api_v1/endpoints/login.py      51     51     0%   1-96
app/api/api_v1/endpoints/users.py      66     66     0%   1-156
app/api/api_v1/endpoints/utils.py      17     17     0%   1-33
app/api/utils/db.py                     3      3     0%   1-5
app/api/utils/security.py              31     31     0%   1-45
app/backend_pre_start.py               19     19     0%   1-36
app/celeryworker_pre_start.py          19     19     0%   1-36
app/core/celery_app.py                  3      3     0%   1-5
app/core/config.py                     53      4    92%   26, 36, 47, 68
app/core/jwt.py                        13     13     0%   1-19
app/crud/base.py                       37      7    81%   30, 33-38
app/crud/crud_item.py                  17      1    94%   25
app/crud/crud_user.py                  27      1    96%   34
app/db/base.py                          3      3     0%   3-5
app/db/init_db.py                       9      9     0%   1-24
app/initial_data.py                    13     13     0%   1-21
app/main.py                            16     16     0%   1-29
app/schemas/msg.py                      3      3     0%   1-5
app/schemas/token.py                    6      6     0%   1-10
app/utils.py                           60     60     0%   1-111
app/worker.py                           7      7     0%   1-11
-----------------------------------------------------------------
TOTAL                                 932    428    54%

30 files skipped due to complete coverage.

There's definitely room for improvement, especially with those 0% covered files...

I noticed this yesterday, I thought it was my own fault as I had added some features and was searching for bugs. I happened to run docker-compose down and then up and they all passed again.

Looking a bit further into it, the issue should be fixed by #107 and this change needed in app/tests/utils/user.py:
@@ -36,8 +36,8 @@ def authentication_token_from_email(email):
     if not user:
         user_in = UserCreate(username=email, email=email, password=password)
         user = crud.user.create(db_session=db_session, obj_in=user_in)
     else:
         user_in = UserUpdate(password=password)
-        user = crud.user.update(db_session, obj_in=user, db_obj=user_in)
+        user = crud.user.update(db_session, obj_in=user_in, db_obj=user)

     return user_authentication_headers(get_server_api(), email, password)

Hey there! It seems this was solved in https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/106 ,  right?

Sorry for the long delay! 🙈  I wanted to personally address each issue and they piled up through time, but now I'm checking each one in order.


Commented on strange code block

coordinates_positive = coordinates_positive does not really do anything or does it?

Work in progress indeed, I knew of it but didn't remove yet.


Allow content-type 'application/json'

I'm submitting a ...  (check one with "x")
[ ] bug report => search github for a similar issue or PR before submitting
[x] feature request

Current behavior

EarlGrey supports 'application/x-www-form-urlencoded', but not 'application/json'.
Expected behavior

EarlGrey supports API calls using 'application/json' content type.
Minimal reproduction of the problem with instructions

1.- Create an API controller using EarlGrey.
2.- Set 'application/json' content type in a REST Client (eg. Insomnia, Postman).
3.- Invoke the API.
What is the motivation / use case for changing the behavior?

To be able to invoke EarlGrey APIs using 'application/json' content type.
Please tell us about your environment:

Debian 9,
no IDE,
Apache Maven 3.3.9,
GNU Make 4.1,
gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1).

It's fix, the update will be apa


Broken double value representation under .Net Core

Hello!
We use prometheus client under .Net Core with the default culture where decimal separator is comma (','). And we get broken text representation of metrics (instead of dots, commas are used):
# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds
# TYPE process_cpu_seconds_total counter
process_cpu_seconds_total 4,28125

Such representation can not be parsed by Prometheus Server.
It seems to be issue here:  Prometheus.Client/src/Prometheus.Client/MetricsWriter/MetricsTextWriter.cs, line 264 (method Write(double value)).
I assume that instead of value.TryFormat(buff, out var charsize); it should be value.TryFormat(buff, out var charsize, CultureInfo.InvariantCulture); like in the code branch below: Write(value.ToString(CultureInfo.InvariantCulture));

Thank you for reporting this. We will fix it ASAP and include into next release.

The issue has been fixed and will be included into 3.0.2 release.
@Sergey-Terekhin It would be nice if you help us with testing the development build on MyGit.
Thanks

Checked build on MyGet - seems to be fixed 👍
Thank you!

@Sergey-Terekhin  Thank you for confirming the fix. We will create hot-fix package soon.

@Sergey-Terekhin just want to let you know that package has been created and available on nuget.

Thanks, already updated package in my service :)


Build Error!

Hi,
Has anyone attempted to build this plugin? I'm encountering several errors, and one of the main ones is as follows:
Severity	Code	Description	Project	File	Line	Suppression State	Details
Error	C1083	Cannot open include file: 'aws/core/Aws.h': No such file or directory	serviceintegration	C:\Users\Administrator\Documents\Unreal Projects\serviceintegration\Plugins\aws-sdk-unreal-main\Source\AwsSdkIntegration\Public\AwsIntegrationSubsystem.h
Can anyone help?

@yusufgbagci I had to manually change the $vcpkgDir to C:/vcpkg in aws-sdk-unreal/Extras/Scripts/build-vcpkg.ps1.
I came across a warning in the log output, "aws-sdk-cpp's build system uses very long paths and may fail on your system. We recommend moving vcpkg to a short path such as 'C:\src\vcpkg' or using the subst command".
The path assigned by the script wasn't short enough for me apparently. None of the AWS libraries were actually installing (there were no logs for any aws-sdk-cpp dlls).
I already had vcpkg installed at C:/vcpkg so I just use that as the directory.
Haven't tested in a packaged build yet, but I'm working on a GameInstanceSubsystem for cognito-idp with no issues so far.


767 add gateway

Fixes #767
Fixes #764

Why not group this and api under deploy?
kusk deploy api ...
kusk deploy gateway...

@donnalux This is just a preview how the wizard behaves:

Nothing is set in stone so we can move it as @kylehodgetts and @aabedraba said above

@jasmingacic proud parent here, I have no feedback, it looks and reads great.

This is missing option to remove the gateway. I will have it added soon


Admin Page

This was a series of changes to include and administrator page to hopefully make life easier for us and NOAA deployments.  While doing the implementation I tried to hit some of the NOAA feature requests.

Admin Page only visible to admins under /admin.  Non admins get redirected back to their home directory.  All endpoints added are guarded if necessary.
Added an /api/admin.service.ts file to handle some more of the admin endpoints that were generated
Default Recents page for Admin shows the top 50 most recent datasets uploaded including User and a link to the dataset and user Directory.
The Users page shows the top 50 most recent users on the system and a link to their user directory as well as their email address.
The Jobs page allows for easier viewing/debugging of jobs.  Jobs are no submitted with the user ID and log included so it is easier to see who submitted jobs as well as providing a link to the user directory.   It shows the top 50 jobs based on the filters

Admin jobs by default are filtered to show Inactive/Queued + Running + Errors to make it easier to debug issues
The user ID and a link to their directory is provided.  There are also a link to the datasets as well as an actions section to be able to view the job log, cancel running/queued jobs or delete jobs outright.  These actions are guarded by a prompt to confirm.

Addons now can be controlled through this admin page instead of the REST endpoint like before.  It will automatically download the latest viame/addons.csv file and parse if for the user.
Brand Data can now be set using the administrator tools as well.  I included the ability to change the Training Data login information and completely remove it if necessary.
Fixed the Queued viewing for all users, so it should report the proper number of queued items instead of the incorrect one.

Resolves #1277
Resolves #1274
Resolves #1269
Resolves #1258

I added a fix so that the installed pipelines will now show up in the addons.
Future Additions:

Next Page feature for all lists instead of top 50.

I believe I addressed all of the comments.  I did some other improvements while I was in there modifying some code:

Added the a view button for training jobs, it will bring up a dismissable dialog with the list of datasets for that training job.  I suggesting opening them with middle click in a new tab if possible
Updated the AdminJobs page so it updates properly when new jobs are started instead of waiting.  This was mostly for the addon jobs to be visible properly.
I updated the text I believe where needed.


OpenUTAU won't open up on Mac since its "Damaged"

Acknowledgement

[X] I have read Getting-Started and FAQ

🐛 Describe the bug
Hello, so i tried to download OpenUTAU after i cleaned up storage but this time when i try to open the app it says "OpenUtau"  is damaged and cannot be opened. You should move it to the garbage", i tried with older versions i had on my old drive of OpenUTAU but the same error popped up
(Here's the message but its in spanish-)

I honestly don't know if its an error because of my system version or is the .dmg itself
Thanks.
Explains how to reproduce the bug
1- Copy the app to "Applications" folders
2- Try to launch it
3- Error message pop up
OS & Version
MacOS Big Sur 11.6.8
Logs
(idk where is it on macos sorry T^T)

https://github.com/stakira/OpenUtau/wiki/FAQ#macos-error-this-app-is-damaged-


Arduino nano ble 33 sense not found by openMV

Hi there,
I'm trying to connect my Arduino nano 33 ble sense with openMV, and I'm following the Arduino webpage instructions here:
https://docs.arduino.cc/tutorials/nano-33-ble-sense/getting-started-omv#troubleshoot
I successfully flash the openMV firmware and then the BOSSAC firmware is successfully updated. But then openMV just doesn't recognise that I have the board connected. Here are some screenshots of the messages I am getting.
Installing latest Bossac firmware:

Update complete:

then when I click ok (and I have waited over half an hour for any lights on the board to change as suggested), i get this message:

Which then asks me if my device is bricked, and then follows with this:

Any help is appreciated,
Thanks

Hi, this is an issue folks have encountered when using the wrong bootloader firmware on the BLE device. You need to follow Arduino's instructions to load their custom OpenMV firmware bootloader so our firmware update sticks.


Optionally disable the livebook theme

It was reported in Tucan that some themes do not render properly. After some investigation it seems that the reason is that kino_vega_lite applies a default theme, which may overwrite the Tucan themes settings based on vega-lite precedence settings.
I am not sure if this is possible, but a possible workaround would be to conditionally apply the livebook theme. For example:
KinoVegaLite.configure(apply_default_theme: false)

If this is doable, and you agree with this, I can have a look into it (even though JS is not my thing 😄  )

Hey, I think we can have Kino.VegaLite.configure(theme: nil | :livebook), with :livebook being the default. A PR is welcome!

Sounds good, will send a PR the following days.


Formatting comments and non-latin aliases

Issue Type

[x] Bug
[ ] Enhancement
[ ] Feature Request
[ ] Question
[ ] Other

Prerequisites (For bugfixes)

[x] Are you running the latest version?
[ ] Did you check the logs?
[ ] Did you check the Setup?

Description

I've got two problem with formatting comments and non-latin aliases

After formatting, for each cyrillic simbol in alias, space is added
If comment starts with SQL statements, then '--' is replaced by two minuses

select t.column1 Кириллица_cyrilic_alias
    , t.column2 Latin_alias
from db_table t
where a >= some_date1  -- from
  and a <  some_date2  -- to
  and b >= some_date3  -- and
  and b <  some_date4  -- where, select etc.
  and 1 = 1

Steps to Reproduce (For bugfixes)

Create a .sql file with file content type set as SQL
Put those simple queries into the file
Apply format document command

Expected behavior: [What you expected to happen]
select
    t.column1 Кириллица_cirilic_alias,
    t.column2 Latin_alias
from
    db_table t
where
    a >= some_date1 -- from
    and a < some_date2 -- to
    and b >= some_date3 -- and
    and b < some_date4 -- where, select etc.
    and 1 = 1

Actual behavior: [What actually happened]
select
    t.column1 К и р и л л и ц а _cirilic_alias,
    t.column2 Latin_alias
from
    db_table t
where
    a >= some_date1 - -
from
    and a < some_date2 - - to
    and b >= some_date3 - -
    and
    and b < some_date4 - -
where,
select
    etc.
    and 1 = 1

Versions

Version: v0.15.0 (vscode 1.26.1)
OS: Win10
SGDB: MySQL

This is very annoying.
I'll code it there. Can't wait them anymore.

I've made literally a workaround in the extension.
Let's wait for them now.
Releasing now v0.16.7


MFA Azure support causes multiple browser tabs to open

This is an associated issue for PR #1923 for internal use. Please keep conversation to PR #1923.
Original issue: https://youtrack.jetbrains.com/issue/DBE-13085

Fixed by #1923. (Using this to link the issues to easily get from VSO to the PR.

linking to MSAL issue AzureAD/microsoft-authentication-library-for-java#578

this is a bug in the MSAL library, please see AzureAD/microsoft-authentication-library-for-java#578

driver will be updated to ignore case as Azure ActiveDirectory user names are not case sensitive and MSAL library converts to lower case


Adding instructions for fine tuning llama2

Still waiting for access to llama-2 on HF so couldn't fully reproduce. Otherwise looks great to me.


References to named labels inconsistent

As per section 2.3 of the manual, forest allows to use TikZ' \path commands to draw additional stuff around a tree.
The examples of the manual use the nodes of the tree, either implicit or by their author-given name.
However, when labels are named and later referenced, for me, something inconsistent is happening.
Consider the following MWE where Label adds a label to a node and names it and where \Path references the given node-name explicitly via TikZ' node coordinate system. (If we don't use node cs we get loads of errors that don't help.)
\documentclass[tikz]{standalone} \usepackage{forest}
\forestset{Label/.style={label={[font=\tiny,name=#1]left:#1}}}
\newcommand*\Path[1]{\path (node cs: name={#1});}
\begin{document}
\Forest{[0 [A, Label=LA] \Path{LA} ] }% Reference directly after the labeled child -> works
%\Forest{[0 [B, name=nB, Label=LB]  ] \Path{nB}\Path{LB} } % Reference after the tree -> LB: no, nB: yes
\Forest{
    [0 [E [F, Label=LF] ]
       %% Alt 1:
       [] \Path{LF} % works
       %% Alt 2:
       % \Path{LF} % LF not known
    ]
}
\end{document}

The first tree works because LA is referenced directly after the label's parent's closing ].
The second tree can't find LB although it does recognize nB. The references are done after the last ] (similar how section 2.3 uses raw TikZ commands).
In the third tree the line after Alt 1 works, the line after Alt 2 does not.
Alternative 2 is similar to the second tree where the label is referenced far after its node:
\Forest{
    [0 [E [F, Label=LF] \Path{LF} % directly after F (and inside E)
       ]
       \Path{LF} % LF not known, directly after E
    ]
}

Alternative 1 adds a second child besides E and suddenly LF can be referenced.
\Forest{
    [0 [E [F, Label=LF] \Path{LF} % directly after F (and inside E)
       ]
       [] \Path{LF} % works, empty child behind E
    ]
}

Obviously, I don't want to use an extra empty child but I would like to reference the labels preferably after the whole tree and not somewhere inside.

Sorry for a very late reply.
label works through the tikz option, same as the afterthoughts behind the brackets.  This means that however we swing this, the tikz code of some nodes will be executed before the tikz code of other nodes. By default, the nodes are typeset (and their edges draw, and their tikz code drawn), in tree order, which is parent-first. So in your particular case, setting processing order/.nodewalk style=tree children-first solves the issue. (One could also set draw tree tikz processing order in particular.)
I remember considering the following idea at some point: to consider everything behind the final bracket a "postamble" which gets executed after everything else. At the moment, that stuff is the afterthought of the root node, and respects the processing order(s). (Note that one could still add "regular" tikz code to the root node by an explicit tikz.)
I wonder how many documents this would break ...

I suppose you could use one of the methods which allows referencing non-existing nodes on first compilation and then saves them, but that would mean potentially writing a lot of information just-in-case.


Memory garbage collection

I do stress test below:

PHP Client subsriber a topic
Use MQTT fx ( I use Mac) with script to Publish message continuously (500ms/message)
So PHP Client's memory increases gradually, although I don't do anything in callback.
Is this PHP Client's problem or PHP garbage collection (I use PHP 5.5) ?

Hi,
Any chance I could see the script you're using to test? I don't see the increase in PHP 5.6.10, using this script:
<?php
$c = new Mosquitto\Client();
$c->onConnect(function() use ($c) {
    $c->subscribe('#', 0);
});
$c->onMessage(function() {
    static $i = 0;
    $i++;
    if ($i % 10 == 0) {
        var_dump(memory_get_usage());
    }
});

$c->connect('my.broker');
$c->loopForever();

Hi,
I don't use memory_get_usage function, I checked directly on my VPS server using "top" or "ps aux --sort -rss" command and saw the increasing on memory of process.
Here is my code:
 'xxx.xxx.xxx.xxx',
    'port' => '8888',
    'keep-alive' => 30,
);
$clientSetting = array(
    'id' => 'id',
    'topic' => '/haco/traffic',
    'qos' => 1,
    'user' => 'foo',
    'password' => 'foo',
);
// Create MQTT Client
$client = new Mosquitto\Client($clientSetting['id']);

// Set handler
$client->onConnect('connect');
$client->onDisconnect('disconnect');
$client->onSubscribe('subscribe');
$client->onMessage('message');

//Connect
$client->setCredentials($clientSetting["user"], $clientSetting["password"]);
$client->connect($brokerInfo["ip"], $brokerInfo["port"], $brokerInfo["keep-alive"]);

// Subscribe a topic
$client->subscribe($clientSetting["topic"], $clientSetting['qos']);

// Run
$client->loopForever();

function connect($rc, $message)
{
    // Success
    if ($rc == 0) {
        echo "Connected \n";
    } else {
        echo "Connection Error[code = {$rc}]: {$message} ";
    }

}

function subscribe()
{
    echo "Subscribed to a topic\n";
}

function unsubscribe()
{
    echo "Unsubscribed from a topic\n";
}

function message()
{
    //usleep(1000);
}

function disconnect()
{
    echo "Disconnected cleanly\n";
}

Hello @cid2610
I try to connect broker and send message,
If i send huge package of message, and memory usage more than small package.
Maybe your package increase size by while loop.


C# version 6.0 was released with 2015 not 2013.

>With version 6.0, released with Visual Studio 2013,
AFAI, this was with 2015 not 2013.
https://devblogs.microsoft.com/csharpfaq/new-features-in-c-6/
>C# 6 is the version of C# that ships with VS 2015 Preview.
and even
https://devblogs.microsoft.com/csharpfaq/no-new-c-and-vb-language-features-in-vs-2013/
>No new C# and VB Language Features in VS 2013

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 3d252158-0367-77c8-1816-dbc385c5c40b
Version Independent ID: 575872e5-6273-f8f6-e3e2-2b911cd9d009
Content: The history of C# - C# Guide
Content Source: docs/csharp/whats-new/csharp-version-history.md
Product: dotnet-csharp
GitHub Login: @erikdietrich
Microsoft Alias: wiwagn

Thanks for spotting this @marekr
You are correct. I've added this issue to our backlog, and added the "up for grabs" label. If you'd like to make a PR for this fix, I'll watch for it. Otherwise, I'll fix it later this month.


save_model -> save_pretrained in ppo_trainer.mdx

This fixes the PPO documentation and replaces PPOTrainer.save_model with PPOTrainer.save_pretrained, as save_model does not exist. I ran the document's code to make sure the save function works. This discrepancy was noted in ticket #1443.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Don't add unsaved files to Projectile cache

Describe the feature
When new files are opened within a project, Doom automatically adds an entry in the project file list cache for the file. But the problem with this is when you typo a filename, that also gets added to the project cache, and to remove the entry you must do SPC p i which not only deletes the incorrect entry, but also wipes your MRU list for the project, which is annoying.
A better way to save to project cache would be when the file is saved. It could also be made configurable.
System information

emacs   version    26.3
        features   XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LIBSYSTEMD LCMS2
        build      May 17, 2020
        buildopts  (--build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd --with-pop=yes --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.3/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --without-gconf --with-mailutils --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd --with-pop=yes --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.3/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --without-gconf --with-mailutils --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/emacs-mHAik2/emacs-26.3+1=. -fstack-protector-strong -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro)
        windowsys  x
        daemonp    daemon
doom    version    2.0.9
        build      HEAD -> develop 9edd4f26f 2020-06-11 04:49:31 -0400
        dir        ~/.doom.d/
system  type       gnu/linux
        config     x86_64-pc-linux-gnu
        shell      /bin/bash
        uname      Linux 5.6.0-2-amd64 #1 SMP Debian 5.6.14-1 (2020-05-23) x86_64
        path       ;; omitted
config  envfile    envvar-file
        elc-files  0
        modules    (:completion company ivy :ui doom doom-dashboard doom-quit fill-column hl-todo modeline nav-flash ophints (popup +defaults) pretty-code treemacs unicode vc-gutter vi-tilde-fringe window-select workspaces :editor (evil +everywhere) file-templates fold (format +onsave) snippets word-wrap :emacs dired electric vc :checkers syntax :tools debugger (eval +overlay) lookup (lsp +peek) magit rgb :lang (cc +lsp) common-lisp data emacs-lisp (haskell +dante) (javascript +lsp) latex markdown org (python +lsp) rest rst sh (web +lsp) :config (default +bindings +smartparens))
        packages   ((meson-mode) (po-mode) (json-mode))
        unpin      (n/a)
        elpa       (n/a)

This should be requested upstream in projectile. Doom doesn't have any particular configuration affecting what files it does and doesn't cache.
In the meantime, this can be achieved with
(defadvice! dont-cache-if-file-doesnt-exist-a (&rest _)
  :before-until #'projectile-cache-files-find-file-hook
  (and buffer-file-name (file-exists-p buffer-file-name)))

Thank you for the workaround, I'll open a bug report on Projectile.


Findings list: Display jira key instead of jira bug icon

When wanting to look at a glance or eventually take a screenshot, seeing the jira bug does not help much.
This PR reverts to the old display we used to have.

@valentijnscholten @madchap is it possible to "test" this UI changes? Test the template or something?

@valentijnscholten @madchap is it possible to "test" this UI changes? Test the template or something?

We have selenium in some integration tests. it is possible to check if some HTML element are in the page generated.

We have selenium in some integration tests. it is possible to check if some HTML element are in the page generated.


Add sentence count, passive voice and citations

fix #60 fix #62 fix #65
Adds several more stats. I was testing by installing on the apps-dev server--this link will work to see the new stats: https://apps-dev.suffolklitlab.org/pdfstats/view/011eafd5f4867f668fb51239141443c6ae5f20c453826cd898ce91cd.pdf

Per Jonathan:

The standard uwsgi setup is one process, six threads (cores).
I would recommend loading your module from a module that is pre-loaded, so that the import happens when the web application (re)starts.
However, even if you loaded the module with an imports block in an interview, that might not make a difference, because as far as I can tell by doing experiments, module loading that happens during an HTTP request seems to affect the whole process and not just a single thread within a process.
The uwsgi process loads docassemble.webapp.run, which contains:
from docassemble.webapp.server import app as application
if name == "main":
application.run(host='<IP_ADDRESS>')
During the first line, docassemble add-on modules are imported, because this line runs all the code in docassemble.webapp.server, and that includes the import_necessary() function. So the importing of add-on modules happens before application.run(), which is what actually runs the Flask loop that listens for connections.
How memory gets handled is something I don't fully understand. I have heard that memory is shared until it is modified, after which there is a separate copy. But I don't know if that applies to process forking and not threads.

This is ready to merge (no longer balloons memory usage), although we're going to want to make a lot of changes to the "time to answer" stat


Celery installation instructions don't work

Looks as if there are some changes in celery.  Our old init.d script is gone and the new ones don't work with our configs.

Fixed in 419343d


Add Control Plane API call to write domain name to Caddyfile for automatic TLS

Duplicate of this issue, closing


Support customizing the history manager and historical queryset classes

This allows customizing the history model's Manager and QuerySet classes.
Description

To manipulate the History Manager or the Historical QuerySet, you can specify the history_manager and  historical_queryset options. Tht values must be subclasses of simple_history.manager.HistoryManager and simple_history.manager.HistoricalQuerySet respectively.
Example:
from datetime import timedelta
from django.db import models
from django.utils import timezone
from simple_history.models import HistoricalRecords
from simple_history.manager import HistoryManager, HistoricalQuerySet

class HistoryQuestionManager(HistoryManager):
    def published(self):
        return self.filter(pub_date__lte=timezone.now())

class HistoryQuestionQuerySet(HistoricalQuerySet):
    def question_prefixed(self):
        return self.filter(question__startswith='Question: ')

class Question(models.Model):
    pub_date = models.DateTimeField('date published')
    history = HistoricalRecords(
        history_manager=HistoryQuestionManager,
        historical_queryset=HistoryQuestionQuerySet,
    )

Related Issue
Closes #1280
Probably closes #963
Motivation and Context

I have a multi-tenant application and I have a custom QuerySet class that I wanted to re-use.
How Has This Been Tested?

I've tested this with my application, though not in production yet. I also added tests to the test suite that cover the cases adequately.
Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have run the pre-commit run command to format and lint.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] I have added my name and/or github handle to AUTHORS.rst
[x] I have added my change to CHANGES.rst
[x] All new and existing tests passed.

@tim-schilling Just in case you didn't see my comments above :)

Alright, we can release 3.5.0 in the meantime, then - unless you'd like this included? 🙂

Nope, no qualms on that.


Schemas for all events

Every event type shall have an accompanying schema definition.

All events currently defined now have schemas.


Another file system watching crash within Alpine Linux Docker container

Sadly, one of our builds just crashed with a SIGSEGV in libnative-platform-file-events.so:
Stack: [0x00007f37a68c4000,0x00007f37a69c4af8],  sp=0x00007f37a69c4050,  free space=1024k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libnative-platform-file-events.so+0x45e5a]  std::equal_to<int>::operator()(int const&, int const&) const+0x1a
C  [libnative-platform-file-events.so+0x457df]  std::__detail::_Equal_helper<int, std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > >, std::__detail::_Select1st, std::equal_to<int>, unsigned long, false>::_S_equals(std::equal_to<int> const&, std::__detail::_Select1st const&, int const&, unsigned long, std::__detail::_Hash_node<std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > >, false>*)+0x50
C  [libnative-platform-file-events.so+0x44d60]  std::__detail::_Hashtable_base<int, std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<false, false, true> >::_M_equals(int const&, unsigned long, std::__detail::_Hash_node<std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > >, false>*) const+0x54
C  [libnative-platform-file-events.so+0x43d13]  std::_Hashtable<int, std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > >, std::allocator<std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > > >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::_M_find_before_node(unsigned long, int const&, unsigned long) const+0x65
C  [libnative-platform-file-events.so+0x42b0c]  std::_Hashtable<int, std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > >, std::allocator<std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > > >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::_M_find_node(unsigned long, int const&, unsigned long) const+0x30
C  [libnative-platform-file-events.so+0x41ff1]  std::_Hashtable<int, std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > >, std::allocator<std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > > >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::find(int const&)+0x69
C  [libnative-platform-file-events.so+0x41075]  std::unordered_map<int, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> >, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<int const, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > > > >::find(int const&)+0x23
C  [libnative-platform-file-events.so+0x3ee8b]  Server::handleEvent(JNIEnv_*, inotify_event const*)+0x273
C  [libnative-platform-file-events.so+0x3eafd]  Server::handleEvents()+0x2a7
C  [libnative-platform-file-events.so+0x3e7a6]  Server::processQueues(int)+0x136
C  [libnative-platform-file-events.so+0x3e66a]  Server::runLoop()+0x34
C  [libnative-platform-file-events.so+0x3be9b]  AbstractServer::executeRunLoop(JNIEnv_*)+0x37
C  [libnative-platform-file-events.so+0x3c10c]  Java_net_rubygrapefruit_platform_internal_jni_AbstractFileEventFunctions_00024NativeFileWatcher_executeRunLoop0+0x3f
j  net.rubygrapefruit.platform.internal.jni.AbstractFileEventFunctions$NativeFileWatcher.executeRunLoop0(Ljava/lang/Object;)V+0
j  net.rubygrapefruit.platform.internal.jni.AbstractFileEventFunctions$NativeFileWatcher.access$100(Lnet/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher;Ljava/lang/Object;)V+2
j  net.rubygrapefruit.platform.internal.jni.AbstractFileEventFunctions$NativeFileWatcher$1.run()V+26
v  ~StubRoutines::call_stub
V  [libjvm.so+0x42bfb1]

error.log
Originally posted by @bratkartoffel in https://github.com/gradle/gradle/issues/16787#issuecomment-832051573
Some more details based on the investigation we did for #16787 (maybe not everything is relevant to this issue, too, but likely they are):

the issues happen on Alpine Linux only,
inside a Gradle container,
only happens when watching a directory mounted from the host (so not when watching a directory that's on the "native" container file system),
we've seen it happen with a Windows WSL2 host, RHEL and also macOS 10.14, the common pattern was the use of Alpine in a Docker container.

As opposed to #16787, the crash doesn't happen in unregisterPath() (i.e. via a call from the Gradle daemon thread), but in handleEvent(), i.e. the call originates from the run loop thread consuming kernel events from `inotify.

I've got a plan where I can reproduce this issue in about 1 of 4 executions, so if you got a snapshot for me to test just ping me

@bratkartoffel that's good news. Any chance you can create a public (semi-)reproducer?

FTR, @wolfs had an idea where we might get messages from the kernel after shutdown, causing this problem. This might be an issue with musl libc. It's a long stretch, but at least that would be an explanation that doesn't require quantum tunneling.

If this is the cause of the problems, we'd need to detect if musl is being used, so that we could either disable file system watching completely (=don't load file-events.so at all), or we could ship a variant of the library that is built against musl.
I think the former would be fine, but I found no solution on the interwebs as to how to detect the presence of musl. :/

I don't think you need extra binaries for musl, I mean, it works quite well in 90%+ the cases. It's also just one project (of 30 using the snapshot build) which has this error. Do you think this SEGV has something to do with the more frequent EINTR error messages? As far as I know musl they are incredibly strict when it comes to memory management (e.g. use after free always segfaults) even if it works with glibc in most cases.
You could also join #alpine-devel on freenode IRC and ask there for more help, I think dalias is one of the coders behind musl.
As for a public project to reproduce it: no success yet and I'm sure I may not share our library :(

We terminationLock to prevent a shutdown while an event is being processed. There might be a problem somewhere, but not one I know of.
What I'm thinking of now is that we'll try to detect musl and disable file system watching if we do. Tracking down these problems is incredibly expensive on our side, and the advantage of file system watching in a throw-away container is questionable to start with.

Sure, disabling the filesystem watching when running in a container would be the cheapest option, depending on how it can be detected.
Maybe:
You could check /proc/1/cgroup if it contains the string "docker" or check for existence of /.dockerenv. This could disable the filesystem watching feature but may be overriden and explicitly enabled with a command line option.

FTR, the disabling would happen if musl is present, not when running in a container. My assumption is that we have a problem with that implementation.


Support passing retry array to CallSettings with

Please hold off on review, will update shortly

Codecov Report

Merging #107 into master will increase coverage by 0.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #107      +/-   ##
==========================================
+ Coverage    90.6%   90.62%   +0.01%
==========================================
  Files          32       32
  Lines        2204     2207       +3
==========================================
+ Hits         1997     2000       +3
  Misses        207      207

Impacted Files
Coverage Δ

src/CallSettings.php
86.41% <100%> (+0.52%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 56c9d28...8f8bb34. Read the comment docs.


License?

Can you please define the license? Apache2 similar to the templates?

MIT, will do thanks for the pointer


use the datasources field for the nova dataplane service

recheck

This change has left the documentation irrelevant. It sill mentions creation of a service, while there is no more service created, but a serviceOverride to a "stock osdpdservice" nova instead. Furthermore, it mentions adding tlsCert to the removed services, which cannot be done as documented, and serviceOverride doesn't help with that?


Skip dynamic component generation if the version is available statically

Signed-off-by: ashish<EMAIL_ADDRESS>Description
Currenly dynamic component generation takes place , no matter what. If we already have components for that version statically then we can skip that operation as it is costly(because it executes kubeopenapi-jsonschema binary)
Notes for Reviewers
Since we are making use of the versioning, the directory in which all definitions and schemas reside should be named properly. The name will be the version.
Signed commits

[x] Yes, I signed my commits.

@utkarsh-pro Before you point out that why are we loading in the init function of that package. That package is imported here only for component registration so we are sure that we this package gets imported, comp reg is gonna take place. So I see no harm. Your insights would be valuable

@utkarsh-pro Before you point out that why are we loading in the init function of that package. That package is imported here only for component registration so we are sure that if this package gets imported, comp reg is gonna take place. So I see no harm. Your insights would be valuable. If you see any problem in this approach, I will abort it. Otherwise, will make same change across all adapters. // @leecalcote

@Revolyssup, this looks good. I think we have seen a similar pattern in kubectl auth plugins source code (I may be wrong here), right?


Clarification on the HW RNG (IDFGH-13813)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
Chip: Vanilla ESP32
Docs say

The hardware RNG produces true random numbers under any of the following conditions:
RF subsystem is enabled (i.e., Wi-Fi or Bluetooth are enabled).

and the TRM says

High-speed ADC is enabled automatically when the Wi-Fi or Bluetooth modules is enabled.

"module/subsystem is enabled". When exactly is that? And up until when exactly? (As in, after and until X and Y function calls, etc).
More specifically, I need to know if by the time nimBLE on_sync cb gets called, esp_random is already a TNRG.
Also, from the TRM

when the Wi-Fi module is enabled, the value read from the high-speed ADC can be saturated in some extreme cases

Such as? Answers to these questions are likely worth adding to the docs.

Hi @KaeLL Thanks for the issue.
Technically the call to esp_phy_init is responsible for doing high speed ADC init, when nimBLE is enabled the first thing happens is the radio is enabled which requires the esp_phy_init call. Hence high speed ADC is already enabled.
As you might have seen there are alternative entropy sources as well such as SAR ADC . As bootloader sets up the entropy for the RNG for its own use hence there is already an entropy available for the RNG.
I agree this could be more clear through the docs, will update that.
Thanks,
Aditya


Port secp256k1 v0.3.2

Port libsecp256k1 v0.3.2, which addresses the issue of optimizing the code for ECDH side-channel protection after GCC v13.
https://github.com/bitcoin-core/secp256k1/blob/master/CHANGELOG.md

I think the fix refers to this commit (https://github.com/bitcoin-core/secp256k1/commit/a575339c0282ba49a4f46c9c660a4cc3b6bfc703) But our library does not include commit 7c1b91b which introduced it.


How to know the content-length when fetch-mock does the stringify

When I define a response object containing a body, fetch-mock will do the stringify but it doesn't add a content-length header. I could add the header myself but then I would have to know exactly how fetch-mock is going to do the serializing, otherwise the length may not be the same. Am I missing something here?
I know the serialising is no rocket science but it is the principle of serialising and deciding the length independently that bothers me.
Maybe it is an idea to add another boolean to the response indicating weather or not the content-length header should be included automatically.
Awesome library by the way. Thx.

Agree with all your points. I don't have any free time to work on fetch-mock currently, but would accept a PR that adds a includeContentLength option. It'd be nice to make it a global config option too as my hunch is that if you care about content-length for one test, you probably care about it for many tests

I'm also a bit pressed for time right now but I'll check if this is something I can do.

You have a PR.

You have a PR.

addressed by #223 & #222


Ensured code sample and description match.

Code sample had "myDevice" and instructions had "myFirstDevice". Updated code sample to match instructions.

@sjwaight : Thanks for your contribution! The author(s) have been notified to review your proposed change.

You can only sign off in the main PR conversation, not in review comments. In general, the creator of the PR should sign off, not the tech reviewer.

#sign-off


Create expenses 1.11

Associated container image already built in quay.io/redhattraining/quarkus-expense:1.11

We opted by using this branch to release DO378-1.11, hence the merge is not needed. Closing.

DO NOT DELETE THE BRANCH


/usr/bin/python3: No module named Bard

After Installation successfully ....

python3 -m Bard -h
/usr/bin/python3: No module named Bard

python3 -m pip install Bard

pip might be using a different version or not installing properly?

@.*** ip2location]$ python3 -m pip install Bard
Collecting Bard
Downloading
https://files.pythonhosted.org/packages/8e/b5/017c08006778a5ba3de9a338401ea26422e90047b865def503bc6c89bee0/bard-0.1-py3-none-any.whl
Installing collected packages: Bard
Exception:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/pip/basecommand.py", line 215, in
main
status = self.run(options, args)
File "/usr/lib/python3.6/site-packages/pip/commands/install.py", line
365, in run
strip_file_prefix=options.strip_file_prefix,
File "/usr/lib/python3.6/site-packages/pip/req/req_set.py", line 789, in
install
**kwargs
File "/usr/lib/python3.6/site-packages/pip/req/req_install.py", line 854,
in install
strip_file_prefix=strip_file_prefix
File "/usr/lib/python3.6/site-packages/pip/req/req_install.py", line
1069, in move_wheel_files
strip_file_prefix=strip_file_prefix,
File "/usr/lib/python3.6/site-packages/pip/wheel.py", line 345, in
move_wheel_files
clobber(source, lib_dir, True)
File "/usr/lib/python3.6/site-packages/pip/wheel.py", line 287, in clobber
ensure_dir(dest)  # common for the 'include' path
File "/usr/lib/python3.6/site-packages/pip/utils/init.py", line 83,
in ensure_dir
os.makedirs(path)
File "/usr/lib64/python3.6/os.py", line 210, in makedirs
makedirs(head, mode, exist_ok)
File "/usr/lib64/python3.6/os.py", line 220, in makedirs
mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/usr/local/lib64/python3.6'
On Mon, May 15, 2023 at 2:36 PM Antonio Cheong @.***>
wrote:

pip might be using a different version or not installing properly?
—
Reply to this email directly, view it on GitHub
https://github.com/acheong08/Bard/issues/26#issuecomment-1547690918, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABDLT2Z6NSYJPSPRUMXGNR3XGIINTANCNFSM6AAAAAAYBXW3UQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

A few key issues:

Python 3.6 is not supported
Your Python library directory is in /usr/local which can only be accessed by root

[MAX]root:[/root]python3 -m pip install Bard
WARNING: Running pip install with root privileges is generally not a good idea. Try `__main__.py install --user` instead.
Collecting Bard
  Downloading https://files.pythonhosted.org/packages/8e/b5/017c08006778a5ba3de9a338401ea26422e90047b865def503bc6c89bee0/bard-0.1-py3-none-any.whl
Installing collected packages: Bard
Successfully installed Bard-0.1
[MAX]root:[/root]python3 -m Bard -h
/usr/bin/python3: No module named Bard
[MAX]root:[/root]

python3 -m pip install GoogleBard

Now :

[MAX]root:[/root]python3 -m Bard -h

        Bard - A command-line interface to Google's Bard (https://bard.google.com/)
        Repo: github.com/acheong08/Bard

        Enter `alt+enter` or `esc+enter` to send a message.

usage: Bard.py [-h] --session SESSION

optional arguments:
  -h, --help         show this help message and exit
  --session SESSION  __Secure-1PSID cookie.

Yup. This is correct. Get your session cookie from https://bard.google.com/


BUG api.securityscorecards.dev returning wrong documentation link for CII best practices

Describe the bug
https://api.securityscorecards.dev/projects/github.com/pyhoneybot/honeybot returns among others
{
      "details": null,
      "score": 0,
      "reason": "no badge detected",
      "name": "CII-Best-Practices",
      "documentation": {
        "url": "https://github.com/ossf/scorecard/blob/3155d134e59d8f47261b1ae9d143034c69572227/docs/checks.md#cii-best-practices",
        "short": "Determines if the project has a CII Best Practices Badge."
      }
    },

But, https://github.com/ossf/scorecard/blob/3155d134e59d8f47261b1ae9d143034c69572227/docs/checks.md#cii-best-practices does not return anything
Json output: honeybot.txt

Interesting find. For some reason the commitSHA points to a commit in scorecard-action repo - https://github.com/ossf/scorecard-action/commit/3155d134e59d8f47261b1ae9d143034c69572227. Need to investigate more. Thanks for the report.

Np i am a bit lazy to dive in myself

Looks like a problem with how scorecard-action propagates runtime environment to scorecard. I can take a look further

Not sure when this was fixed, but no longer occurring as of December 2022 ish.
https://api.securityscorecards.dev/projects/github.com/ossf/scorecard?commit=9e6870cc4cc40ef542651d0775c0888163f05e17


PowerToys Run - DPI improvement on 4K monitors

Description of the new feature / enhancement
Hello to all the wonderful devs who built this great tool.
PowerToys Run on my 4K monitor seems to be lacking resolution / DPI compared to anything else.

In this image, you can see how clear the text behind and how blurry it is in the PowerToy Run box.
This happens to be only on my 4K monitor, anything under it, 1080p and 1440p looks good.
Scenario when this would be used?
Increase resolution would benefit all devices that had a 4K display.
Supporting information
No response

can you validate with a modern build?  I believe this was fixed with https://github.com/microsoft/PowerToys/pull/32882  /needinfo

The issue is fixed in 0.85.1. Thank you!


heterocyst differentiation (change parent, correct definition)

This has been gived the standard differentiation definition which is incorrect
The process in which a relatively unspecialized cell acquires specialized features of a heterocyst, a differentiated cell in certain cyanobacteria whose purpose is to fix nitrogen.
actions
change parent
GO:0030154   cell differentiation
to
GO:0048869   cellular developmental process
Revise def to  ?
Remove biosynthesis synonym

Update def to : The cellular developmental process by which a cell becomes a heterocyst, a cell that carries out nitrogen fixation. This process involves changes to the cell wall, expression of nitrogenase and other proteins involved in nitrogen fixation, and degradation of photosystem II, which produces oxygen. This process is known to occur in some cyanobacteria.
Thanks, Pascale


[Don't merge] Improve Batch documentation

Improved application package references documentation.
Improved max tasks per node documentation.
Improved spread vs pack documentation.
Improved documentation about task idempotency.

Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[ ] The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

[x] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
adding/removing APIs.
adding/removing properties.
adding/removing API-version.
adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

[x] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Please follow the link to find more details on API review process.

@bgklein, @darylmsft, @jafreck please feel free to review this updated text
Please hold off merging until I give the go-ahead after the text has been reviewed

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-js

Automation for azure-sdk-for-python

Can one of the admins verify this patch?

Automation for azure-sdk-for-go

Automation for azure-sdk-for-java

Some of the checks seem to be failing due to: Failed to load error: libunwind.so.8: cannot open shared object file: No such file or directory

@sarangan12 Feel free to merge this now, as one of my coworkers has approved.
I see quite a few CI steps failing but as far as I can tell they are all due to CI failures (see my comment about libunwind.so.8 above) and not my changes...


[feature] update to 1.17

Or I can port it with permission. would it be a simple Minecraft version = 1.17 or would some coding need to be involved

It's MIT you should be fine, but the java change likely warrant coding


Refactored TestDatabases to no longer depend on backend-common

This will help with circular dependencies.
I thought I'd leave the @backstage/backend-common changeset in there since it's technically changed (due to deprecation) but via cross repo imports.

Merging this to get rid of some troubling circularities, if something seems out of place we can revisit


Support other events?

Hey, awesome project! Fits my use case exactly with one exception - I'd like to display the menu on a mouseover event. I noticed the comment in the README about only supporting a few openMenuEvents. Is there anything preventing support for the other events that Cytoscape supports, or have they simply not been implemented yet? Thanks.

actually, passing 'mouseover' to openMenuEvents does work (maybe not by design?). my apologies, i should have tried this first, but you may want to update the documentation.


Question: Status Update on cleanup Error

When the deletion of a primary resource fails, how do I update the resource's status to show the error message?
One example of a failed deletion would be an offline external system which the operator needs to reach in order to safely delete the primary resource.
ErrorStatusHandler::updateErrorStatus seems to only be called when the reconcile method fails, not when the cleanup methods fails.

Hmm now I'm thinking, do you use dependent resources?

Can we really update a resource that's marked for deletion? Wouldn't that cause additional events to be triggered and cause new reconciliations?

Hmm now I'm thinking, do you use dependent resources?

I am thinking about refactoring, but no not yet.

So yes the update does cause a new reconcilation, but for my case this should not be a problem - I will close the issue.
Thank you very much!


PutRangeFromUrl support in file service.

Fixes https://github.com/Azure/azure-sdk-for-cpp/issues/1185
Pull Request Checklist
Please leverage this checklist as a reminder to address commonly occurring feedback when submitting a pull request to make sure your PR can be reviewed quickly:
See the detailed list in the contributing guide.

[x] C++ Guidelines
[x] Doxygen docs
[x] Unit tests
[x] No unwanted commits/changes
[x] Descriptive title/description

[x] PR is single purpose
[x] Related issue listed

[x] Comments in source
[x] No typos
[x] Update changelog
[x] Not work-in-progress
[x] External references or docs updated
[x] Self review of PR done
[x] Any breaking changes?

/azp run cpp - storage

/azp run cpp - storage


Rollershutter

Is your feature request related to a problem? Please describe.
So far some devices already work great. Including more device profiles such as Roller shutters Would be great
Describe the solution you'd like
Inclusion of new devices or
Describe alternatives you've considered
A description how others could help/ assist in doing so. „How to add device profiles“ so that other users could test and create pull requests

Closing, because the feature is already addressed in #2

A description how others could help/ assist in doing so. „How to add device profiles“ so that other users could test and create pull requests

Currently certain devices require the implementation of new components (e.g. cover, sensor, etc.). This is related to the (Home Assistant architecture)[https://developers.home-assistant.io/docs/architecture_components] and is sadly not as simple as adding new profiles to a list.


Update composer.json

  Problem 1
    - Installation request for mongodb/mongodb 1.1.2 -> satisfiable by mongodb/mongodb[1.1.2].
    - mongodb/mongodb 1.1.2 requires ext-mongodb ^1.2.0 -> the requested PHP extension mongodb has the wrong version (1.1.5) installed.
  Problem 2
    - mongodb/mongodb 1.1.2 requires ext-mongodb ^1.2.0 -> the requested PHP extension mongodb has the wrong version (1.1.5) installed.
    - moloquent/moloquent dev-master requires mongodb/mongodb ^1.0.0 -> satisfiable by mongodb/mongodb[1.1.2].
    - Installation request for moloquent/moloquent dev-master -> satisfiable by moloquent/moloquent[dev-master].

@J-Ibarra you must update the extension on your machine to 1.2 before upgrade mongodb/mongodb to 1.1.2
the requested PHP extension mongodb has the wrong version (1.1.5) installed


logger: add egl checking macros

GearVRf-DCO-1.0-Signed-off-by: Mihail Marinov<EMAIL_ADDRESS>

Planning to merge on Thursday.


Crash on PR 1308 Metrics Chooser

PR #426 has a crash when opening the Endpoint Page #426
<IP_ADDRESS> - - [11/Mar/2024 11:23:53] "POST /_dash-update-component HTTP/1.1" 200 -
[2024-03-11 11:23:53,343] ERROR in app: Exception on /_dash-update-component [POST]
Traceback (most recent call last):
  File "/Users/briford/.pyenv/versions/py310/lib/python3.10/site-packages/flask/app.py", line 1455, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/briford/.pyenv/versions/py310/lib/python3.10/site-packages/flask/app.py", line 869, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/briford/.pyenv/versions/py310/lib/python3.10/site-packages/flask/app.py", line 867, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/briford/.pyenv/versions/py310/lib/python3.10/site-packages/flask/app.py", line 852, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
  File "/Users/briford/.pyenv/versions/py310/lib/python3.10/site-packages/dash/dash.py", line 1310, in dispatch
    ctx.run(
  File "/Users/briford/.pyenv/versions/py310/lib/python3.10/site-packages/dash/_callback.py", line 442, in add_context
    output_value = func(*func_args, **func_kwargs)  # %% callback invoked %%
  File "/Users/briford/work/sageworks/applications/aws_dashboard/pages/endpoints/callbacks.py", line 82, in generate_endpoint_details_figures
    endpoint_details_markdown = model_details_markdown.ModelDetailsMarkdown().generate_markdown(endpoint_details)
  File "/Users/briford/work/sageworks/src/sageworks/web_components/model_details_markdown.py", line 34, in generate_markdown
    model_details = model.details()
AttributeError: 'dict' object has no attribute 'details'

Okay, so I fixed the crash. But the endpoints page no longer has a model metrics section, which... maybe is fine... maybe having TWO places with model metrics is a bit weird.


CAMEL-18019: ensure some fields in the Kafka record fetcher are safe for concurrent read

I see also a potential bug here. Indeed the pollExceptionStrategy is set in the constructor using the value of the field consumer that is always null at this stage

One more potential issue, the map lastProcessedOffset seems to be read and write by different threads, It looks like it should be a ConcurrentHashMap

What about clientId and lastError? They seem to be shared also

Hm, clientId seems to be written only within the scope of the same thread (in

I see also a potential bug here. Indeed the pollExceptionStrategy is set in the constructor using the value of the field consumer that is always null at this stage

I see also a potential bug here. Indeed the pollExceptionStrategy is set in the constructor using the value of the field consumer that is always null at this stage

Please open a separate ticket for this one.

I think we should probably abstract the task state that is exposed to the HealthCheck, so it's easier to know what is being accessed elsewhere.

I see also a potential bug here. Indeed the pollExceptionStrategy is set in the constructor using the value of the field consumer that is always null at this stage

Please open a separate ticket for this one.

https://issues.apache.org/jira/browse/CAMEL-18020

One more potential issue, the map lastProcessedOffset seems to be read and write by different threads, It looks like it should be a ConcurrentHashMap

I think we could try to remove this altogether and move its functionality to the commit manager. This is a remainder for the earlier versions of this component (pre 3.7), so I believe what it is trying to do overlaps with what we have there.

We can also probably remove the reconnect variable at this point (or leave in the appropriate PollExceptionStrategy). Anyway, let's do it in baby steps so it's easier to bisect if we have problems.

One more potential issue, the map lastProcessedOffset seems to be read and write by different threads, It looks like it should be a ConcurrentHashMap

I logged this one here: https://issues.apache.org/jira/browse/CAMEL-18020 (as explained, I think this one should be reworked and moved to a more appropriate location within the code).

I'm going to merge this first bit of changes. Please keep the reviews, comments, tickets going ...


generator: anthropic

no api access for me, so implement a clewd/slaude workaround

https://rentry.org/clewd / https://gitgud.io/ahsk/clewd/
https://rentry.org/slaude2, at a pinch...

Hi @leondz I believe we can help with this issue. I’m the maintainer of LiteLLM https://github.com/BerriAI/litellm
TLDR:
We allow you to use any LLM as a drop in replacement for gpt-3.5-turbo.
If you don't have access to the LLM you can use the LiteLLM proxy to make requests to the LLM
You can use LiteLLM in the following ways:
With your own API KEY:
This calls the provider API directly
from litellm import completion
import os
## set ENV variables
os.environ["OPENAI_API_KEY"] = "your-key" #
os.environ["COHERE_API_KEY"] = "your-key" #

messages = [{ "content": "Hello, how are you?","role": "user"}]

# openai call
response = completion(model="gpt-3.5-turbo", messages=messages)

# cohere call
response = completion(model="command-nightly", messages=messages)

Using the LiteLLM Proxy with a LiteLLM Key
this is great if you don’t have access to claude but want to use the open source LiteLLM proxy to access claude
from litellm import completion
import os

## set ENV variables
os.environ["OPENAI_API_KEY"] = "sk-litellm-5b46387675a944d2" # [OPTIONAL] replace with your openai key
os.environ["COHERE_API_KEY"] = "sk-litellm-5b46387675a944d2" # [OPTIONAL] replace with your cohere key

messages = [{ "content": "Hello, how are you?","role": "user"}]

# openai call
response = completion(model="gpt-3.5-turbo", messages=messages)

# cohere call
response = completion(model="command-nightly", messages=messages)

hey @ishaan-jaff! thanks for this request. a dedicate LiteLLM PR has been submitted (#572) - your feedback is welcome

Hey, any plan to implement a generator for Claude3?
Here's the API docs for Bedrock https://docs.anthropic.com/en/api/claude-on-amazon-bedrock


Update Dependency & Add Hint

Update Dependency to Flow.Launcher.Plugin to 1.4.0
Change the empty query action to change the query text to specific shortcut so that user can type argument. (If you think it is not as good as simply run the command, I can revert it).
Add hint when typing the shortcut.

I am afk, do you want to build a release?

I am afk, do you want to build a release?

Sure

@jjw24 I think I don't have the write access toward this repository, so maybe you may still need to create a release for that. 😂

Just sent an invite


Check validity of get_order data to show error in object/object failures

Check the return data from get_order and show a better error when an html error is returned.

Have you done this @jjeffryes , I can't remember based off the last couple of commits.


Generate detail convex hull in mesh geom

I would like to build an object from STL file which have detail surface triangulation not only for geom visualization.
Could you let me know how to set it in the XML file?

Hi @azharauliasaputra, one way to do this is to disable collisions for your visual meshes and enable them for your collision meshes. You then define 2 geoms in your body, one for the visual one and one for the collision one.
The mujoco_menagerie repo has nice examples of how to do this. In particular, check out the panda.xml file.


Evaluate and add cloud spanner as distributed cloud database for cart service

Description:
$subject

This is a horizontally scalable RDBMS, which supports asynchronous read and write. Spanner JDBC interface supports this by adding the mode(READ ONLY, WRITE ONLY) in connections.(https://github.com/googleapis/java-spanner-jdbc/issues/253). The original microsoft demo uses asynchronous writes(This is done through a spanner client lib). However, we cannot have asynchronous writes with ballerina JDBC connector.
Since we cannot implement it w/o using the distinctive feature of cloud spanner, after offline discussion with @anupama-pathirage , it was decided to not add this support.


Community forum link in readme.md redirects to 404.

The community forum link under the "Getting Help" section is broken.
Sorry I'm not filling out your form to point out you have a bad link in your docs.

This will be addressed by https://github.com/realm/realm-cocoa/pull/7339.


Hide Component Definition in Configuration

This page is only going to cause confusion. Let's hide this in the UI for now.

Fixed and merged in commit: https://github.com/hortonworks/streamline/commit/6c06d010e75afe9699e864fad10bd7d0405e98a6


Vulnerability in event-stream dependency

There's a serious vulnerability in event-stream, which is used by npm-run-all.
Please consider locking into v3.3.4 or lower, which appears to be before the vulnerability was introduced.
EDIT: the vulnerable package is pulled in via your dependency ps-tree, which has an issue open to fix it: https://github.com/indexzero/ps-tree/issues/33

Thank you for the report.
But I have already published v4.1.5 to address it.

FYI<EMAIL_ADDRESS>locked to<EMAIL_ADDRESS>(which if I read the thread correctly pre-dates the questionable changes).
Thanks to folks for bringing it to my attention: https://github.com/indexzero/ps-tree/pull/34

@mysticatea thank you so much for being on top of this issue.


Will nproc_per_node effect the results?

Will the number of nproc_per_node effect the results (like batch_size) ? Or it is just used to improve the training speed.

It represents the total number of processes to spawn, typically with one process controlling one GPU. The total effective batch size is the number of processes multiplied by the batch size given in hyper_para.py.


feat(ingest/glue): Include environment on container guid key of container URN

Checklist
We are currently excluding environment while generating the GUID key for container urn.
This PR introducing a configurable option include_env_on_container_key which can be used if user wish to consider environment as well along with instance while generating the GUID of a container urn to avoid collision for same instance and different environment.
PR changes include:

A new config flag include_env_on_container_key is added, if it is set to True then env will be included to generate container GUID key along with platform instance.

Updated Glue connector code to use the include_env_on_container_key to generate container guid key.

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

@hsheth2
The env is deprecated and we are prompting to use platform-instance instead of env, however this PR is introducing the env in container key generation, so I am not sure if we want to go ahead with the PR.
Need your input on this PR

@sgomezvillamor that makes a ton of sense. We recently did something similar for datajobs/dataflows https://github.com/datahub-project/datahub/pull/10814

@sgomezvillamor that makes a ton of sense. We recently did something similar for datajobs/dataflows #10814

I see. That would require to add the env property to the eg container properties aspect.
  /**
   * Environment for this job
   */
  @Searchable = {
    "fieldType": "KEYWORD",
    "addToFilters": true,
    "filterNameOverride": "Environment",
    "queryByDefault": false
  }
  env: optional FabricType


Incorrect behavior with Occurrences Highlight in template literals

Issue Type: Bug

Paste the below code into a window:

const gql = `
  enum DateFields {
    approvedDate
    expirationDate
    firstOrder
  }

  enum Status {
    REQUESTED
    APPROVED
    ACTIVE
    COMPLETED
  }

  enum DosageUnit {
    GRAM
    TON
  }
`

Move the cursor to the end of the line inside any of the curly braces

You'll notice that with Occurrences Highlight turned on, ALL blocks get fully highlighted, when technically nothing should be highlighted at all since I'm not inside a token to search for occurences for.
VS Code version: Code 1.54.3 (2b9aebd5354a3629c3aba0a5f5df49f43d6689f8, 2021-03-15T11:57:12.728Z)
OS version: Darwin x64 19.6.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz (8 x 2700)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
2, 2, 2

Memory (System)
16.00GB (0.92GB free)

Process Argv
--crash-reporter-id fd41cef7-524e-47cb-93a7-66e02ded0e39

Screen Reader
no

VM
17%

Extensions: none

Duplicate of https://github.com/microsoft/TypeScript/issues/43292