Static configuration of webserver and dbserver localhost ports, bind only to localhost, fixes #1491, fixes #941, #642 too

The Problem/Issue/Bug:
fixes #1491, fixes #941
OP #1491: For security reasons, host binding of the dbserver should only be localhost (<IP_ADDRESS>) not <IP_ADDRESS> (the default, all interfaces), because this allows other people on the network to possibly probe for the database connection, depending on firewall configuration.
OP #941: Keep a stable port number for the localhost ephemeral ports so that people can use standard techniques to access them.
#642: We've long talked about keeping a catalog of metadata even for projects that aren't running. This PR introduces that.
How this PR Solves The Problem:

add host_db_port and host_webserver_portto config.yaml, use those values in the docker-compose.yaml.
When a new host_db_port is written, add it to ~/.ddev/global_config.yaml so it's blacklisted from being used again for another project.
Change the generated docker-compose.yaml to use explicit binding to <IP_ADDRESS> instead of the implicit <IP_ADDRESS>

This is actually an amazing step forward for us. For the first time it provides a global database of projects, as requested in #642 . It's now trivial to add additional project information in the global_config.yaml.
Manual Testing Instructions:

Experiment with host_db_port and host_webserver port, both generated and explicitly configured.
Verify that one project can't poach another project's ports.
Verify that used ports show up in ~/.ddev/global_config.yaml
Verify that db and web ports can only be accessed on the localhost interface, not via other interfaces on the machine. (You can use ifconfig on macOS and Linux to view other interfaces). You can test with telnet localhost 33434 for port 33434, telnet <IP_ADDRESS> 33434 for a denied access to the same port on the <IP_ADDRESS> IP address (you must use the one that pertains to your system). Alternately, check from another machine on your network, but this requires the firewall to be turned off for correctness.
Verify maintenance of ~/.ddev/global_config.yaml when projects are removed and rm --omit-data (which should completely remove the host)

Automated Testing Overview:

[x] Test for util.GetFreePort()
[x] Test for access to used ports. (The existing router tests have some code that should help).
[x] Test to make sure that one project's ports can be reused deliberately or accidentally by another one.
[x] Explicitly test to make sure localhost mysql and http port can be connected to correctly. This was only caught by accident on TestWebserverType (Docker Toolbox)

Release/Deployment notes:
We'll probably want to tell people to do a ddev config on existing projects, which will add the new items in config.yaml.

Artifacts for this round are at https://circleci.com/gh/drud/ddev/10976#artifacts/containers/0 and testing would be fantastic. @tmotyl and @t3easy

@andrewfrench this one requires a significant effort both with the code review and manual testing and your review of the basic approach. I think it's good, but sure look forward to your opinion.
I guess the biggest basic design question is whether the host database should be kept in global_config.yaml (as currently) or split into a different file. We'll see what you think.

Hey @rfay, I'm working through review of this now and it adds a huge amount of both immediate utility and future potential for expanding on the local database of projects idea.
Managing port claims in global_config.ddev works for me, but I was able to spot some issues regarding the way project ports are claimed in global_config.ddev: after a project is configured and its ports are claimed under the project's name, the normal methods of editing a project cause failed starts, like editing the "name" field in .ddev/config.yaml or ddev config. A user can bypass this by editing global_config.yaml, but we don't have any messaging to indicate this, only that the port is claimed by the project's previous name.
I can imagine a few solutions to this:

Creating a primary key that's not editable by the user like a UUID, for example
Handling the project name rewrite inside ddev config [--project-name xyz]
More verbose error messaging when a project fails to start

Wow @andrewfrench I think you just saved a lot of people a lot of pain. Thanks for checking that carefully.
I think the fundamental error I've introduced is reserving the port for every single project, when only a few people have actually requested it. I'll experiment with only reserving globally when explicitly specified in project config.yaml. It was just wrong to have a second global reservation at this point (besides project name)
My initial response to the general issue is that we've always used project name as the unique systemwide identifier, but we haven't ever enforced it. As a result of this undocumented assumption, we have occasional failures like

Stolen databases (database is keyed by name) so if you start a new project with the same name it adopts (and may damage) another project's db.
Conflicting containers: Most of us have seen this occasionally, and we even have tests for it. And it's annoying.

I suspect we can solve both of those pretty easily as this functionality gets fleshed out. In the next sprint we can add the project directory and it will solve an enormous amount of this kind of trouble, and also allow ddev start of a rm'd project.

@andrewfrench I changed the logic so that the port is dynamic unless specified in the config.yaml, and not reserved in the global_config.yaml unless it's set as static in config.yaml. I think this is far more in keeping with the request, and should solve the problem you described.

I noticed that host_webserver_port and host_db_port aren't configurable through command-line flags, would you be open to adding those options (ddev config --host-db-port 1515 --host-webserver-port 5151)?

I added the config flags and some test coverage. Couldn't get rid of the empty used_host_ports in global_config unless you have a suggestion about how to do that @andrewfrench . Thanks for the careful review. Saved an enormous amount of future pain.


Filters are not working in Laravel 5.5

We dont have intersect method on Illuminate/Http/Request
refer : https://laravel.com/api/5.5/Illuminate/Http/Request.html
any Alternative ?

Updated the filter code to remove 'intersect' method dependency. Should work with Laravel 5.5 now :)


feat: finished version

Description
finished version

@eburck  sonarCloud bugs are still there. I will try again

@Mhera17 , Thank you for latest changes - build now works. However, sonarCloud bugs are still there. How should we move on with it?

Hi @eburck @DomiKoch. I'm researching how to fix it. I will write here later.


R19 crypto error

src/quickrand.erl:89: crypto:rand_bytes/1 is deprecated and will be removed in in a future release; use crypto:strong_rand_bytes/1

Thank you for reporting the problem!


ci: overhaul check-compliance.py script

Support sending status to github
Support license checking
Make every test a class
Use junitparser instead of custom xml for junit output

Signed-off-by: Anas Nashif<EMAIL_ADDRESS>

Codecov Report

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

@@           Coverage Diff           @@
##           master   #11520   +/-   ##
=======================================
  Coverage   48.37%   48.37%
=======================================
  Files         270      270
  Lines       42088    42088
  Branches    10133    10133
=======================================
  Hits        20358    20358
  Misses      17653    17653
  Partials     4077     4077

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 e275ae5...07d6ac8. Read the comment docs.


Syntax question

Heya,
I noticed that when declaring and calling functions, that instead of the conventional '= ->' sometimes a different syntax seems to be used namely '= !->' with an exclamation mark.
It seems to happen primarily when a function is called from another library e.g:
Dom.div !->
or sometimes when a function is declared in the server.coffee script e.g:
exports.onPhoto = (info) !->
Why is this? The javascript this compiles into also shows the exclamation mark so it makes me suspect it does something. Is it just for readability? Does it impact the return value?
How should i pay attention to this? Can I just forget about the '!' or do I have to use them?

Don't pin me on this, but I believe this is custom syntax for Happening. By default, Coffeescript returns the last evaluated statement in a function. By writing !-> instead of ->, no value is implicitly returned. Example:
test = ->
    5 + 5

compiles to
var test;
test = function() {
    return 5 + 5;
};

While
test = ->
    5 + 5

compiles to
var test;
test = function() {
    5 + 5;
};

Yeah, that's was my initial thought as well, but I figured I could test this out by compiling both codes on coffeescript.org and it turns out it compiles as follows:
test = ->
    5 + 5

test = !->
    5 + 5

become respectively:
var test;

test = function() {
  return 5 + 5;
};

test = !function() {
  return 5 + 5;
};


Update poet image for system tests

Motivation
Updates the PoET image in system tests
Changes
Update makefile
Test Plan
n/a
TODO

[x] Explain motivation or link existing issue(s)
[x] Test changes and document test plan
[x] Update documentation as needed

DevOps Notes

[x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources)
[x] This PR does not affect public APIs
[x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.)
[x] This PR does not make changes to log messages (which monitoring infrastructure may rely on)

bors merge

sorry i accidentally typed :)

sorry i accidentally typed :)

would have been OK here 🙂


Added Toolchain section in INSTALL.md

if @dgrove-oss is ok with it I'll merge

@amraboelela this is looking good - just a couple of minor comments.

LGTM; thanks!


Disk Meter free space

Feature request to show free space, but show bar and percentage based on consumed space calculation

Hmm, this would be expensive, since adding it would require an entirely new measure. I have to save every bit of code in Disks Meter that I can, since it's so large and CPU-intensive already.
However, I will consider it. I think it would be useful to have this feature.

Gonna close this issue for now. If I decide to add it in, I'll reopen it.


Download still goes to previous version

I'm still getting <IP_ADDRESS> when downloading.

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

ID: 1365f9b8-001c-daa7-592e-d88b9bb3a10e
Version Independent ID: ffba1b4d-1f19-4dac-0b55-053d98fe26b7
Content: Release notes - Microsoft Teams
Content Source: Teams/rooms/rooms-release-note.md
Service: msteams
GitHub Login: @LanaChin
Microsoft Alias: v-lanac

@patrichard Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

Hi @patrichard, thank you for your feedback.
Are you still experiencing this issue? Could you provide the link?
Thanks!

@patrichard We appreciate any feedback that improves the content in the Microsoft docs but we haven't had any response from you so we are going to close this issue.
Please feel free to re-open this issue if there is a specific area of the docs that we can improve or make better. Thank you.

@patichard hello. how to download 4.4.41? I have an issue with two Teams Rooms devices: HP Elite Slice G2 and Lenovo smarthub 500. Thank you

Hi @goretz2, please check this article:
https://docs.microsoft.com/microsoftteams/rooms/console

hi, @dariomws . Yes I saw this article. What precisely I have to do? create usb stick and perform full installation? Is it the only way to update MTR verision? When I have versions before 4.3. I just downloaded SRS deployment kit, installed it and run a script in repair mode. after it MTR was updated.
P.S. I am looking for update because I have a problem with black screen at the second monitor which appears when I start to call to someone.

