Adds Rustfmt to Github Actions workflow and format files

Adds cargo fmt job to Github Actions
Formats files using cargo fmt and rustfmt.toml definition that was already in project

@vgeddes @alistair-singh this PR does not conflict with https://github.com/Snowfork/snowbridge/pull/732, since that PR only touches the core directory.

shouldn't you be running cargo fmt in --check mode in github actions?

Good point, @vgeddes! Added in https://github.com/Snowfork/snowbridge/pull/739/commits/578be11bfb3b1681fa6cc9a9190c99ccd07c31e9 and also tested with run.


Add HAR file writing support (#439)

Hi,
Here is the draft PR that I mentioned in #439. It is incomplete and only a draft right now, but I am sharing it early to get your feedback.
Which HAR package to use?
I looked at https://github.com/vvakame/go-harlog and some other packages (I found other packages by going through the results of this GitHub search). There were some issues with the other projects that already existed, so I created my own by forking github.com/vvakame/go-harlog. Those issues were:

Their design required that you use one http.RoundTripper per HAR archive. Dalfox creates a http.RoundTripper in a few different places and I didn't want to make big changes to Dalfox.
Their design would store the HAR archive in memory and serialize to JSON at the end. Dalfox can make a lot of requests and I didn't want Dalfox to use lots of memory, so I wanted something that would write the file incrementally during the scan.
Their design would only allow standard HAR files to be written, without modification. I wanted to be able to add a _messageId property to the HAR entries to correlate with Dalfox PoCs like ZAP does.

So that's why I created a new HAR package. The package does the same thing Dalfox does in JSON mode: it writes the [ first, then each JSON object, then commas, then the closing ]. It also allows multiple http.RoundTripper objects (in this case, *har.RoundTripper) to write to a single shared har.Writer.
Question: should it be a standalone package that Dalfox imports in its go.mod or would you prefer it to be contained entirely in Dalfox, e.g. github.com/hahwul/dalfox/pkg/har? I think I prefer it to be a Dalfox package, but I don't know how much code you want in the Dalfox repo. Let me know what you prefer.
Integration into Dalfox
What do you think of the changes to Dalfox so far? Is the design ok? Are there any changes you would like me to make? Right now the code works correctly and generates a HAR archive. I will add another commit that adds a _messageId property to the HAR entries and the Dalfox PoC JSON soon. Maybe in a couple of days.

Codecov Report

Merging #440 (c3a2e50) into main (f78a653) will not change coverage.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##             main     #440   +/-   ##
=======================================
  Coverage   82.88%   82.88%
=======================================
  Files          11       11
  Lines         590      590
=======================================
  Hits          489      489
  Misses         79       79
  Partials       22       22

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

Hello again @aidansteele
First, Thank you so much for cool idea and PR :D
The answer to the question is I don't care. (I like both)
Of course, I prefer to be included package in Dalfox as you say. The reason is the advantage of fast maintenance and low-dependency. But I don't think it necessarily needs to be changed.
And yes I like the changes so far. I'm looking forward to the next commit as well :D

Dalfox has a separate Options Interface for importing and using Dalfox from other Go packages. and I think we need to write additional code for this part. I'll take care of it. (this interface was my stupid code. haha...😭)

Output (pretty-printed) from running url --no-spinner --no-color --output-all --follow-redirects --silence --format json http://testphp.vulnweb.com/listproducts.php?cat=2 --har-file-path dump.har:

Dalfox output (click to expand)
[
  {
    "type": "G",
    "inject_type": "BUILTIN",
    "poc_type": "plain",
    "method": "GET",
    "data": "http://testphp.vulnweb.com/listproducts.php?cat=%2F%2F%2Fwww.google.com%2F%252f%252e%252e",
    "param": "",
    "payload": "toOpenRedirecting",
    "evidence": "",
    "cwe": "",
    "severity": "Low",
    "message_id": 13
  },
  {
    "type": "R",
    "inject_type": "inHTML-URL",
    "poc_type": "plain",
    "method": "GET",
    "data": "http://testphp.vulnweb.com/listproducts.php?cat=2%22%3E%3Csvg%2FOnLoad%3D%22%60%24%7Bprompt%60%60%7D%60%22%3E",
    "param": "cat",
    "payload": "\"><svg/OnLoad=\"`${prompt``}`\">",
    "evidence": "48 line:  syntax to use near '\"><svg/OnLoad=\"`${prompt``}`\">' at line 1",
    "cwe": "CWE-79",
    "severity": "Medium",
    "message_id": 334
  },
  {
    "type": "R",
    "inject_type": "inHTML-URL",
    "poc_type": "plain",
    "method": "GET",
    "data": "http://testphp.vulnweb.com/listproducts.php?cat=2%27%3E%3Cimg%2Fsrc%2Fonerror%3D.1%7Calert%60%60%3E",
    "param": "cat",
    "payload": "'>",
    "evidence": "48 line:  syntax to use near ''>' at line 1",
    "cwe": "CWE-79",
    "severity": "Medium",
    "message_id": 342
  },
  {
    "type": "R",
    "inject_type": "inHTML-URL",
    "poc_type": "plain",
    "method": "GET",
    "data": "http://testphp.vulnweb.com/listproducts.php?cat=2%22%3E%3Cscript+y%3D%22%3E%3C%22%3E%2F%2A%3Cscript%2A+%2A%2Fprompt%28%29%3C%2Fscript",
    "param": "cat",
    "payload": "\"><svg/class=dalfox onload=&#97&#108&#101&#114&#00116&#40&#41&#x2f&#x2f",
    "evidence": "48 line:  syntax to use near ''\"><svg/class=dalfox onload=&#97&#108&#101&#114&#00116&#40&#",
    "cwe": "CWE-79",
    "severity": "High",
    "message_id": 322
  },
  {}
]

And here's validating the entry appears in the HAR file by running cat dump.har| jq '.log.entries | map(select(._messageId == 322))':

jq output (click to expand)
[
  {
    "startedDateTime": "2023-02-13T14:32:31+11:00",
    "time": 413.50575,
    "request": {
      "method": "GET",
      "url": "http://testphp.vulnweb.com/listproducts.php?cat=2%27%22%3E%3Csvg%2Fclass%3Ddalfox+onload%3D%26%2397%26%23108%26%23101%26%23114%26%2300116%26%2340%26%2341%26%23x2f%26%23x2f",
      "httpVersion": "HTTP/1.1",
      "cookies": [],
      "headers": [
        {
          "name": "Accept",
          "value": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
        },
        {
          "name": "User-Agent",
          "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:75.0) Gecko/20100101 Firefox/75.0"
        }
      ],
      "queryString": [
        {
          "name": "cat",
          "value": "2'\"><svg/class=dalfox onload=&#97&#108&#101&#114&#00116&#40&#41&#x2f&#x2f"
        }
      ],
      "headersSize": -1,
      "bodySize": -1
    },
    "response": {
      "status": 200,
      "statusText": "200 OK",
      "httpVersion": "HTTP/1.1",
      "cookies": [],
      "headers": [
        {
          "name": "Server",
          "value": "nginx/1.19.0"
        },
        {
          "name": "Date",
          "value": "Mon, 13 Feb 2023 03:32:31 GMT"
        },
        {
          "name": "Content-Type",
          "value": "text/html; charset=UTF-8"
        },
        {
          "name": "X-Powered-By",
          "value": "PHP/5.6.40-38+ubuntu20.04.1+deb.sury.org+1"
        }
      ],
      "content": {
        "size": -1,
        "mimeType": "text/html; charset=UTF-8",
        "text": "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"\n\"http://www.w3.org/TR/html4/loose.dtd\">\n\n\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-2\">\n\n\n<title>pictures</title>\n\n<link rel=\"stylesheet\" href=\"style.css\" type=\"text/css\">\n\n\n\n\n\n \n
\n
 \n

   \n
TEST and Demonstration site for Acunetix Web Vulnerability Scanner
\n
 \n      \t

\n\t\n\t\thome | categories | artists\n\t\t | disclaimer | your cart | \n\t\tguestbook | \n\t\tAJAX Demo\n\t	\n\t\n\t\t	\n\t

\n
 \n
 \n \n\n\n\n
\n\tError: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''\"><svg/class=dalfox onload=&#97&#108&#101&#114&#00116&#40&#41&#x2f&#x2f' at line 1\nWarning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /hj/var/www/listproducts.php on line 74\n
\n\n\n\n
 \n
 \n    <form action=\"search.php?test=query\" method=\"post\"> \n      search art \n      <input name=\"searchFor\" type=\"text\" size=\"10\"> \n      <input name=\"goButton\" type=\"submit\" value=\"go\"> \n    </form> \n
 \n
 \n
 \n
Browse categories
 \n
Browse artists
 \n
Your cart
 \n
Signup
\n\t
Your profile
\n\t
Our guestbook
\n\t\t
AJAX Demo
\n\t
 \n
 \n
 \n
 \n
Links
 \n
 \n
Security art
 \n\t
PHP scanner
\n\t
PHP vuln help
\n\t
Fractal Explorer
 \n
 \n
 \n
 \n
\n      <object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0\" width=\"107\" height=\"66\">\n        <param name=\"movie\" value=\"Flash/add.swf\">\n        <param name=quality value=high>\n        <embed src=\"Flash/add.swf\" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"107\" height=\"66\"></embed>\n      </object>\n
\n
 \n
 \n\n \n
  About Us | Privacy Policy | <a<EMAIL_ADDRESS>Us | ©2019\n  Acunetix Ltd \n
 \n
 \n
\n
Warning: This is not a real shop. This is an example PHP application, which is intentionally vulnerable to web attacks. It is intended to help you test Acunetix. It also helps you understand how developer errors and bad configuration may let someone break into your website. You can use it to test other tools and your manual hacking skills as well. Tip: Look for potential SQL Injections, Cross-site Scripting (XSS), and Cross-site Request Forgery (CSRF), and more.
\n
\n
\n\n\n"
      },
      "redirectURL": "",
      "headersSize": -1,
      "bodySize": -1
    },
    "cache": null,
    "timings": {
      "blocked": 0.001791,
      "dns": 0.775084,
      "connect": 190.115667,
      "send": 0.016708,
      "wait": 222.568834,
      "receive": 0.80275,
      "ssl": -1
    },
    "_messageId": 322
  }
]

And here's an example of the HAR file being loaded in to Chrome dev tools:

I tried to fix all the Codacy issues but I don't know what to do with these ones. I have already added a package-level comment to round_tripper.go, so I don't think these other files need comments.

I also just force-pushed a squashed commit, so there won't be lots of fix-commits if this is merged 😂

@hahwul thank you for reviewing it! I don't think there are any more changes that I need to make. So it can be merged now. Of course if you find a bug after merging then let me know and I will be happy to try fix it ASAP. But I have been using my fork for the last week and it seems to work :)
Also if you want me to help look at your PR for the interface thing then I would be happy to!
Thanks 💯


Added italic and thin font support

Added the .ttf font files to the project bundle
Updated the scripts and templates to include italic and thin fonts
Updated the runtime classes to include italic and thin fonts
Updated the demo project to show italic and thin fonts

Looks good to me!


Make double-tap for sprinting/flying work more like RandomPatches

Kind of hard to describe, but it goes like this:

By default, the fly keybind would be bound to Space, just like the jump key is
When both are bound to the same key, pressing it once would jump and pressing it twice would initiate flying, just like in vanilla
When bound to separate keys, one key would be used for jumping and the other for flying, and there would be no special double-tap functionality

The same would go for sprinting - there would be a new dedicated "secondary sprint" keybind that would be bound to the forward key by default, and would work identically to the other sprint keybind.
Since we could then rebind (or unbind) these keys, there would no longer be any need for the "Double Tap Sprint" and "Double Tap Fly" buttons, and they could therefore be removed.

Hm, I understand the idea, but I think this kind of behavior would be more confusing to convey to players rather than the current one. The thing that would be added here is the ability to have the "tap to do X, hold to do Y" be on keys other than the forward and jump key. I'm just not sure if that is worth removing the straight-forwardness of the current options


User profiles

Users should be able to view and edit their own profiles where they can add additional information about themselves. Real name, contact information, etc.
We'll need to figure out what information is most useful?

Admins/Judges should see the following for a user. They should be able to update everything except for the submitted grants.
Legal Name
Alternate/Playa Name
Phone number
email
submitted grant(s)

Cool, I wasn't sure what fields would be necessary so I figured I'd ask. If you want some example code you could use, the laravel-voldb project has editable user profiles.
https://github.com/itsrachelfish/laravel-voldb/blob/master/laravel/app/Http/Controllers/ProfileController.php#L56-L95
https://github.com/itsrachelfish/laravel-voldb/blob/master/laravel/database/migrations/2015_12_10_230940_create_user_data_table.php

Issue resolved as of pull request #14


change cherrypy.wsgiserver by cheroot.wsgi since cherrypy v9.0.0

since cherrypy v9.0.0
https://github.com/cherrypy/cherrypy/blob/master/CHANGES.rst#v900
wsgi has been moved to cheroot

oups don't see this PR
https://github.com/bottlepy/bottle/pull/932


v5 version avg aggragation not support missing operator

Please use the following questions as a guideline to help me answer
your issue/question without further inquiry. Thank you.
Which version of Elastic are you using?
[ ] elastic.v5 (for Elasticsearch 5.x)
Please describe the expected behavior
I want to avg aggragation support missing operator
Please describe the actual behavior
query result Inconsistent
Any steps to reproduce the behavior?

v5 is no longer supported.


Set the image source of lv_img as a variable through python failed

I need to set the picture source of lv_img as a variable through python, but I did not find the binding of lv_img_dsc_t in python binding.
examples/example1.py  report error,   AttributeError: 'module'  has no attribute 'img_dsc_t'.
Thank you!

@xiangweizeng I can't reproduce your problem. example1.py works fine for me.
Please make sure you follow these steps, exactly in this order:
git clone https://github.com/littlevgl/lv_micropython.git
cd lv_micropython/
git checkout dev-6.0
git submodule update --recursive --init
make -C ports/unix
ports/unix/micropython
import lib.lv_bindings.examples.example1

(The last step is in micropython REPL)


Automated cherry pick of #5213: fix: 添加gcp region中文翻译

Cherry pick of #5213 on release/2.13.
#5213: fix: 添加gcp region中文翻译

Codecov Report

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

@@              Coverage Diff               @@
##             release/2.13   #5216   +/-   ##
==============================================
  Coverage                ?    6.8%
==============================================
  Files                   ?     530
  Lines                   ?   90011
  Branches                ?       0
==============================================
  Hits                    ?    6128
  Misses                  ?   83377
  Partials                ?     506

Flag
Coverage Δ

#aFlag
6.8% <ø> (?)

Continue to review full report at Codecov.

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

/lgtm

/approve

/approve


License?

Hey there, which license is this code released under?

Hi, everything here is MIT, just forgot to add it. Thanks for reporting the issue!


Add more e2e tests and fix current ones

Make sure e2e tests are built on make build
Add e2e for resources that aren't currently being tested

#235


Initialize build github actions

Describe the task
A clear and concise description of what the task is.
Acceptance Criteria

[ ] first
[ ] second
[ ] third

Additional context

Add any other context about the task here.
Or here

This card can probably be closed - the build actions have been created with the Docker files as validation


node-gyp fails to build sqlite3 package with message that doesn't say what is wrong

There is no specific reason of failure in the log.
5861 info install<EMAIL_ADDRESS>5862 info postinstall<EMAIL_ADDRESS>5863 info install<EMAIL_ADDRESS>5864 info postinstall<EMAIL_ADDRESS>5865 info install<EMAIL_ADDRESS>5866 verbose unsafe-perm in lifecycle false
5867 info<EMAIL_ADDRESS>Failed to exec install script
5868 verbose stack Error<EMAIL_ADDRESS>install: `node-pre-gyp install --fallback-to-build`
5868 verbose stack Exit status 1
5868 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:214:16)
5868 verbose stack     at emitTwo (events.js:87:13)
5868 verbose stack     at EventEmitter.emit (events.js:172:7)
5868 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:24:14)
5868 verbose stack     at emitTwo (events.js:87:13)
5868 verbose stack     at ChildProcess.emit (events.js:172:7)
5868 verbose stack     at maybeClose (internal/child_process.js:818:16)
5868 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
5869 verbose pkgid<EMAIL_ADDRESS>5870 verbose cwd /usr/ports/www/etherpad-lite/work/etherpad-lite-1.5.7/node_modules/ep_etherpad-lite
5871 error FreeBSD 10.2-STABLE
5872 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "rebuild" "--loglevel" "warn"
5873 error node v4.2.1
5874 error npm  v2.14.7
5875 error code ELIFECYCLE
5876 error<EMAIL_ADDRESS>install: `node-pre-gyp install --fallback-to-build`
5876 error Exit status 1
5877 error Failed at the<EMAIL_ADDRESS>install script 'node-pre-gyp install --fallback-to-build'.
5877 error This is most likely a problem with the sqlite3 package,
5877 error not with npm itself.
5877 error Tell the author that this fails on your system:
5877 error     node-pre-gyp install --fallback-to-build
5877 error You can get their info via:
5877 error     npm owner ls sqlite3
5877 error There is likely additional logging output above.
5878 verbose exit [ 1, true ]

