Local find requests returning no match when data is available and in carbon cache

I deployed Master as of today and ran into a scenario where /render requests for the last 5-10 minutes worth of data would return No Data.  I tracked it down to the /metrics/find would generally return no matches.
The cache flush cycle on our carbon instances is long (like...30-60minutes long), so we have the following settings in Graphite:
FIND_CACHE_DURATION = 600
FIND_TOLERANCE = 12 * FIND_CACHE_DURATION

I turned off REMOTE_STORE_MERGE_RESULTS and the problem went away.    I'll investigate more when I have time, but until then maybe someone else is available.

Yes, REMOTE_STORE_MERGE_RESULTS=True removing all FIND_TOLERANCE logic completely. Not sure how it can cause 'No data' situation, because it should make more requests but get data anyway.
We also have a long flush cycle in carbon, but TBH I see no sense in such big cache / tolerance window (7200 is 2 hours, right?).

It was doing the opposite, though.
I suspect there is a big misunderstanding on what the FIND_TOLERANCE actually does.  How would you describe the purpose of it?

Indeed. I have no good knowledge how find() in master branch works and why FIND_TOLERANCE is there at all. 0.9.x doesn't have that.

I mean, It will be great if you explain master's find() logic here, I'm
really not sure that I read source right :)

Ah.  We are in the same boat.
My understanding is that the purpose was to pad the latest time of the data found on disk by the tolerance window.  This would compensate for the cached/unwritten data.
At this point I feel the need to put some logging in to confirm what the code is actually doing.  I'm hoping I have the time to do it soon.

It will ask data through normal Graphite API, so, for existing (on disk) metrics it will return data, and for non-existing - it will return nothing. I see no sense to check something in past for such logic (and FAULT_TOLERANCE describes tolerance window in past: tolerance_window = now - settings.FIND_TOLERANCE ).
My understanding of FIND_TOLERANCE logic - we could have different find results for a different time interval. The current code of master trying to optimize merging of all these intervals and in a case of REMOTE_STORE_MERGE_RESULTS we can safely bypass all these optimizations.
But maybe I'm completely wrong. :)

I read through the code and feel that I have an understanding of the logic.  I will attempt to walk through it and we can decide how the REMOTE_STORE_MERGE_RESULTS should interact with it.
Let's assume settings.FIND_TOLERANCE is set to 10 minutes.
This is a tad bit simplified, but here goes:

Build up a list of nodes, local and remote, and store in nodes_remaining.  This is effectively the list of CLUSTER_SERVERS and any local Finders defined in settings.

For each local node in nodes_remaining, if the data is found on disk then add to minimal_node_set and remove from nodes_remaining.

For each node in nodes_remaining:
a. Compute how many intervals of data this node can provide, but this time ignore any intervals that reside in between now-FIND_TOLERANCE and now.
b. Add each node that has any data to the minimal_node_set

If minimal_node_set is empty (no remote nodes had data and the local finder had NO data on disk), then choose the node where the difference between the node's most recent data and the start time of the query is less than the value of FIND_TOLERANCE.

I question the need for the ignoring of intervals within the FIND_TOLERANCE window, but that can be discussed later somewhere else if needed.
I have a few questions:

Why do we need REMOTE_STORE_MERGE_RESULTS to even touch anything in the find logic IF the logic already there in step 3 will merge in multiple remote nodes have any relevant data?

If you still think we do, then the base case (step 4) needs to be moved outside of the if settings.REMOTE_STORE_MERGE_RESULTS as a catch-all for when the requested interval is newer than data written to disk and the local host is the one that probably has it unwritten in carbon's cache.

Before, with REMOTE_STORE_MERGE_RESULTS, there was a claim that it affected render times if all leaf_nodes were added.  Was that substantiated?

Why do we need REMOTE_STORE_MERGE_RESULTS to even touch anything in the find logic IF the logic already there in step 3 will merge in multiple remote nodes have any relevant data?

I think I already tried to remove all tolerance find_logic from remote merge in https://github.com/graphite-project/graphite-web/commit/bc18f9730b102cd5ab3ba1409b6760471f4b43ea#diff-57c0c4ffa18833a2e2ea55aab4309ffc - and a result was terrible.
Maybe I did it wrong. :)

If you still think we do, then the base case (step 4) needs to be moved outside of the if settings.REMOTE_STORE_MERGE_RESULTS as a catch-all for when the requested interval is newer than data written to disk and the local host is the one that probably has it unwritten in carbon's cache.

Yes, maybe we need to try that first.

Before, with REMOTE_STORE_MERGE_RESULTS, there was a claim that it affected render times if all leaf_nodes were added. Was that substantiated?

IIRC I tried to fix that with https://github.com/graphite-project/graphite-web/commit/71cfdac927465497581756ddedf23a13b6fadba0

Fixed in master, I think


Flux colour temp support

Description:
add mode to add support for hue ambiance bulbs.
tested and working with hue ambiance and hue strip +.
default mode 'XY' acts as before
Mode mired or kelvin will send the color temp in mired or kelvin
Related issue (if applicable): fixes #
Pull request in home-assistant.io with documentation (if applicable): home-assistant/home-assistant.io#
Example entry for configuration.yaml (if applicable):

- platform: flux
  lights:
    - light.hue_ambiance_lamp_1
    - light.hue_ambiance_lamp_2
    - light.hue_lightstrip_plus_1
  name: Fluxtest
  stop_time: '23:00'
  start_colortemp: 5500
  sunset_colortemp: 2700
  stop_colortemp: 2000
  mode: mired

Checklist:
If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If code communicates with devices, web services, or a:

[ ] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[ ] New dependencies have been added to the REQUIREMENTS variable (example).
[ ] New dependencies are only imported inside functions that use them (example).
[ ] New dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[ ] New files were added to .coveragerc.

If the code does not interact with devices:

[ ] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[ ] Tests have been added to verify that the new code works.

@HBDK you can commit as many times as you want to a branch. No need to close and open a new PR.


Animation stops when image is resized.

#31 What is the resolution for this issue?

You should put the image into a UIImageView, set UIImageView.contentMode to UIView.contentMode.scaleToFill, and adjust UIImageView.bounds to desired size.


Dump EDID from connected monitor

It would be good to have a command which dumped the raw EDID from the monitor connected to an TX port.

Please give this a try: https://github.com/fallen/HDMI2USB-misoc-firmware/tree/hdmi_out_edid_dump

Boot
Connect a monitor to HDMI out port
in the serial command line interface enter the following command:

debug edid 0 for hdmi_out0
debug edid 1 for hdmi_out1
If it outputs something starting with 00 FF FF FF FF FF FF 00 it should be your monitor EDID.
You can copy paste it to http://www.edidreader.com/ to check the validity of the EDID dump.

