Sim logging does not indicate fixed pool parameters

In [8]: res = curvesim.autosim(mim, chain="mainnet", A=range(500, 1500, 250), fee=4000000)
[INFO][14:39:05][curvesim.price_data.sources]-29571: Fetching CoinGecko price data...
[INFO][14:39:06][curvesim.pool_data.cache]-29571: Fetching historical volume...
[INFO][14:39:06][curvesim.network.subgraph]-29571: Volume end date: 2023-05-18 00:00:00+00:00
[INFO][14:39:06][curvesim.network.subgraph]-29571: Volume end date: 2023-05-18 00:00:00+00:00
[WARNING][14:39:06][curvesim.network.subgraph]-29571: Only 53/60 days of pool volume returned.
[INFO][14:39:07][curvesim.pipelines.utils]-29571: Volume Multipliers: [8.21828766e-07 8.21828766e-07 8.21828766e-07 3.18995732e-05
 3.18995732e-05 3.18995732e-05]
[INFO][14:39:17][curvesim.pipelines.arbitrage]-29648: [MIM-3LP3CRV-f] Simulating with {'A': 500}
[INFO][14:39:17][curvesim.pipelines.arbitrage]-29646: [MIM-3LP3CRV-f] Simulating with {'A': 1000}
[INFO][14:39:18][curvesim.pipelines.arbitrage]-29649: [MIM-3LP3CRV-f] Simulating with {'A': 1250}
[INFO][14:39:18][curvesim.pipelines.arbitrage]-29647: [MIM-3LP3CRV-f] Simulating with {'A': 750}

Logging only shows the variable parameters (A values) not the fixed fee value.

Good solution might be to store the fixed params on the Grid object.  Then it can be logged using that.


Blocking request handler

In some situation the order of request/response handling is
important. However, in current implementation the order can be
broken: request/response come from same connection can be handled
in random order because request handler is called in a new thread.
This patch changes that behavior by calling the handler in the same
context, to ensure the ordering.

I would like to keep async behavior. Concurrency is one of the biggest features of Go. You should find another way to serialize your calls.

@cenkalti I think it would be better to leave the decision to the user of this lib to decide. If they want async behavior they can always do it in the handler and return immediately. The current approach forces users to come up with their own way to serialize between the request handler, just to solve a problem created by the async processing here unnecessarily, with unnecessary cost introduced by whatever sync mechanism between threads. So I think simply do the sync processing here would be more generic.

In fact, in some situation it is not even possible for the user to do sync, when information is not available in the message itself, but only implicit in the order the messages come.
A related example use case is discussed here: https://mail.openvswitch.org/pipermail/ovs-discuss/2017-March/043858.html

The use case you mentioned is perfectly valid but what this PR does is basically removing the concurrency from the implementation. I can only accept this if you make it optional without changing the behavior for current users of this package.

Agree, backward-compatibility makes sense. I'll come up with an option.

Hi, here is the new patch which makes the behavior optional: https://github.com/cenkalti/rpc2/pull/14


📅 7/30 @ 9am PT - Running scheduled GitHub App tasks using Actions

💁🏻 Running scheduled GitHub App tasks using Actions
📅 Friday, July 30, 2021
🕐 9:00am Pacific Time (in your timezone)
🎙 Hosted by @bdougie
📍 https://www.twitch.tv/github
🏷 Automation

Subscribe to this issues to get a notification before the show begins and a summary after the show concludes. You can also sign up for the event on https://www.meetup.com/Open-Sauced-Meetup/events/279608849
Running scheduled GitHub App tasks using Actions
opensauced.pizza is your dashboard to plan and track your Open Source contributions. It works by forking the open-sauced/goals-template repository, which includes the goals-caching.yml workflow to synchronize data every two days. Besides the workflow, the @open-sauced app is installed as well which acts on direct interactions with the repository.
In this show, we will try to remove the  goals-caching.yml workflow from the template repository, and instead do the synchronization with the app, which is already installed. Apps do not have a native schedule trigger such as actions, but we can utilize a GitHub Action to authenticate as the app, and synchronize all repositories the app is installed on in one go.

Outline

show the current flow

Add a new repository, star repository, show out-of-sync stars in open sauced dashboard. Run sync using the scheduled sync action by adding a workflow_dispatch trigger

create sync flow using GitHub App

Create new workflow in open-sauced/open-sauced with a schedule trigger.
We will need to put a update-open-sauced-goals-cache.js somewhere in the repository, and we need to install octokit as dependency. We'll need to checkout the repository and setup Node 16 before running the script.
In the script, we will iterate all repositories of each installation. Load the data.json file for each repository, load the latest stats for each repository, then update the data.json file if there is any change.
Use @octokit/plugin-create-or-update-text-file to simplify the process of loading and updating the files
Optimization: batch load statistics for 100 repositories at once using a single GraphQL query

Bonus

create a script that creats pull request to all existing */open-sauced-goals repositories which removes the scheduled-caching.yml workflow file using octokit-plugin-create-pull-request

TODOs
Before the show

