PDPerfPlugin.dll casuing Resident evil 4 to crash

Describe the bug
Using pdupscaler 1.5.6+ version with  RES4 ... fot upscaling i put 2 files in reframe plugins folder one is PDPerfPlugin.dll and other nvngx.dll .....  without PDPerfPlugin.dll game load and works fine but with PDPerfPlugin.dll present in plugin folder, the game crashes at game startup when reframework loading plugins.
Identify the REFramework version
VR (DD2): Initial fixes for new rendering method #941 (pdupscaler 1.5.6+ version)
Desktop and VR (please complete the following information):

Windows 11
RX 6600xt
E5 1660 v3

Supply your re2_framework_config.txt please.

Supply your re2_framework_log.txt please.

re2_framework_log.txt

where do you find pdperfplugin?


Random code inserted which can be detected by browser but not editor itself

Issue Type: Bug
Hi I'm writing some ordered  lists and in the browser I can see am empty lists got inserted, I checked with broswer's inspect and see there is something there. However when I check with VSC, text editor, leafpad, I don't see anything wrong with my coding.
Someone has encountered the same problem on Mac. #54160
FYI, I use chromium and firefox as browsers on Linuxmint. I use VSC on the same computer under the same OS.
Please fix this or let me know what to do. Thanks!
VS Code version: Code 1.25.0 (0f080e5267e829de46638128001aeb7ca2d6d50e, 2018-07-05T13:10:37.273Z)
OS version: Linux x64 4.15.0-24-generic

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz (4 x 2992)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: disabled_softwarevideo_decode: unavailable_softwarevideo_encode: enabledvpx_decode: unavailable_softwarewebgl: enabledwebgl2: enabled

Load (avg)
1, 1, 1

Memory (System)
7.71GB (0.62GB free)

Process Argv
/usr/share/code/code --unity-launch

Screen Reader
no

VM
0%

Extensions (2)

Extension
Author (truncated)
Version

vscode-html-css
ecm
0.2.0

python
ms-
2018.6.0

Sorry I finally detected my errors. It might be made by myself when copying and editing stuff. So this should close ##54161


Bug: Query View - Copy Page still includes some formatting

When I use Copy, and paste into Excel it looks like it is still including the following formatting options:
-Bold
-Wrap Text (this one especially ends up not looking great in Excel)
And I am not sure if it's possible, but let's say I have a String of "001000". When I paste this, Excel automatically changes it to a number 1000. I was not sure if it's possible to flag what is being copied to the clipboard as text explicitly so that it does not lose the leading the zeroes. I know this one is sort of an Excel issue since it's automatically casting to a whole number.

Do you mean that text is wrapped like the following?

In this example I manually set wrap text to a cell. Initially it wasn't wrapped.

Do you mean that text is wrapped like the following?

In this example I manually set wrap text to a cell. Initially it wasn't wrapped.

When I use Copy Page and paste directly into Excel, all of my cells pasted in have Wrap Text selected in the Home tab and the first row has Bold text.

Maybe in excel the underling value is still "001000" but excel decides to logically present it as 1000? I'm not sure.
I'll take a look in the options on what's possible here.
Do you have an example parquet file that I can test this on?

number leading zeroes.zip
Here is an example of a field with leading zeroes.

Thanks for the example. Do you also have a parquet file where the wrapping text occurs in excel?

Thanks for the example. Do you also have a parquet file where the wrapping text occurs in excel?

That one with the leading zeroes is doing the text wrapping in Excel as well.

Perhaps this could solve the leading zeroes getting messed up? Assuming you are copying an HTML table...
This would be for String columns:

https://dev.to/anrodriguez/styling-excel-cells-with-mso-number-format-css-attribute-updated-j6i

For String it got cut off, but this might fi the leading zeroes issues:
mso-number-format:"\@"

I don't think I'm getting the wrapping with your example parquet file. Could you make a screenshot what you mean with word wrapping?
FYI: I tested it in google sheets and I get the following:

I don't have Excel on my personal PC and cannot share screenshots from my work laptop. However, the option being enabled looks like this on every cell I pasted:

The cells are being stretched out and I have to resize everything.

I'm using office 365 excel for the web and I've tried to apply the following:

th, td { white-space: nowrap; font-weight: normal; }

The bolded headers are gone.
The word wrap remains enabled when pasted into office 365. However, when I do CTRL + Z the word wrap is diabled. So it seems office 365 excel for the web does some automatic post processing based on some configuration to apply word wrap for cells that are longer than the headers.
mso-number-format simply doesn't seem to work. So now I try to match each cell whether they contain leading zeroes using the regex /^0+\d+/ and then prepend a ' for it, making it a text value. Which makes sure that the leading zeroes remain.

I'm using office 365 excel for the web and I've tried to apply the following:

th, td { white-space: nowrap; font-weight: normal; }

The bolded headers are gone.
The word wrap remains enabled when pasted into office 365. However, when I do CTRL + Z the word wrap is diabled. So it seems office 365 excel for the web does some automatic post processing based on some configuration to apply word wrap for cells that are longer than the headers.
mso-number-format simply doesn't seem to work. So now I try to match each cell whether they contain leading zeroes using the regex /^0+\d+/ and then prepend a ' for it, making it a text value. Which makes sure that the leading zeroes remain.
I'll try to make a pre-release on vscode, so that you can install the next version and try it with excel for desktop. See if it does work for you there.

Thanks for all of your hard work on this. I will test the word-wrap with the changes you made when you publish the update. It's possible it might still work in Desktop. With adding ' at the start, this may fix it in Excel but could potentially cause issues in other places outside of Excel. Is it possible that with your previous formatting changes, it might be stripping out the mso style?

In current release I'm not doing any custom formatting on the copied result.
I'll publish the version where I'll not prepend it with a ' and only keep the excel style. So that you can test whether it works on excel desktop.

I did some testing where I actually tried to copy the HTML code itself rather than the output HTML and paste it into Excel and the mso @ tag and the no-wrap both get respected when Excel converts the HTML code into a table on the sheet.

Thanks for your reply and testing. Which mso tags are you referring to for floats, dates and integers (having commas)?
Can you share your HTML code example that was respected by Excel?

This worked to fix my issues with the leading zeroes when I copied and pasted the raw HTML:
`

000022

`

4 examples.txt
Example 1: Text
Example 2: Numeric Text
Example 3: Float
Example 4: Integer

Actually, I am wrong. I can define the classes and it works properly. Attached is a more organized example.
4 examples.txt
Pasting raw HTML works on Desktop Excel but not Web.

Formatting should be improved in v0.15.0. Please let me know if there are still any issues or improvements to be made, as I can't test without having an Excel license.


A slight modification of Python Server to introduce Social Wellness

This includes Python changes to the Server Side to introduce Social Wellness statistical variables.

Ready for re-review! I am working on a better README. Will do a separate PR.
Thanks!

Whoops, I removed the print statement. Thank you!


Alternative to may thread rendering

Currently in the AVCaptureVideoDataOutputSampleBufferDelegate, I take the sample buffer, apply a filter, and render it to a MTIImageView on the main thread. This method however can drop frames and cause the rendering to lag slightly when the main thread becomes blocked. Is there an alternative way of rendering a camera video feed a view that doesn't require main thread?

Yes. Instead of using MTIImageView, you can use a custom view with a CAMetalLayer.
CAMetalLayer can be accessed from non-main threads. You can use the MTIContext’s “render to drawable” method to perform the rendering. Just be sure not to modify any view related thing in the non-main thread.

Wow.. i didnt know this could happen.
Would it be wise to add that to the framework ?
On Jun 11, 2019, 9:40 AM -0700, Yu Ao<EMAIL_ADDRESS>wrote:

Yes. Instead of using MTIImageView, you can use a custom view with a CAMetalLayer.
CAMetalLayer can be accessed from non-main threads. You can use the MTIContext’s “render to drawable” method to perform the rendering. Just be sure not to modify any view related thing in the non-main thread.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@AllardDevDesign @omarojo
Added an image view (MTIThreadSafeImageView) that does exactly what I said. You can give it a try.
https://github.com/MetalPetal/MetalPetal/commit/eff5bc29a6b62d25a8cb74a0386830c447e42d8b

Could you give some instructions for best practice of using this MTIThreadSafeImageView

Just use it like a normal MTIImageView except you can set its image on any thread and the view renders its image immediately unlike the MTIImageView's setNeedsDisplay mechanism.

for some reason Im getting
MetalPetalDev/GenerateMetal-iOS/Pods/MetalPetal/Frameworks/MetalPetal/UI/MTIThreadSafeImageView.m:208
2019-06-19 17:37:55.740102-0700 GenerateMetal-iOS[759:155043] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Context is nil.'
*** First throw call stack:

But Im pretty sure Im assigning a context value to the myrenderView.context
before trying to render anything.

@omarojo yes, nice catch. Fixed in the latest commit.


Pages are missing left menus

When you make a page in the Drought site and give it one or more H2s, that's supposed to automatically make a "page index" or left menu with anchor links, with the page title positioned above it.
For some reason, this is not happening on these pages:

Resources
Current drought conditions

The page title on these pages also lines up well to the right of where it should.

@xjensen correctly determined that this was due to these WP pages having the wrong template. Changed Template to "Default template" and published, now left menus appear!


Getting close to start, what am i missing?

Expected Behavior
Start the bot
Actual Behavior
$ python pokecli.py
2016-08-07 17:03:06,509 [       cli] [INFO] PokemonGO Bot v1.0
2016-08-07 17:03:06,510 [       cli] [INFO] No config argument specified, checking for /configs/config.json
Traceback (most recent call last):
File "pokecli.py", line 501, in
main()
File "pokecli.py", line 132, in main
raise e
Steps to Reproduce
Followed the guide and trying to get the bot to run
Other Information
OS:  W7
Python Version: 2.7.10

https://github.com/PokemonGoF/PokemonGo-Bot/issues/2808
follow that guide.

Json config file contained errors


List of current issues to fix in production

Enterprise edition page

[ ] Under  "Talent Assessment & Management" the "learn more" button currently point to a "404 Not Found" instead of https://sourced.tech/solutions/talent-assessment-and-management/ (missing an s at assessment)

Community edition page

[ ]  Update the "download source{d}" button to link to https://go.sourced.tech/community-edition-download instead of https://go.sourced.tech/engine-download

Manager get started tab

[ ] Update the "Request CE demo" link to point to https://go.sourced.tech/community-demo

Executives get started tab

[ ] Replace the "1m video" by "Watch 1m Video" and update the title in the pop up title to "source{d}: The Data Platform for your Software Development Life Cycle'

IT Modernization & Compliance

[ ]  Update ALL the "download source{d}" buttons to link to https://go.sourced.tech/community-edition-download instead of https://go.sourced.tech/engine-download

DevOps & Cloud Native Transformation

[ ]  Update ALL the "download source{d}" buttons to link to https://go.sourced.tech/community-edition-download instead of https://go.sourced.tech/engine-download

Engineering Effectiveness & Efficiency

[ ]  Update ALL the "download source{d}" buttons to link to https://go.sourced.tech/community-edition-download instead of https://go.sourced.tech/engine-download

Talent Assesment & Management

[ ]  Update ALL the "download source{d}" buttons to link to https://go.sourced.tech/community-edition-download instead of https://go.sourced.tech/engine-download

Header & Footer

[ ] Under Company, remove About from both Header and Footer
[ ] Replace "Team" by "Management"
[ ] Careers links to "offices" it's of Openings

I fixed all these requests on #441


Revert "Revert "[PF-2174] check version is out of date for the commands talk to server""

Reverts DataBiosphere/terra-cli#362
This ticket is the revert - revert version of the PF-2174
We already fix the downstream error for current version check. #364

