Adds an additional prompt to the reg flow for uncertain voters

What's this PR do?
This pull request adds a different prompt for uncertain voters to the question during registration regarding their voter reg status.
How should this be reviewed?
This is still in draft mode (I still need to add some tests and the analytics tracking), but does the JS seem reasonable? It feels clunky to me, but it gets the job done 😂 Open to suggestions to clean it up!
Any background context you want to provide?
We want to reach the portion of our new members!
Relevant tickets
References Pivotal # 172848257.
Checklist

[x] This PR has been added to the relevant Pivotal card.
[ ] Documentation added for new features/changed endpoints.
[ ] Added appropriate feature/unit tests.
[ ] If new attributes were added to users, there is a corresponding PR to surface these in Aurora.
[ ] If new attributes were added to users, then the data team already knows about these changes.

Looking good so far!


feat: Add V2 Inference API support for OVMS runtime

Motivation
Intel's OpenVINO Model Server has historically only supported the v1 (TFS) prediction API, but may also support v2 in upcoming versions.
Modifications
Adjust the built-in OVMS adapter to advertise the V2 gRPC Service APIs in addition to V1.
Result
KServe V2 Inference API will work with OVMS in ModelMesh Serving once supported by the OVMS container.

/lgtm


[BUG] Impossible to schedule a run for a certain time using @daily frequency

Mage version
v0.9.62
Describe the bug
If I set the frequency to daily and choose a start date and time the schedule of the next run is still at 00:00 (ie the "Next run date") instead of the specified time. I don't see any other option to set run time except for the Start date and time
To reproduce

Create a new trigger
Choose schedule type
set Frequency to daily
choose current date as start date
Save changes
Observe "next run date" at 00:00

Expected behavior
Expected either of the 2 options:

the next run date is day apart from the Start date
or
there's a field to set the exact run time (for daily, weekly, monthly frequency)

Screenshots

Operating system
OS macOS Ventura 13.6.3 (22G436)
Google Chrome Version 121.0.6167.139 (Official Build) (arm64)
Additional context
No response

The start time is when the trigger becomes active.
If you want to schedule it to be a specific time of the day, you can use custom frequency and cron expression: https://docs.mage.ai/orchestration/triggers/schedule-pipelines

Then probably it makes sense to convert this to a feature request.
I don't see much value in introducing the daily, weekly, etc options that can only be run at 00:00. From my experience, that wouldn't work in the majority of real-world cases. Yes, one can switch to cron expression (that I did), but introducing these other options that are rarely used means just cluttering the interface.
Again, that is my opinion from my own experience, someone else might have a different one.
I'm happy to create a feature request if you think it makes sense.


Update Rubies in Travis CI

Coverage remained the same at 100.0% when pulling 943d0a60b443fd64057e232c482c74534a3db255 on use-ruby-2.4.1-travis into 1d452a2c7d91ad2190fb453a0b3e266f87ea7c54 on master.


Fix errors with Professor Distribute implementation

Do all work for this task in a branch called issue-127
Fix errors occurring between professor distribute implementation (#101), and changes to Rainbow Card attributes that prevent pages from loading.

Added publication for professor accounts so they can see and send cards to other registered accounts on the app.
Added a check for ProfCard elements so the page can render if there are no cards yet
Displays # of duplicate cards the current user has now


Automatic PR from RestAPI-PR2134

Generated from RestAPI PR: https://github.com/Azure/azure-rest-api-specs/pull/2134

Codecov Report

Merging #1694 into master will increase coverage by <.01%.
The diff coverage is 80%.

@@            Coverage Diff             @@
##           master    #1694      +/-   ##
==========================================
+ Coverage   55.36%   55.36%   +<.01%
==========================================
  Files        4190     4190
  Lines       99539    99543       +4
==========================================
+ Hits        55108    55112       +4
  Misses      44431    44431

Impacted Files
Coverage Δ

...t/storage/v2017_06_01/storage_management_client.py
38.23% <0%> (ø)
:arrow_up:

.../storage/v2017_06_01/operations/skus_operations.py
24.24% <100%> (+2.36%)
:arrow_up:

...17_06_01/operations/storage_accounts_operations.py
82.45% <100%> (+0.07%)
:arrow_up:

.../mgmt/storage/v2017_06_01/operations/operations.py
25.8% <100%> (+2.47%)
:arrow_up:

...storage/v2017_06_01/operations/usage_operations.py
93.93% <100%> (+0.18%)
: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 adc3a3b...755afd8. Read the comment docs.

Did it manually


[FLINK-31599] Update kafka version to 3.4.0

The failed test was flaky prior to this patch -  https://issues.apache.org/jira/browse/FLINK-25451.

Tested locally and everything passes. +1 LGTM. I re-triggered CI, will wait for a green light just to be sure.

Is there a chance to revive this PR? We are on link 1.18 and tried to force Kafka 3.4.0 (because of CVE) and hit that error:
2023-11-06 15:19:58
java.lang.RuntimeException: Incompatible KafkaProducer version
	at org.apache.flink.streaming.connectors.kafka.internals.FlinkKafkaInternalProducer.getField(FlinkKafkaInternalProducer.java:406)
	at org.apache.flink.streaming.connectors.kafka.internals.FlinkKafkaInternalProducer.getField(FlinkKafkaInternalProducer.java:393)
	at org.apache.flink.streaming.connectors.kafka.internals.FlinkKafkaInternalProducer.resumeTransaction(FlinkKafkaInternalProducer.java:217)
	at org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.recoverAndCommit(FlinkKafkaProducer.java:1038)
	at org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.recoverAndCommit(FlinkKafkaProducer.java:99)
	at org.apache.flink.streaming.api.functions.sink.TwoPhaseCommitSinkFunction.recoverAndCommitInternal(TwoPhaseCommitSinkFunction.java:442)
	at org.apache.flink.streaming.api.functions.sink.TwoPhaseCommitSinkFunction.initializeState(TwoPhaseCommitSinkFunction.java:390)
	at org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.initializeState(FlinkKafkaProducer.java:1222)
	at org.apache.flink.streaming.util.functions.StreamingFunctionUtils.tryRestoreFunction(StreamingFunctionUtils.java:189)
	at org.apache.flink.streaming.util.functions.StreamingFunctionUtils.restoreFunctionState(StreamingFunctionUtils.java:171)
	at org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.initializeState(AbstractUdfStreamOperator.java:95)
	at org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.initializeOperatorState(StreamOperatorStateHandler.java:122)
	at org.apache.flink.streaming.api.operators.AbstractStreamOperator.initializeState(AbstractStreamOperator.java:274)
	at org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.initializeStateAndOpenOperators(RegularOperatorChain.java:106)
	at org.apache.flink.streaming.runtime.tasks.StreamTask.restoreGates(StreamTask.java:753)
	at org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.call(StreamTaskActionExecutor.java:55)
	at org.apache.flink.streaming.runtime.tasks.StreamTask.restoreInternal(StreamTask.java:728)
	at org.apache.flink.streaming.runtime.tasks.StreamTask.restore(StreamTask.java:693)
	at org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:953)
	at org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:922)
	at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:746)
	at org.apache.flink.runtime.taskmanager.Task.run(Task.java:562)
	at java.base/java.lang.Thread.run(Thread.java:839)
Caused by: java.lang.NoSuchFieldException: topicPartitionBookkeeper
	at java.base/java.lang.Class.getDeclaredFieldImpl(Native Method)
	at java.base/java.lang.Class.getDeclaredFieldInternal(Class.java:930)
	at java.base/java.lang.Class.getDeclaredField(Class.java:905)
	at org.apache.flink.streaming.connectors.kafka.internals.FlinkKafkaInternalProducer.getField(FlinkKafkaInternalProducer.java:402)

Also main has kafka 3.4.0 but is not released.

This patch was merged in f970dd7 and should be available since the connector version 3.0.0.

Right, that's also what I thought. so I added the dependecy:

@jm-paulin Kafka version upgrade to 3.4.x is not part of the 3.0.x Kafka connector series.
We're treating it as a major new feature and would only come with a new 3.1.x Kafka connector series.
It might actually make sense to release 3.1.0 soon actually, given that we have a handful of new features collected already.
How urgent are you in upgrading to Kafka 3.4.x?

Ah, that explains @tzulitai. thanks you!
We are looking at moving to Kafka 3.4.0 early next year (Jan 2024). This upgrade is driven by CVE-2023-25194.

@jm-paulin I think we can definitely do a 3.1.x release before that. Given the CVE it would make sense to do this sooner as well. First step would be to start a thread in dev mailing lists to ask for a 3.1.x release soon-ish. Do you want to do that?

@tzulitai I sent an email to the dev flink mailing list, but apparently no-one picked it. Is there a dedicated list for the connectors?


⚠ Bofrost.at has degraded performance

In 9f8bbf3, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1228 ms

Resolved: Bofrost.at performance has improved in 2816cfe after 16 minutes.


setFieldValue may not work properly

Hi, sorry to disturb you again. I just found a minor issue: sometimes the setFieldValue may not work properly.
Description:
I have a select A: if value is 'one', set B's value to 'true'
a toggle B: if value is 'true', show C; else hide C
a input C: empty
Step 1: select A to 'one', B is still 'false', however C is shown. (issue)
Step 2: select A to 'two', B changed to 'true', C is still shown.
Step 3, toggle B to false
Step 4: select A to 'one', here is the issue: in UI B is 'true', however in 'Form values' window the B is 'false'
Step 5: input anything in input C, the 'Form values' B changes to 'true'
Here is a simple demo: https://designer.letsform.dev/f/fv83p7ihqo
And here is a gif:

Hi @ghoshorn it should be fixed now.
And no, you're not disturbing at all, your feedback is actually really valuable, it's part of the process to refine and improve software.
🖖


Socket connection successful but then fail to establishing SSH session

I was able to SSH into my IoT device yesterday, but this morning when I try to connect it again. it fails to establish SSH session.
2021-08-25 09:25:53.501096-0400 [1387:464804] NMSSH: Socket connection to <IP_ADDRESS> on port 22 succesful
2021-08-25 09:25:53.551438-0400 [1387:464804] NMSSH: Failure establishing SSH session