[ ] @bdougie add GitHub App credentials of Open Sauced GitHub App to the open-sauced/open-sauced  repository by setting OPEN_SAUCED_APP_ID and OPEN_SAUCED_PRIVATE_KEY
[x]  30 minute announcement tweet
(https://twitter.com/gr2m/status/1421132031413604354)
[x]  30 minute announcement comment
(https://github.com/gr2m/helpdesk/issues/38#issuecomment-889973105)

When show begins

[x]    start of show tweet
(https://twitter.com/gr2m/status/1421138052399960064)
[x]  comment on issue
(https://github.com/gr2m/helpdesk/issues/38#issuecomment-889987628)
[x]  Set twitter profile url to https://twitch.tv/gregorcodes
(https://twitter.com/gr2m)

After the show

[ ]  Reset twitter profile after the show
[ ]  recording available tweet

Recording
will be added after the show

Shownotes
will be added after the show

Going live in 30 minutes at https://twitch.tv/gregorcodes

I'm now live on https://twitch.tv/BdougieYO

The show is done, I'll post a link once @bdougie uploads the video to YouTube

Show is done for today, thank you all! Recording is coming up in a moment


DNN-8876: support large files

switch to long/bigint (and migrate database column type image to varbinary)

sorry, wrong files


Changed several *_types properties to be optional due to STIX spec change

Fixes #335
This changes several properties which were formerly required, to be optional.  Unit tests were updated too, where it seemed to be appropriate.  Test changes were a judgement call, and not all object types had the same types of tests, so not all object type unit test suites seemed to need changes.

Codecov Report

Merging #355 into master will decrease coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #355      +/-   ##
==========================================
- Coverage   98.15%   98.15%   -0.01%
==========================================
  Files         124      124
  Lines       14176    14175       -1
==========================================
- Hits        13914    13913       -1
  Misses        262      262

Impacted Files
Coverage Δ

stix2/v21/sdo.py
94.53% <ø> (ø)
:arrow_up:

stix2/test/v21/test_indicator.py
100% <100%> (ø)
:arrow_up:

stix2/test/v21/test_infrastructure.py
100% <100%> (ø)
:arrow_up:

stix2/test/v21/test_malware.py
100% <100%> (ø)
:arrow_up:

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 c2b7167...93a8caa. Read the comment docs.


♻ A page shouldn't link to itself

cc @theixdev, @pierssinclairssw, @bradystroud
Hi All,
As mentioned by @tiagov8  here - #731 we shouldn't be linking to the same page when using this Widget on SSW.Rules. As per the rule https://www.ssw.com.au/rules/do-you-avoid-linking-a-page-to-itself
To keep this plugin still generic, implement the following

[x] Investigate the best option
[ ] Implement

More Information
Due to there not being access to window when building statically.
Options 1.

Pass the Widget an option that can enable/disable linking globally (i.e. linkToSSW : default = true)

Option 2.

Pass the page location to the Widget and only link when not on ssw.com.au/rules

As per my conversation with @JackDevAU and @jaydenalchin
Option 3.

Make the link go to the all rules page https://ssw.com.au/rules/all-rules
The all rules page is more relevant as it contains similar information.
Once https://github.com/SSWConsulting/SSW.Rules/issues/711#issuecomment-975790708 is complete, the link can be updated to include the correct filters in the query string so the page will show the exact same data as the widget.
Remove the widget from the all rules page, as it shows the exact same data same

Closing as this has been implemented


Is it possible to provide official typescript definition file?

I know it's a duplicate request like before. But still, i am asking for an official definition file for typescript.
There is now a relative complete definition file on npm. I think you could make an official one based on this file.
Definition file is just describing structure of code, which should not be frequently changed.
We really need this file to integrate Chart.js into our projects.
Thanks in advance.

@kennywangjin can you link the file you found on NPM? I'm happy to look at PRs for this. I think it would be best owned by someone who has a lot of Typescript knowledge already.

@etimberg hello, here is the link of the file<EMAIL_ADDRESS>

Can this get priority please?
I've recently tried implementing AOT and it isn't compiling, mainly due to there being some missing chart type definitions. For example, chart.helpers isn't in the official type definition on npm so I get the following error:

[ts] Property 'helpers' does not exist on type 'typeof Chart'.

Closing as duplicate of #1572
I'm happy to look at any PRs for this

@Davy-F The static helpers property has been shipped on the latest definition file. Check it out.


Fix volumes landing action.

Purpose
Found a regression that caused the rename, resize, and clone actions, located on the Volumes Landing action menu, to not open the volume drawer as expected.
Found that shadowed names of the bound action creators caused the regression during the recent pagination PR.

Coverage remained the same at 27.536% when pulling fb8e219a4ec53606eea66e309b516512f8228a54 on rjstires:fix-volumes-landing-actions into d8e7590752072aa017b5206221607368b40fe1df on linode:develop.


Saving Tag on a Page 500s

When I pulled down to local, migrated, and tested it worked.
When I pushed to staging, migrated remotely and tested, it blew up.
Specifically, I created a new page, added two tags "Foo, Bar" and saved.
This is the stack trace.
Started POST "/admin/pages" at 2017-01-29 19:12:47 +0000
Processing by Admin::PagesController#create as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"QD18dxg/eE/vY+RHtrelu91ZaFtxhe2wwClRprBnIm+5DTgLQIZDd/0xnde4QHY6R9G9J6vXzZj7z4asc5CT3g==", "page"=>{"title"=>"TEST", "subtitle"=>"", "content"=>"TESTTESTTESTTEST", "tweet"=>"", "summary"=>"", "slug"=>"", "published_at(1i)"=>"2017", "published_at(2i)"=>"1", "published_at(3i)"=>"29", "published_at(4i)"=>"19", "published_at(5i)"=>"12", "status_id"=>"1", "image"=>"", "image_description"=>"", "css"=>"", "hide_header"=>"0", "hide_footer"=>"0", "hide_layout"=>"0"}, "button"=>"", "tags"=>"Foo, Bar"}
  Redirect Load (1.5ms)  SELECT  "redirects".* FROM "redirects" WHERE "redirects"."source_path" = $1 ORDER BY "redirects"."id" DESC LIMIT $2  [["source_path", "/admin/pages"], ["LIMIT", 1]]
  Redirect Load (3.7ms)  SELECT  "redirects".* FROM "redirects" WHERE "redirects"."source_path" = $1 ORDER BY "redirects"."id" DESC LIMIT $2  [["source_path", "/admin/pages/"], ["LIMIT", 1]]
  Setting Load (2.8ms)  SELECT  "settings".* FROM "settings" WHERE "settings"."slug" = $1 LIMIT $2  [["slug", :pinned_to_site_top_page_id], ["LIMIT", 1]]
  Setting Load (4.3ms)  SELECT  "settings".* FROM "settings" WHERE "settings"."slug" = $1 LIMIT $2  [["slug", :pinned_to_footer_top_page_id], ["LIMIT", 1]]
  Setting Load (4.4ms)  SELECT  "settings".* FROM "settings" WHERE "settings"."slug" = $1 LIMIT $2  [["slug", :pinned_to_footer_bottom_page_id], ["LIMIT", 1]]
  User Load (3.4ms)  SELECT  "users".*  FROM "tags" WHERE "tags"."name" = $1 LIMIT $2  [["name", "Foo"], ["LIMIT", 1]]
  Tag Load (1.1ms)  SELECT  "tags".* FROM "tags" WHERE "tags"."name" = $1 LIMIT $2  [["name", "Bar"], ["LIMIT", 1]]
   (7.3ms)  BEGIN
   (2.6ms)  ROLLBACK
Completed 500 Internal Server Error in 87ms (ActiveRecord: 40.8ms)
** [Bugsnag] Notifying https://notify.bugsnag.com of ActiveModel::MissingAttributeError

ActiveModel::MissingAttributeError (can't write unknown attribute `taggable_id`):

app/models/tag.rb:19:in `assign_to!'

app/services/tag_assigner.rb:15:in `block in assign_tags_to!'
app/services/tag_assigner.rb:15:in `each'
app/services/tag_assigner.rb:15:in `assign_tags_to!'
app/controllers/admin/pages_controller.rb:62:in `organize_page'
app/middlewares/rack/redirect.rb:48:in `call'

To confirm, that Page tagging migration has been applied.
$: heroku run rake db:version
Current version:<PHONE_NUMBER>4852

@withoutboats

Based on the error tagging articles should fail as well. I can't repro locally & the only explanation I can think of is that the database actually hasn't been migrated properly contrary to what rake says. That version of the schema has a taggable_id.

Actually it looks like this is probably a caching issue: https://stackoverflow.com/questions/6820156/activemodelmissingattributeerror-occurs-after-deploying-and-then-goes-away-aft

Restarting the heroku app fixed this. Thanks for the caching link.


only publish test result in PR builds

only publish test result in PR builds

Close for now to discuss more before doing this


Testing grid network client

Write scenarios and  automated test cases for grid network  client.
Deliverables

Write test cases in TestQuality and link them to the testing sheet.
Automate the test cases.
Integrate your work with ZeroCI.

Estimation Time

Once you explore the client, please set the estimation time and update the ticket

will be closed for now since the setup for this test a hassle


Rk fetch test bug fixes

Assumes GOOGLE_APPLICATION_CREDENTIALS_JSON is defined. Uses a new module to call for GC Secrets.

@rakunkel-ucd  I accepted this, but the secret manager part is broken, because you can't set the secret based on the URL.  I've changed the devault back to production.


fix: allow torch.Symint in slice_scatter_decomposition

fix: allow torch.Symint objects for start, end and step in slice_scatter_decomposition
Description
When an exported program is torch.exported with dynamic shapes, the start, end and step could be torch.SymInt instead of int. As a result, the assertions on start, end and step in slice_scatter_decomposition aborts the lowering pass.
Type of change

Bug fix (non-breaking change which fixes an issue)

Checklist:

[v] My code follows the style guidelines of this project (You can use the linters)
[v] I have performed a self-review of my own code
[v] I have commented my code, particularly in hard-to-understand areas and hacks
[ ] I have made corresponding changes to the documentation
[ ] I have added tests to verify my fix or my feature
[ ] New and existing unit tests pass locally with my changes
[v] I have added the relevant labels to my PR in so that relevant reviewers are notified

I'll reopen this PR (or might open a new one with more changes) after I come with a proper test case.


Warnings on version 0.5

Attempt at fixing the warnings while using  0.5

@acroy I guess this is ready. No warnings on v 0.5

@amitjamadagni I just refreshed my local Julia to v0.5. These changes run fine on my limited tests. Without looking too closely, I guess we are abandon the supports for earlier Julia v0.4? Just to make sure, and that is fine for me.


Api call blocked by missing Access-Control-Allow-Origin header

I am trying to call the ethwatch.gas api from my react app with the below code and am getting the following error. Is this expected?
Code:
  const response = await axios.get(
    `https://ethgas.watch/api/gas/trend?hours=168`,
  );

Error

Have you tried calling it from your own back-end/service?
If you're calling the service from the client-side, then you might indeed run into a CORS issue. As only ethgas.watch itself is a known origin.

Thank you for the reply! The app I am working on has no backend and is client side only app. Is it possible to change the allowed origin to be more permissive?

CORS has its benefits, even though the API only has GET methods and doesn't mutate anything.
This way, it also requires a bit of effort for other projects to consume the services. Which also prevents anyone to just spam the service.
So I'm a bit hesitant to just allow anyone.
But I did update the 3 endpoints described in the docs to allow all (*) for now.
Should make it work for you.
I'll continue to monitor traffic and usage.


Useful information on nurbs for you.

I have been programming for over 7 years now,  I also tutor most fields in stem, but never before has a coding/maths project gotten me so close to crying as trying to understand and implement nurbs vs bezier vs catmulllrom vs bspline and so on. i have spent days combing through papers and code projects in at least 4 different coding languages trying to wrap my head around it all, I do hope im not alone. I like what you have done so far with this, the spline is pretty and your code was nice to read. To return the favour i will provide you some of the best resources I have found to aid you in the design of this project and possibly even expand upon it if you so desire.
First off, a venn diagram of some various curves:

That helped me a fair bit, you are already working on NURBS so that may not be as much of a concern for you, but if you wish to expand onto the other types, there you go.
Secondly, i have only found one resource that explained NURBS in a very simple, clean, elegant, step by step way which can be found here :
https://www.codeproject.com/Articles/1095142/Generate-and-understand-NURBS-curves
It includes some code in C# and for unity at that! I know you have a fair bit of that already implemented, but if you didn't understand it all fully then it may help.
Next, the primary reason I created this, I noticed in your code you said this:
		// IN PROGRESS:
		// To calcurate derivatives for openuniform knot vector, hodograph seems to be needed.
		// https://pages.mtu.edu/~shene/COURSES/cs3621/NOTES/spline/B-spline/bspline-derv.html

I have found a paper in which they have a graph showing the calculated derivative of a uniform knot vector curve which you may find helpful

It has a full couple of pages dedicated to spline and curves and can be found here:
https://sci-hub.se/10.1016/j.cma.2014.11.011
The sc i showed you is found on page 8.
In the resource i linked in my second point, it also mentions:
It is also possible to create a B-Spline function for any derivative of the B-Spline. I will not give the code here though, but it can be found in The NURBS book, where the code for Nip is from too.
The book that it is referring to can be found here : https://argos.vu/wp-content/uploads/2019/03/Springer-TheNURBSBook.pdf
And has a ton of great info in it, but its a poor quality pdf and the code is in c++ which isnt as descriptive as something like C# is. I actually already started converting it into c# and commenting it, so it should save you some time, the only thing that needs to be finished with it is setting the proper size for the arrays before you add elements into them, even if you see a value there to define the size, you should check it since most of it i was putting in as I went converting it, I didnt actually think it through all that well.
			//create a B-Spline function for any derivative of the B-Spline.
			//Computes derivatives of basis function.

			/// <param name="i">Current control pont</param>
			/// <param name="p">The picewise polynomial degree</param>
			/// <param name="U">The knot vector</param>
			/// <param name="u">The value of the current curve point from 0 to 1 </param>
			/// <param name="n">The number of degrees?? </param>
			private double[] BasisDerivative(int i, int p, double[] U, double u,     int n) {
				int m = U.Length - 1;
				double[] ders = new double[n+1];
				if (u < U[i] || u >= U[i+p+1]) return ders;

				double[][] N = new double[p+1][];
				for (int j=0; j<=p; ++j) N[j] = new double[n+1];

				for (int j = 0; j<=p; ++j) { //Initialise zeroth degree funcs
					N[j][0] = (u >= U[i+j] && u < U[i+j+1])? 1d : 0d;
				}

				double saved, temp;
				//Compute Triangular table
				for (int k=1; k <= p; ++k) {
					saved = (N[0][k-1] != 0)?  ((u - U[i]) * N[0][k-1]) / (U[i+k] - U[i]) : 0;
					for (int j=0; j< p-k+1; ++j) {
						double Uleft = U[i+j +1];
						double Uright = U[i+j+k +1];

						if (N[j+1][k-1] == 0) {
							(N[j][k], saved) = (saved, 0d);
						} else {
							temp = N[j+1][k-1] / (Uright - Uleft);
							(N[j][k], saved) = (saved+(Uright-u)*temp, (u-Uleft)*temp);
						}
					}
				}

				ders[0] = N[0][p]; //The function value
				//Compute derivatives

				double[] ND = new double[n];
				for (int k=1; k < p; ++k) {
					for (int j=0; j <= k; ++j) ND[j] = N[j][p-k]; //Load appropriate column
					for (int h=1; h <= k; ++h) { //Compute table of width k
						saved = (ND[0] == 0)? 0d : ((ND[0]) / (U[i+k] - U[i]));

						for (int j = 0; j < k-h+1; ++j) {
							double Uleft = U[i+j+1];
							double Uright = U[i+j+p+h+1];

							if (ND[j+1] == 0) {
								(ND[j], saved) = (saved*(p-k+h), 0d);
							} else {
								temp = ND[j+1] / (Uright-Uleft);

								ND[j] = (p-k+h) * (saved-temp);
								saved = temp;
							}
						}

					}
					ders[k] = ND[0]; //Kth derivative
				}
				return ders;
			}

Lastly,
I found a really nice github project around cubic bezier curves that has a nice editor and very indepth code. You should check it out and look through the code for ideas here : https://github.com/vvrvvd/Unity-Spline-Editor
Its the only one besides yours I directly downloaded to play with.
Lastly lastly:
Heres some resources
/*
https://github.com/yolanother/UnitySplines
https://github.com/gregoiredelzongle/GPGre-Bezier-Splines
https://github.com/Kink3d/kSplines/blob/master/com.kink3d.splines/Runtime/Enum/Direction.cs
https://github.com/methusalah/SplineMesh/blob/master/Assets/SplineMesh/Scripts/Bezier/CubicBezierCurve.cs
https://github.com/dbrizov/NaughtyBezierCurves
https://github.com/Habrador/Computational-geometry
https://github.com/methusalah/SplineMesh
http://15462.courses.cs.cmu.edu/fall2015content/misc/CatmullRomReparameterization.pdf
https://github.com/JPBotelho/Catmull-Rom-Splines/blob/master/CatmullRom.cs
https://faramira.com/implement-bezier-curve-using-csharp-in-unity/
https://pages.mtu.edu/~shene/COURSES/cs3621/NOTES/spline/Bezier/bezier-der.html
https://en.wikipedia.org/wiki/Centripetal_Catmull–Rom_spline
https://en.wikibooks.org/wiki/Cg_Programming/Unity/Hermite_Curves
https://en.wikipedia.org/wiki/Composite_Bézier_curve
https://github.com/stefnotch/flax-bspline-experiment/blob/master/Source/BSpline.cs
http://15462.courses.cs.cmu.edu/fall2020/article/10
https://stackoverflow.com/questions/4089443/find-the-tangent-of-a-point-on-a-cubic-bezier-curve
https://github.com/stefnotch/flax-bspline-experiment/blob/master/Source/BSpline.cs
https://github.com/Aclardgm/Unity_BSplinesTensorialProduct/blob/main/Assets/BSpline.cs
https://github.com/RomanBushuev/BsplineLangrangeInterpolate/blob/master/HomeWorkBushuev/HomeWorkBushuev/CubeSplain.cs
https://www.desmos.com/calculator/wmaois894o
https://www.desmos.com/calculator/3zzznsp78n
Compute a length of a spline segment by using 5-point Legendre-Gauss quadrature
https://github.com/Kink3d/kSplines/blob/master/com.kink3d.splines/Runtime/Util/SplineUtil.cs
https://medium.com/@all2one/how-to-compute-the-length-of-a-spline-e44f5f04c40
https://pomax.github.io/bezierinfo/legendre-gauss.html
https://en.wikipedia.org/wiki/Gaussian_quadrature
*/

Wow very informative! thank you!


Allow keep alives to be disabled

This just allows users to toggle keepalives for the REST endpoints while maintaining backwards compatibility.  This is useful in the case described in #1212.

@ericchiang, any chance this could get a review.  If this is not something you are interested in supporting I'm happy maintain a fork but would like to know.  Thanks.

Disabling keep alives seems like a big trade-off. What do other
applications do for TCP pass through? How bad is it to have all traffic
from one user go to a single dex instance?
On Thu, May 17, 2018, 6:30 AM Joshua Rutherford<EMAIL_ADDRESS>wrote:

@ericchiang https://github.com/ericchiang, any chance this could get a
review. If this is not something you are interested in supporting I'm happy
maintain a fork but would like to know. Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/coreos/dex/pull/1221#issuecomment-389866552, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACO_XfSada56bkCi16c9ij6_9Enz4oQkks5tzXtegaJpZM4TaCV9
.


[FEA] Support parsing dates and timestamps with timezone IDs in the string

Is your feature request related to a problem? Please describe.
This is from https://github.com/NVIDIA/spark-rapids/issues/6846
Needs a kernel to parse dates and timestamps with timezone IDs in the string

Alfred is co-working on this.

I'm not planing work on this for release 24.04
@sameerz can we move it to next release?


⚠ Bofrost.be has degraded performance

In 64a0ec7, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 983 ms

Resolved: Bofrost.be performance has improved in 04f8d1d.


#433 Clickable Calendar Activities

Co-authors:
@veranika-karpava
@ChainShoe-Z
@seidior
@Prabhj33t
@daveytech
@phoebehala
Proposed changes
This resolves #433 by:

All activities on the calendar are clickable and can be closed by clicking a close button or clicking in the shaded area outside of the Dialog.
When users clicked the activity on the calendar, it shows up an activity dialog which displays the details of the clicked activity with a 'close' button.
The content of an activity dialog displays the title, start/end date and time of the activity.

Screenshot

Checklist

[x] Are the issues being addressed linked to this PR?
[x] Do all commit messages start with the issue number?
[x] Are all code changes sufficiently tested?
[x] Are there screenshots for UI changes?

A few things that I noticed:

Sometimes the activity blocks don't have enough space for showing the whole title

Hovering over the activities in agenda view changes the mouse cursor to text cursor instead of a hand pointer
react-big-calendar does offer support to show more in month view via a popup. So maybe it's something that we can work on. Documentation: http://jquense.github.io/react-big-calendar/examples/index.html?path=/docs/examples--example-6
Responsiveness of the programs page: we might want to adjust the size of the 'Program Activities' text and the program picker
Probably a low priority for now, but I was wondering if we can change colour of the activities. I looked at their documentation and it seems like they only use one colour

@wendyyng Very thorough beta testing, thanks! All great items to tackle and talk about Monday :)


Get a track by it's id

What is the name of the method which delivers a specific track by it's id?

Hi,
did you build your project in the android studio?


TechDocs nested lists rendering indent problem

I have documentation files that are formatted via prettier. Prettier config extends the one from Spotify and it sets the tabWidth to 2, which is the default value and the one being used by the Spotify config.
However, after publishing, nested lists are not rendered properly. I realize that in the background we have mkdocs to manage this, and by default, if I"m not mistaken, in order for the nested list to work, we need indentation set to 4.
Correct me if I'm wrong, but this is where your plugin techdocs-core comes into place and solves this problem.
In my sample docker container that I created to test mkdocs with this plugin I'm able to solve the issue. In other words, with the plugin included the mkdocs site show lists correctly, without the plugin it does not.
But after publishing with techdocs-cli to my s3 bucket within our backstage instance the nested lists are not rendered correctly (not rendered as nested).
Expected Behavior
The list should look like this:

My Item
My Item2

My SubItem
My SubItem 2

My Item 3

Actual Behavior
The list actually looks like this:

My Item
My Item2
My SubItem
My SubItem 2
My Item 3

It seems that the techdocs-core is being ignored or something.
Steps to Reproduce

Create some docs
Include prettier
Extend spotify prettier config
Set tabWidth to 2 (which is the default by the way and also set in the Spotify config)

Context
Prettier config:
module.exports = {
  ...require('@spotify/prettier-config'),
  ...{
    singleQuote: true,
    trailingComma: 'es5',
    arrowParens: 'always',
    bracketSpacing: true,
    endOfLine: 'auto',
    printWidth: 80,
    tabWidth: 2,
    jsxSingleQuote: true,
  },
};

Your Environment

Browser Information: Google Chrome 99.0.4844.51

Output of yarn backstage-cli info:

OS:   Windows_NT 10.0.19044 - win32/x64
node: v14.17.5
yarn: 1.22.11
cli:  0.13.1 (installed)

Dependencies:
  @backstage/app-defaults                                  0.1.6
  @backstage/backend-common                                0.10.6
  @backstage/backend-tasks                                 0.1.5
  @backstage/catalog-client                                0.5.5, 0.6.0
  @backstage/catalog-model                                 0.9.10
  @backstage/cli-common                                    0.1.6
  @backstage/cli                                           0.13.1
  @backstage/config-loader                                 0.9.3
  @backstage/config                                        0.1.13
  @backstage/core-app-api                                  0.5.2
  @backstage/core-components                               0.8.7, 0.8.8
  @backstage/core-plugin-api                               0.5.0, 0.6.0
  @backstage/dev-utils                                     0.2.20
  @backstage/errors                                        0.2.0
  @backstage/integration-react                             0.1.21, 0.1.20
  @backstage/integration                                   0.7.2
  @backstage/plugin-api-docs                               0.7.1
  @backstage/plugin-app-backend                            0.3.23
  @backstage/plugin-auth-backend                           0.9.0
  @backstage/plugin-catalog-backend                        0.21.2
  @backstage/plugin-catalog-common                         0.1.2
  @backstage/plugin-catalog-graph                          0.2.9
  @backstage/plugin-catalog-import                         0.8.0
  @backstage/plugin-catalog-react                          0.6.14, 0.6.13
  @backstage/plugin-catalog                                0.7.11
  @backstage/plugin-github-actions                         0.4.34
  @backstage/plugin-org                                    0.4.1
  @backstage/plugin-permission-common                      0.4.0
  @backstage/plugin-permission-node                        0.4.2
  @backstage/plugin-permission-react                       0.3.0
  @backstage/plugin-proxy-backend                          0.2.17
  @backstage/plugin-scaffolder-backend-module-cookiecutter 0.1.10
  @backstage/plugin-scaffolder-backend                     0.15.23
  @backstage/plugin-scaffolder-common                      0.1.3
  @backstage/plugin-scaffolder                             0.11.18
  @backstage/plugin-search-backend-node                    0.4.5
  @backstage/plugin-search-backend                         0.4.1
  @backstage/plugin-search                                 0.6.1
  @backstage/plugin-tech-radar                             0.5.4
  @backstage/plugin-techdocs-backend                       0.13.2
  @backstage/plugin-techdocs                               0.13.2
  @backstage/plugin-user-settings                          0.3.18
  @backstage/plugin-xcmetrics                              0.2.17
  @backstage/search-common                                 0.2.2
  @backstage/techdocs-common                               0.11.6
  @backstage/test-utils                                    0.2.4
  @backstage/theme                                         0.2.14
  @backstage/types                                         0.1.1
  @backstage/version-bridge                                0.1.1

I believe this issue is fixed by mdx_truly_sane_lists. This a quirk in how python-markdown implements the markdown spec which isn't 100% compatible with commonmark of github flavoured markdown.

@andrewthauer This is the part of my techdocs config:
techdocs:
  builder: 'external'
  generator:
    runIn: 'docker'
    dockerImage: 'spotify/techdocs'
    pullImage: true

The publisher is configured to aws3. In my GitHub action I install the latest techocs-cli package. Here is part of the pipeline:
- name: Install techdocs-cli
  run: npm install -g @techdocs/cli

- name: Install mkdocs and mkdocs Plugins
  run: python -m pip install mkdocs-techdocs-core==0.*

- name: Generate Docs Site
  run: techdocs-cli generate --no-docker --verbose

- name: Publish Docs Site
  run: techdocs-cli publish --publisher-type awsS3 --storage-name $TECHDOCS_S3_BUCKET_NAME --entity $ENTITY_NAMESPACE/$ENTITY_KIND/$ENTITY_NAME

Basically, my GitHub action looks like an example on the Backstage documentation page, minus platinum action.

@ProticM - Oh, I see you are not using docker and just installing the dependencies directly. Hard to say, but some additional things you could check / update are:

mkdocs-techdocs-core is now at 1.0.1 so try bumping to that exact version
Verify the mkdocs.yaml has mkdocs-techdocs-core registered correctly
Explicitly add the mdx_truly_sane_lists to the mkdocs.yaml file

Hi @andrewthauer,
On your remark above as followed:

Explicitly add the mdx_truly_sane_lists to the mkdocs.yaml file

Can you kindly help to clarify/elabroate What is the full syntax to add/declare it in the yml file?

@yohannes
mdx_truly_sane_lists is already included and configured by default in [mkdocs-techdocs-core] as seen here https://github.com/backstage/mkdocs-techdocs-core/blob/main/src/core.py#L128. So if you are using the latest https://github.com/backstage/techdocs-container then is should be working out of the box.
If you are building a custom techdocs-container image, then my recommendation is to add mkdocs-techdocs-core as a dependency and then include it in the mkdocs.yaml like so https://github.com/backstage/techdocs-container/blob/main/mock-docs/mkdocs.yml#L10. Or if you can't for some reason use mkdocs-techdocs-core, then it would look like:
# mkdocs.yml

...

plugins:
  # this needs to be pip installed and available to the executing python library running mkdocs
  - mdx_truly_sane_lists

Hopefully that helps.

Thanks @andrewthauer for those pointers.


Can not get core ui pro

Clicking on Get CoreUI PRO is not working. Check your website code and fix this ga not defined issue.

Thank you for the report. For hotfix clean site cookies.

Still not working

Which browser do you use?

Which browser do you use?

chrome. Latest


Ensure all iteration patterns work

This is a first attempt at cleaning up the iteration interface and ensuring that all iteration patterns are functional.
If ts is a TimeStructure the following iteration patterns should be available and produce identical time periods:

for t in ts
for sp in strat_periods(ts) for t in sp
for sp in strat_periods(ts) for repr_periods(sp) for t in rp
for sp in strat_periods(ts) for repr_periods(sp) for sc in opscenarios(rp) for t in sc

In addition, it is possible to drop any of the intermediate structures, still getting the same time periods:

for rp in repr_periods(ts) for t in rp
for sc in opscenarios(ts) for t in sc
for rp in repr_periods(ts) for sc in opscenarios(rp) for t in sc
for sp in strat_periods(ts) for sc in opscenarios(sp) for t in sc

The total duration of a time structure, is now obtained with the function _total_duration.
There is still some cleanup to do in the code, but it is currently passing all tests. Some thought should still go into the best way of handling the multiple function when working e.g. at the level of a representative period.
This PR should also cover the needs raised by PR #6.

I have not gone fully through the rearrangement as it makes it significantly more difficult to see potential changes in the individual commits. I realized however one thing directly: We have to be careful and consistent in what is a TimePeriod and what is a TimeStructure. The current code does for example not allow the following:
tp = StrategicProfile([5, 10])
ts = TwoLevel(2,1,SimpleTimes(1,1))
for t ∈ strat_periods(ts)
    println(tp[ts])
end

The simple answer is that the supertype of StrategicPeriod was redefined:
# From
StrategicPeriod <: TimePeriod

# To
StrategicPeriod <: AbstractStrategicPeriod <: TimeStructure

Conserquently, we have to potential fixes for this problem, either create a function Base.getindex(sps::StrategicProfile, i::TimeStructure), or revert to having a StrategicPeriod as subtupe of TimePeriod (or in this case, StrategicPeriod <: AbstractStrategicPeriod <: TimePeriod).
I would say, that the former does not make any sense, as we in this case open Pandora's box regarding potential erroneous usage of TimeStruct. I would suggest the following approach (including redefinition of TimePeriod as TimePeriod{T} to be consistent):

TimePeriod is used for all periods, that is:

SimplePeriod and OperationalPeriod,
AbstractOperationalScenario. OperationalScenario, SingleScenario ReprOperationalScenario, StratOperationalScenario, StratReprOpscenario, and ScenarioPeriod,
AbstractRepresentativePeriod, RepresentativePeriod, StratReprPeriod, SingleReprPeriod, and ReprPeriod, and
AbstractStrategicPeriod, StrategicPeriod, SingleStrategicPeriod.

TimeStructure is used for all structures that include several iterators, that is:

SimpleTimes,
OperationalScenarios, OpScens, RepOpScens, StratOpScens, StratReprOpscenarios, and SingleScenarioWrapper,
RepresentativePeriods, ReprPeriods, StratReprPeriods, SingleReprPeriodWrapper, and
TwoLevel.

I am not fully certain, whether I managed to extract all types, but this approach seems at least to me useful. Note, that I consider he an OperationalScenario to be a TimePeriod to be consistent with the approach used for SimplePeriod, RepresentativePeriod, and StrategicPeriod. The function last should then only be applicable to the TimeStructures, and not TimePeriods. This way, we should be consistent regarding what type we are talking about.
Note, that I have not tested a potential change yet. However, the initially outlined change was evaluated in EnergyModelsBase and resulted in the predicted error.

Sorry about all the changes - as usual I tend to change more than originally planned. I agree that it is convenient to allow the use of AbstractStrategicPeriod for indexing into a StrategicProfile, but it only makes sense for profiles with a fixed value for each strategic period. Therefore I would prefer the following
function Base.getindex(
    sp::StrategicProfile{T,FixedProfile{T}},
    i::AbstractStrategicPeriod,
) where {T}
    return sp.vals[_strat_per(i) > length(sp.vals) ? end : _strat_per(i)][i]
end

I do not think it is natural to change the usage of TimePeriod and TimeStructure. In my mind a TimePeriod is something you get when iterating a TimeStructure. In a sense, a TimeStructure is a collection of TimePeriods.
An AbstractStrategicPeriod is in this view a TimeStructure since it can be iterated to give TimePeriods. It may have some aspects of a TimePeriod, e.g. a duration, but it is in my view primarily a TimeStructure.
For dispatching purposes, I also think it makes more sense as a time structure. Eg. it will allow using a single strategic period as a time structure
function create_model(periods::TimeStructure)
...
end

ts = TwoLevel(...)
for sp in strat_periods(ts)
   create_model(sp)
end

Could be useful for future developments into decomposition algorithms for time structures.

Generally speaking, that makes sense to me that a TimeStructure is iterable and a TimePeriod is the outcome. However as an example, a StratReprPeriod is the outcome when iterating over StratReprPeriods while iterating over it provides an OperationalPeriod. The same holds for all StratOpScens and StratOperationalScenario. Hence, these periods are in my opinion somewhere in between, as it is also accounted for by the name.
Using TimePeriod purely for something operational seems reasonable (that is at the lowest level), although in my opinion it is not necessary the initial intention, as, e.g. StrategicPeriod was previously as well a TimePeriod. However, I would argue in this case that it is useful to then provide an abstract supertype for all other "Periods" outlined above to have the potential to dispatch over them as well as a group. The provided example could be avoided as well through simply not using dispatch, in this case, I would not be able to see the advantage ;)
I personally think that is a fundamental discussion, but important for the future.
Note that the function Base.getindex has to be implemented as well for all subtypes in this situation, i.e.:
Base.getindex(rp::RepresentativeProfile{T,FixedProfile{T}},i::AbstractRepresentativePeriod) where {T}
# and
Base.getindex(rp::RepresentativeProfile{T,FixedProfile{T}},i::AbstractOperationalScenario) where {T}

as it should be possible to use scenarios in a representative period with a fixed value for the representative period. In addition, we have to include all possibilities here, i.e. if we would have a StrategicProfile{RepresentativeProfile{FixedProfile}}, we would need a function to access is as well for OperationalPeriod (default, given), AbstractOperationalScenario (not there yet), and AbstractRepresentativePeriod. I would also suggest that there is an error, written by us, to highlight that the functionality is not implemented and not useful for, e.g. a AbstractRepresentativePeriod trying to access an OperationalProfile.

I agree that this is an interesting discussion point 😃
Since some of the structures have aspects of both, it would be nice to have multiple inheritance in Julia. As a compromise, I have implemented a solution with traits on AbstractStrategicPeriod, AbstractRepresentativePeriod and AbstractOperationalScenario to allow their proper use in indexing TimeProfiles.
I guess it is also possible to do it the other way around, using traits for the time structure part.

I did a minor mistake in the last commit as I forgot to do formatting. The force push was within 1 min, which I see as acceptable.

Looks good to me. Works with the new storage branch at EMB, and exposed some minor test bugs there with the change where OperationalProfile now requires vector input.
I assume this closes #6 ?

Yes, this will close #6 although I have not fully checked it out. It can be that we have to potentially do minor adjustments in a latter stage.
This PR is however a breaking release as a lot of exported functionality changes. We had to do quite a few adjustments within EnergyModelsBase to account for the changes.

From my end, we have now everything running in this PR as desired. The only thing remaining is a version increase. As we introduce breaking changes (e.g., duration() only works for OperationalPeriod or SimplePeriod, but no longer for StrategicPeriod, this requires a major version increase in my opinion. Thoughts, @hellemo and @trulsf

No strong opinion from my side. I also tend towards a major version increase.

Looks good to me! This means we are ready for a new release?

As soon as @trulsf pushed a version with an updated version number :)


build: introduce support for reproducible builds

Description
Add support for reproducible builds
Reproducible builds is an initiative to create an independently-verifiable path from source to binary code 1. This can be done by:

Make all archive tasks in gradle reproducible by ignoring timestamp on files 2
Preserve the order in side the archives 2
Ensure GlobalBuildInfoPlugin.java use SOURCE_DATE_EPOCH when available

Issues Resolved
N/A
Check List

[-] New functionality includes testing.

[-] All tests pass

[x] New functionality has been documented.

[-] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

start gradle check

Please rebase the latest on main to hopefully mitigate the failing test

Hey @inglor! I understand in abstract why reproducible builds might be useful, but can you explain the reason for adding it to OpenSearch now? Do you have a specific use case that requires this? If there is more discussion necessary or if this effort will require additional work feel free to open an issue. Thanks!

Hi @andrross, thanks for the review! I'm a package maintainer of OpenSearch in Arch Linux 1 and part of our effords is to have reproducible builds of our packages 2. Currently OpenSearch fails to be reproducible 3 and hopefully this will make it green.
Slightly unrelated to this PR but the reference of the Arch Linux artifacts on the project site are not merged yet 4
Cheers,
Leonidas

Hello,
Is there something pending on my side for this PR? I see a request to rebase it but all checks now pass. Should I proceed with rebase or it's OK as is?

Hey @inglor Coming to this from my present comment https://github.com/opensearch-project/opensearch-plugin-template-java/pull/38#issuecomment-1264690748 ;)
Just curious and for my knowledge can you share where is this gradle plugin used opensearch.global-build-info used?, may be we have consider documenting this,  https://github.com/opensearch-project/opensearch-plugins/blob/main/BUILDING.md#custom-gradle-plugins, thoughts? @dblock @bbarani


Feature request: TreeGrid search should expand results

If my grid is nested like:
A -> B -> C
and I search for C, grid will show me record A, and I will have to expand twice manually
to reach C. Grid should have an option to automatically expand search results if they are nested.
thanks,
David

I've analysed this and the problem is that record.w2ui.parent_recid only exists for records that are expanded. However, we can't just add parent_recid to all records, because there are checks for that property being set or not in other parts of the code, like sorting... So we'd need some other mechanism for finding out the parent id for an entry. Maybe I can think of something!

when a record is collapsed it doesn't have the parent recid as attribute?

Strangely, no. It's only set on the children when the parent is being expanded.


[BUG] /Seek on YouTube plays for half a second and then disconnects

Describe the bug
When playing a long youtube video on the bot and seeking to a specific place on the bot, The bot will seek to said location and then immidiatly disconnect
To Reproduce
Steps to reproduce the behaviour:

Play long youtube video with /play
/Seek more than 10 minutes into the video
Error Reproduced here

Expected behaviour
To play youtube videos and seek to a specific part in said video
Actual behaviour
Seeking to a part in a video disconnects the bot
Screenshots

Thanks for the report, I'll take a look into this later today

Hey there! I'm able to reproduce this issue so I'll try and find a fix for it as soon as possible. Thanks again for the report :)

I've not been able to find an easy fix to this bug for some time now and it seems that it may be a problem with the package that Melody depends on, not one with Melody's own code, but I am currently in the process of rewriting the entire bot, so this issue will most likely just disappear when the new version releases. For now though, I'll close this issue. If this is still happening when the new version releases, feel free to reopen.


[Commands] Add a command to dump symbolgraph

This adds a command to dump the symbolgraph using the
symbolgraph-extract tool. This is purely experimental for now.
rdar://problem/59287949

@swift-ci smoke test


chore: update build step to remove storybook

Netlify is timing out, removing the storybook build for now.

I think running them in sequence might be the next move once we get all these builds out haha

this actually isn't needed


GetOrCreatePlayerObject has useless assignment

In MDGameSession.GetOrCreatePlayerObject(int PeerId) we have this line,
string PlayerName = String.Format(PlayerNameFormat, PeerId);
This variable is never used, simply assigned. This of course is not a big deal, however I would suggest that this should be added to the MDPlayerInfo by default as most multiplayer games require a name, this could also serve as a good example on how to replicate values.
Personally I added the following to my MDPlayerInfo:
private String _playerName = "UnkownPlayer";
[MDReplicated]
public string PlayerName
{
	get { return _playerName; }
	set {
		_playerName = value;
		this.GetGameSession().NotifyPlayerNameChanged(PeerId);
	}
}

In addition I added a new event to the MDGameSession,
public event PlayerEventHandler OnPlayerNameChanged = delegate {};
public void NotifyPlayerNameChanged(int peerId)
{
	OnPlayerNameChanged(peerId);
}

I think this is something that almost every multiplayer game needs and it also serves as a simple example on how you can replicate values and send out a notification.

Thanks @Beider !
Would you be able to create a PR for this?

Done.


Import color control cluster

Problem
Import color control cluster
Summary of Changes
Make changes to compile and link
fixes #2053

@BroderickCarlin @mspang @hawk248 - adding more ppl for approval


Multiple AllDifferent constraints results in wrong solution

I have a situation where I gradually expand my model with variables, and as I go along I need to test solve before adding new variables.
All my intvars should always be different.
I have a situation where I get a solution where several of my intvars get the same value even though they are part of a AllDifferent.
Here is my model:
Constraints:
((A) // 5) != ((C) // 5)
((A) mod 5) != ((C) mod 5)
((A) // 5) == ((V) // 5)
((C) // 5) == ((Y) // 5)
((A) mod 5) == ((Y) mod 5)
((C) mod 5) == ((V) mod 5)
alldifferent(V,Y,A,C)
((T) // 5) != ((U) // 5)
((T) mod 5) != ((U) mod 5)
((T) // 5) == ((R) // 5)
((U) // 5) == ((S) // 5)
((T) mod 5) == ((S) mod 5)
((U) mod 5) == ((R) mod 5)
alldifferent(V,Y,A,C,R,S,T,U)
((A) // 5) != ((L) // 5)
((A) mod 5) != ((L) mod 5)
((A) // 5) == ((T) // 5)
((L) // 5) == ((K) // 5)
((A) mod 5) == ((K) mod 5)
((L) mod 5) == ((T) mod 5)
alldifferent(V,Y,A,C,R,S,T,U,K,L)
((I) // 5) != ((T) // 5)
((I) mod 5) != ((T) mod 5)
((I) // 5) == ((S) // 5)
((T) // 5) == ((V) // 5)
((I) mod 5) == ((V) mod 5)
((T) mod 5) == ((S) mod 5)
alldifferent(V,Y,A,C,R,S,T,U,K,L,I)
((I) // 5) != ((E) // 5)
((I) mod 5) != ((E) mod 5)
((I) // 5) == ((S) // 5)
((E) // 5) == ((D) // 5)
((I) mod 5) == ((D) mod 5)
((E) mod 5) == ((S) mod 5)
alldifferent(V,Y,A,C,R,S,T,U,K,L,I,D,E)
((S) // 5) != ((O) // 5)
((S) mod 5) != ((O) mod 5)
((S) // 5) == ((Q) // 5)
((O) // 5) == ((L) // 5)
((S) mod 5) == ((L) mod 5)
((O) mod 5) == ((Q) mod 5)
alldifferent(V,Y,A,C,R,S,T,U,K,L,I,D,E,Q,O)
Objective: None
And here are the values that the solution finds:
V : 14
Y : 24
A : 9
C : 19
R : 14
S : 24
T : 9
U : 19
K : 23
L : 22
I : 15
D : 24
E : 23
Q : 6
O : 11
As you can see V and R get the same value, and they are part of an AllDifferent constraint.
What am I doing wrong here?

I'm trying to attach my code here.

Attaching did not work, so here it comes:
`
import cpmpy as cp
import copy
def addSameCol(m, a, b):
m += (a % 5) == (b % 5)
def addSameRow(m, a, b):
m += (a // 5) == (b // 5)
def addRightOf(m, a, b):
addSameRow(m, a, b)
m += (a % 5) == (((b % 5) + 1) % 5)
def addUnder(m, a, b):
addSameCol(m, a, b)
m += (a // 5) == (((b // 5) + 1) % 5)
def addDifferentRow(m, a, b):
m += (a // 5) != (b // 5)
def addDifferentCol(m, a, b):
m += (a % 5) != (b % 5)
def addDiagonalRule(model, ci1, ci2, cl1, cl2):
# cl1 and cl2 are not on the same row nor column
addDifferentRow(model, ls[letters[cl1]], ls[letters[cl2]])
addDifferentCol(model, ls[letters[cl1]], ls[letters[cl2]])
# cl1 and ci1 are on the same row
addSameRow(model, ls[letters[cl1]], ls[letters[ci1]])
# cl2 and ci2 are on the same row
addSameRow(model, ls[letters[cl2]], ls[letters[ci2]])
# cl1 and ci2 are on the same column
addSameCol(model, ls[letters[cl1]], ls[letters[ci2]])
# cl2 and ci1 are on the same column
addSameCol(model, ls[letters[cl2]], ls[letters[ci1]])
def addRowRule(model, ci1, ci2, cl1, cl2):
# cl1 and cl2 are on the same row
addSameRow(model, ls[letters[cl1]], ls[letters[cl2]])
# cr1 is to the right of cl1
addRightOf(model, ls[letters[ci1]], ls[letters[cl1]])
# cr2 is to the right of cl2
addRightOf(model, ls[letters[ci2]], ls[letters[cl2]])
def addColumnRule(model, ci1, ci2, cl1, cl2):
# cl1 and cl2 are on the same column
addSameCol(model, ls[letters[cl1]], ls[letters[cl2]])
# cr1 is under cl1
addUnder(model, ls[letters[ci1]], ls[letters[cl1]])
# cr2 is under cl2
addUnder(model, ls[letters[ci2]], ls[letters[cl2]])
letters = {}
def createLetter(l, l_ls):
if l in letters:
return letters[l]
index = len(l_ls)
letters[l] = index
l_ls.append(cp.intvar(0, 24, name=l))
return index
ls is a collection of intvars
ls = []
def reset():
letters = {}
ls = []
def has_solution(check, answer):
# Create a single model to start with:
models = []
models.append(cp.Model())
# Add a letter pair at a time.
# Each letter pair should generate three new models per existing model, one for each rule
# If a model becomes impossible (= 0 solutions) it is not kept.

for index in range(len(check) // 2):
    check_letter_1 = check[index * 2]
    answer_letter_1 = answer[index * 2]
    check_letter_2 = check[index * 2 + 1]
    answer_letter_2 = answer[index * 2 + 1]
    print("Processing", answer_letter_1, "->", check_letter_1, "and", answer_letter_2, "->", check_letter_2)
    createLetter(check_letter_1, ls)
    createLetter(check_letter_2, ls)
    createLetter(answer_letter_1, ls)
    createLetter(answer_letter_2, ls)

    # Save good new models in a new array
    new_models = []

    for model in models:
        new_1 = copy.deepcopy(model)
        addDiagonalRule(new_1, check_letter_1, check_letter_2, answer_letter_1, answer_letter_2)
        new_1 += cp.AllDifferent(ls)
        if new_1.solve():
            new_models.append(new_1)

        new_2 = copy.deepcopy(model)
        addRowRule(new_2, check_letter_1, check_letter_2, answer_letter_1, answer_letter_2)
        new_2 += cp.AllDifferent(ls)
        if new_2.solve():
            new_models.append(new_2)

        new_3 = copy.deepcopy(model)
        addColumnRule(new_3, check_letter_1, check_letter_2, answer_letter_1, answer_letter_2)
        new_3 += cp.AllDifferent(ls)
        if new_3.solve():
            new_models.append(new_3)

    print("Number of new models:", len(new_models))
    print("")
    models = new_models
    if len(new_models) == 0:
        return False

if len(models) > 0:
    print("One solution:")
    print(letters.keys())
    model = new_models[0]
    print(model)
    res = model.solveAll(display=solutionCallback, solution_limit=1)

res = model.solveAll(display=ls, solution_limit=1)
    return True
return False

solution = {}
def solutionCallback():
global solution
solution = {}
for letter in letters:
var = ls[letters[letter]].value()
solution[var] = letter
print(letter, ":", var)
check    = "VYRSTKSVSDQL"
answer   = "ACTUALITIESO"
if has_solution(check, answer):
print("Has solution")
else:
print("Has no solution")
`

issue.txt

I had to rename my file to .txt for it to be attchable, but there it is.

That required some debugging.
So, as you are making new models by deep copying, the variables of the new alldifferents are not the same ones as the variables of the old alldifferents, and the variables that you have originally created and printing.
Why don't you make a copy by using the copy() method of our Model class?
It creates new models (so any change to that model does not happen to the copied one and vise versa), but the variables and constraints are the original ones.

I am very greatful for your help debugging this. Thank you for taking your time!
The reason I did not use copy() on the Model class is that it is documented like this:
"
Makes a shallow copy of the model. Constraints and variables are shared among the original and copied model.
"
So it sounds like it would actually share constraints. My copies need to be able to have different constraints.
But as you pointed out, it means that I need to handle the fact that the variables in the copies are not the same as the ones in the AllDifferents. I need to think about this.
I will test the Model.copy() as well just to be sure.

Well, this is interesting: using the model.copy() actually seems to work just fine for my use case!
I thought that it would mean that if I add a certain constraint to a model, the same constraints would be added to all copies made from that model.

Indeed, we need to specify it in the documentation.
We mean that the variable and constraint objects are shared, but the actual model with its list of constraints are different, so the copied model can have additional constraints.

Oh, that is exactly what I wanted all along then! That's great! :)
Again: thanks for taking your time helping beginners like me.

The documentation is now so clearly written that even I understand it. ;)
Thank you!


[AutoRelease] t2-network-2022-08-04-44276(Do not merge)

https://github.com/Azure/sdk-release-request/issues/2985
Live test success
https://dev.azure.com/azure-sdk/internal/_build?definitionId=1016
BuildTargetingString
azure-mgmt-network
Skip.CreateApiReview
true

issue link:https://github.com/Azure/sdk-release-request/issues/2985


Add example on how to do simple i18n

I feel like it would make sense to have a simple example on how to do i18n with next. I’m currently pondering what would be the best way to provide pages with a “select language" dropdown and how to reflect that in the URL and content.
If possible I'd like an example where the URL structure would follow the quite often seen pattern where the language code acts as the base path. Example below.
pages/index.js
example.com/en/
example.com/fr/

pages/item.js
example.com/en/item/1
example.com/fr/item/1

Talked shortly about this with @arunoda in next Slack.

I suppose, we could do this easily via custom routing.
See: https://github.com/zeit/next.js#custom-server-and-routing

Yep. Slice the first segment, turn it into a query parameter (lang)

I've been thinking a lot about this. There are many ways, IMO the language is a user settings and shouldn't be on the URL. I'll try to provide an example in the following days.

@rauchg Why have different pages for every language? How about passing that sliced query parameter to the pages, using it to fetch localized content from the API and then using the localized data returned by the API to render the page. Might be that I just don't understand your idea behind the ./pages/$lang/.

@sarukuku how else do you internationalize labels, UI, right-to-left and so on ? If you do it dynamically, you ship code to people who don't need it or want it

@rauchg True. In my case I'm loading all UI labels also from the API and I don't need to do right-to-left or deal with internationalizing currencies, dates etc. My case is just so simple that the code overhead is minimal.

Right, but for the example I think what I suggested is more broadly applicable. What do you think?

@rauchg I agree.


Table row height calculation is off.

It seems too short.

It also fits even less if you put taller content in the cells.

Table isn’t designed for variable-height cells.

The height doesn't necessarily vary from row to row. But there at least a few examples I have seen in published notebooks where taller content was consistently stuck into every row. Table is handy for this even if it was not explicitly intended to support this use –  an author making such a table can know to multiply rows by some constant to get the number they want.

The issue here is that Observable’s default styles are overriding Table’s default styles. With just Table’s styles, each row is 22px; with Observable’s styles applied, each row is 26px tall. I need to make these consistent.


Support for check constraints

The parser does not currently seem to support check constraints, for example:
CREATE TABLE products (
    product_no integer,
    name text,
    price numeric CHECK (price > 0)
);

For reference: https://www.postgresql.org/docs/current/ddl-constraints.html#DDL-CONSTRAINTS-CHECK-CONSTRAINTS

If I have time I will take a look.


Fix inbound connection issue

Purpose
Fix inbound connection issue

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Update originalCode.js

Description:
This pull request introduces an improvement to the image loading mechanism in the printing functionality. Instead of using a polling interval to check for image loading, it utilizes a MutationObserver. This change enhances efficiency and resource utilization by allowing the code to react only when changes in the DOM occur, rather than constantly polling it at intervals.
Changes:

Replaced interval-based image loading check with MutationObserver.
Enhanced efficiency and resource management by reacting to DOM changes instead of polling.

Benefits:

Improved performance and resource utilization.
Cleaner and more responsive codebase.

This change is intended to optimize the image loading process, particularly in scenarios where there are frequent changes to the DOM structure

Unfortunately this change no longer works for me. I am on Chrome 125.0.6422.61 (Official Build) (x86_64), and have tried with and without UBlock Origin enabled.
https://musescore.com/user/36902825/scores/7515920
With the new version (starting at 749a6af1e15539bdff7bc59fa85c7e0faa0c6ba8), the score area turns blank, then I get a timeout:

I went back to the code in 44f8bd35af0848619a0b40e90d30bab73bfb462a from 2023, copy/pasted the whole thing into the console, and that worked perfectly fine (with UBlock Origin enabled, if that matters):

Awesome project by the way, I've used this several times while starting to learn piano and it's been super helpful to have the scores available as simple PDFs I can annotate and take with me!

❤
- the author of one of the earlier versions of this piece of code

I did some testing and it looks like the new code only works if you tap the area outside of console or else it'll wait forever.  I like the approach to be honest, but I'll revert it back to the old version in the interest of making this as easy as possible for folks.

I did some testing and it looks like the new code only works if you tap the area outside of console or else it'll wait forever. I like the approach to be honest, but I'll revert it back to the old version in the interest of making this as easy as possible for folks.

However, there are many other improvements. Maybe not return to the old version, but just add some changes? @AnsonLai


file saved in logged in gdrive not one specific gdrive

if i have domain and hosting.then i can create web form where i have some input box and file uploading option .then data will be saved in mysql and file upload on hosting.
but i want to do it free .
Basically, what I am hoping to achieve is a simple html form with a few input text fields & a file upload option. I would like the input fields to populate a google sheet & the file upload to be sent to a specific folder only on one specific google drive id like<EMAIL_ADDRESS>The sheet should store the input field’s data, but also a url to the uploaded file.
i test your code its working perfectly but it saves file in logged in gdrive not specific gdrive.
when in chrome browser i am loggedin as waqas@gmail.com,it save file in waqas gdrive.
and
when in chrome browser i am loggedin as fahad@gmail.com,it save file in fahad gdrive.
but i want files always saved in<EMAIL_ADDRESS>is that possible or not

https://script.google.com/macros/s/AKfycbyJYDylkcWS-oJVCtgwzIyNNkiGm_KGOU9e8wDRV6Z8FkN6Vqk/exec
project uploaded here


Fix Static Pod Link.

Fix the link for Static Pod under Manual certificate renewal in Certificate Management with kubeadm task.
Fixes: #29186

Hi @daminisatya @onlydole  @kbarnard10
PTAL!

Thanks.
/lgtm
/approve


update(cmake): bump falco rules to v1.0.1

What type of PR is this?
/kind cleanup
Any specific area of the project related to this PR?
/area build
What this PR does / why we need it:
Which issue(s) this PR fixes:
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
update(cmake): bump falco rules to v1.0.1

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.35.1

LGTM label has been added.  Git tree hash: 4023928a861889f1301707512d63cb6436956b6e

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, jasondellaluce, leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,jasondellaluce,leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Paste files or folders in MacOS Finder from VSCode

When (a) file(s) or folder(s) is copied in VSCode, allow pasting of the same content in macOS Finder, for consistency, since macOS items can be copied into VSCode.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


LGTM.com will be shut down in December 2022

LGTM is approaching End of Life.  New commits will no longer be analyzed by the end of Nov 2022.
CodeQL should be enabled to replace LGTM.

Looks like the plan is that the LGTM team will open up a PR on our repo to add a GH action to enable CodeQL instead of LGTM. Source

That's what "should" happen.  SimpleReport can wait to see it that works, or correct it ahead of time.

This migration is complete!


refactor(core): migrate to Kubebuilder-style layout

https://github.ibm.com/IBMPrivateCloud/roadmap/issues/41448

Hi @hbradfield, this PR looks good for me.
There is only one point I want to suggest.
For the leader_election_role_binding,  if we bind it to SA ibm-auditlogging-operator as you did for the role binding, then these roles and rolebindings wouldn't be added into the bundle directory.
https://github.com/IBM/ibm-auditlogging-operator/blob/opsdk-v1/config/rbac/leader_election_role_binding.yaml#L11
You can update the SA in the above file and delete the bundle folder and use make generate-all to re-generate the bundle.
I just found this today. I think only the roles and rolebindings for the other service accounts, except for the operator service account, will be added into the bundle/manifests folder.

@hbradfield Thanks for your update, it looks good for me now.

/retest

/retest

@lauriet-ibm my cluster just went down, and i need to bundle this new image/create another catalog when i get a new one. ill probably have it tested by tmrw fyi, so ill give the green light once i get that up and tested

successful test of bundle/catalog image

@lauriet-ibm ready for review

/lgtm


Guidelines to asking for help

What's your idea?
In our Discord community, we have a popular text channel called “coding-help” (also applicable: “resume-check”) where club members are encouraged to ask for help. There are help-asking tips that many coding helpers find themselves repeating to club members asking for coding help, so it has been suggested that help-asking guidelines be created. This is intended to help boost the efficiency and quality of responding to coding help questions on our Discord server.

Resolved by @jjoeldaniel via #747! Thanks Joel!
Read the blog post on acmcsuf.com: https://acmcsuf.com/blog/747.


feat: Feature/find security groups

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Updated comments and changed one logging.info to a logging.error


Recursion fix

Separated variable assignment from declaration when assigning to function expression or arrow function to allow recursion.
fixes #187

Could you add a functional test (test/unit) that executes a recursive function?

Good idea - I just added a couple.


Datepicker: preverse bound date's time

Hi all,
I have both a datepicker and a timepicker which are both bound to the same Date object, but when changing the date I don't want the time to reset to 12:00 as seems to happen by default. Ideally the datepicker could be used to change the date component (day, month, year) without touching the time component.
Is there an option for this or should I go ahead and cook up a PR?

Can you come up with a reproduction? There are tests against this behavior in the datepicker, so this shouldn't happen.

@wesleycho You're right. I was unable to reproduce this in a plunkr, but it's definitely occuring in a project I'm working on even in an isolated scenario. I'll keep trying to repro.

Closing as there hasn't been a reproduction of the issue after a period of some time.

I've been able to reproduce this issue witth the datepicker popup - entering a date into the input field (instead of clicking a date) will reset the time. You can reproduce in this plunkr: http://plnkr.co/edit/6z5jMDrT3XGla7UyKzFM?p=preview


Runner improperly generating survey metadata

What is the context of this PR?
Describe what you have changed and why, link to other PRs or Issues as appropriate.
How to review
Describe the steps required to test the changes (include screenshots if appropriate).
Checklist

[ ] New static content marked up for translation
[ ] Newly defined schema content included in eq-translations repo

 Bug: Runner test cases improperly generating survey metadata


checks: rgw_num_rados_handles should be 1

It'd be nice to have a check for rgw_num_rados_handles. It shouldn't be set to values higher than 1. It will cause a lot of memory growth in RadosGW at little benefit. Also possible races in multisite.

I ended up using ceph --admin-deamon /path/to/socket  config show, which works great


Export command added

Integrated export command into current code base.
#149

Pull Request Test Coverage Report for Build 229

0 of 61 (0.0%)  changed or added relevant lines in 6 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-1.5%) to 59.036%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/seedu/address/logic/parser/AddressBookParser.java
0
1
0.0%

src/main/java/seedu/address/commons/util/CsvUtil.java
0
4
0.0%

src/main/java/seedu/address/logic/commands/ImportCommand.java
0
5
0.0%

src/main/java/seedu/address/logic/parser/ExportCommandParser.java
0
9
0.0%

src/main/java/seedu/address/logic/converters/CsvConverter.java
0
14
0.0%

src/main/java/seedu/address/logic/commands/ExportCommand.java
0
28
0.0%

Totals

Change from base Build 227:
-1.5%

Covered Lines:
1261

Relevant Lines:
2136

💛  - Coveralls


[MRG] Add pyproject.toml, typing, remove pydicom module

Project refresh for v2.0

I'll bump the support Python versions back down to 3.8 later, even if the typing is more of a headache


type guard on

When a type guard is used on a <template> for a named slot (also the default slot), then it is not recognized in the slot content.
A simple example:
<template>
  <MyComponent>
    <template v-if="status" #default>
      {{ status.message }}
    </template>
  </MyComponent>
</template>

<script lang="ts" setup>
import { ref } from "vue";
import MyComponent from "./MyComponent.vue";

const status = ref<{ message: string } | undefined>();
loadStatus();
async function loadStatus() {
  // load it from somewhere
}
</script>

This example assumes that MyComponent exists and behaves differently depending on if the default slot is available or not. Because of this the v-if can't be moved anywhere else.
TypeScript complains though that status in {{ status.message }} can be undefined. Duplicating the template element without #default solves the issue but looks odd in the template and serves no other pupose.

Thanks for the report, this is a similar problem to https://github.com/vuejs/vue-next/issues/3498.

This seems been fixed in 0.34.9 (or earlier), but happens again in 0.34.12

@NateScarlet we have never fix this. 😅 I guess your case it is a side effect by fixed #1264.

@johnsoncodehk Can/will this be fixed? Can you make a "special case" fix for this as suggested here: https://github.com/vuejs/core/issues/3498#issuecomment-812092665

@johnsoncodehk Can/will this be fixed? Can you make a "special case" fix for this as suggested here: vuejs/core#3498 (comment)

We can't because the situation is much more complicated.

We refactored the template codegen and now find a simple workaround.


change ZIB test_quartile

Closes #226

Codecov Report

Merging #227 (5274afa) into main (a4d3dbd) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #227   +/-   ##
=======================================
  Coverage   82.99%   82.99%
=======================================
  Files          29       29
  Lines        3564     3564
=======================================
  Hits         2958     2958
  Misses        606      606

Impacted Files
Coverage Δ

preliz/tests/test_quartile.py
100.00% <ø> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Update quickstart.md

Description of the change:
replace --plugins=go/v4-alpha with --plugins=go/v4 to reflect "Move go/v4 plugin from alpha to stable " in v1.33 https://sdk.operatorframework.io/docs/upgrading-sdk-version/v1.33.0/
Motivation for the change:
docs are out of date
Checklist
If the pull request includes user-facing changes, extra documentation is required:

[ ] Add a new changelog fragment in changelog/fragments (see changelog/fragments/00-template.yaml)
[ ] Add or update relevant sections of the docs website in website/content/en/docs

/ok-to-test

still need you to sign your commit so this can be merged

Closing as duplicate.


[stable/prometheus-operator] Allow list of ports for prometheus service

Is your feature request related to a problem? Please describe.
I have Thanos sidecar running in the prometheus pod and I want to use Thanos Query in the same cluster to query the service on port 10901 (thanos grpc port). I cannot add that in the prometheus chart as the port is a single value and not a list.
Describe the solution you'd like
Iterate over a list/map of ports for the service here: https://github.com/helm/charts/blob/master/stable/prometheus-operator/templates/prometheus/service.yaml#L35
Describe alternatives you've considered
None at this point, adding second port to the service in the chart is cleanest solution by far.
Additional context
Verified this works for Thanos integration by manually editing the service.

🚧 This chart is now deprecated.
Further development has moved to prometheus-community/helm-charts. The chart has been renamed kube-prometheus-stack to more clearly reflect that it installs the kube-prometheus project stack, within which Prometheus Operator is only one component.
If applicable, please re-open this issue there. Thanks!


Validation of mets.xml files against profile

Hi,
I'd like to start saying that I am convinced the following is not an E-ARK-CSIP issue, but rather a lack of understanding from my side. I'm used to working with XML files and validating them against schemas, but never been exposed to profiles - so sorry upfront for asking dumb questions ;-)
It looks to me like samples files I've had a look at (e.g. "ID-minimal_IP_with_schemas_filesec") go beyond what is permitted by the METS schema by opening extensions where the actual base schema hasn't foreseen any. e.g. adding a csip:OAISPACKAGETYPE attribute to a .
XMLspy throws an error in the validation process for the above file rgd.: "Attribute 'csip:OAISPACKAGETYPE' is not allowed in element " [..] Details: cvc-complex-type.3.2.1: Complex type definition '{anonymous}' of element  does not allow attribute 'csip:OAISPACKAGETYPE' and has no attribute wildcard.".
My question therefore: is there any way to validate mets files against a schema plus a profile, or are profiles just for documentation purposes ?
cheers
joel

I withdraw half of the question. It looks like I had an pre-1.11 version of the mets.xsd in my schema cache, which did not yet have xsd:anyAttribute with namespace ##other and processContents lax to those elements, which allows arbitrary new attributes to be added to these elements. Shame on me ;-)


HealthCheck ignoring spring.cloud.consul.config.enabled

I have a springboot app using spring-cloud-consul-config:1.0.0.M2 to read config from an external consul server. If my spring.could.consul.host is misconfigured the /health check endpoint reports "DOWN" even though the spring.cloud.consul.config.enabled=false. I was expecting spring.cloud.consul.config.enabled to remove consul considerations from the /health check.
With a properly configured and reachable spring.could.consul.host the /health check then passes even when the spring.cloud.consul.config.enabled=false
Can you confirm this is the desired behavior?

The health check is in  spring-cloud-consul-core not config. It knows nothing about config. To disable consul altogether set spring.cloud.consul.enabled=false.


Run on Linux VPS?

Hi. It is possible to run this bot on an Linux VPS?

Yes it should run. I'm taking Heroku as an example since they provide a free plan you will need to chang things like the binary location and chromedriver location, also I wouldn't recommend it since Faucet crypto website elements are changed randomly.
So this repository needs to be regularly updated as well so you will have to clone the changes to your worker.
Also since Faucet Crypto looks for chang in proxy if the ips of the workers are different it might throw the vpn or proxy detected error.
Be careful if you are doing this as your account might get banned and I won't be responsible for it.
Hoping this clarified any doubts you might have if it didn't please feel free to ask.

Thanks for your answer Mate. But i dont get it to work.
I have clone the whole code with
"git clone https://github.com/souravrs999/FaucetCryptoBot.git"
have installed selenium, chromedriver and brave browser.
my config looks like this:
[Browser]
browser-mode =
driver-path = /usr/local/bin/chromedriver
browser-binary-location = /usr/bin/brave-browser

[User]
mail = Username
password = Password
[Misc]
debug = True
proxy =

But if i run
"python bot.py"
i get:
`Traceback (most recent call last):
File "/root/FaucetCryptoBot/env/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 72, in start
self.process = subprocess.Popen(cmd, env=self.env,
File "/usr/lib/python3.8/subprocess.py", line 854, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1702, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/bin/chromedriver'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "bot.py", line 26, in
faucet_bot()
File "bot.py", line 5, in faucet_bot
bot = FaucetCryptoBot()
File "/root/FaucetCryptoBot/FaucetCryptoBot/fcbot.py", line 24, in init
self.driver = Chrome(options=self._get_opts(), executable_path=self.driver_path)
File "/root/FaucetCryptoBot/env/lib/python3.8/site-packages/selenium/webdriver/chrome/webdriver.py", line 73, in init
self.service.start()
File "/root/FaucetCryptoBot/env/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 81, in start
raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
(env) root@localhost:~/FaucetCryptoBot# `

Well the error shown here means that that the script was unable to find the chromedriver at the location /usr/local/bin/chromedriver
Did you download the chromedriver and move it to this directory with appropriate permissions?


Not obvious how to finish review

Refs https://github.com/microsoft/vscode/issues/122245

Open a PR (not checked out)
Start a review
:bug: unable to figure out how to close review

The comments each have a "Open Review" which seems weird as actions next to "Add Comment". That's more of a navigational element. I expected a "Go To" icon in the top right toolbar of the editor (like in diffing).

There are multiple "Comment" actions on the description and it's not clear how finish the review:

Might I suggest using what github.com uses:
Using a Finish your review (#) button instead of "Comment"

+1 but I think this is a duplicate of https://github.com/microsoft/vscode-pull-request-github/issues/1078

Duplicate of https://github.com/microsoft/vscode-pull-request-github/issues/1078


💡 [FEAT] Support for saving and opening icalendar files.

Is your feature request related to a problem? 😢 Please describe.
dooit doesn't have any standard method to save and open todo data. To sync them between my different devices (where dooit might not be usable) and multiple different management tools, we need one.
Describe the solution you'd like   🤔
Implementing the icalendar files support, maybe optionally by enabling an option and specifying a directory to read from and write to. Most other todo tools support it and we could sync it using CalDAV.
Additional context 📝
todoman is a CLI tool that implements it.
python-icalendar and python-ics might help implementing this.

Hi there! I didn't know about Caldev. Thanks for sharing this!
Indeed I got a lot of suggestions to implement something that'd integrate dooit with other tools and I'm working on a plugin system that could achieve this using python scripts!
Something like this:
class Plugin:
   ...

    def pre_process(self) -> None:
        # All the pre-processing stuff happens here
        # After it's done, mark the `ready` param as True
        pass
        self.ready = True

    def run(self) -> bool:
        # Do your magic here!
        # Return True to call again else return False
        return False

    def run_on_exit(self) -> None:
        pass

It would make it really easy to implement when dealing with simple text files in the local system as well as communicating with APIs online :D

If the icalendar files are parseable, then dooit can use its API to add those. I don't have any plans to implement it right now. Hopefully someone can make a plugin

Could you leave it open with a label like accepting-patches or the like? I imagine duplicates will be opened over time and being able to keep them together would help those interested all keep track of any status updates on a single issue instead of being spread out. Thanks.

I guess creating a separate repo/discussion would be great? Or I can do labels as well

A discussion thread could suffice I suppose. My concern there is that they don't show up in issue/PR searches (by default? ever?). But it's better just an old, closed issue.

ok fair enough!


Dependency update

This PR updates the dependencies and in the process fixes audit issues that occured:

↓

Thanks!!

7.1.1


Font Request: Cascadia Code

Font Name
Cascadia Code
Link to font source
https://github.com/microsoft/cascadia-code/
Link to font license
https://github.com/microsoft/cascadia-code/blob/main/LICENSE
Additional context
Cascadia Code is really one of the best monospaced fonts, allowing custom ligatures, nerd fonts/powerline and a custom italic font, and: it is VERY popular amongst developers, so you should definitely add it!

Relevant: https://github.com/google/fonts/issues/2179


How to make fragment shaders for screen pixels?

Hallo
I wasn't sure where to ask this so I open a new thread
With regards to shaders, I'd like to use glsl shaders to change the color of screen pixels (e.g. make blur screen filter and lens distortion shader effects). However, how would I then use this shader and integrate it within the dotrix in order to apply to screen pixels?
For example , if i have the following openGL glsl shader code below :
out vec4 colorOut;

void main()
{
    colorOut = vec4(1.0, 0.0, 0.0, 1.0);
}

Do I first compile this to spir-v to make it vulkan compatible? And then how would i add this compiled shader to dotrix to affect all screen color pixels? Also , if i have uniforms in my shader, how can i access and modify them via dotrix ? Apologies for my lack of info on the topic, and shaders in general I am very new to it!
Thanks for answers my previous questions as well!

Hello,
This feature was recently implemented, but as a side effect of pipelines refactoring, so it was never tested.

In dotrix_core::renderer::pipeline you can find methods for construction of existing pipelines. Check them and choose one that suits more to the model which shader you want to customize. It should either be a static model or skinned model (supports skeletal animation).
Now lets pretend you need a static model. Check methods new_for_static_model and default_for_static_model. You will need to implement your own Pipeline constructor that will use new_for_static_model inside. The method takes compiled shaders as parameters.
In your startup system create the pipeline and add it to Renderer using add_pipeline method and store returned id somewhere.
Then when you spawn an entity in the world, set pipeline property of the Model to the Id obtained from previous method. This should make it work.

Now to the shader. If you use glsl, you will have to compile it. Check existing shaders in https://github.com/lowenware/dotrix/tree/main/dotrix_core/src/renderer/shaders there are two types: .glsl and .wgsl. In future we will port them all to .wgsl. You can also check how to compile .glsl ones in the Makefile, you will need to insall 3rd party tools for that.

Hi
Thanks a lot for the info! I think I will leave this out for time being, I am not too familiar with shaders as a whole and pipelines. hopefully i can try it in future !
Thanks

Sure thing, I will close this for now


notify change failed for device

Prerequisites

[ ] I am running the latest version
[ ] I checked the documentation and found no answer
[ ] I checked to make sure that this issue has not already been filed

Expected Behavior
I am making a connection to the ESP32 device with bluetooth low energy. There is no problem for me to connect, read and write to the ESP32 device. But when I use "monitorCharacteristicForDevice" I get " [BleError: Characteristic beb5483e-36e1-4688-b7f5-ea07361b26a8 notify change failed for device ? and service 4fafc201-1fb5-459e-8fcc-c5c9c331914b]" I get such an error.
Context

Library version: ^2.0.3
Platform: Android
Platform logs (logcat/XCode):No
JS logs:No
Contents of the package.json file:

  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "lint": "eslint .",
    "start": "react-native start",
    "test": "jest"
  },
  "dependencies": {
    "@reduxjs/toolkit": "^1.9.2",
    "@types/react-redux": "^7.1.25",
    "i18n-js": "^4.2.2",
    "moti": "^0.22.0",
    "react": "18.2.0",
    "react-native": "0.71.2",
    "react-native-base64": "^0.2.1",
    "react-native-ble-plx": "^2.0.3",
    "react-native-device-info": "^10.3.0",
    "react-native-linear-gradient": "^2.6.2",
    "react-native-material-menu": "^2.0.0",
    "react-native-modal": "^13.0.1",
    "react-native-permissions": "^3.6.1",
    "react-native-reanimated": "^2.14.4",
    "react-native-svg": "^13.8.0",
    "react-native-svg-transformer": "^1.0.0",
    "react-native-vector-icons": "^9.2.0",
    "react-redux": "^8.0.5",
    "redux": "^4.2.1"
  },
  "devDependencies": {
    "@babel/core": "^7.20.0",
    "@babel/preset-env": "^7.20.0",
    "@babel/runtime": "^7.20.0",
    "@react-native-community/eslint-config": "^3.2.0",
    "@tsconfig/react-native": "^2.0.2",
    "@types/i18n-js": "^3.8.4",
    "@types/jest": "^29.2.1",
    "@types/react": "^18.0.24",
    "@types/react-native-base64": "^0.2.0",
    "@types/react-native-vector-icons": "^6.4.13",
    "@types/react-test-renderer": "^18.0.0",
    "babel-jest": "^29.2.1",
    "eslint": "^8.19.0",
    "jest": "^29.2.1",
    "metro-react-native-babel-preset": "0.73.7",
    "prettier": "^2.4.1",
    "react-test-renderer": "18.2.0",
    "typescript": "4.8.4"
  },
  "jest": {
    "preset": "react-native"
  }
}

Formatted code sample or link to a repository:

const connectToDevice = async (device: any) => {
 device
      .connect()
      .then(async (device: any) => {
        bleManager.stopDeviceScan();
        setSelectedDevice(device);
        setWifiListPageVisible(true);
        return device.discoverAllServicesAndCharacteristics();
      })
      .then(async (device: any) => {

        device
          .readCharacteristicForService(
            SERVICE_UUID,
            MESSAGE_CHARACTERISTIC_UUID,
          )
          .then((valenc: any) => {
            console.log(base64.decode(valenc?.value));
          });

        device.monitorCharacteristicForService(
          SERVICE_UUID,
          MESSAGE_CHARACTERISTIC_UUID,
          (error: BleError | null, characteristic: Characteristic | null) => {
            if (error) {
              console.log(error);
              return;
            }
            if (characteristic?.value) {
              console.log(
                'Message update received: ',
                base64.decode(characteristic?.value),
              );
            }
          },
        );
      });

}

I ran it on Android 12 without any problem. I get the error on Android 6.0.1.


Android Build Failing

Tested versions
Blazium-dev [4.3]
System information
Win 10
Issue description
When exporting an Android project with debug symbols marked true, packaging can't find the Mipmap version of the editor Icons
When exporting an Android project without debug symbols, packaging fails to find the keystore.
I'm using custom java path in the editor settings section.
Steps to reproduce
Grab a copy of the android export templates from latest release, try to package for android.
Minimal reproduction project (MRP)
N/A

when we tested this last, it seems there was no default supplied option for these images and it expected you to supply your own.
We added so back up paths for this so that something should be supplied by default if you didn't supply anything yourself.
Need to follow up on this.


Missing conversion from StringLiteral to unicode_type

Reporting a bug

[x] I have tried using the latest released version of Numba (most recent is
visible in the change log (https://github.com/numba/numba/blob/master/CHANGE_LOG).
[x] I have included a self contained code sample to reproduce the problem.
i.e. it's possible to run as 'python bug.py'.

This:
from numba import typeof, types
from numba.core.typing import Context

x = types.literal('string literal')
print(x, type(x))
print("conversion:", x.can_convert_to(Context(), types.unicode_type))

does this:
Literal[str](string literal) <class 'numba.core.types.misc.StringLiteral'>
conversion: None

I think it should be possible to convert a StringLiteral to a unicode_type but not the converse.
A can_convert_to() method needs adding to this class:
https://github.com/numba/numba/blob/3461bcb76a479bffbadbef24b6662107229e2a8a/numba/core/types/misc.py#L40-L41
xref: https://numba.discourse.group/t/how-to-pass-string-argument-to-numba-njit-python-function-from-inside-another-whilst-specifying-signature-type/663 which hits this bug.

Would fixing this also fix #6897?


The spring cloud gateway app can not start up after upgrade form 1.1.10-RELEASE to 2.1.3

env:
spring-cloud-starter-gateway 3.1.3
spring-cloud-kubernetes-discovery 2.1.3
When the app starts, gets below error.
"
Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reactiveCompositeDiscoveryClient' defined in class path resource [org/springframework/cloud/client/discovery/composite/reactive/ReactiveCompositeDiscoveryClientAutoConfiguration.class]: Unsatisfied dependency expressed through method 'reactiveCompositeDiscoveryClient' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'kubernetesReactiveDiscoveryClient' defined in class path resource [org/springframework/cloud/kubernetes/discovery/KubernetesDiscoveryClientAutoConfiguration$Reactive.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.cloud.client.discovery.ReactiveDiscoveryClient]: Factory method 'kubernetesReactiveDiscoveryClient' threw exception; nested exception is org.springframework.cloud.kubernetes.discovery.DiscoveryServerUrlInvalidException: spring.cloud.kubernetes.discovery-server-url must be specified and a valid URL.
"
I want to confirm that, in my spring cloud gateway app,  I use spring cloud Kubernetes discovery to get services from K8s API server, it works well with 1.1.x-RELEASE. And for upgrading to 2.0.0+ version, if it means I need to deploy a discovery server and config the discovery server URL in my spring cloud gateway app yaml? Thanks.

Sounds like you want to use spring-cloud-starter-kubernetes-client or spring-cloud-starter-kubernetes-fabric8.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Sounds like you want to use spring-cloud-starter-kubernetes-client or spring-cloud-starter-kubernetes-fabric8.

Hi, I just want the spring cloud gateway discovering the service deployed in the K8s cluster by adding some configuration in spring-boot properties, so when the HTTP request comes, the gateway can route the request to the correct service for processing.
Configuration as below.
spring.cloud.discovery.client.health-indicator.enabled=false
spring.cloud.kubernetes.discovery.enabled=true
spring.cloud.gateway.discovery.locator.enabled=false
spring.cloud.gateway.discovery.locator.lower-case-service-id=true
spring.cloud.kubernetes.reload.enable=true
spring.cloud.kubernetes.reload.mode=polling
spring.cloud.kubernetes.reload.period=5000
spring.cloud.kubernetes.client.namespace=dev
spring.cloud.gateway.routes[0].id=my-service1-route
spring.cloud.gateway.routes[0].uri=lb://my-service1:5010
spring.cloud.gateway.routes[0].predicates[0]=Path=/my-service1/**
spring.cloud.gateway.routes[1].id=my-service2-route
spring.cloud.gateway.routes[1].uri=lb://my-service2:5020
spring.cloud.gateway.routes[1].predicates[0]=Path=/my-service2/****

I will hava a try

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.

@ryanjbaxter @yumingtao I'm facing the same issue. I created this test project: https://github.com/rcbandit111/mockup/blob/master/src/main/resources/application.yml
More description: https://stackoverflow.com/questions/78249919/discoveryserverurlinvalidexception-spring-cloud-kubernetes-discovery-server-url
Can you advice any possible solution, please?

It solved the issue. Thanks


Added push() method

I was looking for a fluent way to add items to collection but wasn't able to find one.
Current alternatives:
SimpleData::collection()->toCollection()->push('foo'); //Technically works if underlying collection is `\Illuminate\Support\Collection`, but cannot be properly type hinted because `$items` is `\Illuminate\Support\Enumerable`.

$collection = SimpleData::collection();
$collection[] = 'foo'; //This works because `DataCollection` implements `ArrayAccess`

This proposed method is the same as \Illuminate\Support\Collection::push().

In v4 these methods are deprecated since we want to move away from DataCollections to regular Collections, we're not going to add any extra methods in such case just use a Collection from now on.

Wasn't aware of upcoming v4 changes and I see it has been tagged recently. Thank you!

Yeah has been in the making for a year, glad I've could finally release it 😄
I hope to completely remove DataCollection in v5 but that requires some extra thinking about how to handle a few scenarios, that's something for the next weeks.


Prepare 0.10.0-rc.1

We could update the NOTE in the readme to invite users to start new projects on this version, start looking into upgrading existing ones and leaving feedback.