BackPort HBASE-25093 the RSGroupBasedLoadBalancer#retainAssignment throws NPE

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
2m 31s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ branch-2.3 Compile Tests _

+0 :ok:
mvndep
0m 14s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
3m 48s
branch-2.3 passed

+1 :green_heart:
checkstyle
1m 26s
branch-2.3 passed

+1 :green_heart:
spotbugs
2m 45s
branch-2.3 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 12s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
3m 33s
the patch passed

+1 :green_heart:
checkstyle
1m 26s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
18m 28s
Patch does not cause any errors with Hadoop 2.10.0 or 3.1.2 3.2.1.

+1 :green_heart:
spotbugs
3m  3s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 22s
The patch does not generate ASF License warnings.

45m 48s

Subsystem
Report/Notes

Docker
Client=19.03.13 Server=19.03.13 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2553

Optional Tests
dupname asflicense spotbugs hadoopcheck hbaseanti checkstyle

uname
Linux a26fc2808aa5 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2.3 / c7f95fffbd

Max. process+thread count
84 (vs. ulimit of 12500)

modules
C: hbase-server hbase-rsgroup U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f) spotbugs=3.1.12

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
4m 49s
Docker mode activated.

-0 :warning:
yetus
0m  6s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2.3 Compile Tests _

+0 :ok:
mvndep
0m 16s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
4m 26s
branch-2.3 passed

+1 :green_heart:
compile
1m 37s
branch-2.3 passed

+1 :green_heart:
shadedjars
6m  7s
branch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 25s
hbase-rsgroup in branch-2.3 failed.

-0 :warning:
javadoc
0m 38s
hbase-server in branch-2.3 failed.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 20s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
4m  8s
the patch passed

+1 :green_heart:
compile
1m 35s
the patch passed

+1 :green_heart:
javac
1m 35s
the patch passed

+1 :green_heart:
shadedjars
7m  6s
patch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 54s
hbase-server in the patch failed.

-0 :warning:
javadoc
0m 28s
hbase-rsgroup in the patch failed.

_ Other Tests _

+1 :green_heart:
unit
142m 34s
hbase-server in the patch passed.

+1 :green_heart:
unit
3m 21s
hbase-rsgroup in the patch passed.

181m 19s

Subsystem
Report/Notes

Docker
Client=19.03.13 Server=19.03.13 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2553

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 3ce012e9d085 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2.3 / c7f95fffbd

Default Java
2020-01-14

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-rsgroup.txt

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-rsgroup.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/testReport/

Max. process+thread count
3815 (vs. ulimit of 12500)

modules
C: hbase-server hbase-rsgroup U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
4m 49s
Docker mode activated.

-0 :warning:
yetus
0m  5s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2.3 Compile Tests _

+0 :ok:
mvndep
0m 16s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
3m 41s
branch-2.3 passed

+1 :green_heart:
compile
1m 20s
branch-2.3 passed

+1 :green_heart:
shadedjars
5m  0s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 56s
branch-2.3 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 14s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
3m 28s
the patch passed

+1 :green_heart:
compile
1m 17s
the patch passed

+1 :green_heart:
javac
1m 17s
the patch passed

+1 :green_heart:
shadedjars
5m  4s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 55s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
153m 12s
hbase-server in the patch passed.

+1 :green_heart:
unit
3m 25s
hbase-rsgroup in the patch passed.

186m  9s

Subsystem
Report/Notes

Docker
Client=19.03.13 Server=19.03.13 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2553

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux fce0419237f7 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2.3 / c7f95fffbd

Default Java
1.8.0_232

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/testReport/

Max. process+thread count
3759 (vs. ulimit of 12500)

modules
C: hbase-server hbase-rsgroup U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2553/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.


add info about configuration instruction for character select plugin

@RSamaium
I added a link to the configuration of the character select plugin. It require more attention after installation then in initial instruction

Thanks for the PR. It will be added to the doc soon!


[DO-552] Fix payment initiation workflow diagram

Fix Payment Initiation Flow
Updated as advised
You can see last version of diagram here: https://github.com/gevamu/gevamu.github.io/blob/DO-552-fix-payment-initiation-flow/content/3.workflow/4.payment-initiation.md

As discussed on a call, the following needs to be updated:

asterisk note related to validation should be transformed to an alt branching
the last alt branching to be replaced with an action of communicating the Accepted/Rejected status

Additionally, please update the textual part of the file:

remove step 6 completely
in step 5:  replace "a returned payment status (Accepted, Pending or Rejected)" with "a returned payment status (Pending and Accepted or Rejected)"


[Gally]: master <- dev

Automatically created by Git-Ally

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fixes #25

As we discussed in #25, I refactored all the string types. Specifically, Location, Version, FrameworkName, and GitRepoName.

(Oops, feel free to squash the commits!)


Discussion: Universal Sample IDs and metadata table

As samples come in, they are likely to be tagged and labelled in all kinds of different ways. We should maintain a single point of truth table with as much homogenized sample info as we might require. In particular, it will be useful to have a single format sample ID that we will be able to use across submitters.
I don't think we are currently requiring BioSample IDs from submitters, though that would seem to me to make sense if we had it. In the absence of that (or in addition) we should probably have an scpcaID of some sort. I am curious to hear what lessons learned from refine.bio could be applied here.

After discussion with @kurtwheeler and @jaclyn-taroni, we have decided on the following scheme:
Samples will be identified by the following scheme: a SCPCS prefix (Single Cell Pediatric Cancer Sample) and six digit code, which we will increment as needed. This will will allow for up to 999,999 samples, which should be well in excess of our current needs (accommodating even this many would be well beyond the scope of the current project).

SCPCS000000

Since there may be more than one library for a given sample, we will also assign Run IDs, (modeled after SRA), which have similar format: a SCPCR prefix (Single Cell Pediatric Cancer Run) followed by six digits.

SCPCR000000

Sample information will be stored in a .tsv file that is tracked in https://github.com/AlexsLemonade/ScPCA-admin, which will be mirrored to s3://ccdl-scpca-data/metadata/ via github actions. This will include information on tissue, collection dates, etc. as available. This will be compiled manually from submissions.
Library information will be stored in a separate .tsv file (stored and mirrored as above) that references the sample ID for each library, as well as the S3 prefix (folder) where the library files are stored, a list of library files and the checksum file provided for all files in the library. Filenames will be left as the submitter provided them to the extent possible, but each library will be placed at a separate S3 prefix (folder) named by the Library ID.


How to handle multiple views?

Hi, seems like views_open is not catching up callback_ids, can you help me with that?
# start_new_modal.rb

def self.payload(trigger_id)
    {
      trigger_id: trigger_id,
      view: {
        type: "modal",
        callback_id: "unique-id",
        title: {
          type: "plain_text",
          text: "Start",
          emoji: true
        },
        submit: {
          type: "plain_text",
          text: "Submit",
          emoji: true
        },
        close: {
          type: "plain_text",
          text: "Cancel",
          emoji: true
        },
        blocks: [
          {
            block_id: "conversation",
            type: "input",
            label: {
              type: "plain_text",
              text: "Channel"
            },
            element: {
              action_id: "ml_conversation_input",
              type: "conversations_select",
              response_url_enabled: true,
              placeholder: {
                type: "plain_text",
                text: "Start typing #channel"
              }
            }
          },
        ]
      }
    }
  end

#  actions/task.rb

SlackRubyBotServer::Events.configure do |config|
  config.on :action, "block_actions" do |action|
      payload = StartNewModal.payload(trigger_id)
      slack_client.views_open(payload)
  end
end

# actions/start_new_modal.rb

SlackRubyBotServer::Events.configure do |config|
  config.on :action, 'view_submission', 'unique-id' do |action|
   # nothing comes here
  end
end

Usually I run this locally with ngrok, first thing to check is whether you get any notification from Slack, then whether you get any config.on :action do ..., etc.

Yes, I get that from slack but action file is not triggered at all. Only the default actions is triggered

The code that parses the payload is here: https://github.com/slack-ruby/slack-ruby-bot-server-events/blob/master/lib/slack-ruby-bot-server-events/api/endpoints/slack/actions_endpoint.rb. Looks like it only supports block_actions, message_action and shortcut. Care to contribute support for view?


Update start-stop-cluster.md

add missing internal link for az cli ask show

@mozts2005 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Run docker container as same user/group as the Jenkins process

All files are now owned by the jenkins user instead of root
The job should now have full control over all the files in the workspace
Additions

use HOST_UID_GID environment variable to set jenkins user and group id

Changes

updated docker run command in Jenkinsfile to use HOST_UID_GID environment variable

How to test this PR

Verify no permission denied errors when deleting Jenkins workspace

Checklist

[x] PR has an informative and human-readable title

PR titles are used to generate the change log in releases; good ones make that easier to scan.
Consider prefixing, e.g., "Mega Menu: fix layout bug", or "Docs: Update Docker installation instructions".

[x] Changes are limited to a single goal (no scope creep)
[x] Code follows the standards laid out in the CFPB development guidelines

Looks like this didn't work as expected. Here's the output:
[2021-03-18T18:21:59.920Z] + docker run -u 479:480
[2021-03-18T18:21:59.920Z] "docker run" requires at least 1 argument.
[2021-03-18T18:21:59.920Z] See 'docker run --help'.
[2021-03-18T18:21:59.920Z]
[2021-03-18T18:21:59.920Z] Usage:  docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
[2021-03-18T18:21:59.920Z]
[2021-03-18T18:21:59.920Z] Run a command in a new container
script returned exit code 1

After adding the trip the following is logged:
[2021-03-19T17:07:26.043Z] + docker run -u 479:480 -v /var/lib/jenkins/workspace/consumerfinance.gov_PR-6336/test/cypress:/app/test/cypress -v /var/lib/jenkins/workspace/consumerfinance.gov_PR-6336/cypress.json:/app/cypress.json -w /app -e CYPRESS_baseUrl=https://cfgov-pr-6336.demo.cfpb.gov -e CI=1 cypress/included:6.8.0 npx cypress run -b chrome --headless
[2021-03-19T17:07:34.163Z] A JavaScript error occurred in the main process
[2021-03-19T17:07:34.163Z] Uncaught Exception:
[2021-03-19T17:07:34.163Z] Error: Failed to get 'appData' path
[2021-03-19T17:07:34.163Z]     at App.c._setDefaultAppPaths (electron/js2c/browser_init.js:5:1300)
[2021-03-19T17:07:34.163Z]     at Object.<anonymous> (electron/js2c/browser_init.js:185:2485)
[2021-03-19T17:07:34.163Z]     at Object../lib/browser/init.ts (electron/js2c/browser_init.js:185:3714)
[2021-03-19T17:07:34.163Z]     at __webpack_require__ (electron/js2c/browser_init.js:1:128)
[2021-03-19T17:07:34.163Z]     at electron/js2c/browser_init.js:1:1200
[2021-03-19T17:07:34.163Z]     at electron/js2c/browser_init.js:1:1267
[2021-03-19T17:07:34.163Z]     at NativeModule.compileForInternalLoader (internal/bootstrap/loaders.js:277:7)
[2021-03-19T17:07:34.163Z]     at NativeModule.compileForPublicLoader (internal/bootstrap/loaders.js:219:10)
[2021-03-19T17:07:34.163Z]     at loadNativeModule (internal/modules/cjs/helpers.js:24:9)
[2021-03-19T17:07:34.163Z]     at Module._load (internal/modules/cjs/loader.js:856:15)
[2021-03-19T18:07:25.724Z] Sending interrupt signal to process
[2021-03-19T18:07:43.092Z] script returned exit code 143