Thanks, I'll test in on the Opsis tomorrow (I can't test on the Atlys since
I damaged mine plugging 12V in it (instead of 5V...))
Can you keep i2c.c untouched and create specific hdmi_out0.c and
hdmi_out1.c files? (We will avoid duplicating things later as it's was done
on Mixxeo:
https://github.com/m-labs/mixxeo-soc/blob/master/software/Makefile#L49)
2015-11-30 22:59 GMT+01:00 Yann Sionneau<EMAIL_ADDRESS>
Please give this a try:
https://github.com/fallen/HDMI2USB-misoc-firmware/tree/hdmi_out_edid_dump

Boot
Connect a monitor to HDMI out port
in the serial command line interface enter the following command:

debug edid 0 for hdmi_out0
debug edid 1 for hdmi_out1
If it outputs something starting with 00 FF FF FF FF FF FF 00 it should
be your monitor EDID.
You can copy paste it to http://www.edidreader.com/ to check the validity
of the EDID dump.
—
Reply to this email directly or view it on GitHub
https://github.com/timvideos/HDMI2USB-misoc-firmware/issues/35#issuecomment-160774825
.

Can you just create 2 separate hdmi_out0.c, hdmi_out1.c files and integrate the i2c code in it?
Then you can send a pull request or a patch.
Thanks

Thanks for the test and the review, I updated the branch to create hdmi_out{0,1}.{h,c} like you said.

I added support for extended EDID and rebased the pull request to fix the build for "base" targets (where there is no hdmi_out0/1)


improving homeroom filter efficiency

Who is this PR for?
School Dashboard administrators
What problem does this PR fix?
Slowness on load and render, cf #1244
What does this PR do?
Fixed a spot where we were iterating through a large group of arrays unnecessarily
Screenshot (if adding a client-side feature)
Checklist

[X] Tested latest version in an Internet Explorer virtual machine? (If the PR adds Javascript.)

@edavidsonsawyer Want me to merge & deploy?

@alexsoble, please and thanks!

@edavidsonsawyer Just tested it out. This noticeably improved the range slider reaction! 🎉
It brought the time before the graphs respond to the range slider from around 5 seconds to around 2 seconds. I measured the total load time of the page from a cold start with a stopwatch and it took 14 seconds.


Website Donate Now Page changes

On this page
https://donor-portal-medicinesfor-lk.vercel.app/donate-now

[ ] add footer

From where does the user reach this page with the new flow?
@nshamit

Will get you the details from Sanith.


Typo - ConfgurationSet and ConfigurationSet both shown on the ses page

File: docs/reference/pkg/nodejs/pulumi/aws/ses/_index.md

IIRC we do actually define both of these types due to a typo in earlier versions of this package. We retain the old, misspelled name for back-compat, which is why it shows up here. I believe it should be marked as deprecated. cc @justinvp

Linked to https://github.com/pulumi/pulumi-terraform-bridge/issues/133


docs: explain how build cache works practically

This is just a docs update, in hopes of helping future Melangers understand how the build cache can help them without having to learn the hard way. 😃

this is awesome, the one nit I would make is a comment on how --cache-dir is different than --apk-cache-dir

this is awesome, the one nit I would make is a comment on how --cache-dir is different than --apk-cache-dir so folks don't get confused

Makes total sense!
[Starts figuring out what --apk-cache-dir does.... 😬]


Modifier -> SwiftUI -> Input events: hoverEffect(_:)

Doc: https://developer.apple.com/documentation/swiftui/view/hovereffect(_:)

[ ] Swift implementation
[ ] Elixir implementation

Contribution needed


Gas fees pt. 1

This PR introduces some improvements for gas fee handling and the token send form.
The main changes are that gas price is now fixed in the token send form, and that shielded transactions will unshield the gas fee from the source account. The amount input of the form will take into account the gas fee when determining what amount is valid.
It is helpful to have long epochs when testing shielded transfers because they take a very long time (5 minutes+ for me).
I am planning to add further gas fee improvements later, such as the max button to use all available funds.

Changed

Use disposable gas payer to pay for shielded transactions
Replace gas price buttons with fixed minimum gas price
Rename feeAmount to gasPayer and make optional

Added

Query minimum gas price
Add new input component for BigNumbers

Removed

Remove unused faucet transfer form
Remove unused QR code parts of token send form

Fixed

Take gas fee into account when determining invalid transaction amount

Closing as replaced by #576.


optOptimize the performance of the pad function under UTF-8.

Proposed changes

Removed the calculation of str_index.
If pad is constant, calculate pad_index only once.
Do not insert res_chars inside the loop; instead, insert them all together after the loop completes.

mysql [test]>select count(lpad(Title, 100, "abc")) from hits_10m;
+--------------------------------+
| count(lpad(Title, 100, 'abc')) |
+--------------------------------+
|                       10000000 |
+--------------------------------+
1 row in set (3.97 sec)

mysql [test]>select count(lpad(Title, 100, "abc")) from hits_10m;
+--------------------------------+
| count(lpad(Title, 100, 'abc')) |
+--------------------------------+
|                       10000000 |
+--------------------------------+
1 row in set (2.87 sec)

run buildall

run buildall

run buildall

run buildall

run p0

run buildall


Peering Request

Full Name
Gianfranco Delli Carri
ASN
12779
PeeringDB Integration

[X] My PeeringDB Entries are current
[X] Peer at ALL EXCHANGES (and skip the Peer Address(es) field below)

Peer Address(es)
No response
Multihop

[ ] Multihop Peering Request

Hello
Thanks for your interest in peering with Routeviews. We already see your routes via the Routeserver at NAMEX.
We will be happy to set up a direct peering session over NAMEX if you will announce your full table to us as you would to a transit customer. Please confirm and let us know when ready. Then we will set up our side
Thanks
Nina


Support --empty flag for schema-only dry runs

resolves https://github.com/dbt-labs/dbt-core/issues/8980

Problem

Solution

BaseRelation changes

Adds an optional limit to BaseRelation
Implements BaseRelation.render_limited: depending on the value of self.limit, this method templates sql to wrap a rendered relation in an 'empty' select statement. Further reasoning in the spike report
Updates BaseRelation.__str__ to use self.render_limited if self.limit is set

Adds --empty flag to run and build commands.

This flag configuration is used to determine the value for resolve_limit on the BaseResolver
BaseResolver plumbs its resolve_limit to the Relation instance it is creating, which is responsible for rendering itself given an optional limit parameter.

Checklist

[x] I have read the contributing guide and understand what's expected of me
[x] I have run this code in development and it appears to resolve the stated issue
[x] This PR includes tests, or tests are not required/relevant for this PR
[x] This PR has no interface changes (e.g. macros, cli, logs, json artifacts, config files, adapter interface, etc) or this PR has already received feedback and approval from Product or DX
[x] This PR includes type annotations for new and modified functions

Spike Report
The crux of this issue is in resolving ref and source calls to a subquery that wraps the relation identifier to limit its read to 0 rows. The trickiness stems from wanting to do this in a way that is overridable by adapter, because each adapter may have a slightly different syntax for achieving this. There are a few options I've identified:

Try to make use of the existing adapter-dispatchable get_empty_subquery_sql macro, which consolidates this adapter-specific syntax. However, relation rendering (Relation.render) currently occurs without a context, and it would be pretty circular to provide a context to a Relation since the ref and source resolvers themselves are part the context. So the only way I can imagine doing this would be to override ref and source macros in the global_project, but this adds a good amount of complexity and will be cumbersome to maintain (changes to ref/source will need to consider the override, potentially making changes across both)
implement a default empty_subquery_template in python on the BaseRelation, so it's overridable across adapters (albeit in python). This has the downside of duplication across the get_empty_subquery_sql macro and the python template. But on the flip side, there should only be one correct way of writing this template so it doesn't need to be all the way in user-space (jinja), as long as its overwritable by adapter maintainers (in their BaseRelation subclass).

I've opted for (2) in this spike for its simplicity and given there is some precedence for doing a small amount of sql templating in the adapter python module.

Does using a limit of sys.maxsize instead of None make the code a little cleaner?

I can see how that could clean this up but it would mean that every rendered relation would be wrapped in a (select * limit max_size) - whether we are using the --empty flag or not (we could add some handling for this but then the code doesn't get much cleaner). I think this functionality should be limited to when --empty is provided to avoid changing the compiled sql under the head on existing surface area (all ref/source calls) to lower its risk.

Adapters need to be provided the ability to override the SQL statement here at minimum, because using a LIMIT clause in this way in BigQuery means that users will still be billed the full cost as if they had run their model for real and they will be very confused by this. BigQuery does provide some facility to avoid this but it would require either overriding the SQL statement here, or overriding the behaviour of --empty completely.

I just happened to land that PR randomly looking at the latest commits and I think I've an interesting opened discussion that correlate with your intent here:
https://github.com/dbt-labs/dbt-core/discussions/8560
That feature is a great step toward easily dry run.
I've set up a similar custom approach with 2 macros in my codebase
{% macro limit_ci() -%}
{% if target.name == 'ci' -%}
LIMIT 0
{%- endif %}
{%- endmacro %}

{% macro limit_dev(rows = 100) -%}
{% if target.name == 'dev' -%}
LIMIT {{rows}}
{%- endif %}
{%- endmacro %}

Yet it's very manual (but working fairly well because developers love copy pasting existing models).
However I would like to do the following on CI:

Run a dry run (with that empty approach)
Run models that have unit tests

It feels like to do so properly, having render method that is overridable through a macro would open to a lot of custom solutions 🙌

Opened a new issue in dbt-labs/docs.getdbt.com: https://github.com/dbt-labs/docs.getdbt.com/issues/4572

@github-christophe-oudar That's exactly the motivation behind this --empty feature: to support unit testing in CI, without building any "real" data. We do see extensions for limiting/sampling data in development as well — check out this issue:

https://github.com/dbt-labs/dbt-core/issues/8378

@mwstanleyft In my experience, while limit 0 is not sufficient on BigQuery, where false limit 0 avoids scanning any data and billing for bytes processed. There have been a one or two edge cases where this doesn't work (Christophe has found a few of them!), but these have tended to be bugs on BigQuery's side, and generally within more complex DML statements, not simple select / CTA.

I finally tried this feature and found one major caveat:
I suspect, like me, a lot of dbt users are using FROM {{ source('schema', 'table') }} my_table_alias
Then using --empty will result in
FROM  (select * from `db`.`schema`.`table` where false limit 0) _dbt_limit_subq my_table_alias
Which obviously won't work.
There are at least few solutions that could be explored to solve that problem:

update source macro to support an alias parameter
update source macro to support adding or not a default alias _dbt_limit_subq
set no alias (but then I think some DBs requires an alias and then it would fail for them with default setup)

I finally tried this feature and found one major caveat: I suspect, like me, a lot of dbt users are using FROM {{ source('schema', 'table') }} my_table_alias Then using --empty will result in FROM (select * from `db`.`schema`.`table` where false limit 0) _dbt_limit_subq my_table_alias Which obviously won't work.

Hey @github-christophe-oudar, I'm curious about your issue but I'm not following, can you clarify? Why would --empty add _dbt_limit_subq in your query?


Linux hangs on OpenAsync and blocks device afterwards

await device.OpenAsync() blocks the device and hangs.
Camera itself works normally.

Thank you for using FlashCap!
I think, some cameras return unusual characteristic information, which may not work properly if selected. If this case, try selecting a different item of the returned characteristic information.
As a quick way to verify the above, try one of the sample codes at sample code to see if the camera is recognized. If you use the Avalonia sample version, you can use easy the GUI to switch between the cameras and their characteristics.

These should work if you clone this repository and build FlashCap.sln.
If the build fails (perhaps due to an older .NET Core SDK not being installed, etc.),
extract the sample code project, remove the reference to the FlashCap project,
and instead reference the FlashCap NuGet package.

Since there seems to be no response, close it once. Reopen if necessary.


Award fast delivery (and punish the slow)

It would possibly make sense to differentiate on points based on how fast you deliver - bonus on instant delivery, then decreasing the score with increasing customer frustration?  Alternatively/additionally, the speed of the messenger could increase with every fully dressed customer (or points earned), to be able to fulfil more complicated orders.
Additionally (and independently), the game name (especially '404') cannot be seen because of the inventory.

@avaczi thanks! Having bonus system is definitely a good idea, e.g. in the Tetris game you get bonus points when you clear multiple lines. In our case "Time to delivery" is a nice metric to calculate the bonus points from.

Hey @w0rm @kolja @aryszka @vigneshshanmugam, can we close this issue? It dates back to Dec 2015.
Or, we could add a "Help Wanted" label.


Gibson on remote server hangs when loading

When running on Deep Learning AMI (Ubuntu) Version 12.0 on a p2.xlarge AWS machine, gibson hangs at line 128:self.socket_mist.connect("tcp://localhost:{}").format(self.port-1) in file gibson/core/render/pcrender.py. Any tips on what may be wrong?

For AWS, the one possible setup is to use this AMI and use the NGC image here

Hi Gene, please see the updated set up guide in the readme. It should be the same as the steps I walked you through last week in my office. Let me know how it goes.

Confirmed working on a new machine, thanks!


Add text embedding features + experiments

Hi,
This PR has 2 commits:

The first one adds sklearn transformers to add text embeddings as features, with optional dimensionality reduction & KNN tree search
The second one adds the "experiment" code which glues all the experiments together and records various model metadata for later analysis

I'm sorry @dhimmel, this is a lot more code than I'd like (including tests resources & notebook) - which is gonna make it very impractical to review :(
One thing I did is to keep the more "production" ready code (first commit: feature builders) in the nxontology_ml dir, while the experimentation code contains the notebook, experimentation & metadata logic. IMO it would be fair to spend more time on the first commit and we can do a second review pass when moving the relevant code from experimentation to nxontology_ml.

The second one adds the "experiment" code which glues all the experiments together and records various model metadata for later analysis

@yonromai can you comment on this process some more?  What were some of the steps you went through and what kind of results did it produce?  Is this everything you needed in https://github.com/related-sciences/nxontology-ml/issues/8#issuecomment-1686872995?
Basically, I'm just trying to understand what all this PR enables as a user/consumer of this repo.

@yonromai can you comment on this process some more?

@eric-czech  Thanks for the question, I just realized that I provided very little context about this PR.

What were some of the steps you went through and what kind of results did it produce? Is this everything you needed in #8 (comment)?

Right, this PR has everything you need to reproduce the experimental results presented in #8.

Basically, I'm just trying to understand what all this PR enables as a user/consumer of this repo.

That's good point - this PR is more meant to preserve experimental history rather than being directly useful to the end user. The idea is to eventually keep the most successful experiment(s) in the latest state of the main branch, but be able to go back in time and see what decisions/experimental results led to the current choice of features/models.
Does this make sense?

The idea is to eventually keep the most successful experiment(s) in the latest state of the main branch, but be able to go back in time and see what decisions/experimental results led to the current choice of features/models.

Perfect 👍.


What are the selected fields to study?

Hi, when following the example I get this message in the step where the fields are chosen:
We could not complete the analysis to recommend fields at this time. We've selected all the fields as default. You may change the selections to include only the fields you want the model to study.
This does not match with the screenshot provided and it is not clear which fields to choose.
Thanks!

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

ID: 5192cd8b-545c-5b98-6491-46d5097fcad8
Version Independent ID: 5e70ae61-72a5-7203-c061-c1d747105ecc
Content: Tutorial: Build a Machine Learning model in Power BI - Power BI
Content Source: powerbi-docs/service-tutorial-build-machine-learning-model.md
Service: powerbi
Sub-service: powerbi-service
GitHub Login: @davidiseminger
Microsoft Alias: davidi

Hi, @asocorro -- how are you? Assigning to the author to check into your issue. cheers!

Hi there - there may be variations in how the sample tutorial operates, so you can choose which fields you would like. If you'd like more in-depth guidance about how the feature works, you can check in the Power BI Community, found at https://community.powerbi.com.


ADDRESS environment variable not picked up by pachctl

On Ubuntu 14.04, using gvm running go1.6 and 1.1 of Pachyderm.
I set the environment variable ADDRESS to <external IP of a kubernetes node>:30650
Then, run pachctl I see:
Envronment variables:
  ADDRESS=<IP_ADDRESS>:30650, the server to connect to.

It seems like pachctl isn't using the address I've specified.
Is this just a cosmetic thing, and behind the scenes it's using the address I've specified?

@rexmortus Could you check the env | grep ADD to see whether the environment has been loaded in your system. Such function has been used up till now in my environment with no problems. Also, you can close #802 , since there is no content in this issue, thanks.

Thanks @ShengjieLuo
env | grep ADD
ADDRESS=<IP_ADDRESS>:30650

Yep, the variable is there in the environment.

@rexmortus  Have no idea about it. Could you please show your result of the command pachctl version ? Or we need to ask for help from other members.

Thanks @ShengjieLuo I can tell that you care about the community!
$ pachctl version
COMPONENT           VERSION
pachctl             1.1.0
pachd               1.1.0

^ Looks good
make logs produces nothing out of the ordinary.
get pods -o wide
NAME            READY     STATUS    RESTARTS   AGE       IP          NODE
etcd-924uc      1/1       Running   0          5h        <IP_ADDRESS>   gke-pachyderm-default-pool-1037cff7-y8s2
pachd-h8fcn     1/1       Running   3          5h        <IP_ADDRESS>   gke-pachyderm-default-pool-1037cff7-y8s2
pachd-s109q     1/1       Running   3          5h        <IP_ADDRESS>   gke-pachyderm-default-pool-1037cff7-plg8
rethink-pqufb   1/1       Running   0          5h        <IP_ADDRESS>   gke-pachyderm-default-pool-1037cff7-bw9x

Looks like those are going OK, too?

@rexmortus If you have pachctl version correct, it means that your pachctl can have a talk with pachd pods. If we analysis the code of Pachyderm, we will find that pachctl (client) need to make a connection to pachd(server), and pachd would tell pachctl the exact version you have.
In other word, if you do pachctl version right, actually you have got the correct address to connect the pachd server. So show me where you get this error information and what command you have done, also the log information is necessary for debug.

Thanks again @ShengjieLuo.
As I suspected, it's just a cosmetic issue.
When I have $ADDRESS set to an IP with pachd running, I get this result:
pachctl version
COMPONENT           VERSION
pachctl             1.1.0-2a4d2ddd55192cf80aa7c9b162290489d1ab7290
pachd               1.1.0

However, when I run pachctl with no arguments and the list of commands appears:
$ pachctl
Access the Pachyderm API.

Envronment variables:
  ADDRESS=<IP_ADDRESS>:30650, the server to connect to.

Usage:
  pachctl [command]
...

Two things to note about the above message.

There is a typo. It says "Envronment" when it should say "Enivronment".
It says that $ADDRESS is set to <IP_ADDRESS>:30650

Which, as we've determined, it's not.
Indeed, when I change ADDRESS to an IP where no pachd is running, pachctl version returns what I'd expect - an error!
$ export ADDRESS=<IP_ADDRESS>:30650
$ pachctl version
COMPONENT           VERSION
pachctl             1.1.0-2a4d2ddd55192cf80aa7c9b162290489d1ab7290
pachd               (version unknown) : error connecting to pachd server at address (<IP_ADDRESS>:30650): context deadline exceeded

So as I've discovered, it would seem that this is just a cosmetic issue, although it is more a than bit confusing.

Glad you work on this issue. Maybe we should change the information showed in the command pachctl.  It's not a difficult work.

@rexmortus the source of that output shows that it's a hardcoded value that (probably) isn't meant to reflect the environment you're running in. It's not really clear from the output that it's just listing defaults, so maybe that's worth noting there.
@jdoliner I can go through and see if there are any similar occurrences like this that could cause confusion and fix them. Worth doing or nah?
Also worth noting the irony of the typo here:

There is a typo. It says "Envronment" when it should say "Enivronment".

😀

@sambooo yeah, the intention of putting ADDRESS=<IP_ADDRESS>:30650 is to indicate the default value. I can see how that's confusing though seeing as that line right there is the one thing you'd never want to actually type. I'd change to something like ADDRESS, the server to connect to, defaults to <IP_ADDRESS>:30650.
Might as well fix the type while you're at it, although the correct spelling is actually Environment isn't it?

I would like to take a moment and acknowledge the hilarity of me offering a correction to a typo, only to  offer a typo myself.
GO ME! :boom:
@jdoliner now that I understand the intent, it makes more sense. Maybe an explicit label would be helpful, as I (wrongly assumed) that line was reflecting the current environment's configuration.


makePkgconfigItem: init new function to generate pc files

some packages like blas and lapack make pc files manually
base copied from makeDesktopItem
https://people.freedesktop.org/~dbn/pkg-config-guide.html
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

I would like to test it with TCC compiler!


User/samsong/windowingsamples

Wpf sample ready for first review

We might want to name the project by feature name + app type:
maybe WindowingCsWpf.csproj, WindowingCsWpf (Package).wapproj?


Replace unix with not wasm32 in platform-specific dependencies

This will allow sabre smart contracts to be compiled on more
platforms when not compiling into wasm.
Signed-off-by: Andrea Gunderson<EMAIL_ADDRESS>

How do I test this?

Add the wasm32 target rustup target add wasm32-unknown-unknown --toolchain nightly and run both cargo build and  cargo +nightly build --target wasm32-unknown-unknown. Both should pass.


Its broken on latest paper 1.20.6

/plugman unload fails with "An unexpected error occured trying to execute that command", doesnt print an exception to console, I think a recent paper update has broken it as it worked a week ago.

This is a known issue. I'm working on an update

Should be fixed in v2.4.0


How to exclude column from export

I need to exclude particular column from export like csv file. Currently there is no any configuration exists. Please help me.

I have implemented some stuff by using reflections to exclude particular column from extract like csv, tsv etc. Soon I will commit the changes. If any one wants email me<EMAIL_ADDRESS>

For code changes please go to https://pratikdhavale.wordpress.com/2017/12/24/mvcgrid-net-exclude-column-from-export/. Suggestions always welcome. Please reply me if you have any queries.

I had the same issue, I replaced the original export rendering with a custom one before I started.
So I just named the columns I wanted to exclude with a name starting with Action, set the Header text to anything you want.
.RemoveRenderingEngine("export")            .AddRenderingEngine("export", typeof(TabDelimitedRenderingEngine))            .WithAuthorizationType(AuthorizationType.AllowAnonymous)            .AddColumns(cols =>            {                cols.Add("Action1").WithHeaderText("")
Then on the RenderingEngine, I excluded any column that started with the word Action

Thanks @anlebu, great solution. You save me many work ;)


clbitcrack

so your program is not for cl...? only for cuda.?
i am getting this error now. "Reached end of keyspace"
it is because your program picks random range like 3f10a7600000000000-3f10a770000000000.
while my cl program will work perfectly when as 3f10a760000000000-3f10a76ffffffffff
suggest me what should i do now.?
and it did not ask me about custom range.
can you give me a program which pick random private key range as and work for clbitcrack.? like this "28a0b19a28dda19ba-29a1b19b29dca29ca" .please watch carefully. i added 1 digit or 1 aphabet skiping 1 digit and alphabet.  when i put as this in my clbitcrack then it works normally. but when i put as different from this pattern, it says me end of key range. it might be bug in my clbitcrack.
but can you make me a program like this i explained to you earlier.i am putting it manually, i dont know which string i have checked. so with the help of your program, it can tell me this string has been checked, it will pick new random one.
thanks

Hello, only for CUDA devices.
Note from BitCrack repo;
Note: clBitCrack.exe is still EXPERIMENTAL, as users have reported critial bugs when running on some AMD and Intel devices.
Most users say that clBitCrack skips  keys.

Hello, only for CUDA devices.
Note from BitCrack repo;
Note: clBitCrack.exe is still EXPERIMENTAL, as users have reported critial bugs when running on some AMD and Intel devices.
Most users say that clBitCrack skips keys.

yeah i know that. thanks for help

Yes. That's right. Check the issues on bitcrack repo. Various examples of clbitcrack that skip the keys and couldn't find the keys
…
On Mon, Jun 5, 2023, 12:36 AM ILKERC @.> wrote: Hello, only for CUDA devices. Note from BitCrack https://github.com/brichard19/BitCrackrepo; Note: clBitCrack.exe is still EXPERIMENTAL, as users have reported critial bugs when running on some AMD and Intel devices. Most users say that clBitCrack skips keys. — Reply to this email directly, view it on GitHub <#3 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AH4VUUVVR7EAUVLTNXYVGOTXJT2GBANCNFSM6AAAAAAYZYCFL4 . You are receiving this because you are subscribed to this thread.Message ID: @.>

yes dear i know that. thanks for help


Cannot find code used throughout the course

I am follwoing the course in O'Reilly's website but cannot find the recourses used throughout the course. There is only the final flash cards applciation from the course, the rest is missing.

Hi,
Thank you so much for bringing this to our attention. We have updated the resources and code bundle for this course. Hope this helps.


Deprecate on_hpc_{save/load} hooks

What does this PR do?

Part of #9407, deprecate on_hpc_{save/load} hooks in favor of on_{save/load}_checkpoint
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[x] Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[x] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

Just to understand, so from now on, users of this hook will do this?
def on_save_checkpoint(self, checkpoint):
    if isinstance(self.trainer.cluster_environment, SLURMEnvironment):
        # put code here that was in on_hpc_save
    else:
        # the other code

Just to understand, so from now on, users of this hook will do this?
def on_save_checkpoint(self, checkpoint):
    if isinstance(self.trainer.cluster_environment, SLURMEnvironment):
        # put code here that was in on_hpc_save
    # the other code

yep (no else though ^ )


CLI: refactoring: remove Options from sc_service::Configuration's fields

Major changes

Removes VersionInfo and replace by a trait SubstrateCli that needs to be implemented on the top level structopt of the binary
Add a proc_macro spec_factory to put on a spec factory/load spec function to help the impl of SubstrateCli (will automatically fill version, executable name, etc... for you)
Remove Option on sc_service::Configuration's fields where it doesn't make any sense.
Add a trait CliConfiguration that needs to be implemented on structopts that are considered as commands (subcommands and runcmd). This these impl are all provided by sc_cli by default but if the user add a subcommand, they will need to implement it.
Add a proc_macro substrate_cli_params to help impl the CliConfiguration
Replaced impl_version by full version and dropped Configuration.full_version()

Minor changes

Merge Configuration.node and NetworkConfiguration.node_name because they are the same thing
Removed config_path in NetworkConfiguration because it's not used and it's redundant with net_config_path
Re-export NoExtension, `` in sc_service
Added a default impl for WasmExecutionMethod to Intepreted
Renamed "role" to "roles" because you can be an authority and a full node
... (more details will follow)

Help needed
Please check and propose fixes for all the new documentation.
Closes #4776
Polkadot PR: https://github.com/paritytech/polkadot/pull/935

@pepyakin @bkchr @tomaka this PR is finally ready for review \o/

What's the motivation for introducing CliConfiguration and the proc macro? I fear this brings a lot of unneeded complexity to the code base. Now if someone needs to introduce a new option they would need to change the proc macro as well? It is quite hard to follow what's going on already, and this does not make is simpler.
Same applies to spec_factory which btw has a bit of a misleading name, since it provides much more than the actual chain spec now. What's wrong with providing version info by a struct, instead of figuring out how to use an obscure attribute?

More of a generic node: we tend not to use get_ prefix for getters.
Also, this will require a PR for polkadot before merging.

What's the motivation for introducing CliConfiguration and the proc macro?

Closing #4776 :grin: The problem we have right now is there are a lot of expect in the code because some of the fields of sc_service::Configuraiton are Option despite they shouldn't be option. This is the whole point of this major change but this PR solves also the issue that if someone wants to insert a field, they can actually missed the subtility of the current implementation and break the point 2. at the end of this answer. This happens here for example (line 650).

I fear this brings a lot of unneeded complexity to the code base.

Tbh I fear it too. I think this PR is introducing more complex maintenance but an easier API to use. Though I think that it is more beneficial overall because more errors can be detected at compile time.

Now if someone needs to introduce a new option they would need to change the proc macro as well? It is quite hard to follow what's going on already, and this does not make is simpler.

Yes. Adding a new field in configuration will automatically make the compilation fail at multiple different places: in config.rs where CliConfiguration must define it's interface on how to get the new field but also in RunCmd and Subcommand where you need to define how to get the field (if there is no default) which lead you to the proc_macro if the field is common (shared parameters, import parameters, etc...).

Same applies to spec_factory which btw has a bit of a misleading name, since it provides much more than the actual chain spec now.

Naming things is hard. I put that name to the macro for now but I'm waiting for someone to find better names for things. I'm not satisfied with the struct "Runtime" either.

What's wrong with providing version info by a struct, instead of figuring out how to use an obscure attribute?

It's a lot of boiler plate and it's annoying to pass the object around. Here the object is replaced by a trait on the structopt directly (one less object :+1:) and on top of that: the user don't need to write it by hand. Check how the API is used here and you will see that it is actually much simpler to use. It is not so obscure at it is already implemented in the node-template as example.
I guess the price here is the maintenance but since there are less errors only detectable at runtime... I think overall it's better. It's a bit like using clap vs structopt: clap is more basic Rust code while structopt is just a fancy macro (btw: you can definitely ignore the macro and implement CliConfiguration yourself, the macro is only here to reduce the boilerplate, it is not required).

It is quite hard to follow what's going on already,

I'm improving sc-cli's API by simplifying it's use while keeping the flexibility needed for polkadot and cumulus. Those 2 projects have 2 particularities:

polkadot needs to run its runtime by its own because the runtime can be kusama (you know it at runtime). Therefore we need a split between "loading the configuration" and "running the node":

https://github.com/paritytech/polkadot/blob/5c4dcfb257adae9f7c10f689c126e6aedb27ce97/cli/src/command.rs#L60-L81
With this new API you can use Runtime::sync_run or Runtime::async_run to run whatever you need in a custom way.

cumulus needs to parse the command line arguments for 2 different nodes that will be run together in the same process. Each node has its own default parameters (like default ports because you can't open 2 times the same port). Therefore we need a way to let the binary define its own defaults for each node. This is currently done by overriding in Configuration:

https://github.com/paritytech/cumulus/blob/dd5b344274f148411e90fcbf162aa2839144b849/test/parachain/src/command.rs#L106-L112
But with this new API this will be done by implementing CliConfiguration properly.

Whew, :sweat_smile:, took some time to really look through, but this PR has a lot of welcome changes. 👏🏾. Just some minor nits to sort out before getting it merged.

Thanks!!
To all reviewers: don't hesitate to ask me to rename things. Naming is hard. I have a few questions btw:

SubstrateCLI or SubstrateCli?
I don't like sc_cli::Runtime, maybe there is a better name for this object
The macro spec_factory is not reflecting what it does (impl a CliConfiguration for you) but on what it applies: a load_spec/spec_factory function

The procedural macro also feels very over-engineered to me.

I do not disagree with you. As I said:

Tbh I fear it too. I think this PR is introducing more complex maintenance but an easier API to use. Though I think that it is more beneficial overall because more errors can be detected at compile time.

I think @seunlanlege really sees the upgrade here because this PR abandons the "update_config" pattern. As he said:

tbh this is a really great change, the update_config methodology was very weird.

But to me it reduces the errors we can do by adding a parameter or implementing a new cli.
For comparison:
Before:
let mut config = Configuration::default();
cmd.init();
cmd.update_config(&mut config); // update the configuration with the command line parameters
cmd.run(config, |config| ...)

After:
let runtime = Cli::parse_args();
runtime.run(|config| ...);

// ...

impl CliConfiguration for Cli {
    ... // everything declared and get independently
}

Can all the reviewers vote with a :+1: or :-1:  on this comment about this question:
Do you prefer the existing API because it's easier to maintain :-1:
Or do you prefer this new API because it's easier to use :+1:
(Don't hesitate to be honest!)
cc @gnunicorn @arkpar @bkchr @seunlanlege @tomaka

so does this also change the cli-param from --name to --node-name? Is there any other --name-used or other good reason to make this currently short cli-params longer? If not, I'd prefer that we stick with --name as the cli-params (internal naming I don't care that much).

@gnunicorn sorry GitHub hided that comment very well from my eyes.
To answer your question: no, the parameter is still name. This change only applies to sc_service Configuration, no impact on the CLI itself.

I don't see tests for the macros?

@bkchr There is a doc test for each macro:

https://github.com/paritytech/substrate/pull/5271/files#diff-f4464278640c8ff5fe6e441d14f3afcdR35-R55
https://github.com/paritytech/substrate/pull/5271/files#diff-f4464278640c8ff5fe6e441d14f3afcdR72-R92
https://github.com/paritytech/substrate/pull/5271/files#diff-f4464278640c8ff5fe6e441d14f3afcdR109-R132

I see another solution, at least for the implementation of all these functions.

@bkchr Almost all the functions in CliConfiguration cannot have a default implementation because the implementation depends on shared_params, import_params, etc... those *_params exist on the type only if they are defined (they are not all defined for all commands).
The only common one is shared_params but the binary could decide to not use shared_params and go for its own implementation.
You cannot generalize fn shared_params() in the CliConfiguration because its parameters must be overridable separately (for example: I want to be able to override the default RPC ports).
Maybe I should move CliConfiguration to sc_service and rename it to "CreateConfiguration" or something. It's not really CLI-dependant. It's a trait to generate a Configuration. (When I created it it was called "IntoConfiguration".)

fn shared_params() would not be generalized, it would be implemented for each CLI implementation. Can you please give an example on how to override the default RPC ports work? Not sure how that is related here.

use sc_cli_derive::substrate_cli_params;

struct MyCommand {
	shared: sc_cli::SharedParams,
}

#[substrate_cli_params(
	shared_params = shared,
)]
impl sc_cli::CliConfiguration for MyCommand {
	fn rpc_http(&self) -> Result<Option<SocketAddr>> {
		unimplemented!()
	}

	fn rpc_ws(&self) -> Result<Option<SocketAddr>> {
		unimplemented!()
	}
}

trait CliConfiguration {
    fn shared_params(&self) -> cli::SharedParams;
    fn rpc_http(&self) -> Result<Option<SocketAddr>> { Ok(Some(4455)) }
    fn rpc_ws(&self) -> Result<Option<SocketAddr>> { Ok(Some(2345)) }

   fn something_else(&self) -> String {
       self.shared_params().something_else()
   }
};

struct MyCommand {
	shared: sc_cli::SharedParams,
}

impl sc_cli::CliConfiguration for MyCommand {
	fn rpc_http(&self) -> Result<Option<SocketAddr>> {
		unimplemented!()
	}

	fn rpc_ws(&self) -> Result<Option<SocketAddr>> {
		unimplemented!()
	}
}

A pure trait solution, that works without the macro.

It's already like that. The macro are just here to help with the boilerplate.
And you can't have import_params and the others because it means you need to define the getter for those but the commands don't necessarily have those. (Maybe shared_params is the exception though... I will look into it)

No the macro just makes it more complicated and harder to understand.
Maybe have different kind of traits, per parameter type?

Do you think structopt makes clap more complicated and harder to understand too?

(And no you need to have only one trait because there is one Configuration. You can maybe divide in multiple traits but then you will need a top-level trait to call everything)

You can not compare structopt with your macro here. This macro here is matching function names and decides on that if something is overridden or not. Just one small typo and the stuff is not overriden and you will go on a hunt for multiple hours for this small bug.

Just one small typo and the stuff is not overriden and you will go on a hunt for multiple hours for this small bug.

No, you put it on the implementation of a trait. If you make a typo it will tell you the function does not exist.


Better handling temporary files for running at scale

Pull request information

Status: ? ready to merge
Kind of changes: ? bug fix
Related PR or issue: ? (optional)

Description
This PR solves 2 issues:

When initializing network kernel with .net.xml filepath, 4 temp files are being created and never removed. This PR added the removal of those files
Moving the temp files into the OS default temp directory, rather than in the flow repo. This is mostly critical for running at scale inside docker containers, where the flow repo directory might be massively shared across 100s or 1000s of machines on a shared drive (mapped to a shared folder external to the docker container), and the /debug/cfg folders can eventually get overloaded with files of different machines. The assumption here is that OS default temp folder is not shared across different machines and "lives" only in the context of the docker container, so once the container is killed, any temp files that weren't removed are being wiped out automatically.

Prior to this change, trying to run flow as the engine for RL experiments at a relatively large scale for some time now, I just found the /debug/cfg full with millions of files "rm " couldn't even delete because the expansion of "" made it crash...

@AboudyKreidieh @eugenevinitsky @kjang96 ?

Hi Roi, thank you for this! Would you mind running flake8 locally to make sure this conforms to Pep8? We'd really appreciate it so that our tests pass. Otherwise, this looks good!

@eugenevinitsky is it re-running automatically? flake8 pass now.

Yeah this is erroring due to a change in pip, not your code. Thanks for the PR!


Encoded PEM Files Not Compatible With OpenSSL or SSH

I am getting the following error when trying to decode a private key file encoded with the master version of this crate:
$ openssl rsa -in id_rsa -text
unable to load Private Key
140237402744128:error:0D078079:asn1 encoding routines:asn1_item_embed_d2i:field missing:../crypto/asn1/tasn_dec.c:406:Field=dmp1, Type=RSAPrivateKey
140237402744128:error:04096004:rsa routines:rsa_priv_decode:RSA lib:../crypto/rsa/rsa_ameth.c:183:
140237402744128:error:0606F091:digital envelope routines:EVP_PKCS82PKEY:private key decode error:../crypto/evp/evp_pkey.c:44:
140237402744128:error:0907B00D:PEM routines:PEM_read_bio_PrivateKey:ASN1 lib:../crypto/pem/pem_pkey.c:88:

My program looks like this:
    let mut rng = rand::thread_rng();
    let private = rsa::RSAPrivateKey::new(&mut rng, 4096).unwrap();
    let public = rsa::RSAPublicKey::from(&private);

    use rsa::PrivateKeyPemEncoding;
    std::fs::write("id_rsa", private.to_pem_pkcs8().unwrap()).unwrap();
    use rsa::PublicKeyPemEncoding;
    std::fs::write("id_rsa.pub", public.to_pem_pkcs8().unwrap()).unwrap();

    let key_data = std::fs::read_to_string("./id_rsa").unwrap();
    let key_data = rsa::pem::parse(&key_data).unwrap();
    let key = rsa::RSAPrivateKey::try_from(key_data).unwrap();
    assert_eq!(key, private);
    dbg!(key);

I create a key, encode it, and then read it just to make sure it survives the round trip. The round trip survives fine and all that, but for some reason OpenSSL doesn't like it. It doesn't like the public key either:
$ openssl rsa -in id_rsa.pub -text -pubin
unable to load Public Key
140275199583552:error:0D0BD0DC:asn1 encoding routines:c2i_ASN1_BIT_STRING:invalid bit string bits left:../crypto/asn1/a_bitstr.c:137:
140275199583552:error:0D08303A:asn1 encoding routines:asn1_template_noexp_d2i:nested asn1 error:../crypto/asn1/tasn_dec.c:627:Field=public_key, Type=X509_PUBKEY
140275199583552:error:0906700D:PEM routines:PEM_ASN1_read_bio:ASN1 lib:../crypto/pem/pem_oth.c:33:

If I change the bits to 512 the public key will read fine but the private key still doesn't:
$ openssl rsa -in id_rsa.pub -text -pubin
RSA Public-Key: (512 bit)
Modulus:
    00:c1:31:44:3d:2e:d6:3e:43:35:f4:ae:bc:29:24:
    c3:2b:66:d1:bc:e5:e0:9b:30:d6:fa:91:66:25:9a:
    a0:9e:0a:df:eb:f4:62:c3:f8:28:af:a0:ed:f8:48:
    e3:1b:e8:5f:24:45:b8:8c:a3:5e:d9:6e:e7:54:7d:
    92:11:12:74:07
Exponent: 65536 (0x10000)
writing RSA key
-----BEGIN PUBLIC KEY-----
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAMExRD0u1j5DNfSuvCkkwytm0bzl4Jsw
1vqRZiWaoJ4K3+v0YsP4KK+g7fhI4xvoXyRFuIyjXtlu51R9khESdAcCAwEAAA==
-----END PUBLIC KEY-----

$ unable to load Private Key
140639017108800:error:0D078079:asn1 encoding routines:asn1_item_embed_d2i:field missing:../crypto/asn1/tasn_dec.c:406:Field=dmp1, Type=RSAPrivateKey
140639017108800:error:04096004:rsa routines:rsa_priv_decode:RSA lib:../crypto/rsa/rsa_ameth.c:183:
140639017108800:error:0606F091:digital envelope routines:EVP_PKCS82PKEY:private key decode error:../crypto/evp/evp_pkey.c:44:
140639017108800:error:0907B00D:PEM routines:PEM_read_bio_PrivateKey:ASN1 lib:../crypto/pem/pem_pkey.c:88:

Any idea what's wrong?

RFC 3447 defines the structure of a PKCS#1 encoded private key like this:
RSAPrivateKey ::= SEQUENCE {
          version           Version,
          modulus           INTEGER,  -- n
          publicExponent    INTEGER,  -- e
          privateExponent   INTEGER,  -- d
          prime1            INTEGER,  -- p
          prime2            INTEGER,  -- q
          exponent1         INTEGER,  -- d mod (p-1)
          exponent2         INTEGER,  -- d mod (q-1)
          coefficient       INTEGER,  -- (inverse of q) mod p
          otherPrimeInfos   OtherPrimeInfos OPTIONAL
      }

As far as I can tell, the current encoding method omits some fields and the structure of the created key looks something like this:
RSAPrivateKey ::= SEQUENCE {
          version           Version,
          modulus           INTEGER,  -- n
          publicExponent    INTEGER,  -- e
          privateExponent   INTEGER,  -- d
          prime1            INTEGER,  -- p
          prime2            INTEGER,  -- q
      }

As for the public key, I believe the issue is the size of the octet string. Multiplying the length of the key by eight solved this issue as far as I can tell (eight because the data type is called BitString and .len() returns the length in bytes)
When applying this patch I wrote, OpenSSL is able to parse and verify the keys
Before I submit a pull request, I'd prefer it to have a second opinion about the quality and correctness of the patch though

Oh, cool, thanks! Unfortunately I'm definitely not qualified from a cryptography perspective to comment on the quality of the patch. I'd still open up a PR even as a draft because that is the easiest way for a maintainer or anybody else to make a review on the submitted code.
The changes look short enough that it shouldn't be hard to review I would imagine.

It's late evening for me right now, I'll open a PR tomorrow :)


Is the StateWriter module really used ?

I don't understand how the stateWriter module would be used instead of the regular Writer/State monad.
The only place where the stateWriter is imported is here
And it merely re-used the re-export of Data.Monoid.
I would expect the tell from here to have a MonadWriter InterpreterWriter m that comes from the stateWriter module.
It looks like this has been removed in 30222455a098d0. By mistake ?

I don't think it's used anymore, I'll try to build without it.

Just removed it.


CI: add circleci to build docs and store artifacts

Nice! It looks to be working to me, here's the docs URL for this PR:
https://5-130237506-gh.circle-artifacts.com/0/html/index.html

I'm gonna merge this so I can rebase and figure out if #50 actually fixes what I think it's fixing :-)


add view_email to whitelist

Add the contact_view_email API to the white list so that the URL string "contact/view/email" is accepted.

Hello! You can fetch a single contact using their email address by doing:
<EMAIL_ADDRESS>{});
This is a cleaner approach because it doesn't repeat the word "email" (which this change would allow<EMAIL_ADDRESS>{});
If we can help further with this, just let us know! 😃