before you merge, can you run with pServer=verily-devel to double check? thanks :)

I run the whole unit test by ``, it also has the error caused by the permission error which mentioned in the group chat.
The gradlew details https://scans.gradle.com/s/u6bb44fgwqtaw/tests/overview?outcome=failed

@ginaygoogle I just took a look at your gradle link. The failure are not related to this PR. You are testing using the broad user (Lili Shadowman is from Broad https://github.com/DataBiosphere/terra-cli/blob/main/src/test/resources/testconfigs/broad.json#L12) thus hitting the permission issue in the verily-devel env.
This is the list of users for verily testing: https://github.com/verily-src/terra-tool-cli/blob/af9255ad58f15b26867e16b0d61f33c024c53c83/resources/testconfigs/verily.json#L16


Publish 05/28/2021, 10:30 AM

Docs Build status updates of commit 89b8702:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/docs-conceptual/exchange-online-powershell-v2.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Get-AddressBookPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Get-OwnerlessGroupPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/New-ComplianceSecurityFilter.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Remove-AddressBookPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-Mailbox.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-MailboxAutoReplyConfiguration.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-OwnerlessGroupPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/exchange.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/mapping/serviceMapping.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Add GetLeavesByRevision to fake.TrillianMapClient

Also moves the fake TrillianMapClient into core/fake
and cleans up the test to use a proper client interface.

I was just starting a PR to move the KT code over to use GetLeavesByRevision wherever possible, fixing the fake was part of that ...
I'll drop my fake fix, wait for this to go in, and then continue, ok?

LGTM, squash and merge

Sounds good.  This fake needed some love anyways - it just barely does the job.
Changing the rest of the code to use GetLeaves and GetLeavesByRevision sounds good though.  (No more pesky revision: -1!!)

Codecov Report

Merging #872 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #872   +/-   ##
=======================================
  Coverage   48.78%   48.78%
=======================================
  Files          34       34
  Lines        2353     2353
=======================================
  Hits         1148     1148
  Misses       1001     1001
  Partials      204      204

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 0cbe7d5...862c840. Read the comment docs.


Can impersonate other ships in talk.

%Talk can be made to send messages using %poke moves. Problem is, I can poke someone else's %talk to have them send the message for me. (At least, that's what I figure is happening here.)
Example:
[ost %poke /repeat/1/shipname/stationname [~zod %talk] (said our somestation %talk now eny [%leaf "i am fake ~zod"]~)]

Results in this line in the station the message was sent to:
          ~zod+ i am fake ~zod

In the example, ~zod can be changed to any other ship name, and it will "impersonate" that instead.

That's what comes from our early-Internet ethos!  Definitely must fix...
Sent from my iPhone

On Jul 21, 2016, at 10:56 AM, Fang<EMAIL_ADDRESS>wrote:
%Talk can be made to send messages using %poke moves. Problem is, I can poke someone else's %talk to have them send the message for me. (At least, that's what I figure is happening here.)
Example:
[ost %poke /repeat/1/shipname/stationname [~zod %talk] (said our somestation %talk now eny [%leaf "i am fake ~zod"]~)]
Results in this line in the station the message was sent to:
      ~zod+ i am fake ~zod

In the example, ~zod can be changed to any other ship name, and it will "impersonate" that instead.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I believe this is what "XX security" is referring to: the problem is not pokes being accepted per se, but the author ship information being overridden to be the host. For usage by comets presumably?

My "fix" in #221 was rolled back (since it broke everything). Should this be reopened?

/cc @juped @ohAitch

Sure.

Presumably this is what ++team is for, and the line can be changed to
=.  her  ?:((team our.hid her) our.hid her)
This does conflict with the idea of using jael to issue web-yachts though.
On Wednesday, 5 October 2016, Raymond Pasco<EMAIL_ADDRESS>wrote:

Sure.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/urbit/arvo/issues/208#issuecomment-251798652, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABxXhuv41B80DRc4DLCDq9KIcNCFb9NDks5qxBBzgaJpZM4JSDeL
.

Wait, did this get fixed?

No, the bug is still live -- just checked.


ManyManyThroughList join record flags all fields as changed

Affects 4.x and 5.x
When saving changes to a join record in a many-many-through relation, DataObject::getChangedFields() will report all fields as changed. This is because ManyManyThroughList::createDataObject() creates the join record as though it’s a brand new DataObject, not one that already exists in the database:
https://github.com/silverstripe/silverstripe-framework/blob/9a279f654da19697b813afb90abb16cdb10d7f3f/src/ORM/ManyManyThroughList.php#L86-L92
Using DataObject::CREATE_HYDRATED resolves this:
$joinRecord = Injector::inst()->create($joinClass, $joinRow, DataObject::CREATE_HYDRATED, $joinQueryParams);

PR

https://github.com/silverstripe/silverstripe-framework/pull/10923

Pull request merged. It'll be automatically tagged by GitHub Actions.


parser: Allow function parameters/arguments to be separated with spaces

See https://github.com/SerenityOS/jakt/pull/988#issuecomment-1199936147.

I don't know about anyone else, but this makes me really uncomfortable. 😬

@AtkinsSJ - the intent here is that you will run Jakt with a formatter that automatically formats your code. Being a bit loose with syntax like allowing you to use a space, allows the formatter to just put it in for you without you having to do it.

