Unable to Train or Build the created Story.

Alfred,
Thank you for the amazing framework. I have tried implementing your code but ran into an issue. Once after the setup is completed when I run I'm not able to see the Build/Train screen besides New Story. Also, I see  "I'm not able to serve you at the moment, please try again later" message in the chat screen.
Request you to review and provide your comments

Did you used  docker-compose or manual setup ? if manual, check whether your mongodb instance is up and correct connection uri is given in the config file.

I tried manually setting up the framework. I had an issue with MongoDB and after resolving it I can see the build and train screen. Yeah, I've rechecked the config file and the URI is correct.
But still the IKY shows the below message -
{
"speechResponse": "I'm not able to serve you at the moment, please try again later"
}

Please check the log. Also check your javascript log in the console.


messages blocking a queue and causing runaway message_sender

We've had recently the issue arising that the Zulip chat server (on a DigitalOcean instance with 2 vCPUs and 4 GB of RAM) is starting to behave strangely and does not deliver its services reliably any more. It is a fully patched Ubuntu 18.04 instance with an upgraded Zulip 2.1.4 install on the basis of the DigitalOcean droplet (originally with Zulip 2.1.2).
In particular one or more of the message_sender processors/workers are going ballistic and start to guzzle up nearly 100% CPU load each. If that happens, some messages are not delivered any more, and on restarts, messages are wildly delivered out of order. The situation does not get better with service restarts (even repeatedly) or entire server (host) restarts.
Things I have done over the last week:

Add a crontab entry to restart the server every night
Upgraded Zulip to 2.1.4
Re-installed RabbitMQ
Purged the message_sender queue on the RabbitMQ broker.

Note: On inital install, we have migrated previous public Slack content to the Zulip server to have better continuity.
Here the runaway message_sender worker is visible (worker_num=1):
root@zulip:~# ps awux | grep message_sender
root      5827  0.0  0.0  14856  1008 pts/0    S+   22:54   0:00 grep --color=auto message_sender
zulip    19028  0.0  2.6<PHONE_NUMBER>36 ?       S    04:25   0:04 python3 /home/zulip/deployments/current/manage.py process_queue --queue_name=message_sender --worker_num=0
zulip    19029 11.4  2.7<PHONE_NUMBER>40 ?       Sl   04:25 126:29 python3 /home/zulip/deployments/current/manage.py process_queue --queue_name=message_sender --worker_num=1
zulip    19030  0.0  2.6<PHONE_NUMBER>48 ?       S    04:25   0:04 python3 /home/zulip/deployments/current/manage.py process_queue --queue_name=message_sender --worker_num=2
zulip    19031  0.0  2.6<PHONE_NUMBER>72 ?       S    04:25   0:04 python3 /home/zulip/deployments/current/manage.py process_queue --queue_name=message_sender --worker_num=3

When this happens, apparently the message_sender queue runs fuller and fuller through use:
root@zulip:~# rabbitmqctl list_queues
Listing queues
tornado_return  0
embedded_bots   0
missedmessage_email_senders     0
missedmessage_mobile_notifications      0
user_activity   12
invites 0
embed_links     0
email_senders   0
missedmessage_emails    0
error_reports   0
digest_emails   0
slow_queries    0
notify_tornado  0
outgoing_webhooks       0
message_sender  54
user_presence   0
deferred_work   0
email_mirror    0
user_activity_interval  0
signups 0

The queue doesn't get emptier, but retains an increasing number of messages that don't seem to get pulled off the queue. In the DigitalOcean load graph, it is visible that at 4:20 pm I had purged the message_sender queue, "normalising" things again. Then at about 8:45 am again the problem has re-occurred:

How can this problem be solved? We really like Zulip (and don't want to go back to Slack or go to something like MS Teams), but at the moment the system is not really usable due to unreliability. How can I fix things?

@pohutukawa if you're up for it, I'd recommend upgrading to master with upgrade-zulip-from-git master.  We've removed the entire message_sender queue system from Zulip in work towards the Zulip 2.2 release, which eliminates this category of failure mode (which we haven't seen before).
https://zulip.readthedocs.io/en/latest/production/upgrade-or-modify.html#upgrading-from-a-git-repository
Another option is to stop the Zulip server and then use manage.py purge_queue message_sender to delete all the messages in that queue; that should also resolve your problem.

The message_sender queue only processes messages sent via the Zulip web UI, so it's likely that someone in your organization sent a message containing a link or other content that is making the markdown processor infinite loop.  This should be hard, because we run the markdown processor under a 5s timer that kills the job if it is running forever.  I'd consider asking if anyone in your organization is sending messages designed to DoS a parser; if that's indeed the issue, please report the problematic message content to<EMAIL_ADDRESS>so we can investigate.

Thanks @timabbott, I'll try the upgrade to Git master for now. As I've purged messages from the message_sender queue already, and got the same problem again (twice) within a day, that doesn't seem to be a viable solution. Also, I could imagine that there may be message loss when purging. Not so good.
As for the Markdown DoS scenario: I'd doubt that any of our guys would be doing that, at least intentionally. Having said that, though, is there a way to selectively access the content of a/the problematic message to get to the bottom of the problem?

Upgrade from Git to master done. Let's see what happens now.
Note: rabbitmqctl list_queues does not show any more queues at all. ("Error: unable to connect to node zulip@localhost: nodedown")

Note: rabbitmqctl list_queues does not show any more queues at all. ("Error: unable to connect to node zulip@localhost: nodedown")

That seems wrong; is your server actually working?  But in any case, the message_sender queue should be gone.

As for the Markdown DoS scenario: I'd doubt that any of our guys would be doing that, at least intentionally. Having said that, though, is there a way to selectively access the content of a/the problematic message to get to the bottom of the problem?

No, because the message is failing to complete sending, so it's not stored on the server at all.

Note: rabbitmqctl list_queues does not show any more queues at all. ("Error: unable to connect to node zulip@localhost: nodedown")

That seems wrong; is your server actually working? But in any case, the message_sender queue should be gone.

The server is working, but the list_queues command does not show any queues. I have rebooted since, and this is the output:
# rabbitmqctl list_queues
Error: unable to connect to node zulip@localhost: nodedown