class file for com.google.android.gms.internal.zzbfm not found

Is this a bug report?
YES

Have you read the Installation Instructions?
YES
Environment

Steps to Reproduce

(Write your steps here:)

Create a fresh android rn project using react-native init in the console
Install react-native-maps

Expected Behavior

(Write what you thought would happen.)
app would build without error

Using react-native run-android --variant=release I get the following exception:

> Task :react-native-maps:compileReleaseJavaWithJavac FAILED
projectroot/node_modules/react-native-maps/lib/android/src/main/java/com/airbnb/android/react/maps/AirMapMarker.java:130: error: cannot access zzbfm
    position = options.getPosition();
                      ^
  class file for com.google.android.gms.internal.zzbfm not found
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error

FAILURE: Build failed with an exception.

Reproducible Demo

Forgive me. I have suffered through this for weeks. I am not at all proficient with android development but I have scraped through every issue on this repo and tried everything I possibly can. Here are important bits of my build.gradle files
android/build.gradle
buildscript {
    ext {
        buildToolsVersion = "27.0.3"
        minSdkVersion = 16
        compileSdkVersion = 27
        targetSdkVersion = 26
        supportLibVersion = "27.1.1"
    }
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.4'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    configurations.all {
        resolutionStrategy.force "com.google.android.gms:play-services-base:16.0.1"
    }
    repositories {
        mavenLocal()
        google()
        jcenter()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }
       maven {
           url 'https://maven.google.com'
       }
       maven {
           url "$rootDir/../node_modules/react-native-background-geolocation/android/libs"
       }
       maven {
           url "$rootDir/../node_modules/react-native-background-fetch/android/libs"
       }
    }
    }