@jntrnr I do get your point. Personally though, I prefer the clear separation of a comma/newline over the convenience of not having to type one character. (I'd also have semicolons in the language if it was up to me though. 😅)


Multiple zcompdump files

Problem Summary
With a clean install of zplug using git clone and the following in ~/.zshrc, zplug will create ~/.zcompdump, ~/.zplug/zcompdump, and ~/.zplug/zcompdump.zwc. I would expect only one of those files to be created.
System Information

uname -a
Darwin xdgrady 14.5.0 Darwin Kernel Version 14.5.0: Thu Jun 16 19:58:21 PDT 2016; root:xnu-2782.50.4~1/RELEASE_X86_64 x86_64

zsh version

zsh 5.0.5 (x86_64-apple-darwin14.0)
```

zplug version/commit

2.2.0
```
Minimal zshrc
Create a minimal reproducing set of configurations for this issue. Please
remove all unnecessary parts!
export ZPLUG_HOME="$HOME/.zplug"
source "$ZPLUG_HOME/init.zsh"
zplug load

Steps to Reproduce

Put the above in ~/.zshrc; remove all other zsh config files
rm -rf ~/.zplug
rm ~/.zcompdump
git clone https://github.com/zplug/zplug ~/.zplug
Start a new shell

The 2 files $ZPLUG_HOME /zcompdump{,.zwc} are produced by compinit (creating the zcompdump ile) and zcompile (creating the "compiled" version with the zwc extension) here:
~zplug/autoload/commands/load

245:    compinit -C -d "$ZPLUG_HOME/zcompdump"
248:        zcompile "$ZPLUG_HOME/zcompdump"

The file ~/.zcompdump  might be created by a loaded plugin that calls compinit without the -d flag.

I don't think another plugin or shell config file creates ~/.zcompdump. Try my steps to reproduce; I remove all ZSH configuration files and the entire zplug directory hierarchy (including the repos directory) to test this, and I don't load any plugins. So from a completely clean install with no plugins, the two commands
source "$ZPLUG_HOME/init.zsh"
zplug load

seem to be sufficient to reproduce this behavior, which suggests that something in zplug's startup sequence calls compinit prematurely.

I delved into zplug's code and it's definitely causing the problem itself: it calls compinit twice, once when init.zsh is sourced and once during zplug load. The former call, which is almost certainly the erroneous one, occurs in base/core/core.zsh:
    # Run compinit if zplug comp file hasn't load
    if (( ! $+functions[_zplug] )); then
        compinit
    fi

Deleting this call seems to fix the issue entirely - zplug no longer creates ~/.zcompdump, and it still has working completion. So… is that call needed at all?

Thanks for reporting! The compinit that @00dani pointed out is needed in case ~/.zplug/init.zsh is sourced but zplug load isn't called. However, I made it so that the zcompdump file is generated to $ZPLUG_HOME/zcompdump in the first invocation. Please try out the latest master and see if this fixes the problem.


Can't drag

Description
everytime i try to drag a file with the file running with admin rights it crashes
Steps To Reproduce

open
drag
crash

Requirements

eg. Fix crash that occurs when...

Files Version
<IP_ADDRESS>
Windows Version
Microsoft Windows 11 Pro Version	10.0.22621 Build 22621
Log file
debug.log

We should probably disable drag and drop to prevent a crash.

@hoang3402 thank you for your patience, the next version of Files will include a fix for this issue. In addition to this fix, it'll also include support for admin file operations without having to elevate Files.


Activity dashboard empty states

Empty states need to be implemented for the activity dashboard and area chart components

@codemonkey800 Hmm when I go to a new plugin on staging, e.g. https://staging.napari-hub.org/plugins/napari-psf-analysis, I don't see any activity section. Is this expected, or is there corresponding back-end work that needs to happen as a result of your changes?

@codemonkey800 Shouldn't this plugin https://staging.napari-hub.org/plugins/napari-svetlana have the "There is not yet enough data to display for this plugin" for the monthly installs section?

Ah I would suggest using the release date to calculate this, but yes it seems back-end and front-end should align here on what data needs to be passed. Let's discuss more on Monday!

I agree that using the release date is ideal, but we don't store the release date in the activity data we currently cache and fetch on API calls. Utilizing the min on the timestamp of installs will not accurately represent the release date in cases where a plugin didn't have installs in the first few months after release.
From an earlier discussion, I believe there was a consensus that exposing the release date instead of the total months in the stats would be valuable. This would alleviate the problem but might require a bit of rework in the back end.
As the front end already has the release date, we could leverage that and add a check before processing to render the timeline. This could be a stop-gap before we implement the release date being returned as a part of the stats.
This could also be implemented using the total months metric that gets returned right now. But @klai95 and I noticed a bug with this. We are currently using the minimum timestamp of installs to compute the total months, which would not be accurate in the edge case discussed above.

I agree that using the release date is ideal, but we don't store the release date in the activity data we currently cache and fetch on API calls. Utilizing the min on the timestamp of installs will not accurately represent the release date in cases where a plugin didn't have installs in the first few months after release. From an earlier discussion, I believe there was a consensus that exposing the release date instead of the total months in the stats would be valuable. This would alleviate the problem but might require a bit of rework in the back end.
As the front end already has the release date, we could leverage that and add a check before processing to render the timeline. This could be a stop-gap before we implement the release date being returned as a part of the stats.
This could also be implemented using the total months metric that gets returned right now. But @klai95 and I noticed a bug with this. We are currently using the minimum timestamp of installs to compute the total months, which would not be accurate in the edge case discussed above.

@manasaV3 Great points - let's move forward with Jeremy's fix for now, but the total months bug sounds like its own separate issue; could you create an issue to track that bug and your proposed fix?

@richaagarwal @klai95 #772 should fix the issue, but I think long term in the future we'll want to trim the amount of data we return based on the release date to save bandwidth when sending data to the frontend. it's not significant right now, but has the potential to impact users on slower networks as we add more data to the metrics endpoint

Just to clarify, essentially we would use the release date as the start date to for filtering data (as in we would discard data before that start date). After the filtering process, in the case (1) there are fewer than 12 months of data (for example 3 months), we would return a list of 3 objects to the frontend and in the case (2) there are at least 12 months of data, then we return the past 12 months of data, excluding the current month's data, regardless of whether the installs in any of those months is nonzero or zero, since we have already filtered the data so we know if months have zero installs then it is representative of what happened? @codemonkey800


Missing 'Train.jsonl' in Python Summarization

Hi, thanks for your excellent work.
I am fine-tuning code summarization task and I found there misses 'train.jsonl' in summarization of python language.
I note that there is a little difference between your dataset and data in CodeXGLUE.
Could you please upload your 'train.jsonl'?

Hi, thanks for spotting this. We have uploaded the train.jsonl for Python.


Haskell backend integration: kprove should save a compiled.bin for the generated vdefinition.kore

This is required to ensure that there would be a definition which can be used to unparse the output of the haskell backend.
Currently kprove does not save the composed definition (including the main module to be used for proofs).  However, the output (esp. if not #True), might include syntax defined in that module.
This is the case, for example with the KWASM Lemmas ( https://github.com/kframework/wasm-semantics/blob/master/kwasm-lemmas.md ) which define helping predicates such as
     syntax Bool ::= #isByteMap ( ByteMap ) [function, functional, smtlib(isByteMap)]

test.zip
steps to reproduce:
kompile  --backend haskell  verif.k -d .
kprove test-spec.k   -d .

Output:
[Error] Internal: Uncaught exception thrown of type NoSuchElementException.
Please rerun your program with the --debug flag to generate a stack trace, and
file a bug report at https://github.com/kframework/k/issues (key not found:
isA(_)_VERIFICATION_Bool_S)

This might be related to Issue #703 (duplicate?)

The compiled definition was going to be stored differently in PRs below, but they stagnate for 4 months already for various reasons. So please don't work on this until we sort out the PRs below.
https://github.com/kframework/k/pull/892
https://github.com/kframework/k/pull/910


call: reset streams on call hold

The audio data in the jitter buffer has to be flushed when putting a call into
on hold state. Otherwise it is played on the playback device after the call is
resumed.

@cspiel1 thank you very much for this patch!
in addition to this, please also consider this:

if the RTP marker bit is set for incoming audio packets, the jitter buffer should
be reset.

there is also a audio buffer (aubuf) for decoded audio frames, perhaps this buffer
should be reset also:

https://github.com/alfredh/baresip/blob/master/src/audio.c#L1810

Dear Alfred,
your welcome!
For 1. and 2. I will have a look later.
r, chris

@alfredh: Ad 2. Why not call call_stream_stop (which calls audio_stop and video_stop) ?


MysqlDialect doesn't work anymore in 0.19.2

Using MysqlDialect will throw when making the first connection
TypeError: Cannot read properties of undefined (reading 'getConnection')
 ❯ file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/dialect/mysql/mysql-driver.js:35:24
 ❯ MysqlDriver.#acquireConnection file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/dialect/mysql/mysql-driver.js:34:16
 ❯ MysqlDriver.acquireConnection file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/dialect/mysql/mysql-driver.js:19:60
 ❯ RuntimeDriver.acquireConnection file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/driver/runtime-driver.js:29:47
 ❯ async DefaultConnectionProvider.provideConnection file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/driver/default-connection-provider.js:8:28
 ❯ async DefaultQueryExecutor.executeQuery file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/query-executor/query-executor-base.js:32:16
 ❯ async SelectQueryBuilder.execute file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/query-builder/select-query-builder.js:565:24
 ❯ async SelectQueryBuilder.executeTakeFirst file:/Users/morse/Documents/GitHub/docs-from-notion/node_modules/.pnpm/kysely@0.19.2/node_modules/kysely/dist/esm/query-builder/select-query-builder.js:573:26˙

This is because the MysqlAdapter now expects a pool parameter i think but the typescript type didn't change
https://github.com/koskimas/kysely/blob/ba42803de18a274a8f569b80e159de231bd27ba5/src/dialect/mysql/mysql-driver.ts#L28-L30

Did you read the changelog?

And if you look at the actual code under node_modules you can see that the types DID change.

@koskimas Is there a described reasoning for this change? I like it. Thank you

@steida Like half of the issues and questions in discord are about things failing when bundling kysely. The API is slightly more complicated but now Kysely is completely dependency-free and platform agnostic.

@koskimas Great work, thank you!

Sorry, my VScode typescript language server wasn't updating the type definitions after the update 🙈


Testnet launch bug

When I start with the following configuration, I encountered this problem.
[storage]
working_dir = "/data/rust/chainhook/cache"

# The Http Api allows you to register / deregister
# dynamically predicates.
# Disable by default.
#
[http_api]
http_port = 20456
# database_uri = "redis://localhost:6379/"

[network]
mode = "testnet"
bitcoind_rpc_url = "http://<IP_ADDRESS>:18332"
bitcoind_rpc_username = "test"
bitcoind_rpc_password = "test"
stacks_node_rpc_url = "http://<IP_ADDRESS>:20443"

[limits]
max_number_of_bitcoin_predicates = 100
max_number_of_concurrent_bitcoin_scans = 50
max_number_of_stacks_predicates = 10
max_number_of_concurrent_stacks_scans = 10
max_number_of_processing_threads = 8
max_number_of_networking_threads = 8
max_caching_memory_size_mb = 32000

[[event_source]]
tsv_file_url = "https://archive.hiro.so/mainnet/stacks-blockchain-api/mainnet-stacks-blockchain-api-latest"

Jun 30 11:23:47 1-centos chainhook[3748113]: Jun 30 03:23:47.824 INFO Computing ordinal number for Satoshi point 0x79f238e97a29fff293fb5c2237c646535017f5663f789f4b8c1bd1e72336e88b (0:0 -> 0:0/0)  (block #2436517)
Jun 30 11:23:47 1-centos chainhook[3748113]: Jun 30 03:23:47.827 INFO Computing ordinal number for Satoshi point 0x60a0570889b360de7d77a70745fa67378ec6f150d13999a5890bafbd76d3b05c (0:0 -> 0:0/0)  (block #2436517)
Jun 30 11:23:47 1-centos chainhook[3748113]: Jun 30 03:23:47.829 INFO Satoshi #1357139334820300 was minted in block #332855 at offset<PHONE_NUMBER> and was transferred 3247 times (progress: 13/15).
Jun 30 11:23:47 1-centos chainhook[3748113]: Jun 30 03:23:47.830 INFO Satoshi #1417376747587355 was minted in block #356950 at offset<PHONE_NUMBER> and was transferred 8442 times (progress: 14/15).
Jun 30 11:23:49 1-centos chainhook[3748113]: thread '<unnamed>' panicked at 'internal error: entered unreachable code', components/chainhook-sdk/src/hord/db/mod.rs:1217:25
Jun 30 11:23:49 1-centos chainhook[3748113]: note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Hope to receive your help.
Also, I performed a db check.

@Fueav I've moved your issue to our new repo https://github.com/hirosystems/hord which is dedicated to ordinals.
I invite you to follow the steps from the README, this new tool is way easier to approach and use, while providing the same features, from an ordinal point of view.
Feel free to re-open issues if you're having some troubles getting started with hord.


Help?: Folder Monitoring doesn't unpack files.

I've mounted a folder for Unpackerr to monitor in my docker compose like this:
- '/mnt/e/Media/Unpack:/Media/unpack:rw'

and in my .conf have it like this:
[[folder]]
path = "/Media/unpack"
delete_files = false
delete_original = false
disable_log = false
move_back = false
extract_isos = false
disable_recursion = false

and according to the logs, Unpackerr is seeing it fine. The screenshot below shows the log, the view of the files within the container's internal mounted path, and the files in the external path:

so it appears, the mount itself is ok, but Unpackerr just never does anything with the files? I've even left it to sit all night while I slept and still never unpacked them.
Unpackerr v0.13.0
Latest image from: ghcr.io/hotio/unpackerr:release

Did I screw something up?

It only looks at things added after it starts, not pre-existing

Install the latest version and rename one of your files. Or make a new folder in your watch folder, and copy your archives there. They'll be extracted.

Thanks guys.
I think I've figured out the issue.
If I do any file manipulation from the Windows side (rename, drop a new file into the folder, move/copy files into subfolders, etc..) Unpackerr ignores (or simply doesn't see it), but if I do the manipulation from within the container itself (Linux obviously) Unpackerr then handles it IF the file is outside of a subfolder.
example:
My mounted folder is /Media/unpack:

(within container) I create a subfolder named 'test', and then copy files into it; nothing happens.
(within container) Renaming files within 'test'; nothing happens.
(within container) Copying or moving files from 'test' up to the root folder; extracts fine.
From Windows; no extraction happens no matter what or where the files/folders are in that mount.

I'm not sure about the subfolder handling, but regarding the lack of action when handling files from the Windows side, that's a shame, because aside from the usual *arr stuff within the docker containers, I also was really hoping by having a folder mounted to Windows I could use it to just drop things into whenever I wanted (from Windows) and also have it do it's thing there as well.

the lack of action when handling files from the Windows side, that's a shame

It's unfortunately the poor interaction between Docker and CIFS. Docker cannot see the changes you're making in Windows. Tuning your network mount may help, but there is nothing unpackerr can do to fix this. Try running it not in docker; might fix it.

Tuning your network mount may help

Can you please expand upon this? I'm not sure what you mean by "tune". :)

It's not a problem I've had to solve, so I don't have much to expand. My recommendation is to put unpackerr closer to your files so it can see them change. All the abstractions from CIFS and docker, and whatever the host storage may be doing are preventing that. Maybe it's a cache? I don't know... https://stackoverflow.com/questions/14920591/how-to-disable-caching-in-cifs-samba-on-client-side-in-linux

I have the same problem, running unpackerr in a docker compose and specifying a UN_FOLDER_0_PATH to a folder containing multiple downloads that are unpackaged/zipped and UN_FOLDER_0_EXTRACT_PATH to an output folder. For some reason it never unpacks it, even if I rename, move, etc. the folders within  UN_FOLDER_0_PATH

I'm no coding wiz, but could it be a bug w/fsnotify? Which I believe is a 3rd party file system watcher?

@SachaTe It only sees new items you add to /downloads/_unsorted and will not see existing items.
@YouveGotMeowxy In addition to fsnotify, when docker is detected the app turns on a poller. It does the equivalent of ls on your watch folder every second looking for new items. In your case, CIFS is not updating Docker and Docker doesn't see the changes to the file system. If @SachaTe also has remote storage for his downloads then it's the same problem.
When you mount a network file system into a docker container: the performance and abilities vary widely. It's not recommended.
For both of you: Run the app not-in-docker and see how well things work. It runs on bsd, mac, windows and linux natively.

When you mount a network file system into a docker container: the performance and abilities vary widely. It's not recommended.

Ahh ok, interesting. Again, I'm somewhat intermediate in my skills in this stuff, so I'm still learning as I go; is a simple volume bind mount considered/treated as a "network" file system? I just mount it in the same usual way as all volume bind mounts:
- '/mnt/e/Media/Unpack:/Media/unpack:rw'

the weird thing (to me) is that if Unpacker is kinda doing a simple ls, and watches the /Media/unpack folder within the container, doing that ls does still show the files if I do them manually inside the container; but for some reason Unpacker doesn't?

Dockering on windows? @YouveGotMeowxy that adds a whole set of several additional layer of complexity and headaches

@YouveGotMeowxy It'd be a lot easier to troubleshoot your problem in Discord chat than here.

@davidnewhall ok, maybe one of these days I'll go on Discord. I'm at work rn though and no time to chat.

I've uncovered the bug with the folder poller. Will try to get it fixed.

See if the unstable docker tag works any better please.

See if the unstable docker tag works any better please.

I'm using the hotio container which has no unstable version; is the only difference between yours and hotio's the UID thing? if so I'll switch over from hotio.

The only "configuration difference" is the "uid thing" that's correct. You can set PUID and PGID on the golift container, but they don't do anything. Use user:  as well. (but don't use user:  on hotio).

ok, just wondering if switching containers would inadvertently screw anything else up. I'll try now.

SUCCESS!! woot!
Anything I drop into the folder on the Windows side extracts:
https://pastebin.com/39RV3yzK
thank you for fixing this :)


Wrong union behaviour

TypeScript Version:  2.3.2
Code
interface Action<Type> {
    type: Type;
}

interface ActionWithPayload<Type, Payload> extends Action<Type> {
    payload: Payload;
}

type MyAction = Action<'type1'> | ActionWithPayload<'type2', number>;

const action: MyAction = {
    type: 'type1',
    payload: 3
};

Expected behavior:
I'd expect to see an error about unexpected payload property. And if I use only one type from union I'll get it:
const action: Action<'type1'> = {
    type: 'type1',
    payload: 3
};

Object literal may only specify known properties, and 'payload' does not exist in type 'Action<"type1">'.

Actual behavior:
There is no any errors

duplicate of https://github.com/Microsoft/TypeScript/issues/10575
looks like you are looking for https://github.com/Microsoft/TypeScript/issues/14094
A workaround would be to define your MyAction as:
type MyAction = ActionWithPayload<'type1', undefined> | ActionWithPayload<'type2', number>;

@mhegazy Yes, exclusive unions would solve this. Thank you.

@mhegazy If I use suggested workaround I can't do anymore:
const action: MyAction = {
    type: 'type1'
};

I have to do:
const action: MyAction = {
    type: 'type1',
    payload: undefined
};

that is correct. consider setting payload?: undefined instead:
type MyAction = { type: "type1", payload?: undefined } | { type: "type2", payload: number };

Cool! This works.

This works like a charm.  Just use it as discussed here: https://github.com/DefinitelyTyped/DefinitelyTyped/pull/16416#issuecomment-301048853  Thanks @mhegazy

Automatically closing this issue for housekeeping purposes. The issue labels indicate that it is unactionable at the moment or has already been addressed.


no outgoing audio after ua_hold_answer

While testing my baresip Android UA, I noticed that baresip does not
send out audio when it answers second incoming call with ua_hold_answer().
In more detail, baresip has answered first incoming call and the call
works fine:
06-04 15:16:59.089   740   756 D Baresip : ua event (CALL_INCOMING<EMAIL_ADDRESS>06-04 15:17:02.705   740   757 D Baresip : answering call from<EMAIL_ADDRESS>with 200
06-04 15:17:02.705   740   757 D Baresip : audio: Set audio decoder: opus 48000Hz 2ch
06-04 15:17:02.717   740   757 D Baresip : audio: player started with sample format S16LE
06-04 15:17:02.717   740   757 D Baresip : audio: Set audio encoder: opus 48000Hz 2ch
06-04 15:17:02.729   740   757 D Baresip : audio: source started with sample format S16LE
06-04 15:17:02.729   740   757 D Baresip : audio tx pipeline:    opensles ---> opus
06-04 15:17:02.729   740   757 D Baresip : audio rx pipeline:    opensles <--- opus
06-04 15:17:02.976   740   756 D Baresip : ua event (CALL_ESTABLISHED<EMAIL_ADDRESS>06-04 15:17:03.253   740   757 D Baresip : stream: incoming rtp for 'audio' established, receiving from <IP_ADDRESS>:33088
Then second call comes in and baresip responds to that with
ua_hold_answer().  As result, the first call is placed on hold and the
second is answered:
06-04 15:17:05.047   740   756 D Baresip : ua event (CALL_INCOMING<EMAIL_ADDRESS>06-04 15:17:11.121   740   757 D Baresip<EMAIL_ADDRESS>putting call with<EMAIL_ADDRESS>on hold
06-04 15:17:11.121   740   757 D Baresip : call: hold<EMAIL_ADDRESS>06-04 15:17:11.122   740   757 D Baresip : answering call from<EMAIL_ADDRESS>with 200
06-04 15:17:11.122   740   757 D Baresip : audio: Set audio decoder: opus 48000Hz 2ch
06-04 15:17:11.137   740   757 D Baresip : audio: player started with sample format S16LE
06-04 15:17:11.137   740   757 D Baresip : audio: Set audio encoder: opus 48000Hz 2ch
06-04 15:17:11.147   740   757 D Baresip : audio: source started with sample format S16LE
06-04 15:17:11.147   740   757 D Baresip : audio tx pipeline:    opensles ---> opus
06-04 15:17:11.147   740   757 D Baresip : audio rx pipeline:    opensles <--- opus
06-04 15:17:11.197   740   756 D Baresip : ua event (CALL_ESTABLISHED<EMAIL_ADDRESS>06-04 15:17:11.466   740   757 D Baresip : stream: incoming rtp for 'audio' established, receiving from <IP_ADDRESS>:33130
The only problem is that baresip is not sending any audio out to the
second caller.  The same happens, if I first place manually the first
call on hold using call_hold() and then answer the second call using
call_answer().
Any pointers on how to solve the problem?

Answering to second incoming call works fine in Linux baresip.  I have compared Linux menu module behavior to my Android baresip behavior and have not been able to find any differences.  Also log messages are identical.
Where should I add more debug in order to figure out if Android baresip is sending audio to wrong destination or if it is not sending out anything?  Currently there is no log message for outgoing audio similar to "stream: incoming rtp for 'audio' established, receiving from <IP_ADDRESS>:33130".

mk6032 writes:

pcap a test call on each and compare differences between the two in
wireshark; 'tcpdump -s0 -n -i any -w /path/to/output.pcap'. If the
android is using wifi, I suspect your wifi router may have a SIP ALG
aka helper enabled which can interfere by rewriting the contact
headers and/or sdp addresses. If both linux and android are on
192.168.43.xxx, you may also have visibility at the gateway. For
example in pfsense diagnostics, packet capture.

OK, I'll check if there is a network capture application available for
Android.  My test setup is like this:
Android Phone running baresip and acting as Wifi hotspot.  A linux
host running two baresip instances and connecting to network via the
Android hotspot.  All three UAs are using IP address from the same
192.168.43.x network provided by the Android hotspot.
So there is no network level connectivity issues and separate calls
between all three UAs work fine. The problem comes when ua_hold_answer
puts the first Linux baresip to hold and calls the second one.
-- Juha

I was not able to find a wireshark style app for Android (which is natural due to security reasons), but I run wireshark on the Linux host, where the two Linux baresips are running.  After ua_hold_answer() there was not udp packets arriving from Android baresip to the Linux host.

If your android is rooted you could use something like https://www.androidtcpdump.com/ . As you've stated with "After ua_hold_answer() there was not udp packets arriving from Android baresip to the Linux host." -- You're going to need to packet capture all endpoints involved in the call flow (and likely all interfaces of your android) to trace out where the packets are going. RTP (audio packets) will only be visible between UA to UA unless baresip is acting as a b2bua. I'm not sure how (if possible) you could get the same level of detail just through baresip logs.

mk6032 writes:

If your android is rooted you could use something like
https://www.androidtcpdump.com/ .

Rooting the Android device is out of question.
By running wireshark on the Linux host where the two other baresips are
running, showed that after ua_hold_answer, no rtp packets arrived there
from the Android baresip.  Since the Android device only has one IP
address and knows only about one other IP address (that of the Linux
host), it is highly likely that after ua_hold_answer, Android baresip
does not send audio to anywhere.
I would like to add bebug statements somewhere in baresip code that
would reveal why no audio is sent out.  Perhaps it thinks that the
second incoming call (like the first) is on hold too.
-- Juha

There is API function "int  audio_debug(struct re_printf *pf, const struct audio *a)".  How to use it so that it prints the debug info to a string buffer?

you can use %H for that:
re_printf("%H\n", audio_debug, a);

do you know if there is any audio samples coming from the audio driver?
while the call is ongoing, you can also press A to see the audio debug.

I justed tested on android with two different audio drivers. Using the audio
driver aufile the call hold and answer scenario works, there is audio sent.
Using the opensles module it does not work, i.e. no audio sent.
output from A command: (using opensles):
--- Audio stream ---
 tx:   encode: opus 48000Hz/2ch ptime=20ms S16LE
       aubuf: wish_sz=3840 cur_sz=0 filling=1 (cur 0.00ms, max 600.00ms, or 0, ur 0)
       source: S16LE
       time = 0.000 sec
 rx:   decode: opus 48000Hz/2ch S16LE
       ptime=20ms pt=96
       aubuf: wish_sz=3840 cur_sz=23040 filling=0 (cur 120.00ms, max 160.00ms, or 12, ur 42)
       player: S16LE
       n_discard:0
       time = 41.939 sec

time = 0.0 sec means that the audio stream was never started.

Alfred E. Heggestad writes:

I justed tested on android with two different audio drivers. Using the audio
driver aufile the call hold and answer scenario works, there is audio sent.
Using the opensles module it does not work, i.e. no audio sent.
output from A command: (using opensles):
--- Audio stream ---
 tx:   encode: opus 48000Hz/2ch ptime=20ms S16LE
       aubuf: wish_sz=3840 cur_sz=0 filling=1 (cur 0.00ms, max 600.00ms, or 0, ur 0)
       source: S16LE
       time = 0.000 sec
 rx:   decode: opus 48000Hz/2ch S16LE
       ptime=20ms pt=96
       aubuf: wish_sz=3840 cur_sz=23040 filling=0 (cur 120.00ms, max 160.00ms, or 12, ur 42)
       player: S16LE
       n_discard:0
       time = 41.939 sec

time = 0.0 sec means that the audio stream was never started.

Now I too was able to execute debug_audio command in Android app and after
ua_hold_answer it produced same kind of result (below).
Is there any hope to get this fixed or should I just turn off in Android
app the possibility to hold a call and make or receive a new one?
-- Juha

06-09 09:19:39.036 20482 20482 D Baresip : processing command 'audio_debug'
06-09 09:19:39.037 20482 20503 D Baresip : Baresip audio debug '
06-09 09:19:39.037 20482 20503 D Baresip : --- Audio stream ---
06-09 09:19:39.037 20482 20503 D Baresip :  tx:   encode: opus 48000Hz/2ch ptime=20ms S16LE
06-09 09:19:39.037 20482 20503 D Baresip :        aubuf: wish_sz=3840 cur_sz=0
06-09 09:19:39.037 20482 20503 D Baresip :  filling=1 (cur 0.00ms, max 600.00ms, or 0, ur 0)
06-09 09:19:39.037 20482 20503 D Baresip :        source: S16LE
06-09 09:19:39.037 20482 20503 D Baresip :        time = 0.000 sec
06-09 09:19:39.037 20482 20503 D Baresip :  rx:   decode: opus 48000Hz/2ch S16LE
06-09 09:19:39.037 20482 20503 D Baresip :        ptime=20ms pt=97
06-09 09:19:39.037 20482 20503 D Baresip :        aubuf: wish_sz=3840 cur_sz=5760 filling=0 (cur 30.00ms, max 160.00ms, or 0, ur 2)
06-09 09:19:39.037 20482 20503 D Baresip :        player: S16LE
06-09 09:19:39.037 20482 20503 D Baresip :        n_discard:0
06-09 09:19:39.037 20482 20503 D Baresip :        time = 8.640 sec
06-09 09:19:39.037 20482 20503 D Baresip :  audio tx pipeline:    opensles ---> opus
06-09 09:19:39.037 20482 20503 D Baresip :  audio rx pipeline:    opensles <--- opus
06-09 09:19:39.037 20482 20503 D Baresip :  audio dir=sendrecv pt_enc=97
06-09 09:19:39.037 20482 20503 D Baresip :  local: <IP_ADDRESS>:29664, remote: <IP_ADDRESS>:31760/<IP_ADDRESS>:31761
06-09 09:19:39.037 20482 20503 D Baresip : RTP debug:
06-09 09:19:39.037 20482 20503 D Baresip :  Encode: seq=26442 ssrc=0x9466b47
06-09 09:19:39.037 20482 20503 D Baresip : ----- RTCP Session: -----
06-09 09:19:39.037 20482 20503 D Baresip<EMAIL_ADDRESS>SSRC=0x09466b47/155609927 rx=48000Hz
06-09 09:19:39.037 20482 20503 D Baresip :   member 0xc215e200: lost=0 Jitter=0.0ms RTT=0.0ms
06-09 09:19:39.037 20482 20503 D Baresip :                  IP=<IP_ADDRESS>:31760 psent=248 rcvd=433
06-09 09:19:39.037 20482 20503 D Baresip :   TX: packets=0, octets=0
06-09 09:19:39.037 20482 20503 D Baresip : --- jitter buffer debug---
06-09 09:19:39.037 20482 20503 D Baresip :  running=1 min=5 cur=5 max=10 [frames]
06-09 09:19:39.037 20482 20503 D Baresip :  seq_put=10087
06-09 09:19:39.037 20482 20503 D Baresip :  Stat: put=433 get=433 oos=0 dup=0 late=0 or=0 ur=5 flush=1       put/get_ratio=100% lost=5 (1.15%)

my first thought about this, is that the opensles driver does not handle/support
2 or more simultaneous sessions. I cannot confirm if this is true or not. When opening
the 2nd call there is no warning/errors from opensles, so you would think that it
should be working... Perhaps there are some warnings in the android system log ?
other audio systems such as Alsa and OSX Coreaudio can handle multiple sessions.
regarding the call hold feature in baresip, when a call is locally placed on hold it
will just stop sending/receiving on that RTP stream. The audio drivers are still active
but the recorded audio samples are not sent out. It might be possible to also
suspend the audio recorder when a call is placed on hold, and then resume the audio
recorder when the call is resumed. Not sure if this is desirable on not ... :)
Alfred

Alfred E. Heggestad writes:

my first thought about this, is that the opensles driver does not
handle/support 2 or more simultaneous sessions. I cannot confirm if
this is true or not. When opening the 2nd call there is no
warning/errors from opensles, so you would think that it should be
working... Perhaps there are some warnings in the android system log ?

Below is 'adb logcat' from the point where the second call is answered
and the first one is placed on hold.  These two might have something to
do with the issue:
06-09 19:22:25.431  3600  3857 E APM_AudioPolicyManager: startInput(206) failed: other input 198 already started
06-09 19:22:25.431 21254 21254 E AudioRecord: start() status -38
The other errors (COMPRESS_VOIP_ENABLED and ACDB -> Not correctly
initialized!) are produced even by simple two party calls.

regarding the call hold feature in baresip, when a call is locally
placed on hold it will just stop sending/receiving on that RTP
stream. The audio drivers are still active but the recorded audio
samples are not sent out. It might be possible to also suspend the
audio recorder when a call is placed on hold, and then resume the
audio recorder when the call is resumed. Not sure if this is desirable
on not ... :)

If there is no major drawbacks, it would be worth to try.
-- Juha
=======================================================================
06-09 19:22:25.411 21254 21254 I Baresip : UA<PHONE_NUMBER> accepting incoming call<PHONE_NUMBER>
06-09 19:22:25.411 21254 21254 D Baresip : answering call<PHONE_NUMBER>/
06-09 19:22:25.414 21254 21272 D Baresip<EMAIL_ADDRESS>putting call with<EMAIL_ADDRESS>on hold
06-09 19:22:25.414 21254 21272 D Baresip : call: hold<EMAIL_ADDRESS>06-09 19:22:25.415 21254 21272 D Baresip : answering call from<EMAIL_ADDRESS>with 200
06-09 19:22:25.415 21254 21272 D Baresip : audio: Set audio decoder: opus 48000Hz 2ch
06-09 19:22:25.419 21254 21254 I libOpenSLES: Emulating old channel mask behavior (ignoring positional mask 0x3, using default mask 0x3 based on channel count of 2)
06-09 19:22:25.421 21254 21254 D AudioTrack: Client defaulted notificationFrames to 962 for frameCount 1924
06-09 19:22:25.422  3600  3600 D APM_AudioPolicyManager: startOutput() output 13, stream 3, session 825
06-09 19:22:25.423 21254 21254 I libOpenSLES: Emulating old channel mask behavior (ignoring positional mask 0x3, using default mask 0xc based on channel count of 2)
06-09 19:22:25.423 21254 21272 D Baresip : audio: player started with sample format S16LE
06-09 19:22:25.423 21254 21272 D Baresip : audio: Set audio encoder: opus 48000Hz 2ch
06-09 19:22:25.423 21254 21272 D Baresip : zrtp: zrtp_signaling_hash_set: s
06-09 19:22:25.423 21254 21272 D Baresip : tatus = 18
06-09 19:22:25.423 21254 21272 D Baresip :  [ zrtp engine]: ERROR! Can't start Stream ID=2 from SECURE state.
06-09 19:22:25.423 21254 21272 D Baresip : zrtp: zrtp_stream_start: status
06-09 19:22:25.423 21254 21272 D Baresip :  = 18
06-09 19:22:25.424  3600  3857 D audio_hw_primary: adev_open_input_stream: enter: sample_rate(48000) channel_mask(0xc) devices(0x80000004)        stream_handle(0xb5f35980) io_handle(206)
06-09 19:22:25.426  3600  3708 I AudioFlinger: AudioFlinger's thread 0xb4803a00 ready to run
06-09 19:22:25.427  3600  3708 D audio_hw_primary: in_standby: enter: stream (0xb5f35980) usecase(7: audio-record)
06-09 19:22:25.428  3600  3708 D audio_hw_primary: in_standby: enter: stream (0xb5f35980) usecase(7: audio-record)
06-09 19:22:25.429  3600 21565 W AudioFlinger: createRecordTrack_l(): mismatch between requested flags (00000005) and input flags (00000001)
06-09 19:22:25.431 21254 21254 I AudioRecord: AUDIO_INPUT_FLAG_FAST successful; frameCount 0
06-09 19:22:25.431  3600  3857 E APM_AudioPolicyManager: startInput(206) failed: other input 198 already started
06-09 19:22:25.431 21254 21254 E AudioRecord: start() status -38
06-09 19:22:25.432 21254 21272 D Baresip : audio: source started with sample format S16LE
06-09 19:22:25.432 21254 21272 D Baresip : audio tx pipeline:    opensles ---> opus
06-09 19:22:25.432 21254 21272 D Baresip : audio rx pipeline:    opensles <---
06-09 19:22:25.432 21254 21272 D Baresip :  opus
06-09 19:22:25.443  3600  3862 I MotSpeakerWrapper: EFFECT_CMD_SET_VOLUME: 0.111558, 0.111558 on ID 825 (Music)
06-09 19:22:25.443  3600  3862 I MotSpeakerWrapper: EFFECT_CMD_SET_VOLUME: 0.111558, 0.111558 on ID 825 (Music Offload)
06-09 19:22:25.491 21254 21271 D Baresip : ua event (CALL_ESTABLISHED<EMAIL_ADDRESS>06-09 19:22:25.492 21254 21271 D Baresip : sending ua/call<PHONE_NUMBER>/2475617056 event call established
06-09 19:22:25.492 21254 21271 D Baresip : Handling event call established for<EMAIL_ADDRESS>06-09 19:22:25.492 21254 21271 D Baresip : Found AoR at index 2
06-09 19:22:25.492 21254 21271 D Baresip : Inbound call<PHONE_NUMBER> established
06-09 19:22:25.493 21254 21272 D Baresip<EMAIL_ADDRESS>Call established<EMAIL_ADDRESS>06-09 19:22:25.493  4332  6128 D AudioService: setModeInt(mode=3, pid=21254, caller=com.tutpro.baresip)
06-09 19:22:25.494  3600 21565 D audio_hw_primary: adev_set_mode: mode 3
06-09 19:22:25.494  3600 21565 D APM_AudioPolicyManager: setPhoneState() state 3
06-09 19:22:25.503  3600  3862 I MotSpeakerWrapper: EFFECT_CMD_SET_VOLUME: 0.000000, 0.000000 on ID 801 (Music)
06-09 19:22:25.503  3600  3862 I MotSpeakerWrapper: EFFECT_CMD_SET_VOLUME: 0.000000, 0.000000 on ID 801 (Music Offload)
06-09 19:22:25.503  3600  3862 I MotSpeakerWrapper: EFFECT_CMD_SET_VOLUME: 0.000000, 0.000000 on ID 825 (Music)
06-09 19:22:25.503  3600  3862 I MotSpeakerWrapper: EFFECT_CMD_SET_VOLUME: 0.000000, 0.000000 on ID 825 (Music Offload)
06-09 19:22:25.603  3600  3862 D audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: routing=1
06-09 19:22:25.609  3600  3862 E audio_hw_primary: voice_extn_compress_voip_is_active: COMPRESS_VOIP_ENABLED is not defined
06-09 19:22:25.609  3600  3862 V msm8916_platform: platform_get_output_snd_device: enter: output devices(0x1)
06-09 19:22:25.609  3600  3862 V msm8916_platform: platform_get_output_snd_device: exit: snd_device(voice-handset)
06-09 19:22:25.609  3600  3862 E audio_hw_primary: voice_extn_compress_voip_is_active: COMPRESS_VOIP_ENABLED is not defined
06-09 19:22:25.609  3600  3862 V msm8916_platform: platform_get_input_snd_device: enter: out_device(0x1) in_device(0x4)
06-09 19:22:25.609  3600  3862 E msm8916_platform: voice_extn_compress_voip_is_active: COMPRESS_VOIP_ENABLED is not defined
06-09 19:22:25.609  3600  3862 V msm8916_platform: platform_get_input_snd_device: exit: in_snd_device(handset-stereo-dmic-ef)
06-09 19:22:25.609  3600  3862 D audio_hw_primary: select_devices: out_snd_device(8: voice-handset) in_snd_device(0: )
06-09 19:22:25.616  3600  3862 D hardware_info: hw_info_append_hw_type : device_name = speaker
06-09 19:22:25.685  3600  3862 D hardware_info: hw_info_append_hw_type : device_name = voice-handset
06-09 19:22:25.703  3600  3862 W audio_hw_utils: audio_extn_utils_update_stream_app_type_cfg: App type could not be selected. Falling back to default
06-09 19:22:25.703  3600  3862 I audio_hw_primary: select_devices Selected apptype: 69936
06-09 19:22:25.703  3600  3862 V msm8916_platform: platform_get_output_snd_device: enter: output devices(0x1)
06-09 19:22:25.703  3600  3862 V msm8916_platform: platform_get_output_snd_device: exit: snd_device(voice-handset)
06-09 19:22:25.703  3600  3862 V msm8916_platform: platform_send_audio_calibration: sending audio calibration for snd_device(8) acdb_id(7)
06-09 19:22:25.703  3600  3862 E ACDB-LOADER: ACDB -> Not correctly initialized!
06-09 19:22:25.704  3600  3862 I audio_hw_utils: audio_extn_utils_send_app_type_cfg app_type 69936, acdb_dev_id 7, sample_rate 48000
06-09 19:22:25.713  3600  3862 D audio_hw_primary: select_devices: done
06-09 19:22:25.713  3600  3862 D audio_mot_cutback: earpiece status 1 sent to cutback
06-09 19:22:25.721  3600  3770 E voice   : voice_extn_compress_voip_set_volume: COMPRESS_VOIP_ENABLED is not defined
06-09 19:22:25.721  3600 21565 D APM_AudioPolicyManager: handleIncallSonification() stream 2 starting 1 device 1 stateChange 1, refCount 0
06-09 19:22:25.721  3600 21565 D APM_AudioPolicyManager: handleIncallSonification() stream 4 starting 1 device 1 stateChange 1, refCount 0
06-09 19:22:25.721  3600 21565 D APM_AudioPolicyManager: handleIncallSonification() stream 5 starting 1 device 1 stateChange 1, refCount 0
06-09 19:22:25.738  5873  5986 I vol.Events: writeEvent level_changed STREAM_SYSTEM 7
06-09 19:22:25.741  3600  3771 W AudioFlinger::EffectModule: EffectModule 0xb5f45c80 destructor called with unreleased interface
06-09 19:22:25.742  3600  3771 W AudioFlinger::EffectHandle: disconnect Effect handle 0xb47f5580 disconnected after thread destruction
06-09 19:22:25.742  3600  3771 D APM_AudioPolicyManager: stopOutput() output 13, stream 3, session 817
06-09 19:22:25.745  5873  5986 I vol.Events: writeEvent level_changed STREAM_RING 7
06-09 19:22:25.750 21254 21272 D Baresip : main: long async blocking: 256>100 ms (h=0x93232dec arg=0x939e6200)
06-09 19:22:25.750 21254 21272 D Baresip :
06-09 19:22:25.751  4332  5805 D AudioSystem-JNI: setForceUse (0,0)
06-09 19:22:25.751  3600 21565 D APM_AudioPolicyManager: setForceUse() usage 0, config 0, mPhoneState 3
06-09 19:22:25.860  3600  3862 D audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: routing=1
06-09 19:22:25.866  3600  3862 E audio_hw_primary: voice_extn_compress_voip_is_active: COMPRESS_VOIP_ENABLED is not defined
06-09 19:22:25.866  3600  3862 V msm8916_platform: platform_get_output_snd_device: enter: output devices(0x1)
06-09 19:22:25.866  3600  3862 V msm8916_platform: platform_get_output_snd_device: exit: snd_device(voice-handset)
06-09 19:22:25.870  5873  5986 I vol.Events: writeEvent level_changed STREAM_MUSIC 11
06-09 19:22:25.906 21254 21272 D Baresip :
06-09 19:22:25.906 21254 21272 D Baresip : main: long async blocking:
06-09 19:22:25.906 21254 21272 D Baresip : 160
06-09 19:22:25.906 21254 21272 D Baresip : >
06-09 19:22:25.906 21254 21272 D Baresip : 100
06-09 19:22:25.907 21254 21272 D Baresip :  ms (h=
06-09 19:22:25.907 21254 21272 D Baresip : 0x
06-09 19:22:25.907 21254 21272 D Baresip : 9322ecac
06-09 19:22:25.907 21254 21272 D Baresip :  arg=
06-09 19:22:25.907 21254 21272 D Baresip : 0x
06-09 19:22:25.907 21254 21272 D Baresip : 93924b20
06-09 19:22:25.907 21254 21272 D Baresip : )
06-09 19:22:25.907 21254 21272 D Baresip :
06-09 19:22:26.044 21254 21272 D Baresip :
06-09 19:22:26.044 21254 21272 D Baresip : main: long async blocking:
06-09 19:22:26.044 21254 21272 D Baresip : 136
06-09 19:22:26.044 21254 21272 D Baresip : >
06-09 19:22:26.044 21254 21272 D Baresip : 100
06-09 19:22:26.044 21254 21272 D Baresip :  ms (h=
06-09 19:22:26.045 21254 21272 D Baresip : 0x
06-09 19:22:26.045 21254 21272 D Baresip : 9322ecac
06-09 19:22:26.045 21254 21272 D Baresip :  arg=
06-09 19:22:26.045 21254 21272 D Baresip : 0x
06-09 19:22:26.045 21254 21272 D Baresip : 93924b20
06-09 19:22:26.045 21254 21272 D Baresip : )
06-09 19:22:26.045 21254 21272 D Baresip :
06-09 19:22:26.046 21254 21272 D Baresip : zrtp: secure session with verified remote peer b10de26bba53f3c308c47f19
06-09 19:22:26.046 21254 21271 D Baresip : ua event (CALL_MENC) 2,b10de26bba53f3c308c47f19
06-09 19:22:26.047 21254 21271 D Baresip : sending ua/call<PHONE_NUMBER>/2475617056 event call verified,b10de26bba53f3c308c47f19
06-09 19:22:26.047 21254 21271 D Baresip : Handling event call verified for<EMAIL_ADDRESS>06-09 19:22:26.047 21254 21271 D Baresip : Found AoR at index 2
06-09 19:22:26.053 21254 21272 D Baresip : stream: incoming rtp for 'audio' established, receiving from <IP_ADDRESS>:31814
06-09 19:22:26.390   347   347 I SFPerfTracer:      triggers: (rate: 50:3601) (compose: 5:97) (post: 1:335) (render: 13:532) (52:53499 frames) (53:77936)
06-09 19:22:26.391   347   347 D SFPerfTracer:        layers: (3:8) (StatusBar (0xa9ea4400): 0:19909) (com.android.systemui.ImageWallpaper (0xa9e9a400): 0:10370)* (DimLayerController/Stack=0 (0xa9e9cc00): 0:126)* (animation background stackId=1 (0xa9ea3000): 0:32)* (Sprite (0xa9ea5800): 0:8)* (NavigationBar (0xa9e99000): 0:277) (com.google.android.googlequicksearchbox/com.google.android.launcher.GEL (0xa9e9b800): 0:81)- (com.tutpro.baresip/com.tutpro.baresip.MainActivity (0xa9ea6c00): 53:156)

Just a detail that I may have not mentioned earlier: if I hangup the
second call, the first one which was on hold, leaves from hold and works
fine.
-- Juha

you could implement your own call hold/resume logic in your app.
audio.c has this function:
int audio_set_source(struct audio *au, const char *mod, const char *device)

Sample pseudo code:
/* Hold */
audio_set_source(au, NULL, NULL);
call_hold(call, true);
call_answer(call2);

/* Resume */
call_hold(call, false);
audio_set_source(au, "opensles", "nil");

Alfred,
I gave your suggestion a try.  First call comes in
(ua/call<PHONE_NUMBER>/2475609696 event call incoming)
and I answer it:
ua_answer(ua, call);
Then second call comes in
(ua/call<PHONE_NUMBER>/2475616416 event call incoming)
and I manually put the first call on hold
(holding call<PHONE_NUMBER>)
audio_set_source(call_audio(call), NULL, NULL);
call_hold(call, true);
Then I answer the second call:
(answering ua/call<PHONE_NUMBER>/2475616416)
ua_answer(ua, call);
Unfortunately, Android baresip does not send any audio out, and I still
get after the second ua_answer() to the log:
06-09 21:31:48.179  3600  3600 E APM_AudioPolicyManager: startInput(294) failed: other input 286 already started
06-09 21:31:48.180 14683 14683 E AudioRecord: start() status -38
-- Juha

/* Hold */
audio_set_source(au, NULL, NULL);
call_hold(call, true);
call_answer(call2);

/* Resume */
call_hold(call, false);
audio_set_source(au, "opensles", "nil");

I made more tests and these error messages only come when I answer the
second incoming call:

06-09 21:31:48.179  3600  3600 E APM_AudioPolicyManager: startInput(294) failed: other input 286 already started
06-09 21:31:48.180 14683 14683 E AudioRecord: start() status -38

Before answering, I have put the first call on hold like this:
audio_set_source(call_audio(call), NULL, NULL);
call_hold(call, true);

My conclusion of this is that setting audio source to NULL does not
properly release the recorder.
I'm able to receive a call, hang it up, and receive another call.  What
is the difference regarding recorded handling that happens at hangup
compared to what happens at setting audio source to NULL?
If we could make hold actions to treat audio recorder the same way as
hangup actions, then I would assume that hold would work on Android too.
-- Juha

Alfred E. Heggestad writes:

can you please try again with commit
8d046992b9aa216f02679392a8f9512bf5d9893e ?

I did, but unfortunately no change.

you can also enable debug loglevel, and check if these lines are present
in your log or not:
	debug("opensles: opening recorder %uHz, %uchannels\n",
			prm->srate, prm->ch);

I did this first.  When first call comes in, I see in logs:
06-10 14:50:25.405 27194 27216 D Baresip : answering call from<EMAIL_ADDRESS>with 200
06-10 14:50:25.407 27194 27216 D Baresip : audio: Set audio decoder: opus 48000Hz 2ch
06-10 14:50:25.411 27194 27216 D Baresip : audio: player started with sample format S16LE
06-10 14:50:25.412 27194 27216 D Baresip : audio: Set audio encoder: opus 48000Hz 2ch
06-10 14:50:25.413 27194 27216 D Baresip : opensles: opening recorder 48000Hz, 2channels
06-10 14:50:25.428 27194 27216 D Baresip : audio: source started with sample format S16LE
Then when I put this call on hold (audio_set_source(call_audio(call), NULL, NULL);
call_hold(call, true);) I get:
06-10 14:51:00.307 27194 27216 D Baresip : call: hold<EMAIL_ADDRESS>06-10 14:51:00.320 27194 27216 D Baresip : opensles: opening recorder 48000Hz, 2channels
06-10 14:51:00.342 27194 27216 D Baresip : audio: source started with sample format S16LE
Is this as it should be?
And when I answer the second call:
06-10 14:51:38.582 27194 27216 D Baresip : answering call from<EMAIL_ADDRESS>with 200
06-10 14:51:38.585 27194 27216 D Baresip : audio: Set audio decoder: opus 48000Hz 2ch
06-10 14:51:38.598 27194 27216 D Baresip : audio: player started with sample format S16LE
06-10 14:51:38.598 27194 27216 D Baresip : audio: Set audio encoder: opus 48000Hz 2ch
06-10 14:51:38.600 27194 27216 D Baresip : opensles: opening recorder 48000Hz, 2channels
06-10 14:51:38.620 27194 27216 D Baresip : audio: source started with sample format S16LE
i.e. the same as when I answered the first call.
-- Juha

Alfred E. Heggestad writes:

you can also add a debug logline in the opensles destructor to check if the
audio source is really destroyed:
static void ausrc_destructor(void *arg)
{
	struct ausrc_st *st = arg;

	if (st->recObject != NULL) {
		SLuint32 state;

		if (SL_RESULT_SUCCESS ==
		    (*st->recObject)->GetState(st->recObject, &state) &&
		    SL_OBJECT_STATE_UNREALIZED != state) {
			(*st->recObject)->Destroy(st->recObject);
		}
	}

	st->bufferId = 0;
	for (int i=0; i<N_REC_QUEUE_BUFFERS; i++) {
		mem_deref(st->sampv[i]);
	}
}

I added after the if-statement:
if (st->recObject != NULL)
	info("opensles: st->recObject is NOT null\n");
else
	info("opensles: st->recObject is null\n");

and when I put the first call on hold, I get:
06-10 15:08:26.430 28406 28406 D Baresip : holding call<PHONE_NUMBER>
06-10 15:08:26.509 28406 28432 D Baresip : opensles: st->recObject is NOT null
06-10 15:08:26.509 28406 28432 D Baresip : call: hold<EMAIL_ADDRESS>06-10 15:08:26.529 28406 28432 D Baresip : opensles: opening recorder 48000Hz, 2channels
06-10 15:08:26.549 28406 28432 D Baresip : audio: source started with sample format S16LE
So looks like audio source is not destroyed.  But I get the same even
when I hangup the call:
06-10 15:10:23.765 28406 28432 D Baresip : call: terminate call '1f2e9ec269aee749' with<EMAIL_ADDRESS>06-10 15:10:23.840 28406 28432 D Baresip : opensles: st->recObject is NOT null
06-10 15:10:23.847 28406 28406 D Baresip : ua event (CALL_CLOSED) OK
Perhaps it takes some time before the destruction is completed?
-- Juha

juha-h writes:

Perhaps it takes some time before the destruction is completed?

That cannot be it, because there is long delay before second call comes
in after I have put the first on hold.
-- Juha

I also added some extra debug logging in master ..
you could try to pull latest master HEAD so we can see what is going on :)

Alfred E. Heggestad writes:

I also added some extra debug logging in master ..
you could try to pull latest master HEAD so we can see what is going
on :)

First call comes in:
06-10 15:58:10.415 30692 30717 D Baresip : call: alloc with params laddr=<IP_ADDRESS>, af=AF_INET, use_rtp=1
06-10 15:58:10.420 30692 30717 D Baresip : call: use_video=0
06-10 15:58:10.422 30692 30716 D Baresip : ua event (CALL_INCOMING<EMAIL_ADDRESS>06-10 15:58:10.426 30692 30717 D Baresip : opensles: opening player 8000Hz, 1channels
06-10 15:58:16.904 30692 30717 D Baresip : answering call from<EMAIL_ADDRESS>with 200
06-10 15:58:16.904 30692 30717 D Baresip : call: update media
06-10 15:58:16.904 30692 30717 D Baresip : audio: Set audio decoder: opus 48000Hz 2ch
06-10 15:58:16.906 30692 30717 D Baresip : audio: start
06-10 15:58:16.906 30692 30717 D Baresip : opensles: opening player 48000Hz, 2channels
06-10 15:58:16.919 30692 30717 D Baresip : audio: player started with sample format S16LE
06-10 15:58:16.919 30692 30717 D Baresip : audio: Set audio encoder: opus 48000Hz 2ch
06-10 15:58:16.919 30692 30717 D Baresip : opus: encoder fmtp (stereo=1;sprop-stereo=1;maxaveragebitrate=28000;cbr=0;useinbandfec=1)
06-10 15:58:16.919 30692 30717 D Baresip : audio: start
06-10 15:58:16.919 30692 30717 D Baresip : opensles: opening recorder 48000Hz, 2channels
06-10 15:58:16.932 30692 30717 D Baresip : audio: source started with sample format S16LE
06-10 15:58:16.932 30692 30717 D Baresip : audio tx pipeline:    opensles ---> opus
06-10 15:58:16.932 30692 30717 D Baresip : audio rx pipeline:    opensles <--- opus
06-10 15:58:16.967 30692 30717 D Baresip : call: stream start (active=1)
06-10 15:58:16.967 30692 30717 D Baresip : opus: encoder fmtp (stereo=1;sprop-stereo=1;maxaveragebitrate=28000;cbr=0;useinbandfec=1)
06-10 15:58:16.968 30692 30716 D Baresip : ua event (CALL_ESTABLISHED<EMAIL_ADDRESS>06-10 15:58:16.969 30692 30717 D Baresip : audio: start
Holding first call:
06-10 15:58:28.664 30692 30717 D Baresip : call: hold<EMAIL_ADDRESS>06-10 15:58:28.664 30692 30717 D Baresip : call: modify
06-10 15:58:28.921 30692 30717 D Baresip : call: got SDP answer (699 bytes)
06-10 15:58:28.921 30692 30717 D Baresip : call: update media
06-10 15:58:28.921 30692 30717 D Baresip : opus: encoder fmtp (stereo=1;sprop-stereo=1;maxaveragebitrate=28000;cbr=0;useinbandfec=1)
06-10 15:58:28.921 30692 30717 D Baresip : audio: start
06-10 15:58:28.921 30692 30717 D Baresip : opensles: opening recorder 48000Hz, 2channels
06-10 15:58:28.950 30692 30717 D Baresip : audio: source started with sample format S16LE
Answering second call:
06-10 15:59:19.505 30692 30717 D Baresip : call: alloc with params laddr=<IP_ADDRESS>, af=AF_INET, use_rtp=1
06-10 15:59:19.510 30692 30716 D Baresip : ua event (CALL_INCOMING<EMAIL_ADDRESS>06-10 15:59:19.512 30692 30717 D Baresip : call: use_video=0
06-10 15:59:19.521 30692 30717 D Baresip : opensles: opening player 8000Hz, 1channels
06-10 15:59:23.910 30692 30716 D Baresip : ua event (CALL_RTCP) audio
06-10 15:59:24.158 30692 30717 D Baresip : answering call from<EMAIL_ADDRESS>with 200
06-10 15:59:24.158 30692 30717 D Baresip : call: update media
06-10 15:59:24.159 30692 30717 D Baresip : audio: Set audio decoder: opus 48000Hz 2ch
06-10 15:59:24.160 30692 30717 D Baresip : audio: start
06-10 15:59:24.160 30692 30717 D Baresip : opensles: opening player 48000Hz, 2channels
06-10 15:59:24.167 30692 30717 D Baresip : audio: player started with sample format S16LE
06-10 15:59:24.167 30692 30717 D Baresip : audio: Set audio encoder: opus 48000Hz 2ch
06-10 15:59:24.167 30692 30717 D Baresip : opus: encoder fmtp (stereo=1;sprop-stereo=1;maxaveragebitrate=28000;cbr=0;useinbandfec=1)
06-10 15:59:24.167 30692 30717 D Baresip : audio: start
06-10 15:59:24.167 30692 30717 D Baresip : opensles: opening recorder 48000Hz, 2channels
06-10 15:59:24.178 30692 30717 D Baresip : audio: source started with sample format S16LE
-- Juha

Alfred E. Heggestad writes:

or even try to stop audio source of Call 1 when answering Call 2:

call_hold

some delay ..

audio_set_source(audio1, NULL, NULL)

call_answer(call2)

I now did this when I put the first call on hold:
call_hold(call, true);
sleep(3);
audio_set_source(call_audio(call), NULL, NULL);
After that I answer second call:
ua_answer(ua, call);
and audio of second call works both ways!
So it is the re-INVITE that prevents destroying of the recorder at
hold.  Unfortunately my app does not get any events about the re-INVITE
and it is thus difficult to wait for it.
-- Juha

juha-h writes:

So it is the re-INVITE that prevents destroying of the recorder at
hold.  Unfortunately my app does not get any events about the re-INVITE
and it is thus difficult to wait for it.

Since hold via re-INVITE can take a long time, should there be an event
that tells the app when hold is done so that it knows it can issue a new
INVITE?
-- Juha

hi @juha-h
I added a new function audio_set_hold in this branch:
https://github.com/alfredh/baresip/tree/audio_set_hold
if the hold flag is set, the audio source will not be started.
you may test it in your code. for the current call that you
put on hold, also needs to stop the audio device:
audio_stop(au);
audio_set_hold(au, true);
call_hold(call, true);

when resuming you then need to set the hold flag to false:
audio_set_hold(au, false);

Alfred E. Heggestad writes:

if the hold flag is set, the audio source will not be started.
you may test it in your code. for the current call that you
put on hold, also needs to stop the audio device:
audio_stop(au);
audio_set_hold(au, true);
call_hold(call, true);

when resuming you then need to set the hold flag to false:
audio_set_hold(au, false);

Thanks for the patch.  Is this the api call order at resume?
audio_set_hold(au, false);
call_hold(call, false);
-- Juha

that order should work yes, but with this code I think any order should also work.

I started to do tests.  This was the first. A is Android, B and C
Linux baresips.
A calls B and B answers
C calls A
A puts B on hold
A answers C
(audio works both ways OK)
A hangs up C
A unholds B
(no audio from A to B)
hold:
struct audio *au = call_audio(call);
audio_stop(au);
audio_set_hold(au, true);
unhold:
audio_set_hold(call_audio(call), false);
call_hold(call, false);
Should also hangup do something with audio?
-- Juha

audio_stop will stop both recording and playback (if that is what you want).
it should also be possible to use audio_set_source to only stop/start
the audio recording.
hold:
struct audio *au = call_audio(call);
audio_set_hold(au, true);
audio_set_source(au, NULL, NULL);
call_hold(call, true);

unhold:
struct audio *au = call_audio(call);
audio_set_hold(au, false);
audio_set_source(au, "opensles", "nil");
call_hold(call, false);

Alfred E. Heggestad writes:

hold:
struct audio *au = call_audio(call);
audio_set_hold(au, true);
audio_set_source(au, NULL, NULL);
call_hold(call, true);

unhold:
struct audio *au = call_audio(call);
audio_set_hold(au, false);
audio_set_source(au, "opensles", "nil");
call_hold(call, false);

Thanks, the above worked in all tests that I made.  I'm thus fine with
audio_set_hold branch.
-- Juha

merged to master in commit 9c1f16f0deb44ff989cfc326b60d3dd558a28a76
I am glad this solution was working for you :)
Thanks for the testing.

can we close this one now ?

Yes we can.


Update print function to write to stderr

Fixes https://github.com/civiform/civiform/issues/3967.

Fixed checks

The reason I shadowed print is that this diff for this PR is way smaller.
I'm not sure what the deploy tool would use stdout for, I can't imagine
piping the deploy tool to anything other than logging.  In the future if we
need to print to stdout, we can change the shadowed print function to not
override the file named parameter and callers could pass file=sys.stdout.
Thoughts?
On Wed, Dec 21, 2022, 11:36 Bion Johnson @.***> wrote:

@.**** requested changes on this pull request.
In cloud/shared/bin/lib/print.py
https://github.com/civiform/cloud-deploy-infra/pull/99#discussion_r1054776118
:

@@ -0,0 +1,8 @@
+import builtins
+import sys

+def print(*args, **kwargs):
suggestion (blocking): rename to print_error so it's clear this goes to
stderr, we should be able to print info output to stdout
—
Reply to this email directly, view it on GitHub
https://github.com/civiform/cloud-deploy-infra/pull/99#pullrequestreview-1226663111,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEJJKSZAR32FBLZJDQTADPLWONL2ZANCNFSM6AAAAAATFAYNW4
.
You are receiving this because you authored the thread.Message ID:
@.***>


Making MeshSync Dynamic: Fingerprinting (What negative ramifications are involved in removing the “v1“? Any? If not, please do.)

What negative ramifications are involved in removing the “v1“? Any? If not, please do.
Originally posted by @leecalcote in https://github.com/meshery/meshsync/pull/120#discussion_r850399049

I wanna work on this  issue how can i ?


trust: ask to remove passwords from certs

via: https://forum.opnsense.org/index.php?topic=3021

@fichtner I rather won't add this in the gui, it assumes extra safety which isn't really the case.

Can/should we prevent import of protected certs then?

From a user perspective, it would be best if you could remove the pass from the gui.... but honestly, this is hardly used and all clients containing openssl can do it with one command.
openssl rsa -in privateKey.pem -out newPrivateKey.pem

I would close this issue and leave it for what it is, but if you want to spend time on it... feel free :)

Sounds like a plan. There is some pkcs#12 magic pending for our trust stuff too, maybe some fine day :)

timeout due to inactivity


TwitchApi models

It's not clear from TwitchAPI whether a JSON property is optional or not. If you look at TwitchChannel.swift you'll see that some properties have the optional mark :

broadcasterLanguage
logo
videoBanner

I found those with random crashes happening at first. We should make sure that every optional property is typed as optional even though everything seems to be OK now.

Use guard statements. I can take this one if you want.
Sent from my iPhone

On Oct 11, 2015, at 11:43 AM, Olivier Boucher<EMAIL_ADDRESS>wrote:
It's not clear from TwitchAPI whether a JSON property is optional or not. If you look at TwitchChannel.swift you'll see that some properties have the optional mark :
broadcasterLanguage
logo
videoBanner
I found those with random crashes happening at first. We should make sure that every optional property is typed as optional even though everything seems to be OK now.
—
Reply to this email directly or view it on GitHub.


bug in improper to mixed fraction

Describe the bug

if a fraction is not improper fraction it still display result which is wrong.

Example: 7/8 is proper fraction so message should be displayed numerator must be greater than denominator.
Screenshots

Please assign this issue to me.

Is there any problem in this issue you have closed it.


[CI] Update documentation CI

Signed-off-by: KernelErr<EMAIL_ADDRESS>

I noticed a failure in document deployment. This PR may fix it.


tu27 can not find file simple_shader.vert.spv

Help solve this plz.

Someone knows?

You have to compile your shaders with GLSLC


Dciborow patch 1

Description

Testing

Additional context

Codecov Report

Merging #14 (5fe4232) into main (3764768) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #14   +/-   ##
=======================================
  Coverage   67.56%   67.56%
=======================================
  Files           5        5
  Lines         111      111
  Branches       13       13
=======================================
  Hits           75       75
  Misses         33       33
  Partials        3        3

Flag
Coverage Δ

integration
67.56% <ø> (ø)

unittests
67.56% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.


fix(algolia): add insights property on Algolia Theme Config object TS definition

Pre-flight checklist

[x] I have read the Contributing Guidelines on pull requests.
[ ] If this is a code change: I have written unit tests and/or added dogfooding pages to fully verify the new behavior.
[ ] If this is a new API or substantial change: the PR has an accompanying issue (closes #0000) and the maintainers have approved on my working plan.

Motivation
I was working with the Docsearch integration and i noticed that the Algolia Theme Config object defined in @docusaurus/theme-search-algolia did not have the insights property that allows Docsearch to send click events to the Algolia Dashboard

Test Plan
I added an optional attribute to the Algolia Config Object called insights. Because there is no strict validation on the object. This change should allow the user to add the insights
option and because the props are passed to the docsearch modal it should work as intended. i already tested it on my project and even though i get an IDE error regarding the type, the events are sent to the algolia Dashboard

Test links
The link to the insights property as described by docsearch
https://docsearch.algolia.com/docs/docsearch-v3/#sending-events
The link to the documentation where the algolia object is defined
https://docusaurus.io/docs/search#connecting-algolia

Deploy preview: https://deploy-preview-_____--docusaurus-2.netlify.app/
Related issues/PRs

Unfortunately your prettier format probably didn't use the right config 😅 all those are unexpected changes

Is there any way I can help with this Lint AutoFix workflow?

Thanks, I'll handle the rest 👍

Thank you, hope I could be of help


remote-notification log

Hey, this might not be an issue, but I'm just putting it out there in case it is. When I launch of my application, I get this error.
You've implemented -[<UIApplicationDelegate> application:didReceiveRemoteNotification:fetchCompletionHandler:], but you still need to add "remote-notification" to the list of your supported UIBackgroundModes in your Info.plist.
The only notifications I'm using in my app is Pushwoosh, so I was thinking this log was via Pushwoosh code. Just FYI! :)

Hi,
This warning is safe.
This function is used by "newsstand push". However to use this functionality you have to put correct background mode in Info.plist. If you don't - the functionality would not be available, but everything will work as expected.


black line when opening at the last line

for example:

spyder 5.4.0

Hey @Firestar-Reimu, thanks for reporting. I also noticed this issue and it only happens with the light theme. We'll fix it in our next version (5.4.1), to be released before the end of the year.


PHIN Spec 3.0 - Warnings are thrown for length on meessages when the length criteria is met

Warnings are thrown for length on messages when the length criteria is met
See attached for message and test results
https://app.zenhub.com/files/510836864/43b24450-8163-400c-afbe-b87a12292ab1/download
https://app.zenhub.com/files/510836864/0be1de4a-d698-48c7-bd40-65c54914ab4b/download

Validated. No longer throwing warnings for valid length on OBX-5.3


Fix mistranslation in pt-br

This is to fix a mistake I made when I translated to pt-br.

Thanks for the fix.


HDDS-6773. Cleanup TestRDBTableStore

What changes were proposed in this pull request?
This is a follow-up task of #3415.
rdbStore is already initialized in @BeforeEach setUp(), and closed in @AfterEach tearDown().
Reuse them in testIsExist() and testGetIfExist().
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-6773
How was this patch tested?
CI: https://github.com/kaijchen/ozone/actions/runs/2353514330

Thanks @adoroszlai for reviewing.


Errors when running .net generate assets to build .vscode folder

Please paste the output from your ## Issue Description ##
Steps to Reproduce
Go to Command Palette

Select .Net Generate Assets for Build and Debug
Expected Behavior
Build .vscode folder with launch.json and task.json
Actual Behavior

Logs
OmniSharp log
Post the output from Output-->OmniSharp log here
Starting OmniSharp server at 7/15/2019, 12:27:25 PM
    Target: /Users/DaddyNupe/InventApp/InventApp.API
OmniSharp server started with Mono 5.18.1.
Path: /Users/DaddyNupe/.vscode/extensions/ms-vscode.csharp-1.20.0/.omnisharp/1.32.20/omnisharp/OmniSharp.exe
PID: 5930
    Starting OmniSharp on MacOS 10.14.5 (x64)

    DotNetPath set to dotnet

    Located 2 MSBuild instance(s)
        1: Mono 15.0 - "/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin"
        2: StandAlone 15.0 - "/Users/DaddyNupe/.vscode/extensions/ms-vscode.csharp-1.20.0/.omnisharp/1.32.20/omnisharp/.msbuild/Current/Bin"

    Registered MSBuild instance: Mono 15.0 - "/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin"
        CscToolPath = /Users/DaddyNupe/.vscode/extensions/ms-vscode.csharp-1.20.0/.omnisharp/1.32.20/omnisharp/.msbuild/Current/Bin/Roslyn
        CscToolExe = csc.exe

    Detecting Cake files in '/Users/DaddyNupe/InventApp/InventApp.API'.

    Could not find any Cake files

    Project system 'OmniSharp.DotNet.DotNetProjectSystem' is disabled in the configuration.

    No solution files found in '/Users/DaddyNupe/InventApp/InventApp.API'

    Queue project update for '/Users/DaddyNupe/InventApp/InventApp.API/InventApp.API.csproj'

    Detecting CSX files in '/Users/DaddyNupe/InventApp/InventApp.API'.

    Could not find any CSX files

    Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpWorkspaceOptionsProvider

    Loading project: /Users/DaddyNupe/InventApp/InventApp.API/InventApp.API.csproj

    Configuration finished.

    Omnisharp server running using Stdio at location '/Users/DaddyNupe/InventApp/InventApp.API' on host 5900.

    Unable to create directory "bin/Debug/netcoreapp2.2/". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/bin" is denied.

    Unable to create directory "obj/Debug/netcoreapp2.2/". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug" is denied.

    Could not write state file "obj/Debug/netcoreapp2.2/InventApp.API.csprojAssemblyReference.cache". Could not find a part of the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug/netcoreapp2.2/InventApp.API.csprojAssemblyReference.cache".

    Could not write lines to file "obj/Debug/netcoreapp2.2/InventApp.API.csproj.CoreCompileInputs.cache". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug" is denied.

    Failed to load project file '/Users/DaddyNupe/InventApp/InventApp.API/InventApp.API.csproj'.

/Users/DaddyNupe/InventApp/InventApp.API/InventApp.API.csproj
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(1148,5): Error: Unable to create directory "bin/Debug/netcoreapp2.2/". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/bin" is denied.
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(1148,5): Error: Unable to create directory "obj/Debug/netcoreapp2.2/". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug" is denied.
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(2134,5): Error: Could not write state file "obj/Debug/netcoreapp2.2/InventApp.API.csprojAssemblyReference.cache". Could not find a part of the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug/netcoreapp2.2/InventApp.API.csprojAssemblyReference.cache".
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(3458,5): Error: Could not write lines to file "obj/Debug/netcoreapp2.2/InventApp.API.csproj.CoreCompileInputs.cache". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug" is denied.
    Attempted to update project that is not loaded: /Users/DaddyNupe/InventApp/InventApp.API/InventApp.API.csproj

C# log
Post the output from Output-->C# here
Environment information
VSCode version: 1.36.1
C# Extension: 1.20.0
Mono Information
        OmniSharp using global mono :5.18.1
Dotnet Information
.NET Core SDK (reflecting any global.json):
 Version:   2.2.300
 Commit:    73efd5bd87
Runtime Environment:
OS Name:     Mac OS X
OS Version:  10.14
OS Platform: Darwin
RID:         osx.10.14-x64
Base Path:   /usr/local/share/dotnet/sdk/2.2.300/
Host (useful for support):
Version: 2.2.5
Commit:  0a3c9209c0
.NET Core SDKs installed:
2.1.505 [/usr/local/share/dotnet/sdk]
2.2.300 [/usr/local/share/dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download

Visual Studio Code Extensions

Extension
Author
Version

Angular2
johnpapa
8.1.1

angular2-switcher
infinity1207
0.2.0

auto-rename-tag
formulahendry
0.1.0

bracket-pair-colorizer
CoenraadS
1.0.61

csharp
ms-vscode
1.20.0

csharpextensions
jchannon
1.3.0

debugger-for-chrome
msjsdiag
4.11.6

git-project-manager
felipecaputo
1.7.1

material-icon-theme
PKief
3.8.0

ng-template
Angular
0.800.0

path-intellisense
christian-kohler
1.4.2

prettier-vscode
esbenp
1.9.0

tslint
eg2
1.0.44

vscode-angular2-files
alexiv
1.6.2

vscode-nuget-package-manager
jmrog
1.1.6

I believe this is your problem --
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(1148,5): Error: Unable to create directory "bin/Debug/netcoreapp2.2/". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/bin" is denied.
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(1148,5): Error: Unable to create directory "obj/Debug/netcoreapp2.2/". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug" is denied.
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(2134,5): Error: Could not write state file "obj/Debug/netcoreapp2.2/InventApp.API.csprojAssemblyReference.cache". Could not find a part of the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug/netcoreapp2.2/InventApp.API.csprojAssemblyReference.cache".
/Library/Frameworks/Mono.framework/Versions/5.18.1/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(3458,5): Error: Could not write lines to file "obj/Debug/netcoreapp2.2/InventApp.API.csproj.CoreCompileInputs.cache". Access to the path "/Users/DaddyNupe/InventApp/InventApp.API/obj/Debug" is denied.

Thanks for your feedback gregg-miskelly but how do I solve the problem.  Thanks for any help you can give

Sorry if this is obvious, but what that error is saying is that attempting to create the directory /Users/DaddyNupe/InventApp/InventApp.API/bin is failing due to lack of privilege. So you could see if you can manually produce this problem from terminal, and if so either fix the permissions on the directory so that the directories can be written, or copy the project to a different directory which is writable.
If you can't manually produce it in the terminal, how are you running VS Code?

Hi I  granted permissions on all the project files and I am still getting Could not locate .net core project assets not generated

@Hardkore9t8 What happens if you manually create those directories w/appropriate permissions?

I uninstalled C# and reinstalled ran npm i and npm run compile then added the launch.json package from the command palette.  But to answer your question it created empty files  bin and obj/debug

@Hardkore9t8 Is this resolved for you?

issue was resolved when directories were created with appropriate permissions. closing