Top-level command was 'npm rebuild' for etherpad-lite

The command that is executed is node-pre-gyp install --fallback-to-build but node-pre-gyp != node-gyp.
You should report this to the node-sqlite3 or the node-pre-gyp project.  The former is perhaps a better place to start because it's possible it configures node-pre-gyp in a way that obscures the error.


Update AzureRM.EventGrid.md

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azurermps-5.0.0/AzureRM.EventGrid/AzureRM.EventGrid.md
:white_check_mark:Succeeded

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

@hillaryc - thank you for your contribution.  In order to make sure this edit flows into all future Azure PowerShell releases, could you please also make this update in the source repo:  https://github.com/Azure/azure-powershell/tree/preview/src/ResourceManager/EventHub/Commands.EventHub/help.  Please let me know if you have any questions!  Thanks!

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azurermps-5.0.0/AzureRM.EventGrid/AzureRM.EventGrid.md
:white_check_mark:Succeeded

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


Task: add more projects

Add more projects to the list of projects

this issue has been open for too long and is now being closed


Endpoint For retirement Planning[ Gssoc'23]

What bug or feature you wants to report.
I can Create an endpoint that calculates retirement savings projections based on inputs like current savings, annual contributions, expected return, and retirement age. It can provide estimates of future savings, income replacement ratio, and required savings to meet retirement goals

Go ahead @kharshita590 :)


Backport Commit 4852e43cb6 to 1.8.x

Updating Nokogiri 1.8.x to utilize the server side includes patch.

Huh.  Was the build already red? cc @flavorjones

@tenderlove The patches are not applying correctly. I'll take a deeper look at it.

@tenderlove I did not update the patch number, in the stand alone PR it was patch 0003, in the back port a 0003 already existed and it was applying this before patch 0004 (which is in the same file) causing a diff on line numbers when applying 0004.
Updated the new patch to be 0005 seem to fix the issue.

@tenderlove  Is the intention behind this for us to cut a v1.8.6 release, or simply to have this code in the repo and green in CI?

@flavorjones This was failing earlier, what changes were needed to make it pass? Is there a step I was missing when creating the back port?

The failure was a false valgrind positive -- ruby 2.5 and 2.6 have been doing this a lot :-(
So I just kicked CI and it ran again and it's green.

@flavorjones I can leave this PR open if you think this back port is helpful, otherwise we can close it without merging. If you merge it, I do not have a strong opinion on version bump (1.8.6 over 1.8.5.x)
The application that caused us to make these changes can now work with nokogiri 1.10.x. I'll open a PR for a 1.10.2 version bump.

@ksolo can we please chat in realtime on IRC or something? #nokogiri on freenode or https://gitter.im/sparklemotion/nokogiri would be great.

@flavorjones I'll send you a message on gitter

OK - closing the loop here after a chat with @ksolo , I'll try to cut a 1.10.x release later this week with the libxml2 patch; but won't be cutting a 1.8.x patch release.
@ksolo - Thanks for jumping on chat!


AttributeError: 'AppendDemoInfo' object has no attribute 'reset_to_demo'

Thanks for sharing such an awesome project!
I am getting the error:
Traceback (most recent call last).
  File "/data3/czx/genima/controller/eval_genima.py", line 409, in main
    workspace.eval()
  File "/data3/czx/genima/controller/eval_genima.py", line 382, in eval
    self.eval_checkpoints(eval_ckpts)
  File "/data3/czx/genima/controller/eval_genima.py", line 142, in eval_checkpoints
    _, obs = self.eval_env.reset_to_demo(idx=run_episode)
AttributeError: 'AppendDemoInfo' object has no attribute 'reset_to_demo'

when I run the following command after collecting data:
python eval_genima.py \
     task=open_box \
     dataset_root=/data3/share/genima_data/val_data \
     diffusion_ckpt=/data3/share/genima_data/ckpts/25_tasks/diffusion_sdturbo_R256x4_tiled \
     controller_ckpt=/data3/share/genima_data/ckpts/25_tasks/controller_act \
     num_eval_episodes=10 \
     save_gen_image=True \
     num_diffusion_steps=5 \
     execution_horizon=20 \
     save_video=True \
     wandb.use=True \
     eval_type=latest \
     headless=False

Is there any good suggestion to solve this problem? Thanks!

@albzni, unfortunately I don't have a linux machine to debug this 😢
can you try replacing L142 in eval_genima.py with
_, obs = self.eval_env.unwrapped.reset_to_demo(idx=run_episode)

@albzni, unfortunately I don't have a linux machine to debug this 😢
can you try replacing L142 in eval_genima.py with _, obs = self.eval_env.unwrapped.reset_to_demo(idx=run_episode) the key thing is .unwrapped

it works! Thanks for your reply.😊

@albzni, great!
Pushed the fix.


PATCH: Do not block admission while waiting for pods readiness

See https://issues.redhat.com/browse/RHOAIENG-5411.

Merged manually as CI is broken ATM.


Default calendars on init

Hi, first, thanks for grate component.
Buut, I have a problem, by default date-range show today date on second calendar(right) and past month(left), but I wanna to see today on first(left) and next month. Is it possible?
example now:

and wanna to be:

Did you ever solve this?

@daybreaker no) As example you can choose one month on init function by default. But it is bad solution for me