task wrapper(type: Wrapper) {
    gradleVersion = '4.4'
    distributionUrl = distributionUrl.replace("bin", "all")
}

ext {
    compileSdkVersion   = 27
    targetSdkVersion    = 27
    buildToolsVersion   = "27.0.3"
    supportLibVersion   = "27.1.1"
    googlePlayServicesVersion = "11.8.0"
    androidMapsUtilsVersion = "0.5+"
}

android/app/build.gradle
android {
    compileSdkVersion 28
    buildToolsVersion '28.0.2'
    compileSdkVersion rootProject.compileSdkVersion
    buildToolsVersion rootProject.buildToolsVersion

    defaultConfig {
        targetSdkVersion rootProject.targetSdkVersion
        applicationId "com.convoyerandroid"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode 1
        versionName "1.0"
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }
    }
    splits {
        abi {
            reset()
            enable enableSeparateBuildPerCPUArchitecture
            universalApk false  // If true, also generate a universal APK
            include "armeabi-v7a", "x86"
        }
    }
    signingConfigs {
        release {
            if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
                storeFile file(MYAPP_RELEASE_STORE_FILE)
                storePassword MYAPP_RELEASE_STORE_PASSWORD
                keyAlias MYAPP_RELEASE_KEY_ALIAS
                keyPassword MYAPP_RELEASE_KEY_PASSWORD
            }
        }
    }
    buildTypes {
        release {
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
            signingConfig signingConfigs.release

        }
    }
    // applicationVariants are e.g. debug, release
    applicationVariants.all { variant ->
        variant.outputs.each { output ->
            // For each separate APK per architecture, set a unique version code as described here:
            // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
            def versionCodes = ["armeabi-v7a":1, "x86":2]
            def abi = output.getFilter(OutputFile.ABI)
            if (abi != null) {  // null for the universal-debug, universal-release variants
                output.versionCodeOverride =
                        versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
            }
        }
    }
}