It seems like socket connection success and then fails.
Any help is appreciated.

hello.did you fix it?

hello.did you fix it?

The problem for me is our IoT device has a security update, which changes the kex algorithm from<EMAIL_ADDRESS>to curve25519-sha256.
The precompiled version of libssh in this repo does not support curve25519-sha256. So you need to run this script to replace the libssh.
https://github.com/Frugghi/iSSH2
After replacing the libssh, everything running fine.

Thanks!!!

same issue, can use this repo directly:
https://github.com/speam/NMSSH


Proposal to extend list of date/time packages

since this seems to be the most up-to-date version of awesome-zig, I'm making this proposal here :)
date / time
we could add:

travisstaloch/date-zig : fast calendar algorithms ported to Zig (Cassio Neri's EAF)
leroycep/chrono-zig : Zig port of the Rust chrono crate
karlseguin/zul : some date/time handling functionality among the other useful stuff

timezones
we could also extend "Date and Time" to "Date, Time and Timezones":

leroycep/zig-tzif : TZif parser that also handles POSIX timezone strings

Sounds good to me, welcome to open an PR.

Sounds good to me, welcome to open an PR.

done, see PR #22. I wasn't sure if we should make subsections for date/time and timezones. At the moment, I think it is best to have all the packages in one date/time/timezones section.

At the moment, I think it is best to have all the packages in one date/time/timezones section.

Agreed.


[move-prover] Opted out of daily-testing Prover on release-1.3 and release-1.4 #9014-(115)

Motivation
release-1.3 and release-1.4 are excluded because the developement is
being done only in latest.
Especially, release-1.4 had to be excluded in the target-branch of the daily test routine for Prover because of the flakiness (or butterfly effect) in proving TreasuryCompliance::update_exchange_rate in that branch.
Have you read the Contributing Guidelines on pull requests?
yes
Test Plan
CI/CD tests

/canary

:sunny: Canary successful

/land


Added peerDependencies to package.json

What's Changing
Added react and react-dom to peerDependencies to package.json
Change Type

[ ] documentation
[x] patch
[ ] minor
[ ] major

:rocket: PR was released in v3.0.5 :rocket:


Geo near

HI how can i get near function .
something like this in mongo
db.places.aggregate([ { $geoNear: { near: [11.7681, 40.6819], distanceFi
eld: "distance", spherical: true,maxDistance:7,distanceMultiplier:3959 } } ])
up and running in my laravel framework

$proximos = Perfil::raw(function($collection)
{
return $collection->aggregate(
[
'$geoNear' => [
'near' => [
'coordinates' => [-19.927954,-43.938203]
],
'sphercial' => 'true'
]
]);
});
InvalidArgumentException in Aggregate.php line 93:
$pipeline is not a list (unexpected index: "$geoNear")

'gps_location' => [
	'$nearSphere' => [
		'$geometry'    => [
			'type'        => 'Point',
			'coordinates' => [
				$latitude,
				$longitude
			]
		],
		'$maxDistance' => $rangeInKm * self::meters_per_km
	]
]

If anyone is having problems with their index, make sure you know if your database has been configured using GeoJSON or Legacy Coordinate Pairs. As you might suppose, GeoJSON is an object that can have several properties whereas legacy coordinate pairs is just a pair of coordinates.
More on this: https://docs.mongodb.com/manual/reference/glossary/#term-legacy-coordinate-pairs
I've inherited a database with legacy pairs and below is some code which may help. I haven't tested it extensively but it appears to be working. Scroll to the very bottom of this mongo doc for the function that got me on the right track: https://docs.mongodb.com/manual/reference/operator/query/near/#op._S_near
$query = Shop::raw(function($collection)
{
return $collection->find([
'loc' => [
'$near' => [
-105.0376084,
39.7620472
]
]
]);
});

 User::raw(function($collect) use($radius){             return $collect->aggregate([                 [                     '$geoNear' => [                         'near' => [                             'type' => 'Point',                             'coordinates' => [110.410375, -7.781981]                         ],                         '$maxDistance' => $radius,                         'distanceField' => 'dist.calculated',                         'spherical' => true                     ]                 ]             ]);         });
I hope this helps


Unable to run Gradient with latest changes: Erlang error: {:noproc, {:gen_server, :call,

I'm  runnning on this project/commit
https://github.com/eksperimental/checker_basic/tree/bd2bcbe717863c4a1c0c7acc1866072815608e52
mix gradient give me
Generated checker app
Typechecking files...
** (ErlangError) Erlang error: {:noproc, {:gen_server, :call, [:gradualizer_db, {:get_spec, :erlang, :get_module_info, 2}, 5000]}}
    (gradualizer 0.1.3+build.1080.ref9e629ad) /home/eksperimental/checker_basic/deps/gradualizer/src/typechecker.erl:4985: :typechecker.type_check_form_with_timeout({:function, 0, :__info__, 1, [{:clause, 0, [{:atom, 0, :module}], [], [{:atom, 0, Checker.Application}]}, {:clause, 0, [{:atom, 0, :functions}], [], [{:cons, 0, {:tuple, 0, [{:atom, 0, :start}, {:integer, 0, 2}]}, {:cons, 0, {:tuple, 0, [{:atom, 0, :stop}, {:integer, 0, 1}]}, {nil, 0}}}]}, {:clause, 0, [{:atom, 0, :macros}], [], [nil: 0]}, {:clause, 0, [{:atom, 0, :exports_md5}], [], [{:bin, 0, [{:bin_element, 0, {:string, 0, [250, 165, 114, 93, 168, 241, 30, 158, 117, 40, 133, 192, 247, 244, 156, 211]}, :default, :default}]}]}, {:clause, 0, [{:match, 0, {:var, 0, :Key}, {:atom, 0, :attributes}}], [], [{:call, 0, {:remote, 0, {:atom, 0, :erlang}, {:atom, 0, :get_module_info}}, [{:atom, 0, Checker.Application}, {:var, 0, :Key}]}]}, {:clause, 0, [{:match, 0, {:var, 0, :Key}, {:atom, 0, :compile}}], [], [{:call, 0, {:remote, 0, {:atom, 0, :erlang}, {:atom, 0, :get_module_info}}, [{:atom, 0, Checker.Application}, {:var, 0, :Key}]}]}, {:clause, 0, [{:match, 0, {:var, 0, :Key}, {:atom, 0, :md5}}], [], [{:call, 0, {:remote, 0, {:atom, 0, :erlang}, {:atom, 0, :get_module_info}}, [{:atom, 0, Checker.Application}, {:var, 0, :Key}]}]}, {:clause, 0, [{:atom, 0, :deprecated}], [], [nil: 0]}]}, [], false, {:env, %{{:__info__, 1} => [{:type, 1, :bounded_fun, [{:type, 1, :fun, [{:type, 1, :product, [{:type, 1, :union, [{:atom, 1, :attributes}, {:atom, 1, :compile}, {:atom, 1, :functions}, {:atom, 1, :macros}, {:atom, 1, :md5}, {:atom, 1, :exports_md5}, {:atom, 1, :module}, {:atom, 1, :deprecated}]}]}, {:type, 1, :any, []}]}, []]}], {:start, 2} => {:type, 0, :any, []}, {:stop, 1} => {:type, 0, :any, []}}, %{}, %{}, %{module: Checker.Application, records: %{}, types: %{}}, false, false, true, [], 30, :none}, [return_errors: true, app_path: nil])
    (stdlib 3.17.1) lists.erl:1280: :lists.foldr/3
    (gradualizer 0.1.3+build.1080.ref9e629ad) /home/eksperimental/checker_basic/deps/gradualizer/src/typechecker.erl:4938: :typechecker.type_check_forms/2
    (gradualizer 0.1.3+build.1080.ref9e629ad) /home/eksperimental/checker_basic/deps/gradualizer/src/gradualizer.erl:201: :gradualizer.type_check_forms/3
    (gradient 0.1.0) lib/gradient.ex:55: Gradient.maybe_gradualizer_check/2
    (gradient 0.1.0) lib/gradient.ex:30: Gradient.type_check_file/2
    (elixir 1.13.4) lib/stream.ex:572: anonymous fn/4 in Stream.map/2
    (elixir 1.13.4) lib/enum.ex:4475: Enumerable.List.reduce/3

This happens after latest changes Gradient and Gradualizer

Hmmm, I cannot reproduce this problem - log and env info attached:
Typechecking files...
lib/checker/job.ex: The atom on line 824 is expected to have type list(term()) but it has type :none

lib/checker/job.ex: Call to undefined function Checker.Util.uniq_id/0 on line 12
lib/checker/job_supervisor.ex: Call to undefined function Checker.Util.uniq_id/0 on line 8
lib/checker/mock.ex: Undefined remote type Checker.url/0 on line 15
lib/checker/server.ex: Call to undefined function Checker.Util.uniq_id/0 on line 11
lib/checker/server.ex: Call to undefined function Checker.Util.pid/1 on line 126
lib/checker/server.ex: Call to undefined function Checker.terminate/2 on line 202
lib/checker/server_supervisor.ex: Call to undefined function Checker.Util.uniq_id/0 on line 8
lib/checker/util.ex: Undefined remote type Checker.url/0 on line 4
lib/checker/util.ex: The function call on line 33 is expected to have type pos_integer() but it has type integer()
31   @spec uniq_id() :: pos_integer()
32   def uniq_id() do
33     System.unique_integer([:positive, :monotonic])
34   end
35

lib/checker.ex: The spec child_pid/1 on line 126 follows another spec, but only one spec per function clause is allowed
lib/checker.ex: Call to undefined function Checker.Util.child_pid/1 on line 128
lib/checker.ex: Call to undefined function Checker.Util.child_pid/1 on line 136
22:53:56 erszcz @ x6 : ~/work/eksperimental/checker_basic ((bd2bcbe...) %)
$ git st
HEAD detached at bd2bcbe
Untracked files:
  (use "git add <file>..." to include in what will be committed)
	.tool-versions

nothing added to commit but untracked files present (use "git add" to track)
22:54:12 erszcz @ x6 : ~/work/eksperimental/checker_basic ((bd2bcbe...) %)
$ git diff
22:54:13 erszcz @ x6 : ~/work/eksperimental/checker_basic ((bd2bcbe...) %)
$ asdf current erlang
erlang          24.0.5          /Users/erszcz/.tool-versions
a22:54:26 erszcz @ x6 : ~/work/eksperimental/checker_basic ((bd2bcbe...) %)
$ asdf current elixir
elixir          1.13.1          /Users/erszcz/work/eksperimental/checker_basic/.tool-versions

my setup is:
elixir          1.13.4-otp-24
erlang          24.3.3

I think the issue is related to different erlang versions , changing the versions, at one point it asked to install hex, and after that the error was gone.. Now even switching to otp 25, the error disappeared.

For the record, I think the issue can be solved for running:
mix local.rebar --force

Can someone create a Elixir project, add Gradient and test it with the latest elixir and with latest OTP 24, please?
elixir          1.13.4-otp-24
erlang          24.3.4
I still see this problem and I have no idea how to solve it.

I managed to track it to elixir 1.13.4-otp-24 in asdf.
it does not happend with elixir 1.13.3-otp-24 or earlier versions.
There are some changes in 1.13.4 related to the Elixir compiler, it is probably that.

Apparently it was a faulty installation, I uninstalled elixir 1.13.3-otp-24 and reinstalled it and it works.

I'm closing this as it didn't happen again.
If anyone gets hits by this, try reinstalling Elixir.


Issue 144 rh from csv

Enables creation of reports from smac2-output. Call CLI with --file_format smac2. There are multiple issues, including:

we need to specify instance_file and test_instance_file in scenario-file (even if they point to the same file), because some plots require both instances... (#146)
sometimes there are errors thrown on different parts of the analysis.
all relevant files (run_and_results-(...).csv, paramstrings-(...).txt, param.pcs, traj-run-1.txt) are expected in the specified file

Codecov Report

Merging #147 into development will decrease coverage by 2.42%.
The diff coverage is 63.65%.

@@               Coverage Diff               @@
##           development     #147      +/-   ##
===============================================
- Coverage        73.31%   70.88%   -2.43%
===============================================
  Files               20       24       +4
  Lines             2308     2648     +340
===============================================
+ Hits              1692     1877     +185
- Misses             616      771     +155

Impacted Files
Coverage Δ

cave/plot/configurator_footprint.py
99.61% <ø> (ø)
:arrow_up:

cave/feature_analysis/feature_analysis.py
16% <0%> (-0.11%)
:arrow_down:

cave/plot/algorithm_footprint.py
60.64% <100%> (ø)
:arrow_up:

cave/analyzer.py
78.23% <100%> (ø)
:arrow_up:

cave/reader/smac2_reader.py
15.15% <15.15%> (ø)

cave/cave_cli.py
81.39% <42.85%> (-3.79%)
:arrow_down:

cave/utils/convert_for_epm.py
81.57% <50%> (-14.98%)
:arrow_down:

cave/reader/configurator_run.py
66.66% <73.33%> (ø)

cave/reader/base_reader.py
85% <85%> (ø)

cave/utils/csv2rh.py
85.06% <85.06%> (ø)

... and 7 more

Continue to review full report at Codecov.

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

I addressed some issues in latest commit, I'm working on the rest.

@AndreBiedenkapp this turned out to be more complicated than anticipated. I dropped the all-in-one-option for now, CSV needs configurations and instance-features to be defined in extra files. Everything else was a bit of a hassle because of circling dependencies. I think this should be good for now and expendable if need arises for more specific CSV-formats. I added examples for smac2 and (toyexample) for CSV. When running smac2, there is an error with forward-selection for categorical hyperparameters with yes/no-options. I propose a new issue for that, because for one this PR is very large and kind of due, for the other it's a different topic. I added some documentation for the formats and automatic api-doc-generation.

@shukon could you elaborate what the issue with one CSV is?

I see. If you'd like we can merge this pull request for now and continue working on getting one CSV input running. I find having one CSV is more intuitive and expect users to have their data available in that format.
Just one more question. Why would having a smac2 style trajectory "break" things? As far as I can see (from a very brief glance at the code) the only check needed to be done.
We would need to check if there is a column named configuration or not. If there is a configuration column in the trajectory, read it similarly to here and feed those configuration dictionaries to the config space. But I could be mistaken here and it might not be as easy as I imagine.
Regarding your comment:

I'm sorry that this takes so long, I just started off the wrong way with this one I think.
Don't worry. Good work takes time and I'd rather have a reader that works great from the beginning than one that needs constant bugfixes :)

@shukon. Is this ready for review again?

@AndreBiedenkapp yes!


Gobblin fails on Kafka to HDFS pull job

I'm trying to pull data from Kafka to HDFS using Gobblin.
Gobblin version (compiled from github source code with command sudo ./gradlew clean build -PuseHadoop2 -PhadoopVersion=2.7.1 -x test):
0.6.2-546-g431188b

Hadoop version:
Hadoop <IP_ADDRESS>.4.2.0-258
Subversion git@github.com:hortonworks/hadoop.git -r 13debf893a605e8a88df18a7d8d214f571e05289
Compiled by jenkins on 2016-04-24T16:02Z
Compiled with protoc 2.5.0
From source with checksum 2a2d95f05ec6c3ac547ed58cab713ac
This command was run using /usr/hdp/<IP_ADDRESS>-258/hadoop/hadoop-common-<IP_ADDRESS>.4.2.0-258.jar

Gobblin job:
job.name=GobblinKafkaQuickStart
job.group=GobblinKafka
job.description=Gobblin quick start job for Kafka
job.lock.enabled=false
job.schedule=0 0/2 * * * ?

kafka.brokers=hd-mgt03:6667,hd-mgt02:6667,hd-mgt04:6667

source.class=gobblin.source.extractor.extract.kafka.KafkaSimpleSource
extract.namespace=gobblin.extract.kafka

writer.builder.class=gobblin.writer.AvroHdfsDataWriter
writer.file.path.type=tablename
writer.destination.type=HDFS
writer.output.format=AVRO

data.publisher.type=gobblin.publisher.BaseDataPublisher

mr.job.max.mappers=1

metrics.reporting.file.enabled=true
metrics.log.dir=/gobblin-kafka/metrics
metrics.reporting.file.suffix=txt

bootstrap.with.offset=earliest

fs.uri=hdfs://hdfs:8020
writer.fs.uri=hdfs://hdfs:8020
state.store.fs.uri=hdfs://hdfs:8020

mr.job.root.dir=/kafka/working
state.store.dir=/kafka/state-store
task.data.root.dir=/kafka/task-data
data.publisher.final.dir=/kafka/job-output

I'm trying to run gobblin-mapreduce.sh from gobblin-dist/bin folder, but getting error:
Exception in thread "main" gobblin.runtime.JobException: Job job_GobblinKafkaQuickStart_1464962113982 failed
	at gobblin.runtime.AbstractJobLauncher.launchJob(AbstractJobLauncher.java:363)
	at gobblin.runtime.mapreduce.CliMRJobLauncher.launchJob(CliMRJobLauncher.java:84)
	at gobblin.runtime.mapreduce.CliMRJobLauncher.run(CliMRJobLauncher.java:61)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
	at gobblin.runtime.mapreduce.CliMRJobLauncher.main(CliMRJobLauncher.java:106)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
	at org.apache.hadoop.util.RunJar.main(RunJar.java:136)

Log file contains error:
2016-06-03 16:55:17 MSK ERROR [main] gobblin.runtime.AbstractJobLauncher  321 - Failed to launch and run job job_GobblinKafkaQuickStart_1464962113982: java.lang.NoSuchFieldError: DEFAULT_MR_AM_ADMIN_USER_ENV
java.lang.NoSuchFieldError: DEFAULT_MR_AM_ADMIN_USER_ENV
	at org.apache.hadoop.mapred.YARNRunner.createApplicationSubmissionContext(YARNRunner.java:470)
	at org.apache.hadoop.mapred.YARNRunner.submitJob(YARNRunner.java:285)
	at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:240)
	at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1290)
	at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1287)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:422)
	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657)
	at org.apache.hadoop.mapreduce.Job.submit(Job.java:1287)
	at gobblin.runtime.mapreduce.MRJobLauncher.runWorkUnits(MRJobLauncher.java:198)
	at gobblin.runtime.AbstractJobLauncher.launchJob(AbstractJobLauncher.java:296)
	at gobblin.runtime.mapreduce.CliMRJobLauncher.launchJob(CliMRJobLauncher.java:84)
    at gobblin.runtime.mapreduce.CliMRJobLauncher.run(CliMRJobLauncher.java:61)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
	at gobblin.runtime.mapreduce.CliMRJobLauncher.main(CliMRJobLauncher.java:106)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:136)

