Reduce binary size by excluding unused plugins

What are we doing?
We are shrinking the binary size of telegraf builds by excluding plugins we do not use. See https://github.com/omc/shipit-telegraf/issues/27
I also added a GitHub Action to ensure changes we make to the repo still successfully builds a binary.
A go test step could also be added - however currently many tests assume all plugins are imported so it would require putting testing.T.skip() in most of the plugin tests.

Curious, what was the reduction?

On first pass I see the size of the binary reduced from 70MB to 13MB by commenting out the import statements of unused plugins. So, nice!

Also, closes https://github.com/omc/shipit-telegraf/issues/27

On first pass I see the size of the binary reduced from 70MB to 13MB by commenting out the import statements of unused plugins. So, nice!

Also, closes omc/shipit-telegraf#27

Looks like closing keywords don't work if the PR is in a different repo to the issue

Closed in favour of rebasing to v1.20.4 and squashing all omc's changes into one commit, see https://github.com/omc/telegraf/pull/4


Is it possible to choose the shape of turtle?

I am wondering it is choose different shape of turtle rather than a circle one.

With the narrow scope of this library, I did not implement such an option. I am also not sure whether html kind of graphics that colab has supports that.


Password store backend

In the Add a password-store (aka pass) backend PR @dgoodlad implements a pass backend for keyring, but tests run via travis for osx timeout. This is caused by pass requiring get-opt and it not being installed. This is easily rectified by installing the brew recipe gnu-getopt. Tests now pass, so there should be no reason (as far as I'm aware) for the pass backend not to be merged.
Thanks to @dgoodlad for his pass implementation for keyring.

@lox @mtibben @joho any idea on when this can be reviewed/merged? Also I'm happy to assist as a maintainer (the pulse on the project appears pretty quiet).

I’ll check it out!
We’d love an additional maintainer, the three of us have young kids (as well as the usual full-time jobs) so maintenance has been sparse 😓

On 22 Dec 2018, at 2:41 am, Collin Doering<EMAIL_ADDRESS>wrote:
@lox @mtibben @joho any idea on when this can be reviewed/merged? Also I'm happy to assist as a maintainer (the pulse on the project appears pretty quiet).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Looks good to me!


Do not use compile features with msvc

It has no options controlling the language feature to use anyway.

Coverage remained the same at 93.25% when pulling 377fbc8958b26cb2c0151b3068bce07dff3811ec on jhunold:cpp11 into 03100bbbbe3559bae687b8f33c48741a00c52ff4 on rbock:develop.


running bottleneck with multiple threads

This is a continuation of the discussion that started towards the end of issue #111.

(continuing from other thread).  OpenMP is good choice, I haven't worked with it personally so I can't comment.

I never worked out for myself what numexpr does but it might be worth exploring further.

unfortunately, numexpr is hard to grok, and the maintainers are really busy... they have some sort of VM, and do a some useful work to avoid temporaries.  I think the approach used in https://github.com/shoyer/numbagg project has some good potential to take advantage of parallelization and removing temporaries at the same time.  They recently made available guvectorize's target=parallel in the free version of numba :). Perhaps @shoyer can comment.


API workflow question

Is questions static or they can change throughout the time? Like wouldn't I get errors if I translate questions from english to local language without an use of dynamic API translation services?
Sorry for posting question in issue list, but I may need your api for future project and have not found answer for this at website and readme's.

its better to fetch questions from api

its better to fetch questions from api


I cannot import qubo_solver from any_module

I am using the conda IDE, using Jupyter an testing the simple example for the Set Cover and it doesn't work.

Hi! The import qubo_solver from any_module line that I wrote in the README was just a dummy line example. I just meant that you can use any QUBO solver from any Python package that you want. So for example, the following uses qubovert's brute force solver.
from qubovert.problems import SetCover
from qubovert.utils import solve_qubo_bruteforce as qubo_solver

U = {"a", "b", "c", "d"}
V = [{"a", "b"}, {"a", "c"}, {"c", "d"}]

problem = SetCover(U, V)
Q = problem.to_qubo()

obj, sol = qubo_solver(Q)

solution = problem.convert_solution(sol)

print(solution)
# will print {0, 2}
print(problem.is_solution_valid(solution))
# will print True, since V[0] + V[2] covers all of U
print(obj == len(solution))
# will print True

Alternatively, you use qubovert's simulated annealer:
from qubovert.problems import SetCover
from qubovert.sim import anneal_qubo as qubo_solver

U = {"a", "b", "c", "d"}
V = [{"a", "b"}, {"a", "c"}, {"c", "d"}]

problem = SetCover(U, V)
Q = problem.to_qubo()

result = qubo_solver(Q, num_anneals=100)
obj, sol = result.best.value, result.best.state

solution = problem.convert_solution(sol)

print(solution)
# will print {0, 2}
print(problem.is_solution_valid(solution))
# will print True, since V[0] + V[2] covers all of U
print(obj == len(solution))
# will print True


Web editor cannot apply subranks

When I try to apply a subrank on a player then export the config to my server, it does not apply
To Reproduce
Steps to reproduce the behavior:

/pr webeditor start
Create a rank
Apply the subrank on a player
Export and /pr reload all

Expected behavior
The rank will not apply
Screenshots
If applicable, add screenshots to help explain your problem.
Logs
If applicable, post log files from your server
Desktop (please complete the following information):

OS: Windows 10
Server type: Paper
Minecraft Version: 1.16.3
PowerRanks version: Latest

Thanks for reporting this issue.
I see what's happening here.
I've create a test rank in the web editor and applied that as a sub-rank to myself, then exported it to the server. After checking I can see the sub-rank being there. But a reload or restart of the server removes it.
subranks={TestRank={use_prefix=true, use_suffix=true, use_permissions=true, worlds=[All]}}
When PowerRanks shuts down or restarts it writes the cached files back to the file-system, overwriting the current Players.yml and thus overwrites the sub-ranks that have been configured from the web editor.
I've updated the PowerRanksWebEditor add-on and that is now available for download on https://powerrankseditor.svenar.nl
This new version of the add-n (v1.2) fixes this issue.


Handle notebooks with no cell IDs

The SVG ID pass uses the cell's ID to deterministically generate IDs for any SVG outputs. It currently crashes if it encounters notebooks with no cell IDs.
Here are some options for how to handle this:

Add a pass to require cell IDs and add them if missing (this means dropping support for version<4.5 notebooks).
Don't reset SVG IDs if cells don't have an ID.
Use something other than the cell ID to generate the SVG ID (maybe cell index? Or a hash of the content?)

I went with the first option. Ignoring some images doesn't feel right for a linter, plus those cells will keep causing warnings in nbformat. Using a hash would result in image diffs even if the image is unchanged, which defeats the version-control-noise use-case.


test: don't make network request in gRPC context test

We should stop making a request to http://www.google.com/ in our unit test.

@DominicKramer It hasn't been converted to idiomatic TypeScript. This has been an incremental (and rather stalled) process over the last two years.


Set design of dasboard

Based on our experience of what can be done with ArcGIS, propose a design for the dashboard.

color palette? CRWA Color Scheme.pdf
which charts where?
style of data points?
where are the texts? which texts
where is the URL to download the data?
where is the link to contact? is there a webpage from crwa.org embedded somewhere?
...

Output:

a sketch or description that the ArcGIS dashboard creators can use or follow.

Can the default on the map be to show E. coli data? It'd be clearer, and then people could check off if they want to view phosphorus or chlorophyll a.
Can the map always have an outline of the watershed on it? (we have that layer file if you need it)
Can the map also show the major tributaries to the Charles, as we have data at many of those? (we have layer if you want)
I like the big averages for the data in numerical form.
I like the ability to filter by time period
Can all of the graphs over time be line graphs? It'd be good too to show a trend line on these, and certain 'action limits' for each parameter (ex. for E. coli it'd be 126 and 630).
In a future iteration, it'd be cool to have a pie chart with the number of samples that meet or don't meet these action limits.
I don't really like the change of size of dots as a symbology technique for this data.I think just a solid circle with a color will be best. Perhaps we (or I) can create good colorbars for each parameter that corresponds to our action limits.

Update:
CRWA (Lisa) like the design. We will not invest much time in design anymore, only what we deem necessary for improving the UX. We still need more explanations and potentially a FAQ.

The rationale behind the design of the current dashboard: https://docs.google.com/document/d/13HypTkZm3SBzANV-rRruBN85PPVHd1bmQF6HPZW_F8A/edit


Fetch credit card transactions ?

I would need some help here since I can't test and I don't know the URL for credit cards. Maybe it works already ?

Hi,
I can help ;)
[...]/portfolio/credit_accounts?period=1y
[...]/portfolio/credit_accounts/transactions?page=1&per_page=50
looks like same response format than normal bank account but let's test

Do you write the code or I do ?

[...]/portfolio/credit_accounts/transactions?page=1&per_page=50
Can it take account_id and institution_id as parameter as well ? If it does, it can use the same function than the other two, get_portfolio_transactions

Do you write the code or I do ?

I can do it I guess ;)
I'll let you know how it goes.

About the response format... this project doesn' really assume much about the response format and let the users (finalynx, you etc...). It would be great to document the response format and I started another project for that long time ago... It didn't get enough love so far: https://github.com/lasconic/openapi-finary

Yeah. I'll still need to spend sometime on openapi description, but is is on my ToLearn list ;)

I guess we can close this issue unless I'm wrong ?


DOC: added legend and object-oriented mpl code to rv_histogram plot

Reference issue
Closes #16892
What does this implement/fix?

Adds a legend to the stats.rv_histogram example plot
Uses object-oriented matplotlib code in the example

Thank you for the PR! I am not sure why the doc is not building. I will test this locally.


Page snap

Describe your changes
Had an og image idea I wanted to try and I think it works pretty well:

adds /api/pageSnap that returns png of default preview server email
playwright goes full screen then snaps png
png is cached for 24 hours by vercel
vercel invalidates cache on new deploys (https://vercel.com/docs/concepts/edge-network/caching#cache-invalidation)

before every deploy looked like this:

now they are customized:

Issue link
could be a 0 config fix for #352
Checklist before requesting a review

[x] I have performed a self-review of my code
[ ] If it is a core feature, I have added thorough tests.

How is the vercel 24 hr caching configured or is that just by default?

It's here https://github.com/sofn-xyz/mailing/pull/373/files#diff-6c92ba8d73f9c34c7608e095ec62918958129a1deca9fa370895ba1d6893bd23R34


Removed poll app and added basic homepage for website.

Removed the Polls App and added a basic homepage.

Closes #2


Getting series of deprecated metamask errors

inpage.js:1 MetaMask: The event 'networkChanged' is deprecated and may be removed in the future. Use 'chainChanged' instead.
inpage.js:1 MetaMask: The event 'close' is deprecated and may be removed in the future. Please use 'disconnect' instead.
You are accessing the MetaMask window.web3.currentProvider shim. This property is deprecated; use window.ethereum instead.
inpage.js:1 MetaMask: The event 'data' is deprecated and will be removed in the future. Use 'message' instead.

I also faced this. Any workaround?

With stable version 2.0.0 of Web3Modal now released, we are officially dropping support for version 1.x
Due to this this issue/pr was marked for closing. It is highly recommended to upgrade as 2.x will be receiving further updates that will enable functionality for some of our newer sdks like auth and push as well as support for WalletConnect v2 (See this post about WalletConnect v1 being deprecated https://medium.com/walletconnect/walletconnect-v1-0-sunset-notice-and-migration-schedule-8af9d3720d2e)
If you need to continue using Web3Modal 1.x and require this feature/fix implemented, we suggest adding it via forking V1 branch.


How to handle more than one VLAN for failover

Do you already have an issue opened with F5 support?
No
Description
I have an HA Pair of BIG-IPs across AZ in AWS. I have two VLANs on each (likely more in the future) that require virtual servers to fail over from one BIG-IP to another, for example:
BIG-IP1:
External interface 1 self IP: <IP_ADDRESS>/24
External interface 2 self IP: <IP_ADDRESS>/24
BIG-IP2:
External interface 1 self IP: <IP_ADDRESS>/24
External interface 2 self IP: <IP_ADDRESS>/24
I already have EIPs associated with all of my VIPs on BIG-IP1
Environment information
For bugs, enter the following information:

Cloud Failover Extension Version: 2.0.2
BIG-IP version: <IP_ADDRESS>
Cloud provider:AWS

Severity Level
For bugs, enter the bug severity level. Do not set any labels.
Severity: N/A
Severity level definitions:

Severity 1 (Critical) : Defect is causing systems to be offline and/or nonfunctional. immediate attention is required.
Severity 2 (High) : Defect is causing major obstruction of system operations.
Severity 3 (Medium) : Defect is causing intermittent errors in system operations.
Severity 4 (Low) : Defect is causing infrequent interuptions in system operations.
Severity 5 (Trival) : Defect is not causing any interuptions to system operations, but none-the-less is a bug.

Hi @pedley-f5, can you share your (sanitized) CFE configuration and any f5-cloud-failover errors from /var/log/restnoded/restnoded.log here? This should work today.

Hi @mikeshimkus , I don't have any errors in the log (yet) because this configuration is actually working for a single pair of VLANs (one external VLAN on each BIG-IP in the HA group), but now I want to configure a 2nd pair of external VLANs. The documentation doesn't make it very clear how this can be done.
{
"message": "success",
"declaration": {
"schemaVersion": "1.0.0",
"class": "Cloud_Failover",
"environment": "aws",
"controls": {
"class": "Controls",
"logLevel": "silly"
},
"externalStorage": {
"encryption": {
"serverSide": {
"enabled": true,
"algorithm": "AES256"
}
},
"scopingTags": {
"f5_cloud_failover_label": "f5-bigip-ha-failover"
}
},
"failoverAddresses": {
"enabled": true,
"scopingTags": {
"f5_cloud_failover_label": "f5-bigip-ha-failover"
},
"requireScopingTags": false
}
}
}

Hi @mikeshimkus , I think I figured this out. I needed to specify a unique value for f5_cloud_failover_nic_map. It was in the gitlab docs but not clouddocs. I think we're good to close. Thanks for your help!


TestCase cgeaApplicationTest.testSearchTrackable fails

The tested TB moved one. Can we make this more robust against further changes or do we have a static trackable we can use here? Perhaps TBWDQH?

Hi, i made the test more robust already. It will be part of my next pull request on sunday.

Fixed with above commit.


Sachin/pi 1200

Updated cloudflare-plugin-backend to 2.2.0
 Implemented getConfig and updated related files
 Some formatting thing
 Added sample json

@thellimist @jwineman Made all the changes. Let me know if it's good to merge.

Make sure we include the changes from https://github.com/cloudflare/Cloudflare-CPanel/pull/149 here.

Okay this seems good to go! Let me know if you'll are cool with the merge.


filter license when undefined to fix error in /discussions/1255

filter license when undefined to fix error in /discussions/1255, add unit tests for undefined license and multiple licenses and update git ignore to add line for IntelliJ module files

Can you run pnpm lint && pnpm run gen-types to fix the linting errors. Regarding the tests, we combine multiple license expressions using the OR clause after a recent commit.

Can you run pnpm lint && pnpm run gen-types to fix the linting errors. Regarding the tests, we combine multiple license expressions using the OR clause after a recent commit.

I removed the failing test since I now see one already exists for multi lines. I thought it was missing so I was adding to get better coverage but it is not needed.

@fitzmx6 Can we add a test specifically for the issue faced? Like capture the api output from maven central and invoke the particular logic? I have a feeling this particular attribute could be undefined.
https://github.com/CycloneDX/cdxgen/blob/39e3ac89f61d379155f9c585b01e6ed5eaf8f12e/utils.js#L4207

@fitzmx6 Can we add a test specifically for the issue faced? Like capture the api output from maven central and invoke the particular logic? I have a feeling this particular attribute could be undefined.
https://github.com/CycloneDX/cdxgen/blob/39e3ac89f61d379155f9c585b01e6ed5eaf8f12e/utils.js#L4207

All of the tests for utils.getRepoLicense are commented out. Was/Is there something with them?

Hmm, no idea. May be an api limit thingy. Do they work if we uncomment them?

@fitzmx6 Can we add a test specifically for the issue faced? Like capture the api output from maven central and invoke the particular logic? I have a feeling this particular attribute could be undefined.
https://github.com/CycloneDX/cdxgen/blob/39e3ac89f61d379155f9c585b01e6ed5eaf8f12e/utils.js#L4207

I enabled the tests for this method and debugged the code a bit. This can be undefined but when it is the tests still pass so from my perspective this works as intended but I do not have all that much context to what all this means.  If all my checks pass I think this is as far as I would like to go with this PR if that ok?


The workflow type for a Galaxy workflow on a collection page is wrong

Describe the bug
The type of a Galaxy workflow on the collections page displays asgxformat2. It should be GALAXY.
To Reproduce
Steps to reproduce the behavior:

Go to https://dockstore.org/organizations/iwc/collections/Covid
See gxformat2 as the workflow type

Expected behavior
It should say GALAXY
Screenshots

Additional context
Webservice - 1.11.5
UI - 2.8
Compose Setup - 1.11
Deploy - 1.11.0
┆Issue is synchronized with this Jira Story
┆fixVersions: Dockstore 1.12.x
┆friendlyId: DOCK-1893
┆sprint: 87 Octocat
┆taskType: Story

Confirmed that it says Galaxy on staging at https://staging.dockstore.org/organizations/iwc/collections/Covid
Webservice - 1.12.2
UI - 2.9.2
Compose Setup - 1.12.2
Deploy - 1.12.6
galaxyParsingLambdaVersion: 0.0.7


Replicate Polling Exemption?

Could polling for Replicate results be exempted from rate limits?
Reasons:
The rate limit is to prevent too many paid requests, but polling calls are not charged.
The fair use rate limit can be used by polling on some long requests. Increasing the rate limit, might encourage misuse.

Synchronous API in the short-term works well. For longer running jobs, skipping rate limits would be good.


Make unbound.conf available for tweaking

Hi Kyle,
I've got your docker file running on my Firewalla Purple, and would like to be able to edit the unbound.conf file.
Could you please indicate which code I'd have to add to my yaml file to enable that please?
Thanks!

Hey @churchofnoise, I've never used that product before but based on their documentation you can mount locally directories as volumes like any other docker-compose stack.
So try adding something like this to your unbound service definition:
  volumes:
      - '/data/unbound/etc-unbound/:/etc/unbound/'

Then before running you can grab the default configuration files from here and put them in /data/unbound/etc-unbound/ on your firewalll.
https://github.com/klutchell/unbound-docker/tree/main/rootfs_overlay/etc/unbound
Then you can modify as needed.

@klutchell Thanks! I'll play around a bit with it.
FYI, I've mentioned your docker image for Unbound on the Firewalla community after a couple of us had been looking for ways to get Pi-Hole and Unbound running on it ( https://help.firewalla.com/hc/en-us/community/posts/1500001172701/comments/4941267404435 ). Very grateful you provide this multiarch image that acts as a recursive resolver!


How to Cleanly Specify Optimizer, Schedule, & Gradient Clipping with inject_hyperparams

First off, thanks to the optax crew for this package! I am relatively new to JAX and Optax, and I have a bit of a rookie question regarding how to combine various optimizer/gradient transformation options. If you think it's useful (and I didn't just somehow miss this in the documentation), I'd be happy to contribute the resulting code ... but let's just see I guess.
I would like to create an optimizer that does the following:

AdamW algorithm
where the gradient is first clipped by the global norm
use a learning rate schedule, like optax.warmup_cosine_decay_schedule
use optax.inject_hyperparams to monitor the learning rate (at least)

The code I would expect (hope?) to work, but does not
I've tried several variants of this, but reached the conclusion that I just don't understand what's going on.
import optax
import jax.numpy as jnp

def custom_optimizer():
    schedule = optax.warmup_cosine_decay_schedule(
        init_value=0.,
        peak_value=1e-3,
        warmup_steps=10,
        decay_steps=100,
        end_value=0.,
    )
    adam = optax.inject_hyperparams(optax.adamw)(
        learning_rate=schedule,
    )
    return optax.chain(
        optax.clip_by_global_norm(1.),
        adam,
    )

grads = {'w': jnp.full((5, 5), 0.1), 'b': jnp.full((5), 0.1)} # dummy
params = {'w': jnp.full((5, 5), 0.1), 'b': jnp.full((5), 0.1)} # dummy

optimizer = custom_optimizer()
opt_state = optimizer.init(params)

updates, new_opt_state = optimizer.update(grads, opt_state, params)
print(new_opt_state.hyperparams['learning_rate'])

The brute force approach that works
But it seems weird to keep a separate optimizer and clipper.
import optax
import jax.numpy as jnp

def custom_optimizer():
    schedule = optax.warmup_cosine_decay_schedule(
        init_value=0.,
        peak_value=1e-3,
        warmup_steps=10,
        decay_steps=100,
        end_value=0.,
    )
    adam = optax.inject_hyperparams(optax.adamw)(
        learning_rate=schedule,
    )
    return adam

grads = {'w': jnp.full((5, 5), 0.1), 'b': jnp.full((5), 0.1)} # dummy
params = {'w': jnp.full((5, 5), 0.1), 'b': jnp.full((5), 0.1)} # dummy

optimizer = custom_optimizer()
opt_state = optimizer.init(params)

clipper = optax.clip_by_global_norm(1.)
clip_state = clipper.init(params)

new_grads, clip_state = clipper.update(grads, clip_state)
updates, new_opt_state = optimizer.update(new_grads, opt_state, params)
print(new_opt_state.hyperparams['learning_rate'])

Any help here would be greatly appreciated. Thanks in advance!

Hello,
Thanks for reaching out!
You can use optax.tree_utils.tree_get to access the learning rate. See
#961.

Beautiful, thanks @vroulet! That's exactly what I needed. I'm running optax version 0.2.1 which does not appear to have optax.tree_utils.tree_get, but for this case I can just grab the second optimizer state.

I feel like it would be very helpful in to mention something about this in this section of the docs. For example after what's already there, something like what's below. If you agree I'd be happy to add it as a simple PR.
In this example, hyperparameters could be monitored or modified in either of the gradient transformations optax.adamw or optax.clip with optax.inject_hyperparams. For example, to access the learning rate, the code would be modified as follows
optimizer = optax.chain(
  optax.clip(1.0),
  optax.inject_hyperparams(optax.adamw)(learning_rate=schedule),
)

However, because of the optax.chain call, opt_state is now a tuple, where the first element refers to the optax.clip transformation and the second refers to the optax.adamw transformation. So the learning rate could be diagnosed with optax.tree_utils.tree_get as follows (for instance in the fit function):
lr = optax.tree_utils.tree_get(opt_state, "learning_rate")

or alternatively it can be accessed manually via the second element of the opt_state:
lr = opt_state[1].hyperparams["learning_rate"]


[snapshot] Erase simulator only when erase_simulator is true

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context

Some users expect that running localize_simulator (true) is independent of erase_simulator

Fixes https://github.com/fastlane/fastlane/issues/16266
Description

Now snapshot will only erase simulators if erase_simulator is true
Testing Steps
Run snapshot with localize_simulator: true,  erase_simulator: false
Expected outcome: simulator will not be erased

I’m fairly certain the erase_simulator is needed for localize and dark mode to work for some reason but I can’t remember ehhhh exactly 🤨
This was added by @ohayon so he might remember? 🤞
https://github.com/fastlane/fastlane/commit/f410f2a6d9d20ae8e6747db978cae7142a03d781

Bah! Unfortunately I do not remember at all 😑. But I do think that the simulator (at least used to) requires that it is deleted and then re-spawned with localization? Best guess. Sorry! I would say merge it and see if anyone runs into issues?

Hey! Its still erasing :(
+----------------------------+--------------------------------------+
|                   Summary for snapshot 2.145.0                    |
+----------------------------+--------------------------------------+
| clean                      | false                                |
| reinstall_app              | true                                 |
| workspace                  | ./IsoCalc.xcworkspace                |
| output_directory           | X            |
| devices                    | ["iPhone 8 Plus", "iPhone 11 Pro     |
|                            | Max"]                                |
| languages                  | ["en-US", "de-DE", "it-IT"]          |
| launch_arguments           | [""]                                 |
| output_simulator_logs      | false                                |
| skip_open_summary          | false                                |
| skip_helper_version_check  | false                                |
| clear_previous_screenshots | true                                 |
| erase_simulator            | false                                |
| localize_simulator         | true                                 |
| app_identifier             | X                      |
| buildlog_path              | ~/Library/Logs/snapshot              |
| scheme                     | IsoCalcScreenshots                   |
| number_of_retries          | 1                                    |
| stop_after_first_error     | false                                |
| result_bundle              | false                                |
| concurrent_simulators      | true                                 |
| disable_slide_to_type      | false                                |
| xcode_path                 | /Applications/Xcode.app              |
+----------------------------+--------------------------------------+
[18:49:58]: Clearing previously generated screenshots
[18:49:58]: Building and running project - this might take some time...
[18:49:58]: Patching simulators '/Users/damian/Library/Preferences/com.apple.iphonesimulator.plist' to scale to 100%
[18:49:59]: Erasing iPhone 8 Plus...
[18:50:00]: Localizing iPhone 8 Plus (AppleLocale=en_US AppleLanguages=[en-US])
[18:50:00]: Erasing iPhone 11 Pro Max...
[18:50:00]: Localizing iPhone 11 Pro Max (AppleLocale=en_US AppleLanguages=[en-US])

Best open a new issue about this @DamianSzejnoch and refer to this PR.

@janpio I deleted the above comment about saying ,,still not working" because the library hasn't been updated, sorry for that. I had a hard day :(


Can you provide a audio sample of this model inference?

Hi! Thank you for this great Works!
Can you provide a audio sample of this model inference?
Japanese or English is OK.

Ah, I found the audio sample in https://nii-yamagishilab.github.io/sample-ssnt-sampling-methods/, thanks.


dfetch check on svn repository does not check specified revision

When checking a svn entry in the dfetch file there is an issue with the revision number.
It seems to be ignored when checking.
The last revision number is checked instead.
The files do exist at this revision number, but they are numbered at a different revision, which causes the following.
manifest
manifest:
  version: '0.0'

  remotes:
  - name: testproject
    url-base: http://svn.local/testproject

  projects:
  - name: Resources
    revision: '681'
    remote: testproject
    dst: Quality/Resources
    branch: test_memory_parser
    repo-path: Resources

output
>>>svn info http://svn.local/testproject/Resources/test_memory_parser<<< returned 1:
svn: warning: W170000: URL 'http://svn.local/testproject/Resources/test_memory_parser' non-existent in revision 700

svn: E200009: Could not display info for all targets because some targets don't exist

I would expect the behavior to be that dfetch check checks the svn repository at the specified revision and gives feedback on that one.

Thanks for the report, issue is in the _check_for_newer_version :

dfetch.project.svn does not insert the branches when checking a branch. When fetching this is done see (_determine_what_to_fetch).
Quick solution for this specific issue is to update the branch if it is not "trunk" or " ". Cleaner would be to centralize this logic somewhere.


Display Release Tab within Package Page

Closes #863
This pull requests adds a new tab bar to the package page. This tab bar has two tabs: the existing README and a new "Release Notes" page which links into the data added in #829.
This does not show release tag messages, a card has been raised under #1223 to support this. A message is shown if no releases are available, or if no notes are attached to a version. Release titles have a link to the GitHub page for convenience.
Some images:

Tab bar hover state:

This is what the releases tab is looking like.

Not all packages have details, but you do still get this...

Going to take a pause on this until I get some feedback from Dave/Sven. Of course I still need to add/update tests and a bit of tidying but would like some direction 👍  No rush!

Bit of an edge case but tuist/tuist add the version to the top of their notes, which looks like this...

OK, as discussed on Discord. Tab bar design should look like this:
Standard State:

and when hovering over an unselected tab:

Tab bar background is very-very-light-grey
Tab bar border is light-grey
Selected tab background is very-light-grey
Selected tab border is light-green

Not all packages have details, but you do still get this...

So with this. I'm guessing this is the case where GitHub has defined "releases" but no release notes have been added by the package author?
In this case, we should include the version number and have a paragraph underneath it with "No release notes."

Bit of an edge case but tuist/tuist add the version to the top of their notes, which looks like this...

Even though this is an edge case, I think it's worth fixing. We should look at the first heading in the release notes and remove the whole heading if it contains the version number. We should be able to use SwiftSoup for this server-side.
The alternative would be to only remove it if it's an exact match for just the version number, but I feel like the likely case for extra words here are things like the word "Version" before the version number, so let's remove it.

Thanks for all the help there Dave, I'll get cracking on that as soon as possible!
I'll also work on fixing the JS that you slated on Discord 😉

I don't know how to process the fact that an open source contribution got a better code review than my actual work... but thanks Dave!
I knew I needed to rewrite the JS anyway but I like the approach you've detailed there so I'll be sure to give it a shot!

I'm still experiencing crashes when running tests on my local machine so I am unable to update the snapshot tests. Equally I've not been able to create a test (as I would've liked to do) that tested the model initialiser with a real repository instance for the same reason.
I have added two new snapshot tests which should cover the various different states of the view. I've also added a handful of unit tests to test some of the specific logic.
Generally speaking this should be ready to go with a bit of help getting that green test status 😄

Rebased, tests added, good to review 👍

Even though this is an edge case, I think it's worth fixing. We should look at the first heading in the release notes and remove the whole heading if it contains the version number. We should be able to use SwiftSoup for this server-side.
The alternative would be to only remove it if it's an exact match for just the version number, but I feel like the likely case for extra words here are things like the word "Version" before the version number, so let's remove it.

I'm not sure if you got to this, although there's a commit that looks promising. However, it's still showing the version number headers for tuist in the latest version.

Hmm. I definitely tested tuist and it was working, leave it with me and I'll figure it out again.

Tagging @finestructure for a quick review too.

Spoken to Dave on Discord, but for the sake of public comms - the issue above with Tuist is very specific to a recent release of theirs and is too niche to warrant a wider fix.
It seems that this version has like 5 lots of changelogs in a single version. It's far from the norm, and so we've okayed it (unless it becomes way more common and troublesome)

Deploying as 2.41.10


improves fate execution of in progress transactions

There are a few improvments to FATE in this PR.  The first is that Fate now continues to execute a transaction as long as its ready. Before it would do one step of a transaction and then persist the result and stop, meaning the next step would not run until the next full scan.
The second change was to make finding runnable transactions look for in progress transaction first in the persisted store followed by the non inprogress ones.  This change causes the search for runnable transactions to scan the store twice. To make this more efficient a locality group and filtering iterator were added.  This should make the scans looking for fate transactions with a certain status much more efficient.
These two improvements should make fate a bit more responsive for getting existing work done.
remove todo

@keith-turner  - does this replace #3852? Curious if the IT in #3852 should be added to this PR. Specifically the default case in the IT tests/confirms that FATE processes transactions in an interleaving manner.

@keith-turner - does this replace https://github.com/apache/accumulo/pull/3852? Curious if the IT in https://github.com/apache/accumulo/pull/3852 should be added to this PR. Specifically the default case in the IT tests/confirms that FATE processes transactions in an interleaving manner.

Yeah I think it does.  It take the approach from #3852 of being able to continue running something that is ready in the thread that is working on it.  It adds some new code for prioritizing in progress stuff in the storage layer.  For the interleaving aspect, the isReady method currently offers a way to interleave when it returns a non-zero value.  I think I can pull that test over and adapt it a bit to use isReady instead of adding a new method.


Added support for new "searchPath" global configuration

Impact

[ ] Bug fix (non-breaking change which fixes expected existing functionality)
[X] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
Adds new searchPath configuration to the CLI, maven, and Ant integrations. While we will still search the classpath for files, searchPath is the new, better place to configure additional locations to look for changelog files in.
Besides allowing us to better control the actual classpath vs. where changelog files are at, this PR also introduces a new SearchPathParser extension point. The new extension point allows people to convert paths within searchPath into custom ResourceAccessors. That is not something we're able to wedge into the pre-existing classpath.
Fixes #2916
Things to be aware of

Uses the standard GlobalConfiguration system so all the ways the parameter can be set will work
We only have a FileSystemSearchPathParser currently shipping
Each integration will ship with a default "search path" that makes sense for it. But if a user specifies the searchPath parameter, it will replace the default, NOT add to it.
Docs will need to be updated to include this new "search path" concept

Things to worry about

Nothing

For this PR, we tested on the 3 different integrations.
Apache Ant:
For Ant, every task that supports searchpath work as expected, if the task doesnt support searchpath and it was added as an attribute, you get a error msg saying that the task doesnt support searchpath. List of tasks that support search path:
-update
-futureRollbackSQL
-rollback
-markAsRun
-changeLogSync
-changeLogSyncToTag
Test Environment:
OS: Windwos 10
MySQL Docker Container v8.0.27
Ant version 1.10.12

For CLI, all seems to work as expected. Tried changing the searchpath to new locations where I have my changelog, and there is no notable issue.

I did a couple more checks in the CLI and Maven integration and they worked just fine:
Maven:
- Adding the searchPath property in the POM file replaces the paths that were set in the classpath when looking for resources (I checked with changelogFiles and included files in a changelog). PASS
- Adding the property in the CLI replaces the paths that were set in the classpath when looking for resources. PASS
- Multiple paths can be added in the searchPath value. PASS
- Not using the searchPath property sets it's value to be the same as the classpath. PASS
- Files in the searchPath paths are found properly (and error messages are shown for duplicates). PASS
CLI:
- Adding the searchPath property in the properties file replaces the paths that were set in the classpath when looking for resources. PASS
- Adding the property in the CLI replaces the paths that were set in the classpath when looking for resources. PASS
- Multiple paths can be added in the searchPath value. PASS
- Not using the searchPath property sets it's value to be the same as the classpath. PASS
- When using both searchPath and classpath the paths in the later are ignored when looking for resources. PASS
- Files in the searchPath paths are found properly (and error messages are shown for duplicates). PASS


Add JAWSM

It doesn't work yet, but I wanted to open a PR for troubleshooting

You can't use CI for testing, it doesn't run any tests.

@linusg yeah, I know, by troubleshooting I meant any comments from @CanadaHonk or someone else that knows more about the harness. I managed to make it work locally, so I think it's good to go.

Thanks for the review @linusg, I fixed all the spots I found to be different than the example.

Also, linking a corresponding PR in eshost: https://github.com/test262-fyi/eshost/pull/22


App Service Managed Certificate support for ASEv3

I created an ASEv3 (note the v3) and added multiple apps to it all within the same resource group as the ASE and App Service Isolated Plan, then added a custom domain for each app and secured each custom domain with its own Free App Service Managed Certificate. I then tried to create a Free App Service Managed Certificate for an app service on the same ASE and plan but where the app itself was deployed to a different resource group. This resulted in the error "App Service Managed Certificates are not supported on App Service Environments." Retrying this failed every time. However, deleting and re-deploying the app to be within the same resource group as the ASE and App Service Isolated Plan it was on, along with all the other apps, I was again able to create and assign a Free App Service Managed Certificate to the custom domain name on the app.
So, I see two possibilities for this scenario, either

App Service Managed Certificates are still not supported on App Service Environments v3 but the validation is not being applied for apps deployed within the same resource group as the ASE and/or plans, hence this is a bug in the Azure validation. If this is the case, what is the issue here, will the Free App Service Managed Certificates I created and applied to my apps not renew? Because they are working just fine.
App Service Managed Certificates are supported on App Service Environments v3 but the validation has not been updated for apps deployed to a different resource group from where the ASE and/or plans and this is bug in the Azure validation but also the documentation needs to be updated to reflect the support in v3.

Thanks.
References
https://docs.microsoft.com/en-us/azure/app-service/configure-ssl-certificate?tabs=apex%2Cportal#create-a-free-managed-certificate

The free certificate comes with the following limitations:

Does not support wildcard certificates.
Does not support usage as a client certificate by using certificate thumbprint (removal of certificate thumbprint is planned).
Does not support private DNS.
Is not exportable.
Is not supported on App Service Environment (ASE).
Only supports alphanumeric characters, dashes (-), and periods (.).

Error

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

ID: cc2ee874-df45-1de2-1b30-1fd75c7fd709
Version Independent ID: ee181722-8386-9842-407f-d0549012d2e9
Content: Add and manage TLS/SSL certificates - Azure App Service
Content Source: articles/app-service/configure-ssl-certificate.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

@krispenner Thanks for the feedback! We are currently investigating and will update you shortly.

krispenner, We had been discussing on this internally and I also see you have a support ticket created for this, ending with '..00118', will post back as soon as I have more updates. Thanks!

Yes that is correct, thank you for your assistance.

Kris, Hope you'd a good weekend.
To keep you posted, we're still discussing with the team on this internally.
Just a quick confirmation, did you use Azure Portal for trying to generate free certs on Apps hosted on an ASE V3?

I used the portal for the first app to test it, then I used powershell scripts in my deployment pipeline for all the others.
On Feb 27, 2022, at 10:05 AM, AjayKumar-MSFT @.***> wrote:

Kris, Hope you'd a good weekend.
To keep you posted, we're still discussing with the team on this internally.
Just a quick confirmation, did you use Azure Portal for trying to generate free certs on Apps hosted on an ASE V3?
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/88412#issuecomment-1053633703, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACDNWFR7M4OS2PASMSJ57IDU5JRWPANCNFSM5O4424CQ.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>

I used the portal for the first app to test it, then I used powershell scripts in my deployment pipeline for all the others. Fingers crossed you will confirm support for it.

@krispenner -- The support for ASMC in ASEs is still not available. This is something we do plan on supporting, but I have no ETA to share yet. Once the support is there, that portion of the doc will be updated/removed.

@yutanglin16 can you share any update on expected support for managed certificates in an ASEv3? The documentation still says it's no supported - I'm just curious is this might be available sooner than later.


Support for "empty labels"

Hello! I found this library after our problem with ariadne not being updated. I quite often use the ability to highlight code without any annotation (the first image, in ariadne), but with codesnake I get an extra line (second image). Is there any possibility to add this feature to codesnake?

By the way, I just checked out cooklang; it is an awesome idea!

I actually made some tests myself now (b88654cec1ad8706a1609e960ac7b72b2b82aad3); feel free to contribute more.

Hi, sorry for the late response. Thank you so much! This library was much easier to integrate than ariadne.

By the way, I just checked out cooklang; it is an awesome idea!

Thanks! It's not my idea though, I did the Rust implementation and the chef CLI.

I actually made some tests myself now (b88654c); feel free to contribute more.

I think it should be fine as it is. Also these things are hard to test because if any styling/design changes you have to carefully craft the tests again. If I find any quirk, I will try to fix it and implement a test 😄


istio/crd*yaml" does not exist when enable istio

installing microk8s was done, but when istio:

inspection-report-20201215_000524.tar.gz

@hick can you go to this directory /var/snap/microk8s/current/bin and check if istioctl is there?
If yes can you delete that and try enabling istio again?
Thanks

thx a lot,   it's ok now, as the following picture.
and I guess it maybe caused by the first opertion to start Istio without "sudo" by using no-root user.  and it could be done after deleting /var/snap/microk8s/current/bin/istioctl and using "sudo"


[PORT] Fix WaterfallStepContext to use parent dc properly

Port this change from botbuilder-dotnet/master branch:
https://github.com/microsoft/botbuilder-dotnet/pull/3855

fixes #3854

cleaned up CreateInnerDC so it is applied consistently
changed WaterfallStepContext ctor to pass in parent dc.

Changed projects

Microsoft.Bot.Builder.Dialogs

might be relevant. Needs checking.

@tracyboehrer this would involve porting all the bi-directional traversing of dialogs (child and parent), is this something we want to do in R10?

@axelsrz Do we have the resources for it?  Otherwise, it is marked investigate, so we could limit it to recording what needs to be done.

Note: part of the dotnet PR is being rolled back.  see: https://github.com/microsoft/botbuilder-dotnet/pull/4480


Scrolling&pan on mobile browsers works wrong

When I use my finger to drag on my phone's screen, nothing happens.
Environment: build a simple demo page.

@QyInvoLing Can you take the latest version 1.9.4 and check that it is good for you?


bug-report has no timeout on requests to proxy

See https://github.com/istio/istio/issues/29334 at the end
I've tried to generate the bug-report, but it fails at:

The following fetches are still running:
  ProxyGet istio-ingress/istio-ingressgateway-6ddcc556fb-9xstz:certs

In their case envoy is broken and not responding to admin requests. Probably we don't set a timeout.

The message above is shown for over 10 mins, and after that I stopped the command. I guess it loops over that constantly.


add: zd4 connector incremental load suport

Close #165

Coverage remained the same at 82.63% when pulling 09160b7f4b59ebf8fa57b84920b6e3db65e43650 on mcl-connectors into 0f38fb3c2a3feb1dab07b89ea04f8dd9b13e5e1a on master.


pint support for delta temperature units

Allow support for units to include delta temperatures (like delta_degF and delta_degC).

Solved in #49


Can I set required NP level for servants?

Preparation

[X] I read the Troubleshooting Guide
[X] My question isn't answered in any other issues (even the closed ones)

Your question
Sometimes I need a high NP level servant from friends as a main attacker (e.g. 90++).  Low NP level servants may cause insufficient damage.
Is it possible to set the required servant NP level for detection?

Duplicate of #334


Browser freezes when viewing HPA

This is in a fresh install of 2.3.0-rc9

EC2 nodes
standalone rancher server container
cluster installed with custom - one cp/etcd, 4 workers
ubuntu 18.04
docker 18.09.latest, installed by our script

Steps to reproduce:

create HPA
from the HPA screen, select it
browser will sometimes (often) hang

I was able to sometimes view the HPA in the Default project, but I was never able to view the Istio HPAs in the System project.
If I refresh the page, it fails. If I hard refresh the page, it fails. If I click back, it will take me to the previous page (listing all the HPAs), but sometimes the top nav is missing. Another time the hamburger menu didn't open when clicked.
Video showing issue with console output from browser is at https://www.dropbox.com/s/kgp2g3m7m0zym6h/hpa-wonk.mp4?dl=0.

Version - master 9/30
this is throwing a bunch of errors in the console:

Reproduced the issue with v2.3.0-rc9
Create a HPA
Click on the HPA and browser hangs

Tested with master-head build from Oct 1
Create a HPA in default/system project
Click on the HPA. After clicking we can view the HPA details with no blurry screen.
There is no browser freeze


Node Driver: RKE2 cluster provisioning: User gets error when attempting to provision a RKE2 cluster for a newly activated node driver

Setup

Rancher version: v2.9-head
Rancher UI Extensions:
Browser type & version: Any

Describe the bug
User gets the below error when attempting to provision a RKE2 cluster with a newly activated node driver.
Error: Cannot find resourceFields for Schema rke-machine-config.cattle.io.linodeconfig (schemaDefinitions have not been fetched)
Note: This issue is resolved after the user waits about ~2-3 minutes and refreshes the page.

To Reproduce

login to Rancher as an admin
go to the Cluster Management page
click 'Drivers' tab in the side nav
click 'Node Drivers' tab
activate any node driver
go back to cluster management page
click create
toggle RKE2/k3s
select the newly activated node driver
notice error in UI

Result
User gets an error when attempting to provision a RKE2 cluster with a newly activated node driver.
Expected Result
User should be prompted to enter cloud credentials/access tokens to provision a RKE2 cluster.
Screenshots
https://github.com/rancher/dashboard/assets/127343932/fb33b3fe-7e58-458d-98ca-beb09827300b

Additional context

this may only need a backend fix (https://github.com/rancher/rancher/issues/44992), but will leave this open for tracking purposes.

Candidate for a 2.9.x backport

Hi @yonasberhe23 are you able to reproduce it on 2.10? I've tried different node drivers and none of them have given an error.

@eva-vashkevich i'm unable to repro this issue. I'll close this out.


Initial implementation for query_map

Here's a coarse implementation of what we discussed yesterday. It needs some refinement still. For example: passing a reference to a Fn isn't very nice ergonomically.
It also needs documentation and so on, but I thought I'd run this by you first.

Thanks! I pushed up a branch with two changes (diff here: https://github.com/jgallagher/rusqlite/compare/d3ab56c...marcusklaas-query-map):

We can avoid the reference to a Fn by storing a boxed Fn instead. I don't have a strong opinion about this. Passing &Fn would avoid the box allocation, so I'd be happy to revert that change.
I think MappedRows can hold onto a SqliteRows instead of duplicating what it does. What do you think?

Cool. The reason I duplicated most of SqliteRows is to avoid having to check for staleness. You are probably right that this too much effort and duplication to avoid one simple runtime check.
I was thinking a bit about it and I believe we can completely replace query by query_map for all cases when we pass an FnMut instead of an Fn. That way we can also handle the case where we only need to inspect data and mutate some state without doing a copy. Implementing FromSql for &str and &[u8] will make this much easier.
Also, I found out that we can simple store the passed function in our iterator, even if we do not its length at compile time. That's what the standard library does for Iterator::map (http://doc.rust-lang.org/src/core/iter.rs.html#1617). I think this is the way to go.

I made the changes I mentioned earlier. Some may be a bit far reaching, so please only what you like, even if that set is empty ;-)
Still not 100% happy with it. The reference to SqliteStatement in MappedRows should be mutable, I think. Also, query_row should probably take an FnOnce again.

Definitely agree on storing the function in the iterator. Good call.
I'm not sure I completely understand the FnMut bit. One thing you can do now with query is mutate a local (stack) variable; I don't think the borrow checker will let us pass a closure that has a reference to a local var into query_map, will it?

You are correct, it won't. I was overzealous in thinking that FnMut would cover all use cases. We will indeed need query to things like conditional field evaluation, i.e.,
if row.get::<i64>(0) == 1 { row.get(1) } else { 0 }

Apologies for making such a mess!

I'll close this pull request and open a new one that tweaks the query-map branch.


The delete all function doesn't work with encryption.

my class for storage
class StorageHelper {
  late FlutterSecureStorage _storage;

  StorageHelper() {
    _storage = FlutterSecureStorage(
      aOptions: _getAndroidOptions(),
      iOptions: _getIOSOptions(),
    );
  }

  AndroidOptions _getAndroidOptions() => const AndroidOptions(
        encryptedSharedPreferences: true,
      );

  IOSOptions _getIOSOptions() => const IOSOptions(
        accessibility: KeychainAccessibility.first_unlock,
      );

  Future<void> setData(String key, String? value) async {
    try {
      await _storage.write(
        key: key,
        value: value,
        aOptions: _getAndroidOptions(),
        iOptions: _getIOSOptions(),
      );
    } catch (_, stackTrace) {
      await Sentry.captureException(
        "Storage - setData",
        stackTrace: stackTrace,
        withScope: (scope) => scope.setExtra(key, value),
      );
      throw (StorageError("Error: Falha ao escrever dados"));
    }
  }

  Future<String?> getData(String key) async {
    try {
      return await _storage.read(
        key: key,
        aOptions: _getAndroidOptions(),
        iOptions: _getIOSOptions(),
      );
    } catch (_, stackTrace) {
      await Sentry.captureException(
        "Storage - getData",
        stackTrace: stackTrace,
        withScope: (scope) => scope.setExtra(key, "error"),
      );
      throw (StorageError("Error: Falha ao escrever dados"));
    }
  }

  Future<void> removeData(String key) async {
    try {
      await _storage.delete(
        key: key,
        aOptions: _getAndroidOptions(),
        iOptions: _getIOSOptions(),
      );
    } catch (_, stackTrace) {
      await Sentry.captureException(
        "Storage - removeData",
        stackTrace: stackTrace,
        withScope: (scope) => scope.setExtra(key, "error"),
      );
      throw (StorageError("Error: Falha ao remover dados"));
    }
  }
...

  Future<void> clearStorage() async {
    try {
      _storage.deleteAll(
        aOptions: _getAndroidOptions(),
        iOptions: _getIOSOptions(),
      );
    } catch (_, stackTrace) {
      await Sentry.captureException(
        "Storage - clearStorage",
        stackTrace: stackTrace,
      );
      throw (StorageError("Error: Falha ao limpar dados"));
    }
  }
}

In the first execution after installing the app, the storage generates a bug that cannot execute deleteAll, nothing appears in the logs, it just keeps loading infinitely, as if it could not execute.
When I exit the app and clear the app's cache, it goes back to working normally with all the features.

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


Return all metadata of posts in query result, 15 October

Acceptance Criteria

All the metadata available for each post in the query result is included.
Posts can have dynamic metadata. (Some post attributes can be null)
The number of search results returned is less than or equal to the search parameter.

Added an exception to account for retweets in the dataset.
Added feature to specify the maximum number of tweets to return based on input parameters passed to the CLI


Surprising behaviour of subclassed structs when used as type in another struct

From @andreaseger on September 14, 2016 12:31
So given this example:
require 'bundler/inline'
gemfile true do
  gem 'dry-types'
end

include Dry::Types.module

class A < Dry::Types::Struct
  attribute :a, Strict::Int
end

class AA < A
  attribute :aa, Strict::Int
end

class AB < A
  attribute :ab, Strict::Int
end

class Foo < Dry::Types::Struct
  attribute :bar, A
end

a = A.new(a: 123)
aa = AA.new(a: 123, aa: 234)
ab = AB.new(a: 123, ab: 345)

foo = Foo.new(bar: a)
p [ foo.bar.class,
    foo.bar.is_a?(A),
    foo.bar.is_a?(AA),
    foo.bar.is_a?(AB) ]
# [A, true, false, false]
# everything as expected

foo = Foo.new(bar: aa)
p [ foo.bar.class,
    foo.bar.is_a?(A),
    foo.bar.is_a?(AA),
    foo.bar.is_a?(AB) ]
# [A, true, false, false]
# hmm the type checking worked with subclasses
# but the attribute got somehow coerced? typecasted? type-assigned to it's parent class

foo = Foo.new(bar: ab)
p [ foo.bar.class,
    foo.bar.is_a?(A),
    foo.bar.is_a?(AA),
    foo.bar.is_a?(AB) ]
# [A, true, false, false]
# same as with AA

First of even though I don't remember reading it explicitly using a Dry::Types::Struct or Value as Type of an attribute in another Struct or Value works (almost) as expected.
The type itself is checked as expected and even stuff like .optional just works.
What surprised me is how subclassed Struct/Values are handled. As can be seen in the above example class A has two subclasses AA and AB. The type checking is done as expected meaning that the subclasses are valid too. But afterwards the attribute is no longer of the same type as the input value. So some form of type-casting/-coersion/-assignment is happening.
Is this a "weird" side-effect from something in the struct code or intended behaviour?
Right now my workaround is to use a sum type with all subtypes instead of the parent type but that only works because right now I have a very limited number of subtypes.
Copied from original issue: dry-rb/dry-types#146

We moved Struct and Value to dry-struct project. Could you verify if this is happening with dry-struct too?

wasn't aware that the dry-struct gem is already at a usable state...
Well I tried it with dry-struct v 0.0.1 and it behaves the same as the struct in dry-types. (the repo master didn't work at all - throws some Gem Load Error during bundling)

This has been fixed in https://github.com/dry-rb/dry-struct/pull/36


Performance differences between go1.13 and 1.14 and later versions

In the same hardware environment, I found similar results to the author's conclusion for go1.13 in my tests, but for 1.14 onwards, ants no longer has a time consumption advantage, only a memory usage advantage. Is it because version 1.14 implements signal-based scheduling?
Attached are the test results, 3 million times, default pool size
1.13
go test -run="TestNoPool" -v
=== RUN   TestNoPool
--- PASS: TestNoPool (2.64s)
ants_test.go:47: memory usage:1530 MB
PASS
ok      testGo/ant      2.759s
go test -run="TestAntsPool" -v
=== RUN   TestAntsPool
--- PASS: TestAntsPool (1.55s)
ants_test.go:71: pool, capacity:2147483647
ants_test.go:72: pool, running workers number:29722
ants_test.go:73: pool, free workers number:2147453925
ants_test.go:78: memory usage:73 MB
PASS
ok      testGo/ant      1.549s
1.14
go test -run="TestNoPool" -v
=== RUN   TestNoPool
TestNoPool: ants_test.go:47: memory usage:289 MB
--- PASS: TestNoPool (0.78s)
PASS
ok      testGo/ant      0.783s
go test -run="TestAntsPool" -v
=== RUN   TestAntsPool
TestAntsPool: ants_test.go:71: pool, capacity:2147483647
TestAntsPool: ants_test.go:72: pool, running workers number:27475
TestAntsPool: ants_test.go:73: pool, free workers number:2147456172
TestAntsPool: ants_test.go:78: memory usage:71 MB
--- PASS: TestAntsPool (1.38s)
PASS
ok      testGo/ant      1.385s

I did the same tests where the  golang environment is 1.18. It is easy to see go fun() directly faster than using ants pool.So I also think goroutine pool can only save memory usage currently, not improvement in time.

Agree with OP.
One more thing, the memory usage advantage is not too much, that we could ignore because it runs 1m times in each b.N loop:
https://github.com/panjf2000/ants/blob/master/ants_benchmark_test.go#L33

duplicate #123


Fix panic with double classes

r? @hediet @joshuabach
Easiest fix: only check the first definition of a class and completely ignore the following class definition inclusive members.

Thanks :)
However, right now I am improving the type system so that the second class can also be checked without the need of merging class or ignoring types.

Yes it should be, since the second class is never checked. I'll add a test for it.

right now I am improving the type system so that the second class can also be checked

Nice! I opened this PR with a quick fix, so we can merge it if you're not able to finish it until the deadline today.

As of me, we can merge the quick fix right now. I can then rebase my changes.

No we cannot, it still panics on you're example. I'll look into this.

@flip1995 It panics here:
                    let current_method = current_class
                        .get_method(member.name)
                        .expect("a class only has a member if it exists");

As a hotfix, just skip the loop if there is no method.

Oh no it doesn't panic. I tested it with the master branch, not with this branch, oops. :smile:
I'll push the test.

I think we can merge this or close it, depending on the ETA of your fix @hediet.

Give me an hour :)

bors r=hediet


How to delete or update a document within a FAISS index?

Hi,
I have a usecase where i have to fetch Edited posts weekly from community and update the docs within FAISS index.
is that possible? or do i have to keep deleting and create new index everytime?
Also i use RecursiveCharacterTextSplitter to split docs.
loader = DirectoryLoader('./recent_data')
  raw_documents = loader.load()
  #Splitting documents into chunks
  text_splitter = RecursiveCharacterTextSplitter(
      chunk_size=1000,
      chunk_overlap=200,
  )
  documents = text_splitter.split_documents(raw_documents)
  print(len(documents))
  # Changing source to point to the original document
  for x in documents:
      print(x.metadata["source"])
  # Creating index and saving it to disk
  print("Creating index")
  db_new = FAISS.from_documents(documents, embeddings )

this is output if i use     print(db_new .docstore._dict)
{'2d9b6fbf-a44d-46b5-bcdf-b45cd9438a4c': Document(page_content='
This is a test topic.
', metadata={'source': 'recent/https://community.tpsonline.com/topic/587/ignore-test-topic'}), '706dcaf8-f9d9-45b9-bdf4-8a8ac7618229': Document(page_content='What is an SDD?\n\n
A software design description (a.k.a. software design document or SDD; just design document; also Software Design Specification) is a representation of a software design that is to be used for recording design information, addressing various design concerns, and communicating that information to the different stakeholders.
\n\n
This SDD template represent design w.r.t various software viewpoints, where each viewpoint will handle specific concerns of Design. This is based on ISO 42010 standard.
\n\nIntroduction\n\n
[Name/brief description of feature for which SDD is being Produced]
\n\n1. Context Viewpoint\n\n
[Describes the relationships, dependencies, and interactions between the system and its environment ]
\n\n1.1 Use Cases\n\n1.1.1  AS IS (Pre Condition)\n\n1.1.2 TO - BE (Post Condition)\n\n1.2 System Context  View\n\n1.2.1 - AS IS (Pre Condition)\n\n1.2.2 TO - BE (Post Condition)\n\n2. Logical Viewpoint', metadata={'source': 'recent/https://community.tpsonline.com/topic/586/software-design-description-sdd-template'}), '4d6d4e6b-01ee-46bb-ae06-84514a51baf2': Document(page_content='1.1 Use Cases\n\n1.1.1  AS IS (Pre Condition)\n\n1.1.2 TO - BE (Post Condition)\n\n1.2 System Context  View\n\n1.2.1 - AS IS (Pre Condition)\n\n1.2.2 TO - BE (Post Condition)\n\n2. Logical Viewpoint\n\n
[The purpose of the Logical viewpoint is to elaborate existing and designed types and their implementations as classes and interfaces with their structural static relationships]
\n\n2.1 Class Diagram\n\n2.1.1 AS - IS (Pre Condition)\n\n2.1.2 TO - BE (Post Condition)\n\n<IP_ADDRESS> Class Interfaces and description\n\n
[Below is being presented as an example]
\n\n[This section should tell about the responsibility of each class method and their parameters too if required]
\n\n<IP_ADDRESS>.1 IRenewProcess\n\nMethod\n\nDescription\n\nprocessRenewal\n\nMethod to process renewal of a given cardEntity. Each concrete class that will implement the interface will implement its own version of renewal steps\n\n<IP_ADDRESS>.1 RenewStrategyContext (static class)\n\nMethod\n\nDescription\n\n(private)getRenewalMethod', metadata={'source': 'recent/https://community.tpsonline.com/topic/586/software-design-description-sdd-template'})}
so will i be able to update docs within index or is it just not possible?

I'm also interested in a way to update docs that are already in a vectorstore

I went and asked Kapa.ai, and here's the answer:
To update an existing FAISS vector store with a new version of your document, you can follow these steps:

Remove the old version of the document from the vector store (if it's stored in the docstore).
Create embeddings for the new version of the document.
Add the new embeddings and the updated document to the vector store.

Here's an example using the add_texts method from the Python documentation(https://python.langchain.com/en/latest/reference/modules/vectorstore.html):
# Assuming you have an existing FAISS vector store `db` and an updated document text
updated_text = "your_updated_document_text_here"

# Remove the old version of the document from the vector store (if necessary)
# You may need to implement this step depending on your specific use case

# Create embeddings for the new version of the document
# This step may vary depending on the embeddings model you're using

# Add the new embeddings and the updated document to the vector store
db.add_texts([updated_text])

Keep in mind that this example assumes you have already set up a FAISS vector store (db) and have an embeddings model. If you need more information on setting up a FAISS vector store, you can refer to the
Python documentation
(https://python.langchain.com/en/latest/reference/modules/vectorstore.html).

I went and asked Kapa.ai, and here's the answer:
To update an existing FAISS vector store with a new version of your document, you can follow these steps:

Remove the old version of the document from the vector store (if it's stored in the docstore).
Create embeddings for the new version of the document.
Add the new embeddings and the updated document to the vector store.

Here's an example using the add_texts method from the Python documentation(https://python.langchain.com/en/latest/reference/modules/vectorstore.html):
# Assuming you have an existing FAISS vector store `db` and an updated document text
updated_text = "your_updated_document_text_here"

# Remove the old version of the document from the vector store (if necessary)
# You may need to implement this step depending on your specific use case

# Create embeddings for the new version of the document
# This step may vary depending on the embeddings model you're using

# Add the new embeddings and the updated document to the vector store
db.add_texts([updated_text])

Keep in mind that this example assumes you have already set up a FAISS vector store (db) and have an embeddings model. If you need more information on setting up a FAISS vector store, you can refer to the
Python documentation
(https://python.langchain.com/en/latest/reference/modules/vectorstore.html).

Hello, the link you provided is a 404 error page. Is there anything else I can refer to?

Remove the old version of the document from the vector store (if it's stored in the docstore).

How do I do this?

How to delete a document?

How to delete a document? Did it work for you?

do i have to maintain all doc ids with me to delete a document ? how can i achieve this to update / delete a doc @trancethehuman

You can also look at FAISS's docs for insert/modify/delete operations. I haven't seen LangChain's abstraction for this yet.
https://github.com/facebookresearch/faiss/wiki/Special-operations-on-indexes
import faiss

# create an index
d = 64
index = faiss.IndexFlatL2(d)

# add some vectors
xb = faiss.rand((100, d))
index.add(xb)

# update a vector
new_vector = faiss.rand((1, d))
index.replace(0, new_vector)

# print the updated vector
print(index.reconstruct(0))

faiss-cpu might be a bit different (maybe)

The langchain logic is not there yet. To make it right, I think this would require quite some effort.
Yet, as trancethehuman said, you can work this out directly with FAISS APIs.

You can also look at FAISS's docs for insert/modify/delete operations.

For example, metadata could be used to filter docs/embedding vectors to remove. See the example below.
def remove(
    vectorstore: FAISS,
    target_metadata: dict
):
    id_to_remove = []
    for _id, doc in vectorstore.docstore._dict.items():
        to_remove = True
        for k, v in target_metadata.items():
            if doc.metadata[k] != v:
                to_remove = False
                break
        if to_remove:
            id_to_remove.append(_id)
    docstore_id_to_index = {
        v: k for k, v in vectorstore.index_to_docstore_id.items()
    }
    n_removed = len(id_to_remove)
    n_total = vectorstore.index.ntotal
    for _id in id_to_remove:
        # remove the document from the docstore
        del vectorstore.docstore._dict[
            _id
        ]
        # remove the embedding from the index
        ind = docstore_id_to_index[_id]
        vectorstore.index.remove_ids(
            np.array([ind], dtype=np.int64)
        )
        # remove the index to docstore id mapping
        del vectorstore.index_to_docstore_id[
            ind
        ]
    # reorder the mapping
    vectorstore.index_to_docstore_id = {
        i: _id
        for i, _id in enumerate(self.index_to_docstore_id.values())
    }
    return n_removed, n_total

You are right my code fails to update docstore ids. It shouldn't be that hard to do btw.
But I think yours won't work since Faiss translates the indices when removing vectors.

@Xmaster6y below steps in the code provided, works fine for me for a list of ids (id_to_remove) and also vectorstore.index.ntotal and len(vectorstore.docstore._dict) gives same value. Is there anything I am missing, especially this step commented on May 24 -"You are right my code fails to update docstore ids. It shouldn't be that hard to do btw.".
Is it possible to add the missing step/ complete the code below. Thank you so much!
for _id in id_to_remove:
# remove the document from the docstore
del vectorstore.docstore._dict[
_id
]
# remove the embedding from the index
ind = docstore_id_to_index[_id]
vectorstore.index.remove_ids(
np.array([ind], dtype=np.int64)
)
# remove the index to docstore id mapping
del vectorstore.index_to_docstore_id[
ind
]
# reorder the mapping
vectorstore.index_to_docstore_id = {
i: _id
for i, _id in enumerate(self.index_to_docstore_id.values())
}

@kaushikusc
Before the for loop, I did id_to_remove.sort(key=lambda x: docstore_id_to_index[x], reverse=True)
so that vectorstore.index.remove_ids(... ind ...) works well.
Because indices in vectorstore.index seem to be consecutive integers starting from 0, you have to remove the biggest index first.
For me, that deletion code seems to work. It removes from docstore, from the embeddings and from mapping.
Then you can (re-)add the documents of ids you just removed. That's an update.

@Pixcoder Beware of Faiss overwriting indices. Removing the biggest indices first seems superfluous since you can remove multiple indices simultaneously. Re-indexing index_to_docstore_id is always necessary.
For the record, here is the current function I am using:
def remove(vectorstore: FAISS, docstore_ids: Optional[List[str]]):
    """
    Function to remove documents from the vectorstore.

    Parameters
    ----------
    vectorstore : FAISS
        The vectorstore to remove documents from.
    docstore_ids : Optional[List[str]]
        The list of docstore ids to remove. If None, all documents are removed.

    Returns
    -------
    n_removed : int
        The number of documents removed.
    n_total : int
        The total number of documents in the vectorstore.

    Raises
    ------
    ValueError
        If there are duplicate ids in the list of ids to remove.
    """
    if docstore_ids is None:
        vectorstore.docstore = {}
        vectorstore.index_to_docstore_id = {}
        n_removed = vectorstore.index.ntotal
        n_total = vectorstore.index.ntotal
        vectorstore.index.reset()
        return n_removed, n_total
    set_ids = set(docstore_ids)
    if len(set_ids) != len(docstore_ids):
        raise ValueError("Duplicate ids in list of ids to remove.")
    index_ids = [
        i_id
        for i_id, d_id in vectorstore.index_to_docstore_id.items()
        if d_id in docstore_ids
    ]
    n_removed = len(index_ids)
    n_total = vectorstore.index.ntotal
    vectorstore.index.remove_ids(np.array(index_ids, dtype=np.int64))
    for i_id, d_id in zip(index_ids, docstore_ids):
        del vectorstore.docstore._dict[
            d_id
        ]  # remove the document from the docstore

        del vectorstore.index_to_docstore_id[
            i_id
        ]  # remove the index to docstore id mapping
    vectorstore.index_to_docstore_id = {
        i: d_id
        for i, d_id in enumerate(vectorstore.index_to_docstore_id.values())
    }
    return n_removed, n_total

@Xmaster6y Thank you.
Not sure, but does "for i_id, d_id in zip(index_ids, docstore_ids):" behave exactly like you intend it to behave when index_ids and docstore_ids are not of same length? Can happen if docstore_ids has ids not in vectorstore...

@Pixcoder This should never happen, as the only purpose of the docstore is to store documents indexed by the vectorstore index. I think you could raise an error if you start manipulating the docstore. I think you should avoid it if possible, but thanks for pointing this out.

@Xmaster6y Thanks for the code.
Should deleting an index also delete the embedding related to that index?
After deleting 3 from 5 indices and running for each id
index.reconstruct(id)
I see that 4 embedding vectors are equal. I expected the total length to be 2 (as results with index.ntotal) and not still 5.

Any ideas how to clean that up?


WebApp - Still showing sent NFT

Describe the bug
Still showing sent NFT
To reproduce the behavior
Steps:

Open the Webapp then go to the NFT Collection screen
Choose any collection then observe the quantity of the NFT in the collection
Open the extension and perform send NFT with the same account, same NFT with Webapp
After transaction successfully, observe the quantity of the NFT on extension
Back to Webapp, observe the quantity of the NFT in Step 2

Actual: On the Webapp, still showing sent NFT

If send this NFT then transaction failed

Solution: Add the Reload button to get NFT again

Version test: https://f9802de6.subwallet-webapp.pages.dev/
Validation passed


Add new create_series_work interface with only callback

Sometimes only want to create series without task and add the tasks afterwards.
It may be safer to add empty_task for the new interface, while it's complex for me to fix the dependency problems.

According to our model, SeriesWork  should contain a first task and an optional last task. Any push_back or push_front does't change the first or last. But based to your changes, the following code will make a wrong result:
    auto *series = create_series_work(nullptr);
    series->push_front(t1);
    series->push_front(t2);

t2 will after t1 because t1 takes the place of first. This will be confusing.
In fact, if you look at the start function of SeriesWork, we can't start a empty series at all:
class SeriesWork
{
    void start()
    {
        assert(!this->in_parallel);
        this->first->dispatch();
    }
    ....
};

To make it simpler we assume that SeriesWork always contains the first task. When the actual task is uncertain, you may create series with a empty task:
    WFEmtpyTask *t = WFTaskFactory::create_emtpy_task();
    SeriesWork *s = Workflow::create_series_work(t, nullptr);

I think this will meet your requirement. In addition, any interface in our framework does't return or accept a nullptr task.

Could the following code added in the framework as a new interface?
    WFEmtpyTask *t = WFTaskFactory::create_emtpy_task();
    SeriesWork *s = Workflow::create_series_work(t, nullptr);

WFEmtpyTask *t = WFTaskFactory::create_emtpy_task();

You may derive from Workflow:
class MyWF : public Workflow
{
public:
    static SeriesWork *create_series_work(series_callback_t callback)
    {
        ...
    }
};


How can we convert string value  into  variable name vice versa?

I did this in JavaScript and Python but how to do this in Dart?

I'm guessing you used eval or equivalent?

While there are some tricks to do things like eval in Dart, I don't believe this is possible or advisable for DartPad.

Ok thanks for the reference RedBrogdon


Add a feature running at Windows startup.

Add a tray menu 'Run at Windows Startup' which is a checkable.
When it is checked, set a registry value so that app would run at Windows startup.

Thanks!


Cannot install latest version (sympy problem)

Informations

Qiskit Terra version: 0.7
Python version: 3.7
Operating system: Mac

What is the current behavior?
I create a new environment and install by pip but,
when I get to the following step i have the error:
Installing collected packages: sympy, qiskit-terra, qiskit
  Found existing installation: sympy 1.2
Cannot uninstall 'sympy'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

Steps to reproduce the problem
N/A
What is the expected behavior?
N/A
Suggested solutions
Would it help to uninstall sympy 1.2 myself?

@kwyip I am not a Qiskit developer, but are you sure that you have source <name of your venv>/bin/activated your virtual environment? I am asking because if you had done so, the environment should have contained no existing installations. I've just installed Qiskit into new venv without any troubles.
Please, check that you have done all the steps:
$ python3 -m venv <your_venv_name>
$ source <your_venv_name>/bin/activate
(<your_venv_name>)$ pip install qiskit

Hope, it will help! If not, probably someone from community could provide a better solution.

I have the same problem, but I'm using python 3.6.2 and Ubuntu 16.04 and the message is the following:
Install collected packages: sympy, qiskit-terra
 Found existing installation: sympy 1.1.1
Cannot uninstall 'sympy'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

I think I ran into this problem once. I had sympy installed via anaconda, so I did this:
> conda uninstall sympy
> pip install qiskit

This will install sympy via pip for you.

I also agree with @Exferro that if you have really created a new environment you should not have any pre-existing packages.

I am running the latest python 3.7.  I running into problem installing qiskit:
C:\Users\dave_>pip install qiskit
Collecting qiskit
Using cached https://files.pythonhosted.org/packages/37/13/62c8421098faf49cbd380911986b1c9eebead08518084faa9a0dbbfc71c1/qiskit-0.8.0.tar.gz
Collecting qiskit_terra==0.7.1 (from qiskit)
Using cached https://files.pythonhosted.org/packages/62/82/ecc340252e644dbf51b97f22b9d1b04541f6171db65aebbc7821a561fff4/qiskit-terra-0.7.1.tar.gz
Collecting qiskit-aer==0.1.1 (from qiskit)
Could not find a version that satisfies the requirement qiskit-aer==0.1.1 (from qiskit) (from versions: 0.1.0)
No matching distribution found for qiskit-aer==0.1.1 (from qiskit)

Thanks for the advice. I revert back to qiskit 0.7, and it worked. For my intent&purpose, qiskit0.7 works fine.  I filed a bug under qiskit #579 and got an answer that explains this.  Since then, it should be fixed.  However, i am still using 0.7 since i am fine with it.
https://github.com/Qiskit/qiskit-tutorials/issues/579


Jetson 6.0DP and "No Device Detected" in Python only

Required Info

Camera Model
{ d455 }

Firmware Version
(2.54.2)

Operating System & Version
Linux

Kernel Version (Linux Only)
(5.15.122-tegra)

Platform
NVIDIA Jetson

SDK Version
{2.54.2 }

Language
{python }

Segment
{n/A}

Issue Description
I'm trying to run the through Python the D455 camera.
Runs fine in Realsense Viewer. I check this related issue, and already rebuilt from scratch using this script:
echo "[INFO] pyrealsense2 bindings build has been started!"
sleep 2
# Give the CUDA path to CMake
sed -i '3iset(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc)\' ../librealsense/CMakeLists.txt
# Set the flags so that librealsense is compatible with python
cmake ../librealsense -DBUILD_PYTHON_BINDINGS:bool=true -DPYTHON_EXECUTABLE=/usr/bin/python3 -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=true -DBUILD_GRAPHICAL_EXAMPLES=true -DBUILD_WITH_CUDA:bool=true -DFORCE_LIBUVC=true

sudo make uninstall && sudo make clean
echo "[INFO] Building is starting, it will take a long time like half an hour or more!"
sleep 2
sudo make -j$(($(nproc)-1)) && sudo make install

echo 'export PYTHONPATH="$PYTHONPATH:/home/nvidia/Repos/librealsense/build/release"
' >> ~/.bashrc

sudo cp ~/Repos/librealsense/config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo cp ~/Repos/librealsense/config/99-realsense-d4xx-mipi-dfu.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

I can load import pyrealsense2 as rs no problem. When I run this basic script:
import pyrealsense2 as rs

pipeline = rs.pipeline()
config = rs.config()

config.enable_stream(rs.stream.depth, 1280, 720, rs.format.z16, 30)
config.enable_stream(rs.stream.color, 1280, 720, rs.format.bgr8, 30)
config.enable_stream(rs.stream.infrared, 1280, 720, rs.format.y8, 30)
# depth_sensor = profile.get_device().first_depth_sensor()

# Start streaming
# profile = config.resolve(pipeline)
profile = pipeline.start(config)

I get this error:
 -- profile = pipeline.start(config)
RuntimeError: No device connected

Hi @lesreaper  Is the camera detected if you alter your code to use the method shown below, please?
import pyrealsense2 as rs

pipeline = rs.pipeline()
config = rs.config()

# Get device product line for setting a supporting resolution
pipeline_wrapper = rs.pipeline_wrapper(pipeline)
pipeline_profile = config.resolve(pipeline_wrapper)
device = pipeline_profile.get_device()

config.enable_stream(rs.stream.depth, 1280, 720, rs.format.z16, 30)
config.enable_stream(rs.stream.color, 1280, 720, rs.format.bgr8, 30)
config.enable_stream(rs.stream.infrared, 1280, 720, rs.format.y8, 30)

# Start streaming
profile = pipeline.start(config)

No, it does not.
Which leads me to believe it's something with the Python wrapper. However, not sure how to change that config to work.
I'd really like to avoid the RSUSB install since this is destined for more than a prototype, but I don't know how to get Python wrappers otherwise on a Jetson.

Using the CMake flag DFORCE_LIBUVC=true should be essentially the same as using RSUSB, since the LIBUVC flag was deprecated in favor of using -DFORCE_RSUSB_BACKEND=TRUE instead, though the deprecated flag is still valid.  Both of these flags build the SDK in a mode that bypasses the Linux kernel and so avoids the need to apply a kernel patch.
The two approaches for installing successfully from source code on a Jetson are typically to either (1) use the LIBUVC / RSUSB flag, or (2) not use the RSUSB / LIBUVC flag but do not apply a kernel patch script.
I note in the title of this issue that you refer to Jetson 6.0DP, which is JetPack 6.0 Developer Preview (DP), the first release of JetPack 6. As the librealsense SDK only supports up to JetPack 5.0.2 in the /patch-realsense-ubuntu-L4T.sh Jetson patch script at the time of writing this, this makes it important to not apply the patch script.
What happens if you remove config from the brackets of the pipeline start line so that the script ignores the stream config lines and applies the camera's default stream profile instead?
profile = pipeline.start()

If I pull the config out, it still give me the No Device Connected error.
No, I didn't apply any patches.
I've tried compiling both with and without the RSUSB / LIBUVC flag. Same challenge.
Ideas?
I really don't want to have to, as I get downgraded Python 3.8 and CUDA 11, but I can downgrade the system to Jetpack 5.1.3 and try again.
I need to put these into production for a residential pilot program, so I need to have stable streams coming in. What's the best way of making that happen with the various installation procedures for Jetson, and having a need for Python?

Have you seen the librealsense / Python source code installation guide for Jetson at https://github.com/IntelRealSense/librealsense/issues/6964#issuecomment-707501049

Yes, I did that exact process, I was just wondering if there was a better way to do it so it was more stable. Looks like I'm going to have to downgrade for now and test.
Thank you!!

Hi. JP6 kernel has no hidraw support, we enable it with our mipi integration.
https://github.com/IntelRealSense/realsense_mipi_platform_driver/tree/dev

Hey @MartyG-RealSense, yes, that is the exact install I used. Didn't work.

Hey @dmipx , those are interesting for sure, but adding $800 to our Cost of Goods for a camera is going to price us out of the market.
I'm going to downgrade and be back to update shortly.

Hi. I'm not asking you to use gmsl camera, I suggested to use jp6.0 kernel we built for and use with USB camera.

Ah, I see @dmipx , thank you for the clarification. I will try that again when I have some extra time hopefully.
For now, I downgraded to 5.1.3, and was able to get it running with a night's worth of work. Hopefully it will continue to operate ok.
Thank you all!!

You are very welcome, @lesreaper - I'm pleased to hear that you achieved a solution with a downgrade.  Thanks very much for the update!

Hello, I am facing a similar issue, building from source completes without error, i am able to import pyrealsense2 into python scripts, however, in python, "No Device Detected" error is thrown in every script ive tried
Realsense binaries are working (rs-sensor-control, multicam, etc)
JP6, Nvidia Orin dev kit, librealsense 2.55.1

Hi. I suggest you run ./scripts/setup_udev_rules.sh to properly configure rules.
Report your output of rs-enum.sh script and rs-enumerate-devices.

Hi. I'm not asking you to use gmsl camera, I suggested to use jp6.0 kernel we built for and use with USB camera.

Hi, I am not quiet sure what I should to do to 'use jp6.0 kernel' as you said according to the github repo https://github.com/IntelRealSense/realsense_mipi_platform_driver/tree/dev, can you shed some light?

@jeezrick  Using the MIPI driver on a USB connection with JetPack 6 provides support for the IMU.


Correctly display suggestion to disable plugins

This fixes a problem when error in the app caused an unhandled exception because of renamed remote/Plugins method.
Closes https://github.com/camunda/camunda-modeler/issues/1479.

@philippfromme bump


Mark connectors as errored.

Description

Adding a CLI to mark a connector as errored. That way we can stop the sync workflow without deleting the connector.
Adding a new connectors.errorType case: third_party_internal_error
Adding support for this error in the UI.

This is to handle the Notion case that errors with the message below:
APIResponseError: The schema for the database with the following ID is malformed: .....

Here is what it looks like:

Risk

Deploy Plan

@fontanierh merging because I want to silence the monitor, but feel free to comment and I will address the error.


Removed legacy platform sidecar annotation method

This should only be shipped once we are not using it.

Taken care of in #41


Password protected zips?

Are password Password protected zips supported?
Did not find any information about this.

@CyrosX Not at the moment (and can't really promise if/when they will be)

@CyrosX Support now added (via https://github.com/uktrade/stream-unzip/pull/16/files)
Note that this just supports the weak/historical password protection of zip files. AES encryption is not supported (yet...)

I'm going to close the ticket: I believe password support is now added.
For AES/other, feel free to open another issue


Add linkat(2) support

Hi,
This pull request mainly adds support for linkat(2). Additionally it introduces AT_* constants from fcntl.h, so they can be used in future for all *at() functions.
specl tests were added for link(2) and linkat(2).
First commit however reorders includes in fcntl, so all platform-specific stuff is properly enabled using feature_test_macros. This is used in introduced Linux-specific AT_* constants and is also neccessary to properly export O_TMPFILE (introduced lately).

Thank you! Merged.


Where is the abmil.py file?

Where is the abmil.py file?

https://github.com/AMLab-Amsterdam/AttentionDeepMIL


[$500] Date of birth - Lower portion of year in the list only appears after some delay

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

Version Number: 1.4.27-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal team
Slack conversation:
Action Performed:
Precondition: User has not set a birth date.

Go to Settings > Profile.
Go to Personal details.
Go to Date of birth.
Click Year.

Expected Result:
The list of years will appear without delay.
Actual Result:
The lower portion of year in the list only appears after some delay.
Workaround:
Unknown
Platforms:

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

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

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/93399543/eb087a7e-807f-4bb7-832d-3562333b7a60
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~013e5606f3817f8af2
Upwork Job ID:<PHONE_NUMBER>930415616
Last Price Increase: 2024-01-25
Automatic offers:

dukenv0307 | Contributor | 0

Awaiting proposal review @sobitneupane 👍

I am working partially this week. I will try to review the proposals before weekend.

Let us know if you need help or could use a re-assignment on this one @sobitneupane!

I can take over this issue as C+ contributor if @sobitneupane is unavailable

I am back and will review the proposal by EOD tomorrow.

Thanks Sobit!

Thanks for the proposal everyone.
Proposal from @ZhenjaHorbach looks good to me. Dynamic maxToRenderPerBatch  was implemented by this PR. @ZhenjaHorbach let's look for other component using SectionList which has similar problem.
🎀 👀 🎀 C+ reviewed

Relax Melvin, Tim will confirm the contributor assignment soon

The list should be designed in a way that the most selected items should be on top to minimize user scrolling and unnecessary rendering. This means we need to display the most recent years first, and then the further in the list is further years. We can just reverse the years list to do this (or order from largest to smallest number). We can also add a prop like shouldOrderYearByMostRecent to control this if we want to.

@dukenv0307 I believe we are already doing this. We are showing the latest year at the bottom and scroll to it. User don't need to scroll much to reach their BOD.

I don't have any context into why it was coded this way originally. Maybe we should look at the blame and see who did it and ask them?
From a UX standpoint, I agree with @dukenv0307 that the most recent years should be at the top, not at the bottom.

@dukenv0307 No, I cannot think of a specific reason, I feel like this was just an oversight when checking the design in the PR. Feel free to flip the order and have the latest year first

We should set it to a more reasonable number like 30 to minimize the time users having to scroll (from the default selected year) to get to their correct age. We can set the default selected year in a prop defaultDate of CalendarPicker to do this

@tgolen @mountiny Do we also want to change the default date?

I know that a 5-year-old default is weird, but I also think that any value that isn't the current year is just random. When I use datepickers, I kind of hate it when I have to take a few moments to figure out if I need to scroll up or down to find the right year. So, I would advocate for making the default as the current year.

I agree with Tim, lets make it a current year!

Daily Update:

A contributor was selected and it is waiting for a PR to be drafted. @dukenv0307 do you think that will be coming soon?

Daily Update

@dukenv0307 Do you have an idea of when you can start on a PR for this?

This was merged and deployed to prod 2/28, payment date would be 3/6

@dukenv0307 - $500 - C
@sobitneupane - $500 - C+

Paid, and Sobit you can make a manual request!

$500 approved for @sobitneupane based on summary.


Replace $BUILD_PREFIX in generated config files

Checklist

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

Here's an attempt at fixing #29
The recipe builds successfully on my laptop, but i haven't yet tested if the change is enough to fix the problem when building other perl modules
I'm not an expert of this, so I hope this won't break anything else...

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

@conda-forge-admin, please rerender

Tested and... it fails...

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you but ran into some issues, please ping conda-forge/core for further assistance.

ping @conda-forge/core
No idea why rerender failed

So with the latest change, instead of replacing the hard-coded paths by other hard-coded paths, I made the perl code look at the env var to guess the correct paths. Not using PREFIX or BUILD_PREFIX as we we don't know if we're building a conda package of just using in normal life.
I tested it by installing locally this perl modified package + perl-extutils-makemaker into a clean conda env, then trying to build perl-statistics-caseresampling package with perl Makefile.PL INSTALLDIRS=site && make. And this time it worked.
I don't know if there might be other cases where it won't work, but I think it's already better

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

I think the appveyor is red only because of network problem

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you but ran into some issues, please ping conda-forge/core for further assistance.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you but ran into some issues, please ping conda-forge/core for further assistance.

ICYMI ping @jakirkham @mingwandroid @msarahan

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

Changes done!
If updating to 5.26.3, does it mean all perl-* packages will need to be rebuilt?

The perl pinning is set to max_pin: x.x.x so maybe better to fix 5.26.2 before updating?

Ok, yep I prefer fixing 5.26.2 first too

Any chance to get this merged soon? It's blocking a few things in my todo list

Super cool, thanks @bgruening!

Ah. There's a little problem with my patch (https://circleci.com/gh/bioconda/bioconda-recipes/51272)... I'm working on a fix


The sun isn't being rendered

Pretty self explanatory.

I've narrowed this down to a change that occurred between March 23rd and 24th

This was caused by revision b937a5c7ccfd929a04806a5dfdd12b4dc99ce25d, Infinite horizontal scrolling in 2D; the sun is still rendered in the revision previous revision 68723424b01ba1fa54e10f10f1eeb896575a3228. Working on a fix

Thanks for finding and narrowing it down.  @bagnell let's fix this for the next release.

Fixed in #3801