dependencies {
    compile project(':react-native-vector-icons')
    compile project(':react-native-nfc-manager')
    compile project(':react-native-device-info')
    compile project(':react-native-background-fetch')
    compile project(':react-native-background-geolocation')
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
    implementation (project(':react-native-camera')) {
            exclude group: "com.android.support"
        }
    implementation 'com.facebook.react:react-native:+'
    implementation project(':react-native-maps')
    compile "com.android.support:appcompat-v7:$rootProject.supportLibVersion"
    // From node_modules
}

I addeed this in app/build.gradle
 implementation("com.google.android.gms:play-services-location:19.0.1")

now works for me


[question] language binding interface

theres are some questions about the mxnet, if it is not right way to ask by a issue, please let me know.
I have three question about the language binding interface in mxnet.

is there any go interface in current state?  after i googled, i only find the gomxnet repo, which seems has been deprecated for a long time.
what is the relationship between NNVM interface and framework language binding interface?
python language binding, support in ctypes and cython? is there any compartion between these two method?

Thanks.

This issue is closed due to lack of activity in the last 90 days. Feel free to reopen if this is still an active issue. Thanks!


PostFix Added

Hello. Created postFix param for changing prefix destination at the end. Tests included

Cool, thumbs up

Thanks, I changed the option name to tailPrefix, otherwise, postfix sounds like something fully opposite to prefix