This change is no longer required. When switching to use a centos7 image in PR https://github.com/cfpb/consumerfinance.gov/pull/6363, the cypress Dockerfile defines the user for the cypress containers.
I believe the file system is mounted as read only in the cypress docker containers, so no files can be written, and there would be no permission denied errors when deleting the Jenkins workspace.


Add Redrive lambda

Description

Create a Lambda to automate scheduling retrials for messages in the Deadletter Queues
Motivation and Context

How Has This Been Tested?

tested in a dev environment
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation change

Checklist

[x] My code follows conforms to the coding standards.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Pic

Closing this PR because Its best to inspect the messages in the Deadletter Queues before kicking off a redrive.


[Autocomplete] Add getOptionSelected prop

[x] I have followed (at least) the PR section of the contributing guide.

@oliviertassinari please a take a look, casuse the same value can be selected twice
Closes #18443

@DarkKnight1992 I have tried to solve the multiple duplication issue, let me know if it works OK. From a test perspective, I think that we can skip it.

@oliviertassinari it works perfectly

@DarkKnight1992 Thank you!

@oliviertassinari  thank you for helping out

Thank you for the PR and your time guys.

I don't understand; I assume the option is the element to be determined whether it's selected or not, but what is the value parameter? It doesn't seem to be documented anywhere.


[BugFix][SkyfallRPG] Fixing a Bug when doing attribute roll

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[X] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

Changes / Description
-> When rolling attribute it was summing the save in it.

Character Sheet Info Roll20 Internal Use only.


Fix panics due to closed channel in some tests

A number of tests start goroutines that write into channels when completed, however the tests would close the channel if it exited early (e.g. due to a timeout).
Instead, make the goroutine that writes into the channel the one that closes it.
This does mean that the goroutines will continue past the end of the test (?), but they did that before too. I am wondering if there is a better way of doing these things...

I suppose the right thing to do is to have the goroutine check a "signal channel" after it completes long-running operations (such as /sync) to make sure that it should continue execution before writing to channels.

I suppose that might make sense for the one goroutine that is multiple statements, but I don't see the benefit for the others (like the one in the example)?

(merging now to unblock fixing flakey tests)


Initializer inputs

This is the most basic implementation of the initializer inputs.
Related to: https://github.com/quintel/atlas/pull/81

@grdw I pushed my suggestions for this. Please review, further adapt if necessary and merge. Thx.


BUG: cleanup does not work in windows

we do use miniflare v3 via API, but do get a strange issue our windows testing:
let _mf: Miniflare;
// [...]
_mf = new Miniflare({
	modules: true,
	script: '',
	d1Databases: D1Bindings,
	d1Persist: true,
	r2Buckets: R2Bindings,
	r2Persist: true,
	kvNamespaces: KVBindings,
	kvPersist: true,
});
// [...]
if(_mf) {await _mf.dispose()}

  Error: EBUSY: resource busy or locked, rmdir '\\?\C:\Users\RUNNER~1\AppData\Local\Temp\miniflare-b43a45d20b644b28b6b8a7458d98af24\cache'
      at rmdirSync (node:fs:1229:10)
      at _rmdirSync (node:internal/fs/rimraf:235:5)
      at rimrafSync (node:internal/fs/rimraf:193:7)
      at node:internal/fs/rimraf:253:9
      at Array.forEach (<anonymous>)
      at _rmdirSync (node:internal/fs/rimraf:250:7)
      at rimrafSync (node:internal/fs/rimraf:193:7)
      at Object.rmSync (node:fs:1278:10)
      at D:\a\astro\astro\node_modules\.pnpm\miniflare@3.20230918.0\node_modules\miniflare\dist\src\index.js:7433:27
      at process.exit (D:\a\astro\astro\node_modules\.pnpm\exit-hook@2.2.1\node_modules\exit-hook\index.js:15:3)
      at Object.onceWrapper (node:events:629:26)
      at process.emit (node:events:526:35)
      at process.exit (node:internal/process/per_thread:192:15)
      at done (D:\a\astro\astro\node_modules\.pnpm\mocha@10.2.0\node_modules\mocha\lib\cli\run-helpers.js:52:15)
      at afterWrite (node:internal/streams/writable:500:5)
      at afterWriteTick (node:internal/streams/writable:487:10)
      at process.processTicksAndRejections (node:internal/process/task_queues:81:21) {
    errno: -4082,
    syscall: 'rmdir',
    code: 'EBUSY',
    path: '\\\\?\\C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\miniflare-b43a45d20b644b28b6b8a7458d98af24\\cache'
  }

This seems to be related to which I don't get: https://github.com/cloudflare/miniflare/blob/1778afd7d1864d73d5f3fc9c7d1d49bdb9cb29f6/packages/miniflare/src/index.ts#L561-L563

Ok, seems like adding cache options to miniflare, fixes this issue (super strange).
cache: true
cachePersist: true


Anonymisation tools from paper

Colleague sent me this paper which also presents an overview of anonymisation tools: https://doi.org/10.1093/bib/bbac440
TODO:

Read the paper
Refine existing information about tools in overview
Add new tools where appropriate
Link the paper in the deidentification tools index as a reference

Closing this because the tools listed are either already in our overviews or are very old or inaccessible.


Add a pass to rewrite destructive update patterns involving Linalg on…

… tensors.
This pass may be called after transformations on Linalg on tensors and includes special
detection and rewrite of destructive update patterns.
Such destructive updates are assumed to come from tiling of parallel iterators only.
supporting tiling across reduction iterators in the tensor domain will require additional machinery and possibly dependence analysis.

@pifon2a


Validate Input Variables with the JSON Schema in the Template Entity

Feature Suggestion

Currently we only use the JSON Form Schema to create the input form
We should validate the input variables that are posted to /v1/jobs with the same schema
This ensures that the input params are valid from both the frontend and other callers of the scaffolder backend

Possible Implementation

Use the Template Entity that is passed to the scaffolder-backend
Validate the values object with the spec.schema

Can I take this one?

@iain-b thanks, Assigned you!

@iain-b if you need any help give me a shout.
I think basically you need to add the validation in the .post('/v1/jobs') route in createRouter of the scaffolder.
You should have everything there in terms of the schema and the input variables to make a decision on if it's valid or not.

@benjdlambert Thanks, yeah the schema is there is just a matter of applying the schema to the values. The main decision is the choice of validation library which I've described in the PR (json-schema implementation seems to be buggy).


A pod's profile card should be public

Currently, the pod template sets access control (cf. the .acl file) to allow

public read access to the homepage, and
full owner acces to the entire pod.

This makes the WebID profile document (card) pod management inaccessible to public agents, which

seems contrary to the WebID specification, and
breaks IDP checks relying on the solid:oidcIssuer reference in the profile.

(Checked for similar issues with: profile, pod managament, pod templates)

seems contrary to the WebID specification, and

That part is not final yet.

breaks IDP checks relying on the solid:oidcIssuer reference in the profile.

This is a good argument.
Let's have a PR to change the template.

When I initially added the templates I just copied some files from the NSS to have something in there. The easiest to be consistent would probably be to also copy over the acl file of the profile folder: https://github.com/solid/node-solid-server/blob/main/default-templates/new-account/profile/.acl

Hm, I wanted to give public read access to the main profile card only by adding the following in /woutermont/.acl,
<#public>
    a acl:Authorization;
    acl:agentClass foaf:Agent;
    acl:accessTo <./profile/card>;
    acl:mode acl:Read.

but that does not work:
[BaseHttpServerFactory] info: Received request for /woutermont/profile/card
[WebAclAuthorizer] info: Reading ACL statements from http://localhost:3000/woutermont/.acl
[WebAclAuthorizer] warn: Unauthenticated agent has no read permissions

Neither does adding the similar acl:accessTo <./card> to /woutermont/profile/.acl.
Note that I only omitted prefixes and owner access here for brevity, and that in all cases no other ACL files were present.
The only way that seems to work is using a /woutermont/profile/card.acl file with acl:accessTo <./card>. Made a draft PR with this solution.
Do you believe this to be the desired behavior? I ask because I honestly don't know. It seems silly to have a dot file and then define every file specific access control in a separate ACL file anyway.

