New heteroscedastic GP model, which no longer needs Y_metadata

Greetings
As a part of my batchelor thesis I integrated the variational heteroscedastic GP regression model from the paper "Variational Heteroscedastic Gaussian Process Regression" into your framework.
The model itself implements the base Model and works with the same input as a standard GP regression from your framework.
It supports the functions optimize and all needed functions for optimize, and is able to predict mean and variance.
I want to ask if you can provide me support to fully integrate this, already working, model into your framework.
Due to the difference in implementations I was so far unable to use your kernels for the model and thus use a square exponential kernel of the other framework.
Furthermore I might have not fully understood the layout of your framework and therefore possibly made mistakes in the structure of my model.
Felix

Current coverage is 51.32%

Branch #307 has no coverage reports uploaded yet.

No diff could be generated. No reports for master found.

Powered by Codecov. Updated on successful CI builds.

@alansaul, sorry, know you're busy right now but this relates a bit to your
AISTATS stuff. Is that integrated? Does this fit in with it?
@ric70x7 this is somewhat orthogonal to your heteroscedastic material, but
probably worth you also taking a look if you've time!
On Tue, Feb 23, 2016 at 4:12 PM, Codecov<EMAIL_ADDRESS>wrote:

Current coverage
https://codecov.io/github/SheffieldML/GPy?ref=91dceb992613569b65099165da91c75bae405b66
is 51.32%
Branch #307 https://github.com/SheffieldML/GPy/pull/307 has no
coverage reports uploaded yet.
No diff could be generated. No reports for master found.
Powered by Codecov https://codecov.io. Updated on successful CI builds.
—
Reply to this email directly or view it on GitHub
https://github.com/SheffieldML/GPy/pull/307#issuecomment-187768032.

Certainly very relevant yes @lawrennd, it is one of the papers that our AISTATS paper builds off. It is the less-scalable version (O(n^3)), that isn't considering non-Gaussian likelihoods. It has a much less difficult optimization task though (great for smaller data) as it collapses out q(f), and has a nice trick which allows you to dramatically reduce the number of variational parameters by exploiting a common diagonal matrix in the posterior covariance, sadly we can't exploit this ourselves. My code isn't yet integrated, it's about to be released in another repository as soon as I get round to uploading the Arxiv paper (very soon).
Thanks for your pull request @Imdrail, we really appreciate your efforts! From a first quick look:
I don't think there is any fundamental issue that would not allow us to use the existing kernels in GPy, but some changes will need to be made essentially:
The functions CovarianceMatrix and TestSetCovariances should be the same as our kernels K function, we just take two sets of X's (X,X), or (X,X*) or (X*,X*) for example, and compute the covariance, the hyperparameters are held within the kernel object itself (so it can already see them and they don't need to be passed), and when you call:
self.link_parameter(self.kernel)
self.link_parameter(self.varKernel)
the model will be able to access these hyper parameters from its children kernels if that makes sense? using the notation, self.kernel.lengthscale and self.varKernel.lengthscale, and self.param_array will already contain their values. This bit should be simple.
Kernels derivatives are a little bit more complicated so this is probably where you were tripped up by our framework.
Our kernels have a function, called in the following way, self.kern.update_gradients_full(dL_dK, self.X), in parameters_changed. Given you have determined the matrix dL_dK (where L is the marginal likelihood, in your case F), we will apply the chain rule for each parameter:
dL_dtheta_i = dL_dK x dK_dtheta_i
for all of the covariance functions hyper-parameters, theta. This can be a bit of a pain to get your head around at first (especially determining what dL_dK is), let us know if this isn't clear.
Unless I'm mistaken, the functions optimize_without_kernels, optimize_with_kernels, objective_function_gradients_without_kernels, objective_function_gradients_with_kernels, _objective_grads_without_kernels, _objective_grads_with_kernels, _grads_without_kernels, and _grads_with_kernels shouldn't be necessary. I believe these are a substitute for fixing certain parameters whilst optimizing others, something that we can do very naturally within GPy.
Parameters can be fixed using m.name_of_parameter.fix(), when this is done, the optimizer will not try and move these parameters during optimization.
For example if we had something like:
m = GPHeteroscedasticRegression(X,Y)
m.theta1.fix()
m.theta2.fix()
m.optimize()
and
m = GPHeteroscedasticRegression(X,Y)
m.Lambda0.fix()
m.mean.fix()
m.optimize()
The first will fix the kernels hyperparameters and only optimize the variational parameters. The second will fix the variational parameters and only optimize the hyper parameters. If I am understanding the code correctly, this is what the above functions are doing also but more verbosely. You can unfix as easily with m.mean.unfix() etc, or assign new constraints for example m.mean.constrain_bounded(2,3)
When integrated with the GPy kernel functions, you it would be more natural as you could do:
m = GPHeteroscedasticRegression(X,Y)
m.kernel.fix()
m.varKernel.fix()
m.optimize()
or
m.kernel.lengthscale.fix()  # to only fix the lengthscale but leave the variance. It would also open up all of the kernels available in GPy for your use.
Finally it would be ideal if you could provide some tests to ensure that everything is working correctly. We try and maintain a reasonable coverage which is beginning to slip so we want to try and keep it up.
Thanks,
Alan

Hi Alan,
I will fix the points which have nothing to do with the kernels first within the next days and then fix the kernels and I will ask if i get to a point where I have problems in understanding.
Thank you very much for the answer and especially the trick with param.fix() is helping me extremely as for cleaning up code
Thanks
Felix

Hi Imdrail that looks very promising, though the checks fail. Additionally, you want to merge into master, which is not preferred for this project. Could you pull from devel (checkout the devel branch) and create a new pull request for devel?

@alansaul
While trying to implement your kernels I noticed, that the kernel i am using is having a fundamentally different parameter calculation.
Basically the results from both kernels are the same, if the lengthscale is given to e^x and the variance to e^2x.
The derivate of the parameters is also not divided through the corresponding lengthscale or variance.
I upload a file here containing my kernel and where the difference between the kernels is shown.
Only an installation of GPy is needed to run it.
For a quick workaround in the framework I tried changing the parameters of the kernels back and forth every time they are used, but unfortunately this results in a call to parameters_changed() which results in an infinite recursion
testKernels.zip
@mzwiessele
Do I unerstand it correctly, that I should delete the actual pull request and form a new one or is there a way to change the actual pull request to the settings you require
Greetings
Felix

I think you will benefit from creating anew pull request, started from devel, as you will otherwise have to merge into devel.
The easiest way is to copy your files locally, then checkout devel and put your files in again. Then you delete the old pull request and create a new one from there.

On 07 Mar 2016, at 17:00, Imdrail<EMAIL_ADDRESS>wrote:
@alansaul
While trying to implement your kernels I noticed, that the kernel i am using is having a fundamentally different parameter calculation.
Basically the results from both kernels are the same, if the lengthscale is given to e^x and the variance to e^2x.
The derivate of the parameters is also not divided through the corresponding lengthscale or variance.
I upload a file here containing my kernel and where the difference between the kernels is shown.
Only an installation of GPy is needed to run it.
For a quick workaround in the framework I tried changing the parameters of the kernels back and forth every time they are used, but unfortunately this results in a call to parameters_changed() which results in an infinite recursion
testKernels.zip
@mzwiessele
Do I unerstand it correctly, that I should delete the actual pull request and form a new one or is there a way to change the actual pull request to the settings you require
Greetings
Felix
—
Reply to this email directly or view it on GitHub.

bump

i wanted to wait until @alansaul is answering before I close this thread since i really need these answers ._.
@mzwiessele  Should I either wait or open the new repository and leave this one or open the new one and repost my post.
Greetings
Felix

Oops sry, alan can you reopen?

On 01 Apr 2016, at 17:48, Imdrail<EMAIL_ADDRESS>wrote:
i wanted to wait until @alansaul is answering before I close this thread since i really need these answers ._.
@mzwiessele Should I either wait or open the new repository and leave this one or open the new one and repost my post.
Greetings
Felix
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub

Hi sorry @Imdrail I completely missed this.
In your code, in order to maintain the fact that the lengthscales and variances must be positive, you rightly have to exponentiate the values of theta1 (as the optimiser could give you negative values of theta, and lengthscales must be positive). In this case your lengthscale 'parameter' is whatever the exponential of theta is.
In GPy we essentially do this for you automatically for parameters that we expect to be positive. The kernels parameters (as defined here: https://github.com/SheffieldML/GPy/blob/devel/GPy/kern/src/stationary.py#L73) are lengthscales and variance can be anything. We ensure positivity by applying an log1p(exp(lengthscale)) function just before passing it to the optimizer (note the LogExp argument in the linked code above). Whatever result the optimiser gives, we then untransform it, log(exp(optimizer_value) - 1). This comes from the parameters "constrain_positive" constraint. You could do this to see:
print(gpyKernel) # notice it has constraints for lengthscale and variance as +ve, meaning constrain it positive by transforming it with a exp once it comes out of the optimizer
gpyKernel.unconstrain() #Removes all constraints, so we now no longer touch it before giving it to the optimizer, and don't exp it when it comes out either
print(gpyKernel)
gpyKernel.lengthscale.constrain_positive()
gpyKernel.variance.constrain_positive()
print(gpyKernel) # back to being constrained again
# You can also use things like gpyKernel.lengthscale constrain_fixed(1.5) if you don't want to optimize the lengthscale, but just optimize the variance.

Essentially, I believe our implementations are the same, however ours is parameterised in terms of the lengthscale and variance, and yours is parameterised (theta1) in terms of the log of the lengthscale. As for variance, we use the same trick, you however do exp(2*variance), I'm not sure why you do this multiplication by 2.
This would explain why K is equal when you use gpyKernel.lengthscale = np.exp(theta1[:D]), gpyKernel.variance = np.exp(theta1[D]).
For you, theta1[:D] is the log of the lengthscale, for us, we expect to be given the lengthscale in its untransformed state, i.e. exp(theta1[:D]) for you. Again I'm not sure why you parameterise the variance as np.exp(2theta1[D]), that appears to me like that you are parameterising the model by 0.5(real_signal_variance) but I could be wrong.
I can't quite decrypt what you are doing under # derivate Functions but essentially it should be the same, gpyKernel.gradient should give back the gradients, in the space of the untransformed parameters. I'm not 100% about the missing /lengthscale and missing /variance, I would need to run through the maths a bit more thoroughly, our code for gradients of the kernel is quite well tested though (numerically), so I'm inclined to think the mismatch is todo with the parameterisation mentioned above.
The reason for the negative however, is likely because in your model you are setting the objective function, self.obj_function, which is the negative of the log_likelihood. For gaussian process models, we typically inherit from GP, rather than Model, and for these models, self.objective_function is the negative of the log_likelihood of the model (https://github.com/SheffieldML/GPy/blob/devel/GPy/core/model.py#L29), as we wish to minimise this quantity, in order to maximise the log_likelihood, third party optimisers typically minimise rather than maximise.
Ideally you would also inherit from GP, as it is a GP model. All you would need to do is self._log_marginal_likelihood = F instead of self.obj_function = -F and similarly for the gradients (https://github.com/SheffieldML/GPy/blob/devel/GPy/core/model.py#L48), this isn't a huge issue if you prefer to continue inheriting from Model, it would just be more natural to inherit from GP (since it is one). When inheriting from a GP, the gradients of the parameters that need to be set, (gpyKernel.lengthscale.gradient) expect to be the derivative of the log_likelihood wrt to the parameter, rather than the derivative of the objective_function wrt to the parameter when inheriting from the Model if that makes sense.
Does that clarify a few things? If the gradients still make no sense after noting that we have a different parameterisation of the lengthscale and variance, let me know and I will try and take a more thorough look at the part under # derivate Functions, but I suspect that it will become more clear with the above information.

Any news?

Sry the deadline for my paper is next week after that i will look into the code and hopefully fix this but at this moment I have an awful lot to do

Closing due to inactivity.


Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
Rate-Limited
These updates are currently rate-limited. Click on a checkbox below to force their creation now.

[ ] chore(deps): update dependency flask to 2.2.3
[ ] chore(deps): update dependency markupsafe to 2.1.2
[ ] 🔐 Create all rate-limited PRs at once 🔐

Open
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

[ ] chore(deps): update dependency werkzeug to 2.2.3 [security]
[ ] chore(deps): update dependency zipp to 3.15.0
[ ] chore(deps): update dependency importlib-metadata to 6.1.0
[ ] Click on this checkbox to rebase all open PRs at once

Ignored or Blocked
These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

[ ] chore(deps): update dependency click to 8.1.3
[ ] chore(deps): update dependency importlib-metadata to 4.13.0
[ ] chore(deps): update dependency itsdangerous to 2.1.2
[ ] chore(deps): update dependency jinja2 to 3.1.2

Detected dependencies
docker-compose

docker-compose.yml

github-actions

.github/workflows/flowzone.yml

pip_requirements

requirements.txt

click ==8.0.4
Flask ==2.0.3
importlib-metadata ==4.8.3
itsdangerous ==2.0.1
Jinja2 ==3.0.3
MarkupSafe ==2.0.1
Werkzeug ==2.0.3
zipp ==3.6.0

Closing this as these updated dependencies are not available for all platforms. Especially Python on ARM

Closing stale automated issue. Reopen if this was done in error.


Intermittently deployment from Azure DevOps to ILB ASE fails with "UNABLE_TO_GET_ISSUER_CERT_LOCALLY"

Troubleshooting
Issue similar to https://github.com/Microsoft/azure-pipelines-tasks/issues/6682 with following differences, but issue still appears.

Used certificate is not a self sign certificate
VSTS_ARM_REST_IGNORE_SSL_ERRORS= True
The behavior is strange wherein After 2-3 attempts via azure devops, we are able to deploys the content successfully and does not happen all the times.

Environment
Azure DevOps, deploying to an ILB ASE
Issue Description
Intermittently deployment from Azure DevOps to ILB ASE fails.
Task logs
[Enable debug logging and please provide the zip file containing all the logs for a speedy resolution]
Error logs
[I can share the complete log if needed over an internal channel, please let me know.]
2019-02-11T15:33:09.3231045Z ##[debug]set AZURE_APP_SERVICE_KUDU_production_PASSWORD=********
2019-02-11T15:33:09.3242719Z ##[debug]Processed: ##vso[task.setvariable variable=AZURE_APP_SERVICE_KUDU_production_PASSWORD;issecret=true;]***
2019-02-11T15:33:09.3243404Z ##[debug]retrieving values from Kudu service to check if new values are updated
2019-02-11T15:33:09.3253407Z ##[debug][GET]https://$<>:***@<>/api/settings
2019-02-11T15:33:09.3455719Z ##[debug]Processed: ##vso[task.logissue type=error;code=UNABLE_TO_GET_ISSUER_CERT_LOCALLY;]
2019-02-11T15:33:09.3457408Z ##[warning]To use a certificate in App Service, the certificate must be signed by a trusted certificate authority. If your web app gives you certificate validation errors, you're probably using a self-signed certificate and to resolve them you need to set a variable named VSTS_ARM_REST_IGNORE_SSL_ERRORS to the value true in the build or release pipeline
2019-02-11T15:33:09.3458549Z ##[debug]Processed: ##vso[task.issue type=warning;]To use a certificate in App Service, the certificate must be signed by a trusted certificate authority. If your web app gives you certificate validation errors, you're probably using a self-signed certificate and to resolve them you need to set a variable named VSTS_ARM_REST_IGNORE_SSL_ERRORS to the value true in the build or release pipeline
2019-02-11T15:33:09.3459346Z ##[debug]Deployment Failed with Error: Error: Failed to fetch Kudu App Settings. Error: Error: unable to get local issuer certificate
2019-02-11T15:33:09.3459711Z ##[debug]task result: Failed
2019-02-11T15:33:09.3460174Z ##[error]Error: Failed to fetch Kudu App Settings. Error: Error: unable to get local issuer certificate
2019-02-11T15:33:09.3460680Z ##[debug]Processed: ##vso[task.issue type=error;]Error: Failed to fetch Kudu App Settings. Error: Error: unable to get local issuer certificate
2019-02-11T15:33:09.3461544Z ##[debug]Processed: ##vso[task.complete result=Failed;]Error: Failed to fetch Kudu App Settings. Error: Error: unable to get local issuer certificate

@kmkumaran & @arjgupta, please let me know if you want complete deployment log.

@anilpras , Sorry for late response. Are you still facing the issue? If so, can you please share the logs to<EMAIL_ADDRESS>over email?

@niadak : shared the log..

@anilpras
Can you tryout below mentioned workaround for this issue.
https://stackoverflow.com/questions/50981525/vsts-tasks-failed-with-unable-to-get-local-issuer-certificate

@anilpras , We have transfered the issue to App Service team. Please create the ASE with new template recommended by ASE team

@anilpras , We have transfered the issue to App Service team. Please create the ASE with new template recommended by ASE team

Could this process be shown here?

@anilpras , We have transfered the issue to App Service team. Please create the ASE with new template recommended by ASE team

Could this solution/template be shared as we are seeing the same issue?


Move a few functions from option.c to other relevant files.

Move a few functions from option.c to other relevant files.
Move quickfix related functions from evalfunc.c to quickfix.c

Codecov Report

Merging #4889 into master will increase coverage by 0.01%.
The diff coverage is 81.23%.

@@            Coverage Diff             @@
##           master    #4889      +/-   ##
==========================================
+ Coverage   81.63%   81.64%   +0.01%
==========================================
  Files         122      122
  Lines      146124   146267     +143
==========================================
+ Hits       119283   119424     +141
- Misses      26841    26843       +2

Impacted Files
Coverage Δ

src/option.c
87.42% <ø> (+0.75%)
:arrow_up:

src/evalfunc.c
89.56% <ø> (-0.11%)
:arrow_down:

src/map.c
76.26% <39.28%> (-3.09%)
:arrow_down:

src/indent.c
89.9% <87.41%> (-0.2%)
:arrow_down:

src/window.c
87.85% <90%> (+0.02%)
:arrow_up:

src/spell.c
80.74% <90.9%> (+0.09%)
:arrow_up:

src/screen.c
82.82% <94.44%> (+0.18%)
:arrow_up:

src/quickfix.c
93.6% <98.24%> (+0.08%)
:arrow_up:

src/profiler.c
94.11% <0%> (-0.57%)
:arrow_down:

src/netbeans.c
27.23% <0%> (-0.23%)
:arrow_down:

... and 9 more

Continue to review full report at Codecov.

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


Define fedora.home environment variable

Resolves https://github.com/Islandora-CLAW/CLAW/issues/757
For some reason with all the https://github.com/Islandora-CLAW/CLAW/issues/640 PRs merged Fedora started to have permissions trouble. The simplest answer seems to be to define where fedora should store its data (and the problematic velocity.log file).
While this is one not a required parameter for Fedora to run, it otherwise uses the current working directory which I think is /var/lib/tomcat8. So I am guessing there are some issues using that.
For more fedora information see the Application Configuration documentation.

@dannylamb yeah this can go in now. claw-playbook will still be broken until we get the Alpaca release done, but Fedora will come up.


Init migrations

Reset remote migrations on nhost init to keep local and remote migrations in sync.
https://hasura.io/blog/resetting-hasura-migrations/
Without truncating the remote migrations there will be one migration that's exist remote but not local. That's the 1_init migration we first add to all Nhost projects.
This is the output of hasura migrate status when removing previous migrations with nhost init:
VERSION        NAME  SOURCE STATUS  DATABASE STATUS
1606120429458  init  Present        Present

Migrations in sync 👍

@elitan is this one ready to go?

@elitan is this one ready to go?


adds support for elasticsearch history storage

Description of PR
Adds support for storage of history data in Elasticsearch according to the documentation at https://www.zabbix.com/documentation/4.0/manual/appendix/install/elastic_search_setup
Type of change
Feature Pull Request

Thanks! 👍


Text-oriented UI updates - "v1"

As we chatted about, for v1 we will need to pair down our scope, and leave out some of the more-advanced UI controls for now.
With that in mind, I made some design polishing edits in https://github.com/kabisa/recursive-extension/pull/23, and then also did some directional sketches.
Because we have (at least) three chunks of CSS to place with each font override, I think we would be best off using a tabbed approach within the overrides:

Note: if we don't need the "apply changes" button, then we shouldn't change the top row to buttons – we can just leave it as it currently is.

I do think that it would be more convenient to have a global selector blacklist, partly so a user can easily ignore weird hashes, etc, and doesn't risk accidentally deleting their work. However, if you think it's really better (or only feasible) to keep selectors to ignore with each font, here's how that might look:

Closing this as it's out-of-date, and resolved where applicable.


Chart.js packages documentation along with actual source code, bloating node_modules

Feature Proposal
These documentation files should be outside dist and not included in the "files" property of package.json.
As of now, node_modules/chart.js/dist/docs weights 20M.
There is potentially hundreds of GBs of data trafficking needlessly taking space and making CI/CDs slower around the world. Please fix that.

Possible Implementation
No response

Duplicate of: https://github.com/chartjs/Chart.js/issues/10835
Tested again and this does not happen anymore


Error in Line 31 of allureReport export

When running the command as npx cypress-msteams-reporter, it throws error at line 31 of allure-reporter js file. It means ,the plugin fail to read application and version details from environment.properties which is already placed insure allure report folder.

Hello @narayananpalani! You should create the environment.properties file on the allure-results folder. Then when you generate your allure report everything needed by the plugin will be automatically on your allure-report folder.
Let me know if this clarification helps solving your problem. If not, then please send me the logs. I need to see the error that the plugin throws, to be able to investigate the issue.

Option of adding environment.properties has been tried already but no luck on getting the reports towards ms-teams.will try again to capture the logs and share it here in few days time.

Hello @narayananpalani! The reported issue is related to the Node.js version. Please, check your node version and upgrade it to v14.


List of processors

[x] processes - List process name/ID, parent ID, start/end time, duration, session, user information
[x] tasks - List Scheduled Tasks events
[x] gpos - List GPO processing information
[x] winlogon  - List provider, task, process ID, CPU#, thread of winlogon events
[x] pnp - List PnP information
[x] services - List service information
[x] hardfaults - List process, path, avg IO time, size of hard faults
[x] diskio - List Disk, Path, Type, latency of disk/Total Disk Stack/Only Que and filter driver, IO size and bandwidth
[x] fileio - List FileIO, Path, duration in milliseconds, errorcodes and process information for each FileIO event
[x] providerinfo - List the providers captured in the .etl trace, not including the kernel provider, 9e814aad-3204-11d2-9a82-006008a86939
[x] minifilter - List of each minifilter event and duration in microseconds. Filter with the --ms: switch to remove events <= to the millisecond
[x] minifiltersummary - List of minifilter drivers and total duration of each in milliseconds
[x] cpusample - All CPU sample information
[x] cpusamplenoidle - CPU sample information besides the Idle process, just actual work
[x] bootphases - List of boot phases from boot trace based on process start/end times
[ ] processzombies - TBD
[ ] diskiosummary - List aggregates (Min, Max, Avg) for total disk IO values (IO Size, Duration, Bandwidth)
[ ] memorysummary - TBD

Are you aware of ETWAnalyzer? It does something similar
https://github.com/Siemens-Healthineers/ETWAnalyzer
like most of your queries but it extracts data into Json files which can then easily be queried.


SpanDB

Just information, that there's SpanDB claiming to be faster than RocksDB, might be can be inspiration for TiKV improvement
presentation: https://www.youtube.com/watch?v=a_eDVmh6CSc
code: https://github.com/SpanDB/SpanDB
Question

The idea of SpanDB is not new and "be faster than RocksDB" is not very difficult. Async I/O and high I/O depth are indispensable for max use of modern disk, e.g., NVMe SSD. These ideas are widely used in industry. The most famous one is https://github.com/scylladb/seastar which uses the idea since 2014 and it has lots of amazing functions.


refactor maybe_known.rs: MaybeKnown enum

fixes #839

Codecov Report

Merging #842 (0ce92e3) into main (e7a62de) will decrease coverage by 40.31%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main    #842       +/-   ##
==========================================
- Coverage   49.00%   8.69%   -40.31%
==========================================
  Files         414     408        -6
  Lines       33694   32854      -840
  Branches     7462    7190      -272
==========================================
- Hits        16513    2858    -13655
- Misses      12064   29189    +17125
+ Partials     5117     807     -4310

Flag
Coverage Δ

unittests-aries-vcx
8.69% <0.00%> (-40.28%)
:arrow_down:

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

Impacted Files
Coverage Δ

aries_vcx/src/handlers/out_of_band/sender.rs
0.00% <ø> (-56.34%)
:arrow_down:

...s_vcx/src/protocols/revocation_notification/mod.rs
0.00% <ø> (ø)

.../revocation_notification/receiver/state_machine.rs
0.00% <ø> (ø)

...ls/revocation_notification/sender/state_machine.rs
0.00% <ø> (-32.06%)
:arrow_down:

messages/src/decorators/thread.rs
50.00% <ø> (ø)

...msg_fields/protocols/discover_features/disclose.rs
0.00% <ø> (-75.00%)
:arrow_down:

.../src/msg_fields/protocols/discover_features/mod.rs
0.00% <ø> (-77.28%)
:arrow_down:

...rc/msg_fields/protocols/discover_features/query.rs
0.00% <ø> (-71.43%)
:arrow_down:

...src/msg_fields/protocols/out_of_band/invitation.rs
0.00% <ø> (-52.18%)
:arrow_down:

...ages/src/msg_fields/protocols/revocation/revoke.rs
0.00% <ø> (-42.86%)
:arrow_down:

... and 2 more

... and 295 files with indirect coverage changes

@nachiketkanore Did you merge main by any chance? If that's the case, we'd prefer if you rebased instead.

Yes, I merged

Yes, I merged

Would you be so kind to rebase instead?

Yes, I merged

Would you be so kind to rebase instead?

Sorry for not following the guidelines. I am new to this, will check and update accordingly!


[NuGet.org Bug]:

Impact
I'm unable to use NuGet.org
Describe the bug
Not able to connect to the project website https://webgrease.codeplex.com/. It is showing the site is unreachable. Our Governance Team need to explore the project site before consuming it NuGet .
Repro Steps
1.Go to URL  https://webgrease.codeplex.com/
2.Check for its availability
Expected Behavior
Site should be reachable
Screenshots

Additional Context and logs
No response

Hello @hardik-2. This GitHub repository is for the NuGet.org project itself. Our team does not support individual packages. Consider using the "Contact owners" link available on the package details page on NuGet.org. This will allow you to send a message to the package owners.


Error when accessing remotely.

I finally got it running on my VPS.
From my node cli I type in: (obviously not my ip)
wallet -h http://123.456.78.9:3001 -f bar.dat create myWallet 2-2 Foobar -t

I get the following errors on client side:
info Generating new keys
ERR! [object Object]
{ code: 'ERROR', error: 'Cannot POST /v1/wallets/\n' }

On the server side I get this little descriptive one-liner.
POST /v1/wallets/ 404 19.154 ms - 25

Any advice would be appreciated, thanks.

Solved on my own: need to add "/copay/api"
wallet -h http://123.456.78.9:3001/copay/api -f bar.dat create myWallet 2-2 Foobar -t


[DOC]: The problem abount CUDA version

📚 The doc issue
The document says that CUDA>=11.0, but torch>=11.1
My cuda is 11.1, torch>=11.1 mismatch cuda11.1

Would you like to try installing torch from source?


added onSendProgress and onReceiveProgress

added a function that gets called once every event to keep track of the sent bytes

@LeoRc01 thanks for your work but i'm added all in some in another way. You can find it in https://github.com/crifurch/pure_ftp/commit/956450518e9e113d14ac05a30e91db980e4f31b1


RoundedBoxView : Xamarin update + windows phone 8.1 + windows UWP

Update to Xamarin <IP_ADDRESS> & remove iOS classic (obsolete)
Set profile 259 (adding windows phone 8.1 platform) (fix #118)
Add RoundedBoxView support for Windows Phone 8.1
Add RoundedBoxView support for Windows Universal

Is the newest version also avilable in NuGet?

No, this pull request must be accepted first by the git owners

will this update fix the issue .. ?
Could not install package 'Xam.Plugins.Forms.RoundedBoxView <IP_ADDRESS>'. You are trying to install this package into a project that targets 'WindowsPhoneApp,Version=v8.1', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.

You make me realized that I haven't change the nuspec to add windows phone, I Will do it soon

Thank you verymuch Drakkins ! I'm waiting for it ...   But I think your commit hasn't added to main package yet...
So How can I install it to my application ?

You can add the RoundBoxView projects (Portable + all plaftorm target you need) to your solution.
Then add references to it from your project.
And yes my commits are not added to the main package yet.


Support for Document Databases in General

I saw that there was a ticket for including support for DocumentDB. I hacked around today building a MongoDB provider. I haven't tackled queries yet, just the save changes stuff which all works great when the entity is flat - no nested documents or nested arrays in json speak.
So, it doesn't seem like there is any support for tracking changes in nested documents/nested arrays when they don't have a key. For a document database, these aren't relationships in the foreign key sense, but more of a parent-child in structure. I began attempting to use a Sidecar for this (like the RelationshipsSnapshot) and overriding the ChangeDetector to use it but found that I still need to be able to get a StateEntry in order to determine whether changes have been made to a nested entity. However, StateManager can only do that when a key has been defined. Ho, hum...  It seems like 1 or 2 concepts are missing in the existing Metadata related to handling embedded classes/dictionarys and arrays/lists that don't exist in a separate table (or collection).  This is obviously only useful for those providers able to handle this type of thing, but the same could be said about ForeignKeys only being relevant for providers able to handle relationships.
Let me know your thoughts. I'm excited about EF7 opening up to allow this type of integration and hope I'll be able to get something working.
Thanks, Craig Wilson

Moving straight to our backlog as we are not going to make much progress in this area for EF7 RTM, but it still of high importance after that. Also following up with Craig on email.

Duplicate of #8443 ?


Integrate transifex for translation

We have setup the project with file based transifex support.
For the time-being, we are using a private transifex account to test this feature.
We will need to create a transifex project inside mapswipe account and link this repository.


No labels shown

Hello,
the way I understand it, this range view should show labels (even by default). What am I missing that something like this isn't showing labels?
 <me.bendik.simplerangeview.SimpleRangeView
                        android:layout_width="match_parent"
                        android:layout_height="...dp" or "wrap_content"
                        app:count="4"
                        app:end="3"
                        app:labelFontSize="18sp"
                        app:showLabels="true"
                        app:labelColor="@color/salmon"
<EMAIL_ADDRESS>                        app:movable="true"
                        app:start="0" />

I assumed even the default values would show something. I added showLabels=true and also set the height to wrapContent as well as specific height in dp.
Is there anything missing?
Thanks!

Ah, sorry, I finally found the answer. I have to do it programatically. I assumed it would show by default the integer values of the steps. Sorry for the disturbance. And thanks for the framework! :)


Pocket Jukebox does not function in creative mode, only survival

Expected Behavior:
Putting a disc in the pocket jukebox will play it, regardless of what gamemode you are in
Actual Behavior:
The pocket jukebox is silent on creative mode, but plays the disc in survival.
Game version:
Latest 1.19.2, Fabric

https://github.com/emilyploszaj/pocket-tools/assets/30442287/afba052a-3de4-44d4-93a2-e618a0a1e556
this also affects the pocket end portal, and pocket ender chest. Both items do nothing in creative mode, and only function in survival.


allow feeds to be passed to createArchive directly

Hypercore feeds can be passed to createArchive as metadata and content options.
The test is pretty basic. Let me know if there is other things that would be good to test here.

7.11.0


Add subsetting experiments document

Here are the results of my attempt to build a minimum viable illustration of a subsetter, on top of my oxidize work.
TL;DR: I'm happy with these results, and when @rsheeter is back later this month I suggest we get everyone together and try to figure out where we want this work to go, and what our priorities are.
In addition to this, I'm going to write up a separate short document focused specifically on summarizing my thoughts on packing & repacking, will share that later this week.

The design I've chosen here makes clear trade-offs; in particular it is trading
off some speed in favour of improved ergonomics and robustness (it relies on
much less hand-written code).
If this trade-off ends up being unacceptable, it will always be possible to
write a more bespoke implementation, which would operate directly on the parse
types, and write out bytes directly, very similar to how hb-subset works. This
would be more work and more error-prone, but it is a viable escape hatch

Awesome results. I think you proved the separation of high-performance parse types and compilation types was a design choice that paid off.
You mentioned oxidize is roughly 50% slower than hb-subset and that you have made clear trade-offs.
I'm interested in your speculation. Would you speculate the performance lost could be reclaimable without having to reduce ergonomics? Could it be better? This is probably asking for too much speculation, but it may be worth justifying ahead of the sit-down with your team if these trade-offs will need to compromise oxidize's goals. A factor, for sure.
How likely is it that equal or better performance could be achieved without having to compromise goals (e.g. safety), or operate directly on parse types (side effects)?

The design I've chosen here makes clear trade-offs; in particular it is trading
off some speed in favour of improved ergonomics and robustness (it relies on
much less hand-written code).
If this trade-off ends up being unacceptable, it will always be possible to
write a more bespoke implementation, which would operate directly on the parse
types, and write out bytes directly, very similar to how hb-subset works. This
would be more work and more error-prone, but it is a viable escape hatch

Awesome results. I think you proved the separation of high-performance parse types and compilation types was a design choice that paid off.
You mentioned oxidize is roughly 50% slower than hb-subset and that you have made clear trade-offs.
I'm interested in your speculation. Would you speculate the performance lost could be reclaimable without having to reduce ergonomics? Could it be better? This is probably asking for too much speculation, but it may be worth justifying ahead of the sit-down with your team if these trade-offs will need to compromise oxidize's goals. A factor, for sure.
How likely is it that equal or better performance could be achieved without having to compromise goals (e.g. safety), or operate directly on parse types (side effects)?

I think that any implementation that involves converting from the parse to the compile types is going to be at a close-to-insurmountable disadvantage compared to something that works with the parse types directly; it's just too much of a cost. That said, if we were to discard some of the current assumptions about how the subsetter should run (that it should be a single-shot tool that takes a raw font file as input, for instance) than I do believe we could produce a tool that would have amortized per-operation runtime lower than that of the current subsetter.


New Query not establishing connection when using instance context menu

Issue Type: Bug

Right click on instance name
Click New Query - query window opens, but without established connection.

Expected behavior: Query window opens with connection to default database.
If I click New Query from Databases, Security, or Server Objects etc. context menu , query window will open with connection to default database.

SQL Operations Studio version: sqlops 0.31.4 (e026ab85a72c190cc4ccc834503aa9fe36dd6407, 2018-07-18T02:14:21.826Z)
OS version: Windows_NT x64 10.0.17134

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz (8 x 2793)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: unavailable_softwarevideo_decode: enabledvideo_encode: enabledvpx_decode: enabledwebgl: enabledwebgl2: enabled

Memory (System)
15.96GB (7.56GB free)

Process Argv
C:\Program Files\SQL Operations Studio\sqlops.exe

Screen Reader
no

VM
33%

Extensions (7)

Extension
Author (truncated)
Version

sqlops-combine-scripts
Bat
1.3.0

ssmskeymap
kev
0.2.0

agent
Mic
0.31.4

profiler
Mic
0.1.2

server-report
Mic
0.1.2

whoisactive
Mic
0.1.1

sql-search
Red
0.2.0

@LavKiv Can you tell us what kind of server it is? I'm not able to repro this issue.

@abist
Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) - here is the version. Do you need any other details that I can provide?
I also noticed that everything works fine, if I use Windows authentication. Issue is present with SQL Login authentication type.

This is working for me against Microsoft SQL Server 2017 (RTM-GDR) (KB4293803) - 14.0.2002.14 using SQL Login with the latest ADS build.  Please let me know if the issue persists.

This is working for me against Microsoft SQL Server 2017 (RTM-GDR) (KB4293803) - 14.0.2002.14 using SQL Login with the latest ADS build. Please let me know if the issue persists.

Checked it. Works perfectly fine. Thank you.


Upgrade guava version to 25 due to CVE-2018-10237

There is a security vulnerability in guava, affecting all versions between 11.0 and 24.1
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-10237

Is Archaius dead? Would be about time to merge this PR I guess?!

Archaius v1 is no longer maintained.


brave: Add beta and dev release channels

Please simplify the script. See https://github.com/lukesampson/scoop-extras/pull/2693/files

Changed the existing Brave manifest to use the script as well.

This should be added to the Versions bucket.

Shouldn't all the Firefox, Chrome, and Chromium manifests be in there too then?

Yes, we will migrate those soon


Pipe permissions on Windows between different users

Pipes have no way to be set writable for other/all users.
Example:
System Server Process:
uv_pipe_bind(&server, "server-pipe");
Normal User Process:
uv_pipe_connect(&req, &client, "server-pipe", on_connect);
// this will fail and not be able to connect
Temporary fix: https://github.com/libuv/libuv/compare/v1.x...zzzjim:win32-pipe-permission
However, this always enable read/write to everyone.
Windows doesn't have anything like a umask so there is no easy way to fix this outside of the code.

Version: 1.x
Platform: Window 7 and up

I don't think we want to do this unconditionally.
Pipes are very different on Unix and Windows, so I guess one could look at this both ways...
At a first sight it looks like a platform different which I'm not sure it's worth solving. On Unix the same would happen if you start the process with a more restrictive umask, but what should we do about that?
I'm open to ideas though! :-)

I feel the same way about the unconditionally part.
The only other way would be to change the api or add a wrapper or add a new function to change the permissions.
New Bind -- passing some kind of permissions
uv_pipe_bind(&server, "server-pipe", UV_READ|UV_WRITE);
New Wrapper
uv_pipe_bind_permissions(&server, "server-pipe", UV_READ|UV_WRITE);
New Call - I'm pretty sure on windows we can change the permissions after.. for sure on unix*
uv_pipe_permissions(&server, UV_READ|UV_WRITE)

Changing created pipe permission is possible under Windows with a call to SetSecurityInfo. I guess for Linux it would be fchmod, is that right?
If so, I think adding uv_pipe_permissions would be the way to go about this.

Maybe a new function uv_pipe_chmod ?

Changing the way we open pipes would break backwards compatibility.
PR with uv_pipe_fchmod here: https://github.com/libuv/libuv/pull/1386

This is still not working on OS X. Appears to be a bug in fstat on  Darwin.
See: https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man2/fstat.2.html
Bugs: "Applying fstat to a socket (and thus to a pipe) returns a zero'd buffer, except for the blocksize
field, and a unique device and inode number."
This patch changes uv_pipe_chmod to use stat rather then fstat and adds test cases for non WIN32.
https://github.com/libuv/libuv/pull/1635

See last comment

fixed by zzzjim in https://github.com/libuv/libuv/pull/1635


Emagged should be a component

Thought we had an issue for this already but I think we just talked about this in discord.

later i will make a pr adding the component, then another replacing emagged bools everywhere

ok nevermind 2 prs just doing the 1 big one
@metalgearsloth TIL you can emag stasis beds, and unemag them (screwdriver and crowbar?)
is there any reason to keep unemagging since its an extra event field only used by (so far as ive checked which is like half of em) this feature


container prune remove state created, configured

podman container prune should remove containers with state Created, Configured to be compatible with docker
Signed-off-by: Qi Wang<EMAIL_ADDRESS>

/approve
LGTM

Other prune tests look to need adjusting.

podman init on a Configured container will make you a Created container

@mheon @TomSweeneyRedHat PTAL

@mheon @TomSweeneyRedHat @QiWang19 Is this ready to go in?

LGTM

/lgtm


rkt-monitor additional fix

The line parsing the actual version of rkt, so if the version will be change then this line give us right number of it. Before this rkt has in files encrypted line with version number.

Small nit, LGTM.

Shouldn't scripts/bump-release update the version automatically at each release? I wonder why it was not picked up.

@alban @jellonek PTAL
I already applied your suggestion

LGTM

I like previous idea to get version in time of building instead of patching each file after version bump.
Maybe this could be extracted into scripts/common-functions.sh and then included in other scripts?
@alban @krnowak @jonboulle what do you think about this? At least for script files, preserving actual version of number bumping for other, more "statical" files?

@jellonek it would certainly be nicer if we had this coded in one place - want to file a follow up? this lgtm for now

Done. #2995


fix: removing sqlx check from pre-push

Removing this check for now, I will re-add is as an opt-in check, probably with other checks bundled in. It's best not to require built project on every push.

@tomg10 can you please add some description to the PR?  Why are we removing it?

It's best not to require built project on every push.

agreed. Used to do --no-verify but that skips all the checks


Clash in requirements for finetuning Starcoder2

#Facing the following error while trying to finetune Starcoder2 with the given script.
Description:
For transformers.AutoModelForCausalLM to recognize Starcoder2 transformers>4.39.0 is required.
But trl is still using transformers==4.38.2. Even if I compile from source & use trl=0.7.12.dev0 I still get an issue.
Here is the error with using transformers==4.38.2
KeyError                                  Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/transformers/models/auto/configuration_auto.py](https://localhost:8080/#) in from_pretrained(cls, pretrained_model_name_or_path, **kwargs)
   1127             try:
-> 1128                 config_class = CONFIG_MAPPING[config_dict["model_type"]]
   1129             except KeyError:

4 frames
KeyError: 'starcoder2'

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/transformers/models/auto/configuration_auto.py](https://localhost:8080/#) in from_pretrained(cls, pretrained_model_name_or_path, **kwargs)
   1128                 config_class = CONFIG_MAPPING[config_dict["model_type"]]
   1129             except KeyError:
-> 1130                 raise ValueError(
   1131                     f"The checkpoint you are trying to load has model type `{config_dict['model_type']}` "
   1132                     "but Transformers does not recognize this architecture. This could be because of an "

ValueError: The checkpoint you are trying to load has model type `starcoder2` but Transformers does not recognize this architecture. This could be because of an issue with the checkpoint, or because your version of Transformers is out of date.

Here is the error when using transformers==4.39.0
ImportError                               Traceback (most recent call last)
[<ipython-input-2-3ef713ffd06d>](https://localhost:8080/#) in <cell line: 1>()
----> 1 from trl import SFTTrainer
      2 print("trl version:", trl.__version__)

1 frames
[/usr/local/lib/python3.10/dist-packages/trl/__init__.py](https://localhost:8080/#) in <module>
      3 __version__ = "0.7.12.dev0"
      4
----> 5 from .core import set_seed
      6 from .environment import TextEnvironment, TextHistory
      7 from .extras import BestOfNSampler

[/usr/local/lib/python3.10/dist-packages/trl/core.py](https://localhost:8080/#) in <module>
     23 import torch.nn.functional as F
     24 from torch.nn.utils.rnn import pad_sequence
---> 25 from transformers import top_k_top_p_filtering
     26
     27 from .import_utils import is_npu_available, is_xpu_available

ImportError: cannot import name 'top_k_top_p_filtering' from 'transformers' (/usr/local/lib/python3.10/dist-packages/transformers/__init__.py)

---------------------------------------------------------------------------
NOTE: If your import is failing due to a missing package, you can
manually install dependencies using either !pip or !apt.

To view examples of installing some common dependencies, click the
"Open Examples" button below.
---------------------------------------------------------------------------

This is another similar issue posted here: https://github.com/huggingface/trl/issues/1409

Issue is still open

Nothing? @loubnabnl any suggestions on how the default Finetuning script doesn't work out of the box?

If you change the requirements.txt to reference the latest version of trl this will work fine.
git+https://github.com/huggingface/transformers.git
accelerate==0.27.1
datasets>=2.16.1
bitsandbytes==0.41.3
peft==0.8.2
git+https://github.com/huggingface/trl.git
wandb==0.16.3
huggingface_hub==0.20.3

That should do it. I'm using Rye to install dependencies, but that change worked for me. Rye dependencies in pyproject.toml looks like this...
dependencies = [
    "transformers @ git+https://github.com/huggingface/transformers.git",
    "accelerate==0.27.1",
    "datasets>=2.16.1",
    "bitsandbytes==0.41.3",
    "peft==0.8.2",
    "trl @ git+https://github.com/huggingface/trl.git",
    "wandb==0.16.3",
    "huggingface_hub==0.20.3",
]


What are Erode size, Foreground threshold and Background threshold in Alpha matting?

What are these parameters, I could not find any details regarding this.
How should I tune these?

you can refer more from here https://github.com/danielgatis/rembg


How do I check for common socket error conditions?

What version of Go are you using (go version)?

$ go version
go version go1.13.3 linux/amd64

Does this issue reproduce with the latest release?
Don't know. 1.13.4 compilation is broken:
$ go build
# reflect
/usr/local/go/src/reflect/value.go:1410:3: //go:nocheckptr is not allowed in the standard library
/usr/local/go/src/reflect/value.go:1922:3: //go:nocheckptr is not allowed in the standard library

Issue
Running the following code:
package main

import (
	"fmt"
	"net"
	"time"
)

func main() {
	l, err := net.Listen("tcp", "localhost:3344")
	if err != nil {
		fmt.Println("Error listening: ", err.Error())
		return
	}
	defer l.Close()

	go func() {
		for {
			conn, err := l.Accept()
			if err != nil {
				fmt.Println("Error accepting: ", err.Error())
				return
			}
			fmt.Printf("Conn = %v\n", conn)
		}
	}()

	time.Sleep(time.Second)
}

... generates (correctly) the following error:
Error accepting:  accept tcp <IP_ADDRESS>:3344: use of closed network connection

But as I understand it, there are supposed to be declared error values we can compare against rather than using brittle string comparisons that aren't even covered by the go contract. This is apparently a big enough problem that your own tests even include an explicit check to make sure that code depending on a string comparison for this one common case doesn't break: https://golang.org/src/net/error_test.go#L501
But when I look at the source, the error isn't even exported: https://golang.org/src/internal/poll/fd.go#L20, so how exactly are we supposed to check for expected network errors in go?

I think this is a dup of #4373, which has a complicated discussion.  I'm going to close this as a dup, but please comment if you disagree.


Fix Inception module to consistent with the document

I fixed the design of Inception module. The document says that it inserts the full computational graph of Inception on top of the input variables, while the previous implementation does not implement as this and hide the computational graph. It caused the volatile flag disabled inside of the Inception module. This change fixes this inconsistency.

I confirmed that example/train_imagenet.py can train with googlenet after applying this change. So it is safe to say that this change does not break existing code.

LGTM :+1:


If gif file url contains a GET parameter the extension is wrong

For example, drupal add get parameter to filename to deal with browser cache system :
http://mywebsite.com/blandit-obruo-sit-voco_0.gif?itok=GDQd3gUS
With this url, the extension is gif?itok=GDQd3gUS, and the freezeframe is not working.
PR attached

:+1:

cool, great work :)


stream UDP

Hello I would like to send the stream from the camera in real time with the UDP protocol .
Sorry for my English and thank you in advance.

Sure - just modify the "Recording to a network stream" recipe to use a UDP socket instead of a TCP one. It's a little tricky given that UDP is connectionless so you can't just listen and accept a connection, instead you basically process every incoming packet and throw it at the player (in the vague hope that nothing's been dropped, repeated, re-ordered, etc.) but it's not hugely difficult. The server side would look something like this:
import socket
import subprocess

# Start a socket listening for connections on <IP_ADDRESS>:8000 (<IP_ADDRESS> means
# all interfaces)
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server_socket.bind(('<IP_ADDRESS>', 8000))

# Accept a single connection and make a file-like object out of it
try:
    # Run a viewer with an appropriate command line. Uncomment the mplayer
    # version if you would prefer to use mplayer instead of VLC
    cmdline = ['vlc', '--demux', 'h264', '-']
    #cmdline = ['mplayer', '-fps', '25', '-cache', '1024', '-']
    player = subprocess.Popen(cmdline, stdin=subprocess.PIPE)
    while True:
        # Repeatedly read up to 128k of data from the connection and write it
        # to the media player's stdin; we deliberately use a large size here to
        # avoid truncating UDP messages
        data = server_socket.recv(131072)
        if not data:
            break
        player.stdin.write(data)
finally:
    connection.close()
    server_socket.close()
    player.terminate()

And the Pi side looks something like this:
import socket
import time
import picamera

# Connect a client socket to my_server:8000 (change my_server to the
# hostname of your server)
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
client_socket.connect(('my_server', 8000))

# Make a file-like object out of the connection
connection = client_socket.makefile('wb')
try:
    with picamera.PiCamera() as camera:
        camera.resolution = (640, 480)
        camera.framerate = 24
        # Start a preview and let the camera warm up for 2 seconds
        camera.start_preview()
        time.sleep(2)
        # Start recording, sending the output to the connection for 60
        # seconds, then stop
        camera.start_recording(connection, format='h264')
        camera.wait_recording(60)
        camera.stop_recording()
finally:
    connection.close()
    client_socket.close()

You'll probably find a fair amount of frame corruption from dropped / re-ordered packets but, hey, that's what you get for using a datagram protocol :)

thank you for your response . But I have an error in the client program (PI) :
pi@raspberrypi ~ $ python test.py
Traceback (most recent call last):
File "test.py", line 22, in
connection.close()
File "/usr/lib/python2.7/socket.py", line 279, in close
self.flush()
File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
socket.error: [Errno 89] Destination address required
Thank you in advance for your answer.

Did you change 'my_server' to the hostname/ip-address of the machine running the server script?

Yes, I Replaced I' my_server ' by my IP address.
I can find another way to send the stream UDP with VLC like this:
Popen ( [' cvlc ', ' stream' , video , '--sout' ,'#standard{access=udp,dst=<IP_ADDRESS> :6000}' ] )
the problem is how to get the flow on a variable (video = ????)

My problem is solved but I like to know if you can read the stream received from direcement VLC ( vlc udp://@:8000) Thanks

The H264 NAL stream output by the Pi's camera is not encapsulated in a nice container like MP4. Because of this VLC doesn't know how to play the output unless you explicitly tell it that it's H264 NAL. You don't need to do this when you're just playing a file because VLC guesses it from the filename extension, but in the case of a network stream it doesn't have that option. So that's why there's a "--demux h264" option added on the server side. Try it with the following command line:
vlc udp://@:8000 --demux h264

That works for me.

Thank you it works well. One last question and you know how to do multicast (ip = <IP_ADDRESS>:50000) still udp.I find this:
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 2)
but it does not work

That's a good question - I've never worked with multicast myself, just good old fashioned broadcast (which compoundpi uses) so I'm afraid I can't help much there. After a quick google I did run across this on SO: http://stackoverflow.com/questions/603852/multicast-in-python - and from that I suspect you need to do more than merely set the socket options for multicast (and I'd probably use a TTL a little longer than 2 just in case there's anything that counts as a router in the way). Have a look at the sendto calls in the answers. In each case they're using sendto(buf, (MCAST_GRP, MCAST_PORT)) so I'm guessing you'd need a little more than a file-wrapped socket. Still, shouldn't be too hard to use a custom output to achieve this. Something like:
import socket
import picamera
#...

class MyOutput(object):
    def __init__(self, socket):
        self.socket = socket

    def write(self, buf):
        # Need to define MCAST_GRP and MCAST_PORT somewhere
        self.socket.sendto(buf, (MCAST_GRP, MCAST_PORT))

#...
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 32)
#...
camera.start_recording(MyOutput(sock), format='h264')
#...

Your solution works , thank you .
I also succeeded with your first solution.
Thank you for your help, you helped me a lot

I am also trying to use the picamera's start_recording feature to stream the RPI2 camera's video stream to an Ubuntu machine using UDP.  What I've found though is that on the Ubuntu side it's complaining that it has not received a valid RTP payload.
On the sending side (an RPI2) I've used code identical to what's suggested by @waveform80 above (except I've changed the IP address accordingly).
On the Ubuntu machine I'm running this:
gst-launch-1.0 -v udpsrc port=9000 caps='application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264' ! rtph264depay ! avdec_h264 ! videoconvert ! ximagesink
On the Ubuntu side I'm getting this error message:
gstrtpbasedepayload.c(381): gs_rtp_base_depayload_chain (): /GstPipline:pipeline0/GstRtpH264Depay:rtph264depay0:
Received invalid RTP payload, dropping
I guess maybe the method described above does not send some important info that the receiver needs.  I guess it works RPI->RPI but isn't compatible with gstreamer?  .. or perhaps I need some change to the streamer command line.
Anyway, I certainly like picamera.

The code above doesn't generate an RTP stream; it just dumps the H264 NAL packets onto the network over UDP. You'd need to do a lot more work to encapsulate the stream in RTP (or get something like gstreamer to do the work for you).

hello i want to change the part of vlc with cv2 or other stuff to display it in gui
and thanks for your advices


Ignore duplicate blocks, increase desired peer counts

This PR aims to allow the nodes to handle more connections by ensuring that any duplicate inbound blocks are quickly identified and discarded.
The default numbers for client peers is greatly increased, while the number for miners is increased to a smaller extent.

During tests I noticed that the node can bleed peers, so some additional tweaking might be needed before their counts can be increased that much.

Any idea why the node is bleeding peers?

I also found out that we are currently serializing blocks for each peer separately when we propagate them; it's fixed in the last commit, and with that one in place, my peer count is much more stable.

@howardwu I consider this fix could greatly improve node connectivity and enable faster convergence. Please review.

I will split this PR into smaller ones to reduce the scope of changes.

Closing in favor of smaller, more self-contained PRs.


Fix SRIOV testcases for FreeBSD

@LiliDeng Overall, LGTM. Please start to look at it, so it can be merged early.


feat: compatibility e2e with matrix

Signed-off-by: Gaius<EMAIL_ADDRESS>
Description

Compatibility e2e with matrix.

Related Issue

Motivation and Context

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation Update (if none of the other choices apply)

Checklist:

[x] Code compiles correctly.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Codecov Report

Merging #599 (ef2befc) into main (d2e70b2) will increase coverage by 0.13%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #599      +/-   ##
==========================================
+ Coverage   38.56%   38.69%   +0.13%
==========================================
  Files          87       87
  Lines        6856     6856
==========================================
+ Hits         2644     2653       +9
+ Misses       3835     3827       -8
+ Partials      377      376       -1

Flag
Coverage Δ

compatibility-e2etests
?

e2etests
?

unittests
38.69% <ø> (+0.13%)
:arrow_up:

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

Impacted Files
Coverage Δ

client/daemon/peer/peertask_base.go
32.86% <0.00%> (-0.61%)
:arrow_down:

client/daemon/peer/peertask_stream_callback.go
64.55% <0.00%> (+2.53%)
:arrow_up:

client/daemon/peer/peertask_stream.go
57.62% <0.00%> (+3.38%)
:arrow_up:


Crack with crunch

I have tried this in my local machine. Minor edits are allowed.

This is a wonderful idea. Thank you for this contribution. I've been toying around with the idea of adding an appendix with extra information like this. I'm gunna have a look at this in the next few days and likely migrate your suggestions to that appendix file. I'm hesitant to add too much extra info to the main README.md in order to keep it short and sweet. Thanks!

I've merged your changes and migrated them to the new appendex.md file. Thank you very much for this contribution :smile_cat:


ImageUploader does not work with useState variable

The ImageUploader component uploads to IPFS and sets the value of the state variable provided.
However, this does not work with the new useState.
Working code:
State.init({
  img: null,
});

return (

      Image upload:

      <IpfsImageUpload image={state.img} />

);

Breaks when replaced with useState variable:
const [img, setImg] = useState(null);

return (

      Image upload:

      <IpfsImageUpload image={img} />

);

It gives error:

See this widget for example.

Could this be fixed with a "onChange" instead of image={} ?

I think IpfsImageUpload should be deprecated. Better to reimplement this logic in a widget. It doesn't have anything that a Widget can't do.


Adjusting font for all controls on a form

The fonts on all the samples look very small to me & I would love to be able to adjust that. It would be interesting to take the GuiHello sample and add a slider to adjust the font size of all the controls in the window. Is that possible?

Hi @MikeLorenz!
NAppGUI gets the standard font size from the Win32 global settings. Please check these steps:

Open regedit. This is a Win32 application. If the font size is different from GuiHello, then it is a bug in NAppGUI and I need to fix it.

If the size of both applications is the same, I have to include a new function in NAppGUI gui_global_font() so that all components use the same font.

Keep in touch!

On my system, the font looks exactly the same as regedit.
I apologize that I wasn't being clear in my question. For people with vision issues it would be nice to be able to adjust the font in the app: for the app developer to send a new font size to a panel, and have that send it to all its children. It would be up to the developer to decide how the user does it. It could be a slider, but also could be something like ctrl-mousewheel like many browsers do.


[Editor] Project list ONLY show projects created inside the default project folder

Describe the bug
If a project is created inside other folder but the default project folder defined by Prowl, it will not show
To Reproduce
Steps to reproduce the behavior:

Open Prowl
Create a new project, but select "C:\MyProjects\project-1"
click ok
The project is not displayed in the project screen

Expected behavior
list any project created, despite the path.

I believe @sinnwrig recently implemented a fix for this in the new development branch of prowl

oh.... i did not know that ``developmentbranch was being used insteadmain`. I will test it then

@brmassa it is completely different FYI and many things are still broken

I've noticed

I've noticed some Vulkan implementation.

I've noticed some Vulkan implementation.

What other big changes from main? (I can run a diff, but 460 commits is a lot to cover)
Couldn't we merge specific enhancements/bugfixes more granularly into main (like the launcher overhaul)?
Do the devs use Discord/Matrix regularly to discuss? Or is it more focused towards end users?

I'm a senior C# dev and would like to help.

@brmassa as far as I know most development discussions are through the official Discord via Video chat (almost daily)

Hey!
Yeah, the development branch was originally called Veldrid and was just the port of the engine from Silk.net OpenGL, to Veldrid to support more graphics backends like Vulkan, DirectX, and Metal.
But In the process, a lot of other random things got improved/changed so we recently renamed it to "Development"
We're planning to merge it back into the main branch once the graphics functionality is on par with the previous version or at least close to it.
We are quite active on Discord. We often discuss and work on Prowl in voice channels, but we also have a dedicated text channel for contributors if you prefer that.


Slapd fails to start with new build image

We build the actual state of the repo planing to make some small changes in the user/group structure.
When starting the image with no modifications slapd fails:
openldap             | 6310a7c3 @(#) $OpenLDAP: slapd  (May 14 2022 18:35:44) $
openldap             |  Debian OpenLDAP Maintainers<EMAIL_ADDRESS>openldap             | 6310a7c4 hdb_db_open: database "dc=planetexpress,dc=com": database already in use.
openldap             | 6310a7c4 backend_startup_one (type=hdb, suffix="dc=planetexpress,dc=com"): bi_db_open failed! (-1)
openldap             | 6310a7c4 slapd stopped.

Anybody manages to work with the current master? The project is great and it would be awesome to find a way to work with it.

This seems to be a problem with a previous error from ldapmodify while configure TLS:
Configure TLS...
+ ldapmodify -Y EXTERNAL -H ldapi:/// -f /opt/openldap/bootstrap/config/tls.ldif -Q
modifying entry "cn=config"
ldap_modify: Other (e.g., implementation specific) error (80)

The script exit early an does not shutdown the slapd process.

Looks like the issue is because of missing /etc/ldap/ssl/fullchain.crt

So.. if you remove these lines https://github.com/rroemhild/docker-test-openldap/blob/master/rootfs/opt/openldap/bootstrap/config/tls.ldif#L3-L5 and rebuild the image, it will start to work


Add exercise solutions

We got some feedback after the tutorial that people would like to have solutions for our exercises. Until there are, let there be this issue...

Fixed by #23, #24, and #25


refactor: Strategy interface is changed to support complicated scenario

Pull Request Test Coverage Report for Build 1602

24 of 27 (88.89%)  changed or added relevant lines in 7 files are covered.
11 unchanged lines in 4 files lost coverage.
Overall coverage increased (+0.3%) to 63.914%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core/loadbalancer/load_balancer.go
11
12
91.67%

core/loadbalancer/session_stickiness_strategy.go
8
9
88.89%

core/loadbalancer/strategy.go
0
1
0.0%

Files with Coverage Reduction
New Missed Lines
%

core/server/options.go
2
50.0%

core/options.go
2
85.96%

core/handler/transport_handler.go
3
23.17%

core/loadbalancer/session_stickiness_strategy.go
4
78.46%

Totals

Change from base Build 1596:
0.3%

Covered Lines:
5558

Relevant Lines:
8696

💛  - Coveralls


[iOS] AppAccountToken for App Store Server Notifications

Hello,
iOS has a new JWSTransactionDecodedPayload which contains the following property:
appAccountToken: A UUID that associates the transaction with a user on your own service. If your app doesn’t provide an appAccountToken, this string is empty. For more information, see appAccountToken(_:).
Linked here
I would like to ask you if we can add the appAcountToken property when we purchase and get it from "App Store Server Notifications"
Thank you for all the hard work :).

We have the similar requirement as this.
We also need to send the UUID as part of the product purchase option.
Product.PurchaseOption.appAccountToken(UUID)
Not sure if this is already in the roadmap and when could it probably be available?
Thanks.

Hello
We are also facing this issue in our products, it would be a a lot easier if we can set a user identifier token for IOS purchases the way it is feasible for Android
We were wondering if there is any update regarding this feature, and if it will be added anytime soon @hyochan
Thanks for all your efforts :)

Likewise - would be awesome to have this capability added!
CC: @hyochan

Also +1'ing this.
As I understand this would be blocked by https://github.com/dooboolab/react-native-iap/issues/1403 ?

As I understand it, this would not be blocked by migrating to StoreKit v2.
In the original implementation of StoreKit there is a field in the SKMutablePayment object that allows you to tag a payment to a specific user with an arbitrary string.
If that string happens to be a UUID, then the receipt will include the appAccountToken field with that UUID value.
https://developer.apple.com/documentation/storekit/skmutablepayment/1506088-applicationusername
This would make applicationUserName field analogous to appAccountToken.

thanks for pointing this out... we added the applicationUsername parameter to the request subscription function and patched the package... works like a charm 👍🏿

Hi @Wanes-Tutunjian, would you mind posting what you changed and how etc? Would love to do this myself. Thanks

A little more info here, when the subscription is renew from a expired subscription via App Store Manage Subscription page, the uuid you provided previously would not be included.

Hi @jeffy2007 thanks a lot. Really appreciate that you took the time to help out.

from which version of RNIap is the applicationUsername included in the subscription function?

As I understand it, this would not be blocked by migrating to StoreKit v2.
In the original implementation of StoreKit there is a field in the SKMutablePayment object that allows you to tag a payment to a specific user with an arbitrary string.
If that string happens to be a UUID, then the receipt will include the appAccountToken field with that UUID value.
https://developer.apple.com/documentation/storekit/skmutablepayment/1506088-applicationusername
This would make applicationUserName field analogous to appAccountToken.

thanks for pointing this out... we added the applicationUsername parameter to the request subscription function and patched the package... works like a charm 👍🏿

from which version of RNIap is the applicationUsername included in the subscription function?

https://github.com/dooboolab/react-native-iap/tree/8.4.0

Please help us test 11.0.0-alpha1 (Migration to Storekit 2) Otherwise this has been merged on main. Can be found on the latest 10.x.x


Autogenerate Ecore files via tycho-eclipserun-plugin

https://gist.github.com/hwellmann/6044835
Can do this no problem with the -model switch when configured w/ the .assessment project.
Duplicated the command and changed -model to -edit for the .assessment.edit project, got errors.
Contains: Nature does not exist: org.eclipse.pde.PluginNature.
Similar error to the issue here. However, both the .assessment and .assessment.edit projects had the org.eclipse.pde as a dependency on the plugin. (I tried making it also a dependency on the tycho-eclipserun-plugin plugin in the pom.xml for each. No love it seemed.

Random notes
target/generated-sources/emf ("target-root-directory")

Puts it into the maven project containing the tycho-eclipserun-plugin plugin
configuration

target/workspace

Used for other projects not contained in this project, e.g. -edit or -editor
Creates an Eclipse project within the workspace
Does not update the source

So here's the idea:

Try making the target-root-directory option point to the base
directory again. Is this possible?
Move -edit to its own project

target-root-directory
-  ... ${basedir}/model/assessment.genmodel target/generated-sources/emf</appArgLine>
+  ... ${basedir}/model/assessment.genmodel ${basedir}</appArgLine>

mvn -f builds/io.opensemantics.semiotics.parent/pom.xml clean verify
...

>>> Generating /Users/jonpasski/src/OpenSemantics/semiotics-main/bundles/io.opensemantics.semiotics.model.assessment/model/assessment.genmodel
>>  Examining project 'io.opensemantics.semiotics.model.assessment'
>>  Refreshing '/io.opensemantics.semiotics.model.assessment'.
Usage arguments:
  [-projects <project-root-directory>]
  [-dynamicTemplates] [-forceOverwrite | -diff]
  [-generateSchema] [-nonNLSMarkers]
  [-codeFormatting { default | <profile-file> } ]
  [-model] [-edit] [-editor] [-tests]
  [-autoBuild <true|false>]
  [-reconcile]
  <genmodel-file-or-platform-resource-uri>
  [ <target-root-directory> ]

For example:

  generate result/model/Extended.genmodel
org.eclipse.core.internal.resources.ResourceException: Invalid project description.
  at org.eclipse.core.internal.resources.Project.checkDescription(Project.java:168)
  at org.eclipse.core.internal.resources.Project.assertCreateRequirements(Project.java:52)
  at org.eclipse.core.internal.resources.Project.create(Project.java:268)
  at org.eclipse.core.internal.resources.Project.create(Project.java:252)
  at org.eclipse.emf.codegen.util.CodeGenUtil$EclipseUtil.findOrCreateContainer(CodeGenUtil.java:1276)
  at org.eclipse.emf.codegen.util.CodeGenUtil$EclipseUtil.findOrCreateContainer(CodeGenUtil.java:1251)
  at org.eclipse.emf.codegen.ecore.Generator$PlatformRunnable$1.run(Generator.java:363)
  at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241)
  at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2225)
  at org.eclipse.emf.codegen.ecore.Generator$PlatformRunnable.run(Generator.java:466)
  at org.eclipse.emf.codegen.ecore.Generator$PlatformRunnable.run(Generator.java:134)
  at org.eclipse.emf.codegen.ecore.Generator$PlatformRunnable.start(Generator.java:120)
  at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
  at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
  at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
  at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
  at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:497)
  at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
  at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
  at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
  at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
Contains: OK
Contains: /Users/jonpasski/src/OpenSemantics/semiotics-main/bundles/io.opensemantics.semiotics.model.assessment overlaps the workspace location: /Users/jonpasski/src/OpenSemantics/semiotics-main/bundles/io.opensemantics.semiotics.model.assessment/target/workspace

^^^ So target/workspace cannot overlap the project. fuck a duck
This occurs in :
  if (!project.exists())
  {
    project.create(projectDescription, new SubProgressMonitor(progressMonitor, 1));
    project.open(new SubProgressMonitor(progressMonitor, 1));
  }

At the project.create call in org.eclipse.emf.codegen.util.CodeGenUtil$EclipseUtil.findOrCreateContainer
OK, so the plugin opens the target-root-directory project in the workspace.
The project cannot overlap the workspace, which makes sense.

This issue was moved to CoastalHacking/semiotics-main#10


pull request for e2e test at 01/30/2017 09:15:12

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Work on proposal to YCEDA small grants program

Task to do
Get a proposal together for YCEDA small grants program: https://desertagsolutions.org/small-grants-program
Reason
Help with pipeline development costs
Result
Proposal submitted

Added remaining work to next sprint (57)


Revert "ARC-328 import and improve Jira issue parser"

Reverts atlassian/github-for-jira#1149

Don't need to revert, just updated the regex instead in https://github.com/atlassian/github-for-jira/pull/1165


Create the body tag inside index.html

Important body tag for main content

Main section of our website


Cycle Detection Algorithm (Graph)

Description
Hey, I am a contributor for Gssoc'22.
I want to add clean and easily understandable code for cycle detection in graph

Using BFS
Using DFS

Please provide the opportunity for this.
Domain
Algorithm
Type of Contribution
Addition
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of LearnCPP.

/assign


refactor classes

@trungleduc sorry for the mess... I was expecting first merge this in my fork, yesterday I think both of us were working in the same thing.
In this PR I have used yours as base and have done some editions.

Create a single initEcharts which will setOptions based on the _createOptionDict.
I also set the option to listen changes in the rawWidget , what do you think?
I added the theme as another parameter, it will be used only if users set this parameter in the charts or if they modify it directly, otherwise the themeManager will be used as before.
I haven't fully tested the other properties

https://github.com/user-attachments/assets/80427244-b10b-447f-9931-1e6de969b9be
This is a WIP

Hey, thank you for opening the PR. Maybe it is a duplication with #14 ?

Let me merge #14 then you can rebase your PR on top of it?

Hey, thank you for opening the PR. Maybe it is a duplication with #14 ?

hey, sorry, I was supposed to test it first in my branch but I selected the wrong base branch....
Actually this extends #14... the PR is done on that branch...

Merged, let's target main now

No problem at all. I will add support for events and actions in a few days

@trungleduc I have converted this PR as a draft, I think something went wrong with the merge... let me figure it out and I'll ask  your review!

Thanks! it looks neat. I will add example and documentation later

I have tested the trait changes and they work well... However, there's an error when the 'svg' renderer is set and width/height are not a number... I think it is harmless because the class applied to the element will be set in the end, what do you think?

I have tested the trait changes and they work well... However, there's an error when the 'svg' renderer is set and width/height are not a number... I think it is harmless because the class applied to the element will be set in the end, what do you think?

The chart size is still correct?

ok so it's good for me

Thanks!


[REFACTOR] Remove all props pass-through of { http }

Is your feature request related to a problem?
http from OSD Core services is used 60+ times throught our plugin components.
Initial work is in production to hold these reference objects in a central coreRefs instance, availalbe
to all modules and components.
This is a follow-on task to eliminate all of the remaining props pass-through instances of http and replace them with use of coreRefs http.
There are approx 60 instances of http prop usage (see report.txt search result, attached)
What solution would you like?
Refactor all usage of http to coreRefs
What alternatives have you considered?
Do you have any additional context?
Add any other context or screenshots about the feature request here.
report.txt

curious why coreRefs instead of something prebuilt like react context or OSD get/set https://github.com/opensearch-project/opensearch-dashboards/blob/0709333c641f1e2bcaf116eb7d5504b33afcd71d/src/plugins/opensearch_dashboards_utils/common/create_getter_setter.ts#L34? They might be more generic, consistent with OSD, and can handle exceptions (e.g. throw error if not correctly set, no need for caller to check nullity)
related: https://github.com/opensearch-project/dashboards-observability/issues/975

The purpose of this recommendation is to reduce the direct code-dependencies on OSD core.   The secondary purpose of this is to remove the dependency from the React render cycle (thus, no use of React Context, Redux, or the like).
What is truly needed is a way to "guarantee" that these values are set before any component render takes place (as in, application start).   Until that guarantee can take place, the code definition requires nullability.
There might be a way to accomplish this with promises, (getter fn?) though that doesn't help in use-cases where the value is not awaited.   We could strontly recommend awaiting the value and assume developer-beware.

¸1

The purpose of this recommendation is to reduce the direct code-dependencies on OSD core. The secondary purpose of this is to remove the dependency from the React render cycle (thus, no use of React Context, Redux, or the like).

thanks for replying. what's the reasoning behind the purpose to reduce OSD and react render cycle dependencies? it's recommended from core to use context to access core services https://github.com/opensearch-project/OpenSearch-Dashboards/tree/0709333c641f1e2bcaf116eb7d5504b33afcd71d/src/plugins/opensearch_dashboards_react#context

The purpose to reduce direct dependency import and/or
dependency-injection/passdown of OSD-core service references is for
testability and code isolation.   Our testability, especially the ability
to easily mock service references, is much easier if the OSD-core
dependency-injection system is isolated from our modules.  The HttpService
reference (http) is one of the most passed-down dependencies, with only
limited use in our independent libraries.
Thanks and Kindest Regards,
Peter Fitzgibbons
On Tue, Sep 19, 2023 at 2:27 PM Joshua Li @.***> wrote:

The purpose of this recommendation is to reduce the direct
code-dependencies on OSD core. The secondary purpose of this is to remove
the dependency from the React render cycle (thus, no use of React Context,
Redux, or the like).
thanks for replying. what's the reasoning behind the purpose to reduce OSD
and react render cycle dependencies? it's recommended from core to use
context to access core services
https://github.com/opensearch-project/OpenSearch-Dashboards/tree/0709333c641f1e2bcaf116eb7d5504b33afcd71d/src/plugins/opensearch_dashboards_react#context
—
Reply to this email directly, view it on GitHub
https://github.com/opensearch-project/dashboards-observability/issues/904#issuecomment-1726526372,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAACYNWSK2X6RHTN3MHCNKTX3IE57ANCNFSM6AAAAAA3NGBJYY
.
You are receiving this because you authored the thread.Message ID:
@.***
com>

I see. I agree to some extend and I feel it's mostly opinion and personal preferences. For example, a benefit from using core-provided mechanisms is that we can reuse their testing setup and create our mock on top of their mock, which i thought would be easier than mocking coreRefs. (code from link)
const startMock = coreMock.createStart();

describe('LanguageSwitcher', () => {
  function wrapInContext(testProps: any) {
    const services = {
      uiSettings: startMock.uiSettings,
      docLinks: startMock.docLinks,
    };

    return (
      <OpenSearchDashboardsContextProvider services={services}>
        <QueryLanguageSwitcher {...testProps} />
      </OpenSearchDashboardsContextProvider>
    );
  }

But if we all feel coreRefs is easier then i don't have objections


Properties Tab suddenly missing when in Pixar layout

Sometimes I noticed tabs missing from Panel such as Dimension tab, Color Management tab.
I need to switch to Blender defaut "Blender Render" layout to get these back. But doing that I often forgot I am switching render and need to switch back to "Pixar Renderman".
Not sure what is causing this. It happens time to time, but keep eyes on it.

Hmm I don't see this behavior in the current Master or in the latest release. Can you tell us more about when this occurs.

Ok, I was doing live video and ....
https://www.youtube.com/watch?v=CinPAkOeufI
...around 31:50 you see those TABs are missing.

Around 30:00 I lost the Color Management.
I have a feeling maybe because I was using Sverchok, Animation Nodes, etc...

And I was not using IT for my render.

I have been unable to recreate this with just the RenderMan add-on running. I will take a look at the other add-ons you mentioned but I don't believe that it is PRMan-for-Blender add-on's fault.
Have a great day,
Ryan

I have not experienced this issue using some of the addons mentioned. I will go ahead and close this issue. If this still persists without extra addons than feel free to reopen this issue.
Thanks,
Ryan

I think the correct way to implement this now is this btw:  https://developer.blender.org/rB1d81f6

So Brian you think we should use an exclusion list?

Commited.


Cannot run Remix applications on a port > 3100.

What version of Remix are you using?
^1.2.3
Steps to Reproduce
export PORT=3900
npm run dev

Expected Behavior
Remix server starts
Actual Behavior
RangeError: `to` must be greater than or equal to `from`
    at AsyncFunction.module.exports.makeRange (/Users/ryanlabouve/code/ctnft-app/node_modules/get-port/index.js:99:9)

Introduced by https://github.com/remix-run/remix/commit/39d0dbf5c4ce102a9ba9448c8854bd465309803e.

I'd be happy to fix this by adjusting this to something like:
port: process.env.PORT ? Number(process.env.PORT) : makeRange(3000, 3100),

Can confirm, it is easy to reproduce by running, e.g., env PORT=8000 npm run dev, which will produce:
RangeError: `to` must be greater than or equal to `from`
    at AsyncFunction.module.exports.makeRange (/home/vieira/code/mix/node_modules/get-port/index.js:99:9)
    at Object.dev (/home/vieira/code/mix/node_modules/@remix-run/dev/cli/commands.js:249:19)
    at Object.run (/home/vieira/code/mix/node_modules/@remix-run/dev/cli/run.js:499:7)

@ryanlabouve that works. I run dev servers on ports 10000+ 😅

sorry folks! totally my fault and @ryanlabouve fix is what i actually wanted 😅


Cache the result of EEType validation

The Loader\classloader\generics\Constraints\General\ManyGenConstraints
CoreCLR test was taking forever to compile. (And I'm not even
exaggerating too much.)

@nattress PTAL

It might be worth a comment

Done.
Turns out I also had to move NodeFactory.NameMangler initialization earlier because we started constructing nodes that need it early on.


Small QoL Bug: command line options not arbitrary interchangeable

API-Mgr. CLI version
APIM-CLI 1.2.3
API-Manager and Service-Pack Version
7.7 July
Expected behavior
According to the usage message, it should not matter in which order the arguments are entered
Actual behavior
Apim cli prints out the standard usage help message and complains about a missing argument option
Log-Output in Debug
ERROR: Missing argument for option: o
Test case sample
The command "apim api get -wide -o csv" throws an error, but "apim api get -o csv -wide" works fine.
This is just a small quality of life change, so nothing too serious.

Thanks for reporting @niklasbeck! The fix will be delivered with the next release.


Projects - Add list with link to repositories

I went the simple route and only listed the projects with their links. All the other details are on each page.

The failure on OS X is due to installing pytorch in one of the tutorials. I accepted that as a 'fix later' item

looks good now! Should we wait to add any other project teams?

I used the ones from this organization that had commit activity

The build is currently failing because of issues pulling data for SNOTEL

An option is to change the execution setting at this point to 'auto'... although I don't think they're currently cached in CI...
https://github.com/snowex-hackweek/website-2024/blob/039c4b600c21d4afe435ffd55429a2d96c144cde/book/_config.yml#L34

The build is currently failing because of issues pulling data for SNOTEL

An option is to change the execution setting at this point to 'auto'... although I don't think they're currently cached in CI...
https://github.com/snowex-hackweek/website-2024/blob/039c4b600c21d4afe435ffd55429a2d96c144cde/book/_config.yml#L34

Yeah, we didn't cache it before and we would need at least one successful run

Closes #26


deps: go-containerregistry: bump to 0.7.0

merged dependabot PR instead due to change of docker.go in this PR.


alsa-project: expose the scope as a top-level package to support overrides

this enables overrides of the following form:
pkgs.extend (_self: super: {
  alsa-project = super.alsa-project.overrideScope' (_alsaSelf: alsaSuper: {
    alsa-ucm-conf = alsaSuper.alsa-ucm-conf.overrideAttrs (_: {
      src = ...
    });
  });
)

Description of changes

Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Mostly no-op.


this.field('something') not available in autovalue for updates

This could be something weird in my set-up, or broken by recent updates to collection2 and simpl-schema (since it used to work) but...
I have discovered that when I am doing updates on a document, autovalue is getting fired on all fields (as expected) but it doesn't have access to any fields that were not in the document modifier.
e.g.
Stuff.update({_id: 123},{$set: {aField: 'blue'}})

Console logging this.field('anotherField').value in the autovalues on Stuff returns undefined even if anotherField has been set in a prior operation on the document. Is this expected behaviour? Have I broken something in my set-up? If I want to use anotherField in my autovalues, do I have to include it in my update, even if its value is not changing? That is a work-around that appears to be working for me, but it is slightly awkward.

SimpleSchema is not database-aware and never has been, so if you are asking about a value that's set in the database but not the modifier, then no, it won't be available in the autoValue function, but you can do your own mongo lookup in the function if you need to.
Collection2 is database-aware and maybe could add some extra props from the DB in certain cases, but I really can't think of any examples where it would. Possibly if the update is being called in client code and Meteor is doing some extra DB lookups.


Fix IsADirectoryError upon Reinstallation

So the issue is a minor one. As you were using shutil.copyfile.  So instead we can use shutil.copy that takes a destination as a directory as well.
Hope this helps. Minor change hence didnt attempt the test coverage. Let me know if this works @alichtman
Fix #216

Sweet. I'll play around with this when I have some time. Thanks!

No problem. Let me know if this breaks something?
I guess the biggest thing to worry about is simply reinstallation of dotfiles after backing up
Thanks
Supratim

On Nov 30, 2019, at 12:39 PM, Aaron Lichtman<EMAIL_ADDRESS>wrote:
Sweet. I'll play around with this when I have some time. Thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/alichtman/shallow-backup/pull/243?email_source=notifications&email_token=AAJWLDYXDLNEBVV3K2UZ3X3QWLFOTA5CNFSM4JTCYGBKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFQTPXA#issuecomment-560019420, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJWLD5HAY3T35ARQQKMWVDQWLFOTANCNFSM4JTCYGBA.

I guess the biggest thing to worry about is simply reinstallation of dotfiles after backing up

I believe we have tests for this. Can you add coverage if it doesn't already exist?

@alichtman Added a new test for dotfile reinstallation. THe coveralls check fails? Can you point to the reason why that is? I added a new testfile and change resintall_dotfiles function to allow for an optional homepath directory

Can you point to the reason why that is?

The reason it fails is because code coverage decreased. Let me take a look to see if this is reasonable or if something weird is going on. I'm in the middle of exams at the moment so it may take me a bit to come back to this.

@alichtman Seems like this is a tough one. shutil.copytree doesn't work with non-empty directories as the destination which will always be the case as the destination is home directory.
Will report back after I have figured a way out to restore a dotfiles folder with subfolders in it

Okay so Hold my beer while I try to explain the upcoming fix. Spent a long time on this one
so in reinstall.py@reinstall_dots_sb()
for file in get_abs_path_subfiles(dots_path):
    if os.path.isdir(file):
	copytree(file, home_path, symlinks=True) <---

This line actually never triggers because get_abs_path_subfiles only returns non directory files
Now, if you do append the subdirectories in the return value of get_abs_path_subfiles, shutil.copytree doesnt work because of the above-mentioned issue. It needs an empty destination directory which technically is not possible because  its the home directory for the user.
Now for fixing this I have done this.
son=Path(os.path.dirname(file))
destination=""
#Check if subfolder exists in dotfiles path
if parent in son.parents:
	folderLevel = son.relative_to(parent) <-- find relative path to dotfiles path
	destination = os.path.join(home_path,folderLevel) <-- create destination wrt home directory
	if not os.path.exists(os.path.join(home_path,folderLevel)):
		os.makedirs(os.path.join(home_path,folderLevel)) <-- create those folders if not exist
	else:
		destination = home_path
	copy(file,destination) <-- copy files irrespective if nested or not

Sending the updated code with 100% test cases passed (added one as well)

😊 Test case passing now for subfolder and associated subfolder dotfiles reinstall as well. Hope this helps. Still no clue on the coverage issue

@alichtman got a chance to look at this?

Didn't have time to go over the logic of the PR, this is just stylistic stuff. Life got really busy for me, but I'll review this within a month for sure. Ping me if you don't hear anything from me by Jan 20th.