I'm now happy ...

Hello, The delete is very buggy with tailPrefix, you have to manually move the cursor around.
Did you think about any workaround to avoid this?


FR: User system & public/private

Feature Request
Public/Private projects.
Description of desired functionality:
I can log in, create my projects and mark them as private or public. When someone browses to my library, they will only see projects/files designated as public. Any projects I mark as private will only show when I am logged in. Long term maybe it's nice to add other users and choose who sees which projects.
Alternatives:
I would have to run two instances; one public and one private.

Hi there,
Thank you for your feedback.
That is indeed a functionality that I would like to see implemented after we have the set of core features.


Home page Mockup

This is my proposition of home page design. Progress bar would show percentage of delivered packages to whole amount of packages

I think out for delivery and assigned stats might not be very relevant for the month view as they are likely gonna be a repeat of the values in today's stats. There might be value in showing stats for orders here for the monthly view. I'll think a bit more about this.

I think out for delivery and assigned stats might not be very relevant for the month view as they are likely gonna be a repeat of the values in today's stats. There might be value in showing stats for orders here for the monthly view. I'll think a bit more about this.


Mhm, a question, how to compile and run project?

What is your question?
How to compile and run project?
Haxe is installed.

lime build windows
or
lime test windows

lime build windows
or
lime test windows

lime build windows -release or -debug
or
lime test windows -release or -debug
just correcting you @TheKitBoi

lime is external source?

lime is external source?

yes, do haxelib install lime then run the commands above


289 | Game of Life | C++

Title -
What will change - Adding new code for 289 - game of life in C++
Type of Issue -
Please add/delete options that are not relevant.

[x] Adding New Code

Programming Language
Please add/delete options that are not relevant.

[x] C++

Self Check

Ask for issue assignment and wait to get assigned to it before making Pull Request.
Add your file in the proper folder
Clean Code and Documentation for better readability
Add Title and Description of the program in the file

:star2: Star it :fork_and_knife:Fork it :handshake: Contribute to it!
Discord server ✉ - https://discord.gg/CXksGdn
Happy Coding,

I am the issue creator , please assign this issue to me.

Created a PR for this issue : https://github.com/SHY-Corp/LeetCode-Solutions/pull/365


Add Database Migration Wiki Page

Add a database migration wiki page with the documentation of what was done for planning and the written out scenarios.

Page Created: https://github.com/conrad-blucher-institute/semaphore/wiki/DB-Migration-Planning-Documentation
I want to write out and make flow charts for the different scenarios discussed in the meeting.


set_password chokes on some ASCII printable characters

bitshares allows nice strong passwords with any ASCII printable characters, AFAIK - e.g. I successfully tried !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
However in graphene set_password !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ gives:
4 parse_error_exception: Parse Error
Unexpected char '33' in ""
    {"c":33,"s":""}
    th_a  json_relaxed.hpp:738 variant_from_stream

    {"str":"set_password !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~?"}
    th_a  json.cpp:494 variants_from_string

Can graphene allow all these too?

Probably because " or ' or both?

```set_password !#$%&()*+,-./:;<=>?@[]^_{|}~ set_password !#$%&()*+,-./:;<=>?@[\]^_{|}~
4 parse_error_exception: Parse Error
Unexpected char '33' in ""
{"c":33,"s":""}
th_a  json_relaxed.hpp:738 variant_from_stream
{"str":"set_password !#$%&()*+,-./:;<=>?@[\\]^_`{|}~?"}
th_a  json.cpp:494 variants_from_string```

If you want to include weird characters, you need to quote the password with ".
I got your example working by quoting everything and escaping \ and " respectively as \\ and \"
set_password "'\"!#$%&()*+,-./:;<=>?@[\\]^_`{|}~"


Adding a card to "Download to Drive"

Stashing this here until we're ready to add.  @Jaqster would like more data before we merge.
We have received feedback that people don't know how to save projects other than sharing or uploading to GitHub.  In part, this could be because the save button is touching the name field, so it looks like it's meant to save name changes:

Also, the save button goes away when you're working in a tutorial:

Or a GitHub repo:

The clever educator/student will notice that there's a Download button, which seems like the natural place to go when looking to download your project...but when they click, they're faced with these options, none of which are "Download to Drive".

Those of us who work here know that we could choose any of these to save our projects to drive, but there's no way for anyone else to know this is the case. My solution is to add a card for downloading to your machine.

Yes, I'd like to do more customer development here.  Let's gather evidence that this is a blocking issue.
Hypothesis could be:

Users don't know how to save program files onto their computers
Users want to, but can't save program files (while in a tutorial) onto their computers
Users want to, but can't save program files (while working in a GitHub repo) onto their computers

This UI goes across all our targets, so if we find this is an issue and come up with a solution, I could imagine applying this across all our code editors (maybe not Minecraft?)


can't parse number.

Sometime fblog does not parse number values(but sometime do).
$ cat > x.json
{"timestamp":"2020-09-17 07:11:54.936","@version":"1","message":"Done Good!. exitCode: 0","thread":"main","level":"INFO","caller_file_name":"MyApplication.java","caller_line_number":12345}