But the RabbitMQ broker is running:
# service rabbitmq-server status
● rabbitmq-server.service - RabbitMQ Messaging Server
   Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2020-05-01 03:29:13 UTC; 4 days ago
  Process: 925 ExecStartPost=/usr/lib/rabbitmq/bin/rabbitmq-server-wait (code=exited, status=0/SU
 Main PID: 924 (rabbitmq-server)
    Tasks: 88 (limit: 4702)
   CGroup: /system.slice/rabbitmq-server.service
           ├─ 924 /bin/sh /usr/sbin/rabbitmq-server
           ├─ 990 /bin/sh /usr/lib/rabbitmq/bin/rabbitmq-server
           ├─1244 /usr/lib/erlang/erts-9.2/bin/epmd -daemon
           ├─1401 /usr/lib/erlang/erts-9.2/bin/beam.smp -W w -A 64 -P 1048576 -t 5000000 -stbt db
           ├─1515 erl_child_setup 65536
           ├─1632 inet_gethost 4
           └─1633 inet_gethost 4

May 04 15:11:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-56
May 05 05:19:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-27
May 05 05:23:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-73
May 05 05:29:01 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-19
May 05 05:34:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-86
May 05 13:23:45 zulip epmd[1244]: epmd: got partial packet only on file descriptor 6 (0)
May 05 15:32:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-19
May 05 15:43:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-20
May 05 22:27:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-87
May 05 23:10:02 zulip epmd[1244]: epmd: node name already occupied rabbitmq-cli-88

As for the Markdown DoS scenario: I'd doubt that any of our guys would be doing that, at least intentionally. Having said that, though, is there a way to selectively access the content of a/the problematic message to get to the bottom of the problem?

No, because the message is failing to complete sending, so it's not stored on the server at all.

Yes, but I guess it must be persisted in the queue.
Anyway, the server "feels" normal since the upgrade to the Git master version yesterday, even though the inspection via RabbitMQ tools on the queues won't work. Very odd ...

Error: unable to connect to node zulip@localhost: nodedown

I would expect this to totally break Zulip, so that's very odd.  maybe you somehow have two instances of rabbitmq with different nodenames, only one of which is down?  Check  /var/lib/rabbitmq/mnesia/ for hostnames there.

Just referenced this ticket from elsewhere, and noticed I had not given final feedback.
Now (I don't know why) the rabbitmqctl list_queues does report a list of all the queues properly with their current queue sizes. I don't know why, but this problem seems resolved, and the upgrade to the Git master (as of early May) seems to have done the trick to resolve the problem.


feat: Update schnorr constraints to accept native field s and e

Description
Please provide a paragraph or two giving a summary of the change, including relevant motivation and context.
Checklist:

[ ] I have reviewed my diff in github, line by line.
[ ] Every change is related to the PR description.
[ ] The branch has been merged with/rebased against the head of its merge target.
[ ] There are no unexpected formatting changes, superfluous debug logs, or commented-out code.
[ ] There are no circuit changes, OR a cryptographer has been assigned for review.
[ ] New functions, classes, etc. have been documented according to the doxygen comment format. Classes and structs must have @brief describing the intended functionality.
[ ] If existing code has been modified, such documentation has been added or updated.
[ ] No superfluous include directives have been added.
[ ] I have linked to any issue(s) it resolves.
[ ] I'm happy for the PR to be merged at the reviewer's next convenience.

Huh, this was building fine locally but getting issues here.

Huh, this was building fine locally but getting issues here.

These seem unrelated to your change and related to circuits-wasm-tests not being able to find the cpp compiler and circuits-x86_64-tests not being able to find barretenberg

Yeah, posted before I opened up circleci. tbh I think the main issues I was running into was due to flake.lock not being updated correctly in acvm-backend-barretenberg for some reason.

I've opened #566 to test the CI against a benign change

Not really, the last commit was 2 weeks ago.

Not sure why tests were passing prior to 74e6145. Do we actually run the dsl tests in CI?

@kevaundray Could you sanity check the changes to the acir tests here for me please? These look correct to me but verification is failing.


thread safe for ServiceInstance

What is the purpose of the change
Ensure this method of DefaultServiceInstance is thread safe to caller
Brief changelog
Verifying this change

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #10649 (725efb2) into 3.1 (2bed0af) will decrease coverage by 0.42%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##                3.1   #10649      +/-   ##
============================================
- Coverage     65.22%   64.80%   -0.43%
- Complexity      471      491      +20
============================================
  Files          1336     1336
  Lines         56922    56881      -41
  Branches       8435     8405      -30
============================================
- Hits          37128    36861     -267
- Misses        15826    16024     +198
- Partials       3968     3996      +28

Impacted Files
Coverage Δ

.../dubbo/registry/client/DefaultServiceInstance.java
73.38% <100.00%> (-0.57%)
:arrow_down:

...mmon/serialize/fastjson2/FastJson2ObjectInput.java
0.00% <0.00%> (-62.50%)
:arrow_down:

...mon/serialize/fastjson2/FastJson2ObjectOutput.java
0.00% <0.00%> (-56.25%)
:arrow_down:

...dubbo/remoting/zookeeper/ZookeeperTransporter.java
50.00% <0.00%> (-33.34%)
:arrow_down:

...pache/dubbo/common/function/ThrowableFunction.java
71.42% <0.00%> (-28.58%)
:arrow_down:

...on/serialize/fastjson2/FastJson2Serialization.java
57.14% <0.00%> (-28.58%)
:arrow_down:

...ng/zookeeper/curator5/Curator5ZookeeperClient.java
43.86% <0.00%> (-26.42%)
:arrow_down:

...dubbo/common/status/support/LoadStatusChecker.java
41.66% <0.00%> (-25.00%)
:arrow_down:

...nt/metadata/ServiceInstanceHostPortCustomizer.java
65.78% <0.00%> (-21.06%)
:arrow_down:

...n/serialize/fastjson2/Fastjson2CreatorManager.java
46.66% <0.00%> (-20.00%)
:arrow_down:

... and 66 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


systemd issue on new version

Hi,
Two questions.

I've used this for almost a year now I believe, works fine. No issues whatsoever.

What would be the best way to update? I read to delete and reinstall my node files, do I also need to completely re-clone the repo? As for backup, what folders need to be backed up besides attachments/logs and config.json.

I installed a second version of this onto another bot (this is how I found out there were updates), however my systemd file is not working. It's a clone of the first installation i had which works with no issues.

Here's what the systemd file looks like:
`
[Unit]
Description=ModMail2
After=multi-user.target
[Service]
WorkingDirectory=/home/evacbots/modmailbot2/modmailbot
User=evacbots
Group=evacbots
ExecStart=/usr/bin/node /home/evacbots/modmailbot2/modmailbot/src/index.js
Type=idle
Restart=always
RestartSec=15
[Install]
WantedBy=multi-user.target
`

i'd recommend to use PM2 to keep the bot up, really easy to use and you can make it start on system boot and if the bot crashes, it will restart it

I don’t want to use PM2.
All my other bots run on systemd and achieve the same thing as what you mentioned.

I can say how I do it
I cloned the repo onto my Pi, for updating I run: git pull --> npm install --> systemd service stop --> systemd service start and I run on the newest version

Before updating, back up the db/data.sqlite file and attachments folder.

You should be able to update by just downloading the newest version from the releases page and extracting it over the old files. If prompted to replace or merge folders (depending on OS), choose merge.

Are there any errors or similar messages in the systemd logs?

Thanks for the updating info, here's the error I have in my sysmd log.
Oct 12 10:07:28 evacbot systemd[1]: Started ModMail2.
Oct 12 10:07:29 evacbot node[3136]: Can't take lock to run migrations: update knex_migrations_lock set is_locked = 1 - SQLITE_READONLY: attempt to write a readonly database
Oct 12 10:07:29 evacbot node[3136]: If you are sure migrations are not running you can release the lock manually by deleting all the rows from migrations lock table: knex_migrations_lock
Oct 12 10:07:29 evacbot node[3136]: { [MigrationLocked: update knex_migrations_lock set is_locked = 1 - SQLITE_READONLY: attempt to write a readonly database]
Oct 12 10:07:29 evacbot node[3136]:   name: 'MigrationLocked',
Oct 12 10:07:29 evacbot node[3136]:   message: 'update knex_migrations_lock set is_locked = 1 - SQLITE_READONLY: attempt to write a readonly database' }
Oct 12 10:07:29 evacbot systemd[1]: modmail2.service: Main process exited, code=exited, status=1/FAILURE
Oct 12 10:07:29 evacbot systemd[1]: modmail2.service: Unit entered failed state.
Oct 12 10:07:29 evacbot systemd[1]: modmail2.service: Failed with result 'exit-code'.

I apologize for no response here. If you're still running the bot and experiencing this problem, please open a new issue after trying with the newest version. That being said, I think it's a permission issue - when you're running npm start, you're probably running this on a user that has permissions to modify the database file. It could be that whatever user the systemd service is using doesn't have these permissions.


run problem

If I configure the environment well, how can I run a picture of my data set sequence that can explain the specific operation

HI,
May be you can write your own code to match pictures for your data.
This project does not provide similar functionality.


Add defaultCompiler to api/languages, and add api/libraries

It hit me that the defaultCompiler was missing from the API calls, so I added it to the /languages call.
I also added a new /api/libraries/:language to fetch the available libraries and version.
One thing that surprised me somewhat is that the library id/version isn't actually sent along with the compilation command, but only -I"include path" is added to the userArguments. Which is fine for C++, but I can imagine things might change once other languages get libraries added as well.
It's something to think about.

Regarding the handling of libraries, they are done that way because it was difficult at the time to handle it serverside, but that has now changed. If you haven't already, I can move that to the server computations in this PR.

Ignore my last comment, it's still a tricky thing to get right without lots of duplicates. Feel free to try it yourself :)

Ignore my last comment, it's still a tricky thing to get right without lots of duplicates. Feel free to try it yourself :)

haha, i'll think about it!
meanwhile ill merge this ^^


Incorrect terminology in error message for invalid fail statement

Consider the snippet below:
public function foo(json|error data) returns json {
    if (data is error) {
        fail data;
    } else {
        return data;
    }
}

The error given to the above is:
invalid usage of the 'fail' expression operator: no matching error return type(s) in the enclosing invokable

I don't think it's correct to call it the "fail expression operator" seeing at it's a statement. Need to reword this error message to,

Correct the terminology
Convey what went wrong in a better way

Applies to check/checkpanic errors too.
invalid usage of the 'check' expression operator: all expression types are equivalent to error type
invalid usage of the 'check' expression operator: no expression type is equivalent to error type

Applies to check/checkpanic errors too.
invalid usage of the 'check' expression operator: all expression types are equivalent to error type
invalid usage of the 'check' expression operator: no expression type is equivalent to error type


Refactor streamReader: Replace goto Statement with Loop in Recv Method

@sashabaranov I'd appreciate your review on these changes.
Description
This pull request introduces a refactor to the Recv method in the streamReader type, which improves code readability and maintainability.
Main Changes

Replaced label with for block
Replaced goto with continue to restart the loop if the condition is met.
Replaced short variable declaration with regular variable declaration due to scope issue

For is a block scoped while labels are not block scoped

These changes maintain the functionality of the Recv method, while improving the clarity of the control flow within the function. The goto statement can sometimes make the code hard to understand and maintain, hence this refactor aims to resolve that.
Testing
The changes have been tested to ensure that they don't introduce any regressions.

@sashabaranov I've added a test and modified the branch to address the coverage issue.

Thank you for the PR! While we optimize this section, I've got a couple of comments…

I've done this.
But hmm... Coverage issues have occurred...
I will address them.

@sashabaranov
I've addressed all the CI issues by adding two new tests and rebasing the branch.
Additionally, I have responded to all the comments that were made. 👍
Could you please review it again?

@YukiBobier duh, we've got conflicts now due to other stuff

@sashabaranov Oops, I will resolve it👌


Changes that allows for referring to service name from other resources and that better support ECS deployment using imagedefinitons.json.

Added another output that allows us to refer to the service name from other resources. Specifically, we use this to add a subscription to the log group of the service for the a splunk/s3 log forwarder lambda.
Added an optional variable that allows specifying the container name of the service. This is very useful so that the container name can be fixed across services/environments. It is then straightforward to generate a imagedefinitions.json file after the docker image creation, so that one can use codepipeline to deploy the newly built image.

Error in formatting.


python pubsub io fixes for streaming

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[ ] Make sure tests pass via mvn clean verify.
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

include coder info in pubsub source and sink
use GlobalWindowCoder as a place holder instead of default PickleCoder
fix pubsub source to accept either a topic or subscription.

R: @aaltay
CC: @lukecwik

Done

Linter failed

Coverage decreased (-0.02%) to 70.487% when pulling 8e72701fd65f10f7b18fad5c674a994d7a8cafb8 on vikkyrk:pubsub into 66460cb2d3db56261483c39acdea4786fec156fd on apache:master.

LGTM.


the output is unexpected

thank you for you work.
but the output is unexpected.
I just try to run the demo code in README.md, input image: 'assets/examples/joacquin.png'

You have to replace the insightface recognition model glintr100.onnx with our model arcface.onnx inside ./models/antelopev2. Please check our instructions on how to download arcface.onnx from our HuggingFace repository.


Set displayName via agent

Host has "Display Name" to manage host using any name.
You can set "Display Name" via Web UI but you cannot set via agent.
This PR proposes new displayName setting.
And send the setting with other host specs when agent has started.

@Sixeight  LGTM!
Could you review #93, before merging this p-r?

@Songmu thank you! ok, I'll try to review your p-r!


Alternative hardware design PHY2PHY

https://electronics.stackexchange.com/questions/90330/connecting-two-ethernet-phy-without-magnetics
Is it possible to use the uni-directional properties from the internal PHY interface to create a datadiode connecting only the TX to the RX?
Via the link i found a few links to connect 2 PHY interfaces but could this also work when only connecting the TX to the RX?
Update 31-01-2022: at this moment we are trying to create a prototype.

Uploaded hardware design to example.
Design works in specific cases but there is a problem keeping the ethernet link up.

Uploaded hardware design to example. Design works in specific cases but there is a problem keeping the ethernet link up.

Is there a good reason not to include the contents of the zip file as a folder rather than a compressed binary?
Including a .zip file in a git means that when the example is updated (perhaps to fix the "problem keeping the ethernet link up") that the change will be "opaque" in the diff between versions.

Sorry, uploaded via my tablet.


Add Relaton for ETSI: relaton-etsi

This is the link that provides the full ETSI catalog of "published" items:
https://www.etsi.org/?option=com_standardssearch&view=data&format=csv&includeScope=1&page=1&search=&title=1&etsiNumber=1&content=1&version=0&onApproval=1&published=1&withdrawn=1&historical=1&isCurrent=1&superseded=1&startDate=1988-01-15&endDate=2023-10-31&harmonized=0&keyword=&TB=&stdType=&frequency=&mandate=&collection=&sort=1&x=1698720135146

This is a CSV file.

Data fields we need:

Title
ETSI number
Publishing date
PubID ("ETSI EN 300 058-3 V1.2.4 (1998-06)" => Type: "EN", Major number: "300", Minor number: "058", Part: "-3", Version: "V1.2.4", Date: "1998-06")
Version (e.g. "V1.2.4") or Edition ("ed. 1")
Status: EN, SG, ES approval ; Published ; Withdrawn ; Historical
Marker: Current ; Superseded
Keywords
Technical Committees
Standard Type (EN "European Standard", ES "ETSI Standard", EG "ETSI Guide", TS "Technical Specification)
Frequencies
Mandates
Custom Collection ("HSs cited in OJ", "HSs not yet cited in OJ", "HSs RED cited in OJ", "HSs EMC cited in OJ")

PubID
The PubID implementation will be done at:

https://github.com/metanorma/pubid/issues/3

Data
etsi-pubids.txt.zip
ETSICatalog.csv.zip

The data repo has also been created at https://github.com/relaton/relaton-data-etsi

@ronaldtse Be aware that without a grammar, Andrej cannot do anything, and currently, I'm the one writing grammars. Doing so now, but the specification given is quite vague. @andrew2net Ask me if the data you extract does not match the grammar I come up with.

Existing relaton fields that will be used:

Title: //bibitem/title
ETSI number: //bibitem/docnumber
Publishing date: //bibitem/date[@type = 'published']
PubID ("ETSI EN 300 058-3 V1.2.4 (1998-06)" => Type: "EN", Major number: "300", Minor number: "058", Part: "-3", Version: "V1.2.4", Date: "1998-06"): //bibitem/docidentifier[@type = 'ETSI']
Version (e.g. "V1.2.4") or Edition ("ed. 1") : //bibitem/version/draft, //bibitem/edition
Keywords: //bibitem/keyword
Status: EN, SG, ES approval ; Published ; Withdrawn ; Historical: //bibitem/status/stage

Extension types:

Marker: Current ; Superseded: //bibitem/ext/marker
Technical Committees : //bibitem/ext/editorialgroup (by default, same structure as in ISO)
Standard Type (EN "European Standard", ES "ETSI Standard", EG "ETSI Guide", TS "Technical Specification) :  //bibitem/ext/doctype, //bibitem/ext/doctype@abbreviation
Frequencies : //bibitem/ext/frequency (multiple, text)
Mandates: //bibitem/ext/mandate (multiple, text)
*Custom Collection ("HSs cited in OJ", "HSs not yet cited in OJ", "HSs RED cited in OJ", "HSs EMC cited in OJ")  //bibitem/ext/custom-collection

Data fields we need:

@ronaldtse how about scope? Shouldn't we use it as an abstract?

PubID ("ETSI EN 300 058-3 V1.2.4 (1998-06)" => Type: "EN", Major number: "300", Minor number: "058", Part: "-3", Version: "V1.2.4", Date: "1998-06")

@ronaldtse what are the parts in IDs like this ETSI GTS 11.40-DCS V3.3.0 (1995-02)?

Status: EN, SG, ES approval ; Published ; Withdrawn ; Historical

@ronaldtse there abbreviations after the ETSI prefix are:
GS, GR, TR, TS, EG, ES, EN, ETR, GTS, SR, TCRTR, TBR, NET, ETS, I-ETS

I guess that:
EN => EN approval
ES => ES approval
What are all other abbreviations?

GS, GR, TR, TS, EG, ES, EN, ETR, GTS, SR, TCRTR, TBR, NET, ETS, I-ETS

I guess that: EN => EN approval ES => ES approval
What are all other abbreviations?

All of these are not Statuses, they are "document types".
GS: Group Specification
GR: Group Report
TR: Technical Report
TS: Technical Specification
EG: ETSI Guide
ES: ETSI Standard
EN: European Standard ("European Norm")
ETR: ETSI Technical Report
GTS: GSM Technical Specification
SR: Special Report
TCRTR: Technical Committee Reference Technical Report
TBR: Technical Basis for Regulation
ETS: European Telecommunication Standard
I-ETS: Interim European Telecommunication Standard
ET: Cannot find this in the CSV file

@ronaldtse what are the parts in IDs like this ETSI GTS 11.40-DCS V3.3.0 (1995-02)?

DCS is together with "11.40-DCS"? I'm not sure...
I think this document has no part number:

https://www.etsi.org/deliver/etsi_gts/11/1140/03.03.00_60/gsmts_1140dv030300p.pdf

ET: Cannot find this in the CSV file

@ronaldtse do you mean NET?
"ETSI NET 005 ed.2 (1995-09)" http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=2642
"ETSI NET 004 ed.1 (1994-06)" http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=2627
"ETSI NET 003 ed.2 (1995-09)" http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=2656
"ETSI NET 002 ed.2 (1994-06)" http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=2653
"ETSI NET 001 ed.2 (1994-06)" http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=2654

So NET is “Norme Européenne de Télécommunication”. Another document type.

DocumentType = "European Standard" | "ETSI Standard" | "ETSI Guide" | "Technical Specification" | "Group Specification" | "Group  Report" | "Technical Report" | "European Norm"  |  "ETSI Technical Report" | "GSM Technical Specificaiton" | "Special Report" | "Technical Committee Reference Technical Report" | "European Telecommunication Standard" | "Interim European Telecommunication Standard" | "Norme Européenne de Télécommunication"
I've used "European Norm" and "Norme Européenne de Télécommunication" to match the abbreviations; should I make then "European Standard" and "European Telecommunication Standard" instead? Are ETS and NET the same thing?

I've used "European Norm" and "Norme Européenne de Télécommunication" to match the abbreviations; should I make then "European Standard" and "European Telecommunication Standard" instead? Are ETS and NET the same thing?

European Standard
The official name of the "European standard" is defined by the European Commission.
The official name of the "European standard" as stated by the EC is:

European Standards are under the responsibility of the European Standardisation Organisations (CEN, CENELEC, ETSI) and can be used to support EU legislation and policies.

And is codified in the OJEU:
https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32012R1025

So it is not "European norm".

A harmonised standard is a European standard developed by a recognised European Standards Organisation: CEN, CENELEC, or ETSI. It is created following a request from the European Commission to one of these organisations.

I can't find where the "EN" abbreviation comes from, but the CEN/CENELEC site says:
https://www.cencenelec.eu/european-standardization/european-standards/

A European Standard (EN) is implemented by the national CEN and CENELEC Members as a national standard, and therefore is included in the standards catalogue of CEN and CENELEC's Members, the National Standardization Organizations in 34 countries.

So still it is "European Standard".
NET vs ETS
No, they are different things.
ETSI NET:
https://www.etsi.org/deliver/etsi_net/001_099/003/02_60/net_003e02p.pdf

ETSI ETS:
https://www.etsi.org/deliver/etsi_i_ets/300100_300199/30010201/01_60/ets_30010201e01p.pdf

Here's an official explanation of the differences between a NET and ETS from:
https://www.etsi.org/deliver/etsi_i_ets/300001_300099/300001/01_60/ets_300001e01p.pdf
It seems like a NET has a higher approval standing than an ETS, since the ETS needs extra approval to become part of a NET.


38 fix types in the ast

Changes

Implement ControlledSemantic to be able to express CNOT as a
controlled X, for instance
Separate validation of qubit ranges from type-checking in a separate
ANTLR tree visitor
snake_case instead of camelCase for variable names
Add docstrings to parsing classes
The GateLibrary superclass is used to factorize code for gateset-aware
classes (e.g. TypeChecker)
Semantic classes are removed, absorbed into Gate subclasses
Move ALL ANTLR parsing classes to parsing folder - this has already
been done, but only partially
Gates are specified directly with Python functions and a decorator
Lay the basis of handling of anonymous gates
Writer turned into impl pattern
Rename AST -> IR
Make test_testinterpreter a proper unit test, before it was testing
parsing too
Visitor pattern for the SquirrelIR class
Use those visitors in e.g. writer and test_interpreter
Various code fixes
Use inspect to know Python function signatures
This makes the gate semantic API nice to use from Python.

TODO
Add test for qubit range checker

Thanks Chris for the review, will look asap

I've tried increasing the test coverage a bit, by looking at what was not covered
Most of the non-covered code is now generated code from ANTLR... Not sure if I can do much about it, the test_parsing.py is already pretty complete

I've tried increasing the test coverage a bit, by looking at what was not covered Most of the non-covered code is now generated code from ANTLR... Not sure if I can do much about it, the test_parsing.py is already pretty complete

Yes, I see, good point. We could exclude the generated files by adding them to the omit list of the coverage tool in the pyproject.toml:
[tool.coverage.run]
branch = true
omit = ["tests/*", "**/.tox/**","opensquirrel/parsing/antlr/*"]


Enable Normal Mod VDS Conntrack

Codecov Report

:exclamation: No coverage uploaded for pull request base (demo@ce8e29d). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             demo     #416   +/-   ##
=======================================
  Coverage        ?   49.15%
=======================================
  Files           ?       49
  Lines           ?     9765
  Branches        ?        0
=======================================
  Hits            ?     4800
  Misses          ?     4572
  Partials        ?      393

Do not commit with same names, or squash them before merge.


Add L1 height metric

Apparently, L1 sync can stall. It should be a good metric to monitor the health of l1 service.

Done in #1441


Allow more granular access during maintenance mode

I have a system where I have Staff users and during maintenance windows I need them to not have access. However a superuser who better understands what's happening during these maintenance windows I do want to have access.
ref #19
Right now, in order to address this, I have to put the middleware before the AuthenticationMiddleware... sad music indeed =,(

@aventurella thanks


dummy PR to trigger CI builds

cc @rmg @gunjpan let's use this PR to test CI builds

@rmg the console log says
strongloop-config installed, you can now npm run user-install
<EMAIL_ADDRESS>node_modules/build-framework
+ echo /usr/local/opt/ruby/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
/usr/local/opt/ruby/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
+ /usr/local/bin/pod
/var/folders/y0/wzqzl9bs0s1293pxkyl36kgh0000gp/T/hudson1115997869716752666.sh: line 4: /usr/local/bin/pod: No such file or directory

but the source code in our project should print a different result AFAICT:
https://github.com/strongloop/loopback-sdk-ios-codegen/blob/d54805500181b6ebc9fc26129c52a50660e45b33/test-env/bin/run-unittests#L17
pod install

BTW the run-unittest script executes a bunch of commands before getting to pod install, these commands are pretty verbose, but the console log from CI does not include them.
It looks to me like the problem is in the build-framework right now. Thoughts?

@slnode test please

The build on ci.strongloop.com is failing with the following error now:
2016-10-17 07:32:28.162 xcodebuild[25966:6952463] [MT] iPhoneSimulator: Could not launch simulator: -10827
xcodebuild: error: Failed to build workspace CodeGenTest with scheme CodeGenTest.
	Reason: The operation couldn’t be completed. (OSStatus error -10827.)

I found the error description (see https://www.osstatus.com/search/results?platform=all&framework=all&search=-10827):
kLSNoExecutableErr
	The executable file is missing or has an unusable format.

It looks like the XCode build peforms "clean" target only and does not build the test app at all. I need to investigate this more.

Closing, I'll let somebody from @strongloop/squad-apex to take over this work.


ModuleNotFoundError: no module named 'yaml' when running crawler

Seeing this error when running run.sh
bash run.sh config/vectara-notion.yaml default
Building for amd64 with buildx
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'yaml'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'yaml'
[+] Building 14.5s (8/18)

From docker container logs (that immediately exited after building with EC 1)
2024-08-15 16:29:21 2024-08-15 23:29:21,317 - root - INFO - Starting the Crawler...
2024-08-15 16:29:21 INFO:root:Starting the Crawler...
2024-08-15 16:29:21 Traceback (most recent call last):
2024-08-15 16:29:21   File "/usr/local/lib/python3.10/dist-packages/toml/decoder.py", line 511, in loads
2024-08-15 16:29:21     ret = decoder.load_line(line, currentlevel, multikey,
2024-08-15 16:29:21   File "/usr/local/lib/python3.10/dist-packages/toml/decoder.py", line 737, in load_line
2024-08-15 16:29:21     raise ValueError("Invalid date or number")
2024-08-15 16:29:21 ValueError: Invalid date or number
2024-08-15 16:29:21
2024-08-15 16:29:21 During handling of the above exception, another exception occurred:
2024-08-15 16:29:21
2024-08-15 16:29:21 Traceback (most recent call last):
2024-08-15 16:29:21   File "/home/vectara/ingest.py", line 164, in <module>
2024-08-15 16:29:21     main()
2024-08-15 16:29:21   File "/home/vectara/ingest.py", line 92, in main
2024-08-15 16:29:21     env_dict = toml.load(f)
2024-08-15 16:29:21   File "/usr/local/lib/python3.10/dist-packages/toml/decoder.py", line 156, in load
2024-08-15 16:29:21     return loads(f.read(), _dict, decoder)
2024-08-15 16:29:21   File "/usr/local/lib/python3.10/dist-packages/toml/decoder.py", line 514, in loads
2024-08-15 16:29:21     raise TomlDecodeError(str(err), original, pos)
2024-08-15 16:29:21 toml.decoder.TomlDecodeError: Invalid date or number (line 4 column 1 char 21)

Ah needed to pip install the yaml lib, this issue is solved


RemoteService Exception

Hi, crashlytics is showing a remote service exception. Roughly 6-7% users are affected. How can I resolve this?

First of all, the library is great @danielR2001 . Many thanks.
In the production version of our app which is being used by thousands of users, two main crash clusters (related to this library) were observed - (1) Null pointer exceptions in ForegroundPlayer startcommand and (2) RemoteServiceExceptions like the one mentioned above.
(1) were resolved by simply checking for null values, wherever possible and appropriately returning sticky & non_sticky in the startcommand function
(2) was a bit more complicated. We ended up over-riding the onCreate function and calling startForeground() from onCreate as well.
Would love to contribute these changes to the library.

@hrushi-m Hello, could you please provide the code to solve this problem? I found this BUG after the release of my APP, which seriously affected the use


Missing MPI_Aint_add function

Hi all,
I am just trying Wi4MPi in c++ langage, and it seems that it miss the MPI_Aint_add  function in the header, and so don't compile.
Normal or not ?
Are there other features that are not covered by the MPI 3.1 standard ?
Regards,
Yann Meurdesoif

Hi Yann,
Nice to see you on wi4mpi 😃 !
A simple code with MPI_Aint_add() should reproduce?
For now, only MPI 3.0 is supported.
We must add 3.1 and 4.0 support.
Best,
Adrien

Ok, I didn't look if MPI_Aint_add was a new MPI 3.1 feature.
In fact, the function is not decleared in the header file (mpi.h) so it hang at compilation.
I have just make a try because I would like to test several MPI library with our new version of XIOS, wich required now a lot of MPI3 functionnalities, in particuliar for passiove one-side communication with dynamic windows allocation.
Let me know when you planed to implement this function.
Cheer,
Yann


Separate repos for different each type of firefox build

Firefox, Firefox Nightly, Firefox Beta and Firefox ESR all types of builds are being released in the same repo with different tags.
So, AppImage managers are not able to identify each releases.
The result is when I use such app such as AppImagePool, and trying to download any firefox build (e.g Firefox ESR), it shows only Nightly build. Because these apps are supposed to fetch the latest release and Nightly Build is tagged as latest.
This will be solved if separate repos are created for each type of build.

Sorry, that will bring in a lot of maintenance overhead. But feel free to fork the repository and set up separate builds for each repo.


feat: auto for seq2seq

Running seq2seq encoder-decoder is now as easy as
from dataquality.integrations.seq2seq.auto import auto
dataset = "tatsu-lab/alpaca"
auto(dataset)

Shortcut ticket
https://app.shortcut.com/galileo/story/7604/dq-auto-for-s2s
Drew inspiration from:
https://colab.research.google.com/drive/1SIk7A85KZqWXoZ_Ri4H6UR-wMDnirPN_?authuser=2#scrollTo=-kyyP8P0W27M

Codecov Report

Merging #767 (ade9a5a) into main (ee0bbf2) will decrease coverage by 1.05%.
The diff coverage is 9.13%.

:exclamation: Current head ade9a5a differs from pull request most recent head e43a4b3. Consider uploading reports for the commit e43a4b3 to get more accurate results

@@            Coverage Diff             @@
##             main     #767      +/-   ##
==========================================
- Coverage   89.10%   88.05%   -1.05%
==========================================
  Files         179      181       +2
  Lines       14820    14981     +161
==========================================
- Hits        13205    13192      -13
- Misses       1615     1789     +174

Files
Coverage Δ

dataquality/dq_auto/base_data_manager.py
100.00% <100.00%> (ø)

dataquality/integrations/seq2seq/hf.py
90.69% <100.00%> (ø)

dataquality/utils/auto.py
91.50% <73.33%> (-3.50%)
:arrow_down:

dataquality/integrations/seq2seq/auto.py
0.00% <0.00%> (ø)

dataquality/integrations/seq2seq/s2s_trainer.py
0.00% <0.00%> (ø)

... and 9 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Add Indonesian Translation

🤔 This is a

[ ] Feature
[ ] Bug
[ ] Documentation Update
[*] Translation

✍ Description

Write a short description
Indonesian translation for readme file

Added to documentation

[*] readme file
[ ] No documentation needed

🐱💻 Use a meme/gif to describe how you feel for contributing (optional)

Hey, read the contribution guidelines on how to make a successful Pull request.
Click the contribution.md file


Basic example minor fix

In the basic example, I see the following line:
const gameCopy = { ...game };
I don't think this will work, because the copy will only inherit the enumerable properties, instead of the prototype's methods.
Therefore the following line will fail:
const result = gameCopy.move(move);
Easily fixed with using:
const gameCopy = Object.create(game);

Have you tried using the basic example code?
I believe it does work, I use the same logic in my chessopenings.co.uk website

Yes, it's strange that it does work for you then.
The following code I have is the same as the demo:

The first log:

The copy:

Object.create fixed it for me. Unless I'm missing something, the docs aren't too clear but it would appear that the prototype was not copied for me.

This is the object in production at react-chessboard.com, showing the move() function available in the gameCopy
The spread operator should copy over the functions from the game object, no idea why they are in your prototype object as they aren't prototype methods
What node version are you using out of curiosity?

I'm not sure what you mean; methods are always per default on the prototype object (?).
I upgrade yesterday to Node version v19.1.0.

can you try downgrading to node 16 and see what happens?

also what version of Chess.js are you using?

Sorry, I prefer not to downgrade currently, as I'm working on other projects.
The versions used are:

What I meant is that I'm used to methods in JS being on the prototype object, because it helps with inheritance in the prototype chain. Perhaps they've changed this behavior in the chess.js lib compared to previous versions (?).
Btw nice lib!

You can use nvm to move between node versions quickly, might be worth giving it a try on node 16 and also using chess.js 0.12.0 to see if that fixes anything

It's not a blocking issue for me, I just thought to send a ping with my experience. For me you can close the issue.

It may be an issue if Node 19 and Chess.js 1.0.0 mean the examples are incorrect
Thank you for raising it, I will look into it further when I have time

I'm trying to recreate the basic example, and I couldn't get the random move working, it would generate the chosen and the random response, but only render the chosen move. Here's the code that I got working for player vs player. I had to edit the promotion logic, as the new version of chess.js fails if you add promotion but the move isn't a promoting move.
import React, { useState } from 'react';
import { Chess, Square, Move } from "chess.js";
import { Chessboard } from "react-chessboard";

interface ShortMove {
  from: Square;
  to: Square;
  promotion?: string;
}

export default function App() {
  const [game, setGame] = useState(new Chess());

  function makeAMove(move: ShortMove) : Move | null {
    const gameCopy: Chess = Object.create(game);
    const result = gameCopy.move(move);
    setGame(gameCopy);
    return result; // null if the move was illegal, the move object if the move was legal
  }

  function onDrop(sourceSquare: Square, targetSquare: Square): boolean {
    const gameCopy: Chess = Object.create(game);
    if (makeAMove({ from: sourceSquare, to: targetSquare })) {
      return true;
    } else if (makeAMove({ from: sourceSquare, to: targetSquare, promotion: 'q' })) {
      return true;
    } else {
      return false;
    }
  }

  return (
    <>
      <Chessboard position={game.fen()} onPieceDrop={onDrop} />

{game.pgn()}

    </>
  );
}

And my dependencies are:
  "dependencies": {
    "@testing-library/jest-dom": "^5.16.5",
    "@testing-library/react": "^13.4.0",
    "@testing-library/user-event": "^13.5.0",
    "@types/jest": "^27.5.2",
    "@types/node": "^16.18.3",
    "@types/react": "^18.0.25",
    "@types/react-dom": "^18.0.9",
    "chess.js": "^1.0.0-alpha.0",
    "react": "^18.2.0",
    "react-chessboard": "^1.3.1",
    "react-dom": "^18.2.0",
    "react-scripts": "5.0.1",
    "typescript": "^4.9.3",
    "web-vitals": "^2.1.4"
  },

if you use chess.js 0.12.0 does it work?
1.0.0 is in alpha and probably shouldn't be used yet

Please check the /example folder for all working examples shown at react-chessboard.com
https://github.com/Clariity/react-chessboard/blob/main/example/package.json

Actually, I'm able to get random moves working with the following code. The only thing I can't get is if I try using it with setTimeout, because then the page re-renders before the new move is made, and doesn't rerender after the timeout.
It probably would work with 0.12.0, but I'd prefer 1.0.0 alpha just because it has typescript defined natively in the package.
import React, { useState } from 'react';
import { Chess, Square, Move } from "chess.js";
import { Chessboard } from "react-chessboard";

interface ShortMove {
  from: Square;
  to: Square;
  promotion?: string;
}

export default function App() {
  const [game, setGame] = useState(new Chess());
  const gameCopy: Chess = Object.create(game);

  function makeAMove(move: ShortMove | string) : Move | null {
    console.log(move);
    const result = gameCopy.move(move);
    setGame(gameCopy);
    return result; // null if the move was illegal, the move object if the move was legal
  }

  function makeRandomMove() {
    const possibleMoves = gameCopy.moves() as string[];
    if (gameCopy.isGameOver() || gameCopy.isDraw() || possibleMoves.length === 0)
      return; // exit if the game is over
    const randomIndex = Math.floor(Math.random() * possibleMoves.length);
    makeAMove(possibleMoves[randomIndex]);
  }

  function onDrop(sourceSquare: Square, targetSquare: Square): boolean {
    const gameCopy: Chess = Object.create(game);
    if (makeAMove({ from: sourceSquare, to: targetSquare })) {
      makeRandomMove();
      return true;
    } else if (makeAMove({ from: sourceSquare, to: targetSquare, promotion: 'q' })) {
      makeRandomMove();
      return true;
    } else {
      return false;
    }
  }

  return (
    <>
      <Chessboard position={game.fen()} onPieceDrop={onDrop} />

{game.pgn()}

    </>
  );
}

https://github.com/Clariity/react-chessboard/blob/main/example/src/boards/PlayVsRandom.js

@Clariity I can concur that the basic example throws an error:

Changing the gameCopy to const gameCopy = Object.create(game); does indeed copy the .move method over but the result returned is permanently null on my end despite being a legal move.
import React, { useState } from "react";
import { Chessboard } from "react-chessboard";
import { Chess } from "chess.js";
import "./Board.css";

const Board = () => {
  const [game, setGame] = useState(new Chess());

  function makeAMove(move) {
    const gameCopy = Object.create(game);
    const result = gameCopy.move(move);

    // For some reason result is always null AND the pawn is not moved - despite playing a legal move
    setGame(gameCopy);
    return result;
  }

  function makeRandomMove() {
    const possibleMoves = game.moves();
    if (game.game_over() || game.in_draw() || possibleMoves.length === 0)
      return; // exit if the game is over
    const randomIndex = Math.floor(Math.random() * possibleMoves.length);
    makeAMove(possibleMoves[randomIndex]);
  }

  function onDrop(sourceSquare, targetSquare) {
    const move = makeAMove({
      from: sourceSquare,
      to: targetSquare,
      promotion: "q", // always promote to a queen for example simplicity
    });

    // illegal move
    if (move === null) return false;

    setTimeout(makeRandomMove, 200);
    return true;
  }

  return (

      <Chessboard id="basic-board" position={game.fen()} onPieceDrop={onDrop} />

  );
};

export default Board;

Hope I'm sharing enough information, let me know if you need anything else to reproduce it. Thanks !

What version of Node and Chess.js are you using please?

chess.js: "^1.0.0-alpha.0
react-chessboard: "^1.3.1
node: v16.13.0

Does this issue exist with chess.js 0.12.0
1.0.0 is in alpha and may introduce issues

Good news, it works with v0.12.0 ! (Side note, loadPgn is load_pgn at that version).
Thank you so much for your help

Closing issue as it's due to chess.js 1.0.0 being in alpha, hence unstable
For now, use chess.js 0.12.0


Looking forward to get involved and contribute to the community 🎉

First Name
Bishal
Last Name
Roy
Discord Username (if applicable)
bishalr0y #2176
Let us understand your motive.
To collaborate and grow as a community.

Hey @bishalr0y 👋🏻
Thanks for requesting an invite! Welcome to SidHacks Community 🎉
Before going ahead, I would want you to complete the below To-Do list.
Your To-Do List ✔

Accept the invitation sent to you via mail.
Change the appearance of this organization to "Public" from the people list here.
Join our Discord Server here.

Accept the Rules from #📓〡rules channel.
Introduce yourself to our community in 👋〡introduction channel.

Feel free to share your excitement on socials with #SidHacksCommunity. You can also tag me @siddharth_hacks.

Close this issue once you complete all the above points.

Looking forward to interacting with you in our community! Welcome once again! 🤓


Tests with LXC

Maybe use Ansible's lxc_container module.
Make conclusions
Check modified files with SHA-2 etc.

TODO

[ ] Look into distrobuilder
[ ] Use overlayfs to create a temp container for the tests
[ ] Use the download template, so we can have Slackware container in Debian (pkgtools missing in Debian)

https://blog.ubuntu.com/2016/04/01/lxd-2-0-image-management-512

Lynis tests to disable

FILE-6310 (Checking /tmp, /home and /var directory)

Trouble ahead. Currently "Create the containers" task fails with:
AttributeError: module 'lxc' has no attribute 'Container'

I'm ditching this. Initial tests with Molecule and Docker are now implemented. lxc.yml needs to be removed at some point.


Settings warning: Incorrect type. Expect one of String

using this settings raises a warning:
"unittest-switcher.unittest.suffix": [".spec"]
Incorrect type. Expect one of String. It seems to expect a string instead of an array. Using a string will fail.

Thank you. I will test it.


SelfControl starting outside schedule

Just had SelfControl auto start at 7:55am on Tuesday when my schedule is set like this:
{
  "sunday": [],
  "monday": [
    {
      "start": "09:00",
      "end": "17:00",
      "blocklist": ".../blacklist.selfcontrol"
    }
  ],
  "tuesday": [
    {
      "start": "09:00",
      "end": "17:00",
      "blocklist": ".../blacklist.selfcontrol"
    }
],
  "wednesday": [
    {
      "start": "09:00",
      "end": "17:00",
      "blocklist": ".../blacklist.selfcontrol"
    }
],
  "thursday": [
    {
      "start": "09:00",
      "end": "17:00",
      "blocklist": ".../blacklist.selfcontrol"
    }
  ],
  "friday": [
    {
      "start": "09:00",
      "end": "17:00",
      "blocklist": ".../blacklist.selfcontrol"
    }
],
  "saturday": []
}

Some kind of bug?

Looks like SelfControl is slated to end at 3pm even though I have 17:00 listed in the schedule

Yea that's not supposed to happen :(.
Can you give me more information?

Did your time zone change? Do you have internet connection?
Did this happen when you restart your laptop?
Did this happen when you woke your laptop from sleep?
Did you sleep or turn off your laptop in the middle of a SelfControl session the day before or days before?

Can you give me more information?

I adjusted the schedule.json file to be 2 hours ahead of what it was previously, and that gets me my desired settings. So your program is reading the time as being 2 hours before my system time.

Did your time zone change? Do you have internet connection?

I'm in Mountain Daylight Savings Time

Did this happen when you restart your laptop?

This doesn't fix anything

Did this happen when you woke your laptop from sleep?
Did you sleep or turn off your laptop in the middle of a SelfControl session the day before or days before?

I let my laptop sleep every day when I stop using, so pretty tough to say if that's related. I doubt it though because restarting changes nothing.
Not totally sure what other info I can provide!

Thanks so much for the info!
For your time zone, is it set to automatically detect in settings or do you have it set manually?
Also how long was it working before this happened?

The time is auto set.
I really don't know. Yesterday is the first time I noticed but it may have been happening for weeks.

Are you connected to internet?
Are you in a different location than the actual timezone?
Are you using a VPN?


esbuild try to transform html when page path ends with .tsx

Do NOT ignore this template or your issue will have a very high chance to be closed without comment.

Describe the bug
In my SPA, I have a route with path /some-path.tsx. I can navigate to it from '/' and it works fine. But if I refresh the browser in /some-path.tsx,  I get this error:

esbuild is trying to transform the html code!
I think we should distinguish the html request and js module import in a more robust way.
Reproduction
https://github.com/csr632/test-vite/tree/esbuild-html
System Info

required vite version: 1.0.0-beta.11
required Operating System: MacOS
required Node version: 12.16.2

This problem should be caused by transform.


Pass multiprocessing parameters through the shell

Summary

Exposed the multiprocessing parameters num_workers, num_prefetch, shuffle_buffer_length as hyperparameter keys through the shell
Updated run_train method to read these keys in from the hyper-parameters and set their values
For num_workers we set to be the minimum of inputed value if set and if not input default 4 and the sort of the number of cpus
Added logging to log these parameter values inparallelized_loader.py
Added logging to whether the dataset was cached or not and its type, i.e. ListDataset and FileDataset, respectively

Testing

Add MQCNNEstimator as forecaster_type to test_train_shell to extend the test for trainable algorithms unlike the current MeanPredictor
Passed the three multiprocessing parameters as hyper-parameters and used the smoke test with the MQCNNEstimator

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

There is a timeout test error of 30s for the additional test I added with the MQCNNEstimator.  It takes longer than that to run.  Is there a way to increase the test timeout>


Automated Package Upgrade

:tada: This PR is included in version 28.5.26 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Support for a project level .asciidoctorconfig file

It would be really nice to implement a feature similar to VSCode/Intellijel .asciidoctorconfig in ST4-AsciiDoctor.
https://github.com/asciidoctor/asciidoctor-vscode/issues/380

I guess this is already here with the User/Asciidoctor.sublime-settings file :/

What would be the expectation of this feature be for ST? to resolve include directives in order to open files in the editor?
If that's the case, it should be doable since I've seen various plug-ins doing it, based on the native ST search results, which allows to open a file at a specific line by clicking on the underlined results.
As for images previewing, I think that would only work as a means to open the image in the editor, since ST now supports previewing some image formats on independent tabs — but I don't think it supports inline images, since unlike VSCode it doesn't rely on a true browser component but on a proprietary rendering engine with limited HTML support.
For images, we'd only need to establish the value of the :imagesdir: attribute — i.e. assuming that's defined on the document header and not via the CLI. There could be a fallback mechanism, like suggested in the linked Issue, e.g. reading a project configuration file (either a native ST project file or a dedicate extension settings file).
Most likely, it's hard to find a solution that works with every workflow, since everyone has its own way to handle AsciiDoc projects. I mostly use Rake to handle my projects, but ST leverages Python, so it might be sub-optimal to expect an interaction between the two languages.
But I think the idea is good, but might need some thought on how to approach for ST specifically.

For my personal use case, I'd like to see:

Resolve include directives in order to open files in the editor. I use this: https://github.com/aireilly/sublime-adoc-ref It works OK, but could be improved.
Autocomplete attributes. Right now, I have a kind of hacky set up where I generate attribute snippets: https://github.com/aireilly/asciidoc_sublime_snippets/blob/master/scripts/generate-asciidoc-snippets.py. Ideally, ST should pick up defined attributes in an AsciiDoc project.

Autocomplete attributes. Right now, I have a kind of hacky set up where I generate attribute snippets:
https://github.com/aireilly/asciidoc_sublime_snippets/blob/master/scripts/generate-asciidoc-snippets.py.

Can you integrate it into this repository via a pull request?

Ideally, ST should pick up defined attributes in an AsciiDoc project.

Probably the hackish solution is good enough. I doubt it's possible to come up with a perfect solution, given the complexity that AsciiDoc project can reach (nested attributes, conditional attributes, CLI-defined attributes, etc.). Your proposed solution seems good enough for most projects, making developers' life easier when handling large projects that don' depend on advanced definitions.
In order to have a package that fully covers AsciiDoc features it would have to rely on an LSP server — which I believe would be very difficult to implement, since it would have to be real-time efficient (possibly, in a compiled language) and gracefully downgrade when incomplete or invalid constructs are found.

Sure! I think I have a bunch of stuff that would work in the repo actually. I will PR some things in.


TODO: DecideKickOut()

We kick out the agent with the lowest Social Capital.

Pushed on branch alex, alongside other task. (depends on Ishaan's feature for GetBikerWithMinSocialCapital)


Specific weapon modes crash

When my server adds some restrictions on office weapons, for example, only knives are allowed in the first round, and the robot plug-in will crash and exit. Even if there is no crash, the robot will not work normally. For example, only weapons and knives are allowed to be used. However, the robot only squats in the original place and slides continuously, and will not approach the attack. I don't know how to solve this problem.
The plug-in code looks like this
public plugin_init() { 	register_plugin("Restrict Weapons Fight", "1.2", "Rulzy") 	register_menucmd(register_menuid("#Buy", 1), 511, "menuBuy") 	register_menucmd(register_menuid("BuyItem", 1), 511, "menuItem") 	register_event("TextMsg", "Game_Commencing", "ac", "2&#Game_Commencing") 	register_concmd("amx_clear_restwpns", "cmdClearRestrictWeapons", ADMIN_LEVEL_A, "<n> <flags> - set restrict weapons") 	register_concmd("amx_add_restwpns", "cmdAddRestrictWeapons", ADMIN_LEVEL_A, "<flags> - set restrict weapons") 	register_cvar("amx_delaygivegrenade", "0.1") 	register_event("CurWeapon","eWeaponChange","be") 	register_event("HLTV", "eNewRound", "a", "1=0", "2=0") 	//register_clcmd("fullupdate", "cmd_fullupdate") 	register_event("ResetHUD", "eResetHUD", "be") 	register_event("TextMsg", "eRestart", "a", "2=#Game_will_restart_in") 	register_event("AmmoX", "eAmmoX", "be") 	g_RestrictCount = 0 	for(new i=0;i<MAX_REST_ROUND_COUNT;i++) 		g_weaponflags[i] = FLAG_Z }

Please, use issue template. the plugin_init code you're posted says nothing to me. Please re-open with correct description.


asyncio.exceptions.TimeoutError when running 'cluster.add(docs)  cluster.index()'

Traceback (most recent call last):
File "run.py", line 58, in
cluster.index()
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/txtai/api/cluster.py", line 118, in index
self.execute("get", "index")
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/txtai/api/cluster.py", line 197, in execute
return loop.run_until_complete(self.run(urls, method, data))
File "/root/miniconda3/envs/txtai/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
return future.result()
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/txtai/api/cluster.py", line 226, in run
return await asyncio.gather(*tasks)
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/txtai/api/cluster.py", line 240, in get
async with session.get(url) as resp:
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/aiohttp/client.py", line 1138, in aenter
self._resp = await self._coro
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/aiohttp/client.py", line 559, in _request
await resp.start(conn)
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/aiohttp/client_reqrep.py", line 913, in start
self._continue = None
File "/root/miniconda3/envs/txtai/lib/python3.8/site-packages/aiohttp/helpers.py", line 721, in exit
raise asyncio.TimeoutError from None
asyncio.exceptions.TimeoutError

Thank you for submitting the issue.
Is there more information or configuration you can provide? I am not sure how to reproduce this issue.

Closing due to inactivity. Feel free to reach back out if there are further questions.


(feature) Timer - add options for format

#feature
Timer - add options for format

Current coverage is 90.42%

Merging #1008 into development will increase coverage by 0.02%

@@           development      #1008   diff @@
=============================================
  Files               26         26
  Lines              781        783     +2
  Methods            142        143     +1
  Messages             0          0
  Branches           115        115
=============================================
+ Hits               706        708     +2
  Misses              75         75
  Partials             0          0

Powered by Codecov. Last update 4208f52...8f2e96b

it is empty?


vmstat gem installation path

Install vmstat gem into the path that sensu gems are expected to run from:
sudo /opt/sensu/embedded/bin/gem install vmstat --no-rdoc --no-ri

following above instruction, what is the expected destination this would install the gem file to?
I am able to install this gem as user "sensu", and gem installation destination is

/opt/sensu/.gem/ruby/2.3.0/gems

But rest of sensu gem dependencies are at

/opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/

I am not too happy about dependencies spread across multiple locations...

@jaykumar-jnpr unless you are disabling the embedded gems it should be installed in the context of the embedded gem.

@eheydrick should we close this due to lack of response?

@jaykumar-jnpr the gems should be installed under /opt/sensu/embedded. You'll need to install them as the root user as that directory is owned by root by default. the sudo command you included should do it however if you are still having problems feel free to reopen this and include the full output.


Updated privacy, about and terms pages to Bootstrap 4.1.1

Small commit converting Privacy, About and Terms pages to Bootstrap 4.1.1 .
This is in continuation of previous commit to convert whole vokuro frontend into BS 4.1.1, more changes on way.

Thank you


Paperless NG has been Archived in favor of Paperless NGX

The Paperless NG ansible-nas application has been superseded by Paperless NGX, and its repo has been archived. I would add the new version in this project to ensure it gets updated regularly. Link to the new repo here

Locally I've been using this pull request to run paperless NGX: https://github.com/davestephens/ansible-nas/pull/652
It would be awesome to get that merged

Njvf

Tygfdr


Fix redundant link.

The previous link to more reading on public projects pointed from this document to itself. Change link to make-project-public that actually provides more information on what public projects does.

#sign-off

@chcomley - can you review the proposed changes?
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@American-Dipper already did, thanks


Steam Runtime requires refreshing

Issue description
The Steam Runtime has been updated by Valve recently. Last NixOS update caused a rebuild of the steam-runtime package, and as such, most downloads from http://repo.steampowered.com/steamrt/ return 404. The https://appradar.net mirror is still working, but it's outdated, and takes quite a while to download stuff.
Steps to reproduce
Attempt to upgrade or download steam. The steam-runtime package depends on it, and will fail on most downloads.
Technical details

system: "x86_64-linux"
host os: Linux 4.19.18, NixOS, 19.03pre167858.f2a1a4e93be (Koi)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.2
channels(root): "nixos-19.03pre168279.3bd7a3b3b96"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos
results.

Since last time the issue was solved by @Synthetica9 , @Infinisil and @c0bw3b, I will mention them here just in case.

i made a pr #55269

The https://appradar.net mirror seems to be down now.

Closing issue since this has been solved by #55269. Thanks, @christoph00


error in process sentinel: Wrong number of arguments: ((t) (buffer event) (if buffer (kill-buffer buffer))), 1 when typing 'exit' in vterm

What did you expect to happen?
My vterm terminal to be closed, and possibly the buffer to be killed.
What actually happened?
error in process sentinel: Wrong number of arguments: ((t) (buffer event) (if buffer (kill-buffer buffer))), 1

Additional details:

Debugger entered--Lisp error: (wrong-number-of-arguments ((t) (buffer event) (if buffer (kill-buffer buffer))) 1)
  +vterm-kill-buffer-on-quit-fn(#)
  run-hook-with-args(+vterm-kill-buffer-on-quit-fn #)
  (let ((buf (process-buffer process))) (run-hook-with-args (quote vterm-exit-functions) (if (buffer-live-p buf) buf nil)))
  vterm--sentinel(# "finished\n")

Steps to reproduce:

Enable the vterm module
Hit SPC o T
Type exit and hit return
Observe the error

System information:

emacs   version    26.3
        features   XPM JPEG TIFF GIF PNG RSVG SOUND DBUS GSETTINGS GLIB NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD
        build      Jan 30, 2020
        buildopts  (--prefix=/nix/store/bqvfhil4b775r16hf7bp2pzb4wzhy4bi-emacs-26.3 --disable-build-details --with-modules --with-x-toolkit=gtk3 --with-xft CFLAGS=-DMAC_OS_X_VERSION_MAX_ALLOWED=101200)
        windowsys  x
        daemonp    server-running
doom    version    2.0.9
        build      HEAD -> develop c801a70ec 2020-01-29 16:37:05 -0500
        dir        ~/work/dotcharles/doom.d/
system  type       gnu/linux
        config     x86_64-pc-linux-gnu
        shell      /nix/store/11rg794bcdqic27z3pgqfxlzqsrs51dy-zsh-5.7.1/bin/zsh
        uname      Linux 4.19.91 #1-NixOS SMP Sat Dec 21 09:57:45 UTC 2019 x86_64
        path       (/nix/store/2xwxj5qrrc71asdk1wyq19nz9k845pzs-patchelf-0.9/bin/ /nix/store/291ldi6fqsbmkbvbs8is4mcg3jb64ld4-gcc-wrapper-8.3.0/bin/ /nix/store/62x7m20m7lm8y8s17cbgha0sf3cmma19-gcc-8.3.0/bin/ /nix/store/hblpx8x5w88igmwa4ydnsnb65s363lji-glibc-2.27-bin/bin/ /nix/store/9v78r3afqy9xn9zwdj9wfys6sk3vc01d-coreutils-8.31/bin/ /nix/store/gwwycf3w6cbj0gd2mpgblrdjc24f3cys-binutils-wrapper-2.31.1/bin/ /nix/store/ajrrkivdfvp8dp4vdg5hp1h5hblmanc9-binutils-2.31.1/bin/ /nix/store/hblpx8x5w88igmwa4ydnsnb65s363lji-glibc-2.27-bin/bin/ /nix/store/9v78r3afqy9xn9zwdj9wfys6sk3vc01d-coreutils-8.31/bin/ /nix/store/021yihqyplja8w3mb0xwl13gpz6x83ar-ghc-8.8.1-with-packages/bin/ ...)
config  envfile    nil
        elc-files  0
        modules    (:completion (company +childframe) (ivy +icons +prescient) :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ...)
        packages   ((magit-todos :disable t))
        elpa       (n/a)
        unpin      (n/a)

5b242c73b should indirectly and temporarily resolve this -- your workaround is also a viable alterantive -- so I'll consider this resolved. Let me know if that isn't the case and I'll reopen this. Thanks for bringing it to my attention!

LGTM, thanks!


Add basic guideline/suggestion for contributing

After made few PR, i noticed there's no basic guideline/suggestion for contributing to ktrain library. I think it'd be great to add few basic guideline/suggestion (whether on README.md or separate file) such as,

Don't change internal behavior of existing feature/function
Maintain backward compatibility
How to run test files

Yes, I  totally agree - I've added an initial CONTRIBUTING.md  to the develop branch that you can feel free to add/edit, as necessary.  Thanks!


Contents

Contents  长了以后就不显示了

@spring2613 Hi, can i have some example?
i did not understand your problem

@spring2613 oh! i see
i  have fixed the problem 👍
here is the solution i use:

Go find the css file which render the toc ( in my case the file is at: .BeanTech/source/css/toc.styl)
Verify the css code
change the attribute overflow from "hidden" to "auto", then the browser will auto decide to be scrollable or not.

#toc
  width: inherit
  line-height 1em
  font-size 0.9em
  float left
  overflow: auto  // where i fixed the problem
  @media mq-mobile
    display: none
  @media mq-tablet
    display: none

Regenerate and Redeploy the whole project
hexo g -d
Done!
Thanks for reporting the error 💯
Peace!


Typo in PhysicsEngineFlags

Good first issue

Issues reserved for newcomers. Consider taking it only if it's your first time working on a feature or a bug in Xenko.

PhysicsEngineFlags has a value spelled ContinuosCollisionDetection instead of ContinuousCollisionDetection.
Because that value is used in an asset (here PhysicsSettings which is serialized in GameSettingsAsset), there is a need to write an asset upgrader.

Wasn't there an attribute to rename stuff with Yaml serialization? (Might work only for properties, not sure about enum)


Feature: combine result CSVs into one

What are you trying to achieve?
Combine two or more result CSVs into one.
Describe the solution you'd like
A UI screen to click on the ones I want to combine with preview of the clicked one and combined
What have you tried already?
Now it needs to be manual
Additional info

Done in 0.5.0


F523: Regression: index out-of-bounds panic on invalid parameter indices

Potentially, a .format'd string specifies a parameter outside of the number of real parameters:
"{8}".format(0, 1)

If a) the index specified in the template exceeds the number of parameters and b) there are unused format args, the F523 fix will panic (regression from: https://github.com/charliermarsh/ruff/pull/4837)
This was detected by #4822.

I had to modify the snippet a bit to reproduce: "{1} {8}".format(0, 1)


Update yard to current

There's a CVE that doesn't impact us, but is showing up in GitHub.
Signed-off-by: Tim Smith<EMAIL_ADDRESS>

https://buildkite.com/chef/chef-chef-server-master-omnibus-adhoc/builds/265


Unusual capitalization for "Tin Dust" and "Iron ore Dust"

Mod source
Factorio Mod Portal
Which mod are you having an issue with?

[ ] pyalienlife
[ ] pyalternativeenergy
[ ] pycoalprocessing
[ ] pyfusionenergy
[ ] pyhightech
[ ] pyindustry
[ ] pypetroleumhandling
[ ] pypostprocessing
[X] pyrawores

Operating system

=Windows 10

What kind of issue is this?

[ ] Compatibility
[X] Locale (names, descriptions, unknown keys)
[ ] Graphical
[ ] Crash
[ ] Progression
[ ] Balance
[ ] Pypostprocessing failure
[ ] Other

What is the problem?
Item names "Tin Dust" and "Iron ore Dust" are capitalized differently from other items. To be consistent they should be "Tin dust" and "Iron ore dust".
Steps to reproduce
No response
Additional context
pyrawores version 2.4.10
Log file
No response

Fixed. Thanks for the report.


Fix larva tests Frank2Example1 and Frank2Example2

I am not satisfied with some names in the Larva tests. We have configurations Example1a and Example1b for example, but service names containing Example1 and Example2. I want to have a close look on the names I use. I will put this PR back to ready-for-review when I am done.

Thanks for merging, Jaco.


ExternalTimeBatch window to support round

Currently external time batch is trigger by events driven, which is correct and expected. But there is no time round.
Is that possible to support feature like
from stream#window.externalTimeBatch(timestamp, 5 min, 1 second), here the optional third parameter is to specify the round. That's if given 1 seconds,  each time window should be starting seconds. (Instead, currently we might start by event timestamp which is not necessary to be round  as starting seconds)

@RalphSu , above feature is already implemented and available in the master branch.. See [1], I believe, this is what you are looking for..
[1] https://docs.wso2.com/display/CEP420/Inbuilt+Windows#InbuiltWindows-externalTimeBatchexternalTimeBatch

@mohanvive  i did check the PR of #170, but it looks something different. I'm try to generate something like
timewindow point             | avg(value) | count(value)
2016-8-4 10:25:01 000    | 50              | 10
2016-8-4 10:25:02 000   |  30              | 20
...
That's mean i would to have time batch in round time point. while current external timebatch implementation might have this timewindow point not align to round point (say it could be possible a batch window starting from 2016-8-4 10:25:01 010 )

Hmm, If you put start time as 0 then it will give the output in round time point (in GMT)

Rechecked, looks good. Will evaluate with test again. Closing this one. Thanks, @mohanvive


Add Exception Handling (Timeouts, ...)

Issue:

the current implementation has no try/catch blocks -> crash on timeout, etc.
concurrent operations open a whole new field of error cases to be dealt with

Suggested Solution:

figure out common error cases and handle them properly (e.g. surround each request with try/catch) -> harden the service
think of all kinds of concurrency issues like raise conditions, etc. and address them properly
apply common sense networking techniques like exponential backoff to reduce latency and maximize throughput
add unit tests / component tests simulating each of those error cases (or at least the most important ones)

error handling is achieved by heavily using async/await
reason: async tasks don't raise an exception, then fail silently within their threads -> no try/catch mess
test coverage needs to be built for all error cases

this topic is too broad, needs to be more specific


Do not use . in macro output if locale string is empty.

The way I'd like to use the library is to keep English in the code and use the English string as the key for other languages. So if I have t!("Hello World!") and I have English selected, it would just output "Hello World!".
Luckily rust-i18n can ALMOST do what I want, but it wants to output the locale name in the missing translations. If I set the locale to be empty, it still wants to print the dot, which I don't want. So basically this whole long explanation is for why I want to remove a single dot and everything works great for me.
As a side note, I couldn't get the "cargo i18n" working properly, it would always think translations are missing, but if you're wondering, I have my own tool I originally made for C++ that checks through the files that then outputs
---
# "zThe secret number is: {secret_number}": "秘密の番号： {secret_number}" # Source text not found in any file!
"Hello, world!": "こんいちは世界！" # main.rs(11)
"Yellow world!": "黄色の世界！" # main.rs(13)
# "The secret number is: {secret_number}": TRANSLATION_MISSING # main.rs(27)
# "Please input your guess": TRANSLATION_MISSING # main.rs(29)

It will then edit the file itself every time the tool is run. (Using regexes, not YAML parser.) So it will handle cases of 1) Existing translations 2) Missing translations in the YAML 3) Existing translations for strings that are missing in code. (Like if someone edited the string in the code either by accident or on purpose, but didn't fix the translations.)
It will also output all the locations of the strings for reference.
I would put the tool somewhere, but it's in Python and requires some in-house libraries, so I'm not sure if it's worth the effort if no one would use it.

Please write a test case for explain the case.


Release 3.5.0 ?

Hi,
Any chance to release 3.5.0 soon? There are quite many changes since 3.4.0.
Thank you.

3.5 will be released at end of july.

should be quite soon then ! Thanks @takezoe

released.


migrate to react-router v6

the documentation feature of storybook requires an upgrade to version 6.
this version updated their dependency to react router to v6, which had a lot of breaking changes.
stack overflow thread about that
this pull request migrates the pwa and the authnz frontend to the new react router version

/lgtm


cmd/go: slow "native" performance with Mac OS X 10.14.1 and 10.12.6

Following a debug session with @fatih
What version of Go are you using (go version)?

go version go1.11.2 darwin/amd64

# and

go version go1.11.2 linux/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
GOARCH="amd64"
GOBIN="/Users/fatih/go/bin"
GOCACHE="/Users/fatih/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/fatih/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/Cellar/go/1.11.2/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.11.2/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/k_/87syx3r50m93m72hvqj2qqlw0000gn/T/go-build130848285=/tmp/go-build -gno-record-gcc-switches -fno-common"
and
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build416231211=/tmp/go-build -gno-record-gcc-switches"

What did you do?
The symptom that @fatih and I were investigating was godef performing ~2x more slowly on his fast machine than on my slower machine.
@fatih's machine specs for reference:
 Model Name:    iMac Pro
  Model Identifier:    iMacPro1,1
  Processor Name:    Intel Xeon W
  Processor Speed:    3 GHz
  Number of Processors:    1
  Total Number of Cores:    10
  L2 Cache (per Core):    1 MB
  L3 Cache:    13.8 MB
  Memory:    64 GB

OS X 10.14.1 (18B75)

We think we have a smaller reproduction that demonstrates what appears to be an OS X 10.14.n issue that may or may not be related to Go. But go list appears to be a good way to demonstrate the problem and hopefully therefore a good place to start further investigation.
The following was run in a Terminal on @fatih's setup, and then within a Docker container on the same machine. Run-times of the go list commands were compared:
/bin/bash
(
set -eux
export GOPATH=$(mktemp -d)
command cd $(mktemp -d)
git clone https://github.com/digitalocean/csi-digitalocean
command cd csi-digitalocean/
git checkout b9ed6c2ea9ad85c5e4956bdfe418940bb5aa883a
rm go.sum
go mod tidy
command cd driver
time go list -export -deps -json -e . > /dev/null 2>&1
time go list -export -deps -json -e . > /dev/null 2>&1
time go list -export -deps -json -e . > /dev/null 2>&1
time go list -export -deps -json -e . > /dev/null 2>&1
) 2>&1 | tee output.txt

The "native" terminal run shows "average" speeds of ~300ms:
+ go list -export -deps -json -e .
real    0m1.524s
user    0m7.224s
sys 0m2.391s
+ go list -export -deps -json -e .
real    0m0.297s
user    0m0.420s
sys 0m0.898s
+ go list -export -deps -json -e .
real    0m0.300s
user    0m0.403s
sys 0m0.919s
+ go list -export -deps -json -e .
real    0m0.308s
user    0m0.402s
sys 0m0.968s

Whereas the Docker run shows "average" speeds of ~180ms:
+ go list -export -deps -json -e .

real    0m4.837s
user    0m12.070s
sys     0m5.030s
+ go list -export -deps -json -e .

real    0m0.186s
user    0m0.180s
sys     0m0.110s
+ go list -export -deps -json -e .

real    0m0.165s
user    0m0.160s
sys     0m0.120s
+ go list -export -deps -json -e .

real    0m0.187s
user    0m0.190s
sys     0m0.100s

What did you expect to see?
Similar run-times in each, possibly even faster times in the "native" OS X environment.
What did you see instead?
The "native" run-times are almost 70% longer.
cc @bcmills (and FYI @ianthehat for any go/packages side-effects)

Here's what I got from running the above script on a 13' macOS (seirra 10.12.6)
Without dokcer
+ godef -o 19358 -f controller.go
/var/folders/n4/35bgdnkd6vlgqrdzbyl0x1ycmhcndx/T/tmp.DVAXjerX/pkg/mod/github.com/container-storage-interface/spec@v0.3.0/lib/go/csi/v0/csi.pb.go:1233:1

real    0m10.234s
user    0m8.298s
sys    0m1.270s
+ godef -o 19358 -f controller.go
/var/folders/n4/35bgdnkd6vlgqrdzbyl0x1ycmhcndx/T/tmp.DVAXjerX/pkg/mod/github.com/container-storage-interface/spec@v0.3.0/lib/go/csi/v0/csi.pb.go:1233:1

real    0m1.276s
user    0m0.381s
sys    0m0.234s
+ godef -o 19358 -f controller.go
/var/folders/n4/35bgdnkd6vlgqrdzbyl0x1ycmhcndx/T/tmp.DVAXjerX/pkg/mod/github.com/container-storage-interface/spec@v0.3.0/lib/go/csi/v0/csi.pb.go:1233:1

real    0m1.295s
user    0m0.399s
sys    0m0.240s

With Docker
+ godef -o 19358 -f controller.go
/tmp/tmp.U5kJ73H8kO/pkg/mod/github.com/container-storage-interface/spec@v0.3.0/lib/go/csi/v0/csi.pb.go:1233:1

real    0m7.215s
user    0m10.540s
sys    0m2.270s
+ godef -o 19358 -f controller.go
/tmp/tmp.U5kJ73H8kO/pkg/mod/github.com/container-storage-interface/spec@v0.3.0/lib/go/csi/v0/csi.pb.go:1233:1

real    0m0.304s
user    0m0.250s
sys    0m0.110s
+ godef -o 19358 -f controller.go
/tmp/tmp.U5kJ73H8kO/pkg/mod/github.com/container-storage-interface/spec@v0.3.0/lib/go/csi/v0/csi.pb.go:1233:1

real    0m0.282s
user    0m0.230s
sys    0m0.110s

Sorry, forgot to cc @rsc in the original description

Will a dtruss/strace log help here ? Just wondering if there is any OS level variable here.

cc @jayconrod

The same problem on my windows 10:
What version of Go are you using (go version)?
go version go1.11 windows/amd64
What operating system and processor architecture are you using (go env)?
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\shuye\AppData\Local\go-build
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=G:\GO
set GOPROXY=
set GORACE=
set GOROOT=D:\Go
set GOTMPDIR=
set GOTOOLDIR=D:\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=G:\GIT.HUB\marketstore\go.mod
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\shuye\AppData\Local\Temp\go-build930085358=/tmp/go-build -gno-record-gcc-switches

I don't have an answer to why macOS 10.12 and 10.14 performance would be different, but I think I know why Docker and macOS are different.
As far as I understand, Docker on macOS actually runs a Linux kernel and userspace under a hypervisor. That means overhead for I/O and system calls is more similar to native Linux overhead than it is to macOS overhead. "go list" does a lot of stat and read system calls on small files, so the system call overhead matters a lot.
Here are the results from a quick benchmark I ran. The Read and Write tests are reading and writing slices of various sizes to a file (the file is almost certainly in the kernel file cache, so disk speed doesn't matter). The Import test is measuring the time to call go/build.Context.Import on "fmt".
macOS native:
BenchmarkStat-8            	  300000	      4470 ns/op
BenchmarkRead/1K-8         	   50000	     27366 ns/op
BenchmarkRead/50K-8        	   50000	     30980 ns/op
BenchmarkRead/1024K-8      	   10000	    104866 ns/op
BenchmarkWrite/1K-8        	   10000	    151379 ns/op
BenchmarkWrite/50K-8       	    5000	    311861 ns/op
BenchmarkWrite/1024K-8     	    1000	   2020063 ns/op
BenchmarkImport-8          	    2000	    919822 ns/op

macOS Docker
BenchmarkStat-4            	 1000000	      1222 ns/op
BenchmarkRead/1K-4         	  300000	      4101 ns/op
BenchmarkRead/50K-4        	  200000	      7405 ns/op
BenchmarkRead/1024K-4      	   20000	     92996 ns/op
BenchmarkWrite/1K-4        	   10000	    181860 ns/op
BenchmarkWrite/50K-4       	   10000	    341137 ns/op
BenchmarkWrite/1024K-4     	    1000	   2404169 ns/op
BenchmarkImport-4          	    2000	    580594 ns/op

Notably, the Stat and Read/1K tests are much, much slower on native macOS. Windows is quite a bit slower than this.

We have a project with a mono repo with 40k LOC, 700k LOC dependencies and 30 binaries, code generation before build and so forth. Running time make without any changes and a warm cache takes 3.3 sec on a modern MacBook Pro and only 2 sec on a Fedora VM running on the same machine using Parallels. It seems other people have similar experiences with VMware/Ubuntu and macOS.
all:
	go build -o build/ ./gen/... # build code generators
	go generate ./...
	go test ./...
	go build -o build/$(GOOS)_$(GOARCH)/ ./cmd/...

The build cache contains only this one project. When making a simple change to the project build times change to 5.3 sec vs. 2.8 sec. Building a single binary the numbers are 1.35 sec vs 0.85 sec.
We are using modules, everything is downloaded, no CGO and we are not cross-compiling.
Using a RAM disk on macOS for GOCACHE and the output directory did not improve the build speed.
I'm testing this on a quite beefy machine but this is more noticeable on smaller laptops of my colleagues. I'll double check but the build times were more in the range of 5-10 seconds. This can be quite noticeable and I'm curious how we can debug this a bit further.

Could this possibly be due to #26550 (thus a dup of #30497 or #27415) ?
(Note that change occurred for 10.12, so it can't explain the OP's problem, but it may explain what some other posters are seeing.)

The speed difference was already noticeable with go1.13 since I've started playing with a Fedora laptop a while ago. Not sure about go1.12.

@randall77 you mean that i/o syscalls are slower on Darwin than on Linux?

@magiconair, yes, syscalls will be somewhat slower because they go through libc now.  But I was particularly thinking of fsync which is much more expensive on Darwin.  The regular fsync is kinda broken, so we have to use ioctl with F_FULLFSYNC.
BTW, that #26650, not #26550, sorry.

Are we sure that what we are seeing here is not just Docker for Mac virtualization doing some very aggressive in-memory caching?
We are not just comparing Darwin to Linux; we are comparing Darwin to Hyperkit+Linux.
In the numbers shared by @myitcv in the issue description, native macOS is actually faster on the first cold run:
+ go list -export -deps -json -e .
real    0m1.524s
user    0m7.224s
sys 0m2.391s

versus this for Docker:
+ go list -export -deps -json -e .
real    0m4.837s
user    0m12.070s
sys     0m5.030s

@randall77 is there some indication that this situation will improve in the future? Is Apple addressing the fsync issue? I'm now at 15sec build times on Darwin vs 4.5 sec in a Fedora VM running on the same super-beefy hardware.

@randall77 is there some indication that this situation will improve in the future?

I don't know of anyone working on it, or anyone who has plans in this area. So, no.

Is Apple addressing the fsync issue?

I have no idea.

I'm now at 15sec build times on Darwin vs 4.5 sec in a Fedora VM running on the same super-beefy hardware.

I think if we want to make progress here we need to understand why it is so much slower. For build times, I don't think a slow fsync would be the cause. Building Go code is mostly reading; it's probably stat or read call. But that's a guess; data would help.

Building Go code is mostly reading; it's probably stat or read call. But that's a guess; data would help.

Do you have a quick tip on how to collect this data? Otherwise, I'll try and ask the internet.

Run with strace?
Run under a profiler?
Both might be kinda tricky, as the build system runs multiple processes.

Just FWIW, this is a problem with Apple NVMe drives (T2 and M1 Macs alike). Their cache flush performance is abysmal. This affects both macOS and (native) Linux (presumably existing VM solutions fail to forward this as F_FULLSYNC if they run faster). You get about 46 IOPS of F_FULLSYNC on macOS on an M1 machine.
So there isn't much to be done on the software side other than deciding whether you care about data integrity on macOS or not; on Linux there is no way for user processes to control this as far as I know (i.e. flush to cache but not the cache), though it can be emulated by setting the drive write cache type to "write through" in sysfs (which tells the kernel to never issue flush commands, so fsync() behaves like it does on macOS).

For the benefit of others, @marcan also posted this fantastic thread: https://twitter.com/marcan42/status/1494213855387734019


FIX/ updated base-image version

What?
When building the image this error came up:
undefined: unsafe.Slice

Solution
The quick solution was to update the base-image

Oh cool, thank you!
Go stable is already at 1.21 so I'll try building from that first; let me see...

Fixed by #6 👍


[#131267691]supplier declaration question css: don't out-dent question numbers in non-wide mode

Because it causes overlap of validation side borders.
Story https://www.pivotaltracker.com/story/show/131267691

I've done some testing of this with applications to G-Cloud and DOS.
Before the change, desktop screen

Before the change, tablet screen

After the change, desktop screen

After the change, tablet screen

End result: not sure why this code was there in the first place. Removing it is a good idea.

Thought Tom had done this already, sorry... :+1:

Cool thanks guys.


Consider adding libuv-based backend

This likely depends on libuv-based event loop implementation https://github.com/reactphp/event-loop/pull/17.
Once this is done, see https://github.com/reactphp/react/pull/213 for initial starting point on filesystem abstraction.

I initially started working on a solution right around the time @WyriHaximus was working in the filesystem.  Unfortunately I haven't had any free time in the last several months to circle back to it.
Here: https://github.com/steverhoades/ReactLibuvFilesystem
The I did some considerable work on the php-uv extension to bring it up to libuv 1.0 as well, but as far as I know that still hasn't been merged.

@steverhoades is the php-uv extension with your changes stable? If it is, we can continue your work on the adapter if you don't mind.

I have a working uv adapter (PHP7 only, so waiting for #67), which I only need to add tests for.

@CharlotteDunois awesome!


FTB Questions

The SNBT file for FTB Questions ends with a newline character, and I modified it to support this format. However, standard SNBT may no longer be read properly. (not tested)

I am somewhat apprehensive to support this, as it is likely to break both existing and compliant SNBT, where newlines between items is considered insignificant whitespace, not a lexicographical deliminator for items.
If support for such a feature were to be added, it would have to be enabled explicitly by the user of the library via an additional argument, method overload, etc. The default behavior for the scanner should always be "strict", with any feature additions or relaxation on the spec being a configuration switch.
Even with that, I would still be apprehensive about this specific issue, as this is adding extra complexity to support what is essentially just invalid SNBT and/or a custom format.


Enable fuzzy search

Is your feature request related to a problem? Please describe.
Want to save time on typing long names like 'emacs' and 'ffmpeg' (I know I'm lazy)
Describe the solution you'd like
Enable fuzzy search, at minimal unique match of strings starting from the object string. e.g. cheat em will be equivalent to cheat emacs, cheat org = cheat org-mode, cheat ffm = cheat ffmpeg, etc.
Describe alternatives you've considered
Create symbolic links with shorter names.
Additional context
N/A

@chongchonghe, I'm not going to implement this functionality natively within cheat, but fuzzy autocompletion already works wonderfully when when you use cheat in conjunction with fzf.
I've done a poor job of documenting this, however. I have tagged this ticket as "documentation" so I remember to address this issue when I update the documentation in the near-term.
Let me know if you have any questions. Thanks.

How can we trigger fzf?

I don't understand how this works. I have fzf installed and added the export line to my .zshrc. It doesn't seem to do anything different.

I'm going to close this issue and track this work along with #594. The functionality works - it's just poorly documented.

I wrote my own fuzzy search script and it works just fine. Here's the link:
https://gist.github.com/chongchonghe/8ed7774d8ac96e26abb0f98ce6197e70


How to migrate from chroot Ubuntu to a directly booted Ubuntu?

Hi,
I've been using chroot for a while, everything is OK but functions over VM.
So, are there any solution to migrate chroot Ubuntu to a directly booted Ubuntu together with all data and configurations?

No mechanism is in place to directly install your crouton chroot to your Chromebook with the required repartitioning, etc.
HugeGreenBug (Hugh Greenburg) has a site named Distroshare where he has created several custom distros for various Chromebooks and Chromeboxes with SeaBIOS. He also has a shell script for "re-mastering" your current installation that may be what you're looking for. I don't know if it will work correctly on a crouton chroot installation but I guess it's worth a shot. If that doesn't work, he has other methods that may work for you.


De-duplicate nodes when searching for missing dependencies

Use a set for deduplication, as we do in other places.

Follow up of #15813.

Follow up of #15813.


PoisonError when using rayon

I'm using tracing-indicatif so I posted the issue there, but I think it could be something in indicatif itself:
https://github.com/emersonford/tracing-indicatif/issues/14

Do you have a reproduction scenario?


Add support for the attachment option

added barebones support for the attachment option
updated examples and docs
typo fix

Checklist
This pull request...

[ ] Fixes a bug
[x] Adds new functionality
[x] Updates documentation and/or examples
[ ] Adds tests
[ ] Is a breaking change -- existing code written for this library may need to be rewritten to work after these changes.

Description
Closes #92 and implements support for the attachment option.
In case you wonder, I had to recreate this pull request because I messed up and accidentally deleted a branch I shouldn't touch.

Hey, sorry for the radio silence on this! This all looks good, I've just added a few more examples to demonstrate handling the attachment content. Thanks for being patient!