@daybreaker Try to add offsetPositive on component ;-)
This is not the same as in the example above)
But maybe this will help


Cleanup Copy On Write manipulation in CTFE interpreter

Separated from PR #5226.
Current COW manipulation code in CTFE is inconsistent, and little hard to understand. After this change, we can use a simple and consistent manner to implement right behavior.

Auto-merge toggled on


An error occurred while creating the alarm instance？

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
当我创建告警实例的时候发生了以下错误

What you expected to happen
Maybe my configuration was not filled out properly，Or you need additional plug-ins？
How to reproduce

Anything else

Version
dev
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Please using english to describe.

When I tried to create an alarm instance, an error occurred. I added an HTTP type alarm, configured the information, and when I clicked on the test, an error dialog popped up

When I tried to create an alarm instance, an error occurred. I added an HTTP type alarm, configured the information, and when I clicked on the test, an error dialog popped up


Parse JSON1 fields?

I wonder if it would be a good idea to convert JSON1 fields to JS values when they are read, that would avoid allocating an intermediate JS string.
Since there is no way short of reading the schema to know that a column is JSON1, this would be something passed as an option to the query…

It's possible. It could b implemented in a similar way to the pluck() method.
var data = stmt.pluck().json().get();

In my case, I need the data from several columns, one of which is json, so
maybe that .json() could take arguments.
On Thu, Jun 1, 2017, 6:11 PM Joshua Wise<EMAIL_ADDRESS>wrote:

It's possible. It could b implemented in a similar way to the pluck()
method.
var data = stmt.pluck().json().get();
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/JoshuaWise/better-sqlite3/issues/35#issuecomment-305542606,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADWlj9mievq1ei8ow93eBramfFgxfegks5r_uKhgaJpZM4NrMhT
.

There might be a very non standard way of achieving this by using the fact that column types can be pretty much anything and the sqlite3_column_decltype() function, where if the column's type name is json text (or anything else that would have a text affinity), then we try to parse and build the json content.
This might mean building the Statement a little differently to try and detect a different column and mess with SQLITE_VALUE_TO_JS.
This is very hacky though.

If/when this is implemented, it would be activated explicitly (such as with a .json() call). Since it changes the statement's return type, I wouldn't want it to use any kind of unpredictable guessing hack

I've decided this feature is out of scope of the package, and I don't plan on implementing it ever.


Move Solr cleanup to upstream Spotlight

See https://github.com/pulibrary/pomegranate/pull/204

Did we just do this?

Done.


Consider spinning off config tool script development

We should consider developing the config tool script in a separate repository and simply using the task-shortcuts role to fetch and install it.
Maintaining the script in a single Python script is becoming a bit difficult. The script is rather long and remembering the structure and layout becomes rather tricky over time. Being able to use several modules could allow for properly splitting parts of the script up.
We can release discrete new versions of the script over time. The task-shortcuts role could be updated to pull in the correct one similar to what we do for Eclipse, DrJava, and jGRASP now. This would make using new versions (or rolling back to old versions) of the script easier.
We have a lot of issues on this repo relating to the script rather than on the Ansible. Moving development out of this repo would clean a lot of that up. It also could result in end users still reporting issues on this repo instead of on the config tool repo; however, it would be relatively simple for us to open a corresponding issue on the other repo and then in each link to the other.
Currently the script is located in roles/task-shortcuts/files/uug_ansible_wrapper.py which is a pretty non-obvious location if someone wanted to try to find it and contribute to it. A separate repository mentioned in the README or CONTRIBUTING.md could make it easy enough to find a new repo while also making it easier to find when viewing the UUG profile.

This will require a whiteboard and/or beverage.

I think this is an excellent idea, and I agree with @Advill that a rewrite doesn't need to be done. At least not now.

I still want a whiteboard before deciding on this. We need to huddle for a least a few minutes at some point to hear out @kylelaker's concerns and options, and @Advill and @showalrm's opinions on how to take the project forward next year.

Considered. Proof of concept will be done at some point. Closing since we (a) had a discussion and (b) decided to implement a proof of concept. The latter should be tracked separately and not as part of this issue.


Sliding Map 1.44

I tried to update ma version 1.42 -> 1.44  :
With the 1.42 I slid the map with my finger (refresh realtime) but with the 1.44 I must to lift everytime my finger for refresh the map.
Something has changed or bug ?
Thks

Are you using xamarin forms?

Hello, Yes I use Xamarin Forms.
Is there a solution or it's a bug ?

I"m seeing the same thing, I've tried Xamarin Forms and Xamarin Android, both with 1.4.2 and 1.4.4

@NicoVermeir Do you have this problem with 1.4.2 as well?

yes

The refresh is now always dispatched on the ui thread, even when it is already on the ui thread. Perhaps the dispatch messages are not immediately handled when other processes use too many resources.

@NicoVermeir So, this is not what @Wil69's is seeing.

The problem @Wil69 is describing is the same as what I'm seeing, but I keep seeing it when I downgrade the nuget package to 1.4.2

I now only run on ui thread when needed and create the main looper handler only once, but I'm not really sure if this fixes the problem. This will be part of 1.4.5.

I do not test this myself on xamarin forms.

Even with Xamarin Android? I have never seen this. Could you check if all your projects updated to 1.4.5? Could you delete bin's and obj's and rebuild.
I will test with the nuget package.

removed bin and obj, uninstalled the app from my phone, did a clean solution > rebuild solution.
issue is the same
my device is a OnePlus 5T running android 8.1

Thanks for testing. I will try to look at it tonight. I have three devices to test on. I could try to the nuget package and vary the API level.
One more thing you could test. If you clone the repo and do 'git checkout 1.4' and run Samples/Mapsui.Samples.Android, do you have the same result?

I created a new Android sample (in master) using AppCompatActivity. Unfortunately it runs smooth on my Android 8.0 and Android 5.1 device.
Could you checkout master and run the new sample? btw, deleting bin and obj is obligatory when switching between 2.0 and 1.4. Samples/Mapsui.Samples.Droid (named Droid instead of Android to avoid namespace conflicts).

oh! I can reproduce it in the 1.4 branch. No need to test for you.
So, I can reproduce it, and apparently I can fix it :) because that is what I have done in master.

Hi @pauldendulk I would like to know if you publish soon a new version with bug fixed, Sliding map and Label visibility (zoom) ? Thks

I will try to publish today.

btw, label visibility should already be fixed in 1.4.5, which was published earlier this week. Could you test that? Even with the sliding bug you could test it.

1.4.6 was released

@pauldendulk Good Job ! The bugs are fixed ! Thank you.

Great, thanks for testing @Wil69 and @NicoVermeir


add validation in read later form

Related Issue
Fixes:  #4051
Description
Added form validation for read later form
Type of PR

[ ] Bug fix

Screenshots / videos (if applicable)
Screencast from 2024-10-26 23-57-05.webm
Checklist:

[ ] I have made this change from my own.
[ ] I have taken help from some online resources.
[ ] My code follows the style guidelines of this project.
[ ] I have performed a self-review of my own code.
[ ] My changes generate no new warnings.
[ ] I have tested the changes thoroughly before submitting this pull request.
[ ] I have provided relevant issue numbers and screenshots after making the changes.

The form is working now. Please check @abhi03ruchi


builtins: support custom bases log function

PR: https://github.com/cockroachdb/cockroach/pull/41848
From release notes:

Added a log builtin for any base (e.g., log(2.0, 4.0)). [#41848][#41848] {% comment %}doc{% endcomment %}

Picked up in https://github.com/cockroachdb/docs/pull/6470.


exclude couchbase mock snapshot dependency from release enforce rule

@davidyan74 please review

Not needed in release-3.1 - see #29


backticks on Mac are weird.

Prerequisites

[x] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
[Description of the issue]
Steps to Reproduce

[First Step]
[Second Step]
[and so on...]

Expected behavior: [What you expect to happen]
Actual behavior: [What actually happens]
Reproduces how often: [What percentage of the time does it reproduce?]
Versions
You can get this information from copy and pasting the output of atom --version and apm --version from the command line. Also, please include the OS and what version of the OS you're running.
Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

Thanks for taking the time to contribute!
We noticed that this is a duplicate of your own issue https://github.com/atom/atom/issues/15531.
We require the template to be filled out on all new issues and pull requests. We do this so that we can be certain we have all the information we need to address your submission efficiently. This allows the maintainers to spend more time fixing bugs, implementing enhancements, and reviewing and merging pull requests.
Thanks for understanding and meeting us half way :grinning:


Uncaught TypeError: Cannot read property 'length' of undefined

Unfortunately I didn't do anything special to get that error
Atom: 1.32.2 x64
Electron: 2.0.9
OS: Windows 10
Thrown From: Atom Core
Stack Trace
Uncaught TypeError: Cannot read property 'length' of undefined
At C:\...\AppData\Local\atom\app-1.32.2\resources\app\static\<embedded>:14

TypeError: Cannot read property 'length' of undefined
    at ScreenLineBuilder.emitText (~/AppData/Local/atom/app-1.32.2/resources/app/static/<embedded>:14:1108109)
    at ScreenLineBuilder.buildScreenLines (~/AppData/Local/atom/app-1.32.2/resources/app/static/<embedded>:14:1103819)
    at DisplayLayer.getScreenLines (~/AppData/Local/atom/app-1.32.2/resources/app/static/<embedded>:14:89276)
    at TextEditorComponent.queryScreenLinesToRender (~/AppData/Local/atom/app-1.32.2/resources/app/static/<embedded>:11:79025)
    at TextEditorComponent.updateSyncBeforeMeasuringContent (~/AppData/Local/atom/app-1.32.2/resources/app/static/<embedded>:11:69678)
    at TextEditorComponent.updateSync (~/AppData/Local/atom/app-1.32.2/resources/app/static/<embedded>:11:67306)
    at TextEditorComponent.didMouseWheel (~/AppData/Local/atom/app-1.32.2/resources/app/static/<embedded>:11:92055)

Commands

Non-Core Packages
busy-signal 1.4.3
highlight-selected 0.14.0
intentions 1.1.5
linter 2.2.0
linter-eslint 8.4.1
linter-ui-default 1.7.1
Sublime-Style-Column-Selection 1.7.5

Thanks for contributing!
We noticed that this looks like a duplicate of https://github.com/atom/atom/issues/16892 so you can subscribe there for updates if you'd like.

Because we treat our issues list as the Atom team's backlog, we close duplicates to focus our work and not have to touch the same chunk of code for the same reason multiple times. This is also why we may mark something as duplicate that isn't an exact duplicate but is closely related.
For information on how to use GitHub's search feature to find out if something is a duplicate before filing, see the How Can I Contribute? section of the Atom CONTRIBUTING guide.


Add option to export a png preview of the path

This PR adds an option to export the canvas preview as a PNG file in addition to the path file.
Fixes #218

This is great. Looks good in my testing.

This is a cool feature and it works perfectly. I think, however, that the way it's presented to the user is a bit clunky. It's not obvious that we will be outputting a second file.
Even though a PNG is not really a machine-printable output, I think that the toggle should be removed and the new format should be added to the existing drop list, e.g., "PNG preview". @geekuillaume, if you'd like help with this, let me know.

One more minor nitpick: We omit semicolons at the end of each JS line as a style choice.

This is a cool feature and it works perfectly. I think, however, that the way it's presented to the user is a bit clunky. It's not obvious that we will be outputting a second file.
Even though a PNG is not really a machine-printable output, I think that the toggle should be removed and the new format should be added to the existing drop list, e.g., "PNG preview". @geekuillaume, if you'd like help with this, let me know.

The goal of this feature is to quickly get a preview of a file to easily show what the generated gcode will draw. It's already possible to export the path to SVG and use this for the preview but this requires more user actions to select the correct format and save it again.
We can change the label of the option to better explain this but I don't think adding PNG as an export format will best respond to the need for this feature.
For the code styling, I can change this but we should force this with a linter executed in github actions to make sure every PR matches the code style used here.

In fact, I just saw that we have an eslint configuration that adds semicolons to the end of each line. What should we do here then? Also, the configuration is broken because some packages are missing: @typescript-eslint/eslint-plugin, @typescript-eslint/parser and typescript.

The goal of this feature is to quickly get a preview of a file to easily show what the generated gcode will draw. It's already possible to export the path to SVG and use this for the preview but this requires more user actions to select the correct format and save it again.
Ok. Can you help me understand how the PNG preview provides a better indication of what will be drawn than the preview window itself? I don't fully understand your use case. At one point we had the ability to deselect the current layer, which may be closer to the actual drawn pattern. We could add that back.

For the code styling, I can change this but we should force this with a linter executed in github actions to make sure every PR matches the code style used here.
Makes sense. I can add a PR to fix this and add the rule. Lint was broken when I ported it over to the Vite build.

I can see both arguments here. I think the intent is to save a png image when you make your pattern, so you can preview the file on a hard disk later (compared to the preview in sandify). I would really like that feature. We just haven't done it before because we didn't have a good way to make it happen. It will be more important with a database feature to share patterns, because you will want the interface to have a preview available.
I don't see a solution that doesn't have negatives.
The png checkmark solution here downloads two files with one click, which I think breaks on chrome. I was downloading a bunch of files without changing the name. Firefox was automatically numbering them for me (sandify.gcode, sandify(1).gcode, etc.). When I added the png, the names got out of sync (sandify(1).gcode was downloaded at the same time as sandify.png). That's not a huge issue, but it is a bit surprising.
Making png a separate output type doesn't really fit the pattern either though. SVG is really for plotters, thr for sisyphus tables and gcode for marlin/grbl machines. PNG isn't for a machine, and all three types of machine could want to keep that preview with the pattern to be able to identify it later. SVG could maybe be stretched to fit that need. We can make the svg settings better, including changing it from black, if that helps.
We could zip up the pattern and the png. I have a personal bias against the zip format (and tar files aren't something most people use), but that would keep the names consistent, keep the files together, and only start one download to make chrome happy. But then you have to unzip the file.
Prusa slicer can embed a thumbnail in the gcode itself. But you can't open it in an image viewer. There is an octoprint plugin to read the thumbnail from uploaded gcode, which is pretty neat: https://plugins.octoprint.org/plugins/prusaslicerthumbnails/ . It's very limited on what can read those files though.
It has also been suggested that we should use the metadata in a png, jpeg, or svg to save sandify project information. If the entire state was saved in the image, then users could "save as..." their sandify project, which would look like an image to any image viewer, but could be imported back into sandify to restore all the sandify settings. The user would then save the project file as a PNG, and then also export the gcode/thr/svg. This is more work, and we have to decide on a save format. This would be a completely different export from the current ones we have. I have a bit of worry that people will publish their image to google photos or open it in an image editor, and it will mangle the metadata.
It seems like it should be easy, but it is hard to couple an image that can be opened on any computer with arbitrary sandify data. We have to make a compromise somewhere. But I would rather try something than do nothing. PRs don't require perfection, just improvement. Sandify isn't finished, so I am ok with moving this forward any way we agree to, and assuming we will have to revisit it in the future, or live with the compromise.

we should try to use the existing preview if possible to render the faithful representation

I'm not sure what you mean here. Isn't the existing preview being used to generate the image for the PNG in this PR?

Earlier in the comments, I had asked @geekuillaume why the preview did not suffice as a PNG alternative for seeing what would be drawn.

The preview won't work if you already have the gcode/the file on your hard drive and aren't actively working on it.

This PR is no longer compatible with our code base.


Magic Button

Please add to the plugin the ability to create a "Magic Button" on spawn which, after placing and clicking on it by the player, will move him to random cords

This sounds like customized server behavior specific to your needs. The BetterRTP plugin is general RTP plugin and doesn't add hyper-specific behavior like this.
Please get in contact with a developer who can make this happen for you or try to learn how to make your own plugins. They/You can use BetterRTP as a platform to handle the random teleportation part but your custom button feature is for you/or the dev to figure out.


Fixing missing nullable attribute

Same as other sharedInstance... and init... methods.

Hay

😷🤗☕

Hay

Thanks @yas375 for bringing it up, the change is already in code. I'm closing it now.


Eco 1701 rcbpurchui pass the variables from the sdk to the paywall

Motivation / Description
Parses offering packages into an object keyed by package Identifier and a variables object as value.
Passes this object into the paywall initialization.
TODO:

Tests

Changes introduced
Linear ticket (if any)
Additional comments

          1 Error

:no_entry_sign:
Label the PR using one of the change type labels. If you are not sure which label to use, choose pr:other.

Label
Description

pr:feat
A new feature. Use along with pr:breaking to force a major release.

pr:fix
A bug fix. Use along with pr:force_minor to force a minor release.

pr:other
Other changes. Catch-all for anything that doesn't fit the above categories. Releases that only contain this label will not be released. Use along with pr:force_patch, or pr:force_minor to force a patch or minor release.

pr:RevenueCatUI
Use along any other tag to mark a PR that only contains RevenueCatUI changes

pr:next_release
Preparing a new release

pr:dependencies
Updating a dependency

pr:phc_dependencies
Updating purchases-hybrid-common dependency

  Generated by :no_entry_sign: Danger

@guido732 Changed labels to pr:other, since this is not a user facing change yet, so better to assign it to the the rest of the changelog.


Add script to process domains and check for subdomain takeover using subjack

Added a script that reads domains from the 'takeover.txt' file.
The script runs 'subjack' to check each domain for potential subdomain takeover vulnerabilities.
Results are saved in individual files subdomain_takeover.txt.

Subjack is an archived repository with no activity for the last 4 years. I don't get the idea behind sending subdomains to subjack that are already confirmed takeovers.


Create flss.txt

Website: http://flss.vnu.edu.vn/

@hainam872011 Thank you for the request! Please provide us with:

the school street address, including city and country
an URL of a page on the official website where the school offers an IT-related long-term (>1 year) course

Address: Pham Van Dong Street, Cau Giay District, Ha Noi City, Viet Nam
URL: http://flss.vnu.edu.vn/thong-bao/thong-bao-ve-viec-dang-ky-hoc-ngoai-ngu-2-danh-cho-hoc-sinh-khoi-10-k53-nam-hoc-2021-2022

@hainam872011 Thank you for the clarification. Pull request merged.

thank you @philipto


surcharges are not displayed in the unit price

Used Shopware Version: <IP_ADDRESS>
Description: If you have surcharges for a custom product option like a checkbox, the price won't be displayed in the unit price.
Steps to reproduce:

create custom product template with surcharges
complete an order with this custom product
check order in the frontend (account orders) and in the admin

Expected result:

the unit price is the actual price of the product + the surcharges

Actual result:

the unit price is the original price

[public] Automated response: This issue is linked to the internal issue https://shopware.atlassian.net/browse/CUS-640.
[created from CUS-640, comment 484972]


(1) Select or don't a matrix math library.

Eigen?
LaPack?
Something else?

DoD: Integration of the library into the CI environment.


[map] crash on adding second table

Occurs when you already have a map in a collection and you add another table to it:
TypeError: Cannot read properties of null (reading 'id')

Location:
https://github.com/dxos/dxos/blob/97aa72da8aa750067332bb37b706de81038bfb98/packages/plugins/experimental/plugin-map/src/components/MapDetectLocations.ts#L87

No longer happening, I believe fixing https://github.com/dxos/dxos/issues/7655 fixed this too


Dual crossterm versions in 0.3.1

Describe the bug
Dual Crossterm versions. This risks unexpected issues and needlessly bloats binary size.
To Reproduce
on a clean compile log shows both Crossterm 0.22.1 and 0.23.2 are compiled.
Expected behavior
A singular version chosen to match the one used by Tui is installed.
Desktop (please complete the following information):
Most is irrelevant as this is a minor Cargo.toml issue.

KDash version: 0.3.1

Additional context
(If I remember correctly the standard solution is to set '*' as version for crates whose version is selected by other crates. Might need to delete cargo.lock also)

Thanks for reporting. I would appreciate if you could do a PR to fix it as I'm bit tight on time now

outdated


From /u/natefinch on reddit; Longer names for flags

long names for the flags, so they're easier to understand when you're looking at them from a script (e.g. from a go:generate tag).

long names implemented, short names still there


Hide console on windows for all examples

See https://github.com/emilk/egui/discussions/1003 and https://github.com/emilk/egui/issues/116
Please take a look @TicClick @BctfN0HUK7Yg
If this works as expected I will add the same to https://github.com/emilk/eframe_template

It is probably best to use something like this:
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]

So that any test failures will still print to the console on Windows.

it does work as intended, but I agree with @parasyte here to make it work only for cargo build --release

Thanks for the feedback!


Additional functionalities to further demo Audience in action

This purpose of this PR aims to update Brainstorm with sensible audience-usage examples. To do this, the following features are added:

userId is now replaced with userName in the UI so as to be more human readable.

Tooltip of the note persona will display "Created by {author name}". If the author is also the user, the tooltip will instead display "Created by you".

The user last edited the note will be shown in the footer of the note. Similar to the tooltip, it will display "Last edited by {author name}" or "Last edited by you" depending on if the user is the last one to edit the note. The feature also waits 2 seconds before actually updating the last edited user so as to prevent flickering.

Additionally, the audience section of the README is updated to include the features

Overall I'd like a lot of the words to be moved to comments in the code, with the readme focused on the big picture. That might be more than you can tackle at the moment.

I created an issue to add more code comment https://github.com/microsoft/FluidFramework/issues/7303 😀

Overall I'd like a lot of the words to be moved to comments in the code, with the readme focused on the big picture. That might be more than you can tackle at the moment.

I created an issue to add more code comment microsoft/FluidFramework#7303 😀

@tylerbutler Asking since I have no clue or if it even matters, issues for examples should be in the examples repo I'd assume?

Overall I'd like a lot of the words to be moved to comments in the code, with the readme focused on the big picture. That might be more than you can tackle at the moment.

I created an issue to add more code comment microsoft/FluidFramework#7303 😀

@tylerbutler Asking since I have no clue or if it even matters, issues for examples should be in the examples repo I'd assume?

I tried creating an issue on the examples repo but it redirected me to the main repo 🤔

Looks like you addressed storing the FrsMember in the SharedMap here instead of as part of the follow up issue.  Those changes should be reflected in the README code snippets too, but I think the README generally needs some editing around clarity beyond the verbosity from before so it can all be handled together in the follow up.


JWS Schema Validation Error doesn't seem correct

When I try to validate a file of type jws, I get the following error:
Schema: #/pattern  'should match pattern "^[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+$"'

But when I put the regex and the payload into an external regex validator, it passes.

Can you possibly share some of data you are using (or create a test jws for us to try to repro the behavior?). Could it be an issue with a trailing character?

Good call! I checked the file again and there was a newline at the end, without it it passes validation.

It's a bit harsh for the tool to reject the input because of that. I opened issue #17 to accept trailing control char.

I bet you're not the only one who will stumble here though @blingenau  I feel like stripping whitespace around a JWS file might be fair game -- or at least if strip(input) !== input, maybe provide a more specific error about whitespace.

(This is especially true since we don't try to standardize a "JWS file" object; it's something that exists purely as a construct for the validator; in real life we create .smart-health-card JSON files where lead/trailing whitespace is A-OK as long as the JSON parses.

FYI @blingenau , @jmandel; see PR #19.


3 bugs

What
charlesnepote
App Open Food Facts Android 4.2.1+897-ml-play. I encountered several bugs:
photos are not uploaded anymore; to reproduce : add photos => nothing is uploaded after dozens of minutes; if I'm going to the history and open a product there are still there; if I leave the app and come back to the product, they are gone
when opening a photo, I can add only one photos to the list; then there is no more button "more photos"
user profile: products I have added, photos I have uploaded, etc. => all are "0"

In the latest release please pr

@CharlesNepote check your tasks list to see if you are running in same bug as https://github.com/openfoodfacts/smooth-app/issues/3533#issuecomment-1373734199

@monsieurtanuki it seems to be the same bug as me (I imagine the down time of openfoodfacts.org did create some unusual situations).
Maybe in addition to your PR https://github.com/openfoodfacts/smooth-app/pull/3548 we should remove all pending task that have no stamp, to be sure to put  existing app installations back on track !

Is there a way to fix every device before Thursday?

@monsieurtanuki if we think about loosing as less data as possible (we don't know how many people have this problem right now), I would say (but @teolemon is the judge here) that we should unblock all task without timestamp.
This may lead to unwanted effects (unordered changes) but it's better than loosing all updates I guess.
Is that what will happen with your PR ?

@alexgarel All task are already supposed to be unblocked. The stamps are only here to maintain consistency regarding the order of the changes. They don't prevent uploads from happening.
The PR I'm working on is about getting rid of the angst around the file access, that require different privileges depending on the iOS and android versions. And that's particularly problematic for background tasks that are by essence difficult to track.
It's quite difficult to understand what is going on as - again - I cannot reproduce the bug. As I'm testing my new PR I successfully upload images to the server.

add photos => nothing is uploaded after dozens of minutes

@CharlesNepote What have you been doing meanwhile? Just stayed on the page or normally browsed the app?

if I'm going to the history and open a product there are still there; if I leave the app and come back to the product, they are gone

@CharlesNepote Probably a bug, but that does not mean your files are gone and will never be uploaded. If you go to the "pending tasks" page (dev mode / Pending tasks), what do you see?

(on TEST env) Exception: Could not upload picture: 500 / Internal Server Error
That doesn't help.

add photos => nothing is uploaded after dozens of minutes

@CharlesNepote What have you been doing meanwhile? Just stayed on the page or normally browsed the app?

Normally browsed the app. Then coming back to the product thanks to history: the photos are still here, but nothing has been uploaded to the site.

if I'm going to the history and open a product there are still there; if I leave the app and come back to the product, they are gone

@CharlesNepote Probably a bug, but that does not mean your files are gone and will never be uploaded. If you go to the "pending tasks" page (dev mode / Pending tasks), what do you see?

I see more than 30 pending tasks:

3760019740041 OperationType.image
3760019740041 OperationType.refreshLater
3760019740041 OperationType.image
3760019740041 OperationType.image
[...]

On test env

Exception: Could not upload picture: 500 / Internal Server Error

Do you still have it @monsieurtanuki ?

@alexgarel frequently. But this time I would say it's not my business.
I created an issue on off-dart about the TEST env being unreliable. We even deactivated all integration tests on TEST (write) or moved them to PROD (read-only).

@alexgarel that said, it's good news we are now able to read the error message from Smoothie - even if in that case you don't know what to do.
Maybe relevant: I remember that uploads systematically failed in TEST with too big pictures.

@CharlesNepote I believe all the bugs you experienced are currently fixed on the latest github develop branch.
It would be helpful if you could try that new version, if possible.

I haven't got all the stuf to test (dev env, etc.), sorry.
I can test an apk though.

I haven't got all the stuf to test (dev env, etc.), sorry.
I can test an apk though.

I understand.
Perhaps you could just use the next beta version (4.3.0) when it's available. The best option would be to upgrade smoothly (haha) your current app keeping the data, so that we could check what happens with your current background task backlog.
Starting from scratch could be useful too. @M123-dev do we have a recent generated apk?

We don't have any up-to-date ones, though @CharlesNepote if you join the internal release channel of smoothie (@teolemon can help with that) you will always have the latest version

I installed the new stable version from last week. All the items from the list "awaiting contributions" were "not yet started".
Then I deleted one ("Waiting 10 minutes before refreshing product to get all automatic edits"), and all the images were finally uploaded.
Then a pile of "Waiting 10 minutes before refreshing product to get all automatic edits" was left and I had to delete them one by one.

@CharlesNepote the "waiting 10 minutes" items are normal (though the label is confusing as @teolemon already pointed out). It means that when you upload an image, it takes about 10 minutes to the server to fully process it, and that it's worth refreshing the local product then. Beyond "I upload the image and I immediately refresh the local product and I see the new image".
So you don't "have" to delete them, they will start 10 minutes after the corresponding upload. No big impact if you delete them either, just no refresh.
Beyond your manual interventions, would you say that now the behavior of the app matches your expectations regarding photo upload?

One thing to consider, AFAIK we are currently using a queue, but there is no point in waiting for the "10min refresh" before pushing other changes. They should be ignore in this order, shouldn't they

@M123-dev We display the queue in its chronological order, we run the queue in this order, but we jump tasks if they're not supposed to be run (in our case, the "refresh after 10 minutes" tasks).
Please attach pending contribution screenshots if you see something fishy.

If that's already the case perfect 👍🏻

@teolemon @CharlesNepote I assume this issue can be closed now.
Feel free to create another one if needed.


Fix memory leak in task queue

This pr will fix following bug:

Memory leak in task queue
Python2 on x86 can't convert int to long
si_unit is not callable
Encoding error with python 2 on windows platform

Travis’s bug let mac build down, we can ignore it.

@frostyplanet Updated, plz review again.


Add button to clear event timeline

Good point.  Command-K is the keyboard shortcut until then.

@skellock we should document that somewhere.

Click Help in the bottom left and scroll down to the keyboard section.

Point taken though.  Help could be better.  :)

@skellock oh, cool! :)

Is there a Reactotron.clear() statement by any chance or something else I could put in the ComponentDidMount of my root component to clear upon reload?

@Thorbenandresen see issue #220
Apparently this has been implemented in version 1.3

Oops.  Yes.  Good to go.


archive/zip: Reader.Open panics on empty string

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

$ go version
go version go1.17 linux/amd64

Does this issue reproduce with the latest release?
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/user/.cache/go-build"
GOENV="/home/user/.config/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/home/user/go/pkg/mod"
GOOS="linux"
GOPATH="/home/colin/go"
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/lib/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="go1.17"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/dev/null"
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-build2958766942=/tmp/go-build -gno-record-gcc-switches"

What did you do?
r, _ := zip.NewReader(bytes.NewReader(raw), int64(len(raw)))
r.Open("")

https://play.golang.org/p/7x5dvzJSoCY
What did you expect to see?

What did you see instead?
panic: runtime error: index out of range [-1]

goroutine 1 [running]:
archive/zip.split(...)
	/usr/local/go-faketime/src/archive/zip/reader.go:800
archive/zip.(*Reader).openLookup(0x0, {0x0, 0xffffffffffffffff})
	/usr/local/go-faketime/src/archive/zip/reader.go:821 +0x265
archive/zip.(*Reader).Open(0x4e1360, {0x0, 0x16})
	/usr/local/go-faketime/src/archive/zip/reader.go:785 +0x45
main.main()
	/tmp/sandbox521722687/prog.go:11 +0xb2

Program exited: status 2.

Anything else?
This was discovered via io/fs.WalkDir, but the root cause is Reader.Open: https://play.golang.org/p/WWHxZRKu2gY:
panic: runtime error: index out of range [-1]

goroutine 1 [running]:
archive/zip.split(...)
	/usr/local/go-faketime/src/archive/zip/reader.go:800
archive/zip.(*Reader).openLookup(0x40c6a7, {0x0, 0x4bb740})
	/usr/local/go-faketime/src/archive/zip/reader.go:821 +0x265
archive/zip.(*Reader).Open(0x40c354, {0x0, 0xc000134000})
	/usr/local/go-faketime/src/archive/zip/reader.go:785 +0x45
io/fs.Stat({0x4e4060, 0xc000134000}, {0x0, 0x0})
	/usr/local/go-faketime/src/io/fs/stat.go:25 +0x9c
io/fs.WalkDir({0x4e4060, 0xc000134000}, {0x0, 0x0}, 0x0)
	/usr/local/go-faketime/src/io/fs/walk.go:108 +0x3c
main.main()
	/tmp/sandbox3566573894/prog.go:12 +0xbe

Program exited: status 2.

I was not expecting this to work, since most other fs.FS implementations (say embed.FS) return a not found error when root == "", but a panic seemed like a bug.

https://github.com/golang/go/blob/d384ebde60a7e720f83fb10e6fa9cbf989a8866f/src/archive/zip/reader.go#L800-L804
It seems to be a bug, I'll try to fix it.

does this qualify for backporting to the current releases?

cc @dsnet @rolandshoemaker

Also having the same issue, code and zip (actually JAR) file attached. Of note when printing the file names from reader.Files (as commented out below) is that there are absolute paths including a /. See picture at end

Details
package main

import (
	"archive/zip"
	"io"
	"os"
	"path"
)

const destination = "./extracted"

func main() {
	reader, err := zip.OpenReader("liquibase-core-4.4.3-sources.zip")
	if err != nil {
		panic(err)
	}
	defer reader.Close()

	// names := []string{}

	// for _, file := range reader.File {
	// 	names = append(names, "'"+file.Name+"'")
	// }

	// fmt.Println(strings.Join(names, "\n"))

	for _, file := range reader.File {
		outputPath := path.Join(destination, file.Name)
		err := copyZipFileEntry(reader, file, outputPath)
		if err != nil {
			panic(err)
		}
	}
}

func copyZipFileEntry(reader *zip.ReadCloser, entry *zip.File, outputPath string) (err error) {
	inputFile, err := reader.Open(entry.Name)
	if err != nil {
		return err
	}
	defer func() {
		err1 := inputFile.Close()
		if err == nil {
			err = err1
		}
	}()

	if err = os.MkdirAll(path.Dir(outputPath), 0700); err != nil {
		return err
	}
	outputFile, err := os.OpenFile(outputPath, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600)
	if err != nil {
		return err
	}
	defer func() {
		err1 := outputFile.Close()
		if err == nil {
			err = err1
		}
	}()

	_, err = io.Copy(outputFile, inputFile)
	return err
}

liquibase-core-4.4.3-sources.zip

Our stacktrace is slightly different, but ultimately still hits the panic in archive/zip.split
panic: runtime error: index out of range [-1]

goroutine 1 [running]:
archive/zip.split(...)
        /usr/lib/go/src/archive/zip/reader.go:800
archive/zip.fileEntryLess({0xc000168900, 0x4bacc0}, {0x569758, 0xc00021e000})
        /usr/lib/go/src/archive/zip/reader.go:774 +0x1e5
archive/zip.(*Reader).initFileList.func1.1(0xc00007ca88, 0x493)
        /usr/lib/go/src/archive/zip/reader.go:768 +0x4f
sort.doPivot_func({0xc00007ca88, 0xc0001a92f0}, 0x0, 0x4e0)
        /usr/lib/go/src/sort/zfuncversion.go:87 +0x1d9
sort.quickSort_func({0xc00007ca88, 0xc0001a92f0}, 0xc00000c060, 0x0, 0xc00007cac8)
        /usr/lib/go/src/sort/zfuncversion.go:143 +0x85
sort.Slice({0x4afa00, 0xc00000c060}, 0x500)
        /usr/lib/go/src/sort/slice.go:20 +0x9f
archive/zip.(*Reader).initFileList.func1()
        /usr/lib/go/src/archive/zip/reader.go:768 +0x42a
sync.(*Once).doSlow(0x0, 0x0)
        /usr/lib/go/src/sync/once.go:68 +0xd2
sync.(*Once).Do(...)
        /usr/lib/go/src/sync/once.go:59
archive/zip.(*Reader).initFileList(0x0)
        /usr/lib/go/src/archive/zip/reader.go:738 +0x45
archive/zip.(*Reader).Open(0x462b3e, {0xc000020228, 0xc00007cdc8})
        /usr/lib/go/src/archive/zip/reader.go:783 +0x2c
main.copyZipFileEntry(0x4e7e00, 0xc00000e018, {0xc0001b0dc0, 0x1e})
        /home/noah/Sourcegraph/coursiertest/main.go:40 +0x65
main.main()
        /home/noah/Sourcegraph/coursiertest/main.go:32 +0x377
exit status 2

Screenshot showing debugger state when calling initFileList. Note the filename / being transformed to empty string. Simply doing a check after toValidName for empty string and doing continue results in panic: open /: file does not exist later in program execution, which while could be ignored, doesn't seem like a proper solution imo but also not sure what the behaviour should be in that case.

per the spec, what you provided is an invalid zip file:

   <IP_ADDRESS> The name of the file, with optional relative path.
  The path stored MUST NOT contain a drive or
  device letter, or a leading slash.  All slashes
  MUST be forward slashes '/' as opposed to
  backwards slashes '\' for compatibility with Amiga
  and UNIX file systems etc.  If input came from standard
  input, there is no file name field.

As such, I think it is totally valid for go to panic on input path names that are absolute (either /path/to/ or C:/path/to). That being said, for compatibility, we could chose to not.

it looks like Info-ZIP helps out during unzip:
warning:  stripped absolute path spec from /var/jenkins/workspace/liquibasePro/4.4.x/53/liquibase/liquibase-dist/target/archive/licenses/epl-1.0.txt
  inflating: var/jenkins/workspace/liquibasePro/4.4.x/53/liquibase/liquibase-dist/target/archive/licenses/epl-1.0.txt
warning:  stripped absolute path spec from /var/jenkins/workspace/liquibasePro/4.4.x/53/liquibase/liquibase-dist/target/archive/licenses/isc.txt
  inflating: var/jenkins/workspace/liquibasePro/4.4.x/53/liquibase/liquibase-dist/target/archive/licenses/isc.txt
warning:  stripped absolute path spec from /var/jenkins/workspace/liquibasePro/4.4.x/53/liquibase/liquibase-dist/target/archive/licenses/lgpl-3.0.txt
  inflating: var/jenkins/workspace/liquibasePro/4.4.x/53/liquibase/liquibase-dist/target/archive/licenses/lgpl-3.0.txt

but it refuses to create one:
[user@localhost ~]$  zip info /path/to/file
[user@localhost ~]$ unzip -l info.zip
Archive:  info.zip
Length      Date    Time    Name
---------  ---------- -----   ----
   2075  2021-09-02 22:41   path/to/file
---------                     -------
   2075                     1 file

As such, I think it is totally valid for go to panic on input path names that are absolute

I very strongly disagree with this. This was a cause of panics in production for us, and as a result, regardless of what the spec says, I strongly believe that archive/zip should not panic in such a scenario, as absolute paths in zips can and do exist in real-world files. If anything, I would consider this issue almost as serious as two previous panics in archive/zip, both of which have a CVE (first and second). Crafted/invalid input should not cause a panic, it should be handled appropriately and defensively.

I agree that this panic seems accidental, and we could probably return an error on NewReader, (I have reworded my previous comment to reflect this reality); but it is pretty common for stdlib to panic in absurd conditions (index out of bound, nil pointer), especially when it makes for a cleaner interface.

but it is pretty common for stdlib to panic in absurd conditions (index out of bound, nil pointer, etc.), especially when it makes for a cleaner interface.

I don't believe that this case is comparable, nor that the scenario is particularly "absurd" when real world files exist with this characteristic. There is a precedent from the above linked CVEs (most particularly the second one) that the panic from absolute paths should be addressed, as well as a precedent from other utilities that handle this particular case.
I completely understand that the case wouldn't have been thought of while the code was written, I lay no blame on anyone for that, Im simply hoping for the scenario to be handled in such a way that it is still possible for me to consume the zip file and do with the erroneous paths as I wish (in this case, we would skip extracting them).
Of additional note, the issue is not triggered when I do *archive/zip.File.Open, but it is triggered when I do *archive/zip.Reader.Open, so theres a definitive inconsistency there that should be addressed. Also do observe that the panic is triggered not when I try to access an absolute path file, but when I was trying to access META-INF/MANIFEST.MF.
Regardless of our thoughts, I was strongly recommended to notify the security team of this issue, which I have :slightly_smiling_face: I appreciate your thoughts nonetheless

Thank you for reporting this to<EMAIL_ADDRESS>Invalid input should not cause programs to panic, if the input could be attacker controlled. If this required a call to Open("") to trigger, it could have been borderline, since it's hard for an attacker to control the argument to Open. However, the reproducer in https://github.com/golang/go/issues/48085#issuecomment-912659635 triggers a panic with a real file name.
package main

import "archive/zip"

func main() {
	reader, err := zip.OpenReader("liquibase-core-4.4.3-sources.zip")
	if err != nil {
		panic(err)
	}

	reader.Open("META-INF/MANIFEST.MF")
}

We'll backport this as a security fix in the PUBLIC track. @gopherbot, please open backport issues.

I found that the key reason for this problem was the function toValidName which coerces name to be a vaild name for fs.FS.Open will cause the result of vaild name to "" when the file.Name is one of the following:
/
//
\
../

In fact, attacker can easily construct such names.  And the example liquibase-core-4.4.3-sources.zip is one of the above case which including the / in one of the file.Name .

So to totally fix this bug, we can add a judgment after the toValidName function, if the name is "", just continue directly.
name := toValidName(file.Name)
if name == "" {
	continue
}

because when the name is "", the processing is meaningless and does not need to be added to the fileList. Instead, the attacker is given an opportunity.
@colin-sitehost @FiloSottile @mengzhuo what do you think of this fix solution?
if there is no problem, I will try to fix this bug.

Ha, good catch, I will abandon my CL. Thanks for the info.

@Jason7602 I believe I had tried that already and it did not fully solve the issue; iterating over reader.Files still surfaces the / entry, which results in an error of that file not being found when trying to open it. That may be a good enough of a solution however, just feels a bit unusual to me to have two differing sources of what file entries exist. I can double check what the actual result of that change was however to make sure Im not wrong in this statement.

ping @dsnet @bradfitz

@Jason7602 I believe I had tried that already and it did not fully solve the issue; iterating over reader.Files still surfaces the / entry, which results in an error of that file not being found when trying to open it. That may be a good enough of a solution however, just feels a bit unusual to me to have two differing sources of what file entries exist. I can double check what the actual result of that change was however to make sure Im not wrong in this statement.

Actually, my CL349770 has added check both in *Reader.Open and initFileList, which should have solved the problem completely, but I still don't understand the case that you described. If possible, please share your test code, or use the CL349770  to see if your problem is completely solved.

Just so I know we're on the same page, when iterating over archive/zip.(*ReadCloser).File slice, and/or when directly (or via iteration) trying to read an archive/zip.(*File) via archive/zip.(*ReadCloser).Open that corresponds with an absolute path entry, is the intended behaviour to return an fs.PathError{fs.ErrInvalid}, even though the file actually exists inside the zip archive?
If that's the case, should archive/zip.(*File).Open also return fs.PathError{fs.ErrInvalid} for consistency? Would feel like a confusing inconsistency if not.
At the same time I'm not sure if we should be erroring on accessing "legitimate" files. "But the files are there! Why am I getting 'invalid argument' from Go but not from e.g. unzip!"

When the zip file exist absolute path entry, in function initFileList, the toValidName will remove / or ../ element in front of the path and change it to the relative path entry,  So even we do not use fs.ValidPathto check the path, when via archive/zip.(*ReadCloser).Open that corresponds with an absolute path entry, it also will return fs.ErrNotExist.  Actually the files are in the zip file, but Go return the result of file not exist which become more confused.
Actually the comment of  archive/zip.(*ReadCloser).Open clearly tells developers not to open the filename leading with / or ../
elements.
// Open opens the named file in the ZIP archive,
// using the semantics of fs.FS.Open:
// paths are always slash separated, with no
// leading / or ../ elements.
func (r *Reader) Open(name string) (fs.File, error) {

So to better distinguish the two error cases. return the fs.PathError{fs.ErrInvalid} when open the filename leading with  / or ../  is more accurate from my point.

ping @dsnet @bradfitz

No worries, we'll take this and provide a fix in advance of the next minor release.

Thanks

@colin-sitehost would you like to be credited in the release announcement for reporting this? If so, how/with what name/affiliation?

yeah, happy for myself and my employer to be credited: Colin Arnott, SiteHost; let me know if odher formatting questions come up


Setup of the POD+GP surrogate model

A "podpg.py" file has been created to perform this new method. Some changes have been made to other files as well.

Currently fixing the failed test by using ruff. Doing a new pull request soon.


Vscode GitHub integration

This pull request addresses an annoying issue where Visual Studio Code (vscode) installed via the 'Extra' bucket is not recognized by GitHub Desktop. Consequently, users are unable to open files in vscodedirectly from the GitHub Desktop interface using the right-click context menu.
Inspired by https://github.com/desktop/desktop/issues/13798#issuecomment-1687374045, this pull request adds two reg files for installing/uninstalling github-vscode integration, and updates vscode.json to replace variables in reg files in each installation.

Closes #12555

[x] I have read the Contributing Guide.

/verify


Hash for hotkey id is unnecessary

pub fn new(mods: Option<Modifiers>, key: Code) -> Self {
        let mut mods = mods.unwrap_or_else(Modifiers::empty);
        if mods.contains(Modifiers::META) {
            mods.remove(Modifiers::META);
            mods.insert(Modifiers::SUPER);
        }

        let mut hotkey = Self { mods, key, id: 0 };
        hotkey.id = hotkey.generate_hash();
        hotkey
    }

    fn generate_hash(&self) -> u32 {
        let hotkey_str = self.into_string();
        let mut hasher = std::collections::hash_map::DefaultHasher::new();
        hotkey_str.hash(&mut hasher);
        std::hash::Hasher::finish(&hasher) as u32
    }

I'm curious why a hash is being used here rather than just leaving the base u32 value in, it's a guaranteed unique value + it'll always be 32 bits. Am I missing something?
i.e.
it should rather be
pub fn new(mods: Option<Modifiers>, key: Code) -> Self {
        let mut mods = mods.unwrap_or_else(Modifiers::empty);
        if mods.contains(Modifiers::META) {
            mods.remove(Modifiers::META);
            mods.insert(Modifiers::SUPER);
        }

        let mut hotkey = Self { mods, key, id: 0 };
        hotkey.id = mods as u32;
        hotkey
    }

If the id is related to modifiers I can just match on the concatenation of the flags again after throughout the codebase. Wouldn't mind opening a pr.

@mixy1 the hash does not just consist of modifiers, it also includes the key.
I think there maybe a way to avoid hashing by using a u64, 32 bit to store the modifiers id and the other 32 to store the key code (might need a function to map key Code to a u32).
Feel free to work on this if you want, thanks


Postgres autoIncrementInformation in snapshot is not correct

Environment
Liquibase Version: 4.10
Database Vendor & Version: all tested by test-harness
Operating System Type & Version: windows 10
Description
Regardless of what is actually configured for auto increment values for column, snapshot always shows
...
            "autoIncrementInformation": {
              "incrementBy": "1!{java.math.BigInteger}",
              "startWith": "1!{java.math.BigInteger}"
            },
...

Steps To Reproduce
PostgreSQL example:
run SQL similar to what Liquibase generates for addAutoIncrement test in test harness
CREATE TABLE public.autoincrement_test ("intColumn" INTEGER NOT NULL, "dateColumn" date, CONSTRAINT autoincrement_test_pkey PRIMARY KEY ("intColumn"));
CREATE SEQUENCE  IF NOT EXISTS public."autoincrement_test_intColumn_seq" START WITH 100 INCREMENT BY 2;
ALTER TABLE public.autoincrement_test ALTER COLUMN  "intColumn" SET NOT NULL;
ALTER TABLE public.autoincrement_test ALTER COLUMN  "intColumn" SET DEFAULT nextval('public."autoincrement_test_intColumn_seq"');
ALTER SEQUENCE public."autoincrement_test_intColumn_seq" OWNED BY public.autoincrement_test."intColumn";

insert few values into the table
insert into PUBLIC.autoincrement_test ("dateColumn") values ('2010-07-28');
insert into PUBLIC.autoincrement_test ("dateColumn") values ('2010-07-28');
insert into PUBLIC.autoincrement_test ("dateColumn") values ('2010-07-28');

run select * from PUBLIC.autoincrement_test and observe values for intcolumn are 100, 102, 104. This shows that autoincrement works.
run liquibase --output-file=mySnapshot.json snapshot --snapshotFormat=json command against this DB
Actual Behavior
mySnapshot.json contains
            "autoIncrementInformation": {
              "incrementBy": "1!{java.math.BigInteger}",
              "startWith": "1!{java.math.BigInteger}"
            },

for intColumn
Expected/Desired Behavior
mySnapshot.json contains incrementBy=2 startWith=100 (106 in case insert queries were ran)
Additional Context
Discovered in test-harness where expected json across all platforms contains   incrementBy=1 and startsWith=1 even if values in input changelog were different.  Observed for all platforms from Test-Harness Support Matrix that support incrementBy and startWith attributes for addAutoIncrement changeType

Also PR https://github.com/liquibase/liquibase-test-harness/pull/377 adds specific tests for Postgresql.
The refactoring on PR https://github.com/liquibase/liquibase/pull/3361 makes it easier to find out where and how sqls for different databases need to be inserted.


Update dependencies to use React 15

Why:

We need this version, but we want React 15.

How:

Updated package.json dependencies

@cromanozero @johnharger Ready to merge.

@cromanozero Ping


[MLS Spec change] Improve parent hash guarantees (#713)

Link to the exact changes
https://github.com/mlswg/mls-protocol/pull/713
Description of the changes

A nice security property for parent-hash
The goal of #527 was to have a property similar to:

If there is a parent-hash chain from the leaf L to a node N, then the signature of L binds the tree Canonicalize(N)

(where Canonicalize(N) is N with its unmerged leaves removed, i.e. the subtree of N the last time a Commit went through it)
However, this is currently not true, there are a few places where we can do (hopefully benign) modifications on N.
Example 1:
              W
        ______|_____
       /             \
      _               Y
    __|__           __|__
   /     \         /     \
  T       _       X       Z
 / \     / \     / \     / \
A   B   _   _   E   F   G   H

with the parent-hash chain A-T-W (happening with filtered update path).

We can add unmerged leaves:
              W
        ______|_____
       /             \
      U[C]            Y
    __|__           __|__
   /     \         /     \
  T       V[C]    X       Z
 / \     / \     / \     / \
A   B   C   D   E   F   G   H

and the parent-hash chain A-T-U-W is still valid.
How to get this property
These examples are not possible if we require the parent-hash check to verify other invariants that exists in MLS:

if there is a parent-hash link from U to P and there are blank nodes between U and P, these blank nodes are here because of the filtered update path so their sibling have empty resolution (this invariant forbids example 1)
if there is a parent-hash link from U to P, then there can't be a leaf which is merged for U but not for P, because U and P were last modified by a commit at the same time (this invariant forbids example 2)

This PR add these checks to the parent hash validation procedure.
Proof that we do have the property with this PR
Definitions
Un-adding leaves:
Let N be a node, and Ls a list of leaves.
Then UnAdd(N, Ls) is a tree identical to N, except that the leaves of Ls are blanked and removed from every node's unmerged leaves list.
Informally, this operation is the inverse of adding leaves Ls in N by participant not in N.
Canonicalization:
We define Canonicalize(N) = UnAdd(N, N.unmerged_leaves).
Tree equivalence:
We say T1 ~= T2 when Canonicalize(T1) = Canonicalize(T2).
Parent-hash link:
We say C ~> P when "the parent hash in a node C is valid with respect to a parent node P" as described in the "Verifying Parent Hashes" section (modified by this PR)
Key property on ~= and ~>
We prove the following property:
If C ~> P
and C' ~> P'
and C ~= C'
then P ~= P'.
This is better understood with a nice square:
If we have:

C ~= C'
~    ~
V    V
P    P'

Then there is a ~= between P and P'

Proof of this property:
Let S (resp. S') be the sibling in the C ~> P (resp. C' ~> P') relation. Because leaf indices are inside the tree hash, S and S' are both on the same side of P and P'.
Fact 1: UnAdd(S, P.unmerged_leaves) = UnAdd(S', P'.unmerged_leaves).
Proof: By definition of the parent hash and injectivity of tree-hash.
Fact 2: UnAdd(C, P.unmerged_leaves) = UnAdd(C', P'.unmerged_leaves).
Proof:
  UnAdd(C, P.unmerged_leaves)
= UnAdd(C, Intersection(P.unmerged_leaves, Leaves(C))     by a simple lemma on UnAdd
= UnAdd(C, C.unmerged_leaves)                             by C ~> P (we use the second new invariant here!)
= UnAdd(C', C'.unmerged_leaves)                           by C ~= C'
= UnAdd(C', Intersection(P'.unmerged_leaves, Leaves(C'))) by C' ~> P' (we use the second new invariant here!)
= UnAdd(C', P'.unmerged_leaves)                           by a simple lemma on UnAdd

With Fact 1 and Fact 2, we deduce that P ~= P' (we use the first new invariant here!).
Proof of signature binding
A leaf signature binds the existence of nodes Mi suh that L ~> M1 ~> ... ~> Mm = root
When there is a parent-hash-link path to a node P starting from a leaf L like L ~> N1 ~> ... ~> Nn ~> P, by applying inductively the property on ~= and ~> you get P ~= Mi for some i, hence L's signature binds Canonicalize(P) = Canonicalize(Mi).

@raphaelrobert can we close this?

Indeed.


Sources of shapefiles

What are the sources of the shapefiles? Natural Earth?

@giumas I don't remember, I just googled "shapefile" and downloaded the first results. IIRC, not all shapefiles come from the same source, I downloaded them from various websites. pyGISS should work with any shapefile.

@giumas I believe the shapefile (pyshp) module was updated, because importing a shp file alone was working when I created pyGISS a year ago.
Since it no longer works, I removed all shp files and replaced them with a unique shapefile
from natural earth that contains all mandatory files.

Sure! Unfortunately, it does not work out of the box with PySide.
BTW, great project !!!


Proposal for end to end integration tests for forklift

This is supposed to serve as a basis for discussing how we can achieve automated e2e tests for forklift.

CC @michalskrivanek @liranr23 @bennyz @bkhizgiy @mnecas @yaacov @sjd78 @rszwajko @nyoxi

Due to the nature of Konveyor changing to align to the Unified Vision, I think it's best we close this PR out.
I believe future VM migration work/questions would be surfaced in https://github.com/kubev2v
If you feel strongly otherwise please reopen and add a comment.


Unlogged in users should not be allowed to access dashboard page.

Users that have not logged in should not be allowed to access the dashboard page as it can result it in hazardous complications.
It seems like you have not added the middleware.ts file to your Next.js project.
I am willing to provide help for FREE. :)

Hello! Is the fix is in Progress? If not I'm willing to provide my contribution

Is the project active ? I don't see any merges since Sep, 2023. Is the project accepting new contributions ?


Uncaught TypeError: Cannot read property 'remove' of undefined

Opened Atom with C# project from command line

Atom Version: 1.4.1
System: Mac OS X 10.11.2
Thrown From: omnisharp-atom package, v0.26.9
Stack Trace
Uncaught TypeError: Cannot read property 'remove' of undefined
At /Users/strodrig/.atom/packages/omnisharp-atom/lib/atom/solution-information.js:113

TypeError: Cannot read property 'remove' of undefined
    at [object Object].action (/Users/strodrig/.atom/packages/omnisharp-atom/lib/atom/solution-information.js:113:32)
    at [object Object].Disposable.dispose (/Users/strodrig/.atom/packages/omnisharp-atom/node_modules/rx/dist/rx.js:683:12)
    at [object Object].CompositeDisposablePrototype.dispose (/Users/strodrig/.atom/packages/omnisharp-atom/node_modules/rx/dist/rx.js:666:31)
    at atom-workspace.<anonymous> (/Users/strodrig/.atom/packages/omnisharp-atom/lib/atom/solution-information.js:47:42)
    at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:260:29)
    at CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:3:61)
    at CommandRegistry.module.exports.CommandRegistry.dispatch (/Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:160:19)
    at omnisharp-status-bar.toggleSolutionInformation (/Users/strodrig/.atom/packages/omnisharp-atom/lib/views/status-bar-view.js:495:27)
    at omnisharp-project-count.projectCount.onclick (/Users/strodrig/.atom/packages/omnisharp-atom/lib/views/status-bar-view.js:359:32)

Commands
     -0:31.6.0 omnisharp-atom:toggle-dock (atom-workspace.workspace.scrollbars-visible-when-scrolling.theme-oceanic-next.theme-isotope-ui)
  2x -0:25.4.0 omnisharp-atom:solution-status (atom-workspace.workspace.scrollbars-visible-when-scrolling.theme-oceanic-next.theme-isotope-ui)

Config
{
  "core": {
    "themes": [
      "isotope-ui",
      "oceanic-next"
    ]
  },
  "omnisharp-atom": {
    "enhancedHighlighting": true
  }
}

Installed Packages
# User
atom-yeoman, v0.3.15
isotope-ui, v2.7.1
json-schema, v0.1.15
linter, v1.11.3
linter-cppcheck, v0.1.1
linter-pep8, v1.2.1
linter-sass-lint, v1.0.2
linter-tidy, v2.1.0
minimap, v4.19.0
oceanic-next, v0.1.2
omnisharp-atom, v0.26.9
pigments, v0.21.0

# Dev
No dev packages

Same issue on my machine, FYI.

+1

Has this happened to anyone lately?

I haven't got that problem again, for me it works again after updating both atom and omnisharp.
Thanks!


Customization of link radius

I wanted to customize links between nodes to have sharp 90-degree turns, not smoothed. This change allows to customize the link turn radius.

In the new, upcoming version, we will have the possibility to override entire link generation function algorithm, so this change  will be possible without touching the core source code

In the new, upcoming version, we will have the possibility to override entire link generation function algorithm, so this change will be possible without touching the core source code

Is this new ability of overriding entire link generation function algorithm available in version 2.6.0? As I tested and overrided the linkGroupArc attribute with d3.curveStep but not working.


Add comments after "cscope add GTAGS" in .vimrc cause it invalid

1 Vim Version

VIM - Vi IMproved 8.1 (2018 May 18, compiled Sep 27 2018 10:48:58)`

2 Issue description
Just using "global" utilities: "gtags" and "gtags-cscope"
In .vimrc, below line is invalid and not operated:
cscope add GTAGS " Auto connect the database
Must use:
 cscope add GTAGS

@bearzyj Try putting the comment above the cscope...  line

Hi,
This is a specification. Please see the following documents.
:h :quote

[...]
It is not possible to add a comment to a shell command ":!cmd" or to the
":map" command and a few others, because they see the '"' as part of their
argument.  This is mentioned where the command is explained.

--
Best regards,
Hirohito Higashi (h_east)

On 2018-10-02, h_east wrote:

Hi,
This is a specification. Please see the following documents.
:h :quote
[...]
It is not possible to add a comment to a shell command ":!cmd" or to the
":map" command and a few others, because they see the '"' as part of their
argument.  This is mentioned where the command is explained.

I don't see where this is mentioned anywhere in the cscope
documentation.  At least searches for "quote" and "comment" in
if_cscoe.txt return nothing.
Regards,
Gary

So how about this doc patch:
diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 3b2dd3206..38a208937 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -534,9 +534,46 @@ after a command causes the rest of the line to be ignored.  This can be used
 to add comments.  Example: >
        :set ai         "set 'autoindent' option
 It is not possible to add a comment to a shell command ":!cmd" or to the
-":map" command and a few others, because they see the '"' as part of their
-argument.  This is mentioned where the command is explained.
+":map" command and a few others (mainly commands that expect expressions)
+that see the '"' as part of their argument:

+    :argdo
+    :autocmd
+    :bufdo
+    :cexpr (and alike)
+    :call
+    :cdo (and alike)
+    :command
+    :cscope (and alike)
+    :debug
+    :display
+    :echo (and alike)
+    :elseif
+    :execute
+    :folddoopen
+    :folddoclosed
+    :for
+    :grep (and alike)
+    :help (and alike)
+    :if
+    :let
+    :make
+    :map (and alike including :abbrev commands)
+    :menu (and alike)
+    :mkspell
+    :normal
+    :ownsyntax
+    :popup
+    :promptfind (and alike)
+    :registers
+    :return
+    :sort
+    :syntax
+    :tabdo
+    :tearoff
+    :vimgrep (and alike)
+    :while
+    :windo
                                                        *:bar* *:\bar*
 '|' can be used to separate commands, so you can give multiple commands in one
 line.  If you want to use '|' in an argument, precede it with '\'.

On 2018-10-02, Christian Brabandt wrote:

So how about this doc patch:
diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 3b2dd3206..38a208937 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -534,9 +534,46 @@ after a command causes the rest of the line to be ignored.  This can be used
to add comments.  Example: >
:set ai         "set 'autoindent' option
It is not possible to add a comment to a shell command ":!cmd" or to the
-":map" command and a few others, because they see the '"' as part of their
-argument.  This is mentioned where the command is explained.
+":map" command and a few others (mainly commands that expect expressions)
+that see the '"' as part of their argument:

:argdo
:autocmd
:bufdo
:cexpr (and alike)
:call
:cdo (and alike)
:command
:cscope (and alike)
:debug
:display
:echo (and alike)
:elseif
:execute
:folddoopen
:folddoclosed
:for
:grep (and alike)
:help (and alike)
:if
:let
:make
:map (and alike including :abbrev commands)
:menu (and alike)
:mkspell
:normal
:ownsyntax
:popup
:promptfind (and alike)
:registers
:return
:sort
:syntax
:tabdo
:tearoff
:vimgrep (and alike)
:while
:windo
:bar :\bar
'|' can be used to separate commands, so you can give multiple commands in one
line.  If you want to use '|' in an argument, precede it with ''.

That's nice.  It still requires an awareness of the problem, but
it's documented and all in one place.
I think by "(and alike)" you meant "(and the like)".
Regards,
Gary

Updated patch:
diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 3b2dd3206..ff0ac3be2 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -534,9 +534,46 @@ after a command causes the rest of the line to be ignored.  This can be used
 to add comments.  Example: >
        :set ai         "set 'autoindent' option
 It is not possible to add a comment to a shell command ":!cmd" or to the
-":map" command and a few others, because they see the '"' as part of their
-argument.  This is mentioned where the command is explained.
+":map" command and a few others (mainly commands that expect expressions)
+that see the '"' as part of their argument:

+    :argdo
+    :autocmd
+    :bufdo
+    :cexpr (and the like)
+    :call
+    :cdo (and the like)
+    :command
+    :cscope (and the like)
+    :debug
+    :display
+    :echo (and the like)
+    :elseif
+    :execute
+    :folddoopen
+    :folddoclosed
+    :for
+    :grep (and the like)
+    :help (and the like)
+    :if
+    :let
+    :make
+    :map (and the like including :abbrev commands)
+    :menu (and the like)
+    :mkspell
+    :normal
+    :ownsyntax
+    :popup
+    :promptfind (and the like)
+    :registers
+    :return
+    :sort
+    :syntax
+    :tabdo
+    :tearoff
+    :vimgrep (and the like)
+    :while
+    :windo
                                                        *:bar* *:\bar*
 '|' can be used to separate commands, so you can give multiple commands in one
 line.  If you want to use '|' in an argument, precede it with '\'.

documented as of https://github.com/vim/vim/commit/2c64ca1802b2c99b16d2fdf581b68b5baffb082a

documented as of https://github.com/vim/vim/commit/2c64ca1802b2c99b16d2fdf581b68b5baffb082a


Feature Request: Expose gas break down on Explorer

https://github.com/near/nearcore/pull/4438 introduce expose metadata in receipt outcomes, which contains gas break down information of a contract execution. User can see this information from RPC, but it will be helpful to also see it on explorer

Don't know whom to assign. so I just pin @frol for now. Background: this is from a shared key result between node interface and contract runtime team. The goal is to have gas break down information easily accessible by contract developers. cc @matklad

@ailisp it seems that gas profile has not made in 1.21.x nearcore release, so neither mainnet nor testnet have it expose through RPC yet.

Status: this is currently available on the mainnet:
http post https://archival-rpc.mainnet.near.org jsonrpc=2.0 id=dontcare method=tx   params:='["4UaCrSUYRJuZ8YnNQoQvQwYYXXpRQAcqSxqzaYkT4xgC", "relay.aurora"]' | jq '.result.receipts_outcome[0].outcome.metadata'

Would be useful to expose this in the explorer UI, this is rather important data for contract developers.


typo

Fixed typos

Hi @dbaric! Thanks for this contribution! Could you sign our Contributor License Agreement (CLA) at http://dev.brackets.io/brackets-contributor-license-agreement.html?

Hello @petetnt, I've done it already. I really do not understand why does travis returns an error.


Include data-file attribute to non image files, to insert files link …

…in CKEditor widget.

Thank you! :smile:

Yaw!
When you plan to release a new stable version? I need this change in my production site and I'm using master version at this time :smile:

I'm very sorry for the very late tag, this had now been tagged in version 1.21. Don't hesitate to poke me on the slack channel so I do not forget stuff like this in the future! 😄


Downgrade PKCS#12 algo

the PKCS#12 data uses modern security algorithms that aren’t supported on Apple platforms
#15

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


Support Python 3.12

close #32

I suppose GH actions do not support 3.12 yet (or at least I need to throw in some "beta" suffix or similar.


typo: Double word "you"

@nschonni : Thanks for your contribution! The author, @basilhariri, has been notified to review your proposed change.


Add terms/conditions & privacy policy

Coverage remained the same at 99.194% when pulling 1241f0af155545397747d069d578faa986f1e3cc on prod into fe767e87ee222ccb7e46d090932341af46208fb3 on master.