$ cat x.json | .cargo/bin/fblog --main-line-format "{{fblog_timestamp}} {{level_style fblog_level}} [{{thread}}] ({{caller_file_name}}#{{caller_line_number}}) {{fblog_message}}"

# there is no number 12345
2020-09-17 07:11:54.936 INFO [main] (MyApplication.java#) Done Good!. exitCode: 0

# the result I expected
2020-09-17 07:11:54.936 INFO [main] (MyApplication.java#12345) Done Good!. exitCode: 0

That is currently a missing "feature". It ignores all non string values ( it also ignores nested fields).
I wanted to implement this for a while now.

Ok I release 2.3.0 which has a very basic support for other types (internally they are all converted to strings). But I hope it works for you.

Thank you, It works!


[docs] Add banner for next docs releases

Prepare the first alpha release of v4. We can later use the same code for the v3 documentation, pointing to the v4 URL.

I'm merging so we can go back to a green CI state on the next branch. We can keep iterating :)


Fix slow test by keeping tied weights on the same GPU

In #1000 we fixed the weight tying in dispatch_model, but one of the slow tests relied on the fact it was broken (by mistake) by putting tied weights of GPT-2 on two different devices. This PR fixes that.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


refactor: move jest transformer class to package entry

Summary

Move TsJestTransformer class to index.ts and export from there

Remove long deprecated possibility of importing some util functions

Update docs related to the change

Test plan

Green CI
Does this PR introduce a breaking change?

[x] Yes
[ ] No

One currently refers type in jest.config.js

/** @typedef {import('ts-jest')} */
module.exports = {
  //...
}

should change to
/** @typedef {import('ts-jest/dist/types')} */
module.exports = {
  //...
}

Remove possibilities to import mocked, createJestPreset, pathsToModuleNameMapper from package entry. One should change to

import { mocked, createJestPreset, pathsToModuleNameMapper` } from 'ts-jest/utils'

Other information
N.A.

Pull Request Test Coverage Report for Build 355608376

0 of 65 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.06%) to 93.654%

Totals

Change from base Build 355590872:
-0.06%

Covered Lines:
1012

Relevant Lines:
1041

💛  - Coveralls

Pull Request Test Coverage Report for Build 355608376

65 of 65 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.06%) to 93.654%

Totals

Change from base Build 355590872:
-0.06%

Covered Lines:
1012

Relevant Lines:
1041

💛  - Coveralls


Keychain data on iOS gets deleted after some time

Hi, thank you for that amazing package! I am having a strange issue in my app, I store all tokens in secure storage in my Flutter app and it's working perfectly for most  of the users but one of my users didn't use the app actively for weeks (or even a month) and app was either in background or terminated state. Today he opened the app and noticed that all requests to the server didn't work.  We found out that when we try to get the token from secure storage it returns null.  What might be the reason for this? Does the iOS delete the data from Keychain if it's not active for some time? Thank you for that answer in advance:)

Hello
Any update about this issue ? We have the same problem by us. Does somebody fixed it ? ty

Hi
We have the same problem. Does soomebody fixed it ?
Thank you

Hi,
It looks that nobody fixed it. We tried to reach them by mail unsuccessfully.

Same here

same here :)

see the code in develop re: cupertinoProtected data availability from above mr

Is there any fix?
This makes the all plugin unusable in production

I am closing all older issues. If this issue still exists in the latest version, please let me know.

Some extra information for this issue, there is a known issue in version 9.1.0 which causes data to be inaccessible due to wrong read parameters. This will be fixed in the upcoming release.


Set the correct file mode for the config file.

Without this the mode ends up being u=rw,g=rw,o=r, and logrotate will complain "Ignoring  because of bad file mode."

When running against a fresh install with the tests/test.yml playbook I'm getting:
-rw-r--r--  1 root root   62 Feb  8 10:32 nginx-options
-rw-r--r--  1 root root   93 Feb  8 10:32 nginx-scripts

What distro was this?


Filter msg refactor

@pilewski @nnchambs @rrgayhart

refactored to delete the separate filtered message array out of state and just check state filter variables for string and user, then filter in the render function.

refactored to create a new component for user input buttons.

I really like the addition of semicolons on lines 35 and 36 🇺🇸
Oh and the addition of semicolons on lines 11, 15, 18, and 21 🇺🇸


CLI should support invocation of web actions

Perhaps by adding a --web argument to the action invoke command, we could allow users to invoke web actions. This flag would allow the CLI to construct the proper URL in order to invoke the web action. Additionally, this flag should apply to the trigger create and trigger delete commands to allow triggers to be created/deleted from feed actions that are web actions.

FYI @rabbah

Other things to consider:

The web action response context (i.e. the action extension - .http, .json, etc) would also need to be specified
Response parsing.  Web action responses can be somewhat free form, so beyond the response status code, any other internal error structure will likely be beyond the CLI's capability.  The -r option does not apply to web-actions.
Other wsk action invoke options.  web-actions are blocking by nature, so the -b option does not apply to web action invocation.

@csantanapr, this relates to the discussion we about CLI gaps related to web actions.

Yep bringing @bjustin-ibm into the loop as he has a use case to use web actions as trigger feed actions

😏

Tell me again why you want to invoke the action as a web action instead of a normal action? (A web action may be invoked with wsk action invoke of course.)

Would wsk action invoke --web be the equivalent of doing a curl?

Tell me again why you want to invoke the action as a web action instead of a normal action?

Because I want to invoke the non-shared action but do not have the auth key for it. For the simple action invoke this is equivalent to using curl, but is more useful in the trigger create scenario. If we feel that the simple action invoke case is just too silly to support, then I'm ok scoping this down to just the trigger create one.

Additionally, this flag should apply to the trigger create and trigger delete commands to allow triggers to be created/deleted from feed actions that are web actions.

The web action in this case is serving as an API - it could be curl'ed from the trigger feed action (which is shared)?
Can you elaborate further on the scenario with triggers?

For consistency, if the CLI provides a means for creating a web action, there should also exist the ability to invoke a web action from the CLI even if it is the same as a curl.

Can you elaborate further on the scenario with triggers?

The scenario is that the feed action needs to be invokable by anyone, but non-shared because it will have bound parameters with sensitive values (super secret credentials). It could be implemented with a shared action that posts to a web action as you suggest, but that is not as simple and performant (two activations for every trigger create) as having a single non-shared web action.

considered changing the trigger create with a feed to instead of accepting an action, to instead accept a url? would that be more general (either created feed by invoking an action or making an http call)?

For consistency, if the CLI provides a means for creating a web action, there should also exist the ability to invoke a web action from the CLI even if it is the same as a curl.

This could be a different set of sub commands, like the "gw" integration. FWIW do the api-experimental subcommands allow curling the gw endpoints?

considered changing the trigger create with a feed to instead of accepting an action, to instead accept a url?

Seems like a much heavier mental burden on the user to first find the URL for the feed action they want to invoke. Personally, I don't even like the idea that they have to know the feed action is a web action, but that seems unavoidable.
It is much simpler to tell them to use (for example) --web -f messageHubFeed and have the CLI handle the sticky details of determining the correct URL for them. If we were to require them to pass in the feed action URL, then the documentation for the feed gets much trickier in that we can't just say "use these parameters" and will then have to document how to find the URL for the feed action and pass that as a parameter.
Honestly, I doubt most users that have created a trigger even realize there is an action invocation happening on their behalf - and that is a good thing.
Also, something just feels icky about allowing them to pass an arbitrary URL to which we are going to POST their feed details. Security risk maybe?

Seems from your explanations that the issue is with the entitlement model - it's not fine grained enough. Sharing a package means the action may be invoked or read where you only want to grant invoke rights. Web actions give you the right entitlement but leak implementation details. So another question: if we fixed the entitlement to be more fine grained, would it satisfy the requirement in this scenario?

if we fixed the entitlement to be more fine grained, would it satisfy the requirement in this scenario?

What I need is the ability to create an action that anyone can invoke without the auth key, but also they cannot see the code or parameter values for this action. If that were possible, ultimately then the CLI would not need to change to support invoking web feed actions.

that anyone can invoke without the auth key,

two more thoughts: (sorry for not yet offering answers, i'm trying to clarify the requirements)

note that we define that a trigger life cycle event receives an apikey (to fire a trigger on behalf of the user) among other fields
invoking an action as a web action changes the cost model for the activation (from caller pays to owner pays)

note that we define that a trigger life cycle event receives an apikey (to fire a trigger on behalf of the user) among other fields

I'm curious why you chose to point this out. Is this to show that users may not be as blissfully ignorant about feed actions as I suspect, or something else?

invoking an action as a web action changes the cost model for the activation (from caller pays to owner pays)

Now that is interesting! It makes sense, but is not optimal in the feed action scenario where the caller should be billed.

I'm curious why you chose to point this out...

In short yes.
 It's arguable this flow should handshake more generally through an OAuth flow where the feed is given a limited access token to fire exactly one trigger, for example. As opposed to the current model where there is just one key.
This is more aligned with the negotiate the feed construction through a web action (API), in that then authentication/authorization are part of the web action flow where the user is more explicitly aware of what's happening, what tokens they are sharing, for what privilege, etc.

The user should be aware they are in fact authorizing triggers to be fired on their behalf

I agree. Instead, I was trying to point out that I suspect that users won't intuit that an action invocation is happening on their behalf during trigger creation (from a feed), and that it doesn't really benefit them in a practical sense to know this is happening.

To invoke a web action and pass it the auth key is not sufficient. The validation of the key is required - somerwhere. We currently allow the controller to validate this key and pass on the corresponding namespace to the web action if it's valid (and no namespace otherwise). This is done now to allow API experimental to continue to operate as before. There was discussion and agreement to remove this feature although I don't think I noted this in an issue which I shall do.
So the desired --web feature discussed herein isn't really just about invoking a web action, you will need also the authorization key for the caller, right? Is the fact that it's part of a feed sufficiently different from say calling an arbitrary API call?
If the issue here is strictly with respect to entitlement (want to grant Activation rights but not CRUD), then should we focus on just solving that problem instead where a web action is just solving that problem for you indirectly? Or is it that a web action is the right solution to this problem and so perhaps we should just require that all feeds implement a web action as a way of handling the trigger life cycle management?

@rabbah Ahhh... I think I'm starting to see it. Just to be clear, what would be the value of __OW_API_KEY if we made the feed action a web action and called it as such from the CLI (as proposed here)? Are you saying that it would be the key for the action owner and not the caller?

That's correct and consistent with the key for web actions today.

Ok, I have opened #2155 to discuss entitlement changes to allow this. Thanks @rabbah.


Limiting the upload/seeding speed

Is there any way to limit the upload speed for seeding the torrent?

also want to know it

Hi @manikandancsea and @fonewoda . This is not possible at the moment

Duplicate of #163.


File missing in the "simple" list (so pip is failing to find it)

Describe the bug
The sources file for setuptools-scm 7.0.2 (setuptools_scm-7.0.2.tar.gz) does not appear in the "simple" list page (even if it's properly shown in the project's page for that version files).
Expected behavior
All project files should be listed in the "simple" list page.
To Reproduce
Check the aforementioned two pages.
My Platform
Verified this both on Firefox and Chromium under Ubuntu 21.10.
Additional context
Because of the project not being listed in that page, pip is failing to install 7.0.2 from sources:
$ pip install --no-binary :all: "setuptools_scm==7.0.2"
ERROR: Could not find a version that satisfies the requirement setuptools_scm==7.0.2
ERROR: No matching distribution found for setuptools_scm==7.0.2

And now it appears there :/
So weird. FTR, I don't think it was a cache/refresh issue because the wheel file appeared ok, just the sources one was missing.
Anyway, solved! Thanks!


camera screen is zoomed

some zoom level is set by default.. Image is expanded.

this is how it looks in paytm

Is the issue still exists?

yes @ravi8x

I'm also getting the same issue.

I'm facing the same issue. For me it happens right after allowing the application to take picture and record video (granting permission). If the app already got the permission (re-launching the activity) it just works fine

@prathibhaprabs: Get the source code you can custom and fix that issue. At CameraSourcePreview.java -> protected void onLayout (boolean changed, int left, int top, int right, int bottom).
I fixed for my project like below:
@Override
protected void onLayout (boolean changed, int left, int top, int right, int bottom)
{
int width = getWidth();
int height = getHeight();
//        if (mCameraSource != null) {
//            Size size = mCameraSource.getPreviewSize();
//            if (size != null) {
//                width = size.getWidth();
//                height = size.getHeight();
//            }
//        }
//
//        int layoutWidth = right - left;
//        int layoutHeight = bottom - top;
//
//        // Swap width and height sizes when in portrait, since it will be rotated 90 degrees
//        if (isPortraitMode()) {
//            int tmp = width;
//            //noinspection SuspiciousNameCombination
//            width = height;
//            height = tmp;
//        }
//
//        int childWidth = layoutWidth;
//        int childHeight = (int) (((float) layoutWidth / (float) width) * height);
//
//        if (isPortraitMode()) {
//            childHeight = layoutHeight;
//            childWidth = (int) (((float) layoutHeight / (float) height) * width);
//        }
    for (int i = 0; i < getChildCount(); ++i) {
        getChildAt(i).layout(0, 0, width, height);
    }

    try {
        startIfReady();
    } catch (SecurityException se) {
        Log.e(TAG, "Do not have permission to start the camera", se);
    } catch (IOException e) {
        Log.e(TAG, "Could not start camera source.", e);
    }
}

@ravi8x, do you think the fix proposed by @hoang08t2 can be accepted and reported to main code in a new version ? Thanks.
Can you add a way to set autofocus 'on'  from code, actually this can be done only if you define it in xml.
Thanks for all.

@Llorc currently, The problem will come when you use a device with high density so that's my solution to fix that issue. I hope @ravi8x will upgrade to a new version.

Hello. it's seem still not fix in new version gradle.

Add this on your Scanner Activity OnCreate
Im using Kotlin, just find the java equivalent code
window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN)
setContentView(R.layout.activity_scanner)
val imm = getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.hideSoftInputFromWindow(relativeScanner.getWindowToken(), 0)

Also experiencing a green bar on the scanner

I'm also experiencing the same problem (a green bar appears on right of the scanner ). Did somebody find the fix for that?

hello @mmarshad . Let download this project and add to your Android Studio as library, then modify the class CameraSourcePreview as above comment

In my case the green line only shows if i don't use Full Screen, Below is what i did fix it.
Hope it helps others.
In Android Manifest.
 <activity android:name=".ScannerActivity"
        android:theme="@style/FullTheme"
        android:launchMode="singleInstance">
        <intent-filter>
            <action android:name="android.intent.action.Scanner" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
   </activity>

Style used.
<style name="FullTheme" parent="Theme.AppCompat.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

Activity's OnCreate
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
    /* use as full screen */
    window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN)

    setContentView(R.layout.activity_scanner)

    /* hide keyboard if necessary */
    val imm = getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
    imm.hideSoftInputFromWindow(relativeScanner.windowToken, 0)

    //# Initialize and show barcode fragment
    mBarcodeReader = supportFragmentManager.findFragmentById(R.id.barcode_fragment) as BarcodeReader

}

As I am adding the barcode scanner from a fragment, setting full-size will not work for me. Why does it take so long to fix this ?

Any ideas about this issue?. I am trying fix this but when I apply style full Theme the Qrs are detected in the right side not in the center. Any solution?
Thansk

I also had this issue (camera screen is zoomed). I solved this problem just added full screen mode in onCreate method:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);

This solve my problem by setting the screen to full screen

What still not fixed this issue ??


Querying by event kind is broken

Previously only notes were supported so querying for long form content was impossible. Instead we were incorrectly getting long form content when querying for notes.
Creating this to document that this problem existed and was fixed.

I still need to deploy the changes to prod.


add geoconnex into RC-1.60

Pull Request Checklist:

[ ] Positive Test Case Written by Dev

[ ] Automated Testing

[ ] Sufficient User and Developer Documentation

[ ] Passing Jenkins Build

[ ] Peer Code review and approval

Positive Test Case

[Enter positive test case here]

METRIC
VALUE

https://sonarqube.cuahsi-workstation.com:9000/dashboard?id=hydroshare-4809


Star rating sample using amp-form and CSS

Please squash. Thanks!
Resolves #558.

I think this sample would better fit into the advanced category. Wdyt?

Agree. Feel free to move.

Idea: would it make sense to initially highlight 2.5 stars to indicate that this is possible as well using server-side rendering?

The widget doesn't support half-stars.

Can you please move the sample.
Regarding 2.5 stars, the point wasn't about the .5, but about showing an initial rating.

Idea: how much effort is it to make the rating work? e.g. we have an initial rating of 2, once the user has rated we should the updated value.

Setting the rating is as easy as setting checked="checked" on the desired radio button.

I think this is our best documented sample so far.

Thank you :) Let me know if there are other changed requested. Would love to see this live and be able to point partners to it (and move on to finalizing the proper component).

Did you see my suggestion regarding whether it's possible to make it work like an actual rating? The initial rating is 2 and the value changes (reflected in the stars) after the rating is submitted. One approach would be to hide the initial stars on form submit success and render a new one with the form results.
I'll merge this this now, but might be a good idea for another PR.

Had another look at the sample - my proposal actually doesn't make sense. I think the current version is fine.


index.md

Changed all the "Critérios de Aceitação" or "Critérios de aceitação" to "critérios de aceitação", plus translated "Product Owner" and "Delivery Team" all across the text.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

@rafaelbogfreitas Thank you for  creating this PR.  However, since it was created, the underlying document has changed.  Can you please review and resolve the current merge conflicts?  It could be the changes to the underlying document are so significant that your changes are no longer relevant.  If the latter is the case, it might be easier to just close this PR and create a new PR with any changes you still feel are important to make.
If you need any assistance or have questions about resolving the merge conflicts, please reply back or contact someone in the Contributors Room on Gitter.
Thank you.

We are restructuring a lot of the code and learning resources referenced in your pull request, so for now I am going to go ahead and close this pull request. Thanks again for opening this pull request and for contributing to the community.


MGDOBR-952: add router canonical hostname to shard table

MGDOBR-952
Draft as I still have to show the team the general idea behind all the upcoming changes
PR owner checklist
Please make sure that your PR meets the following requirements:

[ ] Your code is properly formatted according to this configuration.
Run mvn clean verify -DskipTests so that imports are correctly set.
[ ] Your commit messages are clear and reference the JIRA issue e.g: "[MGDOBR-1] - $clear_explanation_of_what_you_did"
[ ] The layers in the kustomize folder have been updated accordingly.
[ ] All new functionality is tested
[ ] Pull Request title is properly formatted: MGDOBR-XYZ Subject
[ ] Pull Request contains link to the JIRA issue
[ ] Pull Request contains link to any dependent or related Pull Request
[ ] Pull Request contains description of the issue
[ ] Pull Request does not include fixes for issues other than the main ticket

PR reviewer(s) checklist

[ ] Check if code and Github action workflows have been modified and if the modification is safe
[ ] If the modification is safe, add the safe to test label

How to trigger pipelines and use the bots:

Run the end to end pipeline
Annotate the pull request with the label: safe to test. If you want to run the pipeline again, remove and add it again.

Rebase the pull request
Comment with: /rebase.

Deploy BOT
Comment with `/deploy <dev,stable> when the PR has been merged to deploy to a target environment.

I'll add the router canonical hostname values in the dev/stable tables manually after I deploy this change to the envs.

@r00ta We should find a way to automate the setting of the router_canonical_hostname field in all environments. I've made a suggestion that aligns with the pattern we've used to set the id of the shard.
cheers, Rob

Could you take another look now?

@msmagnanijr could you create a new secret SHARD_ROUTER_CANONICAL_HOSTNAME with the value of the router canonical hostname of the fleet shard in app-interface? Thanks

@msmagnanijr could you create a new secret SHARD_ROUTER_CANONICAL_HOSTNAME with the value of the router canonical hostname of the fleet shard in app-interface? Thanks

Hey @r00ta I think I missed this comment. I'll do that today and let you know.