@goretz2 I have verified the script and it download the MSI from this URL:
https://go.microsoft.com/fwlink/?linkid=851168
But you will get <IP_ADDRESS> version. Give me some time I will try to get more information. In the meantime, if you have some urgency, please open a support ticket.
If you wish to know how to open the service ticket, please follow this link: https://docs.microsoft.com/office365/admin/contact-support-for-business-products

thank you @dariomws I will wait for your answer here because I haven't rights to create support ticket.

hi, @dariomws also I found that my colleagues from Germany used MTR <IP_ADDRESS> at the same equipment and they haven't any problems. they shared me the srsdeploymenttoolkit <IP_ADDRESS> but I don't know how to downgrade. is it possible? I tried to run the script at repair mode but this doesn't help.

Hi @goretz2,
I think the only option to downgrade is Factory Reset:
https://docs.microsoft.com/MicrosoftTeams/rooms/rooms-operations#microsoft-teams-rooms-reset-factory-restore

@dstrome could you kindly help with this issue? Thanks!


Disconnect Wallet text correction

Disconnect Wallet text correction in docs/frontend/connect-wallet.md

User @A-mont, please sign the CLA here.

@A-mont please sing the CLA so we can merge this.


Fix CoreFoundation.h header in standalone CF build

The SwiftRuntime header has a big warning in it saying not to use it unless you're building with the swift runtime, which this build.py doesn't do.
cc @millenomi
Also, as a related aside: does this CoreFoundation/build.py get exercised by @swift-ci? I couldn't find any information on how to affect its behavior but I'd love to add a skeleton build to avoid it getting broken in future

I don't think our CI has any way to trigger the standalone build. I'd love if it did, along with building for macOS, actually.

@swift-ci test and merge

@parkera thanks! Is that something I could realistically do? I tried to figure out what it was doing but it looks like a jenkins config that is set up server-side and thus isn't something I could meaningfully affect from within the repo (like in a PR).

@parkera Did you want to update the current Linux PR job, or add new macOS job?

There are a few things. The first is to add a build of the Darwin build of swift-corelibs-foundation to our CI, so we know that it builds correctly when accepting PRs.

@shahmishal that looks awesome! I haven't quite figured out how those jenkins builds work yet: is that going to test the CoreFoundation/build.py or the root build.py? Or both? 😁

it's using build-script from apple/swift repository.
swift/utils/build-script -R -T --llbuild --swiftpm --xctest --debug-foundation -- --reconfigure --lit-args=-v
Looks like it might be using xcodebuild -- https://github.com/apple/swift/blob/master/utils/build-script-impl#L2515

From my work on merging, it looks like you might want to expect some breakage. I’ll be on standby if that happens.

@millenomi sorry, was that to me, or to Mishal about the CI stuff? If to me I actually pin to known-good revisions so I'll keep an eye out for it but it shouldn't be anything too pressing 😄

Yeah, sorry, the above was to @shahmishal.


[SPARK-30863][SQL] Distinguish Cast and AnsiCast in toString

What changes were proposed in this pull request?