What could be the reason for this error? How can I fix it?

Sometimes this occurs when Gobblin is compiled against a different version of Hadoop vs. the version your cluster is running.
It seems you are using the Hortonworks distribution, so I would recommend compiling Gobblin against the Hortonworks distribution rather than the 2.7.1 version available on Maven Central.
There are direction here for how to do this for the Cloudera distribution, it should be a similar setup for compiling against the Hortonworks distribution: http://gobblin.readthedocs.io/en/latest/user-guide/FAQs/#how-do-i-compile-gobblin-against-cdh

@Dim0N22 were you able to run your job successfully?

Can you please elaborate, what you mean by Hortonworks distribution and not 2.7.1.
HDP 2.3 and 2.4 both are using 2.7.1 versions. Can you please clarify here.


TestSwitchSetEndpoints: context deadline exceeded

via https://semaphoreci.com/coreos/etcd/branches/master/builds/1776
It looks like something is seriously broken with ReadIndex and partition recovery:
2017-04-09 00:16:07.707346 I | raft: d56fdc573c7069b4 became candidate at term 27
2017-04-09 00:16:07.707471 I | raft: d56fdc573c7069b4 received MsgVoteResp from d56fdc573c7069b4 at term 27
2017-04-09 00:16:07.707614 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to 7b2ecb1a82e3c734 at term 27
2017-04-09 00:16:07.707781 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to f9518fb0cb0c63f2 at term 27
2017-04-09 00:16:07.896573 I | raft: d56fdc573c7069b4 is starting a new election at term 27
2017-04-09 00:16:07.896797 I | raft: d56fdc573c7069b4 became candidate at term 28
2017-04-09 00:16:07.896905 I | raft: d56fdc573c7069b4 received MsgVoteResp from d56fdc573c7069b4 at term 28
2017-04-09 00:16:07.897091 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to 7b2ecb1a82e3c734 at term 28
2017-04-09 00:16:07.897281 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to f9518fb0cb0c63f2 at term 28
2017-04-09 00:16:08.056689 I | raft: d56fdc573c7069b4 is starting a new election at term 28
2017-04-09 00:16:08.057065 I | raft: d56fdc573c7069b4 became candidate at term 29
2017-04-09 00:16:08.057209 I | raft: d56fdc573c7069b4 received MsgVoteResp from d56fdc573c7069b4 at term 29
2017-04-09 00:16:08.057356 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to 7b2ecb1a82e3c734 at term 29
2017-04-09 00:16:08.057493 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to f9518fb0cb0c63f2 at term 29
2017-04-09 00:16:08.216756 I | raft: d56fdc573c7069b4 is starting a new election at term 29
2017-04-09 00:16:08.217156 I | raft: d56fdc573c7069b4 became candidate at term 30
2017-04-09 00:16:08.217341 I | raft: d56fdc573c7069b4 received MsgVoteResp from d56fdc573c7069b4 at term 30
2017-04-09 00:16:08.217573 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to 7b2ecb1a82e3c734 at term 30
2017-04-09 00:16:08.217811 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to f9518fb0cb0c63f2 at term 30
2017-04-09 00:16:08.346794 I | raft: d56fdc573c7069b4 is starting a new election at term 30
2017-04-09 00:16:08.347075 I | raft: d56fdc573c7069b4 became candidate at term 31
2017-04-09 00:16:08.347219 I | raft: d56fdc573c7069b4 received MsgVoteResp from d56fdc573c7069b4 at term 31
2017-04-09 00:16:08.347466 I | raft: d56fdc573c7069b4 [logterm: 2, index: 8] sent MsgVote request to 7b2ecb1a82e3c734 at term 31
2017-04-09 00:16:40.208764 W | etcdserver: timed out waiting for read index response
2017-04-09 00:16:40.209205 W | raft: A tick missed to fire. Node blocks too long!
2017-04-09 00:16:40.209666 I | etcdserver/api/v3rpc: grpc: Server.processUnaryRPC failed to write status: stream error: code = DeadlineExceeded desc = "context deadline exceeded"
2017-04-09 00:16:40.210186 I | integration: terminating<PHONE_NUMBER>357692494 (unix://localhost:33496816023576924940)
2017-04-09 00:16:40.210583 I | integration: terminating<PHONE_NUMBER>405296426 (unix://localhost:16936502734052964260)
2017-04-09 00:16:40.211279 I | integration: terminating<PHONE_NUMBER>514090169 (unix://localhost:21765704325140901690)
2017-04-09 00:16:40.211839 W | etcdserver: failed to send out heartbeat on time (exceeded the 10ms timeout for 5.129033ms)
2017-04-09 00:16:40.212097 W | etcdserver: server is likely overloaded
2017-04-09 00:16:40.212517 W | etcdserver: failed to send out heartbeat on time (exceeded the 10ms timeout for 21.294913951s)
2017-04-09 00:16:40.212691 W | etcdserver: server is likely overloaded
2017-04-09 00:16:40.214579 I | raft: 7b2ecb1a82e3c734 is starting a new election at term 2
2017-04-09 00:16:40.214983 I | etcdserver/api/v3rpc: transport: http2Server.HandleStreams failed to read frame: read unix localhost:3349681602357692494->@: use of closed network connection
2017-04-09 00:16:40.216137 W | etcdserver: failed to send out heartbeat on time (exceeded the 10ms timeout for 21.273374154s)
2017-04-09 00:16:40.216692 W | etcdserver: server is likely overloaded
2017-04-09 00:16:40.218539 W | raft: A tick missed to fire. Node blocks too long!
2017-04-09 00:16:40.218987 W | raft: A tick missed to fire. Node blocks too long!
2017-04-09 00:16:40.219286 I | raft: 7b2ecb1a82e3c734 became candidate at term 3
2017-04-09 00:16:40.219602 I | raft: 7b2ecb1a82e3c734 received MsgVoteResp from 7b2ecb1a82e3c734 at term 3
2017-04-09 00:16:40.219798 I | raft: 7b2ecb1a82e3c734 [logterm: 2, index: 8] sent MsgVote request to d56fdc573c7069b4 at term 3
2017-04-09 00:16:40.219955 I | raft: 7b2ecb1a82e3c734 [logterm: 2, index: 8] sent MsgVote request to f9518fb0cb0c63f2 at term 3
2017-04-09 00:16:40.220181 I | raft: raft.node: 7b2ecb1a82e3c734 lost leader f9518fb0cb0c63f2 at term 3
2017-04-09 00:16:40.220705 I | raft: 7b2ecb1a82e3c734 is starting a new election at term 3
2017-04-09 00:16:40.221044 I | raft: 7b2ecb1a82e3c734 became candidate at term 4

Still happens (with master branch), very rarely though.
Posting full logs for reference:  TestSwitchSetEndpoints.txt

Haven't seen if for 6 months. Will revisit if it happens again.


Importing CSV, GPX, GeoJSON with additional Marker Description

Hi,
is there an example available on how to import CSV, GPX, or GeoJSON including an additional marker description which is applied to the marker icon on the map? The marker description in the file shall be used in a pop-up, when clicking on the specific marker on the map.
Beside the Latitude, Longitude each waypoint in the file should contain something like:

Title / Name of the waypoint
A marker type like "Hotel", "Airpoirt", etc. or at least the possibility for a link to an icon.
Textual description

Does OpenLayers support this?
Which file format is preferred for this (which format supports such fields/tags)?
Is there an example (I only know https://openlayers.org/en/latest/examples/gpx.html but this does not use additional information)?
Thanks.

For GPX, you'd have to use the readExtensions callback on ol/format/GPX to parse the additional information and store it as ol/Feature attributes. For GeoJSON, you get all attributes for free. For CSV, it is up to you anyway how you store attributes.
Once you have features with the desired attributes set, you can proceed defining a style that renders the information. For example, if your features have name and type attributes, you could have a vector layer like this:
new VectorLayer({
  source: mySource,
  style(feature, resolution) {
    const name = feature.get('name');
    const type = feature.get('type');
    return new Style({
      image: new Icon({
        src: `${type}.png`
      }),
      text: new Text({
        text: name
      })
    });
  }
});


Use pseudo random numbers

If we would use pseudo randomness, we could use the list of events and laws in the game to "replay" it, and so debug a game that was played by someone and produced unexpected results.
Maybe jsrand can help

I close this issue in favor of #133

Oh, I thought that this might be a prerequisite for #133 and also for another thing, we want to achieve: Being able to replay / reproduce any game played by a player. The latter could by yet another issue. Or we put it all in #133 which is quite a task then.

Ok, you're right. The good thing is, we can re-open.


chore(main): release 0.0.2

:robot: I have created a release beep boop
0.0.2 (2024-10-02)
Miscellaneous Chores

Bump to Tauri v2 release. (#42) (57b3274)
Fix release-please automation. (#43) (1156c47)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v0.0.2
:sunflower:


ASR/MSR Control Measure Lines- Text+markers don't scale with line symbol

Regardless of the size of the line for the ASR/MSR Control Measure Lines, the text markers stay the same size. The symbol definition in the stylx. file needs to be addressed in order to fix this scalability issue.
Here is a visual example of the text markers not scaling properly.

You can see that in both of these lines, the text stays the same size.

Linking to another example: https://github.com/Esri/military-features-data/pull/130#issuecomment-135528036

@csmoore Just for clarification, this is only a remaining issue in Runtime. I'll check to see if they're still not working before I attempt a fix.

@csmoore I was able to reduce the size of the ASR/MSR control measure lines so they don't appear larger than the line itself. Changing the symbol definition in the stylx. doesn't work, because the arrow and text are all considered text symbols, not line symbols. Reducing their size is my best-fit solution, and will be in my commit for the final stylx on Friday (11/13)

Thanks (screenshot of new?) - this may have just been a misunderstanding on my part about how this text label should behave - it now makes sense that it keeps a fixed point size regardless of the geometry/line size for a given scale.
Though speaking of label sizes&scales, we do eventually need to make sure these labels use/obey the same label scale as the layer - similar to an issue noted by Bob here: https://github.com/Esri/military-features-data/issues/69

You'll see that the text symbols and arrow are now more or less the same size as the text labels of other control measure features:

Now, at least, the labels are not oversized and getting in the way when you zoom in and out of the overlay area of interest

verified (that this behaves like the other labels)


Add utf-8 support to input, fixes #21

non ascii bytes won't be ignored
one can seek over and delete whole utf-8 codepoints at a time
the cursor will be positioned properly around double width chars

Any ETA on this?

This is excellent. Thank you! :tada:


Add swtpm example

Requires a PR in Gramine: https://github.com/gramineproject/gramine/pull/1210

This change is

@stefanberger Would you be interested in checking this PR?
I'm particularly interested in the security guarantees for swtpm with Gramine-SGX. Like, did I encrypt all files that swtpm creates, and whether I need to add some other tools inside Gramine-SGX.

If Gramine-SGX transparently encrypts files, then obviously you are safe. If not then the state at least can be encrypted with a key passed via command line to swtpm. If swtpm was made to log, then this log will not be encrypted and there's no possibility to pass a key, but you are not logging.


feat: enable karrier one for testnet/mainnet

Description
Describe the changes or additions included in this PR.
Test plan
How did you test the new or updated feature?

Release notes
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:
[ ] REST API:

@joyqvq I have ran cargo insta test -p sui-swarm-config & cargo insta review.
And rebase to main.
Please check CI goes all green.
CC : @mskd12


Operator templates

Create template classes for linear and non-linear operators:
class Operator(ABC):
    __init__(domain, range)
    # shape of image
    domain: tensor.shape
    # shape of k-space
    range: tensor.shape

   @abstractmethod
   def set_par(*args)

    @abstractmethod
    def fwd(data: tensor) -> tensor

class LinearOperator(Operator):
    @abstractmethod
    def calc_norm() -> float

    @abstractmethod
    def adj(data: tensor) -> tensor

    @abstractmethod
    def fwd_adj(data: tensor) -> tensor

class NonLinearOperator(Operator):
    @abstractmethod
    def deriv(data: tensor) -> tensor

Check list:

[ ]     Create branch
[ ]     Implement code
[ ]     Add comments
[ ]     Implement tests
[ ]     Squash commmits
[ ]     Create PR
[ ]     Assign reviewer(s) to PR

class Operator(ABC, nn.Module):
    @abstractmethod
    def forward(data:torch.Tensor) -> tensor

class LinearOperator(Operator):
    @abstractmethod
	  def _adjoint(data:tensor):

    @property
	  def adjoint(self):
		  operator = deepcopy(self)
		  operator._adjoint, operator.forward = operator.forward, operator._adjoint

Close by PR #104

I reopen this to collect some more thoughts about linear operator and autograd.

Maybe we can add a default adjoint to linearoperator that uses (really inefficient) autograd call to do the adjoint and prints a warning.
This could be useful for quick prototyping without having to think about both operations.

we could rename our forward and adjoint in the operator implementation to _forward_impl and _adjoint_impl. And add a forward and adjoint to the linearoperator base class that call a custom autograd.function that sets  the backward of the forward as the adjoint_impl and vice-versa instead of having to use autograd.
So an operator implementation can either implement forward and adjoint and use autograd or only implement to *_impl have the baseclass do the logic for the backward.

This is for example useful for sparse matrix multiplication.  If the forward uses a csr matrix, the backward is a factor of 10 slower than if the backward uses the adjoint which uses a copy of the matrix already converted to csc layout in the init.

Alternativly, we could do the second bullet point for each linearoperator where we think it matters manuelly in the implementation.
We should test for some often used operators if autograd is slower than using the adjoint.

Alternativly , we could do the second bullet point for each linearoperator where we think it matters manuelly in the implementation.
We should test for some often used operators if autograd is slower than using the adjoint.


BUG: Token Permissions Check suggests fix files that are actually right

Describe the bug
In the example bellow from the SARIF JSON, the Token Permission Score is actually 9 but the details mentions only files with permission set to read and all of them with a "update your workflow using <app.stepsecurity link>", but there is nothing to be fixed since the
    {
      "name": "Token-Permissions",
      "score": 9,
      "reason": "non read-only tokens detected in GitHub workflows",
      "details": [
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/build_test.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/build_test.yml/main?enable=permissions",
        "Info: topLevel permissions set to 'read-all': .github/workflows/cflite_pr.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/cflite_pr.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/cifuzz.yml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/cifuzz.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/codeql.yml/main?enable=permissions",
        "Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/codeql.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/coverity.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/coverity.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/development_freeze.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/development_freeze.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/differential-shellcheck.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/differential-shellcheck.yml/main?enable=permissions",
        "Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/differential-shellcheck.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/differential-shellcheck.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/issue_labeler.yml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/issue_labeler.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/labeler.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/labeler.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/linter.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/linter.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/mkosi.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/mkosi.yml/main?enable=permissions",
        "Info: topLevel permissions set to 'read-all': .github/workflows/scorecards.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/scorecards.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/unit_tests.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/unit_tests.yml/main?enable=permissions"
      ],
      "documentation": {
        "short": "Determines if the project's workflows follow the principle of least privilege.",
        "url": "https://github.com/ossf/scorecard/blob/c40859202d739b31fd060ac5b30d17326cd74275/docs/checks.md#token-permissions"
      }
    },

Reproduction steps
Steps to reproduce the behavior:

run scorecard --repo=https://github.com/systemd/systemd --show-details

Expected behavior
I though on two possible behavior to this output
The first one is less verbose on the details and does not explicitly mention all the files verified, just the ones that are not complied with Token-Permissions
    {
      "name": "Token-Permissions",
      "score": 9,
      "reason": "non read-only tokens detected in GitHub workflows",
      "details": [
        "Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/differential-shellcheck.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/differential-shellcheck.yml/main?enable=permissions",
      ],
      "documentation": {
        "short": "Determines if the project's workflows follow the principle of least privilege.",
        "url": "https://github.com/ossf/scorecard/blob/c40859202d739b31fd060ac5b30d17326cd74275/docs/checks.md#token-permissions"
      }
    },

The second one still mention them (for log or just info purpose) but remove the wrong "fix it" part, since it is not a fixable info
 {
      "name": "Token-Permissions",
      "score": 9,
      "reason": "non read-only tokens detected in GitHub workflows",
      "details": [
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/build_test.yml:16",
        "Info: topLevel permissions set to 'read-all': .github/workflows/cflite_pr.yml:12",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/cifuzz.yml:9",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:24",
        "Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:34",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/coverity.yml:13",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/development_freeze.yml:11",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/differential-shellcheck.yml:11",
        "Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/differential-shellcheck.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/systemd/systemd/differential-shellcheck.yml/main?enable=permissions",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/issue_labeler.yml:9",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/labeler.yml:11",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/linter.yml:14",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/mkosi.yml:45",
        "Info: topLevel permissions set to 'read-all': .github/workflows/scorecards.yml:20",
        "Info: topLevel 'contents' permission set to 'read': .github/workflows/unit_tests.yml:13"
      ],
      "documentation": {
        "short": "Determines if the project's workflows follow the principle of least privilege.",
        "url": "https://github.com/ossf/scorecard/blob/c40859202d739b31fd060ac5b30d17326cd74275/docs/checks.md#token-permissions"
      }
    },

Additional info
Valuable Feedback from discussion at https://github.com/ossf/scorecard-action/issues/1017

Good catch. The remediation should not show for read token. The second option is the expected one.

Sent https://github.com/ossf/scorecard/pull/2486
Thanks!

Hi @laurentsimon, there is a related issue here: security-events and other scopes should not ding the score if used at the job level. I proposed this in https://github.com/ossf/scorecard/issues/2338. This was fixed for several scopes in the PRs related to that issue, but not all of the scopes were addressed.
I will check the code and confirm which scopes are not yet fixed.


Added country dependent state dropdown on address segment of the profile, shipping and payment pages (#431-country-dependent-state-dropdown)

…
Created dropdown in place of input for the state.
Created a function stateOptions from fetching state for country.
Related Issues

Closes #431
Short Description and Why It's Useful

Screenshots of Visual Changes before/after (If There Are Any)

IMPORTANT NOTICE - Remember to update CHANGELOG.md with description of your change
Contribution and Currently Important Rules Acceptance

[ ] I read and followed contribution rules

Should be merge after https://github.com/DivanteLtd/vue-storefront/pull/4680


Add Uzo-Felix

Related issue

What changes does this PR do?
Screenshots (If any)
Questions

Thank  you


[Question] Product based teired plans?

Just wondered how to go about pushing someone to another planned by how many products they have.
We store their products in the DB through a sync button, which runs a function that pulls in the data from the API.
I've tried running a redirect to the next billing plan but it does not work. Also this way is not very secure, as they could just go back and that's that.
$number_of_products = Product::where('shop_id', '=', $shopifyID)->count();
           \Log::info("Number of products " . $number_of_products);
           switch ($number_of_products){
               case $number_of_products < 1001 :
                   \Log::info("Move to plan 1");
                   return redirect()->route('billing', ['plan_id' => 1]);
                   break;
               case $number_of_products > 1000 && $number_of_products < 2501 :
                   \Log::info("Move to plan 2");
                   return redirect()->route('billing', ['plan_id' => 2]);
                   break;
               case $number_of_products > 2500 && $number_of_products < 5001 :
                   \Log::info("Move to plan 3");
                   return redirect()->route('billing', ['plan_id' => 3]);
                   break;
               default:
                  return redirect()->route('billing', ['plan_id' => 1]);
           }

Still having a mess with it but thought I'd see what your thoughts where.

Hi @Kyon147 , it seems this a a issue within your implementation not within the package. @ohmybrew is there already a stackoverflow section for this kind of questions?

@Kyon147 Not really sure what you're trying to do here. Looks correct, but yes could be the implementation, not sure what you mean by the merchant going back. I'll close for now.
@StefanNeuser Theres no SO section... good idea though.


Develop clear messaging for vendors re Cloud Pathfinder approach

Describe the issue
Work with PSB to develop clear messaging for vendors around why we're doing what.
Which Sprint Priority is this issue related to?
The 'Milestone' should clearly list Sprint Priorities - which one is this issue related to?
Additional context
Add any other context, attachments or screenshots
Definition of done

obtain list of topics to address for vendor communications
draft messaging on each - possibly FAQ-style
review and incorporate input from CP leadership team
Gen to review with ADMs

2021-01-11 - followed up with Paul on this task and he asked for 2 days of my time to help with it this sprint.

2021-01-11 - followed up with Paul on this task and he asked for 2 days of my time to help with it this sprint.

Most of the work on this has been done by Paul, reviewed with Gen and revised accordingly. While there may be ongoing additions to the list of questions and answers, this piece of work is substantially completed.


fix: Declaration of a missed property

so that it is not considered to be dynamic by PHP 8.2

Already fixed at b8f85a2f

Nice, thanks a lot @pjbakker 👍


Added modified data and page id to page dropdown

I added the modified data and the page id to the page dropdown, as suggested by multiple including @Harsevoord .

I think this option should be discussed before just adding this!
We should not add to much info to the dropdown.
The user does not need this extra data so why add this feature.
Please create an issue for this PR before this is merged @poespas.
CC: @Harsevoord


Provisioning and OU mapping

Hello Team,
I used to configure the Google sync with GCDS and with this tool, you define the user's Organizational Unit in Google, based on a group membership (or other criteria) in AD.
I do not find, in Azure provisioning feature, a way to do the same, that is to say a way to define the Google OU for a user, based on its attributes or membership. Did I miss something?
Thank you for your help.

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

ID: 6eba9a3b-88e4-8156-a31e-58a74c604f28
Version Independent ID: 2e0e6273-3e21-1ea2-43f8-48e5effc9a83
Content: Tutorial: Configure G Suite for automatic user provisioning with Azure Active Directory
Content Source: articles/active-directory/saas-apps/g-suite-provisioning-tutorial.md
Service: active-directory
Sub-service: saas-app-tutorial
GitHub Login: @twimmers
Microsoft Alias: thwimmer

@lmartinet73
Thanks for your feedback! We will investigate and update as appropriate.

@lmartinet73 In the mappings sections, you can add a new expression mapping to the GSuite attribute orgUnitPath. You can use the switch function to add logic to flow a certain orgUnitPath based on an Azure AD attribute (unfortunately based on group membership though)
https://docs.microsoft.com/en-us/azure/active-directory/app-provisioning/functions-for-customizing-application-data#switch
The expression would look something like this:
Switch([department], "DefaultOrgPath", "HR", "HROrgPath", "IT", "ITOrgPath")

Thanks for the details, @twimmers.
We will now proceed to close this thread. If you have further questions feel free to reach out on Microsoft Q&A. https://docs.microsoft.com/answers/topics/azure-active-directory.html?filter=unanswered


Swift4.2

Hi,
I migrate Former to swift 4.2 in order to compile with Xcode 10 beta1

@brunow
Sorry for my late response.
LGTM, but I'll merge this PR into swift4_2 branch, since Swift4.2(Xcode10) is currently GM.

Hi,
Thank you for merging my fork, it's a good idea to merge it into a separate branch until swift 4.2 become the next major version.

@ra1028 , @brunow , Hello! Thank's for your job :)


Failed to build local-node image due to the loss of utils in Dockerfile

🐛 Bug Report
📝 Description
I try to build a local-node image from the Dockerfile provided in docker/local-node folder. However, the build fails due to a loss of dependency utils which is located in etc/utils package. Part of log is below and full log is deferred to the last part of this issue:
 => ERROR [13/23] RUN cd /infrastructure/zk && yarn && yarn build && cd /                                                                                30.6s
------
 > [13/23] RUN cd /infrastructure/zk && yarn && yarn build && cd /:
21.54 [4/4] Building fresh packages...
27.21 success Saved lockfile.
27.21 Done in 26.79s.
27.39 yarn run v1.22.22
27.42 $ tsc
28.92 src/clean.ts(4,31): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/compiler.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/config.ts(8,36): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/contract.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/contract_verifier.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/database.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/docker.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/down.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/env.ts(4,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/fmt.ts(3,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/format_sql.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/format_sql.ts(165,56): error TS7006: Parameter 'file' implicitly has an 'any' type.
28.92 src/hyperchain_wizard.ts(16,27): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/init.ts(3,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/init.ts(4,27): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/lint.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/prover_setup.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/reinit.ts(4,27): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/run.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/server.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/setup_en.ts(9,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/test/integration.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/test/test.ts(3,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/up.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.

🔄 Reproduction Steps
Run cmd sudo ZKSYNC_HOME=pwd zk docker build local-node --custom-tag "my_custom_local_tag".
Then the image will be built and this error happens.
📋 Additional Context
I try to fix this by adding utils to Dockerfile as well. But I find it hard to manage it smoothly.
📎 Log Output
➜  zksync-era git:(main) ✗ sudo ZKSYNC_HOME=`pwd` zk docker build local-node --custom-tag "my_custom_local_tag"
[+] Building 36.3s (17/26)                                                                                docker:default
 => [internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 3.02kB                                                                                0.0s
 => [internal] load metadata for docker.io/matterlabs/server-v2:latest2.0                                                                                0.2s
 => [internal] load .dockerignore                                                                                0.0s
 => => transferring context: 1.18kB                                                                                0.0s
 => [internal] load build context                                                                                0.8s
 => => transferring context: 2.48MB                                                                                0.8s
 => [ 1/23] FROM docker.io/matterlabs/server-v2:latest2.0@sha256:e2d79fa5f331d5855f514e561d77f41a1da748ba835e87697882d013895a806a                                        0.0s
 => CACHED [ 2/23] RUN apt-get update; apt-get install -y make bash git openssl libssl-dev gcc g++ curl pkg-config software-properties-common jq wget vim-tiny           0.0s
 => CACHED [ 3/23] RUN apt-get install -y curl gnupg libpq5 ca-certificates postgresql-client && rm -rf /var/lib/apt/lists/*                                             0.0s
 => CACHED [ 4/23] RUN mkdir -p /etc/apt/keyrings &&     wget -c -O - https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/no  0.0s
 => CACHED [ 5/23] RUN curl https://sh.rustup.rs -sSf | bash -s -- -y &&     rustup install stable                                                                       0.0s
 => CACHED [ 6/23] RUN cargo install sqlx-cli --version 0.7.3                                                                                0.0s
 => CACHED [ 7/23] COPY infrastructure/zk /infrastructure/zk                                                                                0.0s
 => CACHED [ 8/23] COPY infrastructure/local-setup-preparation /infrastructure/local-setup-preparation                                                                   0.0s
 => CACHED [ 9/23] COPY etc/env /etc/env                                                                                0.0s
 => [10/23] COPY etc/test_config /etc/test_config                                                                                0.1s
 => [11/23] COPY contracts /contracts/                                                                                2.9s
 => [12/23] RUN yarn global add typescript                                                                                1.6s
 => ERROR [13/23] RUN cd /infrastructure/zk && yarn && yarn build && cd /                                                                                30.6s
------
 > [13/23] RUN cd /infrastructure/zk && yarn && yarn build && cd /:
0.422 yarn install v1.22.22
0.441 info No lockfile found.
0.446 [1/4] Resolving packages...
4.326 warning hardhat ><EMAIL_ADDRESS>Glob versions prior to v9 are no longer supported
4.347 warning hardhat > mocha ><EMAIL_ADDRESS>Glob versions prior to v9 are no longer supported
4.473 warning hardhat > glob ><EMAIL_ADDRESS>This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
4.473 warning hardhat > mocha > glob ><EMAIL_ADDRESS>This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
4.632 warning hardhat > solc > fs-extra ><EMAIL_ADDRESS>Rimraf versions prior to v4 are no longer supported
4.632 warning hardhat > solc > fs-extra > rimraf ><EMAIL_ADDRESS>Glob versions prior to v9 are no longer supported
4.634 warning hardhat > solc > fs-extra > rimraf > glob ><EMAIL_ADDRESS>This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
5.529 [2/4] Fetching packages...
11.79 [3/4] Linking dependencies...
21.54 [4/4] Building fresh packages...
27.21 success Saved lockfile.
27.21 Done in 26.79s.
27.39 yarn run v1.22.22
27.42 $ tsc
28.92 src/clean.ts(4,31): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/compiler.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/config.ts(8,36): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/contract.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/contract_verifier.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/database.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/docker.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/down.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/env.ts(4,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/fmt.ts(3,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/format_sql.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/format_sql.ts(165,56): error TS7006: Parameter 'file' implicitly has an 'any' type.
28.92 src/hyperchain_wizard.ts(16,27): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/init.ts(3,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/init.ts(4,27): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/lint.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/prover_setup.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/reinit.ts(4,27): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/run.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/server.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/setup_en.ts(9,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/test/integration.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/test/test.ts(3,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.92 src/up.ts(2,24): error TS2307: Cannot find module 'utils' or its corresponding type declarations.
28.95 error Command failed with exit code 1.
28.95 info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
------
Dockerfile:55
--------------------
  53 |     # RUN cd /etc/utils && yarn add --dev @types/node && yarn && yarn build && cd /
  54 |     # Build `zk` tool
  55 | >>> RUN cd /infrastructure/zk && yarn && yarn build && cd /
  56 |     # Build `local-setup-preparation` tool
  57 |     RUN cd /infrastructure/local-setup-preparation && yarn && cd /
--------------------
ERROR: failed to solve: process "/bin/sh -c cd /infrastructure/zk && yarn && yarn build && cd /" did not complete successfully: exit code: 1
Error: Child process exited with code 1

By the way, I find it hard to build the zk tool as well. The doc here https://github.com/matter-labs/zksync-era/blob/main/docs/guides/development.md does not mention the util package in total, but it is a essential dependency of building zk.

Another question is, how to monitor the local-node in a blockchain browser (like etherscan)?

I will be grateful if anyones see this and make a reply.

I resolve this by linking utils module into the docker env.
# Build `utils` tool and link
RUN cd /etc/utils && yarn && yarn link && cd /
# Build `zk` tool
RUN cd /infrastructure/zk && yarn link utils && yarn && yarn build && cd /
# RUN cd /infrastructure/zk && yarn && yarn build && cd /

Feel strange why this is not written in the original code.
BTW, it remains unclear for me how to monitor the local-node in a blockchain explorer?


Make example data abs. path

Hi, although it is suggested by the data/* format, if the examples's code are copied directly into a file it won't generally work because the relative paths. So, I just made all absolute.
Also, may I suggest to use other solver than Gurobi?, it is usually harder to install than other alternatives. The optimization part is not the target of this package and could prevent users from running the examples.
Thanks!

Hi there, thanks for the feedback! These are all great ideas, I will merge the PR and update the package asap. Thanks :)


A lazy Iterator variant of Path::params

This worked out great for the Python wrapper: https://github.com/adriangb/routrie/commit/faa4ad8bf2a10a06ed621eb1e30a5d4cceb5cc91#diff-b1a35a68f14e696205874893c07fd24fdb88882b47c23cc0e0c80a30c7d53759
It would be nice to figure out at some point how to lazily build the parameters instead of calling params() (just like you are doing in Rust) before returning the data to Python, but I suspect it would get pretty complicated again with lifetimes for probably little benefit to users.

Originally posted by @adriangb in https://github.com/viz-rs/path-tree/issues/22#issuecomment-1256553651
As mentioned a Iterator variant of Path::params might be useful. So I had a go at it and managed to get a version working using a custom Iterator type. The downside is that it requires a brittle typed iterator chain.
Would like some feedback on this as it would be quite useful to remove the ending allocation but its quite verbose and may be hard to use.

That is very cool. Unfortunately we will not be able to use it from python because you can’t return anything with a lifetime. But probably something interesting to explore for the rust side!

My initial idea for that was to somehow Box the Iterator and create a custom PyO3 class to act as the Iterator, like a generator/yield. But that might not be possible due to just how many lifetimes are required to avoid cloning data.

I think they will eventually be converted to the following types.

(&'a str, &'b str) => (String, String)
(&'a str, &'b str) => (Arc<str>, Arc<str>)


Breadcrumbs content is not contained within a landmark

The breadcrumbs component govukBreadcrumbs that is used in several layouts are not contained within a landmark.
Within our project, this is triggering this automated accessibility check.
Proposal
I believe the breadcrumbs component should be held within a <nav> element.

PR #168 submitted

The breadcrumbs are used as documented in the GOV.UK Design System.
Note, on using the <nav> element, the HTML spec says:

Not all groups of links on a page need to be in a nav element — the element is primarily intended for sections that consist of major navigation blocks.

If you think this is incorrect, you can raise this upstream on govuk-frontend.
It’s also possible to override the default breadcrumb and add a navigation role:
{% block beforeContent %}
  {{ govukBreadcrumbs({
    classes: "govuk-!-display-none-print",
    items: breadcrumbItems,
    attributes: {
      role: "navigation"
    }
  }) if showBreadcrumbs }}
{% endblock %}

You can see an example of overriding the layouts provided by the plugin in the GOV.UK Design History repo.
An alternative option is to silence this accessibility check; sometimes that is the correct approach, given the subjectivity that exists around such issues.


[Issue]: Invoice Amounts are incorrect when Manual Invoices are involved.

Describe the Issue
When paying out an Auto Invoice, the class PayeeInvoiceModelToHyperwalletPaymentConverter (Think that is the right class)
The convert uses the source.transfer amount. This is ok in most cases, however when manual invoices (credits and debits) are used, Mirakl has advised that a different calculation should be used.
This is the code for the payout to seller:
`@Override
public HyperwalletPayment convert(@NonNull final InvoiceModel source) {
final HyperwalletPayment target = new HyperwalletPayment();
target.setProgramToken(
invoicesHyperwalletSDKService.getProgramTokenByHyperwalletProgram(source.getHyperwalletProgram()));
target.setDestinationToken(source.getDestinationToken());
target.setClientPaymentId(source.getInvoiceNumber());
target.setAmount(source.getTransferAmount());
target.setCurrency(source.getCurrencyIsoCode());
target.setPurpose(PURPOSE);
	return target;
}`

We asked Mirakl support about this:
Their response was:

We are seeing that:
Given the below accounting document:

The invoice generated shows:

The Connector gave an error that when confirming the payment with Mirakl - the amounts were incorrect.
I checked this with some test code:
val miraklAccountingDocumentPaymentConfirmation = MiraklAccountingDocumentPaymentConfirmation().apply {             amount = BigDecimal("35.76")             currencyIsoCode = MiraklIsoCurrencyCode.GBP             invoiceId = sellerInvoiceId             transactionDate = Date.from(                 ZonedDateTime.parse("2023-05-19T01:00:03Z").toInstant(),             )         }         return MiraklConfirmAccountingDocumentPaymentRequest(listOf(miraklAccountingDocumentPaymentConfirmation))
And got the response:
Exception in thread "main" com.mirakl.client.core.exception.MiraklApiException: [400] The amount is incorrect for the accounting document with number '230415', actual: '35.76', expected: '35.56'
at com.mirakl.client.core.internal.util.ResponseHelper.handleResponseErrorWithBody(ResponseHelper.java:94)
at com.mirakl.client.core.internal.util.ResponseHelper.checkStatus(ResponseHelper.java:43)
at com.mirakl.client.core.AbstractMiraklApiClient.put(AbstractMiraklApiClient.java:398)
at com.mirakl.client.mmp.core.MiraklMarketplacePlatformFrontOperatorApiClient.confirmAccountingDocumentPayment(MiraklMarketplacePlatformFrontOperatorApiClient.java:207)
at com.paypal.testing.ApiClientTest.confirmAccounting(ApiClientTest.kt:76)
I then looked at using Mirakl's method to calculate the actual payable amounts and printed out what the connector is performing:
`fun getInvoiceAmount() {
createClient().use { client ->
val request = MiraklGetInvoicesRequest()
request.setShopId(invoiceShopId)
val invoiceList = client.getInvoices(request)
val results = invoiceList.invoices.filter { it.id.contains(sellerInvoiceId.toString()) }
        results.first().let {
            logger.info("Invoice: {}", it.id)
            logger.info("Amount Transferred: {}", it.summary.amountTransferred)
            logger.info("Amount Transferred To Operator: {}", it.summary.amountTransferredToOperator)
            logger.info("----------- Start of Calculation --------------------------")
            logger.info("Mirakl Formula Payout Total: {}", calculatedInvoiceAmount(it))
        }
    }
}

private fun calculatedInvoiceAmount(it: MiraklInvoice) =
    it.summary.totalPayableOrdersIT +
        it.summary.totalRefundCommissionsIT +
        it.summary.totalRefundOperatorPaidShippingChargesInclTax +
        it.summary.totalRefundOperatorRemittedTaxes +
        it.summary.totalCommissionsIT +
        it.summary.totalOperatorPaidShippingChargesInclTax +
        it.summary.totalOperatorRemittedTaxes +
        it.summary.totalRefundPayableOrdersIT +
        it.summary.totalSubscriptionIT`

Got the below output:
14:30:56.622 [main] INFO com.paypal.testing.ApiClientTest - Invoice: 230415
14:30:56.625 [main] INFO com.paypal.testing.ApiClientTest - Amount Transferred: 35.76
14:30:56.625 [main] INFO com.paypal.testing.ApiClientTest - Amount Transferred To Operator: 6.24
14:30:56.625 [main] INFO com.paypal.testing.ApiClientTest - ----------- Start of Calculation --------------------------
14:30:56.625 [main] INFO com.paypal.testing.ApiClientTest - Mirakl Formula Payout Total: 35.56
I also checked a standard invoice (with no manual invoices) and got the same amounts
(amount transferred + Formula payout are the same)
e.g.:
14:32:47.178 [main] INFO com.paypal.testing.ApiClientTest - Invoice: 230401
14:32:47.178 [main] INFO com.paypal.testing.ApiClientTest - Amount Transferred: 17.78
14:32:47.179 [main] INFO com.paypal.testing.ApiClientTest - Amount Transferred To Operator: 3.22
14:32:47.179 [main] INFO com.paypal.testing.ApiClientTest - ----------- Start of Calculation --------------------------
14:32:47.179 [main] INFO com.paypal.testing.ApiClientTest - Mirakl Formula Payout Total: 17.78
Please can you let us know whether this is in your list to change?
(I did notice there were exvat and incvat values too - which probably adds some complexity?)
Thanks,
Russ
Environment
Live/Production
Version
4.18.1
Expected Behavior
Can payout invoices containing manual credits / debits (invoices) with correct amounts
Actual Behavior
Payout created in Hyperwallet is for a different amount to what Mirakl is expecting.
Steps to Reproduce
Create Orders + Manual Debits and Credits.
Await Mirakl Invoice
Test Payout (HMC creates invoice in UAT Hyperwallet)
Hyperwallet team contacted to perform payment.
Connector errors.
Pre-conditions
No response
Relevant log output
In the description above

Hi @RussGarratt,
Thanks for reaching out. That issue was already answered through https://github.com/paypal/mirakl-hyperwallet-connector/issues/102#issuecomment-1315257294
I'm afraid the outcome will be the same we've provided back then.

Sorry, didn't realise this was already raised.
Did Mirakl give you a response?
We don't really want to get stuck in a stalemate.
Appreciate your decisions not to have logic in the connector and that it is essentially a mapper.
Regards,
Russ

Hi @javierpoloe2y  @max6001
Is it possible that you can let us know who was the Mirakl contact please?
We are being requested by Mirakl to find out who in the product team this was for expediting.
Thanks and regards,
Russ

Hi @RussGarratt thanks for reaching out.
My Mirakl point of contact is a Senor Solution Technical Consultant based in Paris and in charge of handling relationships with the different Mirakl partners such as PayPal.
I'm afraid I can't share his name.
Best,

I have been told by Mirakl that this now may be simpler:
Are we able to request this feature please?
Thanks,
Russ
We've just released a new feature that might help you and Hyperwallet.
•	The IV07 API now includes a new field "confirm_all_linked_manual_documents". When set to "true", this feature enables the automatic payment of auto invoices, manual invoices, and manual credit notes in a single action.
•	The updated feature uses the total transfer amount instead of requiring separate amounts for each document, streamlining the accounting process.
•	For ease of transition, the new field will be set to false by default, maintaining the current process for operators who prefer it.
•	An added error message feature will alert you if an accounting document has already been paid, preventing duplication.
You can also find the documentation page related to the feature here.

hi @adbame
Is it possible to get any update on this please?
Is this on your roadmap at all ? and if so - any ETA please?
Thanks,
Russ

Hi @RussGarratt
I have no news about this
When I have some information let you know

Not allowed to push to your repo but here would be the changes:

Created: https://github.com/paypal/mirakl-hyperwallet-connector/pull/148

Hi @RussGarratt
A new release 5.2.0 has been published adding this new feature
Best Regards


Enable Setting TCMalloc Soft Memory Limit

Title: Enable Setting TCMalloc Soft Memory Limit
Description:
Google’s TCMalloc offers the ability to set a soft memory limit in code. It works by attempting to release pages from the Page Heap if a new allocation from the OS puts tcmalloc’s total memory footprint above the soft limit. For users of Google’s TCMalloc, this seems to be an alternative to the shrink_heap action in overload manager, and we’d like to evaluate it as such.
It seems the only way to set this limit in TCMalloc is to call this function, and I don’t see any calls of this in envoy. Would it be possible to update envoy to support setting this soft limit in TCMalloc, perhaps via a bootstrap configuration or an environment variable?

Add @nezdolik who has worked on this a lot in the past, IIRC

Sounds like a reasonable feature, we could extend MemoryAllocatorManager api for this.


How to perform database migration after Casdoor update?

I just updated my Casdoor from v1.403.0 to v1.416.0. After restart these errors appears:
[xorm] [warn]  2024/04/30 12:03:20.308087 Table user has column is_global_admin but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.329211 Table model has column is_enabled but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.334764 Table adapter has column is_enabled but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.337739 Table enforcer has column is_enabled but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.382121 Table cert has column authority_public_key but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.382129 Table cert has column authority_root_public_key but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.419334 Table subscription column user db type is MEDIUMTEXT, struct type is VARCHAR(100)
[xorm] [warn]  2024/04/30 12:03:20.419368 Table subscription has column start_date but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.419372 Table subscription has column end_date but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.419374 Table subscription has column duration but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.419377 Table subscription has column is_enabled but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.419380 Table subscription has column submitter but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.419382 Table subscription has column approver but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.419385 Table subscription has column approve_time but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.423435 Table plan has column price_per_month but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.423444 Table plan has column price_per_year but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.430583 Table pricing has column submitter but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.430595 Table pricing has column approver but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.430599 Table pricing has column approve_time but struct has not related field
[xorm] [warn]  2024/04/30 12:03:20.430602 Table pricing has column state but struct has not related field

May be this refers to database schema schanges. How can I update Casdoor's database schema from console? Is there some migrations for this?

@netandreus we only provide support for latest version. And this community doesn't provide support for data migration. Contact a third-party support if needed.


Change line endings in the json to see if that fixes the test on Windows

Type: bugfix for the test
Issue: Resolves #1006
Breaking change: no
I suspect it is a line ending issue so this is a try.

Good catch!

I suspect the main question is: do we want to keep the difficult to debug test on Windows?

no :D
Or more serious, WSL should allow Windows users to debug pretty easily I think?

no :D
Or more serious, WSL should allow Windows users to debug pretty easily I think?

WSL on Windos != Windows. It is Linux (with some edge cases) And besides that we currently run on PHP 7.1
But I will take a look with getting it working on Windows.

Codecov Report
Patch and project coverage have no change.

Comparison is base (449a683) 88.65% compared to head (4e97118) 88.65%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff            @@
##             master    #1007   +/-   ##
=========================================
  Coverage     88.65%   88.65%
  Complexity     1076     1076
=========================================
  Files            96       96
  Lines          2698     2698
=========================================
  Hits           2392     2392
  Misses          306      306

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Back to 🟢 🎉


Lupin sometimes work, sometimes doesn't work, sometimes takes a few hours to work

Hi akhater
So I was finally able to setup Lupin using Docker and though it's connected and generally works it takes a really long time for a message posted on Lupin to show up in Logseq. It often takes more than 20 minutes and sometimes hours. This is a random guess but I think it may have something to do with this error I keep seeing. Can you help?
`'utf-8' codec can't decode byte 0x89 in position 0: invalid start byte
'utf-8' codec can't decode byte 0x89 in position 0: invalid start byte
'utf-8' codec can't decode byte 0x89 in position 0: invalid start byte
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
403 {"message": "This API returns blobs up to 1 MB in size. The requested blob is too large to fetch via the API, but you can use the Git Data API to request blobs up to 100 MB in size.", "errors": [{"resource": "Blob", "field": "data", "code": "too_large"}], "documentation_url": "https://docs.github.com/rest/reference/repos#get-repository-content"}
`

Hi, I've figured this out.. Just had to re-run Docker... FYI-- im still getting the messages above but no longer slow


ATOM: Not all results returned, only last page?

For ATOM it seems that only the latest page is returned.
For my address, it has 2 pages (shown on stake.tax) but the export is not showing the first transactions. Thus it might be that only the latest page is returned?
Either way something is missing. I have << 1000 txs, so it is not the size of txs.
I didn't have time yet to install gaia to try locally.

Hmm, not sure what's going on.  That's pretty odd, especially if stake.tax doesn't match CLI.
Some random notes in case helpful:

If default.csv has transactions but something like koinly.csv has "missing" transactions, that's a different issue related to how tx_type=_* (i.e. _UNKNOWN) do not show up in koinly.csv .
If you have gaia in docker, that's only setup I have too for ATOM.  So you're good there.
I don't think this is issue, but it's probably good to note that older "cosmoshub-3" transactions are not supported.  This doesn't really jive with your case since it appears on stake.tax.

If you'd like, DM/email the bookmark url (from website).  I can take a look and test myself to try and figure out what's going on.

No I meant stake.tax is also missing the transactions, sry for the confusion. I may have not been clear enough on that. I meant I had no time yet to try the code locally (but I have checked it out already and set up a new python venv ;))
Adding the gaia version info might still be of interest 👍
Then it is probably the fact that that these were cosmoshub-3 transactions, I didn't know those are not supported. Fortunately, I don't have too many cosmoshub-3 txs, I guess I will just fill them in manually then.
Thanks for your quick reply :)
Keep up the good work, it's a helpful tool! 👍

Ah, nice.   Glad at least the issue is known.  Sounds like I should add note to website for ATOM users.


Mention parser is too strict

Currently the regex code for mention parsing will only create a mention if we type the user's displayname exactly.
At the very least this should be case-insensitive, and at most allow for matching their Discord ID (username#1234) as well as everything previously mentioned with an '@' in front.
Text used in above image:
* Pouar
* pouar#5184
* @Pouar
* pouar

I've had horrible trouble trying to get a regex that will accept and consume an '@', which is probably something someone else can conjure up. I'll write some more test cases for these and fix the others though.

#48 fixes most of these cases, but still working on the @ solution.

Awesome, making good progress on the webhook creation as well.

Looking great! Now just that pesky @...
Text used in above image:
* Violet
* violet
* violetray#1234
* @violet

@anoadragon453 Are you happy that the linked test case is covering your issue? I'll close it if so.

The bridge now seems to only create username mentions for Riot pills. This seems sufficient and in line with Discord on Desktop, but does it work on Android mobile where pill creation isn't yet supported?

@anoadragon453 it seems to be okay for me? Or rather I can still do the android style mentions $USER: and Riot @$USER

Going to close pending feedback.

Yeah haven't had any issues lately with it :)


Added the ability to set credentials through a IAM profile

Added the ability to set credentials through a IAM profile. Pass IAM Profile name as a property in pom which will be used by AWS SDK to create credentials object

Ok, I've cherry picked the changes and did the commit on f7e11880d4aa15dc79c41c02fae18723d548e432
Huge thanks for your effort, your vision (I actually found it quite enjoyable - both the idea and the initial impl) and attitude!

@aldrinleal Thank you. This will really help us, once again..appreciate all the hardwork you put in here. Will this change be part of 1.4.0 build, if so..when will maven repo be updated? Or should I be looking for snapshots in a different repo?

Gimme a few more weeks. As you're noticed, I'm resuming giving beanstalker
attention. Now I'll focus on Integration Testing and the whole build
pipeline (it is horrible, trust me)
If you've got Nexus or something, feel free to fork your own version and
deploy it across your organization. Particularly, I believe the changes
will be more fixes, and no new features are intended to be introduced in
the plugin core (more in the archetypes and docs).
If you need assistance on this, let me know.
Thanks
--
-- Aldrin Leal<EMAIL_ADDRESS>/ http://about.me/aldrinleal
On Wed, Sep 30, 2015 at 9:11 PM, manthram<EMAIL_ADDRESS>wrote:

@aldrinleal https://github.com/aldrinleal Thank you. This will really
help us, once again..appreciate all the hardwork you put in here. Will this
change be part of 1.4.0 build, if so..when will maven repo be updated? Or
should I be looking for snapshots in a different repo?
—
Reply to this email directly or view it on GitHub
https://github.com/ingenieux/beanstalker/pull/72#issuecomment-144579101.


run as admin required?

I don't normally use SpineOMatic, but in troubleshooting a connection issue, I "installed" it (to c:\Spine) using a local admin account.  SpineLabeler.exe wouldn't open for my normal, unprivileged account, but it did open if my account was given admin rights.  I adjusted the NTFS security so all users have "full control" to the entire folder, but SpineLabeler.exe still won't open if my account is unprivileged.  Windows shows a very brief "wait circle", and if I'm watching processes, I can see the SpineLabeler.exe appear and then immediately disappear.
Any ideas why?  Are there permissions elsewhere (e.g. registry) that need to be granted?
Thanks.

@UAlbanyErich, it should not require admin privileges. Does the same problem happen if installed in a user directory rather than in the C root?

Yes, it does.  Copying the folder or downloading a new copy of the .exe from here into a folder within the unprivileged user profile, and it attempting to start it as that unprivileged user does the same 1 second wait circle and nothing.  Right-clicking -> run as admin and entering admin credentials and it starts right up.


fix: Fixes to dialog sequencing for handoff

Description
This fixes an issue with the handoff dialog sequencing.
Task Item
#minor
Screenshots
N/A

Coverage remained the same at 51.158% when pulling e2dd740a2d58d305b5cf262829745199e33477fd on gcox/fix5896 into 864722661eed66dbcd0979d11fe9bcd18adc10cf on main.


save as svg when rotate has bug

When I was rotating the horizontal screen on the mobile end, I found that there was a problem saving as SVG. Using the API todataurl ('image / SVG + XML ') in the library, it is found that the lower part of the image is not saved, and the direction is wrong. It is correct to use canvas's native API todataurl ('image / SVG + XML '). Presumably you are not compatible with rotation at save time. Please pay attention.

I confirm this bug saving in SVG from mobile view horizontal.

cloasing as stale


Remove JsonValue#equals because it's in java.lang.Object

It is a follow-up to: #1462
It's simple. As Object#equals exists already, we don't need JsonValue#equals. It came from equals in msgpack-java's Value.

Thanks!