@woutermont Seems like that should have worked (even though I'd prefer a more specific ACL).
Could you PR this into a failing test case?

A PR is not required, the problem is because of this line: https://github.com/solid/community-server/blob/dd5b496f1d6b7727b034890dff6c8a43bbcd0ddc/src/authorization/WebAclAuthorizer.ts#L195
Only the acl:default line is checked when using acl files that do not directly correspond to the corresponding resource. Could be that it's an easy fix by just looking at both instead in those cases.

It's somewhat more difficult than that: the recursive function only passes itself the parent identifier on which to check next, so consecutive calls do not know which original identifier to check for acl:accessTo.


Ability to ignore linting sub folders

I would like to have the capability to ignore linting in sub folders through a configuration setting probably.
The project that I am dealing with has quite a few SDK's which have poor linting standards and not worthwhile my time. I would like VSCode to happily ignore them if they can.

So, this project isn't intended to be a linter. It's a language validator. So any errors you encounter will cause compile-time or runtime errors when running on a roku, or they are a byproduct of a bug in this project that should be fixed in this project.
All of the errors you have submitted so far have been bugs in this extension.
I don't see much value in adding a "ignore actual code errors" on a subdirectory basis, but I am willing to have a discussion about it if there are valid reasons.
Can you provide some examples of "lint errors" that you are seeing that you would like to ignore?

My project requires that I include third party analytics libraries like Adobe, Conviva, Oztam etc. The SDK's themselves written by other companies don't necessarily adhere to following Brightscript standards
Some of the errors shown by the IDE on linting on third party libraries

Either all of them are genuine bugs or anomalies by the developer which doesn't deserve my attention.

Thanks for the examples, that helps a lot!
These are all bugs in the brs. It's failing on valid BrightScript syntax that it does not yet support. The first two screenshots (result$ and result%) are tracked by this issue.
I opened this issue for m.["_uuid"], and this issue for Library "v30/bslCore.brs".
Once brs starts recognizing these as valid syntax, the errors should go away.
In the mean time, if you are sick of seeing those errors, you can add ignoreErrorCodes: [1000] to your brsconfig.json file. Keep in mind, error code 1000 is a catchall for every syntax error, so it will exclude any actual syntax errors in your code.
Just to let you know, the language validation for this project is VERY new, so most of these errors you are seeing are just growing pains of a brand new project. I really appreciate you taking the time to try it out and report the issues. Keep them coming!

I would like to contribute in my spare time, but its a hard spot getting my feet wet on this codebase without developer docs.

Closing this issue as it is not something this project will investigate at this time. Feel free to add to the discussion if you have any other justifications.


[TASK] Improve adaptive thresholding method

Description
Adaptive thresholding on the image background is done by only sampling a single pixel at the top of the frame.
Suggestion: get 4 pixels (each corner) and take average of their value.

Addressed by using OpenCV's Adaptive Thresholding method


配置文件位置在本地但是还是提示OSError: Can't load tokenizer for 'bert-base-uncased'. If you were trying to load it from 'https://huggingface.co/models', make sure you don't have a local directory with the same name. Otherwise, make sure 'bert-base-uncased' is the correct path to a directory containing all relevant files for a BertTokenizer tokenizer.

本地配置了本地的模型地址，还是提示无法连接远程下载
配置的文件如下
model:
arch: video_llama
model_type: pretrain_vicuna
freeze_vit: True
freeze_qformer: True
max_txt_len: 512
end_sym: "###"
low_resource: False
frozen_llama_proj: False
If you want use LLaMA-2-chat,
some ckpts could be download from our provided huggingface repo
i.e.  https://huggingface.co/DAMO-NLP-SG/Video-LLaMA-2-13B-Finetuned
llama_model: "ckpt/vicuna-13b/" or "ckpt/vicuna-7b/" or "ckpt/llama-2-7b-chat-hf"  or "ckpt/llama-2-13b-chat-hf"
imagebind_ckpt_path: "ckpt/imagebind_path/"
ckpt: 'path/pretrained_visual_branch_ckpt'   # you can use our pretrained ckpt from https://huggingface.co/DAMO-NLP-SG/Video-LLaMA-2-13B-Pretrained/
ckpt_2:  'path/pretrained_audio_branch_ckpt'
llama_model: "/home/mao/Video-LLaMA-main/eval_configs/ckpt/Video-LLaMA-2-7B-Finetuned/llama-2-7b-chat-hf/" # or "ckpt/vicuna-7b/" or "ckpt/llama-2-7b-chat-hf"  or "ckpt/llama-2-13b-chat-hf"
imagebind_ckpt_path: "/home/mao/Video-LLaMA-main/eval_configs/ckpt/Video-LLaMA-2-7B-Finetuned/imagebind_huge.pth"
ckpt: '/home/mao/Video-LLaMA-main/eval_configs/ckpt/Video-LLaMA-2-7B-Finetuned/VL_LLaMA_2_7B_Finetuned.pth'   # you can use our pretrained ckpt from https://huggingface.co/DAMO-NLP-SG/Video-LLaMA-2-13B-Pretrained/
ckpt_2:  '/home/mao/Video-LLaMA-main/eval_configs/ckpt/Video-LLaMA-2-7B-Finetuned/AL_LLaMA_2_7B_Finetuned.pth'
equip_audio_branch: False  # whether equips the audio branch
fusion_head_layers: 2
max_frame_pos: 32
fusion_header_type: "seqTransf"
datasets:
webvid:
vis_processor:
train:
name: "alpro_video_eval"
n_frms: 8
image_size: 224
text_processor:
train:
name: "blip_caption"
run:
task: video_text_pretrain
文件目录结构也都没问题都有规定的文件谁知道问题出在哪里了吗？无法运行本地的模型
下面是报错详情：
/home/mao/yes/envs/videollama1/lib/python3.9/site-packages/torchvision/transforms/_functional_video.py:6: UserWarning: The 'torchvision.transforms._functional_video' module is deprecated since 0.12 and will be removed in 0.14. Please use the 'torchvision.transforms.functional' module instead.
warnings.warn(
/home/mao/yes/envs/videollama1/lib/python3.9/site-packages/torchvision/transforms/_transforms_video.py:25: UserWarning: The 'torchvision.transforms._transforms_video' module is deprecated since 0.12 and will be removed in 0.14. Please use the 'torchvision.transforms' module instead.
warnings.warn(
Initializing Chat
/home/mao/yes/envs/videollama1/lib/python3.9/site-packages/huggingface_hub/file_download.py:1150: FutureWarning: resume_download is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use force_download=True.
warnings.warn(
Traceback (most recent call last):
File "/home/mao/Video-LLaMA-main/demo_video.py", line 67, in
model = model_cls.from_config(model_config).to('cuda:{}'.format(args.gpu_id))
File "/home/mao/Video-LLaMA-main/video_llama/models/video_llama.py", line 574, in from_config
model = cls(
File "/home/mao/Video-LLaMA-main/video_llama/models/video_llama.py", line 81, in init
self.tokenizer = self.init_tokenizer()
File "/home/mao/Video-LLaMA-main/video_llama/models/blip2.py", line 32, in init_tokenizer
tokenizer = BertTokenizer.from_pretrained("bert-base-uncased")
File "/home/mao/yes/envs/videollama1/lib/python3.9/site-packages/transformers/tokenization_utils_base.py", line 1795, in from_pretrained
raise EnvironmentError(
OSError: Can't load tokenizer for 'bert-base-uncased'. If you were trying to load it from 'https://huggingface.co/models', make sure you don't have a local directory with the same name. Otherwise, make sure 'bert-base-uncased' is the correct path to a directory containing all relevant files for a BertTokenizer tokenizer.

请问解决这个问题了吗


Bettert hreading validation while getting new OCID API key

Current solution doesn't wait until API key is downloaded on main thread, instead it passes validation on background thread and changes value if successful.
Next PR:

add filtering MMC by country (no need to know MMC codes or looking up on wiki)

Thanks!


Update plugin.yml

fix issue

Why did you remove the voice chat dependency?

because that makes an error. That is about plugin dependency, not mod. So You get error in bukkit.

image is 1.16.5 but I also tested on 1.18.2

Yeah of course this is a plugin dependency. What else should it be?

Also:

So whats the point of this PR?

https://www.spigotmc.org/wiki/plugin-yml/
I follow that spigotmc suggests,
and still I don't get it.

Why are you so aggresive. My friend was going to use this plugin and ofcourse I know what this plugin is.
There's no information in usage page, curseforge or modrinth that simple voice chat plugin exist and you have to install it for plugin addon, so is understandable to be confused.


Changing API of median filter

Kernel dims move from (width, height) to (height, width).
if a single value is given, default behavior is now to run a 2D median filter instead of a 1D, => move (dim, 1) to (dim, dim)

close #696

Why not using the signature of scipy medfilt2d(input, kernel_size=3) as in PR #668 ?
This would make all API consistent and easier to switch from one implementation to the other.

True, I will change  it


Make AudioPlayer used GoodSignal library inside shared instead of having a local copy of it

Fixes  #1734
Make AudioPlayer used GoodSignal library inside shared instead of having a local copy of it

PoF:


[Backport 2.2] Force pull from defined origin to avoid ambiguity

Is your feature request related to a problem? Please provide an existing Issue # , or describe.
Force pull from defined origin to avoid ambiguity
Describe the solution you are proposing
Previously all the calls of fetch are using string like main in branch name, but 2.2 breaks it and cause the fetch to use float which somehow breaks Grgit. Force pulling of origin/2.2 fix the issue.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

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

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

Codecov Report

Merging #246 (30207f6) into 2.2 (77a8217) will decrease coverage by 0.07%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                2.2     #246      +/-   ##
============================================
- Coverage     71.76%   71.68%   -0.08%
+ Complexity      368      367       -1
============================================
  Files            44       44
  Lines          2522     2522
  Branches        171      171
============================================
- Hits           1810     1808       -2
- Misses          599      601       +2
  Partials        113      113

Impacted Files
Coverage Δ

...analyzer/collectors/MasterServiceEventMetrics.java
72.29% <0.00%> (-1.36%)
:arrow_down:

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


Resource not found on older browser.

Checklist:

[x] I updated to the latest version available
[x] I cleared the cache of my browser

Release with the issue:
6.0.0
Last working release (if known):
5.4.0
Browser and Operating System:

Fully Kiosk Browser on Android 10.
It's Lenovo Clock 2, with old Android WebView version, no way to upgrade.
Description of problem:

After update to 6.0.0, browser cannot find card. It behaves as usually when there's no such card installed.
I tried to remove integration completely, install 6.0.0 from scratch, and upgrade from 5.4.0 to 6.0.0. between each operations I was rebootimg Home Assistant, clearing cache for Fully, and rebooting the clock itself.
Downgrade from 6.0 to 5.4 also doesn't work, only deleting and installing 5.4.0 clean works for me.
BTW, it's same device I have bug with time zone too...
From the obvious reason, I can't see console...
Javascript errors shown in the web inspector (if applicable):
N/A

Additional information:

Sorry to hear this. Unfortunately, without a console error to work off of, this is going to be hard to diagnose. It's most likely that some modern JS feature either in the card code or one of its dependencies is not compatible with your old webview version. You may need to just pin to the old card version.
I won't be able to keep the card working on very old browsers. I'm glad that at least a recent version works for you. I'm going to close this issue as Won't Fix. Sorry about that.


Bergen catalog extraction failed

Recipe configuration detection #46 has failed.
AI Course Crawler failed to detect a valid configuration for this recipe.
You can adjust the URL, or try again.
Failure reason:
Timeout hit: 30000

Sometimes configuration detection fails for various reasons (high load on the server, our server getting rate limited, connectivity issues with the website, etc). As the message points out, it is possible to retry the detection. Running it now, it was able to complete successfully.


Which Hyperparameter tuning method to use?

First of all, thank you for the great work @AryanShekarlaban and @kabouzeid!
quick question: I have less experience with training big models like Transformers. I see that there are many frameworks and Algorithms for Hyperparameter tuning in internet. Could you suggest a hyperparameter tuning framework and algorithm for data2vec?
Thank you!

Hello @anirudh2019, glad to see this repo has been helpful to you.
Generally, hyperparameter tuning is a trial-error method and making it actually work requires a lot of effort. It gets even more difficult in training large models like Transformers and it's really not recommended to try to tune hyperparams for pretraining unless you have access to really powerful resources. The recommended way is to tune params for downstream tasks and distillation. In that case you can refer to the paper of the encoder you use (RoBERTa, BEiT, Wav2Vec2, etc) to see their best practices regarding hyperparameter tuning.
Best,
Aryan

Thank you for your suggestion!


Request custom biome color list

Adding, Removing, or Changing
Adding
Type of Modification
Other
What are you trying to modify
Request custom biome color list.
Some plugins needs the biome color setted to render the map properly. like this↓
https://github.com/BillyGalbreath/Pl3xMap/wiki/3rd-Party-World-Generators
Minecraft Version
Minecraft 1.19
Iris Version
Iris-2.2.12-1.19.2
Checklist

[X] I am using an unmodified version of the overworld. (If you modified the overworld but know the content suggestion is valid)
[X] I am using the latest version of the overworld OR I have made sure this feature was not already implemented in the latest version.

Thanks a lot. And i tried to manually write the custom biome color in the advance.yml but i got this error. Does it mean it is incompatiable with iris world gen?

No you made a config errors there's no Minecraft:iris:biome, it's without the Minecraft:. If you remove that it looks like it would work just fine.

After many tests, I finally found the correct way to write in the configuration file(advanced.yml)
Now,Squaremap can render the custom biome color correctly!
↓This is the correct advanced.yml file for default overworld pack↓
https://pastebin.com/L098UUps


Fixing pylint actions

Fixing actions

Codecov Report

Merging #69 (e860e2e) into main (7c69a7c) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main      #69   +/-   ##
=======================================
  Coverage   62.09%   62.09%
=======================================
  Files           5        5
  Lines         372      372
=======================================
  Hits          231      231
  Misses        141      141

Impacted Files
Coverage Δ

betydb2geojson.py
93.33% <100.00%> (ø)

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


New package: JuLOOa v0.0.2

Registering package: JuLOOa
Repository: https://github.com/ParadaCarleton/PSIS.jl
Created by: @ParadaCarleton
Version: v0.0.2
Commit: cd58ee7a22affb7f4d5f79727894f272deae2e97
Git reference: HEAD

Superseded by #39904


Fixes #622 - Include version in Jar filenames of Accumulo deps

I looked into the original reasoning for removing versions and found this reasoning in ACCUMULO-2863:

We strip versions off of dependencies we package in the lib directory of our tarball. This is done for a few beneficial reasons (primarily: avoid classpath polution with multiple versions of the same jar, and ease maintenance of scripts that configure the classpath).

I don't think this reasoning still applies.  However, I am open to closing this PR if others still think omitting version is still necessary.

Also, I don't think the VERSIONS file is necessary anymore as you can now just get the version from the jar and this file wasn't kept up to date anyways as the dependencies for this file needed to be updated in the assemble/pom.xml

@ctubbsii, sounds good to me.

Yeah, deleting that line was my only feedback.


logging: improve variable naming for HANDLERs

Recently somebody (from Switzerland ;-)) introduced a DD_LOGGING_FORMAT variable.
The variable is used to configure handlers  and not formatters, so this PR renames it to DD_LOGGING_HANDLER.
I considered making it backwards compatible, but couldn't find a straigforward way. The variable is new in 1.9.0 and I don't think may people are using it.
With the new local_settings.py setup people will have to review their settings anyway when upgrading.

label+=switzerland can't make up good variable names :-)


style: format optimization

Hi, I saw the flag enum here with decimal. This is okay for smaller numbers, but it is hard to read when the number is large.
https://github.com/shichuyibushishiwu/Tuna.Revit.Extensions/blob/8b00f72612634630bc5b7dd54182af0e9b6b4e14/src/Data/Availability.cs#L19-L54
What I recommend is to write it with <<.
/// <summary>
/// Invalid
/// </summary>
[Flags]
public enum AvailabilityMode : byte
{
    /// <summary>
    ///
    /// </summary>
    Always = 0,

    /// <summary>
    ///
    /// </summary>
    OnlyDocument = 1 << 0,

    /// <summary>
    ///
    /// </summary>
    OnlyFamily = 1 << 1,

    /// <summary>
    ///
    /// </summary>
    OnlyProject = 1 << 2,

    /// <summary>
    ///
    /// </summary>
    OnlyThreeDView = 1 << 3,

    /// <summary>
    ///
    /// </summary>
    OnlyPlanView = 1 << 4,
}

That's great!  btw, this feature has been removed from develop branch.

Oh, I am sorry to hear that. Thanks for your reply!


Optimize latency

Pull request checklist

[x] The PR has a proper title. Use Semantic Commit Messages. (No more branch-name title please)
[x] Make sure you are requesting the right branch.
[x] Make sure this is ready to be merged into the relevant branch. Please don't create a PR and let it hang for a few days.
[x] Ensure all tests are passing.
[x] Ensure linting is passing.

PR type

new feature

Description

Using torch.jit to optimize inference delay

用jit处理Synthesizer模型后，延迟大概降低4-5ms，我后续看看能不能把Hubert和rmvp也用jit处理一下

@ChasonJiang
Thanks to your work and it looks interesting.
I will review when I get to school.

现在对Synthesizer和rmvpe模型都使用了jit.对于hubert,我已经尝试jit过了，但是效果并不明显（约1ms）,并且可能导致一些问题，所以我决定不对hubert进行jit。
总的来说，大约能降低6-8ms的延迟，在rtx4070上，采样时间0.05s
I have now used jit for both Synthesizer and rmvpe models. For Hubert, I have tried jit before, but the effect is not significant (about 1ms) and may cause some problems. Therefore, I have decided not to jit Hubert.
Overall, it can reduce latency by approximately 6-8ms, at a sampling time of 0.05s on rtx4070

@Tps-F Oh，I’m sorry, I didn't notice this issue. I will fix

Would you like me to fix it?

If you're willing, then please. Thank you

Thanks for the changes, I'll check now.
If there are any problems, I will fix

@ChasonJiang For now, I made only some modifications without making any changes to the code.
Can you confirm that it works in this?

@ChasonJiang For now, I made only some modifications without making any changes to the code. Can you confirm that it works in this?

@Tps-F Yes, I am sure. Although there may be no response during the first use, this is a normal phenomenon as the jit needs to warm up, just wait.

This will be a major change, so we will have other members review it before merging

Hi, When I pull to latest code, I got the above error. Where is the infer.lib.jit.torchgate?

F:\Retrieval-based-Voice-Conversion-WebUI>runtime\python.exe gui_v1.py
Traceback (most recent call last):
File "F:\Retrieval-based-Voice-Conversion-WebUI\gui_v1.py", line 54, in
from infer.lib.jit.torchgate import TorchGate
ModuleNotFoundError: No module named 'infer.lib.jit.torchgate'


Container.removeChild performance issue

This method basically calls Array.splice after getting the index of the child, which runs in O(n) runtime. It actually has a huge performance impact when thousands of children are removed from the parent and it has quite a negative impact on Containers like ParticleContainer when it's made for performance (would take 100ms and freeze everything for a bit). It would be nice if there's a method like filterChildren method that goes through each child and maybe have a callback to determine if it should be kept for not so this way removing n children only takes a linear time instead of n^2 time. The function would return the array of children removed just like the removeChildren function. I tried to write a subclass to achieve this, but since the field children is read-only I can not use .filter then set the reference.

We could just optimize removeChild when it has multiple children. Basically, if more than, say, 5 children are being removed the method should behave more like filter:

For each child to be removed, "mark" it
Then loop through children and splice out any marked children
Clear the mark on the removed children

let n = arr.length, j = 0;
for (let i=0;i<n;i++) {
  if (arr[i].dead) {
    //special destroy or whatever
  } else {
    arr[j]=i;
  }
}
arr.length = j;

Basically you want this thing as a method :) I use it everywhere I can. I dont think we can add it in default pixi because there are several questions , like "which property to use there" or "what if remove event will trigger another removal in this algo, how to notify user", e.t.c.

Not really. That “mark” property is really just a implementation detail. It’s transient - only relevant inside the removing operation.
On Apr 7, 2021, at 1:17 PM, Ivan Popelyshev<EMAIL_ADDRESS>wrote:
Basically you want this thing as a method :) I use it everywhere I can. I dont think we can add it in default pixi because there are several questions , like "which property to use there" or "what if remove event will trigger another removal in this algo, how to notify user", e.t.c.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/pixijs/pixi.js/issues/7390#issuecomment-815084341, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFLJDB5WQS3AOZLL2DNB263THSHT5ANCNFSM42QWLGXQ.

I dont think we can add it in default pixi because there are several questions , like "which property to use there" or "what if remove event will trigger another removal in this algo, how to notify user", e.t.c.
The function would take a callback with a child as parameter and expects it to return a boolean-like value and then emits all the events and etc like other remove function do and wrap it inside a this.children = this.children.filter(....) statement. This way you don't need to make a new member variable to mark it like removed or whatever, and you can just leave the decision to the user (subclass etc). Another removal while inside this loop would probably break it as you mentioned and it's probably hard to deal with.
All I can think of in my scenario is to not remove the child at all, but just setting their visibility to false and store it in a user-space array, and when I make a new child I will just try to pop from this array and set the values etc etc and make it visible again. This way removing is done in a linear time but will require some kind of relatively complex pool-like setup which is quite anti-oop.

Well, I ended up ditching this library entirely and writing my own renderer with webgl1. This library does not meet the performance requirement for my use case.

That's cool, but the feature request is still valid.


fix: avoid zero-value transfer attack

As shown in the question

See https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4285#issuecomment-1567289659


Raise exception if required sheets are missing

Changes in this PR:
Rejecting (raising an UnrecoverableError) submission spreadsheets that are missing any sheets corresponding to the types of sheets defined by the submission framework.
The error is raised by the orchestrator class, after the file has been converted, but before the data has been loaded.
Screenshots of UI changes:
I cannot take a screenshot locally as my Docker setup is failing.
Before
After

There are quite a few user errors that arguably should generate validation errors "Your submission is missing the 'Invoices' spreadsheet." rather than producing a hard failure.
IMHO the ingest_failed state should be reserved for hard failures (i.e. we can't read the file) and validation_failed should handle everything else.
This would of course need us to implement adding errors to SubmissionFile as well as SubmissionEntry.

I don't disagree, but you know the limitations under which we operate... Thanks for the review!


Adds @PubChimps to codeowners

Summary

Adds @PubChimps to codeowners to grant PR approval powers and improve repository security.
Relevant Issue(s)

Checklist

[ ] Summarized PR's changes in CHANGELOG.md

@PubChimps is this good to merge?


Optimize Secure Message signature length

GoThemis ignores actual Secure Message signature length returned by Themis, and instead returns the originally allocated buffer as is, which might contain some extra unused bytes at the end.
While not fatal—Themis should still recognize both padded and unpadded signatures—this behavior differs from other Themis wrappers.
Fix the issue in Secure Message processing which results in overlong signatures. Also, add tests to GoThemis specifically to check that both overlong and proper messages are accepted.

This might be considered a breaking change for “smart” users who relied on Secure Message signatures having a particular length, and for them to have a fixed length in GoThemis. Shame on them. I am not aware of sane use cases that involve this assumption. If you are one of those, pad Secure Message signature to len(message) + 84, and pray that Themis never changes the ageing P-256 elliptic curve to something different.

Checklist

[X] Change is covered by automated tests
[X] Benchmark results are attached (should be negligible)
[X] The coding guidelines are followed
[X] Changelog is updated

Added the same fix and test to ThemisPP.
The test data could look prettier, but we have to support C++03 and clang-fmt holds a strong opinion on how you should write your code with giant arrays.
Based on my review, JavaThemis is also affected by the same “bug” with signature lengths. I guess it wouldn't hurt to add tests there as well. However, the fix is not that straightforward as here, because you can't resize arrays in JVM, hence it would not be O(1), like for Go and C++.

(Also, there are other cryptosystems where GoThemis, ThemisPP, JavaThemis don't respect actual buffer lengths returned on the second call. I wonder if those should be fixed. At all, that is, not in this PR. This PR is about Secure Message specifically as it's a known quirk. But I don't know if the same thing has funny effects on, say, Secure Session protocol.)

if the same thing has funny effects on, say, Secure Session protocol

well..

All checks have passed
11 successful checks

let's hope it doesn't :)

@vixentael,

if the same thing has funny effects on, say, Secure Session protocol

well..

All checks have passed
11 successful checks

let's hope it doesn't :)

I did not mean right now – of course it works right now, just like Secure Message worked, for a certain definition thereof.
I meant more like, what if this causes some subtle incompatibilities between platforms because of this. I don't really remember any integration tests for Secure Session, for example, which ensure that Secure Session in Python can talk to Secure Session in Go (or hard mode: the same thing but Themis versions are also different).
But knowing all the answers wouldn't be fun, right?

I remember (found in the internal issue tracker), that @Lagovas has similar idea before.

Yeah, I remember something like that. Though, I also remember some wariness to make this change as it might break something Acra because Acra does depend on Themis implementation details in some cases. Though, as I view it, AcraStructs should not be affected by this specifically because they are using Secure Message in encryption mode, not for signatures, and they do include lengths. But again, I don't really remember what that ticket was all about so please take care to double-check that this is not a breaking change.

Proposed changes to JavaThemis look like this: https://github.com/ilammy/themis/commit/c40ebb91abb379733397f94d590bd8373a455d2b

Allocate a temporary buffer in native code first, pass that to Themis (instead of allocating a Java array and passing a reference to its bytes)
After Themis is done and successful, allocate a Java array and copy results there
Use GetPrimitiveArrayCritical and ReleasePrimitiveArrayCritical to hint JVM that we'll be quick

This is a bit of a pessimization in a happy case: JVM does no copies and Themis is able to write its output directly into heap memory. With the fix JNI code has to allocate a buffer on native heap first, then allocate JVM array of the correct size and copy data there. Not quite a fairyland that it was before.
It should not be a massive performance hit, but it's definitely a hit.
Moreover, strictly speaking, the code should behave like that everywhere, not only in Secure Message. Currently all other cryptosystems in Java ignore the length returned by the second call to Themis function. It's just that for them the initial assessment is accurate so we don't end up with a couple of extra bytes at the end.


[x] I checked Firebase Crashlytics and verified that this release does not introduce any new crashes. More detailed instructions on this verification can be found here.
[x] I checked GitHub Status and verified there is no reported incident with Actions.

cc @Expensify/applauseleads

Checking off the following PRs from the past builds
#29140
#29845
#29984
#30065
#30263
#30320
#30322
#30342
#30401
#30478
#30591
#30609
#30640
#30656
#30671
#30708
#30710
#30712
#30731
#30736
#30655

:rocket: All staging deploys are complete, @Expensify/applauseleads please begin QA on version https://github.com/Expensify/App/releases/tag/1.3.96-0 :rocket:

Not sure if QA can test or it is internal.
#30822 and #30820

https://github.com/Expensify/App/issues/30932 fixed
https://github.com/Expensify/App/issues/30992 not a blocker
https://github.com/Expensify/App/issues/30949 fixed

Checked off #30945 as not a blocker.

Checked off #30935 as not a blocker.

@puneetlath could check this one? https://github.com/Expensify/App/issues/30929#issuecomment-1798485779

@kavimuru I'll ask internally.
Checking off #31000 as non-reproducible.

Thank you!

I demoted #30936 to a regular bug. Reason here.

Regression is down to 6%. We are still validating few PRs.
#30050 blocked with #30979
#29781 failing with #29235 (not fixed)
#30459 failing with #30376 (not fixed in iOS)
#30669 failing with #22949 (known issue and checking it off)

I can reproduce https://github.com/Expensify/App/issues/30976, not sure if it's NAB; @madmax330 is offline until tomorrow, could someone else take a look-see?

Regression is complete. Validating the Cps now.
#30050 blocked with #30979
#29781 failing with #29235 (not fixed)
#30459 failing with #30376 (not fixed in iOS)
#30653 failing with #28858 (not fixed)
#30751 failing with #https://github.com/Expensify/App/issues/25790#issuecomment-1700514733 in desktop and #31000 in web
#30831 failing with #30949
#30515 failing with #31028

Checked off #30979 b/c was fixed via https://github.com/Expensify/App/pull/30995

@mountiny bunch of PRs got unchecked by Melvin. Do we need to retest on a new build or good to just check them off again

@mvtglobally this is the only PR which was included in the 96-6 build https://github.com/Expensify/App/pull/30962 so we should check all the other ones which have been commented with the deploy comment in this version and check them off as they have not been deployed actually

@kavimuru is https://github.com/Expensify/App/pull/30459 failing?

@puneetlath Only in iOS.

Checking off https://github.com/Expensify/App/issues/31062. It's a dupe of another issue and it also happens in prod.

#https://github.com/Expensify/App/pull/30653 was reverted. Checking off.

All cleared! Shipping it.

:shipit:

:shipit:

:shipit:


Questions: Squash and Merge or a normal Merge

/cc @kubernetes/charts-maintainers
For some time the charts repo used squash and merge as the merge method. When we switched to Kubernetes automation for merging (commands like /lgtm) it went to a normal merge and we lost squash and merge. As it looks like we will soon have the choice again (with the automation) I wanted to ask the question....
Do we go back to "squash and merge" or stay with "merge"?
The pros/cons to "squash and merge":

Pro: Shorter history where a chart change is a single commit
Con: Loose the details about the change and the breakdown as it was built
Con: Loose PGP signing if a committer uses that

The pros/cons to "merge":

Pro: Retain PGP signing for people who care about that
Pro: Have the detail about the change via multiple commits as it was being written
Con: An individual change can be scattered through the commit history
Con: Reverting the change may be more difficult (though github has tools to try and make that easier)

Any other thoughts?
Note, if the PR to add different merge types lands in test-infra it, as of this moment, will also restore "squash and merge" here.

I prefer squashing for a nice and linear history. I don't see losing details as a con. In fact, I think it is much better to have a PR in one commit instead of having lots of intermediate commits with funny messages that don't add any value. These commits usually are only there to fix things during the review process. And as you said, reverting is also easier with squashed PRs.

I preferred squash in theory but in practice never really needed to look back at chart commit history.

From the commit log, it looks like the automation is doing squash and merge. Going to close this out as it looks like this is what we want. Feel free to reopen if that's not the case @mattfarina.


Can't load character inventory

Hello, everytime i startup procurement and log in everything is loading fine until procurement wants to load the inventory of any chracter of mine.

[21-07-2015 12:04] Error reading character data for character 'Wandeskaip', Exception info:
[21-07-2015 12:04] System.Exception: Error reading character data for Wandeskaip, if you are in offline mode you will need to login and update. If you received this error while logging in, the authenticated session may have expired or bad data has been returned by GGG or a network issue may have occurred - Please try again.
bei POEApi.Model.POEModel.GetInventory(String characterName, Boolean forceRefresh, String accountName)
bei Procurement.ViewModel.LoginWindowViewModel.LoadCharacterInventoryItems(Character character, Boolean offline)
bei Procurement.ViewModel.LoginWindowViewModel.d__6.MoveNext()
bei System.Collections.Generic.List1..ctor(IEnumerable1 collection)
bei System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
bei Procurement.ViewModel.LoginWindowViewModel.<>c__DisplayClass2.b__1()
bei System.Threading.Tasks.Task.Execute()

i get that error everytime and i only can load my stash tabs in procurement and none of my character inventorys

Same issue here i believe. I cannot view my characters' inventory's or equipped items in procurement and as such also cannot upload them to my trading thread.
Image displaying problem: http://gyazo.com/ec5831a30c6e9145b738ab6aaf72256c

@eskaip Set Procurement to not download any characters and see if that helps, in your settings set:

and make sure the character list is empty:
<List name="MyCharacters" />

@AntiMatterDotA it sounds like you've set your Procurement not to download characters, which is why their inventories are empty.

@Stickymaddness Yeah, i already did that, can start procurement now, but still can't load my characters' inventory :)

Alright, now the most likely reason you can't load your characters is that your account name is wrong, note that it's case sensitive :

Ah nice, i didn't know it was case sensitive, thanks, that did the trick :D


Port reference added for trace fix in core

@seveibar We should be checking for new symbols added to have this reference blocks label in svg for port reference. This was getting used in core for the trace.
Took so longggg to find why the core was not building traces for Capacitor, turns out to be this 😵💫

@seveibar The last PR seems to have broken the workflow

@imrishabh18 i would take a stab at fixing it- i have a hunch it's a lockfile issue. But otherwise i think we can merge on a formatting issue and resolve in the next pr. Idk why @Abse2001 's pr would have broken it but its hard for people who arent added to the org to debug workflows 🙁


Replication Controller

Add Replication Controller Documentation.
Pls Verify @ajeetraina
thanks

@ajeetraina Please Review.

Thanks for your contributions. LGTM.


fix: make default setting for screenshots consistent across all notifiers

I went with on by default, I told the issue reporter that off by default was correct, but I realized that outside of death, what I would expect to be the most "common" notifiers are all already default on.

This will only apply for fresh installs right?

This will only apply for fresh installs right?

Yes, ConfigManager#setDefaultConfiguration would've already been called so changing the default won't change the value on any active installs (overwriting would only occur if they press the Reset button)


Validating key irrelevant assignment

At this line:
https://github.com/jazzband/djangorestframework-simplejwt/blob/4d7c7649813f9eae4bd28ed17da685cd3a61f2fe/rest_framework_simplejwt/backends.py#L39
we are setting self.verifying_key to signing key if algorithm starts with "HS":
        if algorithm.startswith("HS"):
            self.verifying_key = signing_key
        else:
            self.verifying_key = verifying_key

This is an irrelevant check because we are doing the same thing here:
https://github.com/jazzband/djangorestframework-simplejwt/blob/4d7c7649813f9eae4bd28ed17da685cd3a61f2fe/rest_framework_simplejwt/backends.py#L55
        if self.algorithm.startswith("HS"):
            return self.signing_key

I propose to remove the self.verifying_key assignment in init as it seems to be unnecessary.

Please create a PR! (i'm on mobile so no clue if it has been created; if so, please write "Fixes #etc"


Where to copy the pages folder and issue with different lgon URL  Account/Login or Identity/Account/Login

Hello,
I am starting with the identity server with EF template, the default login page is Identity/Account/Login
builder.Services.AddDefaultIdentity(options => options.SignIn.RequireConfirmedAccount = true)
.AddEntityFrameworkStores();
I am trying to add the ui page to customize the identity pages;
i changed the code
builder.Services.AddIdentity<ApplicationUser, IdentityRole>()
.AddEntityFrameworkStores()
.AddDefaultTokenProviders();
now the default login page is Account/Login and not working even when i add the pages folder.
What i am missing?
Thank you

You can set the options telling IdentityServer where your pages are:
https://docs.duendesoftware.com/identityserver/v6/reference/options/#userinteraction


Excel importer doesn't work from URL

When the Excel importer is invoked after downloading from a URL, the sheet selection logic doesn't work because it's comparing against the original URL rather than the local filename.
The relevant piece of code is:
https://github.com/OpenRefine/OpenRefine/blob/f4878804960162ba6145941bfbe0d14e60133d9b/main/src/com/google/refine/importers/ExcelImporter.java#L200-L201
which causes every sheet to be skipped. Unfortunately, we need original URL for provenance if the user has requested it to be saved AND we need the local filename for the sheet matching, but we don't have it available.
To Reproduce
Steps to reproduce the behavior:

Create Project
Web Addresses (URL) - https://usace.contentdm.oclc.org/digital/api/collection/p16021coll2/id/2106/download

Current Results
Both the preview and the actual project import are empty
Expected Behavior
File contents are correctly previewed and imported.
Versions

OpenRefine: 3.8-SNAPSHOT

Additional context
This may also be a problem with Excel files which are contained in archives or are compressed, but I haven't checked.

Hey @tfmorris could I work on this issue ?

Hey @tfmorris can I work on this issue ?

I only took a quick look at this, but I think it may be a little complicated due to not having the necessary information available when needed, as outlined above, but if you want to give it a go, go ahead! Let us know if you have any questions.

It actually works well with Excel files contained in archives or compressed without any modifications to the program.

Thanks. It actually works well with Excel files which are contained in archives or are compressed without making any modification to the program.

Also modifying that line @tfmorris highlighted (still checking against the URL, but to see if it just contains the file name) works with the different files I've used to test with (not only the compressed ones) but as you say the problem seems deeper than that and I doubt that being the solution.
I have this question why was the file name checked against the URL, was there some particular reason for this ?

This method might be what's causing this problem with Excel importing from URL

when the fileRecord contains the URL (which for some reason I don't know, that of the zipped file I was using to test did not have which is why it worked for it), this method will ultimately return the URL rather than the fileName which is why at the if statement highlighted above it was comparing to the file's download URL. I don't yet really understand why this was done so, but modifying that method actually solves the problem.
Please @tfmorris or @wetneb  tell me if there was any reason for that method written like that so I could dig deeper or I submit the pull request.

This method might be what's causing this problem with Excel file importing from URL
getFileSource
when the fileRecord contains the URL (which for some reason I don't know, that of the zipped file I was using to test did not have which is why it worked for it), this method will ultimately return the URL rather than the fileName which is why at the if statement highlighted above it was comparing to the file's download URL. I don't yet really understand why this was done so, but modifying that method actually solves the problem.
Please @tfmorris or @wetneb tell me if there was any reason for that method written like that so I could dig deeper or I submit the pull request.

pro tip you can use Github's permalink feature to create clickable code previews that will take people directly to the code in question
https://github.com/OpenRefine/OpenRefine/blob/f4878804960162ba6145941bfbe0d14e60133d9b/main/src/com/google/refine/importing/ImportingUtilities.java#L601-L606

his method will ultimately return the URL rather than the fileName which is why at the if statement highlighted above it was comparing to the file's download URL. I don't yet really understand why this was done so, but modifying that method actually solves the problem.

The original data source is stored as part of the provenance for the file creation (you can see it in the project metadata on the Open Project screen with all the projects listed). There are (potentially) multiple layers to the onion:

The URL that was downloaded
An archive/zip file containing one or more files
An Excel/ODS file containing one or more sheets

My memory (without having had the chance to refresh it, which I'll try to do tomorrow) is that we have one fewer variables than we need to hold all the necessary data in this particular case.
They key thing to double check as you look for a solution is that you've preserved the provenance information in the project metadata.

Did not know about the tip thanks. For the preservation of the provenance information in the project metadata, I just checked it and after the modifications to that method, the provenance information in the project metadata is as preserved as it was before the modifications, and the Excel importing works right.

pro tip you can use Github's permalink feature to create clickable code previews that will take people directly to the code in question
https://github.com/OpenRefine/OpenRefine/blob/f4878804960162ba6145941bfbe0d14e60133d9b/main/src/com/google/refine/importing/ImportingUtilities.java#L601-L606

his method will ultimately return the URL rather than the fileName which is why at the if statement highlighted above it was comparing to the file's download URL. I don't yet really understand why this was done so, but modifying that method actually solves the problem.

The original data source is stored as part of the provenance for the file creation (you can see it in the project metadata on the Open Project screen with all the projects listed). There are (potentially) multiple layers to the onion:
1. The URL that was downloaded

2. An archive/zip file containing one or more files

3. An Excel/ODS file containing one or more sheets

My memory (without having had the chance to refresh it, which I'll try to do tomorrow) is that we have one fewer variables than we need to hold all the necessary data in this particular case.
They key thing to double check as you look for a solution is that you've preserved the provenance information in the project metadata.


Device name is not displayed in HA discovered devices

Describe the bug
I've flashed LYWSD03MMC with 4.5 firmware using https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html.
I've set the device name via the page, and now every time I want to connect the flasher I see my device on the list:

(ACT_BIURO)
I've also set the advertisement type to BTHome v2, and soon after the device was discovered in Home Assistant, but sadly the device presented on the list didn't have the name I've set in the Flasher:

I've created an issue in pvvx repo - https://github.com/pvvx/ATC_MiThermometer/issues/426, but apparently, the issue is on the HA side.
After flashing 5 or more devices and moving them to the destination home right now we must power one device at a time, having the device name in the discovery information it would be easy to set up all the devices at once.
To Reproduce
Steps to reproduce the behavior:
Flash LYWSD03MMC with firmware 4.5,
set custom device name,
set BTHome v2 as advertisement type
go to integrations in HA and observe the newly found device with the wrong name
Additional context
I'm using HA 2023.11.3 and a couple of Shelly devices as BT Proxy. I've tried active scanning, and passive scanning, restarted Shelly devices, and restarted HA, but nothing helped.
I think this is a related issue: https://github.com/home-assistant/core/issues/79468
If the issue is not created in the right repo please move it to the right place or let me know and I'll create a new one in the right place.

Yes, I think this is right repo where your issue is related to.
However, I'm trying to understand why this issues occurs. The code that is causing this behavior is the following .
        if name == service_info.address:
            name = "BTHome sensor"

        # Remove identifier from ATC sensors name.
        atc_identifier = (
            service_info.address.replace("-", "").replace(":", "")[-6:].upper()
        )
        if name[-6:] == atc_identifier:
            name = name[:-6].rstrip(" _")

...

        # Try to get manufacturer based on the name
        if name.startswith(("ATC", "LYWSD03MMC")):
            manufacturer = "Xiaomi"
            device_type = "Temperature/Humidity sensor"
        elif name.startswith("prst"):
            manufacturer = "b-parasite"
            name = "b-parasite"
            device_type = "Plant sensor"
        elif name.startswith("SBBT"):
            manufacturer = "Shelly"
            name = "Shelly BLU Button1"
            device_type = "BLU Button1"
        elif name.startswith("SBDW"):
            manufacturer = "Shelly"
            name = "Shelly BLU Door/Window"
            device_type = "BLU Door/Window"
        else:
            manufacturer = None
            device_type = "BTHome sensor"

        # Get device information from local name and identifier
        self.set_device_name(f"{name} {identifier}")
        self.set_title(f"{name} {identifier}")
        self.set_device_type(device_type)

The name input is service_info.name in the script. It this would have been ATC_BUIRO, I would expect that the final name would have been ATC_BUIRO 0745

It will not pass the check if name == service_info.address (as the address is the mac address)
It will also fail the check if name[-6:] == atc_identifier (as the atc_identifier is the last 6 characters of the MAC, which is not the same as _BUIRO.

So, I suspect that the service_info.name is not returning what we expect. I'll have to dig deeper into this

@Ernst79 thank you for the reply.
As mentioned in the initial post, I'm using Shelly Gen 2 devices as BTProxy, maybe that's the reason for missing informations.
If I can help please let me know. I can provide logs, but not sure what logger config I should use.
The device with the name ATC_BIURO is currently detected in my HA instance:

after configuring it I get this:

According to the code you linked, the manufacturer should be Xiaomi.
Side note, I have other Xiaomi devices, including MHO-C401, the default device name starts withC401, should it be also added to the check (besides "ATC", "LYWSD03MMC")?

@Ernst79 quick update (ref: https://github.com/pvvx/ATC_MiThermometer/issues/426#issuecomment-1836145589)
The name is presented if Bluetooth is on the same device the HA is running.
I'm using Shelly Gen 2 as BT Proxy, so it looks like it isn't getting the devices names or not passing it to HA. Not sure how to check that.

You can probably check that by enabling debug logging for the Bluetooth integration (not BTHome, but Bluetooth integration). The Bluetooth integration is taking care of receiving the data of BLE devices and BT proxies. Note that bugs in the Bluetooth integration should be raised in the Home Assistant core repo.

I need to be sure this is a bug in HA Bluetooth Integration or maybe this is something with ESP Home or Shelly.
logger:
  default: critical
  logs:
    homeassistant.components.bluetooth: debug

this config will be ok?

Yes, I understand.  you will find many received ble messages in your log, so only use this for a short period

The automatic OTA in the ZHA worked. Devices firmwares now includes simultaneous support for Zigbee and BLE.
Several different BTHome devices have appeared.

How to determine where and what in BTHome?


filament + glTF file

Hi, following this discussion.
I was wondering if anyone could quickly tell me the necessary steps to convert from an obj + mtl + maps to glTF, there're tools online but as far as I've seen it seems only the mesh is processed.
Thank you

You can try Blender 2.80 beta. It comes with a glTF exporter.

Filament is a renderer with some accompanying utility libraries, I'm not sure if this is the right place for pipeline questions.


[chore] migrate to eslint@8 and run --fix

Migrate to eslint@8 and run a fixer and closes https://github.com/TryGhost/Admin/pull/2107
Please include a description of your change & check your PR against this list, thanks!

[x] There's a clear use-case for this code change
[x] Commit message has a short title & references relevant issues
[x] The build will pass (run ember test from the repo root - will be core/client if working from the submodule in Ghost).

More info can be found by clicking the "guidelines for contributing" link above.

Codecov Report

Merging #2256 (7ffe491) into main (c4ce836) will decrease coverage by 0.09%.
The diff coverage is 31.81%.

@@            Coverage Diff             @@
##             main    #2256      +/-   ##
==========================================
- Coverage   37.23%   37.14%   -0.10%
==========================================
  Files         571      571
  Lines       22498    22498
  Branches     3955     3955
==========================================
- Hits         8378     8356      -22
- Misses      14120    14142      +22

Impacted Files
Coverage Δ

app/components/gh-alerts.js
100.00% <ø> (ø)

app/components/gh-basic-dropdown.js
100.00% <ø> (ø)

app/components/gh-billing-update-button.js
20.00% <ø> (ø)

app/components/gh-date-time-picker.js
76.15% <ø> (ø)

app/components/gh-launch-wizard/connect-stripe.js
2.40% <ø> (ø)

app/components/gh-member-activity-feed.js
15.15% <ø> (ø)

app/components/gh-member-settings-form.js
29.21% <ø> (ø)

app/components/gh-nav-menu/footer.js
14.28% <ø> (ø)

app/components/gh-nav-menu/main.js
66.10% <ø> (ø)

app/components/gh-notifications.js
100.00% <ø> (ø)

... and 78 more

Continue to review full report at Codecov.

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

@kevinansfield understood, do you links to bugs so I can help squash them?


Writing unit tests for the classnames template tag

fixes #9103
Add unit tests for the classnames template tag.
Writing 4 unit tests to cover a single arg, multiple args, falsey args and also strings with extra whitespace.

Please check the following:

[x] Do the tests still pass?
[x] Does the code comply with the style guide?
[x] For Python changes: Have you added tests to cover the new/fixed behaviour?

looks great, thanks @mehrdadmoradii - nice to add some tests here

Thanks for the review!


ngc Error: Property 'string' does not exist on type...

Short description of the problem:
My app works fine when using ionic serve. However, when I run a build (e.g. ionic run android), ngc will throw an error:
[21:56:25]  ngc: Error: Error at D:/Users/User/Desktop/project/.tmp/app/app.module.ngfactory.ts:587:140: Property 'string' does not exist on type 'typeof "D:/Users/User/Desktop/project/.tmp/providers/firebase.service"'.
  at check (D:\Users\User\Desktop\project\node_modules\@angular\tsc-wrapped\src\tsc.js:31:15)
  at Tsc.typeCheck (D:\Users\User\Desktop\project\node_modules\@angular\tsc-wrapped\src\tsc.js:86:9)
  at D:\Users\User\User\project\node_modules\@angular\tsc-wrapped\src\main.js:33:23
  at process._tickCallback (internal/process/next_tick.js:103:7)
  at Module.runMain (module.js:592:11)
  at run (bootstrap_node.js:394:7)
  at startup (bootstrap_node.js:149:9)
  at bootstrap_node.js:509:3

The constructor code in question is below:
Injectable()
export class FirebaseService extends AngularFire {
...
    constructor(firebaseConfig: string, auth: AngularFireAuth, database: AngularFireDatabase) {
        super(firebaseConfig, auth, database)
    }
...
}

Some people on the forum have worked around this by removing all mention of string in the constructor, but because I am extending from the AngularFire class, I must state the super call as is.
What behavior are you expecting?
ngc should not throw an error(?)
Steps to reproduce:

Create a class with a string variable in the constructor.
Include said class in app.module.ts
Run $ npm run build or $ ionic run android or $ ionic run ios

Which @ionic/app-scripts version are you using?
0.0.30

Had same problem, feel this is related that on ionic.modules when the provider is declared, there is no string. My solution was to make the class abstract, remove it from [providers] app.modules.ts and just make that every other class using it is extending it.

export abstract class FirebaseService extends AngularFire {

}

Hello, sorry for the delay on this one! This is actually an NGC error and not an Ionic error. NGC is the AoT compiler that the Angular team is building. It has the ability to do typechecking of variables and methods that are bound to your templates, it is also very strict in its typechecking. Since NGC is an Angular project i am going to close this issue and ask that you open an issue on the Angular repo. Thanks!

If anyone is getting this error, [this issue] (https://github.com/angular/angular/issues/12551) could be of same help.


Improve behavior_velocity_planner's latency

Checklist

[X] I've read the contribution guidelines.
[X] I've searched other issues and no duplicate issues were found.
[X] I've agreed with the maintainers that I can plan this task.

Description
Report from @veqcc.
Currently the latency of onTrigger function in behavior_velocity_planner has a big influence in Autoware's entire latency. Below figures show (1) the latency of behavior_path_planner and (2) behavior_velocity_planner respectively, measured in planning_simulation tutorial.

Especially the latency of behavior_velocity_planner is constantly not negligible (about 200ms ) given the behavior_path_planner's publication rate of 10Hz, which indicates its latency is twice the subscription rate.

@soblin and @veqcc are working to lower this computation time as much as possible. I'm not sure the lower bound of this latency, but it should be at least below the behavior_path_planner's publication rate of 10Hz.
Purpose
Same.
Possible approaches

get some statistics on the functions calls
refactor current implementation

check the logic flow and return instantly
avoid and delay heavy computation
cache lanelet stuff because this data is expected to be almost the same in every iteration

do calculation in-place

Definition of done
2x ~ 3x performance improvement would be good.

https://github.com/autowarefoundation/autoware.universe/pull/2071

Which tools do you use for profiling? I have used gperftools in the past but is there any tool recommended for autoware?
Out of curiosity, I went on and tried profiling behavior_path_planner/behavior_velocity_planner.
I did the following:

added prefix="gnome-terminal -- env LD_PRELOAD=/lib/x86_64-linux-gnu/libprofiler.so CPUPROFILESIGNAL=12 CPUPROFILE_FREQUENCY=1000 CPUPROFILE=/tmp/behavior_velocity_planner.profile ", to behavior_planning_container in behavior_planning.launch.py
launched planning_simulator, and prepared a simple environment with a few obstacles.
started and stopped profiling with kill -12 <CONTAINER_PID> (see https://gperftools.github.io/gperftools/cpuprofile.html)
generated the call tree below with: google-pprof --web install/behavior_velocity_planner/share/ament_index/resource_index/parent_prefix_path/behavior_velocity_planner /tmp/behavior_velocity_planner.profile (can also use --cachegrind option instead of --web to explore the logs with kcachegrind)

For example, my sample profile shows that most of the computing time is spent in the 4 functions:

behavior_path_planner::util::resamplePathWithSpline()
behavior_path_planner::util::imageToOccupancyGrid()
cv::Mat::operator=() (in behavior_path_planner::util::generateDrivableArea())
behavior_path_planner::AvoidanceModule::calcShiftLines()

Do you have any better way to track down the performance issues?

We have used CARET (https://github.com/tier4/caret), which is an open source performance analysis tool developed by TIER IV.
Please read the CARET documentatiion!! (https://tier4.github.io/CARET_doc/main/)

The performance improvement result is in the following figure.
At the peaks of the graph, 2~2.5x performance optimizations have been realized.


Rule criteria fail on params with floating point

Hi, I was working on the Icinga2 integration pack, and ran into the following issue:
2016-03-24 15:33:32,423 INFO [-] Validating rule icinga2.relay_to_chat for event.state_change.
2016-03-24 15:33:32,543 INFO [-] Validation for rule icinga2.relay_to_chat failed on criteria -
  key: trigger.state_type
  pattern: 0.0
  type: gt
  payload: 1.0
2016-03-24 15:33:32,544 INFO [-] 0 rule(s) found to enforce for event.state_change.

So when the Icinga2 API returns check results it uses float for numbers. For some reason rule engine doesn't match it correctly. I can work around it by stripping the fraction part in the sensor, but I think the problem is generally with the type conversions made in the stackstorm internally.
Here's the payload:
INFO log [-] Validating rule icinga2.relay_to_chat for event.state_change. (trigger_instance={'occurrence_time': '2016-03-24 15:30:42.995794+00:00', 'trigger': u'icinga2.event.state_change', 'id': '56f408
238e326f157bf447c2', 'payload': {'check_result': {u'check_source': u'dc1udtlhtst02.stack.qadev.corp', u'exit_status': 1.0, u'vars_before': {u'state_type': 0.0, u'attempt': 2.0, u'state': 1.0, u'reachable': True}, u'schedule_start': 14588
33443.956044, u'vars_after': {u'state_type': 1.0, u'attempt': 1.0, u'state': 1.0, u'reachable': True}, u'execution_start':<PHONE_NUMBER>.953009, u'schedule_end':<PHONE_NUMBER>.956044, u'performance_data': [u'/=2547MB;4735;5327;0;5919', u'/boot
=105MB;154;173;0;193', u'/home=3MB;1560;1755;0;1951', u'/opt=111MB;15268;17177;0;19086', u'/tmp=1565MB;1560;1755;0;1951', u'/var=407MB;3224;3627;0;4031', u'/var/log=1684MB;3122;3512;0;3903'], u'state': 1.0, u'command': [u'/usr/lib64/nagi
os/plugins/check_disk', u'-c', u'10%', u'-w', u'20%', u'-K', u'10%', u'-W', u'20%', u'-X', u'none', u'-X', u'tmpfs', u'-X', u'sysfs', u'-X', u'proc', u'-X', u'devtmpfs', u'-X', u'devfs', u'-X', u'mtmfs', u'-m'], u'execution_end': 1458833
443.955872, u'active': True, u'output': u'DISK WARNING - free space: / 3064 MB (54% inode=84%); /boot 78 MB (42% inode=99%); /home 1845 MB (99% inode=99%); /opt 18002 MB (99% inode=99%); /tmp 283 MB (15% inode=99%); /var 3419 MB (89% ino
de=98%); /var/log 2014 MB (54% inode=99%);', u'type': u'CheckResult'}, 'service': u'disk', 'host': u'dc1udtlhtst02.stack.qadev.corp', 'state_type': 1.0, 'state': 1.0, 'type': u'StateChange'}},rule={'description': u'Post to chat when nagi
os service state changes', 'tags': [], 'ref': u'icinga2.relay_to_chat', 'enabled': True, 'name': u'relay_to_chat', 'trigger': u'icinga2.event.state_change', 'criteria': {u'trigger.type': {u'pattern': u'StateChange', u'type': u'eq'}, u'tr
igger.state_type': {u'pattern': u'0', u'type': u'gt'}}, 'action': 'ActionExecutionSpecDB@66037008(ref="chatops.post_message", parameters="{u\'message\': u\'Icinga2 service {{trigger.service}} on host {{trigger.host}} has changed its stat
e to {{ trigger.state|int }}, state type {{ trigger.state_type|int }} {{trigger.check_result.output}}\', u\'channel\': u\'563b5f7f21f7a36d7bd5baaf\'}")', 'pack': u'icinga2', 'type': 'RuleTypeSpecDB@66035856(ref="standard", parameters="{}
")', 'id': '56f2b7218e326f1e03ee5a1b', 'uid': u'rule:icinga2:relay_to_chat'},trigger={'uid': u'trigger:icinga2:event.state_change:5f02f0889301fd7be1ac972c11bf3e7d', 'parameters': {}, 'ref_count': 0, 'name': u'event.state_change', 'pack':
 u'icinga2', 'type': u'icinga2.event.state_change', 'id': '56f2b53e8e326f19afc50fdc', 'description': None})

Turns out it was not related to floating points. Quoting the pattern in the rule definition converts numbers into strings and thus comparison doesn't work. Removing the quotes seems to help. However, 0 (without quotes) in the pattern is translated into None type and breaks the comparison.
2016-03-25 16:54:15,602 INFO [-] Validation for rule icinga2.relay_to_chat failed on criteria -
  key: trigger.state_type
  pattern: None
  type: gt
  payload: 1
2016-03-25 16:54:15,603 INFO [-] 0 rule(s) found to enforce for event.state_change.

criteria:
  trigger.state_type:
    pattern: 0
    type: gt

Dirty workaround is placing 0.0001 in the pattern. Might need to get inspected and fixed though.

Good catch.
I need to dig in, but I believe it's probably related to something in our code (we don't do a strict check for false values or similar) and not the actual YAML handling.

Yeah, I just managed to track down the bug with rule test tool :)
I will work on and push a fix later today.

I merged fix into master - #2602.
Thanks again for the report and a good catch!


Some login and redirection issues with Nginx

Technical details

YOURLS version: 1.7.2
PHP version: 7.0.15
Any other useful information depending on context ( Ubuntu 16.04.2 LTS, nginx/1.10, mysql  Ver 14.14 Distrib 5.7.18)

Hello,
I just installed it about 5 hours ago and I keep trying to figure out what I missed till now.
After the installation, I tried to log in and it redirects me to http://localhost/admin/index.php?
I corrected the URL so I can get in the Admin interface.
And I tried to shorten an URL and I got 404 when I click the short URL.
BTW, I didn't install any plugins.
here's my configuration:
server {
	listen 80;
	listen [::]:80;

	 listen 443 ssl;
	 listen [::]:443 ssl;

	root /var/www/html;

	index index.html index.htm index.nginx-debian.html;

	server_name mydomain;

	location / {
		 try_files $uri $uri/ /yourls-loader.php;

		 location ~ \.php$ {
		  try_files      $uri =404;
		  fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
		  fastcgi_index  index.php;
		  fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
		  include        fastcgi_params;
		}
	}
}

I'm using CloudFlare's flexible SSL so I don't need to set the certificate part.
Thanks

Ongoing problem we're not sure how to fix. Please search before opening an issue:
https://github.com/YOURLS/YOURLS/search?q=nginx&type=Issues

This issue has been closed with no clear description of what is going on.
I experience a similar problem.
Installed version 1.7.3. Working fine.
I changed the domain address twice, to adjust to final user.
Now there is no way to login (signin) to the administration page.
I changed the original password, 've created two new users with two new different passwords.
There is not way to login with anyone of them.
I enabled DEBUG and not useful message seen yet. It looks like password is invalid.
I even reverted changed in nginx to remove "try_files". To just allow direct use of index.php file. The login page still does not work.
I do not see in other issues a similar content. Only this issue. With the following text by @ozh :
"Ongoing problem we're not sure how to fix."
Timestamp: 2017-05-19.
¿Has this issue been solved?

Please refer to our guide for Nginx configuration: https://github.com/YOURLS/YOURLS/wiki/Nginx-configuration
If the issue is still here, check your config twice, and check server log.


TypeError: WooCommerceRestApi is not a constructor

I was using NPM @woocommerce/woocommerce-rest-api  successfully to manage API requests to Woocommerce/ WP website.
Was using babel and CJS version:
`
const WooCommerceRestApi = require("@woocommerce/woocommerce-rest-api").default;
const api = new WooCommerceRestApi({
url: "http://example.com",
consumerKey: "ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
consumerSecret: "cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
version: "wc/v3"
});`
But since Node 14 is offering a simple way to use ESM I have added the following configuration to the package.json, so I can use the import statement: "type": "module"
So I should have been able to use this format:
`import WooCommerceRestApi from "@woocommerce/woocommerce-rest-api";
const api = new WooCommerceRestApi({
url: "http://example.com",
consumerKey: "ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
consumerSecret: "cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
version: "wc/v3"
});`
But now I get this error:
`file:///xxxxxx/test.js:5
const api = new WooCommerceRestApi({
^
TypeError: WooCommerceRestApi is not a constructor
at file:///xxxxxxxx/test.js:5:13
at ModuleJob.run (internal/modules/esm/module_job.js:138:23)
at async Loader.import (internal/modules/esm/loader.js:178:24)`
Why would that happen?

Does this work?
import { WooCommerceRestApi } from "@woocommerce/woocommerce-rest-api";

nop, but thanks anyway.
i gave up, will keep the old version

workaround:
import wcapi from '@woocommerce/woocommerce-rest-api';
const { default: WooCommerceRestApi } = wcapi;

Not sure why it doesn't work but calling it like this does

The reason it doesn't work is because of a missing section in package.json telling node which file to import, so it chooses the CJS code.
As a temporary fix change the import to explicitly choose the index.mjs file like below.
import WooCommerceRestApi from<EMAIL_ADDRESS>

Wondering if there is a fix for this yet.. None of the workarounds seem to work for me.

For anyone who comes here in the future looking for an solution to this error when using the ESM version, here's a solution that worked for me:
import { default as WCAPI} from '@woocommerce/woocommerce-rest-api';

const { default: WooCommerceRestApi } = WCAPI;

From there, you can just use WooCommerceRestApi as described in the ESM example.
const woocommerce = new WooCommerceRestApi({
  url: 'https://localhost',
  consumerKey: '',
  consumerSecret: '',
  version: 'wc/v3'
});

Didn't try all the solutions suggested here but here's another that worked for me:
import wc from "@woocommerce/woocommerce-rest-api";
const WooCommerceRestApi = wc.default;

It's been 3 years. This issue is still not resolved.

It's pretty clear this repository is effectively abandoned.


Update Travis CI build to use OpenJDK 11

Currently, the builds on Travis CI are failing because the build environment is trying to use Java 8 to compile Everest (which requires Java 11 according to the POM).
This PR updates the Travis CI build configuration to:

Use OpenJDK 11
Use the default build steps for Maven-based Java projects on Travis CI
Use a bundled version of Maven 3.6.0 instead of whatever version of Maven is installed
Use the Ubuntu Xenial build environment

Thanks Jochen! I had been postponing this for a while. ;)
I'll merge this in as it is, but I was wondering if you could help me out with one more thing.
No pressure, of course.
I can't figure out why the build doesn't run with the Exec Maven Plugin. I've been having the exact same issue without Maven Wrapper. Due to this, I need to build Everest with the JavaFX SDK. I've talked about it here.
This is the stack trace I get:
java.lang.ExceptionInInitializerError
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:297)
    at java.lang.Thread.run (Thread.java:834)
Caused by: java.lang.RuntimeException: Internal graphics not initialized yet
    at com.sun.glass.ui.Screen.getScreens (Screen.java:70)
    at com.sun.javafx.tk.quantum.QuantumToolkit.getScreens (QuantumToolkit.java:709)
    at com.sun.javafx.tk.quantum.QuantumToolkit.getMaxRenderScale (QuantumToolkit.java:736)
    at com.sun.javafx.tk.quantum.QuantumToolkit.loadImage (QuantumToolkit.java:745)
    at javafx.scene.image.Image.loadImage (Image.java:1052)
    at javafx.scene.image.Image.initialize (Image.java:802)
    at javafx.scene.image.Image.<init> (Image.java:618)
    at com.rohitawate.everest.Main.<clinit> (Main.java:32)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:297)
    at java.lang.Thread.run (Thread.java:834)

Thanks again! :)

See https://github.com/warmuuh/milkman for a more full-featured Java-based alternative for Postman.


(BAN-B608) Audit required: Risk of possible SQL injection vector through string-based query construction

Description
Constructing SQL query using user provided data is insecure. It makes application vulnerable to [SQL injection](SQL injection) attacks.
Occurrences
There is 1 occurrence of this issue in the repository.
See all occurrences on DeepSource → deepsource.io/gh/ColinRobbins/scm-helper/issue/BAN-B608/occurrences/

Password is a dummy.  closed.