Prefix by ansi_  in toString if it's a AnsiCast or ansi enabled Cast.
E.g. run spark.sql("select cast('51' as int)").queryExecution.analyzed under ansi mode.
Before this PR:
Project [cast(51 as int) AS CAST(51 AS INT)#0]
+- OneRowRelation

After this PR:
Project [ansi_cast(51 as int) AS CAST(51 AS INT)#0]
+- OneRowRelation

Why are the changes needed?

This is useful while comparing LogicalPlans literally.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Pass Jenkins.

cc @cloud-fan @gengliangwang

Test build #118588 has started for PR 27608 at commit 92a899f.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23342/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23346/
Test PASSed.

Test build #118592 has started for PR 27608 at commit e550b87.

Test build #118592 has finished for PR 27608 at commit e550b87.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118592/
Test FAILed.

Test build #118588 has finished for PR 27608 at commit 92a899f.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118588/
Test FAILed.

For better commit logs, could you put a simple example plan output before/after this pr in the description above?

Test build #118607 has started for PR 27608 at commit 4896fb5.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23360/
Test PASSed.

For better commit logs, could you put a simple example plan output before/after this pr in the description above?

Added. Thanks!

@Ngone51 can we have a JIRA? It touches many files and worth a JIRA.

@Ngone51 can we have a JIRA? It touches many files and worth a JIRA.

Done.

Test build #118607 has finished for PR 27608 at commit 4896fb5.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118607/
Test PASSed.

thanks, merging to master/3.0!

Thanks all!!


[Dask] Add dask.delayed information and exercise.

Introduce dask delayed with examples.
Finish with exercise so users can visualise and compute the result of a simple computation.

Great, Thanks @kaedonkers !


SymbolInfoDouble

I could not find support for SymbolInfoDouble. Are there plans to develop? Can I develop and make pull request?

I will implement it soon.
But if you want you can developed it and I will add it to master branch.

I will add all functions of Market Info (https://docs.mql4.com/marketinformation) in the next version MtApi (MT4) 1.0.32.


[Bug]: need help with mint.js says contract has token id

Version

[X] Yes

General Question

[X] No

What happened?
A bug happened! When I run mint.js it has a problem with token id and says to use a new one
What have you tried?
I Googled and asked the community in the discord server but could not find a solution.
Relevant log output
No response
Protect your information

[X] I Agree

Says contract already has given token id. It must be unique id inside contract please use another id

The code currently doesn't skip an item that has been minted already. It will get stuck. You can remove the object from the _ipfsMetas.json array so that when the mint runs, it won't try to mint it again.


soc: snps_arc_hsdk: kconfig: Remove unused CPU_HS38_LINUX symbol

Added in commit dbc29fe77e ("boards: hsdk: add initial support of ARC HS
Development Kit"), then never used.
Found with a script. CPU_HS38_LINUX was only defined in a
Kconfig.defconfig file.

I leave this to the ARC guys


Truncate Chip List

Jira
http://vjira2:8080/browse/BDS-1455
Summary
Add truncation support to Chip Lists.
Details
This PR allows users to truncate long Chip Lists by setting the truncate prop.
No-JS
Before JS loads we want the list to be truncated so that there's no FOUC, but we still want the list to be expandable. We do this using the label + input:checked method, combined with a Twig-generated <style> tag.
With JS
Once the WC loads, it strips out the <style> tag and replaces the original label with a Trigger.
Additional changes

Add truncate prop to Chip List, which truncates list after a given number of items.
Add canCollapse prop to Chip List. By default, once the list expands it cannot be collapsed. Set this prop to true to allow it to be collapsed again.
Output <bolt-chip-list> tag, previously just rendered <bolt-list>.

Allows us to contain the <style> tag used for no-JS functionality.
Allows us to add ID to Chip List and scope our no-JS styles.

Add Web Component JS.

There is no WC demo page because Chip List is still just a wrapper around a Bolt List that supports  truncation. If you put a bolt-list inside bolt-chip-list WC it does not automatically apply the expected props to bolt-list, as you might expect. This may be useful in the future but was beyond the scope of this task. For this reason there's no WC demo page.

Add iconOnly prop to Chips to make Show more Chip (... icon) possible. Add test and demo for iconOnly.
Add type to Chip List size prop, previously missing.
Add Twig support for passing attributes to bolt-list-item, required to flag certain list items as [truncate-trigger]

How to test

Review changes
Tests are passing
Review demos on feature branch:

No regressions to basic Chip list
No regressions to List
truncate works as expected on demo page
canCollapse works as expected on demo page
iconOnly works as expected on demo page

@mikemai2awesome addressed both issues.

PR was released with v2.22.0


Add the ability to send an one-off email report after competing a check-in

After a user completes a check-in an email report will be sent to their partners if specified criteria are met. If they have email reports enabled (send_email) but they don't meet the threshold they have should the ability to still send an email if they would like to.

I'd like this too. I was thinking a share option after filling a form out, or from the previous check in page.

Thanks KimtaJi. These days I do very little development on this project. This should be a small change and I'll prioritize it more highly the next time I work on this codebase.


Cannot reproduce the results of retrained model

Thanks for the great work. I tried to reproduce the retrained ResNet-18 model in CIFAR-20 class unlearning scenario but has encountered some problems.

Parameters reset
Resetting the parameters does not work well. Checking the parameters, I found that this resets the last linear layer only. Does it intend to reset the linear layer only or do I missed something?

Cannot reproduce the results with parameter reset
Table 3 in the paper presents that Acc(D_r) of retrained model is 82.11 (for unlearning ‘vehicle2’ class). I manually re-initialize all layers (by modifying the above reset code) and learn the retrained model, but it only achieves 72~74 on the retain set.

Could you please check this and let me know how to reproduce?

Hi, you might not be training the baseline model for enough epochs to achieve the same results. Resetting only affects torch layers with the "reset_parameters" attribute. You should not have to change anything in the code there.
If the issues persist feel free to send us more details but it should work fine (we know from others that used the code in their own papers).

As also noted in https://discuss.pytorch.org/t/how-to-reset-parameters-of-layer/120782/2, layer1~layer4 of ResNet does not have reset_parameters attribute, so all convolutional layers within each block does not affect by reset. (Only the conv1 and fc layers are affected.)
When I simply run the code (without changing anthing) then I achieve 82%, which seems to be okay, but this is because reset is not working. When I manually re-initialize all layers, then it gives 72~74 accuracy. I would like you to check this for once.
Could you also let me know which pytorch version are you using? (in case the version issue)

Good spot, the "damage" done by resetting the available layers is still enough as you can see when you compare it to the realative Df & MIA values of the ViT as well as other papers using ResNet18 in unlearning (e.g., Chundawat Bad Teacher). You'll just have to retrain the fully destroyed model for longer to achieve the same accuracy again. Thanks for pointing it out.


IncRc not issued on array reassigns

Aim
A program like this one:
unconstrained fn main(items_to_update: u64, index: u64) {
    let mut arr = [0; 5000];
    let mut mid_change = [0; 5000];

    for i in 0..items_to_update {
        if i == 2500 {
            mid_change = arr;
        }
        arr[i] = 27;
    }

    assert_eq(arr[index], 27);
    assert(mid_change[index] != 27);
}

With this prover.toml
items_to_update = 4000
index = 3000

Fails the assertions
Expected Behavior
It should pass with the given inputs
Bug
The SSA generated is missing an inc_rc in  mid_change = arr
...
  b1(v7: u64):
    v86 = lt v7, v0
    jmpif v86 then: b2, else: b3
  b2():
    v93 = eq v7, u64 2500
    jmpif v93 then: b4, else: b5
  b4():
    v97 = load v84
    store v97 at v85
    jmp b5()
  b5():
    v94 = load v84
    v95 = array_set v94, index v7, value Field 27
    v96 = add v7, Field 1
    store v95 at v84
    jmp b1(v96)
  b3():
    v87 = load v84
    v88 = array_get v87, index v1
    constrain v88 == Field 27
    v89 = load v85
    v90 = array_get v89, index v1
    v91 = eq v90, Field 27
    v92 = not v91
    constrain v92 == u1 1
    return
}

To Reproduce

Installation Method
None
Nargo Version
No response
Additional Context
No response
Would you like to submit a PR for this Issue?
No
Support Needs
No response

Labelling this P-HIGH since it causes the code to silently change behavior

@kevaundray it is still open

I've added the missing IncRc instruction on branch jf/fix-incrc-assign, yet the bug is still present. Any ideas why this may be @sirasistant?

This got reverted https://github.com/noir-lang/noir/issues/4332 because of a regression that made a critical path in aztec-packages to blow up in complexity, never ending. I've added an e2e test in the revert PR of that path.
If the issue is related with rc being a separate value and not together with the items in the array reference, I could try to tackle that @jfecher


Setup OSS site with a similar SLO process as the dev site.

Is your feature request related to a problem? Please describe
It's important we track downtime for the OSS site, like we do for the dev site as that's a key metric we measure in our OKRs therefore a similar process should be put in place to track the OSS sites downtime.
Describe the solution you'd like
When/if the website goes down, we open an incident in the #emergency-room, until it's resolved. And then Site Eng's bot tracks all of that in upboard, creating an incident # and a corresponding JIRA.
Other things are logged in Upboard as well, including customer impact. When calculating 9's, we use a calculation that factors downtime and impact.
Describe why this important to you
It allows us to track our key metrics for OKRS

Moved to https://github.com/newrelic/opensource-website/issues/545


Cart checkout

Cart checkout

Checked and Found that the checkout  issue has been fixed and working fine for the first user.
Now address console errors are not apprearing which is appearing from default address.
Video
https://github.com/bagisto/bagisto/assets/92721837/cb142492-9f88-4aa6-95c9-a59d6bf7d169


Eliah Kagan: Watch abokiplay.com

Eliah Kagan requests the watch of the watch_keyword abokiplay\.com. See the MS search here and the Stack Exchange search here.

abokiplay\.com has been seen in 1 true positive, 0 false positives, and 1 NAA.

Approved by Makyen in Charcoal HQ


Fix charged species

Motivation or Problem
The current fix module doesn't have remedies for charged species. This PR add a function to convert a radical species to charged species based on the added remedies (need to be extended).
Here are some examples:

[Cl] to [Cl-]

[C]#N to [C-]#N

methanethiolate

Hi @shihchengli, thank you so much! These are good additions. Do you think it makes sense to add an argument for charge (int). Basically, it informs the algorithm about the formal charge of the molecule. Even if it doesn't have an effect at the moment, I hope we can include it as a place holder for future development. And can you merge it into the v1.0/dev branch? Where remedies and fix functions are decoupled. Thanks


Epic: Implement New App Flows

See the journeys documented here: https://product.spacemesh.io/#/smapp_wallets_flows
There's an interactive prototype for each flow that needs to be implemented.
New first time user-experience interactive prototype: https://www.figma.com/proto/6bbFkIAzVu36bIpUNnMqoy/Smapp-Designs?node-id=4847%3A8399&viewport=872%2C486%2C0.07435446232557297&scaling=min-zoom

There are 2 open issues to finish this epic: gpu-post integration and transactions integration.


The Cube Consumes Too Much Power!

Ahhhhhhhhhhhhhhhhhhhhhhhhhhhh!

This was partially addressed thanks to the new FC_Firm_V2 that allows for under clocking the RP2040 to save power!


typo correction in documentation files

Description
Corrected "accomodate" to "accommodate".
Corrected "proceses" to "processes".
Corrected "cand" to "can".
Corrected "here" to "hear".
Corrected "registy" to "registry" and much more.
Additional context
This pull request contains changes to improve clarity, correctness and structure. Please review the changes and let me know if any additional changes are needed.

@sigma Hi! Apologies for the inconvenience. I just wanted to check if there’s anything I can improve in my pull request. Please feel free to ask any questions or let me know if any changes are needed to meet the project's merge requirements. I’m happy to make adjustments!


Installation with laravel v 6.2 e 6.3

Hi to everyone!
Today I've tried to install the package, but had dependency issue with laravel framework version. I managed to install it with framework version  6.0.3, but not with the later ones (neither with 6.2 nore 6.3).
This is the error I had:
.

And this is my composer.json file:

This was already fixed with #62, but was not included in the 0.8 tagged release.
The latest 0.9 tagged release includes this fix, so if you try again you should be fine.

Hey friends! The team at Tighten has taken Parental back over and we're re-opening the issue tracker, but to give us a clean slate, I'm going to close all old issues that remain from when Caleb closed the issue tracker in 2020. If this is still an outstanding concern with the latest version of Parental, please feel free to open a new issue referencing this one.
Thank you!


How can I update my current version with the changes on here?

This is less a bug report and more just a question. I started using the latest release version for my program, but the bug I reported earlier (about readonly not being able to be set to false) has caused me some problems. It seems that it has been fixed in the code on here, but I'm not sure how to go about updating the components I'm using with the fixes.

Download the source code
Run build-release.bat
Check _Output for your version

What do you mean by Check_Output? is that a directory? or is it a command I need to use?

Yes, for clarity sake and if anyone else is having the same question, _Output is a folder in the project folder that's created when you build the project with build_release.bat.


Generation stuck

Hello!
I have tried the code to generate the Physion dataset(because the origin dataset doesn't contain depth image)
But the code didn't work.
I use the <IP_ADDRESS> version of TDW.
It is stuck at 50 line of python3.10/site-packages/tdw/controller.py: self.socket.recv()

Please try using a more recent version of TDW, eg v1.11.

Let me know if that works. If it doesn't, I'll try to sort out the specific versions that we used back in the day.

Hi,
Thanks for your reply. I have tried 1.11. This is the version I used
tdw                       <IP_ADDRESS>
tdw-physics               0.3.1

But it still didn't work. The same problem: It is stuck at 72 line of python3.10/site-packages/tdw/controller.py: self.socket.recv().
No matter how long I wait, it still didn't work.

Hi @felixbinder , I have fixed this issue by setting launch_build=False and launch TDW by myself.
But it takes error if I use 1.11.23 version TDW:(It is in 1009 line of controllers/dominoes.py)
target_position_new = self.get_object_position(self.target_id, resp) or self.target_position
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

Only <IP_ADDRESS> version of TDW can work.
 Seems to be something to do with the interprocess communication—that can be hard to figure out. Thanks for the update

Hi @felixbinder, it still didn't work for dataset generation:
I used <IP_ADDRESS> version of TDW
When I directly use the dominoes.py, it can run and generate the video.
python controllers/dominoes.py --port 1071 --dir try
But if I use the command the generate dataset, it stuck at the same position....
python3 controllers/dominoes.py @./configs/dominoes/pilot_dominoes_0mid_d3chairs_o1plants_tdwroom/commandline_args.txt --dir try_2 --height 256 --width 256 --seed 0 --save_passes '' --write_passes '_img,_depth,_id' --save_meshes --num_multiplier 7.25 --training_data_mode --gpu 0 --port 1071
Stuck here in tdw/controller.py:
resp = self.socket.recv_multipart()

Yes. if don't set any distractors and occluders, the code can work for other 7 scenarios(without Drape). Drape needs flex.json file.  I have tried all of them.
If include distractor and occluder, the code will stuck in tdw/controller.py, and wait all the time: resp = self.socket.recv_multipart().

Hi @felixbinder,
I have successfully set it up . And the Generation code can work.
I didn't try all of them. But some ones didn't work before can work now. I am really appreciate your help.
I also have another question about the depth image process.
Do you have any instructor about how to transfer the depth image to point cloud.
I thought a good guide for this is very useful.
Because I have used camera_matric and projection_matric, but the depth point cloud is still not exactly consistent with true point cloud(3d position). So I think I loss some detail parameters.
Here is some detail problems:

What is near_plane and far_plane for Physion dataset? I need these to get the true depth value.
Is the depth value you saved distance between object and camera or distance between object and camera plane?
If we get the true setup, how should we do the process for the depth image at image coordinate? Like firstly normalize and then add camera matrics? How to normalize, just / resolution?

Hello, I'll loop in @htung0101 , who was working on the point cloud model pipeline. I'm personally not familiar with how that part of the pipeline works.

Hi @htung0101 , do you have any guidance on this? It is vey important to know how to convert the Depth into Point Cloud. I would like to know how you set it up, because now I can't match the transformed point cloud with the real world coordinates exactly. Thanks.


[Feature Request] Make  settings panel as another tab instead of a separate window.

I think making it separate will give more aesthetics to the app, like it, and good luck everyone!

Good Idea. However, the settings window are not usually used often so this change might take a bit longer to implement because this will require a lot of backend code changes.


Removed the deprecated componentWillMount

We need to remove this function to remove warnings in react-native

Thank you sir! 🎩

Landed on v6.0.0 🔆


Forcing preferred changelog format

Description
Forcing preferred changelog format

When a normal PR with a changeset file is merged changeset-release.yml will run and create a Changeset version bump PR, only the job changeset-pr-version-bump runs
This triggers changeset-release.yml again but now only changeset-pr-approve-merge runs but doesn't run the last Auto approve PR step, it however updates the CHANGELOG.md file with our preferred format and pushes to the Changeset version bump, and then labels it changelog-ready
The labeling action triggers changeset-release.yml again and runs only the Auto approve PR step
Upon manual review and merging of the changeset PR, marketplace-publish.yml is triggered

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?

Running the python script locally and printing the formatted changes on the CHANGELOG.md file
Checklist:

[ ] My code follows the patterns of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation

Additional context

Related Issues

Reviewers

[!IMPORTANT]
Automates changelog formatting and approval process using a Python script and GitHub Actions workflow.

Script Changes:

overwrite_changeset_changelog.py now reformats existing changelog content if no new content is provided.
Removes first two lines of changeset format and ensures version numbers are bracketed.

Workflow Changes:

changeset-release.yml automates changelog formatting and labeling.
Adds steps to get current and previous versions, update changelog, commit changes, and push updates.
Adds 'changelog-ready' label after formatting, enabling auto-approval and merge.

This description was created by  for 1baa2152990bfa712309755b15943b32dfb019cd. It will automatically update as commits are pushed.

Also starting to wonder if this is worth the complexity. What is our current workflow now? Do we manually edit the file?

I think it is, we'll need less manual edits if we just click merge

Also starting to wonder if this is worth the complexity. What is our current workflow now? Do we manually edit the file?

I think it is, we'll need less manual edits if we just click merge

also, is ready to merge and wasn't that complex

Also starting to wonder if this is worth the complexity. What is our current workflow now? Do we manually edit the file?

I think it is, we'll need less manual edits if we just click merge

also, is ready to merge and wasn't that complex

the current workfow is manually running git pull & checkout into the changeset branch, updating the CHANGELOG file with the proper format, running git add, git commit, git push, and then clicking merge,
I think is worth it to reduce all of that to just clicking merge


Sema: Clean up fix for https://bugs.swift.org/browse/SR-9218

Can one of the admins verify this patch?


Node 12 Error: DeprecationWarning: OutgoingMessage.prototype._headers is deprecated

Node version: 12.13
Sails version (sails): 1.2.3
ORM hook version (sails-hook-orm):
Sockets hook version (sails-hook-sockets):
Organics hook version (sails-hook-organics):
Grunt hook version (sails-hook-grunt):
Uploads hook version (sails-hook-uploads):
DB adapter & version (e.g. sails-mysql@5.55.5):
Skipper adapter & version (e.g. skipper-s3@5.55.5):

The error message shows up when server running on Node.js version >= 12.x.x.
This link says that _headers should be used getHeaders, setHeader instead.

@mythofleader When / where are you seeing this error? Would you be willing to provide us a repo that reproduces this (we can run it with node 12.x.x)?

@johnabrams7 I found that error while I was testing this serverless-http project.
The way to check the error is

use node.js version v12.13.0
install serverless-http and test the sails.js file in test folder

There are some files using res._headers.

serverless-http: lib/response.js
sails: lib/router/res.js

I sent a pull request to serverless-http about this error few days ago.

@mythofleader you can change res._header to res.getHeaders in lib to fix it


marks for quick directory tree traversal

Contributing guidelines

[X] I have read CONTRIBUTING.md
[X] I have read CODE_OF_CONDUCT.md

Module(s)
mini.files
Description
I am test driving mini.files to replace Vifm as my neovim file manager. I have futzed around a bit and now having it working quite well with a couple of mappings I found in these pages.
However, one feature I am missing is marks. That is, the ability to mark a directory location with 'ma' and go to that mark with 'a. This is particularly useful if the marks can be persistent between invocations of neovim--so allowing configuration of marks associated with directories in the .setup().
Any possibility for this feature?

Thanks for the suggestion!
I don't think adding marks in 'mini.files' will be done, mostly because it would require substantial addition to the code.
At the moment I am working on a new module which will allow creating persistent sets of labelled files and directories. This might be a better fit for this workflow. It won't be exactly the same as you describe, but close.
I'll think about this in the meantime.

Thanks for the quick reply! I look forward to your future work on mini.files.
Your work is valuable to the neovim community and I really appreciate it. It won't be long until I have a 'pure' Mini neovim init.lua.


Fixes video thread that sleep before dispatching eos.

Sleeping here was to avoid a busyloop when waiting the user/code to do something when eos happened.
I am not trying to refactor this code, but this Event allow a instant reactivity from the mainthread to the frame's thread, and reduce the lag, visually.
Fixes #7417

Strictly speaking we could still get into a situation where it waits .2s (e.g. the user clicks play -> event is set in main thread -> event is cleared in second thread -> we wait the .2 timeout, this can happen in each loop iteration). However, it is still strictly better than before, so it should be fine.

That's the goal, not being a busy loop. You could honestly push to to 60s for example, it triggers only when there is a change that requires an action from the second thread.
I'm just to scared to push it, and as i said, didn't want to go refactor, just reduce the lag.

I switched to using a queue because with an event, we have to clear it, but that would lead to having to wait if the user e.g. stopped just after we cleared it. We could check the event before clearing it in the thread and only clear it if the event is set, but then we could potentially clear the event again after the user set it so now we'd have to wait longer again until it times out, The queue makes the one way directionality (kivy adds to the queue, thread only removes from the queue) clearer so we don't have to deal with having to clear and the issues that come with it because with the current implementation we can be sure that it never has to wait once the user asks to wakeup.
And this way, we can wait after eof or when paused, indefinitely without having to periodically check by timing out. We only need to do that with events because it is cleared in the thread so we can't be sure we didn't clear it after a user set it. But, with the queue, this kind of issue doesn't exist.
Also, sorry @tito for hijacking your PR.

After talking on Discord I can see that what I wrote isn't clear it all. So here's a more specific example of why I had an issue with tito's original PR and suggested changes, and how my current commit fixed it.
The problem with master is that ideally we would not like to wait at all once the kivy thread signals to unpause, exit, etc. Currently in master it sleeps for some ms in a busy loop and responds after this ms timeout, adding up to 200ms latency.
This PR instead originally replaced some of the sleep calls with an event that waited the 200ms and then timed out after those ms. So it is still a busy loop of 200ms resolution, but when kivy signals a change, we respond faster because we wake up from the event wait immediately. However, this only fixed it in one place so we still have some sleep calls.
But an even bigger issue is with the design of the event. I tried to explain this in my original response with the suggested changes, but it probably wasn't clear. So I'll assume that we took the approach of the PR and replaced all sleep calls with event waiting, like in https://github.com/kivy/kivy/pull/7469. This design is that the kivy thread sets the event whenever it needs a change from the player, e.g. unpasuing, seeking, stopping. The 2nd thread then checks if it has been set and clears itself if it was set. Originally in this PR, the event always cleared itself, without even checking.
The problem is that this leads to sometimes having to wait the full 200ms timeout when multiple events happen right after the other. It is still strictly better than master, but I thought it could be done more optimally. Here's the problem situation copied from discord:
2nd thread: waits for unpausing
Kivy thread: sets pause and wakes up thread
2nd thread: wakes up
Kivy thread: sets player to stop, wakes up thread again but event is still set so no change
2nd thread: after woken up it goes around the loop to `ensure_idle` which checks event was set, yes, so it resets it
2nd thread: gets next frame, next frame is not yet ready so in `no_idle.wait(val)` it sleep for the full frame duration because event is cleared

We could do better using e.g. the queue implementation that I pushed to this PR. Because with a queue, we never have to reset the event so we never lose any signals from the Kivy thread. So with this PR currently, there will never be any latency from the waiting and the thread will respond immediately (except if the thread is busy doing something of course). With the current implementation of the PR, the sequence of events from above will instead happens in one of two ways:
2nd thread: waits for unpausing
Kivy thread: sets pause and wakes up thread by adding to queue
2nd thread: wakes up
Kivy thread: sets player to stop, wakes up thread again but 2nd thread hasn't read the queue yet so no change
2nd thread: after woken up it empties the queue and checks that need close is true so it returns

Or in an alternative version,
2nd thread: waits for unpausing
Kivy thread: sets pause and wakes up thread by adding to queue
2nd thread: wakes up and clears queue and goes around loop to get next frame
Kivy thread: sets player to stop, wakes up thread again because queue is now empty so it adds item to queue
2nd thread: gets next frame, next frame is not yet ready so it calls `wait_for_wakeup(val)`, but that returns immediately because there's something on queue so it goes around loop again, sees condition of loop is False because need close is True, so it returns immediately

thank you for your work. one thing remaining is that with the change of removing the daemon flag from the frame fetching thread the app won't exit if unload function not gets called.
How about adding an event listener for Window.on_close when the thread starts (and of course removing when the thread stops) to solve this case?

Hmm, doesn't __del__ take care of that?
I'm hesitant adding any callbacsk to on_close, because kivy widgets generally aren't monitoring the state of globals such as the current app or window. So this would be a significant change in that direction, which ultimately makes separate modules (core player and window/app) more entangled which makes things harder in the long term. Ideally providers/widgets etc are self contained completely.
But, if __del__ doesn't fix this issue, then I think we could add something like what you suggest, but instead of here in core video, we should add it to the video widget, because that widget should be responsible for cleaning up after using the core video resource. But also, ideally we would clean up after the app closes, rather than when the window closes, because that makes more sense in terms of the lifecycle of kivy widgets and the app, but there may not be an app present so I guess window is the next best thing, but it still makes me a little uncomfortable. This is part of the general kivy issue with cleanup and global variables/aggressive imports.
So I'm really hoping __del__ fixes this, can you confirm that it doesn't?

I am currently testing the code in my app. just ran into the double lock acquisition with self._trigger.cancel() problem again when calling unload and currently try to find out what causes this issue (probably just another thing in my app). One this is fixed i can check the general video lifecycle

Hmm, I wonder though how you could run into double locking with cancel. If you look at the method: https://github.com/kivy/kivy/blob/master/kivy/_clock.pyx#L142, it executes no user code, only internal code, which calls no user code. So I don't see how it could ever run into a double lock situation.
The only possibility is that you have a __del__ method somewhere, which gets called by python while cancel holds the lock during it's garbage collection cycle and in your code you call a Clock method. If that's the case, please take a look at https://github.com/kivy/kivy/blob/master/kivy/_clock.pyx#L455.

I have no explicit del function somewhere in my code, but actually the problem indeed appears in the situation where unload() gets called from VideoFFPy.del. I try to reproduce with a minimalistic app, but no sucess so far. Maybe a dump question, but is there a situation apart from garbage collection where the del function is supposed to be called in kivy?

And about the application exit. the unload on __del__ works as long as the frame fetching thread is not running. as soon as the video is running, stopping the application simply hangs because the thread still holds a reference to the video instance and never returns, thus we're in the situation where we explicitely need to interrupt the thread.
I tried with this code:
if __name__ == '__main__':
    from kivy.app import App
    from kivy.uix import video
    import sys

    video.CoreVideo = VideoFFPy

    if len(sys.argv) != 2:
        print("usage: %s file" % sys.argv[0])
        sys.exit(1)

    class VideoApp(App):

        def build(self):
            v = self.v = video.Video(source=sys.argv[1], play=True)
            return v

    VideoApp().run()

And again about the double lock. if i move the trigger.cancel() to _next_frame_run, it works as expected in my app. Would this be an option to you to cancel the trigger from withing the thread?

ideally we would clean up after the app closes, rather than when the window closes, because that makes more sense in terms of the lifecycle of kivy widgets and the app, but there may not be an app present so I guess window is the next best thing, but it still makes me a little uncomfortable.

I agree. i just tried to bypass kivy entirely for the cleanup task with atexit.register, but unfortunately atexit happens too late. digging further.

This is a diff that the current PR is actually working in all cases i tested.
https://gist.github.com/rnixx/02b632f58d16e884a7d15341c0743241
Maybe there is a cleaner solution to react on application close than binding to window event, but actually this solutions works.
Also it might be better to introduce such behavior in video base class, or imho even better an event on the application object which is supposed to be bound for cleanup tasks.

self.eos == 'pause' in _do_eos seems to not be reachable any more due to this change:
https://github.com/kivy/kivy/commit/27b36c393502a3468abee86fbccfeb76a52022e0#diff-c5dc0033e87690d91aaa74f321c0ff059fbf6b8260610e3673c145eef2b1ff1dR70

About eos=pause being deprecated, I didn't remove it because I saw it wasn't removed from other video providers, including __init__.py and it doesn't hurt to leave for now. But that can be properly deprecated in another PR (so if users manually sets it, it emits a warning, right now it only warns if passed through __init__).
About cancling the trigger from under __del__, I just removed the cancel entirely because it's not needed. We set next frame and _ffplayer to None just below, meaning that if the clock calls _redraw once player is dead, it will just return immediately.
Finally, I reset daemon to True I would rather deal with that in a different PR once this is merged to not further complicate this PR.

Finally, I reset daemon to True I would rather deal with that in a different PR once this is merged to not further complicate this PR.

Ready to merge then?


Fix #310 / #307

Dict merge will overwrite duplicate keys with last element:
a = {'a': 1, 'b': 2, 'c': 3}
b = {'c': 33, 'd': 44}
{**a, **b}
Out[4]: {'a': 1, 'b': 2, 'c': 33, 'd': 44}

As we have Python 3.9 in the project, it might be neater to write this like:
template_values = self.match | self.rule
And then use the template_values where required.

As we have Python 3.9 in the project, it might be neater to write this like:
template_values = self.match | self.rule
And then use the template_values where required.

Oh, I never used | before, I'll update my PR!

Updated the PR and added test for alert_text_jinja


anti virus malware

now and again my antivirus program would notify me that tabnine is a risk of malware not sure if this is because my antivirus sucks or this program has malware ?
gz#21684(related to Zendesk ticket #21684)

Hi @Shawn2208
Tabnine is not malware. Which antivirus are you using?
Have you experienced this with other programs as well?

@TzufTabnine that's what i thought too not sure whats going on to be honest. i'm using TotalAV. no just tabnine i keep getting notifications about malware then i get another notification saying its been sorted its ongoing issue. its most likely my AV.


Raspotify connected but no sound

I recently in stalled the easy version of Spotify connect. While I can connect there is not sound. I am able to play and hear music from files on the Pi 3 B just not through Raspotify. It may be of note I am using the new DAC2 HD. Below is from aplay -l and service config for Raspotify.
pi@raspberrypi:~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 1: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 2: sndrpihifiberry [snd_rpi_hifiberry_dacplushd], device 0: HiFiBerry DAC+ HD HiFi pcm179x-hifi-0 [HiFiBerry DAC+ HD HiFi pcm179x-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
Description=Raspotify
After=network.target
[Service]
User=raspotify
Group=raspotify
Restart=always
RestartSec=10
PermissionsStartOnly=true
ExecStartPre=/bin/mkdir -m 0755 -p /var/cache/raspotify ; /bin/chown raspotify:raspotify /var/cache/raspotify
Environment="DEVICE_NAME=raspotify (%H)"
Environment="BITRATE=320"
Environment="CACHE_ARGS=--disable-audio-cache"
Environment="VOLUME_ARGS=--enable-volume-normalisation --linear-volume --initial-volume=100"
Environment="BACKEND_ARGS=--backend alsa"
EnvironmentFile=-/etc/default/raspotify
ExecStart=/usr/bin/librespot --device hw:2,0 $BACKEND_ARGS --bitrate ${BITRATE} $CACHE_ARGS $VOLUME_ARGS $OPTIONS
[Install]
WantedBy=multi-user.target
Any assistance would be gratefully received,
Cheers,
Allen

Hello Allen,
One thing that seems wrong to me, after I just had a quick look, is that --linear-volume should be --mixer-linear-volume
i.e. VOLUME_ARGS="--enable-volume-normalisation --mixer-linear-volume --initial-volume=100"
Since the new version of librespot has changed some of it's option flags.
Also check out this #293
Hopefully you will now get one step closer...

@Callenberg --mixer-linear-volume is not a valid arg for the version of librespot that is currently packaged with raspotify. In the issue you link to the OP replaced the packed version of librespot with a compiled version of librespot from the git dev branch.
librespot doesn't have a proper --help arg but if you call it without any args it will throw an error show you the available args and exit.
@aholloway17 Unless you've already changed it the problem is more than likely that the DAC you want to use is card 2. By default card 0 is the default which in your case is HDMI.
See https://github.com/dtcooper/raspotify#troubleshooting Except you'd want to change it to 2 not 1.


'WindowsPath' object has no attribute 'expanduser'

my system is win10, i  cd my project dir and use "pipenv --three",find one error"AttributeError: 'WindowsPath' object has no attribute 'expanduser'",please help me,thank you

Hi, could you provide a more complete traceback, and fill out the issue template? Debugging with such scarce information is like finding a needle in a haystack. It would help immensely if you provide as comprehensive information as possible.

Update pipenv and if you still have trouble see if you have pathlib2 installed in your environment (pip freeze and check for pathlib2)
If you have pathlib2 and it is older than version 2.3.0 then you can run pip install --upgrade pathlib2 to update the one in your environment.
Additionally make sure pipenv is up to date.  Also please consider using pipenv with python 3.


Part2

Part 2 is completed minus the changes from Part4 (game end)
Here is a sample output: Please test the this vigorously. Part 2 is big and adds a lot of significant changes.

"/home/hyperion/Documents/University/Winter_2020/Comp 345_C++/Project/Comp345Project/NewHaven/cmake-build-debug/Part2"
Enter the number of players (2, 3 or 4): 2
LOADING ../config/GBMapConfig_0.config
LOADING SUCCESSFUL
CREATING 2 PLAYERS!
Enter your 8-digit student ID number: 40057065
Enter your 8-digit student ID number: 12345678
2 PLAYERS HAVE BEEN SUCCESSFULLY CREATED!
LOADING ../config/VGMapNum_0.config
LOADING SUCCESSFUL
LOADING ../config/VGMapNum_1.config
LOADING SUCCESSFUL
SETTING GAME RESOURCE MARKERS!
GAME RESOURCE MARKERS SET SUCCESSFULLY
CREATING BUILDING DECK!
BUILDING DECK CREATED SUCCESSFULLY!
CREATING HARVEST DECK!
HARVEST DECK CREATED SUCCESSFULLY!
NEW PLAYER GETTING READY TO DRAW HIS/HER INTIAL SETUP!

NEW PLAYER GETTING READY TO DRAW HIS/HER INTIAL SETUP!

INITIALIZATION SUCCESSFUL!

STARTING PLAYER HAS ID: 12345678
***GAME BOARD ID CONFIGURATION***
 -  00 01 02 03 04 -
 -  05 06 07 08 09 -
 -  10 11 12 13 14 -
 -  15 16 17 18 19 -
 -  20 21 22 23 24 -

***GAME BOARD CONTENT***
ST  SH    01  01    02  02    03  03    WT  SH
WD  WD    01  01    02  02    03  03    WD  WT

05  05    06  06    07  07    08  08    09  09
05  05    06  06    07  07    08  08    09  09

10  10    11  11    12  12    13  13    14  14
10  10    11  11    12  12    13  13    14  14

15  15    16  16    17  17    18  18    19  19
15  15    16  16    17  17    18  18    19  19

ST  ST    21  21    22  22    23  23    SH  ST
WT  WD    21  21    22  22    23  23    WT  SH

12345678 Your turn! What would you like to do? Enter the number for the move you'd like to make.
1	Play a Harvest tile from your possession
2	Play with your Shipment tile.
Choice: 1
tile index: 0 content	Sheep , Stone , Wood , Sheep
tile index: 1 content	Wood , Wheat , Wood , Sheep
Tile index to place: 1
position index to place tile: 9
***UPDATED GAME BOARD CONTENT***
ST  SH    01  01    02  02    03  03    WT  SH
WD  WD    01  01    02  02    03  03    WD  WT

05  05    06  06    07  07    08  08    WD  WT
05  05    06  06    07  07    08  08    SH  WD

10  10    11  11    12  12    13  13    14  14
10  10    11  11    12  12    13  13    14  14

15  15    16  16    17  17    18  18    19  19
15  15    16  16    17  17    18  18    19  19

ST  ST    21  21    22  22    23  23    SH  ST
WT  WD    21  21    22  22    23  23    WT  SH

                    ***STRATFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    16    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    27    28    29         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	1

Stone:	0

Wheat:	2

Wood:	3
building index: 1 type	Wheat cost: 3
building index: 2 type	Wood cost: 4
building index: 3 type	Wheat cost: 4
building index: 4 type	Sheep cost: 3
building index: 5 type	Wheat cost: 1
Building index to play (0 to skip): 5
position index to place tile: 29
Do you want to place the building face up or face down? (0 for face up or 1 for face down):
0
Select one of the options below:
1	Play another building from your possession
2	Done building.
Choice: 1
                    ***STRATFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    16    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    27    28    WT         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	1

Stone:	0

Wheat:	1

Wood:	3
building index: 1 type	Wheat cost: 3
building index: 2 type	Wood cost: 4
building index: 3 type	Wheat cost: 4
building index: 4 type	Sheep cost: 3
Building index to play (0 to skip): 0
40057065 Would you like to use the leftover resources to erect a building in your village?
1	Erect a building.
2	Pass
Choice: 1
                    ***GUILFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    16    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    27    28    29         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	1

Stone:	0

Wheat:	1

Wood:	3
building index: 1 type	Stone cost: 1
building index: 2 type	Wood cost: 3
building index: 3 type	Wheat cost: 6
building index: 4 type	Wheat cost: 3
building index: 5 type	Sheep cost: 3
Building index to play (0 to skip): 2
position index to place tile: 16
Do you want to place the building face up or face down? (0 for face up or 1 for face down):
0
Select one of the options below:
1	Play another building from your possession
2	Done building.
Choice: 1
                    ***GUILFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    WD    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    27    28    29         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	1

Stone:	0

Wheat:	1

Wood:	0
building index: 1 type	Stone cost: 1
building index: 2 type	Wheat cost: 6
building index: 3 type	Wheat cost: 3
building index: 4 type	Sheep cost: 3
Building index to play (0 to skip): 0
Leftover resources:

Sheep:	1

Stone:	0

Wheat:	1

Wood:	0

***Building Pool Content***

building index: 1 type	Stone cost: 4
building index: 2 type	Wheat cost: 6
building index: 3 type	Stone cost: 1
building index: 4 type	Wheat cost: 2
building index: 5 type	Stone cost: 2

Enter building card index to draw from the pool: 2

Do you want to pick another card from the pool? (y/n): y

***Building Pool Content***

building index: 1 type	Stone cost: 4
building index: 2 type	Stone cost: 1
building index: 3 type	Wheat cost: 2
building index: 4 type	Stone cost: 2

Enter building card index to draw from the pool: 3

DRAWING A HARVEST TILE
***GAME BOARD ID CONFIGURATION***
 -  00 01 02 03 04 -
 -  05 06 07 08 09 -
 -  10 11 12 13 14 -
 -  15 16 17 18 19 -
 -  20 21 22 23 24 -

***GAME BOARD CONTENT***
ST  SH    01  01    02  02    03  03    WT  SH
WD  WD    01  01    02  02    03  03    WD  WT

05  05    06  06    07  07    08  08    WD  WT
05  05    06  06    07  07    08  08    SH  WD

10  10    11  11    12  12    13  13    14  14
10  10    11  11    12  12    13  13    14  14

15  15    16  16    17  17    18  18    19  19
15  15    16  16    17  17    18  18    19  19

ST  ST    21  21    22  22    23  23    SH  ST
WT  WD    21  21    22  22    23  23    WT  SH

40057065 Your turn! What would you like to do? Enter the number for the move you'd like to make.
1	Play a Harvest tile from your possession
2	Play with your Shipment tile.
Choice: 1
tile index: 0 content	Stone , Wheat , Stone , Wood
tile index: 1 content	Stone , Wheat , Wood , Stone
Tile index to place: 0
position index to place tile: 15
***UPDATED GAME BOARD CONTENT***
ST  SH    01  01    02  02    03  03    WT  SH
WD  WD    01  01    02  02    03  03    WD  WT

05  05    06  06    07  07    08  08    WD  WT
05  05    06  06    07  07    08  08    SH  WD

10  10    11  11    12  12    13  13    14  14
10  10    11  11    12  12    13  13    14  14

ST  WT    16  16    17  17    18  18    19  19
WD  ST    16  16    17  17    18  18    19  19

ST  ST    21  21    22  22    23  23    SH  ST
WT  WD    21  21    22  22    23  23    WT  SH

                    ***GUILFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    WD    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    27    28    29         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	0

Stone:	4

Wheat:	1

Wood:	1
building index: 1 type	Stone cost: 1
building index: 2 type	Wheat cost: 6
building index: 3 type	Wheat cost: 3
building index: 4 type	Sheep cost: 3
Building index to play (0 to skip): 1
position index to place tile: 27
Do you want to place the building face up or face down? (0 for face up or 1 for face down):
0
Select one of the options below:
1	Play another building from your possession
2	Done building.
Choice: 1
                    ***GUILFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    WD    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    ST    28    29         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	0

Stone:	3

Wheat:	1

Wood:	1
building index: 1 type	Wheat cost: 6
building index: 2 type	Wheat cost: 3
building index: 3 type	Sheep cost: 3
Building index to play (0 to skip): 0
12345678 Would you like to use the leftover resources to erect a building in your village?
1	Erect a building.
2	Pass
Choice: 1
                    ***STRATFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    16    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    27    28    WT         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	0

Stone:	3

Wheat:	1

Wood:	1
building index: 1 type	Wheat cost: 3
building index: 2 type	Wood cost: 4
building index: 3 type	Wheat cost: 4
building index: 4 type	Sheep cost: 3
building index: 5 type	Wheat cost: 6
building index: 6 type	Wheat cost: 2
Building index to play (0 to skip): 0
Leftover resources:

Sheep:	0

Stone:	3

Wheat:	1

Wood:	1

***Building Pool Content***

building index: 1 type	Stone cost: 4
building index: 2 type	Stone cost: 1
building index: 3 type	Stone cost: 2
building index: 4 type	Wood cost: 1
building index: 5 type	Wheat cost: 5

Enter building card index to draw from the pool: 4

DRAWING A HARVEST TILE
***GAME BOARD ID CONFIGURATION***
 -  00 01 02 03 04 -
 -  05 06 07 08 09 -
 -  10 11 12 13 14 -
 -  15 16 17 18 19 -
 -  20 21 22 23 24 -

***GAME BOARD CONTENT***
ST  SH    01  01    02  02    03  03    WT  SH
WD  WD    01  01    02  02    03  03    WD  WT

05  05    06  06    07  07    08  08    WD  WT
05  05    06  06    07  07    08  08    SH  WD

10  10    11  11    12  12    13  13    14  14
10  10    11  11    12  12    13  13    14  14

ST  WT    16  16    17  17    18  18    19  19
WD  ST    16  16    17  17    18  18    19  19

ST  ST    21  21    22  22    23  23    SH  ST
WT  WD    21  21    22  22    23  23    WT  SH

12345678 Your turn! What would you like to do? Enter the number for the move you'd like to make.
1	Play a Harvest tile from your possession
2	Play with your Shipment tile.
Choice: 1
tile index: 0 content	Sheep , Stone , Wood , Sheep
tile index: 1 content	Wood , Wood , Stone , Wood
Tile index to place: 0
position index to place tile: 14
***UPDATED GAME BOARD CONTENT***
ST  SH    01  01    02  02    03  03    WT  SH
WD  WD    01  01    02  02    03  03    WD  WT

05  05    06  06    07  07    08  08    WD  WT
05  05    06  06    07  07    08  08    SH  WD

10  10    11  11    12  12    13  13    SH  ST
10  10    11  11    12  12    13  13    SH  WD

ST  WT    16  16    17  17    18  18    19  19
WD  ST    16  16    17  17    18  18    19  19

ST  ST    21  21    22  22    23  23    SH  ST
WT  WD    21  21    22  22    23  23    WT  SH

                    ***STRATFORD***
-------------------------------------------------------------------------
        6 |    00    01    02    03    04         | #Colonists: 06
        5 |    05    06    07    08    09         | #Colonists: 05
        4 |    10    11    12    13    14         | #Colonists: 04
        3 |    15    16    17    18    19         | #Colonists: 03
        2 |    20    21    22    23    24         | #Colonists: 02
        1 |    25    26    27    28    WT         | #Colonists: 01
-------------------------------------------------------------------------
#Colonists|    05    04    03    04    05

Available resources:

Sheep:	3

Stone:	1

Wheat:	0

Wood:	1
building index: 1 type	Wheat cost: 3
building index: 2 type	Wood cost: 4
building index: 3 type	Wheat cost: 4
building index: 4 type	Sheep cost: 3
building index: 5 type	Wheat cost: 6
building index: 6 type	Wheat cost: 2
Building index to play (0 to skip): 4
position index to place tile: 17
Do you want to place the building face up or face down? (0 for face up or 1 for face down):
0
Select one of the options below:
1	Play another building from your possession
2	Done building.
Choice: 2
40057065 Would you like to use the leftover resources to erect a building in your village?
1	Erect a building.
2	Pass
Choice: 1

Also made a few formatting changes for better readability of outputs.


Onivim should offer autocomplete for its own preferences

Onivim should offer autocomplete for its own preferences.
This is how the Coc plugin for Neovim does it:

duplicate of #2837


Replace DarkTable hack with something less destructive

My intention is
if type(img[tag]) is list:
img[tag] = ", ".join( str(x) for x in img[tag])
But, this may reintroduce the conversion problem

Could read up on exif metadata to manage this also


Allow specifying runtime asset path post-processor for web target.

Feature request

What is the expected behavior?
I would like to be able to specify a runtime post-processor for asset path. If specified, the post-processor should be used to determine the final path when loading chunks.
What is motivation or use case for adding/changing the behavior?
Right now the logic for determining asset path is currently hardcoded as __webpack_require__.p + assetPath in these places:

webpack core: JsonpMainTemplatePlugin, in the generated jsonpScriptSrc function
MiniCssExtractPlugin: Inside the requireEnsure hook
file-loader: In the code generation function

This means the output asset path must be predetermined at compile-time. By being able to post-process the loaded asset path at runtime, these issues can be more easily solved:

#7787 — Support for long-term caching based on generated content, not source files for chunkhash.
This is the main reason I open this issue. I would like to be able to address asset files via the asset’s content hash. This allows for safer long-term caching (since in some cases, the content of a chunk can change without affecting [chunkhash], which may cause the webpack runtime to crash in a scenario I previously reported in #5684).
It also allows easy validation of assets integrity. For example, after compilation, I may prepend the name of each file with the SHA256 hash of its contents. This allows checking the integrity of each asset by verifying the contents against its name. Then at runtime, I can inject an assets post-processor that inserts the SHA1 hash into the filename.
I will work on a proof-of-concept, which I will comment on this issue later.

#8115 — Ability to override jsonpScriptSrc.
Note that the link issue has been closed since the opener solved this by manually editing the generated file.

How should this be implemented in your opinion?
I would add an option, output.assetPathPostProcessor (string) which will be the name of the function that can be used to post-process the asset URL. The function will receive the asset URL (publicPath + assetPath) and it should return a function. Then I will modify jsonpScriptSrc so that it calls the function at output.assetPathPostProcessor if it is specified. I will also have to make contributions to file-loader and mini-css-extract-plugin to become aware of this option.
Are you willing to work on this yourself?
yes

Here is a proof-of-concept.
https://github.com/dtinth/webpack-assets-post-processing-poc-ipfs
Here, long-term caching is done using IPFS instead of webpack. IPFS is content-addressed — we refer to an asset on IPFS using the hash of its contents. This means assets can be reused more effectively and ensures its integrity.
In the PoC, I created a webpack plugin, RuntimeJsonpScriptSrcPostProcessorPlugin, that modifies the generated webpack runtime code like this:
-/******/ 				script.src = jsonpScriptSrc(chunkId);
+/******/ 				script.src = (function(chunkId) {
+/******/ 				               return AppRuntime.postProcessAssetPath(jsonpScriptSrc(chunkId))
+/******/ 				             })(chunkId);
+/******/

I also created a pitching loader that wraps file-loader with an AppRuntime.postProcessAssetPath call. After compilation, the postProcessAssetPath is generated and injected into the HTML file, which is called at runtime.
As you can see, there is a lot of hackery involved in order to pull this off. If webpack supported this runtime post-processing, it will be much easier.

fixed in webpack 5

❤


Workflow doesn't find cleaners I created

Hi,
thanks for your awesome software! I often have to clean emails, by (a) removing quote prefixes, (b) removing new lines, and (c) removing whitespace. The cleaner I created and named "Reformat Paragraph", does not show up in the Alfred workflow, nor in the "Workflow Universal Actions" - all other cleaners do. It does show up in the list provided by the Esse menu.
It would be great to run it from a workflow.
Thanks, Hans

Hey,
Yes, this is a limitation of the current version. I'm planning to change this in the future update, stay tuned

thank you!
On 7 Feb 2022, at 22:25, Alex Mazanov wrote:

Hey,
Yes, this is a limitation of the current version. I'm planning to
change this in the future update, stay tuned
--
Reply to this email directly or view it on GitHub:
https://github.com/amebalabs/Esse/issues/13#issuecomment-1032175591
You are receiving this because you authored the thread.
Message ID: @.***>

All the best,
Hans
http://tammen.org
...just another worker in rhythms, frequencies and intensities.


fix(): fix Crash happed when add space inside  numeric list

fix crash of wrong start and end index in case of adding a new line  in numeric list style
crash viedio.webm
after fixing issue.webm

Thanks for reporting. It looks that this happens when you add more than 10 items since. I'll fix it ASAP

Thanks for submitting this PR. This fixes the crash but adds a new problem, the text is changed here.
The problem happens when you add more than 10 items, some calculations get wrong.


Fix typo in icons docs

Description
Typo in docs
Visual changes
n/a
Functional changes

[x] Documentation is up-to-date.

Thank you!


[DBT][Feature] Consume dbt structured logs and report progress in real time

Problem
Currently, the dbt-ol integration consumes local artifacts (result.json) to send OL events. This is not optimal for the following reasons:

Progress is reported only at the end of a dbt command.
The events sent lack information:

The SQL sent in the model (or snapshot, for example) represents only a single query. In reality, a whole bunch of queries are executed for a single dbt node. Materializations contain all that SQL.
The errors (SQL syntax errors, for example) are not sent along with the OL events.

Closes: This aims at solving the following issue: https://github.com/OpenLineage/OpenLineage/issues/1297
Solution
This PR aims to solve the problems stated above. The solution explored consumes the dbt structured logs. It listens to relevant logs and generates OL events based on them.
With that:

Progress is reported in real time. No need to wait for the whole dbt command to finish. This is very helpful for long-running jobs.
The OL events contain more information:

Most importantly, there is an OL event for every single SQL query executed by a dbt node. This allows us to have full observability into the SQL executed. There is a parent-child relationship between the OL node event and the OL SQL query event. See picture below.
Errors are reported in the OL events. The errorMessage facet is filled out.
The dbt_version, input/output are also reported when relevant in the OL events sent.

This will also fix some issues regarding the timestamp of events (example here where the start and end timestamps are the same).

This solution is adapter-agnostic. We rely on the logs sent, and these contain information on the SQL queries executed. This is tested with Snowflake and Postgres (see unit tests).
The consumption of structured logs is hidden behind a command option (--consume-structured-logs). This will facilitate adoption and migration to the new way of reporting OL events of dbt commands.
Next Steps

Currently, structured logs are consumed for the run, seed, and snapshot commands. There are still test and build commands to add. This can be done in another PR, IMO.
To facilitate consumption of structured logs given the dbt version, we should add an abstraction layer on top of those events to parse them properly. dbt-core events and dbt-adapter events. This can be done in another PR, IMO.
What's the advantage of consuming the result.json over the structured logs that have more granular information? Maybe we can make this the single way of generating OL events. This can be done in another PR, IMO.

For this PR

I've added unit tests to document how the consumption of logs would look like. I recommend having a look at those (test_structured_logs.py). There are tests with the Snowflake and Postgres adapter.
I'll add more unit tests after some rounds of reviews. Test the parent-child relationship between node lifecycle events and SQL query events, for example.
I've generated the logs and mainfest in the unit tests from the jaffleshop hello world project.

One-line Summary:
Consume dbt structured log events and report progress in real time with additional information on the SQL queries executed by every dbt node.
Checklist

[x] You've signed-off your work
[x] Your pull request title follows our guidelines
[x] Your changes are accompanied by tests (if relevant)
[ ] Your change contains a small diff and is self-contained
[ ] You've updated any relevant documentation (if relevant)
[ ] Your comment includes a one-liner for the changelog about the specific purpose of the change (not required for changes to tests, docs, or CI config)
[ ] You've versioned the core OpenLineage model or facets according to SchemaVer (if relevant)
[ ] You've added a header to source files (if relevant)

SPDX-License-Identifier: Apache-2.0
Copyright 2018-2024 contributors to the OpenLineage project

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 79.23%. Comparing base (c9e3b84) to head (47c4d11).
Report is 3 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

:exclamation:  There is a different number of reports uploaded between BASE (c9e3b84) and HEAD (47c4d11). Click for more details.
HEAD has 3 uploads less than BASE

Flag
BASE (c9e3b84)
HEAD (47c4d11)

4
1

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3314      +/-   ##
==========================================
- Coverage   85.78%   79.23%   -6.55%
==========================================
  Files          54       35      -19
  Lines        3145     1888    -1257
==========================================
- Hits         2698     1496    -1202
+ Misses        447      392      -55

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

@JDarDagran

Requiring users to output all debug logs to the console feels excessive, especially if they just want to use them for OpenLineage. Would reading logs from the file be a viable alternative?

Very cool ! Thanks for the suggestion and the doc link. I missed it.
I agree ! It's indeed better (on UX side) to consume the log file instead of requiring users to print log lines.
From dbt's code it seems the logs are populated at the same time as the consol (setup here and events are sent here).
changes here https://github.com/OpenLineage/OpenLineage/pull/3314/commits/fd69839490155f5cc7261e05c940ca48a9663ad5

@MassyB one mypy error left:
openlineage/common/provider/dbt/structured_logs.py:468: error: Item "None" of "Optional[TextIO]" has no attribute "close"  [union-attr]


Problem with Samtools and coverage computations

I am running bcbio.variation.coverage computations on a WGS sample with a region BED file that contains all human genes. My intention is to get the coverage report for my priority regions (which happen to be all genes) with annotation of difficult regions. In the priority_coverage function of that module, in line 311, samtools is called with the coordinates of all regions in the command line call. That fails with a broken pipe error from samtools, probably because the commend line gets too long (it seems to contain all regions of at least one chromosome). samtools also allows specifying these regions by a BED file using the -L command. Would that be a more robust option?

Other options would be to directly use bedtools for selecting the regions by specifying the BAM as input (if bedtools uses the BAM index, that is), or continue specifying the regions as command line parameters but going through the regions in batches and call samtools for each batch separately, concatenating the outputs later on.

Sorry, now that I'm looking at the function I see that you already are batching the regions. I will investigate wether smaller batches solve my issue.

Got it, it's the changed bedtools syntax. Bcbio installed bedtools 2.24.0, and there the syntax should be -b BEDFILE -abam stdin instead of -a BEDFILE -b -. In the bedtools documentation it says that the syntax changed from 2.24.0 on.

So I believe that the bcbio code would have to be fixed here.

Um, I might be wrong again. It seems as if the bcbio syntax is semantically correct after all, but somehow it doesn't work in my installation. I will investigate.

Alright, found it. Some of the gene models I got from UCSC where really large, which somehow got bedtools to choke. When I removed them everything seems to run great again. Sorry for the confusion. The -sorted options could still be worthwhile, however, since it seems to address the sorting of the BAM file, not the BED file as I wrongly assumed before. Since that is always sorted it may make sense to set it in order to save RAM.

Sven-Eric;
Thanks so much for all the debugging on this. I added the -sorted option here to improve memory usage going forward. Let us know if there's anything else we can do to help with this case and hope you're getting useful coverage reports now.


Add comment box & create new comment #182

Codecov Report

Merging #204 into dev will increase coverage by 0.18%.
The diff coverage is 89.47%.

@@             Coverage Diff              @@
##                dev     #204      +/-   ##
============================================
+ Coverage     70.18%   70.37%   +0.18%
- Complexity      200      201       +1
============================================
  Files            72       72
  Lines           634      638       +4
============================================
+ Hits            445      449       +4
  Misses          189      189

Impacted Files
Coverage Δ
Complexity Δ

app/Models/Discussion.php
75% <0%> (ø)
4 <1> (ø)
:arrow_down:

app/Http/Controllers/CommentController.php
100% <100%> (ø)
3 <2> (+1)
:arrow_up:

app/Repositories/CommentRepository.php
100% <100%> (ø)
2 <0> (ø)
:arrow_down:

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 fdcc8cf...e4a8da3. Read the comment docs.


A trivial change to README.md to force a rebuild

Now that the dependencies have finally appear for conda search need to rebuild and see what happens.

Checklist

[x] Used a personal fork of the feedstock to propose changes
[ ] N/A Bumped the build number (if the version is unchanged)
[ ] N/A Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Previous builds failed due to seamm-ff-util and seamm-widgets dependencies not being available even though they built successfully. It seems that there is a delay!

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


MD5 is not a valid hash for passwords

Remove MD5 as a choice in intel.py, it is not a valid hash for the API.

Documentation and code corrected in version: 1.0.2 commit ceaa1ad266982177d6670a012fbf0ba120df874d

Not yet pushed to galaxy.ansible.com due to Server Error 500


Standard library sql interface to query data

It would be great for Java SDK to have something like SQLExec API in GO.
https://docs.immudb.io/master/develop/sqlstdlib.html
https://docs.immudb.io/master/jumpstart.html#sql-operations-with-the-go-sdk
Currently, there is no way for JAVA APIs to support SQL.

It's supported in latest release #54


Lock down dependencies to be more conservative about upgrades

This is to prevent surprise changes in behavior such as https://github.com/andris9/smtp-connection/issues/32
I completely understand the intent here to use the caret, but please hear where I'm coming from. I send millions of emails through this wonderful framework and I absolutely cannot have surprise changes in behavior. It'd be extremely helpful if we can lock down the dependencies so I can qualify each upgrade.

I totally understand the problem, the patch level fixes introduced were necessary but unfortunately had some unwanted side effects. To prevent such issues in the future always use npm-shrinkwrap in production and do not rely on automatic dependency version handling as the same thing can happen in any other module as well.


Use semantic versioning for released versions of the website

Description
The production website has been using incremental numbers for versions.  This issue proposes switching to use Semantic Versioning.  This approach to versioning makes it easier for downstream users to gauge the level of change from the version number.
As part of this work, releases will be documented using GitHub releases.  This provides information about what changed and what actions are required to update to the new release.
Related Work

https://github.com/clearlydefined/service/issues/1027
https://github.com/clearlydefined/crawler/issues/540
#1033
https://github.com/clearlydefined/service/issues/1026
https://github.com/clearlydefined/crawler/issues/539

The website is now released using semver.


constraintenforcer: Trigger task restarts when appropriate

The constraint enforcer currently sets task desired state to "shutdown"
directly, which means the orchestrator will consider these tasks already
processed, and won't trigger restarts. While this is appropriate for
global services, replicated services should keep the desired number of
replicas running, so each task shut down by the constraint enforcer
should be restarted somewhere else.
This changes the constraint enforcer to trigger a task shutdown by
updating the actual state rather than desired state. This will cause the
orchestrator to restart the task when necessary. It's not a perfect
solution, because it bends rules about field ownership, and may cause
the replacement task to start before the old one stops. However, it's a
good compromise solution for this problem that doesn't require absorbing
the constraint enforcer into each orchestrator (which wouldn't fit the
model well), or adding a third type of state to every task.
Addresses https://github.com/docker/docker/issues/31014
cc @dongluochen @aluzzardi

Codecov Report

Merging #1958 into master will increase coverage by 0.08%.
The diff coverage is 50%.

@@            Coverage Diff             @@
##           master    #1958      +/-   ##
==========================================
+ Coverage    54.5%   54.58%   +0.08%
==========================================
  Files         108      108
  Lines       18577    18586       +9
==========================================
+ Hits        10125    10146      +21
+ Misses       7217     7205      -12
  Partials     1235     1235

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 9ef1e42...8c896af. Read the comment docs.

LGTM

LGTM


Compatability Issue

The current Dart SDK version is 2.1.0-dev.0.0.flutter-be6309690f.
Because flutter_ble_lib depends on protobuf >=0.2.0 <=0.9.0 which requires SDK version >=0.7.5 <2.0.0-∞, version solving failed.
pub upgrade failed (1)

Temporarily solved it like this xD
dependencies:
...
xml: any
intl_translation: any

Hi @roshan-rajendran ,
I'm having the same issue, can you explain your solution a bit better?

Hi @npanagop
The problem is the version of dart which is creating an issue .
So  change  the following and follow the rest of the procedures like get dependencies and build the app . You shouldn't have any issues :).

In the pubspec.yaml of the site directory change the dart version to which ever you are using like so .

Before
environment:
  sdk: ">=1.8.0 <2.0.0"

After
environment:
  sdk: ">=1.8.0 <2.1.0"

Go to the pubspec.yaml file in the test directory and change the following
Before

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^0.1.0
  uuid: 0.5.3

After
dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^0.1.0
  uuid: any


Smarter sampling and forcing tracing for certain requests

I have a question regarding how the tracing is turned on for requests:
I understand that on one hand there's the Sampler which allows for a service to basically turn on tracing for a random sample of requests (seems like the info part is not implemented yet in any way, correct?).
Then there is also the "X-Not-Sampled" header, which if set disables tracing for the call.
So basically sleuth allows for turning on tracing for a certain percentage of requests at any point, or disallowing the tracing of a call setting the X-Not-Sampled header.
Is there any way to force the tracing of a call setting a header e.g. if you want to debug a certain call?
In our experience logging all calls often creates too much information and using sampling proves most valuable at the most external entrypoints (so that we always get a full trace, instead of partial traces if some random sampler activates tracing somewhere downstream).
But it'd still be very useful to be able to turn on tracing to debug certain calls - so maybe having the same behavior of the X-B3-Sampled header in brave?
Also being able to trace certain calls, e.g. by rest method name with a different percentage would be very useful. I guess that the info part of the sampler is supposed to be used for this, but I can't see how this is going to work in the current implementation
I'm probably missing something on how this is working - if you have any more documentation/info on how these headers are being used please let me know!
Thanks in advance for your help!

In Zipkin there is the debug flag that can be used to enforce sampling. We don't support that but ATM you can try to use a custom sampler (like this one https://github.com/spring-cloud/spring-cloud-sleuth/blob/master/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/sampler/PercentageBasedSampler.java). If you need to pass some values to that sampler you can add some logs or tags on Span and then profit from that in a Sampler.

Ping?

Closing due to lack of feedback


Code coverage with babel

It would be good to make a code coverage tool to work with babel. I have tried to configure both istanbul, babel-istanbul/isparta to get a correct code coverage report, but i haven´t be able to get the correct code references on the report. I didn´t even know if the coverage metrics are right.
Could you provide an example for this setup?
There is another coverage tool besides istanbul which plays better with babel?
Thank you!

@jonathansamines heres an example: https://gist.github.com/amcdnl/fe31562a3919914fad0e

Thank your for that, i will give it a try. But I was wondering if was possible to do the same only with the command line tools provided by istanbul and babel. I have tried some setups to make that and I succeeded getting a coverage report, but the code shown in the report it is not the original code but the transpiled code.

@jonathansamines Ya, i stabbed at it for a while and finally gave up...just so much easier to do in code ;)

@amcdnl Yeah, i gave up too. Btw, the gulp setup worked as a charm!

@jonathansamines w00t!
@thejameskyle - feel free to steal my sample if you like.


inside a custom component

Short description of the problem
The <ion-item-sliding> component does not work if it is used inside a custom component
What behavior are you expecting?
When using the <ion-item-sliding> component inside an <ion-list>, the item slides and the option buttons are revealed.
When I use the exact same code inside a custom component and I create an <ion-list> by repeating the custom component (which includes the <ion-item-sliding>) , the item does not slide.
Steps to reproduce:

create an ionic project, version 2
create a component with the following template:
<ion-item-sliding>  <ion-item>
Slimer
  </ion-item>  <ion-item-options>      <button secondary>          <ion-icon name="call"></ion-icon>          Call      </button>  </ion-item-options> </ion-item-sliding>
on a page, create a list that includes the component you created on step 2
run ionic serve and try to slide the item

Which Ionic Version?
2.0.0-beta.23
Run ionic info from terminal/cmd prompt:
Cordova CLI: 5.4.1
Gulp version:  CLI version 3.9.0
Gulp local:   Local version 3.9.1
Ionic Version: 2.0.0-beta.3
Ionic CLI Version: 2.0.0-beta.23
Ionic App Lib Version: 2.0.0-beta.13
OS:
Node Version: v4.2.4

Hello! Thanks for opening an issue with us! So when you say custom component do you mean your creating a custom angular2 component (using this decorator @Component) or are you creating an ionic page component (using @Page)?

Hello!
I am reating a custom angular2 component , with the decorator @Component
Thanks!

@jalef You need to import IONIC_DIREVTIVES for any custom component that uses an Ionic component.
import {IONIC_DIREVTIVES} from 'ionic-angular';
...
@Component({
   template: ....,
  directives: [IONIC_DIREVTIVES]
})

http://ionicframework.com/docs/v2/faq/#Angular_component

thanks!